Sfoglia il codice sorgente

处理编辑、修订字段禁用

002390 2 anni fa
parent
commit
8337668dcb

+ 0 - 4
src/views/purchase/purchase-order/add/index.vue

@@ -88,7 +88,6 @@ export default {
       this.params.puDept = deptId;
       this.params.puDeptName = deptName;
       // this.params.status = '0';
-      console.log(this.params, ' this.params----------打开');
     },
     setVisible(prop) {
       this.visible = prop;
@@ -190,15 +189,12 @@ export default {
     // 取消
     handleCancel() {
       this.setVisible(false);
-      this.params = initParams(this.columns, "key", "value");
       this.params = {
         ...initParams(this.columns),
         puOrderItemList: [],
         puOrderExecuteList: [],
       }
 
-      console.log(this.params, ' this.params------------取消');
-
     },
     // 保存
     async handleSava() {

+ 21 - 10
src/views/purchase/purchase-order/edit/index.vue

@@ -82,9 +82,9 @@ export default {
     // 判断属性是否禁用
     handleIsForbidden(status) {
       console.log(status);
-      let { editColumns, editTabColumns } = forbidden(status != '2');
-      this.columns = editColumns;
-      this.tabColumns = editTabColumns;
+      let { editColumns: updateColumns, editTabColumns: updateTabColumns } = forbidden(status != '2');
+      this.columns = updateColumns;
+      this.tabColumns = updateTabColumns;
     },
     // 查询详细
     async fetchItem(prop) {
@@ -93,7 +93,6 @@ export default {
         const { code, msg, data } = await orderApi.details(prop);
         if (code === 200) {
           this.params = { ...this.params, ...data };
-          console.log(this.params, 'this.params----------123');
           this.handleIsForbidden(this.params.status);
         }
       } catch (err) {
@@ -110,13 +109,21 @@ export default {
         if (Array.isArray(this.params[key])) {
 
           const arr = this.tabColumns.find(
+
             (element) => element.key === key
+
           ).tableColumns;
 
+
           let rowData = initParams(arr, "key", "value");
 
-          'rowno' in rowData && (rowData['rowno'] = this.params[key].length + 1);
-          'rowNo' in rowData && (rowData['rowNo'] = this.params[key].length + 1);
+          "rowno" in rowData &&
+            (rowData["rowno"] = this.params[key].length + 1);
+          "rowNo" in rowData &&
+            (rowData["rowNo"] = this.params[key].length + 1);
+
+          // 是否完成询价,新增明细行需默认明细为false
+          rowData['whetherCompleteInquiry'] = false;
 
           this.params[key].push(rowData);
         }
@@ -140,7 +147,11 @@ export default {
     // 取消
     handleCancel() {
       this.setVisible(false);
-      this.params = initParams(this.columns, "key", "value");
+      this.params = {
+        ...initParams(this.columns),
+        puOrderItemList: [],
+        puOrderExecuteList: [],
+      }
     },
     // 保存
     async handleSava() {
@@ -153,7 +164,7 @@ export default {
           : orderApi.edit(this.params)
         )
         if (code === 200) {
-          this.setVisible(false);
+          this.handleCancel();
         }
       } catch (err) {
         //
@@ -255,7 +266,7 @@ export default {
                 style="width: 100%">
               </el-input>
               <el-input-number v-if="column.inputType === 'InputNumber'" v-model="params[column.key]"
-                :max="handleIsRevise(params.status) ? params[column.key] : 'Infinity'"
+                :max="handleIsRevise(params.status) ? params[column.key] : Infinity"
                 :controls-position="column.controlsPosition" :placeholder="column.placeholder"
                 :clearable="column.clearable" :disabled="column.disabled" style="width: 100%">
               </el-input-number>
@@ -335,7 +346,7 @@ export default {
                   </el-checkbox>
                   <el-input-number v-if="cColumn.inputType === 'InputNumber'" v-model="scope.row[cColumn.key]"
                     :controls-position="cColumn.controlsPosition"
-                    :max="handleIsRevise(params.status) ? scope.row[cColumn.key] : 'Infinity'"
+                    :max="handleIsRevise(params.status) ? scope.row[cColumn.key] : Infinity"
                     @change="handleInputChange(scope.row, cColumn.key)" :placeholder="cColumn.placeholder"
                     :clearable="cColumn.clearable" :disabled="cColumn.disabled" :size="size" style="width: 100%">
                   </el-input-number>

+ 17 - 4
src/views/purchase/purchase-order/edit/initColumn.js

@@ -27,15 +27,28 @@ export const forbidden = (isEdit) => {
     console.log('编辑');
     // 编辑
     editColumns.forEach(item => {
-      item.disabled = false;
-      item.readonly = false;
+
+      if(item.key == 'code' || item.key == 'status'){
+
+        item.disabled = true;
+        item.readonly = true;
+      }else{
+        item.disabled = false;
+        item.readonly = false;
+      }
     })
 
     editTabColumns.forEach(item => {
 
       item.tableColumns.forEach(t => {
-        t.disabled = false;
-        t.readonly = false;
+
+        if(t.key == 'rowno' ||t.key == 'rowNo'){
+          t.disabled = true;
+          t.readonly = true;
+        }else{
+          t.disabled = false;
+          t.readonly = false;
+        }
       })
     })
   } else {