修改备件信息
This commit is contained in:
parent
1be8d2fbcf
commit
ee057050d1
@ -398,6 +398,13 @@ export default {
|
||||
return await http.post(this.url, params);
|
||||
}
|
||||
},
|
||||
userCompanyField:{
|
||||
url: `${config.API_URL}/user.company.field.list`,
|
||||
name: "用户公司下拉选择",
|
||||
post: async function (params) {
|
||||
return await http.post(this.url, params);
|
||||
}
|
||||
},
|
||||
export:{
|
||||
url: `${config.API_URL}/user.export`,
|
||||
name: "用户列表导出",
|
||||
@ -419,7 +426,6 @@ export default {
|
||||
return await http.post(this.url,params,{'Content-Type': 'multipart/form-data'});
|
||||
}
|
||||
},
|
||||
|
||||
generateRegistration:{
|
||||
url: `${config.API_URL}/generate.registration.challenge`,
|
||||
name: "passKey 创建",
|
||||
@ -434,7 +440,6 @@ export default {
|
||||
return await http.post(this.url, params);
|
||||
}
|
||||
},
|
||||
|
||||
generateAuthentication:{
|
||||
url: `${config.API_URL}/generate.authentication.challenge`,
|
||||
name: "passKey登录生成",
|
||||
@ -580,6 +585,42 @@ export default {
|
||||
return await http.post(this.url, params);
|
||||
},
|
||||
},
|
||||
|
||||
},
|
||||
spareInfo:{
|
||||
list: {
|
||||
url: `${config.API_URL}/spare.parts.info.list`,
|
||||
name: "备件信息列表",
|
||||
get: async function (params) {
|
||||
return await http.post(this.url, params);
|
||||
},
|
||||
},
|
||||
add:{
|
||||
url: `${config.API_URL}/spare.parts.info.add`,
|
||||
name: "新增备件信息",
|
||||
post: async function (params) {
|
||||
return await http.post(this.url, params);
|
||||
},
|
||||
},
|
||||
info:{
|
||||
url: `${config.API_URL}/spare.parts.info.detail`,
|
||||
name: "备件信息明细",
|
||||
post: async function (params) {
|
||||
return await http.post(this.url, params);
|
||||
},
|
||||
},
|
||||
delete:{
|
||||
url: `${config.API_URL}/spare.parts.info.delete`,
|
||||
name: "删除备件信息",
|
||||
post: async function (params) {
|
||||
return await http.post(this.url, params);
|
||||
},
|
||||
},
|
||||
field:{
|
||||
url: `${config.API_URL}/spare.parts.info.field.list`,
|
||||
name: "备件信息检索",
|
||||
post: async function (params) {
|
||||
return await http.post(this.url, params);
|
||||
},
|
||||
},
|
||||
}
|
||||
};
|
||||
|
||||
@ -11,7 +11,7 @@ export const eventBus = {
|
||||
|
||||
$emit(eventName, ...args) {
|
||||
const listeners = this.listeners[eventName];
|
||||
if (listeners) {
|
||||
if (listeners && listeners.length>0) {
|
||||
listeners.forEach((listener) => listener(...args));
|
||||
}
|
||||
},
|
||||
|
||||
@ -1,26 +1,81 @@
|
||||
<template>
|
||||
<div></div>
|
||||
<el-container class="mainBox mainHeaderNoBorderPadding">
|
||||
<el-header>
|
||||
<div class="left-panel">
|
||||
<el-button type="primary" :size="size" icon="el-icon-plus" @click="add">新增备件信息</el-button>
|
||||
<el-button type="primary" :size="size" plain>批量导入</el-button>
|
||||
<el-button type="danger" :size="size" plain @click="batch_del" :disabled="selection.length==0?true:false">删除</el-button>
|
||||
</div>
|
||||
<div class="right-panel">
|
||||
|
||||
</div>
|
||||
</el-header>
|
||||
<el-main class="nopadding">
|
||||
<div class="searchMain searchMainNoTop">
|
||||
<scSearch ref="scSearch" :searchList="searchList" @fetchSelectData="getSelectData"></scSearch>
|
||||
|
||||
<div class="searchItem searchBtn">
|
||||
<el-button :size="size" :icon="searchShow?'el-icon-ArrowUpBold':'el-icon-ArrowDownBold'" @click="searchShowClick">{{searchShow?'收起':'更多'}}</el-button>
|
||||
<el-button :size="size" type="primary" icon="el-icon-search" @click="upSearch">查询</el-button>
|
||||
<el-button :size="size" type="info" icon="el-icon-RefreshRight">重置</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<scTable ref="table" :apiObj="list.apiObj" row-key="id" @selection-change="selectionChange" stripe :size="size">
|
||||
<el-table-column type="selection" align="center" width="40"></el-table-column>
|
||||
<sc-table-column label="序号" align="center" type="index"></sc-table-column>
|
||||
<el-table-column label="操作" fixed="right" align="center" width="150">
|
||||
<template #default="scope">
|
||||
<el-dropdown>
|
||||
<el-button class="noBorderBtn" icon="el-icon-more" :size="size"></el-button>
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu>
|
||||
<el-dropdown-item @click="table_show(scope.row, 'see')" icon="sc-icon-See">查看详情</el-dropdown-item>
|
||||
<el-dropdown-item @click="table_edit(scope.row, 'edit')" icon="sc-icon-Edit">编辑</el-dropdown-item>
|
||||
<el-dropdown-item divided @click="table_del(scope.row, 'delete')" icon="sc-icon-Delete">删除</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
</el-dropdown>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</scTable>
|
||||
</el-main>
|
||||
</el-container>
|
||||
|
||||
<infoSave v-if="dialog.save" ref="saveDialog" @success="handleSaveSuccess" @closed="dialog.save=false"></infoSave>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import infoSave from "../infoSave"
|
||||
export default {
|
||||
name: "info",
|
||||
components:{
|
||||
infoSave
|
||||
},
|
||||
data(){
|
||||
return{
|
||||
size:'small',
|
||||
setMap:{
|
||||
status:[]
|
||||
},
|
||||
|
||||
dialog: {
|
||||
save: false,
|
||||
permission: false
|
||||
},
|
||||
list:{
|
||||
apiObj: this.$API.system.spare.list,
|
||||
apiObj: this.$API.system.spareInfo.list,
|
||||
column:[]
|
||||
},
|
||||
selection: [],
|
||||
searchList:[
|
||||
{name:'创建日期',type:'date',code:'created_at',show:true},
|
||||
{name:'ERP编号',type:'text',code:['sn'],placeholder:"请输入备件SN",show:true},
|
||||
{name:'供应商',type:'text',code:['receive_city'],placeholder:"请输入收获城市",isOpen:true,show:false},
|
||||
{name:'名称',type:'date',code:'receive_date',show:true},
|
||||
{name:'制造商型号',type:'text',code:['final_status'],placeholder:"请输入最终状态",isOpen:true,show:false},
|
||||
{name:'规格',type:'text',code:['order_number'],placeholder:"请输入单号",isOpen:true,show:false},
|
||||
{name:'创建人',type:'text',code:['warehouse'],placeholder:"请输入库房",isOpen:true,show:false},
|
||||
{name:'关键字',type:'text',code:['remark','erp_pn'],keyword:true,show:true},
|
||||
],
|
||||
searchShow:false,
|
||||
params: {
|
||||
keyword: null
|
||||
}
|
||||
@ -30,52 +85,70 @@ export default {
|
||||
|
||||
},
|
||||
methods:{
|
||||
searchShowClick(){
|
||||
this.searchShow = !this.searchShow;
|
||||
this.searchList.forEach(item=>{
|
||||
if(item.isOpen){
|
||||
item.show = this.searchShow
|
||||
}
|
||||
})
|
||||
},
|
||||
getSelectData(){
|
||||
|
||||
},
|
||||
|
||||
//添加
|
||||
add(){
|
||||
this.dialog.save = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.saveDialog.open()
|
||||
this.$refs.saveDialog.open('add');
|
||||
})
|
||||
},
|
||||
//编辑
|
||||
table_edit(row){
|
||||
this.dialog.save = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.saveDialog.open('edit').setData(row)
|
||||
this.$refs.saveDialog.open('edit').setData(row);
|
||||
})
|
||||
},
|
||||
//查看
|
||||
table_show(row){
|
||||
this.dialog.save = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.saveDialog.open('show').setData(row)
|
||||
this.$refs.saveDialog.open('show').setData(row);
|
||||
})
|
||||
},
|
||||
//权限设置
|
||||
permission(){
|
||||
this.dialog.permission = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.permissionDialog.open()
|
||||
this.$refs.permissionDialog.open();
|
||||
})
|
||||
},
|
||||
//删除
|
||||
async table_del(row){
|
||||
const reqData = {id: row.id};
|
||||
const res = await this.$API.demo.post.post(reqData);
|
||||
const reqData = {ids: [row.id]};
|
||||
const res = await this.$API.system.spareInfo.delete.post(reqData);
|
||||
if(res.code == 200){
|
||||
this.$refs.table.refresh()
|
||||
this.$message.success("删除成功")
|
||||
this.$refs.table.refresh();
|
||||
this.$message.success("删除成功");
|
||||
}
|
||||
},
|
||||
//批量删除
|
||||
async batch_del(){
|
||||
this.$confirm(`确定删除选中的 ${this.selection.length} 项吗?`, '提示', {
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
}).then(async () => {
|
||||
const loading = this.$loading();
|
||||
this.$refs.table.refresh()
|
||||
const params = {
|
||||
ids:this.selection.map(em=>em.id)
|
||||
}
|
||||
const res = await this.$API.system.spareInfo.delete.post(params);
|
||||
loading.close();
|
||||
this.$message.success("操作成功")
|
||||
if(res.code == 200){
|
||||
this.$refs.table.refresh();
|
||||
this.$message.success("操作成功")
|
||||
}
|
||||
}).catch(() => {
|
||||
|
||||
})
|
||||
@ -86,7 +159,7 @@ export default {
|
||||
},
|
||||
//表格内开关
|
||||
changeSwitch(val, row){
|
||||
row.status = row.status == '1'?'0':'1'
|
||||
row.status = row.status === '1'?'0':'1'
|
||||
row.$switch_status = true;
|
||||
setTimeout(()=>{
|
||||
delete row.$switch_status;
|
||||
@ -96,7 +169,7 @@ export default {
|
||||
},
|
||||
//搜索
|
||||
upSearch(){
|
||||
|
||||
this.$refs.table.refresh();
|
||||
},
|
||||
|
||||
//本地更新数据
|
||||
@ -106,11 +179,11 @@ export default {
|
||||
}else if(mode=='edit'){
|
||||
this.$refs.table.refresh()
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
.mainBox{padding: 0;}
|
||||
</style>
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
<div class="left-panel">
|
||||
<el-button type="primary" :size="size" icon="el-icon-plus" @click="add">新增备件</el-button>
|
||||
<el-button type="primary" :size="size" plain>批量导入</el-button>
|
||||
<el-button type="danger" :size="size" plain>删除</el-button>
|
||||
<el-button type="danger" :size="size" plain @click="batch_del" :disabled="selection.length==0?true:false">删除</el-button>
|
||||
</div>
|
||||
<div class="right-panel">
|
||||
|
||||
@ -21,6 +21,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<scTable ref="table" :apiObj="list.apiObj" row-key="id" @selection-change="selectionChange" stripe :size="size">
|
||||
<el-table-column type="selection" align="center" width="40"></el-table-column>
|
||||
<sc-table-column label="序号" align="center" type="index"></sc-table-column>
|
||||
<el-table-column label="操作" fixed="right" align="center" width="150">
|
||||
<template #default="scope">
|
||||
@ -29,8 +30,8 @@
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu>
|
||||
<el-dropdown-item @click="table_show(scope.row, 'see')" icon="sc-icon-See">查看详情</el-dropdown-item>
|
||||
<el-dropdown-item @click="table_edit(scope.row, 'edit')" icon="sc-icon-Edit">编辑</el-dropdown-item>
|
||||
<el-dropdown-item @click="table_del(scope.row, 'delete')" icon="sc-icon-Delete">删除</el-dropdown-item>
|
||||
<el-dropdown-item @click="table_edit(scope.row, 'edit')" icon="sc-icon-Edit">编辑备件</el-dropdown-item>
|
||||
<el-dropdown-item divided @click="table_del(scope.row, 'delete')" icon="sc-icon-Delete">删除备件</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
</el-dropdown>
|
||||
@ -39,11 +40,17 @@
|
||||
</scTable>
|
||||
</el-main>
|
||||
</el-container>
|
||||
|
||||
<librarySave v-if="dialog.save" ref="saveDialog" @success="handleSaveSuccess" @closed="dialog.save=false"></librarySave>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import librarySave from "../librarySave";
|
||||
export default {
|
||||
name: "library",
|
||||
components:{
|
||||
librarySave
|
||||
},
|
||||
data(){
|
||||
return{
|
||||
size:'small',
|
||||
@ -52,7 +59,6 @@ export default {
|
||||
},
|
||||
dialog: {
|
||||
save: false,
|
||||
permission: false
|
||||
},
|
||||
list:{
|
||||
apiObj: this.$API.system.spare.list,
|
||||
@ -60,15 +66,15 @@ export default {
|
||||
},
|
||||
selection: [],
|
||||
searchList:[
|
||||
{name:'创建日期',type:'date',code:'activation_date',show:true},
|
||||
{name:'备件SN',type:'text',code:['mobile'],placeholder:"请输入备件SN",show:true},
|
||||
{name:'收获城市',type:'text',code:['address'],placeholder:"请输入收获城市",isOpen:true,show:false},
|
||||
{name:'收获日期',type:'date',code:'activation_date',show:true},
|
||||
{name:'最终状态',type:'text',code:['owner'],placeholder:"请输入最终状态",isOpen:true,show:false},
|
||||
{name:'单号',type:'text',code:['owner'],placeholder:"请输入单号",isOpen:true,show:false},
|
||||
{name:'库房',type:'text',code:['owner'],placeholder:"请输入库房",isOpen:true,show:false},
|
||||
{name:'FW',type:'text',code:['owner'],placeholder:"请输入FW",isOpen:true,show:false},
|
||||
{name:'到货类型',type:'text',code:['owner'],placeholder:"请输入到货类型",isOpen:true,show:false},
|
||||
{name:'创建日期',type:'date',code:'created_at',show:true},
|
||||
{name:'备件SN',type:'text',code:['sn'],placeholder:"请输入备件SN",show:true},
|
||||
{name:'收获城市',type:'text',code:['receive_city'],placeholder:"请输入收获城市",isOpen:true,show:false},
|
||||
{name:'收货日期',type:'date',code:'receive_date',show:true},
|
||||
{name:'最终状态',type:'text',code:['final_status'],placeholder:"请输入最终状态",isOpen:true,show:false},
|
||||
{name:'单号',type:'text',code:['order_number'],placeholder:"请输入单号",isOpen:true,show:false},
|
||||
{name:'库房',type:'text',code:['warehouse'],placeholder:"请输入库房",isOpen:true,show:false},
|
||||
{name:'FW',type:'text',code:['fw'],placeholder:"请输入FW",isOpen:true,show:false},
|
||||
{name:'到货类型',type:'text',code:['delivery_type'],placeholder:"请输入到货类型",isOpen:true,show:false},
|
||||
{name:'关键字',type:'text',code:['remark','erp_pn'],keyword:true,show:true},
|
||||
],
|
||||
searchShow:false,
|
||||
@ -97,48 +103,54 @@ export default {
|
||||
add(){
|
||||
this.dialog.save = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.saveDialog.open()
|
||||
this.$refs.saveDialog.open('add');
|
||||
})
|
||||
},
|
||||
//编辑
|
||||
table_edit(row){
|
||||
this.dialog.save = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.saveDialog.open('edit').setData(row)
|
||||
this.$refs.saveDialog.open('edit').setData(row);
|
||||
})
|
||||
},
|
||||
//查看
|
||||
table_show(row){
|
||||
this.dialog.save = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.saveDialog.open('show').setData(row)
|
||||
this.$refs.saveDialog.open('show').setData(row);
|
||||
})
|
||||
},
|
||||
//权限设置
|
||||
permission(){
|
||||
this.dialog.permission = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.permissionDialog.open()
|
||||
this.$refs.permissionDialog.open();
|
||||
})
|
||||
},
|
||||
//删除
|
||||
async table_del(row){
|
||||
const reqData = {id: row.id};
|
||||
const res = await this.$API.demo.post.post(reqData);
|
||||
const reqData = {ids: [row.id]};
|
||||
const res = await this.$API.system.spare.delete.post(reqData);
|
||||
if(res.code == 200){
|
||||
this.$refs.table.refresh()
|
||||
this.$message.success("删除成功")
|
||||
this.$refs.table.refresh();
|
||||
this.$message.success("删除成功");
|
||||
}
|
||||
},
|
||||
//批量删除
|
||||
async batch_del(){
|
||||
this.$confirm(`确定删除选中的 ${this.selection.length} 项吗?`, '提示', {
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
}).then(async () => {
|
||||
const loading = this.$loading();
|
||||
this.$refs.table.refresh()
|
||||
const params = {
|
||||
ids:this.selection.map(em=>em.id)
|
||||
}
|
||||
const res = await this.$API.system.spare.delete.post(params);
|
||||
loading.close();
|
||||
this.$message.success("操作成功")
|
||||
if(res.code == 200){
|
||||
this.$refs.table.refresh();
|
||||
this.$message.success("操作成功")
|
||||
}
|
||||
}).catch(() => {
|
||||
|
||||
})
|
||||
@ -149,7 +161,7 @@ export default {
|
||||
},
|
||||
//表格内开关
|
||||
changeSwitch(val, row){
|
||||
row.status = row.status == '1'?'0':'1'
|
||||
row.status = row.status === '1'?'0':'1'
|
||||
row.$switch_status = true;
|
||||
setTimeout(()=>{
|
||||
delete row.$switch_status;
|
||||
@ -169,7 +181,8 @@ export default {
|
||||
}else if(mode=='edit'){
|
||||
this.$refs.table.refresh()
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
123
src/views/setting/partsMag/infoSave.vue
Normal file
123
src/views/setting/partsMag/infoSave.vue
Normal file
@ -0,0 +1,123 @@
|
||||
<template>
|
||||
<el-dialog :title="titleMap[mode]" v-model="visible" :width="500" draggable destroy-on-close @closed="$emit('closed')">
|
||||
<el-form class="form" :model="form" :rules="rules" :disabled="mode=='show'" ref="dialogForm" label-width="100px" label-position="right">
|
||||
<el-form-item label="ERP编号" prop="erp_pn">
|
||||
<el-input type="text" v-model="form.erp_pn" placeholder="请填写ERP编号" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="供应商" prop="vendor">
|
||||
<el-input type="text" v-model="form.vendor" placeholder="请填写供应商" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="名称" prop="name">
|
||||
<el-input type="text" v-model="form.name" placeholder="请填写名称" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="制造商型号" prop="mpn">
|
||||
<el-input type="text" v-model="form.mpn" placeholder="请填写制造商型号" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="规格" prop="specification">
|
||||
<el-input type="textarea" v-model="form.specification" :row="2" placeholder="请填写规格" clearable></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<el-button @click="visible=false" >取 消</el-button>
|
||||
<el-button v-if="mode!='show'" type="primary" :loading="isSave" @click="submit()">保 存</el-button>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "infoSave",
|
||||
emits: ['success', 'closed'],
|
||||
data() {
|
||||
return {
|
||||
mode: "add",
|
||||
titleMap: {
|
||||
add: '新增备件信息',
|
||||
edit: '编辑备件信息',
|
||||
show: '查看'
|
||||
},
|
||||
visible: false,
|
||||
isSave: false,
|
||||
//表单数据
|
||||
form: {
|
||||
id:"",
|
||||
erp_pn:"",
|
||||
vendor:"",
|
||||
name:"",
|
||||
mpn:"",
|
||||
specification: "",
|
||||
},
|
||||
//验证规则
|
||||
rules: {
|
||||
erp_pn: [
|
||||
{required: true, message: 'ERP编号不能为空'}
|
||||
],
|
||||
vendor: [
|
||||
{required: true, message: '供应商不能为空'}
|
||||
],
|
||||
name:[
|
||||
{required: true, message: '名称不能为空'}
|
||||
],
|
||||
mpn: [
|
||||
{required: true, message: '制造商型号不能为空'}
|
||||
],
|
||||
specification: [
|
||||
{required: true, message: '规格不能为空'}
|
||||
],
|
||||
},
|
||||
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
//显示
|
||||
open(mode='add'){
|
||||
this.mode = mode;
|
||||
this.visible = true;
|
||||
return this
|
||||
},
|
||||
|
||||
//表单提交方法
|
||||
submit(){
|
||||
this.$refs.dialogForm.validate(async (valid) => {
|
||||
if (valid) {
|
||||
this.isSave = true;
|
||||
const res = await this.$API.system.spareInfo.add.post(this.form);
|
||||
this.isSave = false;
|
||||
if(res.code == 200){
|
||||
this.$emit('success', this.form, this.mode)
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功")
|
||||
}
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
})
|
||||
},
|
||||
//表单注入数据
|
||||
async setData(data) {
|
||||
let params = {
|
||||
id: data.id
|
||||
}
|
||||
const res = await this.$API.system.spareInfo.info.post(params);
|
||||
if (res.code == 200) {
|
||||
// this.form = res.data;
|
||||
this.form.id= res.data.id;
|
||||
this.form.erp_pn= res.data.erp_pn;
|
||||
this.form.vendor= res.data.vendor;
|
||||
this.form.name= res.data.name;
|
||||
this.form.mpn= res.data.mpn;
|
||||
this.form.specification= res.data.specification;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.form{
|
||||
::v-deep .input{width: 100%;}
|
||||
}
|
||||
</style>
|
||||
150
src/views/setting/partsMag/librarySave.vue
Normal file
150
src/views/setting/partsMag/librarySave.vue
Normal file
@ -0,0 +1,150 @@
|
||||
<template>
|
||||
<el-dialog :title="titleMap[mode]" v-model="visible" :width="500" draggable destroy-on-close @closed="$emit('closed')">
|
||||
<el-form class="form" :model="form" :rules="rules" :disabled="mode=='show'" ref="dialogForm" label-width="100px" label-position="right">
|
||||
<el-form-item label="备件SN" prop="sn">
|
||||
<el-input type="text" v-model="form.sn" placeholder="请填写物料编码" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="工厂PN" prop="erp_pn">
|
||||
<el-input type="text" v-model="form.erp_pn" placeholder="请填写工厂PN" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="收货城市" prop="receive_city">
|
||||
<el-input type="text" v-model="form.receive_city" placeholder="请填写收货城市" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="收货日期" prop="receive_date">
|
||||
<el-date-picker class="input" type="date" v-model="form.receive_date" value-format="YYYY-MM-DD" placeholder="请选择收货日期"></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="到货类型" prop="arrival_type">
|
||||
<el-input type="text" v-model="form.arrival_type" placeholder="请填写到货类型" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="单号" prop="order_number">
|
||||
<el-input type="text" :disabled="mode=='edit'?true:false" v-model="form.order_number" placeholder="请填写单号" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="库房" prop="warehouse">
|
||||
<el-input type="text" v-model="form.warehouse" placeholder="请填写库房" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="FW" prop="fw">
|
||||
<el-input type="text" v-model="form.fw" placeholder="请填写FW" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remarks">
|
||||
<el-input type="textarea" v-model="form.remarks" :row="2" placeholder="请填写备注" clearable></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<el-button @click="visible=false" >取 消</el-button>
|
||||
<el-button v-if="mode!='show'" type="primary" :loading="isSave" @click="submit()">保 存</el-button>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name:"librarySave",
|
||||
emits: ['success', 'closed'],
|
||||
data() {
|
||||
return {
|
||||
mode: "add",
|
||||
titleMap: {
|
||||
add: '新增备件',
|
||||
edit: '编辑备件',
|
||||
show: '查看'
|
||||
},
|
||||
visible: false,
|
||||
isSave: false,
|
||||
//表单数据
|
||||
form: {
|
||||
id:"",
|
||||
sn: "",
|
||||
erp_pn:"",
|
||||
receive_city:"",
|
||||
receive_date:"",
|
||||
arrival_type:"",
|
||||
warehouse: "",
|
||||
fw:"",
|
||||
remarks: "",
|
||||
},
|
||||
//验证规则
|
||||
rules: {
|
||||
sn:[
|
||||
{required: true, message: 'SN不能为空'}
|
||||
],
|
||||
erp_pn: [
|
||||
{required: true, message: '工厂PN不能为空'}
|
||||
],
|
||||
receive_city: [
|
||||
{required: true, message: '收货城市不能为空'}
|
||||
],
|
||||
receive_date:[
|
||||
{required: true, message: '收货日期不能为空'}
|
||||
],
|
||||
arrival_type: [
|
||||
{required: true, message: '到货类型不能为空'}
|
||||
],
|
||||
warehouse: [
|
||||
{required: true, message: '库房不能为空'}
|
||||
],
|
||||
order_number:[
|
||||
{required: true, message: '单号不能为空'}
|
||||
],
|
||||
fw: [
|
||||
{required: true, message: 'FW不能为空'}
|
||||
],
|
||||
},
|
||||
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
},
|
||||
methods: {
|
||||
//显示
|
||||
open(mode='add'){
|
||||
this.mode = mode;
|
||||
this.visible = true;
|
||||
return this
|
||||
},
|
||||
|
||||
//表单提交方法
|
||||
submit(){
|
||||
this.$refs.dialogForm.validate(async (valid) => {
|
||||
if (valid) {
|
||||
this.isSave = true;
|
||||
const res = await this.$API.system.spare.add.post(this.form);
|
||||
this.isSave = false;
|
||||
if(res.code == 200){
|
||||
this.$emit('success', this.form, this.mode)
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功")
|
||||
}
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
})
|
||||
},
|
||||
//表单注入数据
|
||||
async setData(data) {
|
||||
let params = {
|
||||
id: data.id
|
||||
}
|
||||
const res = await this.$API.system.spare.info.post(params);
|
||||
if (res.code == 200) {
|
||||
// this.form = res.data;
|
||||
this.form.id= res.data.id;
|
||||
this.form.sn= res.data.sn;
|
||||
this.form.erp_pn= res.data.erp_pn;
|
||||
this.form.receive_city= res.data.receive_city;
|
||||
this.form.receive_date= res.data.receive_date;
|
||||
this.form.arrival_type= res.data.arrival_type;
|
||||
this.form.warehouse= res.data.warehouse;
|
||||
this.form.fw= res.data.fw;
|
||||
this.form.remarks= res.data.remarks;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.form{
|
||||
::v-deep .input{width: 100%;}
|
||||
}
|
||||
</style>
|
||||
@ -29,7 +29,9 @@
|
||||
<el-input v-model="form.login_name" placeholder="请填写登录账号" disabled clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="公司名称" prop="company_full_name">
|
||||
<el-input v-model="form.company_full_name" placeholder="请填写公司名称" disabled clearable></el-input>
|
||||
<el-select v-model="form.company_full_name" placeholder="请填写公司名称" clearable>
|
||||
<el-option v-for="(item,index) in companyList" :key="index" :label="item.full_name" :value="item.full_name"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="审核意见" prop="opinion">
|
||||
<el-input v-model="form.opinion" type="textarea" :row="2" placeholder="请填写审核意见" clearable></el-input>
|
||||
@ -58,6 +60,8 @@ export default {
|
||||
visible: false,
|
||||
passLoading:false,
|
||||
isSave: false,
|
||||
|
||||
companyList:[],
|
||||
//表单数据
|
||||
form: {
|
||||
id:"",
|
||||
@ -80,9 +84,22 @@ export default {
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.getCompanyList();
|
||||
},
|
||||
methods: {
|
||||
async getCompanyList() {
|
||||
let params = {
|
||||
field:"full_name",
|
||||
id:{
|
||||
operator:"in",
|
||||
value:[]
|
||||
}
|
||||
}
|
||||
const res = await this.$API.system.user.userCompanyField.post(params);
|
||||
if(res.code == 200){
|
||||
this.companyList = res.data;
|
||||
}
|
||||
},
|
||||
//显示
|
||||
open(mode='add'){
|
||||
this.mode = mode;
|
||||
@ -121,7 +138,7 @@ export default {
|
||||
this.form.login_name = data.login_name;
|
||||
this.form.name = data.name;
|
||||
this.form.avatar = data.avatar && data.avatar!==""?data.avatar:'https://cube.elemecdn.com/3/7c/3ea6beec64369c2642b92c6726f1epng.png';
|
||||
this.form.company_full_name = data.company_info?data.company_info.full_name:''
|
||||
this.form.company_full_name = data.company_info?data.company_info.full_name:'';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user