From 0fe10b533514a73915abd534493bffb6c5df016a Mon Sep 17 00:00:00 2001 From: hyingbo <1363390067@qq.com> Date: 星期四, 24 七月 2025 14:13:24 +0800 Subject: [PATCH] 安灯管理 --- src/views/tms/modules/GoodsShelvesForm.vue | 59 ++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 48 insertions(+), 11 deletions(-) diff --git a/src/views/tms/modules/GoodsShelvesForm.vue b/src/views/tms/modules/GoodsShelvesForm.vue index 3ef07b7..1cb9cb7 100644 --- a/src/views/tms/modules/GoodsShelvesForm.vue +++ b/src/views/tms/modules/GoodsShelvesForm.vue @@ -38,9 +38,14 @@ <a-input v-model="model.columnNumber" placeholder="璇疯緭鍏ュ垪鏁�" ></a-input> </a-form-model-item> </a-col> + <a-col :span="12"> + <a-form-model-item label="鏍兼暟" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="cellsNum"> + <a-input v-model="model.cellsNum" placeholder="璇疯緭鍏ユ牸鏁�" ></a-input> + </a-form-model-item> + </a-col> <a-col :span="12"> <a-form-model-item label="搴撲綅鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol"> - <a-input :disabled="true" :value="locationCode" placeholder="璇疯緭鍏ュ簱浣嶅彿" ></a-input> + <a-input v-model="model.locationCode" placeholder="璇疯緭鍏ュ簱浣嶅彿" ></a-input> </a-form-model-item> </a-col> </a-row> @@ -84,9 +89,12 @@ storey: '', arrange: '', columnNumber: '', + cellsNum:'', locationCode: '', remark: '' }, + autoLocationCode: '', // 鑷姩鎷兼帴鐨勫簱浣嶅彿 + userEditedLocationCode: false, labelCol: { xs: { span: 24 }, sm: { span: 5 }, @@ -108,6 +116,7 @@ ], shelfNumber: [ { required: true, message: '璇疯緭鍏ヨ揣鏋跺彿!'}, + { validator: this.validateShelfNumber }, ], shelfName: [ { required: true, message: '璇疯緭鍏ヨ揣鏋跺悕绉�!'}, @@ -116,8 +125,10 @@ url: { add: "/tms/goodsShelves/add", edit: "/tms/goodsShelves/edit", - queryById: "/tms/goodsShelves/queryById" - } + queryById: "/tms/goodsShelves/queryById", + checkShelfNum:"/tms/goodsShelves/checkShelfNum" + }, + warehouseId:'' } }, computed: { @@ -125,10 +136,10 @@ return this.disabled }, //鎷兼帴搴撲綅鍙� - locationCode() { - const { shelfNumber, storey, arrange, columnNumber } = this.model; - if (shelfNumber || storey || arrange || columnNumber) { - return `${shelfNumber}${storey}${arrange}${columnNumber}`; + autoGeneratedLocationCode() { + const { shelfNumber, storey, arrange, columnNumber, cellsNum } = this.model; + if (shelfNumber || storey || arrange || columnNumber || cellsNum) { + return `${shelfNumber}${storey}${arrange}${columnNumber}${cellsNum}`; } return ''; } @@ -150,6 +161,7 @@ edit (record) { this.model = Object.assign({}, record); this.visible = true; + this.warehouseId = record.warehouseId }, submitForm () { const that = this; @@ -180,12 +192,37 @@ }) }, + //楠岃瘉 璐ф灦鍙� + validateShelfNumber(rule, value, callback) { + var params = { + warehouseId: this.warehouseId, + shelfNumber: value, + }; + getAction(this.url.checkShelfNum,params).then((res) => { + if (res.success) { + callback(); + } else { + callback("璐ф灦缂栧彿宸插瓨鍦�!"); + } + }) + }, }, watch: { - 'model.shelfNumber': 'updateLocationCode', - 'model.storey': 'updateLocationCode', - 'model.arrange': 'updateLocationCode', - 'model.columnNumber': 'updateLocationCode' + autoGeneratedLocationCode(newVal) { + // 鍙湁褰撶敤鎴锋病鏈夋墜鍔ㄨ緭鍏ユ椂鎵嶈嚜鍔ㄥ~鍏� + if (!this.userEditedLocationCode) { + this.model.locationCode = newVal; + } + this.autoLocationCode = newVal; + }, + 'model.locationCode'(newVal) { + // 濡傛灉鐢ㄦ埛鎵嬪姩杈撳叆锛屽垯鏍囪涓哄凡缂栬緫 + if (newVal !== this.autoLocationCode) { + this.userEditedLocationCode = true; + } else { + this.userEditedLocationCode = false; + } + } } } </script> \ No newline at end of file -- Gitblit v1.9.3