Tang 3 vuotta sitten
vanhempi
commit
dcf746cf32

+ 18 - 2
src/newApi/newOrder.js

@@ -24,6 +24,14 @@ export default {
             params: data
         })
     },
+    //查询商品列表To录单
+    inquiregoodslistToInputList(data) {
+        return request({
+            url: '/goods/listToInput',
+            method: 'get',
+            params: data
+        })
+    },
     //修改订单计费单-单个
     editordersheetedit(data) {
         return request({
@@ -64,6 +72,14 @@ export default {
             params: data
         })
     },
-    
-    
+    //导出错误录入订单
+    inquireorderexportWrongInputOrder(data) {
+        return request({
+            url: '/order/exportWrongInputOrder',
+            method: 'post',
+            data
+        })
+    },
+
+
 }

+ 54 - 25
src/views/Marketing/order/offlineOrder/batchRecord/secondStep/index.vue

@@ -15,6 +15,7 @@
     </div>
     <div class="bodySy">
       <el-table
+        v-loading="loading"
         :height="heightData"
         :data="tableData"
         :span-method="objectSpanMethod"
@@ -134,6 +135,7 @@ export default {
   components: { selectClass, setGoodsList },
   data() {
     return {
+      loading: false,
       disabledBtn: false,
       orderSubmitStatus: true, //订单是否可提交
       tableSet: [
@@ -536,6 +538,7 @@ export default {
       }
     },
     getInitData(obj) {
+      this.loading = true;
       this.toData = JSON.parse(JSON.stringify(obj.topData));
       let data = JSON.parse(JSON.stringify(obj.tableData));
       this.$api
@@ -573,6 +576,9 @@ export default {
             }
           });
           this.decomposeFunc(data);
+        })
+        .finally(() => {
+          this.loading = false;
         });
     },
     decomposeFunc(obj) {
@@ -655,6 +661,7 @@ export default {
         }
       }
       this.disabledBtn = true;
+      this.loading = true;
       if (int === 1 && !this.orderSubmitStatus) {
         var successList = this.tableData.filter((item) => {
           return item.checked && item.success;
@@ -664,6 +671,7 @@ export default {
         });
         this.$parent.changePage2("third", successList, errorList);
         this.disabledBtn = false;
+        this.loading = false;
         return;
       }
       let submitTable = this.tableData.filter((item) => {
@@ -736,41 +744,62 @@ export default {
           }
         }
       });
-      arr.forEach(async (item, index) => {
-        await this.submitFunApi(item);
-      });
+      for (let i = 0; i < arr.length; i++) {
+        await this.submitFunApi(arr[i]);
+      }
       if (arr.length) {
         this.$message("已提交下单内容");
       }
       this.disabledBtn = false;
+      this.loading = false;
       this.orderSubmitStatus = false;
     },
     submitFunApi(item) {
       var self = this;
       return new Promise((resolve, reject) => {
-        self.$api.apporderinputOrder(item).then((res) => {
-          resolve(res);
-          if (res.code === 510 || res.code === 511) {
-            self.tableData.forEach((items, indexs) => {
-              if (items.userId === item.userId) {
-                self.$set(self.tableData[indexs], "errmsg", res.msg);
-              }
-            });
-          } else {
-            self.tableData.forEach((items, indexs) => {
-              if (items.userId === item.userId) {
-                if (items.errmsg) {
-                  self.$set(self.tableData[indexs], "errmsg", "");
+        self.$api
+          .apporderinputOrder(item)
+          .then((res) => {
+            if (res.code === 510 || res.code === 511) {
+              self.tableData.forEach((items, indexs) => {
+                if (items.userId === item.userId) {
+                  self.$set(self.tableData[indexs], "errmsg", res.msg);
                 }
-                self.$set(self.tableData[indexs], "success", true);
-                self.$set(self.tableData[indexs], "orderId", res.data.orderId);
-                self.$set(self.tableData[indexs], "orderSn", res.data.orderSn);
-                self.$set(self.tableData[indexs], "sheetId", res.data.sheetId);
-                self.$set(self.tableData[indexs], "sheetSn", res.data.sheetSn);
-              }
-            });
-          }
-        });
+              });
+            } else {
+              self.tableData.forEach((items, indexs) => {
+                if (items.userId === item.userId) {
+                  if (items.errmsg) {
+                    self.$set(self.tableData[indexs], "errmsg", "");
+                  }
+                  self.$set(self.tableData[indexs], "success", true);
+                  self.$set(
+                    self.tableData[indexs],
+                    "orderId",
+                    res.data.orderId
+                  );
+                  self.$set(
+                    self.tableData[indexs],
+                    "orderSn",
+                    res.data.orderSn
+                  );
+                  self.$set(
+                    self.tableData[indexs],
+                    "sheetId",
+                    res.data.sheetId
+                  );
+                  self.$set(
+                    self.tableData[indexs],
+                    "sheetSn",
+                    res.data.sheetSn
+                  );
+                }
+              });
+            }
+          })
+          .finally(() => {
+            resolve();
+          });
       });
     },
   },

+ 4 - 2
src/views/Marketing/order/offlineOrder/batchRecord/secondStep/setGoodsList.vue

@@ -150,7 +150,8 @@ export default {
           copyData.subjectId = this.active.split("-").map(Number)[0];
           copyData.checked = true;
           if (row.gradeNum) {
-            copyData.gradeId = -1;
+            copyData.gradeId = row.gradeId;
+            copyData.gradeName = row.gradeName;
           } else {
             copyData.gradeId = 0;
           }
@@ -235,9 +236,10 @@ export default {
       }
       if (type == 3 || type == 4) {
         data.businessIds = this.oldObj.businessId;
+        data.status = 1
       }
       data.goodsStatus = 1
-      this.$api.inquireGoods(data).then((res) => {
+      this.$api.inquiregoodslistToInputList(data).then((res) => {
         res.rows.forEach((item) => {
           item.subjectId = subjectId;
           item.checked = false;

+ 44 - 2
src/views/Marketing/order/offlineOrder/batchRecord/thirdStep/index.vue

@@ -25,7 +25,11 @@
             >;总价<strong style="color: red"
               >¥{{ compay(tableData, 5).toFixed(2) }}</strong
             ></span
-          ><el-button size="mini" v-if="newActive === 'error'" type="success"
+          ><el-button
+            size="mini"
+            v-if="newActive === 'error'"
+            type="success"
+            @click="downErrorData"
             >下载失败数据</el-button
           ><el-button
             size="mini"
@@ -75,7 +79,7 @@
               <div v-else>¥{{ scope.row[item.prop] }}</div>
             </div>
             <span v-else-if="item.scope === 'success'"
-              ><el-button type="text" @click="setOptionsFun(2, scope.row)"
+              ><el-button type="text" @click="setOptionsFun(2, scope.row)" v-if="scope.row.sheetId"
                 >补充信息</el-button
               ></span
             >
@@ -98,6 +102,7 @@
 </template>
 
 <script>
+import * as baseUrls from "@/utils/request.js";
 import informationAdd from "./informationAdd.vue";
 export default {
   components: { informationAdd },
@@ -263,6 +268,43 @@ export default {
     },
   },
   methods: {
+    downErrorData() {
+      if (!this.errorobj.length) {
+        this.$message.warning("无失败录入数据");
+        return;
+      }
+      const LIST = this.errorobj.map((item) => {
+        let subjectName = "";
+        for (let i = 0; i < this.sujectList.length; i++) {
+          if (this.sujectList[i].id == item.subjectId) {
+            subjectName = this.sujectList[i].subjectName;
+            break;
+          }
+        }
+        return {
+          cause: item.errmsg,
+          idCard: item.idCard,
+          realname: item.realname,
+          subjectName: subjectName,
+          telphone: item.telphone,
+          goodsName: item.goodsName,
+          goodsPrice: item.standPrice,
+          goodsRealPrice: item.goodsRealPrice,
+          goodsReceived: item.goodsReceived,
+        };
+      });
+      this.$api.inquireorderexportWrongInputOrder(LIST).then((res) => {
+        let url =
+          baseUrls.baseURL + "common/download?fileName=" + res.data.excel.msg;
+        let link = document.createElement("a");
+        let fileName = "导入模板" + ".xlsx";
+        document.body.appendChild(link);
+        link.href = url;
+        link.dowmload = fileName;
+        link.click();
+        link.remove();
+      });
+    },
     backSearch() {
       const jump = () => {
         this.$router.push({

+ 3 - 3
src/views/Marketing/order/offlineOrder/billingBillCharges/index.vue

@@ -137,7 +137,7 @@
                   :controls="false"
                   :min="0.01"
                   :precision="2"
-                  :max="itList['payPrice'] - itList['goodsReceived']"
+                  :max="itList['goodsRealPrice'] - itList['goodsReceived']"
                 ></el-input-number>
               </div>
               <span v-else>
@@ -242,12 +242,12 @@ export default {
         },
         {
           label: "商品标价",
-          prop: "orderPrice",
+          prop: "goodsPrice",
           ch: "¥",
         },
         {
           label: "商品成交价",
-          prop: "payPrice",
+          prop: "goodsRealPrice",
           ch: "¥",
         },
         {

+ 7 - 2
src/views/Marketing/order/offlineOrder/orderChargeInfo/bodyBox.vue

@@ -121,6 +121,7 @@ export default {
      * 选中
      */
     activeUser(item) {
+      this.activeName = "";
       this.active = `${item.userId}-${item.goodsId}`;
       this.goodsId = item.goodsId;
       this.orderSn = item.orderSn;
@@ -128,9 +129,13 @@ export default {
       this.userId = item.userId;
       this.orderFrom = item.orderFrom;
       if (this.$route.query.pageName) {
-        this.activeName = this.$route.query.pageName;
+        setTimeout(() => {
+          this.activeName = this.$route.query.pageName;
+        }, 30);
       } else {
-        this.activeName = "first";
+        setTimeout(() => {
+          this.activeName = "first";
+        }, 30);
       }
     },
     /**

+ 1 - 1
src/views/Marketing/order/offlineOrder/orderChargeInfo/goodsDocument/refundInfos.vue

@@ -4,7 +4,7 @@
     <el-tabs v-else type="border-card">
       <el-tab-pane
         v-for="(item, index) in listData"
-        :label="`第${index + 1}次退款记录`"
+        :label="`第${listData.length - index}次退款记录`"
         :key="index"
       >
         <div>

+ 1 - 1
src/views/Marketing/order/offlineOrder/orderChargeInfo/topBox.vue

@@ -10,7 +10,7 @@
           >
             <el-input
               readonly
-              :value="formData[item.prop1] - formData[item.prop2]"
+              :value="(formData[item.prop1] - formData[item.prop2]).toFixed(2)"
             ></el-input>
           </el-form-item>
           <el-form-item

+ 6 - 2
src/views/resource/bankManagement/testPaperManagement/addPaper/topicAddPaper/index.vue

@@ -1099,8 +1099,9 @@ export default {
       this.$api
         .inquirebankexamquestionList({ examId: this.$route.query.id })
         .then((res) => {
-          res.data.map((item) => {
+          res.data.map((item,index) => {
             item.optionsList = JSON.parse(item.jsonStr);
+            item.index = index
           });
           this.copytableData = JSON.parse(JSON.stringify(res.data));
           this.tableData = res.data;
@@ -1212,6 +1213,9 @@ export default {
             maxIndex = item.sort;
             childrenIndex = item.index
           }
+          if (item.index > childrenIndex) {
+            childrenIndex = item.index;
+          }
         });
         this.activeLists.forEach((item, index) => {
           childrenIndex++
@@ -1223,7 +1227,7 @@ export default {
         });
       } else {
         this.activeLists.forEach((item, index) => {
-          item.index = 0
+          item.index = index
           item.sort = index + 1;
           item.optionsList = JSON.parse(item.jsonStr);
           item.partScore = 0;

+ 4 - 1
src/views/resource/bankManagement/testPaperManagement/editPaper/topicEditPaper/index.vue

@@ -1258,6 +1258,9 @@ export default {
             maxIndex = item.sort;
             childrenIndex = item.index
           }
+          if (item.index > childrenIndex) {
+            childrenIndex = item.index
+          }
         });
         this.activeLists.forEach((item, index) => {
           childrenIndex++
@@ -1270,7 +1273,7 @@ export default {
         });
       } else {
         this.activeLists.forEach((item, index) => {
-          item.index = 0
+          item.index = index
           item.sort = index + 1;
           item.optionsList = JSON.parse(item.jsonStr);
           item.partScore = 0;

+ 1 - 1
src/views/resource/bankManagement/testPaperManagement/editPaper/topicEditPaper/wordPop.vue

@@ -242,4 +242,4 @@ export default {
     margin: 5px 0px;
   }
 }
-</style>
+</style>