Răsfoiți Sursa

1、修改备注前端验证提示错误,且用的数字框,无法输入数字以外的字符

lqh 1 an în urmă
părinte
comite
8588d53ac9

BIN
src/assets/images/jddh.png


BIN
src/assets/images/jdsh.png


BIN
src/assets/images/jdyc.png


+ 100 - 32
src/views/WDLY/jd/abnormalDetails/index.vue

@@ -7,16 +7,20 @@
 
     >
       <template #wareId="{ item }">
-                     <span v-if="item.exDesc=='1'">
-                     <svg-icon icon-class="jdyl" style="width: 34px;"/>
-                </span>
-        <span v-if="item.exDesc=='2'">
-                     <svg-icon icon-class="jdks" style="width: 34px;"/>
-                </span>
-        <span
-            :style="item.productName=='' || item.productName == undefined || item.productName == 'undefined'?'color: red':''">
-                  {{item.wareId}}
-                </span>
+        <div style="display: flex; justify-content: center;line-height: 34px;height: 34px">
+             <div v-if="item.exDesc=='1'">
+                  <img src="@/assets/images/jdsh.png" alt=""  style="width: 34px"/>
+                </div>
+          <div v-if="item.exDesc=='2'">
+                    <img src="@/assets/images/jddh.png" alt="" style="width: 34px"/>
+                </div>
+          <div :style="item.productName=='' || item.productName == undefined || item.productName == 'undefined'?'color: red':''">
+                    {{item.wareId}}
+          </div>
+        </div>
+
+
+
       </template>
       <template #wareName="{ item }">
         <span
@@ -45,16 +49,20 @@
                 <el-option v-for="item in abnormalHandleTypeChileDict" :key="item.value" :label="item.label" :value="item.value"/>
               </el-select>
             </el-form-item>
+
+            <el-form-item label="差异商品数量" prop="absoluteValue"  >
+              <el-input v-model="formData.data.absoluteValue" disabled placeholder="请输入出库商品数量" oninput="value=value.replace(/[^\d.]/g,'')"/>
+            </el-form-item>
       </el-form>
       <el-form  class="stepsActive2" :model="formData.data" style="margin-top: 20px;height: auto" ref="submitform2" :rules="rules"  label-position="top" label-width="100px"  v-if="stepsActiveindex == 2">
         <el-form-item label="出库仓库" prop="reduceWarehouseId" v-if="reduceFlag" >
-          <el-select v-model="formData.data.reduceWarehouseId" :disabled="isViewFlag" style="width: 100%;" @change="(e)=>getProductList(e,2)">
+          <el-select v-model="formData.data.reduceWarehouseId" :disabled="isViewFlag" style="width: 100%;">
             <el-option v-for="item in warehouseList" :key="item.value" :label="item.label" :value="item.value"/>
           </el-select>
         </el-form-item>
         <el-form-item label="出库商品" prop="reduceProductId" v-if="reduceFlag" >
-          <el-select v-model="formData.data.reduceProductId" filterable :disabled="isViewFlag" style="width: 100%;">
-            <el-option v-for="item in reduceProductList"  :key="item.value" :label="item.label" :value="item.value"/>
+          <el-select v-model="formData.data.reduceProductId" filterable :disabled="reduceProductIdDisplay" style="width: 100%;">
+            <el-option v-for="item in productList"  :key="item.value" :label="item.label" :value="item.value"/>
           </el-select>
         </el-form-item>
         <el-form-item label="出库商品数量" prop="reduceQuantity" v-if="reduceFlag">
@@ -63,13 +71,13 @@
 
 
         <el-form-item label="入库仓库" prop="addWarehouseId" v-if="addFlag" >
-          <el-select v-model="formData.data.addWarehouseId" :disabled="isViewFlag" style="width: 100%;" @change="(e)=>getProductList(e,1)">
+          <el-select v-model="formData.data.addWarehouseId" :disabled="isViewFlag" style="width: 100%;" >
             <el-option v-for="item in warehouseList"  :key="item.value" :label="item.label" :value="item.value"/>
           </el-select>
         </el-form-item>
         <el-form-item label="入库商品" prop="addProductId" v-if="addFlag">
-          <el-select v-model="formData.data.addProductId" filterable  style="width: 100%;" :disabled="isViewFlag">
-            <el-option v-for="item in addProductList" :key="item.value" :label="item.label" :value="item.value"/>
+          <el-select v-model="formData.data.addProductId" filterable  style="width: 100%;" :disabled="addProductIdDisplay">
+            <el-option v-for="item in productList" :key="item.value" :label="item.label" :value="item.value"/>
           </el-select>
         </el-form-item>
         <el-form-item label="入库商品数量" prop="addQuantity" v-if="addFlag" >
@@ -118,6 +126,7 @@ import { ElMessage, ElMessageBox } from "element-plus";
 import byTable from "@/components/byTable/index";
 import byForm from "@/components/byForm/index";
 import { computed, nextTick, reactive, ref } from "vue";
+import {isNullOrUndefined} from "@tinymce/tinymce-vue/lib/es2015/main/ts/Utils";
 const { proxy } = getCurrentInstance();
 
 const router = useRouter();
@@ -137,8 +146,9 @@ const sourceList = ref({
 });
 
 const warehouseList = ref([])
-const reduceProductList = ref([])
-const addProductList = ref([])
+// const reduceProductList = ref([])
+// const addProductList = ref([])
+const productList = ref([])
 
 
 const abnormalHandleTypeDict = ref([])
@@ -465,28 +475,38 @@ const getDictlist = async () => {
       });
     }
   });
-};
-
-const getProductList = async (e,type) =>{
-  proxy.post("/stock/pageByWarehouse", { pageNum: 1, pageSize: 999 ,id:e}).then((res) => {
+  proxy.post("/productInfo/pageByWdly", { pageNum: 1, pageSize: 99999 }).then((res) => {
     if (res.rows && res.rows.length > 0) {
-      const product = res.rows.map((item) => {
+      productList.value = res.rows.map((item) => {
         return {
-          label: item.productName,
-          value: item.productId,
+          label: item.name,
+          value: item.id,
         };
       });
-      if (type == 1){
-       addProductList.value = product
-      } else {
-       reduceProductList.value = product
-
-      }
     }
   });
 
 
-}
+};
+
+// const getProductList = async (e,type) =>{
+//   proxy.post("/stock/pageByWarehouse", { pageNum: 1, pageSize: 999 ,id:e}).then((res) => {
+//     if (res.rows && res.rows.length > 0) {
+//       const product = res.rows.map((item) => {
+//         return {
+//           label: item.productName,
+//           value: item.productId,
+//         };
+//       });
+//       if (type == 1){
+//        addProductList.value = product
+//       } else {
+//        reduceProductList.value = product
+//
+//       }
+//     }
+//   });
+// }
 
 const getList = async (req) => {
   sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
@@ -538,6 +558,10 @@ const handleQuery = () => {
  * @param row
  */
 const openHandleAction = (row,isView) => {
+
+  console.log('123123',isView)
+
+  console.log("row",row)
     dialogVisible.value = true;
     stepsActiveindex.value = 1
 
@@ -565,11 +589,26 @@ const openHandleAction = (row,isView) => {
       formData.data.abnormalStatus = row.exHandle.substring(0,2)
       //处理方案
       treeChangeSelect(formData.data.abnormalStatus)
+
+      addProductIdDisplay.value = true
+      reduceProductIdDisplay.value = true
+
+
+      formData.data.absoluteValue = absoluteValue
+
+
+
+
     }else {
+
+
+
       formData.data = {
         id:row.id,
         reduceQuantity  : absoluteValue,
         addQuantity  : absoluteValue,
+        absoluteValue: absoluteValue,
+        productId : row.productId
       }
     }
 
@@ -586,7 +625,9 @@ const closeHandleAction = () => {
 
 const tipsFlag = ref(false)
 const reduceFlag = ref(false)
+const reduceProductIdDisplay = ref(false)
 const addFlag = ref(false)
+const addProductIdDisplay = ref(false)
 const remarkFlag = ref(false)
 const deliveryFlag = ref(false)
 
@@ -596,6 +637,8 @@ const intiFlag = () => {
   reduceFlag.value = false
   remarkFlag.value = false
   deliveryFlag.value = false
+  reduceProductIdDisplay.value = false
+  addProductIdDisplay.value = false
 }
 
 
@@ -605,15 +648,40 @@ const next = async () => {
 
   intiFlag()
 
+
+
+
   //判断 出库
   if (['101','402','403'].indexOf(type)>-1){
     reduceFlag.value = true
   }
+  //判断 出库
+  if (!isViewFlag.value){
+    formData.data.reduceProductId = null
+    if (['101','402','403'].indexOf(type)>-1){
+      formData.data.reduceProductId = formData.data.productId
+      reduceProductIdDisplay.value = true
+    }
+  }
+
+
+
   //判断 入库
   if (['301','401','402','403','501'].indexOf(type)>-1){
     addFlag.value = true
   }
 
+  //判断 入库
+  if (!isViewFlag.value) {
+
+    console.log(112312312)
+    formData.data.addProductId = null
+    if (['301', '401'].indexOf(type) > -1) {
+      formData.data.addProductId = formData.data.productId
+      addProductIdDisplay.value = true
+    }
+  }
+
   //判断 备注
   if (['201','203','403','503'].indexOf(type)>-1){
     remarkFlag.value = true

+ 38 - 41
src/views/WDLY/jd/order/index.vue

@@ -4,9 +4,19 @@
              :selectConfig="selectConfig" :table-events="{
                     select: select,
                 }" :action-list="[]" @get-list="getList" @moreSearch="() => (queryDialogVisible = true)"
-             @updateTableRowClassName="tableRowClassName"
     >
 
+      <template #orderId="{ item }">
+          <div style="display: flex; justify-content: flex-start;line-height: 34px;height: 34px" @click="getDtl(item);">
+            <div v-if="item.hasEx=='1'">
+              <img src="@/assets/images/jdyc.png" alt=""  style="width: 34px"/>
+            </div>
+            <div v-else style="width: 34px">
+
+            </div>
+            <span  style="color: blue">{{item.orderId}}</span>
+        </div>
+      </template>
       <template #remark="{ item }">
           <div style="width: 200px;overflow: hidden; text-overflow: ellipsis; white-space: nowrap;">
             <div v-if="item.hasEx == '1'" @click="showTipRemark(item)">
@@ -244,28 +254,29 @@
         </el-row>
         <el-row>
           <el-descriptions title="采购单明细" />
-          <span>
-            (
-              <svg-icon icon-class="jdyl" style="width: 34px;"/> 多货
-              <svg-icon icon-class="jdks" style="width: 34px;"/> 少货
-            )
-          </span>
+          <div style="line-height: 34px;height: 34px;display: flex">
+              <span>(</span>
+             <span><img src="@/assets/images/jdsh.png" alt=""  style="width: 34px"/></span><span>多货</span>
+              <span><img src="@/assets/images/jddh.png" alt="" style="width: 34px"/></span><span>少货</span>
+            <span>)</span>
+          </div>
+
           <el-table :data="formData.data.jdOrderDetailsList" stripe style="width: 100%">
             <!--            <el-table stripe style="width: 100%">-->
             <el-table-column prop="wareId" label="京东商品编号" width="175">
               <template #default="scope">
-                <span v-if="scope.row.exDesc=='1'">
-                     <svg-icon icon-class="jdyl" style="width: 34px;"/>
-                </span>
-                <span v-if="scope.row.exDesc=='2'">
-                     <svg-icon icon-class="jdks" style="width: 34px;"/>
-                </span>
+                <div style="display: flex; justify-content: center;line-height: 34px;height: 34px">
+                  <div v-if="scope.row.exDesc=='1'">
+                    <img src="@/assets/images/jdsh.png" alt=""  style="width: 34px"/>
+                  </div>
+                  <div v-if="scope.row.exDesc=='2'">
+                    <img src="@/assets/images/jddh.png" alt="" style="width: 34px"/>
+                  </div>
+                  <div :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">
+                    {{scope.row.wareId}}
+                  </div>
+                </div>
 
-
-                <span
-                      :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">
-                  {{scope.row.wareId}}
-                </span>
               </template>
             </el-table-column>
             <el-table-column prop="wareName" label="京东商品名称" min-width="200">
@@ -450,23 +461,9 @@ const config = computed(() => {
     {
       attrs: {
         label: "京东订单号",
+        slot: "orderId",
         align: "left",
-        width: 120,
-      },
-      renderHTML(row) {
-        return [
-          {
-            attrs: {
-              label: row.orderId,
-              type: "primary",
-              text: true,
-            },
-            el: "button",
-            click() {
-              getDtl(row);
-            },
-          },
-        ];
+        width: 200,
       },
     },
     {
@@ -738,13 +735,13 @@ const getList = async (req) => {
   });
 };
 
-const tableRowClassName = (row, callback) => {
-  if (row.row.hasEx == 1) {
-    callback('error-row') ;
-  } else  {
-    callback('') ;
-  }
-}
+// const tableRowClassName = (row, callback) => {
+//   if (row.row.hasEx == 1) {
+//     callback('error-row') ;
+//   } else  {
+//     callback('') ;
+//   }
+// }