From a35cf232ded36b24dbae4bf98ee408bf82f63652 Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期二, 19 十二月 2023 10:30:45 +0800 Subject: [PATCH] modified: src/views/plan/productionschedul/index.vue --- src/views/plan/productionschedul/index.vue | 132 +++++++++++++++++++++++++++++++++++++------- 1 files changed, 111 insertions(+), 21 deletions(-) diff --git a/src/views/plan/productionschedul/index.vue b/src/views/plan/productionschedul/index.vue index 3a03c19..72fd3d4 100644 --- a/src/views/plan/productionschedul/index.vue +++ b/src/views/plan/productionschedul/index.vue @@ -4,12 +4,19 @@ <el-row> <el-col :span="12"> <div style="height:80vh;padding: 0px 10px;"> - <avue-crud :data="tableData" ref="crud" :option="option" :span-method="spanMethod" + <avue-crud + :data="tableData" + ref="crud" + :option="option" + :span-method="spanMethod" @refresh-change="getData" + @current-change="handleCurrentChange" + @size-change="handleSizeChange" :page="page" @selection-change="selectionRow" :table-loading="loading"> <template #menu="{ row, index }"> + <el-button type="text" icon="el-icon-edit" size="small" @click="editHandle(row, index)">缂栬緫</el-button> <el-button type="text" icon="el-icon-delete" size="small" @click="deleteHandle(row, index)">鍒犻櫎</el-button> </template> </avue-crud> @@ -97,6 +104,31 @@ <el-button type="primary" @click="confirmEditSchedul">纭� 瀹�</el-button> </span> </el-dialog> + <el-dialog + title="缂栬緫" + :visible.sync="editDialogVisible" + width="50%"> + <el-form :model="editForm" label-width="120px"> + <el-row> + <el-col :span="24"> + <el-form-item label="鐢熶骇鎯呭喌:"> + <el-input style="width:100%" placeholder="璇疯緭鍏ョ敓浜ф儏鍐�" type="textarea" :row="2" v-model="editForm.productionStatus"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="24"> + <el-form-item label="鐢熶骇绋嬪害:"> + <el-input style="width:100%" placeholder="璇疯緭鍏ョ敓浜х▼搴�" type="textarea" :row="2" v-model="editForm.productionRoutine"></el-input> + </el-form-item> + </el-col> + </el-row> + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="editDialogVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="confirmEdit()">纭� 瀹�</el-button> + </span> + </el-dialog> </div> </template> @@ -104,14 +136,21 @@ import { fetchScheduleList, fetchScheduleById, - fillTime + fillTime, + deleteSchedul, + updateSchedul } from '@/api//plan/productionschedul' -import TableForm from './template-form' import ttable from '@/views/common/ztt-table.vue' import { mapGetters } from 'vuex' export default { data() { return { + editForm:{ + id: null, + productionRoutine: null, + productionStatus: null, + }, + editDialogVisible: false, dialogVisible: false, scheduleList: [], scheduleEditList: [], @@ -122,17 +161,24 @@ page: { total: 10, currentPage: 1, - pageSize: 10 + pageSize: 10, + pagerCount: 5 }, option: { + defaultSort:{ + prop:'id', + order:'descending' + }, height: 400, selection: true, columnBtn: false, index: true, - rowKey: 'product', + indexFixed: false, + selectionFixed: false, + rowKey: 'mid', indexLabel: '搴忓彿', menuAlign: 'center', - menuWidth: 100, + menuWidth: 130, editBtn: false, delBtn: false, addBtn: false, @@ -255,7 +301,6 @@ }, components: { ttable, - TableForm, }, computed: { ...mapGetters(['permissions']), @@ -264,15 +309,23 @@ this.loading = true this.getData() this.getParamType() - this.rowSort() + // this.rowSort() this.rowCalc() }, beforeUpdate() { - this.rowSort() + // this.rowSort() this.rowCalc() }, watch:{ - + editDialogVisible(newVal){ + if(!newVal){ + this.editForm = { + id: null, + productionRoutine: null, + productionStatus: null, + } + } + } }, mounted() { @@ -280,6 +333,26 @@ beforeDestroy() { }, methods: { + confirmEdit(){ + const _than = this + updateSchedul(this.editForm).then(res=>{ + if(res.status===200){ + _than.$message.success("鏇存柊鎴愬姛") + _than.editDialogVisible = false + _than.getData() + } + }).catch(error=>{ + console.error(error); + }) + }, + editHandle(row,index){ + if(row){ + this.editForm.id = row.mid + this.editForm.productionRoutine = row.productionRoutine + this.editForm.productionStatus = row.productionStatus + this.editDialogVisible = true + } + }, openEditDialog(){ this.scheduleEditList = JSON.parse(JSON.stringify(this.scheduleList)) this.dialogVisible = true @@ -287,8 +360,6 @@ confirmEditSchedul(){ let data = this.scheduleEditList let orderObj = this.multipleSelection[0] - console.log("data---",data) - console.log("orderObj-----",orderObj) let obj = { "documentActualTime": data[0].actualTime, "documentPlanTime": data[0].planTime, @@ -310,7 +381,6 @@ "productType": orderObj.productType, "projectName": orderObj.projectName } - console.log("obj----->>>",obj); fillTime(obj).then(res=>{ if(res.status===200){ this.$message.success("鏇存柊鎴愬姛") @@ -394,12 +464,24 @@ } return '' }, + handleSizeChange(val){ + if(val){ + this.page.pageSize=val + this.getData() + } + }, + handleCurrentChange(val){ + if(val){ + this.page.currentPage=val + this.getData() + } + }, // 鑾峰彇鏁版嵁鍒楄〃 getData() { this.loading = true let param = { - size: 20, - current: 1, + size: this.page.pageSize, + current: this.page.currentPage, } fetchScheduleList(param).then((res) => { this.tableData = res.data.data.records @@ -409,17 +491,22 @@ }) this.loading = false }, - handleCurrentChange(val) { - this.multipleSelection = val - }, // 鍒犻櫎 deleteHandle(row,index) { - this.$confirm('鏄惁纭鍒犻櫎', '鎻愮ず', { + const _than = this + _than.$confirm('鏄惁纭鍒犻櫎', '鎻愮ず', { confirmButtonText: '纭畾', cancelButtonText: '鍙栨秷', type: 'warning' }).then(function() { - + deleteSchedul(row.mid).then(res=>{ + if(res.status===200){ + _than.$message.success("鍒犻櫎鎴愬姛") + _than.getData() + } + }).catch(error=>{ + console.error(error) + }) }) }, //鍔ㄦ�佸悎骞舵柟娉� @@ -430,7 +517,7 @@ ele.span = this.rowSpan(ele.prop, parent) }) }, - rowSort(list) { + rowSort() { let propList = this.spanArr.map(ele => ele.prop) this.spanArr.forEach((ele, index) => { let key = ele.prop @@ -490,6 +577,9 @@ } </script> <style> +.avue-crud__tip{ + display: none; +} .basic-template-table .el-table__body .el-table__row td:first-child .cell { padding-left: 0px; padding-right: 0px; -- Gitblit v1.9.3