From 4e2b8719ff4296831a9ef05faa6e91ce6a7b0bc7 Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期五, 19 一月 2024 16:44:05 +0800 Subject: [PATCH] 模具管理模块 --- src/views/equipment/mould/index.vue | 219 +++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 157 insertions(+), 62 deletions(-) diff --git a/src/views/equipment/mould/index.vue b/src/views/equipment/mould/index.vue index de379cd..8439374 100644 --- a/src/views/equipment/mould/index.vue +++ b/src/views/equipment/mould/index.vue @@ -1,44 +1,56 @@ <template> <div class="mod-config"> <basic-container> - <ttable - :table="table" - :isShowHide="true" - :ajaxFun="ajaxFun" - :prelang="prelang" - :options="options" - ref="processconfiguration" - > - <template #toolbar> - <el-button type="primary" - @click="">鏂板</el-button> - <!-- <el-dropdown style="margin-left: 20px;" @command="handleCommand"> - <el-button > - 鐘舵�佸彉鏇�<i class="el-icon-arrow-down el-icon--right"></i> - </el-button> - <el-dropdown-menu slot="dropdown"> - <el-dropdown-item :key="index" - :command="item.label" - v-for="(item,index) in taskTypeArr" - >{{ item.label }}</el-dropdown-item - > - </el-dropdown-menu> - </el-dropdown> --> - </template> - </ttable> + <ttable + :table="table" + :ajaxFun="ajaxFun" + :prelang="prelang" + :options="options" + ref="mouldTable" + class="mouldTable" + > + <template #toolbar></template> + </ttable> </basic-container> + <el-dialog + :title="editRow==null ? '鏂板':'淇敼'" + :visible.sync="dialogVisible" + width="40%"> + <el-form :model="editRow" label-position="right" label-width="100px" ref="editForm" :rules="editRules"> + <el-form-item prop="code" label="妯″叿缂栫爜"> + <el-input v-model="editRow.code" placeholder="璇疯緭鍏ユā鍏风紪鐮佺О"></el-input> + </el-form-item> + <el-form-item prop="name" label="妯″叿鍚嶇О"> + <el-input v-model="editRow.name" placeholder="璇疯緭鍏ユā鍏峰悕绉�"></el-input> + </el-form-item> + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="dialogVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="confirmSaveOrUpdateMould">纭� 瀹�</el-button> + </span> + </el-dialog> </div> </template> <script> import ttable from '@/views/common/ztt-table.vue' -import { fetchList, } from '@/api/quality/finishedDelivery' - +import * as fecha from 'element-ui/lib/utils/date' +import { fetchList,addMould,updateMould,delById } from '@/api/equipment/moulde' +import { mapGetters } from 'vuex' export default { data(){ return { + editRules: { + code: [{required:true,message:'璇疯緭鍏ユā鍏风紪鍙�',trigger:'blur'}], + name: [{required:true,message:'璇疯緭鍏ユā鍏峰悕绉�',trigger:'blur'}] + }, + editRow: { + code: null, + name: null, + }, + dialogVisible: false, ajaxFun: fetchList, - prelang: 'operation', + prelang: 'moudle', dataListLoading: false, options: { height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾 @@ -62,79 +74,162 @@ // 鏍囬 column: [ { - minWidth: '140', - prop: 'packageNo', - label: '璁惧', - isTrue: true, - isSearch: true, - searchInfoType: 'text', - },{ - minWidth: '140', - prop: 'outBatchNo', + minWidth: '140px', + prop: 'code', label: '妯″叿缂栧彿', isTrue: true, isSearch: true, searchInfoType: 'text', + render: { fun: this.addOrUpdateHandle } }, { - minWidth: '140', - prop: 'partNo', + minWidth: '140px', + prop: 'name', label: '妯″叿鍚嶇О', isTrue: true, isSearch: true, searchInfoType: 'text', }, { - minWidth: '140', - prop: 'partName', - label: '宸ュ簭', + minWidth: '140px', + prop: 'createUser', + label: '璐d换浜�', isTrue: true, isSearch: true, searchInfoType: 'text', }, { - minWidth: '140', - prop: 'specs', - label: '宸ユ', + minWidth: '140px', + prop: 'status', + label: '妯″叿鐘舵��', isTrue: true, isSearch: true, searchInfoType: 'text', }, { - minWidth: '140', - prop: 'unit', - label: '瀵垮懡杞崲绯绘暟', + minWidth: '140px', + prop: 'createTime', + label: '鍒涘缓鏃堕棿', isTrue: true, isSearch: true, - searchInfoType: 'text', + searchInfoType: 'date', + formatter: this.formatDateTime }, ], toolbar: [], - operator: [{ - text: '鍒犻櫎', - type: 'text', - size: 'small', - fun: this.deleteHandle - }], + operator: null, operatorConfig: { fixed: 'right', label: '鎿嶄綔', width: 100, minWidth: 100 - }, + }, }, } }, - // computed: { - // ...mapGetters(['permissions']) - // }, + computed: { + ...mapGetters(['permissions']) + }, components: { ttable }, - medthods: { + watch: { + dialogVisible(newVal){ + if(!newVal){ + this.editRow = { + code: null, + name: null, + } + } + } + }, + created(){ + if(this.permissions.equipment_mould_add){ + this.table.toolbar.push({ + text: '鏂板', + type: 'primary', + fun: this.addOrUpdateHandle + }) + } + if(this.permissions.equipment_mould_lableprint){ + this.table.toolbar.push({ + text: '鏍囩鎵撳嵃', + type: 'primary', + fun: this.lableprint + }) + } + if(this.permissions.equipment_mould_del){ + this.table.operator = [{ + text: '鍒犻櫎', + type: 'text', + fun: this.deleteHandle + }] + } + }, + mounted(){ + + }, + methods: { + deleteHandle(row){ + this.$confirm('鏄惁纭鍒犻櫎妯″叿鍚嶇О涓�' + row.name, '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + closeOnClickModal: false, + type: 'warning' + }) + .then(function() { + return delById(row.id) + }).then((data) => { + this.$message.success('鍒犻櫎鎴愬姛') + this.getData() + }) + }, + lableprint(){ + + }, + confirmSaveOrUpdateMould(){ + this.$refs.editForm.validate(valid=>{ + if(valid){ + if(this.editRow.id){ + updateMould(this.editRow).then(res=>{ + if(res.status===200){ + this.$message.success("淇敼鎴愬姛") + this.getData() + } + }).catch(error=>{ + console.error(error) + }) + }else{ + addMould(this.editRow).then(res=>{ + if(res.status===200){ + this.$message.success("鏂板鎴愬姛") + this.getData() + } + }).catch(error=>{ + console.error(error) + }) + } + this.dialogVisible = false + } + }) + }, + addOrUpdateHandle(row){ + if(row){ + this.editRow = row + } + this.dialogVisible = true + }, formatDateTime(row, column, cellValue) { - return cellValue ? fecha.format(new Date(cellValue), 'yyyy-MM-dd') : '' + return cellValue ? fecha.format(new Date(cellValue), 'yyyy-MM-dd HH:mm:ss') : '' + }, + getData() { + this.$refs.mouldTable.getDataList() }, }, } -</script> \ No newline at end of file +</script> +<style scoped> +.mouldTable >>>.el-table__fixed-right .el-table__fixed-body-wrapper { + top: 74px !important; +} +</style> -- Gitblit v1.9.3