Browse Source

测试合并开发

asd26269546 1 năm trước cách đây
mục cha
commit
673d0e4b52

+ 18 - 1
src/components/process/PriceSheet.vue

@@ -807,6 +807,24 @@ watch(
       for (var text in props.queryData) {
         formData.data[text] = props.queryData[text];
       }
+      if (formData.data.quotationProductList && formData.data.quotationProductList.length > 0) {
+        for (let i = 0; i < formData.data.quotationProductList.length; i++) {
+          delete formData.data.quotationProductList[i].id;
+          proxy.post("/productInfo/detail", { id: formData.data.quotationProductList[i].productId }).then((resProduct) => {
+            formData.data.quotationProductList[i].name = resProduct.name;
+            formData.data.quotationProductList[i].code = resProduct.code;
+            formData.data.quotationProductList[i].unit = resProduct.unit;
+          });
+        }
+        let fileIds = formData.data.quotationProductList.map((item) => item.productId);
+        proxy.post("/fileInfo/getList", { businessIdList: fileIds }).then((resFile) => {
+          for (let i = 0; i < formData.data.quotationProductList.length; i++) {
+            if (resFile[formData.data.quotationProductList[i].productId] && resFile[formData.data.quotationProductList[i].productId].length > 0) {
+              formData.data.quotationProductList[i].fileUrl = resFile[formData.data.quotationProductList[i].productId][0].fileUrl;
+            }
+          }
+        });
+      }
       if (formData.data.countryId) {
         getCityData(formData.data.countryId, "20");
       }
@@ -858,7 +876,6 @@ onMounted(() => {
             formData.data.quotationProductList[i].unit = resProduct.unit;
           });
         }
-        console.log(formData.data.quotationProductList);
         let fileIds = formData.data.quotationProductList.map((item) => item.productId);
         proxy.post("/fileInfo/getList", { businessIdList: fileIds }).then((resFile) => {
           for (let i = 0; i < formData.data.quotationProductList.length; i++) {

+ 16 - 10
src/components/selectCity/index.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="select-city">
-    <el-select clearable filterable allow-create :placeholder="placeholder" @change="getCityData" v-model="showModel" style="width: 100%">
+    <el-select clearable filterable allow-create :placeholder="placeholder" @change="getCityData" @clear="getCityData" v-model="showModel" style="width: 100%">
       <el-option v-for="item in data" :label="item.name" :value="item.id"> </el-option>
     </el-select>
   </div>
@@ -38,23 +38,29 @@ defineProps({
 //监听modelValue的变化
 watch(
   formData.value,
-  (val) => {
-    if (formData.value[proxy.addressId || "provinceId"] === "-1") {
-      formData.value[proxy.addressId || "provinceId"] = "";
-      formData.value[proxy.addressName || "provinceName"] = "";
-    }
-    // console.log(formData.value[proxy.addressId || 'provinceId'],formData.value[proxy.addressName || 'provinceName'])
+  () => {
     if (!formData.value[proxy.addressId || "provinceId"] && !formData.value[proxy.addressName || "provinceName"]) {
-      showModel.value = "";
+      if (formData.value[proxy.addressId || "provinceId"] === "-1") {
+        showModel.value = "";
+        formData.value[proxy.addressId || "provinceId"] = "";
+        formData.value[proxy.addressName || "provinceName"] = "";
+      } else {
+        showModel.value = "";
+      }
     } else {
-      showModel.value = formData.value[proxy.addressId || "provinceId"] || formData.value[proxy.addressName || "provinceName"];
+      if (formData.value[proxy.addressId || "provinceId"] === "-1") {
+        showModel.value = formData.value[proxy.addressId || "provinceId"] || formData.value[proxy.addressName || "provinceName"];
+        formData.value[proxy.addressId || "provinceId"] = "";
+        formData.value[proxy.addressName || "provinceName"] = "";
+      } else {
+        showModel.value = formData.value[proxy.addressId || "provinceId"] || formData.value[proxy.addressName || "provinceName"];
+      }
     }
   },
   {
     immediate: true,
   }
 );
-
 const getCityData = (val) => {
   let isAddCity = true;
   //判断val是否在data里面

+ 156 - 73
src/views/purchaseManage/supplier/supplyPrice/index.vue

@@ -19,37 +19,84 @@
             action: () => openModal('add'),
           },
         ]"
-        @get-list="getList">
+        @get-list="getList"
+      >
         <template #fileSlot="{ item }">
-          <div style="cursor: pointer; color: #409eff" @click="handleClickFile(item)">
+          <div
+            style="cursor: pointer; color: #409eff"
+            @click="handleClickFile(item)"
+          >
             {{ item.fileName }}
           </div>
         </template>
       </byTable>
     </div>
-    <el-dialog :title="modalType == 'add' ? '添加供应价格' : '编辑供应价格'" v-model="dialogVisible" width="800" v-loading="loading">
-      <byForm :formConfig="formConfig" :formOption="formOption" v-model="formData.data" :rules="rules" ref="byform">
+    <el-dialog
+      :title="modalType == 'add' ? '添加供应价格' : '编辑供应价格'"
+      v-model="dialogVisible"
+      width="800"
+      v-loading="loading"
+    >
+      <byForm
+        :formConfig="formConfig"
+        :formOption="formOption"
+        v-model="formData.data"
+        :rules="rules"
+        ref="byform"
+      >
         <template #details>
           <div style="width: 100%">
-            <el-button type="primary" @click="openProduct = true" :disabled="modalType == 'edit'"> 选择 </el-button>
+            <el-button
+              type="primary"
+              @click="openProduct = true"
+              :disabled="modalType == 'edit'"
+            >
+              选择
+            </el-button>
 
-            <el-form ref="tableForm" :model="formData.data" :rules="rules" label-width="0px" style="margin-top: 15px">
+            <el-form
+              ref="tableForm"
+              :model="formData.data"
+              :rules="rules"
+              label-width="0px"
+              style="margin-top: 15px"
+            >
               <el-table :data="formData.data.supplierPriceList">
                 <el-table-column prop="code" label="货品编码" />
                 <el-table-column prop="name" label="货品名称" min-width="150" />
                 <el-table-column prop="spec" label="规格型号" />
-                <el-table-column prop="unit" label="单位" :formatter="(row) => dictValueLabel(row.unit, productUnit)" />
+                <el-table-column
+                  prop="unit"
+                  label="单位"
+                  :formatter="(row) => dictValueLabel(row.unit, productUnit)"
+                />
                 <el-table-column prop="price" label="供应单价" min-width="150">
                   <template #default="{ row, $index }">
-                    <el-form-item :prop="'supplierPriceList.' + $index + '.price'" :rules="rules.price" :inline-message="true">
-                      <el-input-number v-model="row.price" :precision="2" :controls="false" :min="1"  onmousewheel="return false;" />
+                    <el-form-item
+                      :prop="'supplierPriceList.' + $index + '.price'"
+                      :rules="rules.price"
+                      :inline-message="true"
+                    >
+                      <el-input-number
+                        v-model="row.price"
+                        :precision="2"
+                        :controls="false"
+                        :min="1"
+                        onmousewheel="return false;"
+                      />
                     </el-form-item>
                   </template>
                 </el-table-column>
 
                 <el-table-column prop="zip" label="操作" width="100">
                   <template #default="{ $index }">
-                    <el-button type="primary" link @click="handleRemove($index)" :disabled="modalType == 'edit'">删除</el-button>
+                    <el-button
+                      type="primary"
+                      link
+                      @click="handleRemove($index)"
+                      :disabled="modalType == 'edit'"
+                      >删除</el-button
+                    >
                   </template>
                 </el-table-column>
               </el-table>
@@ -59,12 +106,29 @@
       </byForm>
       <template #footer>
         <el-button @click="dialogVisible = false" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitForm('byform')" size="large" :loading="submitLoading"> 确 定 </el-button>
+        <el-button
+          type="primary"
+          @click="submitForm('byform')"
+          size="large"
+          :loading="submitLoading"
+        >
+          确 定
+        </el-button>
       </template>
     </el-dialog>
 
-    <el-dialog v-if="openProduct" v-model="openProduct" title="选择货品" width="70%" append-to-body>
-      <SelectGoods :selectList="acquireSelectList()" @cancel="openProduct = false" @pushGoods="pushGoods"></SelectGoods>
+    <el-dialog
+      v-if="openProduct"
+      v-model="openProduct"
+      title="选择货品"
+      width="70%"
+      append-to-body
+    >
+      <SelectGoods
+        :selectList="acquireSelectList()"
+        @cancel="openProduct = false"
+        @pushGoods="pushGoods"
+      ></SelectGoods>
     </el-dialog>
   </div>
 </template>
@@ -98,7 +162,9 @@ let openProduct = ref(false);
 let modalType = ref("add");
 let fileList = ref([]);
 let rules = ref({
-  supplierInfoId: [{ required: true, message: "请选择供应商", trigger: "change" }],
+  supplierInfoId: [
+    { required: true, message: "请选择供应商", trigger: "change" },
+  ],
   price: [{ required: true, message: "请输入供应单价", trigger: "blur" }],
 });
 const { proxy } = getCurrentInstance();
@@ -226,11 +292,15 @@ const config = computed(() => {
             el: "button",
             click() {
               // 弹窗提示是否删除
-              ElMessageBox.confirm("此操作将永久删除该数据, 是否继续?", "提示", {
-                confirmButtonText: "确定",
-                cancelButtonText: "取消",
-                type: "warning",
-              }).then(() => {
+              ElMessageBox.confirm(
+                "此操作将永久删除该数据, 是否继续?",
+                "提示",
+                {
+                  confirmButtonText: "确定",
+                  cancelButtonText: "取消",
+                  type: "warning",
+                }
+              ).then(() => {
                 // 删除
                 proxy
                   .post("/supplierPrice/delete", {
@@ -295,14 +365,16 @@ const formConfig = reactive([
 const getList = async (req) => {
   sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
   loading.value = true;
-  proxy.post("/supplierPrice/page", sourceList.value.pagination).then((message) => {
-    console.log(message);
-    sourceList.value.data = message.rows;
-    sourceList.value.pagination.total = message.total;
-    setTimeout(() => {
-      loading.value = false;
-    }, 200);
-  });
+  proxy
+    .post("/supplierPrice/page", sourceList.value.pagination)
+    .then((message) => {
+      console.log(message);
+      sourceList.value.data = message.rows;
+      sourceList.value.pagination.total = message.total;
+      setTimeout(() => {
+        loading.value = false;
+      }, 200);
+    });
 };
 const openModal = () => {
   dialogVisible.value = true;
@@ -343,41 +415,34 @@ const submitForm = () => {
                     message: `已存在供应价格,价格为${res.existSupplierPriceList[0].price}`,
                     type: "info",
                   });
-                  ElMessageBox.confirm("继续提交将修改已存在的单价数据, 是否继续?", "提示", {
-                    confirmButtonText: "确定",
-                    cancelButtonText: "取消",
-                    type: "warning",
-                  })
+                  ElMessageBox.confirm(
+                    "继续提交将修改已存在的单价数据, 是否继续?",
+                    "提示",
+                    {
+                      confirmButtonText: "确定",
+                      cancelButtonText: "取消",
+                      type: "warning",
+                    }
+                  )
                     .then(() => {
-                      const arr = [];
-                      for (let i = 0; i < formData.data.supplierPriceList.length; i++) {
-                        const iele = formData.data.supplierPriceList[i];
-                        for (let j = 0; j < res.existSupplierPriceList.length; j++) {
-                          const jele = res.existSupplierPriceList[j];
-                          if (iele.productInfoId === jele.productInfoId) {
-                            jele.price = iele.price;
-                            arr.push(jele);
+                      submitData.renewWhileItExists = true;
+                      proxy
+                        .post("/supplierPrice/" + modalType.value, submitData)
+                        .then((res) => {
+                          if (res.addSuccess) {
+                            ElMessage({
+                              message: "修改成功",
+                              type: "success",
+                            });
+                            getList();
+                            dialogVisible.value = false;
+                            submitLoading.value = false;
                           }
-                        }
-                      }
-                      formData.data.supplierPriceList = arr.map((x) => ({
-                        productInfoId: x.productInfoId,
-                        price: x.price,
-                      }));
-                      formData.data.renewWhileItExists = true;
-                      proxy.post("/supplierPrice/" + modalType.value, formData.data).then((res) => {
-                        if (res.addSuccess) {
-                          ElMessage({
-                            message: "修改成功",
-                            type: "success",
-                          });
-                          getList();
-                          dialogVisible.value = false;
-                          submitLoading.value = false;
-                        }
-                      });
+                        });
                     })
-                    .catch(() => {});
+                    .catch(() => {
+                      submitLoading.value = false;
+                    });
                 }
               },
               (err) => {
@@ -386,19 +451,25 @@ const submitForm = () => {
             );
           } else {
             formData.data.supplierInfoId = formData.data.supplierInfoIdCopy;
-            formData.data.productInfoId = formData.data.supplierPriceList[0].productInfoId;
+            formData.data.productInfoId =
+              formData.data.supplierPriceList[0].productInfoId;
             formData.data.price = formData.data.supplierPriceList[0].price;
             delete formData.data.supplierPriceList;
             delete formData.data.supplierInfoIdCopy;
-            proxy.post("/supplierPrice/" + modalType.value, formData.data).then((res) => {
-              ElMessage({
-                message: "修改成功",
-                type: "success",
-              });
-              getList();
-              dialogVisible.value = false;
-              submitLoading.value = false;
-            });
+            proxy.post("/supplierPrice/" + modalType.value, formData.data).then(
+              (res) => {
+                ElMessage({
+                  message: "修改成功",
+                  type: "success",
+                });
+                getList();
+                dialogVisible.value = false;
+                submitLoading.value = false;
+              },
+              (err) => {
+                submitLoading.value = false;
+              }
+            );
           }
         }
       });
@@ -455,9 +526,14 @@ const handleRemove = (index) => {
 const pushGoods = (goods) => {
   if (goods && goods.length > 0) {
     let afterFiltering = [];
-    if (formData.data.supplierPriceList && formData.data.supplierPriceList.length > 0) {
+    if (
+      formData.data.supplierPriceList &&
+      formData.data.supplierPriceList.length > 0
+    ) {
       afterFiltering = goods.filter((item) => {
-        let data = formData.data.supplierPriceList.filter((itemProduct) => itemProduct.productInfoId === item.id);
+        let data = formData.data.supplierPriceList.filter(
+          (itemProduct) => itemProduct.productInfoId === item.id
+        );
         if (data && data.length > 0) {
           return false;
         }
@@ -466,7 +542,11 @@ const pushGoods = (goods) => {
     } else {
       afterFiltering = goods;
     }
-    const arr = afterFiltering.map((x) => ({ ...x, productInfoId: x.id, price: "" }));
+    const arr = afterFiltering.map((x) => ({
+      ...x,
+      productInfoId: x.id,
+      price: "",
+    }));
     arr.forEach((item) => {
       if (!formData.data.supplierPriceList.some((e) => e.id === item.id)) {
         formData.data.supplierPriceList.push(item);
@@ -500,7 +580,10 @@ getDict();
 getList();
 const acquireSelectList = () => {
   let data = [];
-  if (formData.data.supplierPriceList && formData.data.supplierPriceList.length > 0) {
+  if (
+    formData.data.supplierPriceList &&
+    formData.data.supplierPriceList.length > 0
+  ) {
     data = formData.data.supplierPriceList.map((item) => {
       return {
         id: item.productInfoId,

+ 9 - 9
src/views/salesMange/saleContract/contract/index.vue

@@ -119,10 +119,6 @@ const status = ref([
     value: 30,
   },
   {
-    label: "作废",
-    value: 70,
-  },
-  {
     label: "终止",
     value: 99,
   },
@@ -357,11 +353,15 @@ const config = computed(() => {
             },
             el: "button",
             click() {
-              ElMessageBox.confirm("此操作将永久删除该数据, 是否继续?", "提示", {
-                confirmButtonText: "确定",
-                cancelButtonText: "取消",
-                type: "warning",
-              }).then(() => {
+              ElMessageBox.confirm(
+                "此操作将作废该数据, 是否继续?",
+                "提示",
+                {
+                  confirmButtonText: "确定",
+                  cancelButtonText: "取消",
+                  type: "warning",
+                }
+              ).then(() => {
                 proxy
                   .post("/contract/edit", {
                     id: row.id,

+ 1 - 1
src/views/salesMange/shipmentMange/document/index.vue

@@ -2105,7 +2105,7 @@ const getDict = () => {
     .post("/dictTenantData/page", {
       pageNum: 1,
       pageSize: 999,
-      dictCode: "trade_methods",
+      dictCode: "trade_mode",
       tenantId: useUserStore().user.tenantId,
     })
     .then((res) => {