|
|
<template> <div class="customer-css"> <el-dialog :title="titleCon" :close-on-click-modal="false" :visible.sync="visible" width="340px" style="height: 520px;" class="customer-dialog"> <el-form :inline="true" label-position="top" label-width="80px" :model="pageData" :rules="rules"> <el-row> <el-col :span="12"> <el-form-item class="customer-item" label="设备编码:" prop="objectID" :rules="rules.objectIdType"> <el-input v-model="pageData.objectID" :disabled="readOnlyFlag" style="width: 120px;" > </el-input> </el-form-item> </el-col> <el-col :span="12"> <el-form-item class="customer-item" label="设备名称" prop="objectDesc" :rules="rules.objectDescType"> <el-input v-model="pageData.objectDesc" style="width: 120px;"></el-input> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="12"> <el-form-item class="customer-item" label="在用" prop="active" :rules="rules.activeType"> <el-select v-model="pageData.active" style="width: 120px;"> <el-option label="是" value="Y"></el-option> <el-option label="否" value="N"></el-option> </el-select > </el-form-item> </el-col> <el-col :span="12"> <el-form-item class="customer-item" prop="locationName" :rules="rules.locationType"> <span slot="label" style="" @click="getBaseList(1026)"><a herf="#">区域:</a></span> <el-input v-model="pageData.locationName" style="width: 120px;"></el-input > </el-form-item> </el-col> </el-row> <el-row> <el-col :span="12"> <el-form-item class="customer-item" prop="familyDesc" :rules="rules.familyType"> <span slot="label" style="" @click="getBaseList(1027)"><a herf="#">分类:</a></span> <el-input v-model="pageData.familyDesc" style="width: 120px;" ></el-input> </el-form-item> </el-col> <el-col :span="12"> <el-form-item class="customer-item" prop="groupDesc" :rules="rules.groupType"> <span slot="label" style="" @click="getBaseList(1028)"><a herf="#">分组:</a></span> <el-input v-model="pageData.groupDesc" style="width: 120px;" ></el-input> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="12"> <el-form-item class="customer-item"> <span slot="label" style="" @click="getBaseList(1029)"><a herf="#">供应商:</a></span> <el-input v-model="pageData.supplierName" style="width: 120px;" > </el-input > </el-form-item> </el-col> <el-col :span="12"> <el-form-item class="customer-item" > <span slot="label" style="" @click="getBaseList(1030)"><a herf="#">制造商:</a></span> <el-input v-model="pageData.manufacturerName" style="width: 120px;" ></el-input> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="12"> <el-form-item class="customer-item" label="序列号:"> <el-input v-model="pageData.seqNo" style="width: 120px;"></el-input> </el-form-item> </el-col> <el-col :span="12"> <el-form-item class="customer-item" label="购入日期:"> <el-date-picker class="el-time-width" style="width: 120px;" v-model="pageData.purchessDate" value-format="yyyy-MM-dd hh:mm:ss"> </el-date-picker> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="12"> <el-form-item class="customer-item" prop="resourceDesc"> <span slot="label" style="" @click="getBaseList(203)"><a herf="#">机台编号:</a></span> <el-input v-model="pageData.resourceDesc" style="width: 120px;" ></el-input> </el-form-item> </el-col> <el-col :span="12"> <el-form-item class="customer-item" prop="deptID" :rules="rules.deptType"> <span slot="label" style="" @click="getBaseList(204)"><a herf="#">所属部门:</a></span> <el-input v-model="pageData.deptName" style="width: 120px"></el-input> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="12"> <el-form-item class="customer-item" label="资产编号:" > <el-input v-model="pageData.assetNo" style="width: 120px;" ></el-input> </el-form-item> </el-col> <el-col :span="12"> <el-form-item class="customer-item" label="备注:" > <el-input v-model="pageData.assetRemark" style="width: 120px;" ></el-input> </el-form-item> </el-col> </el-row> </el-form> <span slot="footer" class="dialog-footer"> <el-button type="primary" @click="saveEamObject()">保存</el-button> <el-button type="primary" @click="closeDialog">关闭</el-button> </span> </el-dialog> <!--列表的组件--> <Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist> </div></template>
<script>import { insertEamObject, updateEamObject,} from '@/api/eam/com_eam_object_add_update.js';
/* 引入组件 */import Chooselist from '@/views/modules/common/Chooselist_eam';/* 列表组件 */var functionId = 'C10000001';
export default { data() { return { titleCon: '设备清单维护', visible: false, userId: this.$store.state.user.name, pageData: { site: '', username: this.$store.state.user.name, objectID: '', objectDesc: '', locationID: '', locationName: '', familyID: '', familyDesc: '', groupID: '', groupDesc: '', supplierID: '', supplierName: '', manufacturerID: '', manufacturerName: '', resourceID: '', resourceDesc: '', seqNo: '', purchessDate: '', active: 'Y', addFlag: 'Y', checkFlag: 'Y', updateBy:'', deptID: '', deptName: '', assetNo: '', assetRemark: '', }, readOnlyFlag: false, dataListLoading: false, rules:{ objectIdType:[ { required: true, message: ' ', trigger: 'change' } ], objectDescType:[ { required: true, message: ' ', trigger: 'change' } ], locationType:[ { required: true, message: ' ', trigger: 'change' } ], familyType:[ { required: true, message: ' ', trigger: 'change' } ], groupType:[ { required: true, message: ' ', trigger: 'change' } ], deptType:[ { required: true, message: ' ', trigger: 'change' } ], activeType:[ { required: true, message: ' ', trigger: 'change' } ], } } }, methods: { //初始化组件的参数
init(currentRow) { //初始化参数
this.pageData = JSON.parse(JSON.stringify(currentRow)); //打开页面
this.visible = true; //判断是否是新增
if(this.pageData.addFlag === 'Y'){ this.readOnlyFlag = false; }else{ this.readOnlyFlag = true; } //重置人员信息
this.pageData.username = this.userId; //重置标题
this.titleCon = this.labels.titleCon; },
/*保存标签自定义的信息*/ saveEamObject(){ //判断标签内容是否为空
// let objectID = this.pageData.objectID.trim();
// let locationID = this.pageData.locationID.trim();
// let familyID = this.pageData.familyID.trim();
// let groupID = this.pageData.groupID.trim();
// let supplierID = this.pageData.supplierID.trim();
// let manufacturerID = this.pageData.manufacturerID.trim();
// let resourceID = this.pageData.resourceID.trim();
// let deptID = this.pageData.deptID.trim();
if(this.pageData.active == null || this.pageData.active === ''){ this.$message.success("请选择是否在用!"); return false; } if(this.pageData.objectID == null || this.pageData.objectID === ''){ this.$message.success("设备编码不能为空!"); return false; } if(this.pageData.objectDesc == null || this.pageData.objectDesc === ''){ this.$message.success("设备名称不能为空!"); return false; } if(this.pageData.locationID == null || this.pageData.locationID === ''){ this.$message.success("区域不能为空!"); return false; } if(this.pageData.groupID == null || this.pageData.groupID === ''){ this.$message.success("分组不能为空!"); return false; } if(this.pageData.familyID == null || this.pageData.familyID === ''){ this.$message.success("分类不能为空!"); return false; } // if(this.pageData.resourceID == null || this.pageData.resourceID === ''){
// this.$message.success("机台不能为空!");
// return false;
// }
if(this.pageData.deptID == null || this.pageData.deptID === ''){ this.$message.success("所属部门不能为空!"); return false; } //判断是否是新增标签自定义
if(this.pageData.addFlag === 'Y'){ this.insertEamObjectData(); }else{ this.updateEamObjectData(); } },
/*数量失去焦点的事件*/ insertEamObjectData(){ if (this.pageData.site == '软标/RFID'){ this.pageData.site = '2' } if (this.pageData.site == '硬标'){ this.pageData.site = '3' } if (this.pageData.site == '通用设备'){ this.pageData.site = '4' } insertEamObject(this.pageData).then(({data}) => { if(data.code == 200){ this.$message.success(data.msg); setTimeout(this.closeDialog(), 2000); }else{ this.$message.error(data.msg); } }) },
/*验证时长的参数*/ updateEamObjectData(){ if (this.pageData.site == '软标/RFID'){ this.pageData.site = '2' } if (this.pageData.site == '硬标'){ this.pageData.site = '3' } if (this.pageData.site == '通用设备'){ this.pageData.site = '4' } updateEamObject(this.pageData).then(({data}) => { if(data.code == 200){ this.$message.success(data.msg); setTimeout(this.closeDialog(), 2000); }else{ this.$message.error(data.msg); } }) },
/*关闭modal*/ closeDialog(){ //刷新报工的页面
this.$emit('refreshPageTables'); //关闭当前的页面
this.visible = false; },
/* 列表方法的回调 */ getBaseData(val) { if (this.tagNo === 1026) { //设置参数
this.pageData.locationID = val.LocationID; this.$set(this.pageData,'locationName',val.LocationName); }else if (this.tagNo === 1027) { //设置参数
this.pageData.familyID = val.FamilyID; this.$set(this.pageData,'familyDesc',val.FamilyDesc); }else if (this.tagNo === 1028) { //设置参数
this.pageData.groupID = val.GroupID; this.$set(this.pageData,'groupDesc',val.GroupDesc); }else if (this.tagNo === 1029) { //设置参数
this.pageData.supplierID = val.SupplierID; this.$set(this.pageData,'supplierName',val.SupplierName); }else if (this.tagNo === 1030) { //设置参数
this.pageData.manufacturerID = val.ManufacturerID; this.$set(this.pageData,'manufacturerName',val.ManufacturerName); }else if (this.tagNo === 203) { //设置参数
this.pageData.resourceID = val.Resource_id; this.$set(this.pageData,'resourceDesc',val.Resource_desc); }else if (this.tagNo === 204) { //设置参数
this.pageData.deptID = val.department_id; this.$set(this.pageData,'deptName',val.department_name); } },
// 获取基础数据列表
getBaseList(val) { this.tagNo = val this.$nextTick(() => { let strVal = '' if (val === 1026) { strVal = this.pageData.locationID; }else if (val === 1027) { strVal = this.pageData.familyID; }else if (val === 1028) { strVal = this.pageData.groupID; }else if (val === 1029) { strVal = this.pageData.supplierID; }else if (val === 1030) { strVal = this.pageData.manufacturerID; }else if (val === 203) { strVal = this.pageData.resourceID; }else if (val === 204) { strVal = this.pageData.deptID; } this.$refs.baseList.init(val, strVal) }) },
}, components: { Chooselist, /* 选择的组件 */ }, watch: { pageData: { deep: true, handler: function (newV, oldV) { this.pageData.objectID = this.pageData.objectID.toUpperCase(); this.pageData.locationID = this.pageData.locationID.toUpperCase(); this.pageData.familyID = this.pageData.familyID.toUpperCase(); this.pageData.groupID = this.pageData.groupID.toUpperCase(); this.pageData.supplierID = this.pageData.supplierID.toUpperCase(); this.pageData.manufacturerID = this.pageData.manufacturerID.toUpperCase(); } }, }, created() { // this.factoryList()
// this.getLanguageList()
}}
</script>
<style scoped lang="scss">
</style>
|