lxf 1 жил өмнө
parent
commit
3cc2683291

+ 64 - 0
src/views/subsidiary/order/management/add.vue

@@ -327,6 +327,15 @@
             </el-collapse>
           </div>
         </template>
+        <template #package>
+          <div style="width: 100%; padding: 0 20px">
+            <el-form :model="formData.data">
+              <el-form-item>
+                <el-button type="primary" size="small" @click="clickViewPackaging()" v-preReClick>产品包装配置</el-button>
+              </el-form-item>
+            </el-form>
+          </div>
+        </template>
         <template #deliveryTime>
           <div style="width: 100%">
             <el-date-picker
@@ -511,6 +520,38 @@
         <el-button @click="openExpressPacking = false">关 闭</el-button>
       </template>
     </el-dialog>
+
+    <el-dialog title="包装配置" v-if="openViewPackaging" v-model="openViewPackaging" width="80%">
+      <div style="height: calc(100vh - 184px); overflow-y: auto; overflow-x: hidden">
+        <div style="font-weight: 700; margin: 20px 0 10px 0">发货包装</div>
+        <el-table :data="formData.data.orderPackageBomList" :row-style="{ height: '35px' }" header-row-class-name="tableHeader">
+          <el-table-column label="品号" prop="code" width="160" />
+          <el-table-column label="品名" prop="name" min-width="220" />
+          <el-table-column label="销售单价" prop="internalSellingPrice" width="100" />
+          <el-table-column label="数量" prop="quantity" width="120" />
+          <el-table-column label="销售小计" width="120">
+            <template #default="{ row }">
+              {{ moneyFormat(computeMoney(row, "internalSellingPrice"), 2) }}
+            </template>
+          </el-table-column>
+        </el-table>
+        <div style="font-weight: 700; margin: 20px 0 10px 0">外箱不干胶图稿</div>
+        <div style="display: flex; width: 100%">
+          <div style="width: 80px; line-height: 32px">不干胶图片:</div>
+          <div style="width: calc(100% - 80px)">
+            <el-image
+              fit="scale-down"
+              style="width: 148px; height: 148px; margin-right: 10px; cursor: pointer"
+              v-if="formData.data.outerBoxSelfAdhesiveStickerFile && formData.data.outerBoxSelfAdhesiveStickerFile.fileUrl"
+              :src="formData.data.outerBoxSelfAdhesiveStickerFile.fileUrl"
+              @click="openFile(formData.data.outerBoxSelfAdhesiveStickerFile.fileUrl)" />
+          </div>
+        </div>
+      </div>
+      <template #footer>
+        <el-button @click="openViewPackaging = false">关 闭</el-button>
+      </template>
+    </el-dialog>
   </div>
 </template>
 
@@ -562,6 +603,19 @@ const formConfig = computed(() => {
       prop: "orderSkuList",
       slotName: "orderSkuList",
     },
+    route.query && route.query.detailId
+      ? {
+          type: "title",
+          title: "产品包装配置",
+          label: "",
+        }
+      : {},
+    route.query && route.query.detailId
+      ? {
+          type: "slot",
+          slotName: "package",
+        }
+      : {},
     {
       type: "title",
       title: "类型",
@@ -878,6 +932,12 @@ const getOrderDetail = (parameter) => {
           } else {
             fileList.value = [];
           }
+          let outerBoxSelfAdhesiveStickerFile = fileObj[formData.data.id].filter((item) => item.businessType == "1");
+          if (outerBoxSelfAdhesiveStickerFile && outerBoxSelfAdhesiveStickerFile.length > 0) {
+            formData.data.outerBoxSelfAdhesiveStickerFile = outerBoxSelfAdhesiveStickerFile[0];
+          } else {
+            formData.data.outerBoxSelfAdhesiveStickerFile = {};
+          }
         }
         for (let i = 0; i < formData.data.orderSkuList.length; i++) {
           if (fileObj[formData.data.orderSkuList[i].id] && fileObj[formData.data.orderSkuList[i].id].length > 0) {
@@ -1376,6 +1436,10 @@ const computeDeliveryMaterialsFee = () => {
   }
   return money;
 };
+const openViewPackaging = ref(false);
+const clickViewPackaging = () => {
+  openViewPackaging.value = true;
+};
 </script>
 
 <style lang="scss" scoped>

+ 6 - 0
src/views/subsidiary/order/management/design.vue

@@ -719,6 +719,12 @@ const getOrderDetail = (parameter) => {
           } else {
             fileList.value = [];
           }
+          let outerBoxSelfAdhesiveStickerFile = fileObj[formData.data.id].filter((item) => item.businessType == "1");
+          if (outerBoxSelfAdhesiveStickerFile && outerBoxSelfAdhesiveStickerFile.length > 0) {
+            formData.data.outerBoxSelfAdhesiveStickerFile = outerBoxSelfAdhesiveStickerFile[0];
+          } else {
+            formData.data.outerBoxSelfAdhesiveStickerFile = {};
+          }
         }
         for (let i = 0; i < formData.data.orderSkuList.length; i++) {
           if (fileObj[formData.data.orderSkuList[i].id] && fileObj[formData.data.orderSkuList[i].id].length > 0) {