Selaa lähdekoodia

更新 合同保存修改

wzg 1 vuosi sitten
vanhempi
commit
97dca8846f
1 muutettua tiedostoa jossa 56 lisäystä ja 21 poistoa
  1. 56 21
      src/views/orderManage/orderDetail.vue

+ 56 - 21
src/views/orderManage/orderDetail.vue

@@ -92,7 +92,11 @@
           placeholder="预计到港时间"
         ></el-date-picker>
       </el-form-item>
-      <el-form-item><el-button @click="onSubmit">确定</el-button></el-form-item>
+      <el-form-item>
+        <div class="df aic mt30" style="margin-left: 300px">
+          <el-button @click="onSubmit" type="primary">保存</el-button>
+        </div>
+      </el-form-item>
     </el-form>
   </div>
 </template>
@@ -116,7 +120,21 @@ async function getOrderDetail() {
   let { data } = await api.getOrderDetail({
     orderId: route.query.id,
   });
-  console.log(data);
+
+  ruleForm.value = data.result.orderSignInfo.contract;
+  contractFileList.value = [
+    {
+      url: ruleForm.value.contractViewUrl,
+    },
+  ];
+  let dischargePortIdArr = ruleForm.value.dischargePortIds.split(",");
+  let dischargePortNameArr = ruleForm.value.dischargePorts.split(",");
+  ruleForm.value.dischargePorts = dischargePortIdArr.map((item, index) => {
+    return {
+      dischargePortId: item,
+      dischargePort: dischargePortNameArr[index],
+    };
+  });
 }
 
 const ruleFormRef = ref(null);
@@ -150,14 +168,22 @@ const rules = ref({
 });
 const disabled = ref(false);
 function contractFileListChange(fileList) {
-  ruleForm.value.contractFileKey = fileList[0].response.result.key;
-  ruleForm.value.contractViewUrl = fileList[0].response.result.viewUrl;
-  ruleForm.value.contractDownloadUrl = fileList[0].response.result.downloadUrl;
-  contractFileList.value = [
-    {
-      url: fileList[0].response.result.viewUrl,
-    },
-  ];
+  if (fileList.length) {
+    ruleForm.value.contractFileKey = fileList[0].response.result.key;
+    ruleForm.value.contractViewUrl = fileList[0].response.result.viewUrl;
+    ruleForm.value.contractDownloadUrl =
+      fileList[0].response.result.downloadUrl;
+    contractFileList.value = [
+      {
+        url: fileList[0].response.result.viewUrl,
+      },
+    ];
+  } else {
+    ruleForm.value.contractFileKey = "";
+    ruleForm.value.contractViewUrl = "";
+    ruleForm.value.contractDownloadUrl = "";
+    contractFileList.value = [];
+  }
 }
 const contractFileList = ref([]);
 function selectCargoOwner({ value, key }) {
@@ -170,7 +196,10 @@ function selectCargo({ value, key }) {
 }
 
 function selectLoadPort(item) {}
-function selectDischargePort(item, index) {}
+function selectDischargePort(item, index) {
+  ruleForm.value.dischargePorts[index].dischargePort = item.value;
+  ruleForm.value.dischargePorts[index].dischargePortId = item.key;
+}
 function removeDischargePort(index) {
   ruleForm.value.dischargePorts.splice(index, 1);
 }
@@ -184,16 +213,22 @@ function onSubmit() {
         type: "warning",
       }).then(async () => {
         const postData = { orderId: route.query.id, ...ruleForm.value };
-        postData.loadPortId = postData.loadPort.key;
-        postData.loadPort = postData.loadPort.value;
-        postData.dischargePorts = postData.dischargePorts.map((item) => {
-          return {
-            dischargePort: item.dischargePort.value,
-            dischargePortId: item.dischargePort.key,
-            reasonableUnloadingDays: 0,
-          };
-        });
-
+        if (postData.loadPort.key) {
+          postData.loadPortId = postData.loadPort.key;
+          postData.loadPort = postData.loadPort.value;
+        }
+        postData.dischargePorts = postData.dischargePorts
+          .filter((item) => {
+            return item.dischargePort;
+          })
+          .map((item) => {
+            return {
+              dischargePort: item.dischargePort,
+              dischargePortId: item.dischargePortId,
+              reasonableUnloadingDays: 0,
+            };
+          });
+        delete postData.dischargePortIds;
         const loading = ElLoading.service({
           lock: true,
           text: "正在提交",