Jelajahi Sumber

出运明细-报关要素

jingbb 11 bulan lalu
induk
melakukan
8e7902ad57

+ 29 - 10
src/views/shipment-details/declareElementsModal.vue

@@ -124,13 +124,14 @@
               <!-- 类型 下拉选择 -->
               <template slot="typeValueSlot" slot-scope="text, record, index">
                 <a-form-model-item prop="typeValue">
-                   <a-select v-model="record.typeValue">
-                  <a-select-option
-                     v-for="(item,index) in arrOption"
-                     :key="index"
-                     :value="item.value">
-                     {{item.label}}
-                  </a-select-option>
+                   <a-select v-model="record.typeValue" @change="changeType(record,index)">
+                      <a-select-option
+                        v-for="(item,index) in arrOption"
+                        :key="index"
+                        :value="item.value"
+                        >
+                          {{item.label}}
+                      </a-select-option>
                    </a-select>
 
                   <!-- <j-dict-select-tag v-model="record.typeValue" placeholder="请选择类型" style="text-align:left;"
@@ -142,7 +143,7 @@
               <!-- 描述 输入框-->
               <template slot="describeText" slot-scope="text, record, index">
                 <a-form-model-item prop="describeText">
-                  <a-input style="width:100%" type="text" v-model="record.describeText" :disabled="pushState"/>
+                  <a-input style="width:100%" type="text" v-model="record.describeText" :disabled="pushState||record.mandatoryAssign"/>
                 </a-form-model-item>
               </template>
 
@@ -288,11 +289,20 @@ export default {
         index: '',
         typeValue: '',
         describeText: '',
-        operation: ''
+        operation: '',
+        mandatoryAssign:false
       }
       this.declareElementsData.push(addrow)
     },
-
+    changeType(record,index){
+          if(record.typeValue=='品名'){
+          record.describeText = this.declareElements.declarationName
+          record.mandatoryAssign = true
+        }else{
+          this.$set(record,'mandatoryAssign',false)
+          this.$forceUpdate()
+        }
+    },
     //查询最近报关信息
     queryLatelyDeclarationElements(){
       var hscode = this.declareElements.declarationName;
@@ -302,6 +312,12 @@ export default {
         res.result['itemIds'] = this.declareElements.itemIds;
         this.declareElements=res.result;
         this.declareElementsData=res.result.syDeclarationElementsItemList;
+        this.declareElementsData.map(item=>{
+          if(item.typeValue=='品名'){
+            item.mandatoryAssign = true
+            item.describeText = this.declareElements.declarationName
+          }else{item.mandatoryAssign = false}
+        })
         this.declareElements.inventoryName = inventoryName
         //console.info("赋值数据:"+JSON.stringify(this.declareElements))
       }else{
@@ -347,6 +363,9 @@ export default {
           item.sort = index+1
         })
         newObj.syDeclarationElementsItemList = this.declareElementsData
+        newObj.syDeclarationElementsItemList.map(event=>{
+          delete event.mandatoryAssign
+        })
         // newDeclareElement.documentNo = this.addShipDet.documentNo // 单据号
         syDeclarationElementsAdd(newObj).then(res => {
         if (res.success) {

+ 8 - 1
src/views/shipment-details/shipmentList.vue

@@ -819,6 +819,14 @@ export default {
           if(this.copyTableData.length==0||!(this.copyFromData.orderNumber == record.orderNumber && this.copyFromData.itemNumber==record.itemNumber && this.copyFromData.account == record.account&& this.copyFromData.inventoryName == record.inventoryName)){
            // 子表赋值
             this.$refs.declareElementsModal.declareElementsData = res.result.syDeclarationElementsItemList
+            this.$refs.declareElementsModal.declareElementsData.map(item=>{
+              if(item.typeValue=='品名'){
+                item.mandatoryAssign = true
+                item.describeText = this.$refs.declareElementsModal.declareElements.declarationName
+              }else{
+                item.mandatoryAssign = false
+              }
+        })
           }else{
             this.$refs.declareElementsModal.declareElementsData = this.copyTableData
           }
@@ -901,7 +909,6 @@ export default {
       if(yesA == 'yes'){
         this.loading = true
         exportXls(obj).then(res =>{
-          debugger
         if(res.message){
           this.loading = false
           this.$message.error(res.message)