ソースを参照

Merge branch 'purchaseDev' into 'dev'

Purchase dev

See merge request new-business/drp-web!360
黄梓星 1 年間 前
コミット
287123afbc

+ 1 - 0
package.json

@@ -81,6 +81,7 @@
     "eslint": "7.15.0",
     "eslint-plugin-vue": "7.2.0",
     "lint-staged": "10.5.3",
+    "regenerator-runtime": "^0.14.0",
     "runjs": "4.4.2",
     "sass": "1.32.13",
     "sass-loader": "10.1.1",

+ 2 - 2
src/views/material/changeApply/amendantRecord/column.js

@@ -1,7 +1,7 @@
 export const recordColumns = [
   { item: { key: "pageCondtion", title: "字段名称" }, attr: {} },
-  { item: { key: "afterChangeValue", title: "变更前" }, attr: {} },
+  { item: { key: "beforeChangeValue", title: "变更前" }, attr: {} },
   {
-    item: { key: "beforeChangeValue", title: "变更后" },attr: {},
+    item: { key: "afterChangeValue", title: "变更后" },attr: {},
   },
 ];

+ 172 - 139
src/views/material/requisition/add.vue

@@ -21,18 +21,18 @@
       <el-tab-pane label="基本信息" name="first">
         <div style="width: 100%;height: 580px;overflow-y: auto; overflow-x: hidden;">
           <el-form :model="basicForm" :rules="basicRules" ref="basic" label-width="170px">
-            <el-row :gutter="20">
-              <el-col :span="8">
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="单据编码" prop="billCode">
                   <el-input disabled v-model="basicForm.billCode"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="所属组织" prop="orgName">
                   <el-input disabled v-model="basicForm.orgName"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="四级分类" prop="classifyId">
                   <el-select ref="fourTag" v-model="basicForm.classifyId" placeholder="请选择" :disabled="disable"
                              clearable
@@ -41,9 +41,7 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="医药物料" prop="isMedicine">
                   <el-select v-model="basicForm.isMedicine" placeholder="医药物料" :disabled="disable"
                              @change="controlMedic">
@@ -51,41 +49,48 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+            </el-row>
+
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="DI" prop="diCode">
                   <el-input :disabled="disable" v-model.trim="basicForm.diCode"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="物料名称" prop="name">
                   <el-input :disabled="disable" v-model="basicForm.name"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
+                <el-form-item label="物料编码" prop="materialCode">
+                  <el-input :disabled="disable" v-model="basicForm.materialCode" disabled></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="6">
                 <el-form-item label="英文名称" prop="enName">
                   <el-input :disabled="disable" v-model="basicForm.enName"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+            </el-row>
+
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="简称" prop="commonName">
                   <el-input :disabled="disable" v-model="basicForm.commonName"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="规格" prop="specification">
                   <el-input :disabled="disable" v-model="basicForm.specification"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="型号" prop="model">
                   <el-input :disabled="disable" v-model="basicForm.model"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="计量单位" prop="unitId">
                   <el-select ref="units" v-model="basicForm.unitId" placeholder="请选择" clearable :disabled="disable"
                              @focus="chooseUnit">
@@ -93,7 +98,12 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+            </el-row>
+
+
+            <el-row :gutter="10">
+             
+              <el-col :span="6">
                 <el-form-item label="生产厂家/代理人" prop="manufacturerId">
                   <el-select ref="factoryOrman" v-model="basicForm.manufacturerId" placeholder="请选择" clearable
                              :disabled="disable" @focus="chooseFactory">
@@ -101,14 +111,12 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="注册人/上市许可持有人" prop="registrant">
                   <el-input :disabled="disable" v-model="basicForm.registrant"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="产地" prop="originPlace">
                   <el-select ref="places" v-model="basicForm.originPlace" placeholder="请选择" clearable
                              :disabled="disable"
@@ -117,20 +125,23 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="厂家物料名称" prop="manufacturersMaterialName">
                   <el-input :disabled="disable" v-model="basicForm.manufacturersMaterialName"></el-input>
                 </el-form-item>
               </el-col>
+
             </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+
+
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="厂家物料编码" prop="manufacturersMaterialCode">
                   <el-input type="number" min="0" :disabled="disable"
                             v-model="basicForm.manufacturersMaterialCode"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="ABC分类" prop="classifyAbc">
                   <el-select v-model="basicForm.classifyAbc" placeholder="请选择" clearable :disabled="disable">
                     <el-option v-for="item in dict.type.abc_type" :key="item.value" :label="item.label"
@@ -139,28 +150,30 @@
                   <!-- <el-input :disabled="disable" v-model="basicForm.classifyAbc"></el-input> -->
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="安全库存" prop="safeStock">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.safeStock"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="B2C物料" prop="isB2c">
                   <el-select v-model="basicForm.isB2c" placeholder="B2C物料" :disabled="disable">
                     <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"/>
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+            </el-row>
+
+            <el-row :gutter="10">
+              
+              <el-col :span="6">
                 <el-form-item label="成套件" prop="assembly">
                   <el-select v-model="basicForm.assembly" placeholder="成套件" :disabled="disable">
                     <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"/>
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="批号及库存状态管理" prop="isInventoryStatus">
                   <el-select v-model="basicForm.isInventoryStatus" placeholder="批号及库存状态管理" @change="stockControl"
                              :disabled="disable">
@@ -168,16 +181,14 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="序列号管理" prop="serialNoManager">
                   <el-select v-model="basicForm.serialNoManager" placeholder="序列号管理" :disabled="disable || isStock">
                     <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"/>
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="运输条件" prop="transportationCondition">
                   <el-select v-model="basicForm.transportationCondition" placeholder="请选择" clearable
                              :disabled="disable">
@@ -186,7 +197,11 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+
+            </el-row>
+
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="中包装单位" prop="mediumPackageUnitId">
                   <el-select ref="midpacks" v-model="basicForm.mediumPackageUnitId" placeholder="请选择" clearable
                              :disabled="disable" @focus="chooseMidpack">
@@ -195,9 +210,7 @@
                   <!-- <el-input :disabled="disable" v-model="basicForm.mediumPackageUnitId"></el-input> -->
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="效期管理" prop="expiryDateManagerment">
                   <el-select v-model="basicForm.expiryDateManagerment" placeholder="效期管理" @change="expCt"
                              :disabled="disable || isStock">
@@ -205,14 +218,14 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="近效期管理" prop="nearOnsetManagerment">
                   <el-select v-model="basicForm.nearOnsetManagerment" placeholder="近效期管理" :disabled="disable">
                     <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"/>
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="有效期" prop="usefulLife"
                               :rules="{ required: !isExp, message: '请填写有效期', trigger: 'blur' }">
                   <el-input type="number" min="0" :disabled="disable || isExp"
@@ -220,8 +233,10 @@
                 </el-form-item>
               </el-col>
             </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+
+
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="效期单位" prop="expiryUnitId"
                               :rules="{ required: !isExp, message: '请选择效期单位', trigger: 'change' }">
                   <el-select v-model="basicForm.expiryUnitId" placeholder="请选择" clearable :disabled="disable || isExp">
@@ -230,7 +245,7 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="有效期至单位" prop="usefulLifeUnitId"
                               :rules="{ required: !isExp, message: '请选择有效期至单位', trigger: 'change' }">
                   <el-select v-model="basicForm.usefulLifeUnitId" placeholder="请选择" clearable
@@ -240,16 +255,14 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="近效期预警天数" prop="recentWarningPeriod"
                               :rules="{ required: !isExp, message: '请填写近效期预警天数', trigger: 'blur' }">
                   <el-input type="number" min="0" :disabled="disable || isExp"
                             v-model="basicForm.recentWarningPeriod"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="存储条件" prop="storageCondition">
                   <el-select v-model="basicForm.storageCondition" placeholder="请选择" clearable :disabled="disable">
                     <el-option v-for="item in dict.type.sys_storage_condition" :key="item.value" :label="item.label"
@@ -257,7 +270,10 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+            </el-row>
+            <el-row :gutter="10">
+              
+              <el-col :span="6">
                 <el-form-item label="物料税类" prop="materialRate">
                   <el-select ref="taxs" v-model="basicForm.materialRate" placeholder="请选择" clearable :disabled="disable"
                              @focus="chooseTax">
@@ -265,31 +281,30 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="税类编码" prop="rateCode">
                   <el-input disabled v-model="basicForm.rateCode"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="交货周期" prop="deliveryPeriod">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.deliveryPeriod"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="最小起定量" prop="minOrderQty">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.minOrderQty"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+            </el-row>
+
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="最小包装量" prop="minPackQty">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.minPackQty"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="采购员" prop="puPersonnelId">
                   <el-select ref="staffs" v-model="basicForm.puPersonnelId" placeholder="请选择" clearable
                              :disabled="disable" @focus="chooseStaff">
@@ -297,52 +312,57 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="最小批量" prop="minBatchQty">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.minBatchQty"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="长度(MM)" prop="length">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.length"></el-input>
                 </el-form-item>
               </el-col>
             </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+
+
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="高度(MM)" prop="height">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.height"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="宽度(MM)" prop="width">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.width"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="箱包装数" prop="boxPackaingQty">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.boxPackaingQty"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="中包装数" prop="mediumPackageQty">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.mediumPackageQty"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+
+            </el-row>
+
+            <el-row :gutter="10">
+              
+              <el-col :span="6">
                 <el-form-item label="包装说明" prop="packExplain">
                   <el-input :disabled="disable" v-model="basicForm.packExplain"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="启用状态" prop="isEnable">
                   <el-input v-show="false" disabled v-model="basicForm.isEnable"></el-input>
                   <el-input disabled value="启用"></el-input>
                 </el-form-item>
               </el-col>
-              <!-- <el-col :span="8">
+              <!-- <el-col :span="6">
                 <el-form-item label="业务线" prop="businessLine">
                   <el-select ref="lines" v-model="basicForm.businessLine" placeholder="请选择" clearable
                              :disabled="disable"
@@ -351,62 +371,61 @@
                   </el-select>
                 </el-form-item>
               </el-col> -->
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="物料申请人" prop="proposerId">
                   <el-input disabled v-model="basicForm.createName || this.$store.state.user.nickName"></el-input>
                   <el-input v-show="false" v-model="basicForm.proposerId"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="条形码" prop="barCode">
                   <el-input :disabled="disable" v-model="basicForm.barCode"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+            </el-row>
+
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="使用期限/次数" prop="serviceLife">
                   <el-input :disabled="disable" v-model="basicForm.serviceLife"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="医保代码" prop="healthCode">
                   <el-input :disabled="disable" v-model="basicForm.healthCode"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="原系统物料编码" prop="oriMaterialCode">
                   <el-input :disabled="disable" v-model="basicForm.oriMaterialCode"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="生产许可证" prop="productionPermit"
                               :rules="{ required: !isControl, message: '请填写生产许可证', trigger: 'change' }">
                   <el-input :disabled="disable" v-model="basicForm.productionPermit"></el-input>
                 </el-form-item>
               </el-col>
             </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+
+
+            <el-row :gutter="10">
+              <el-col :span="6">
                 <el-form-item label="一级分类" prop="oneClass">
                   <el-input disabled v-model="basicForm.oneClass"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="二级分类" prop="twoClass">
                   <el-input disabled v-model="basicForm.twoClass"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="三级分类" prop="threeClass">
                   <el-input disabled v-model="basicForm.threeClass"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="默认采购组织" prop="purchasingOrganization">
                   <el-select ref="organizations" v-model="basicForm.purchasingOrganization" placeholder="请选择" clearable
                              :disabled="disable" @clear="controlOrg" @focus="chooseOrganizations">
@@ -415,7 +434,12 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+
+            </el-row>
+
+            <el-row :gutter="10">
+            
+              <el-col :span="6">
                 <el-form-item label="内包装单位" prop="innerPackingUnit">
                   <!-- <el-input :disabled="disable" v-model="basicForm.innerPackingUnit"></el-input> -->
                   <el-select ref="innerPackingUnits" v-model="basicForm.innerPackingUnit" placeholder="请选择" clearable
@@ -425,36 +449,37 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="内包装数" prop="innerPackingQty">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.innerPackingQty"></el-input>
                 </el-form-item>
               </el-col>
-              <!-- <el-col :span="8">
-                <el-form-item label="业务部门" prop="businessDepartment">
-                  <el-select ref="departs" v-model="basicForm.businessDepartment" placeholder="请选择" clearable
-                             :disabled="disable || orgControl" @focus="chooseDepart">
-                    <el-option v-for="item in departOptions" :key="item.id" :label="item.label" :value="item.id"/>
-                  </el-select>
-                </el-form-item>
-              </el-col> -->
-              
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="进口产品生产厂家" prop="importsManufacturer">
                   <el-input :disabled="disable" v-model="basicForm.importsManufacturer"></el-input>
                 </el-form-item>
               </el-col>
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="服务类" prop="serviceClass">
                   <el-select v-model="basicForm.serviceClass" placeholder="" disabled>
                     <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"/>
                   </el-select>
                 </el-form-item>
               </el-col>
+              <!-- <el-col :span="6">
+                <el-form-item label="业务部门" prop="businessDepartment">
+                  <el-select ref="departs" v-model="basicForm.businessDepartment" placeholder="请选择" clearable
+                             :disabled="disable || orgControl" @focus="chooseDepart">
+                    <el-option v-for="item in departOptions" :key="item.id" :label="item.label" :value="item.id"/>
+                  </el-select>
+                </el-form-item>
+              </el-col> -->
+              
+            </el-row>
+            <el-row :gutter="10">
+              
 
-              <el-col :span="8">
+              <el-col :span="6">
                 <el-form-item label="备注" prop="remark">
                   <el-input :disabled="disable" v-model="basicForm.remark"></el-input>
                 </el-form-item>
@@ -468,8 +493,8 @@
 
       <el-tab-pane label="医药属性" name="second">
         <el-form :model="basicForm2" ref="basic2" label-width="160px">
-          <el-row :gutter="20">
-            <el-col :span="8">
+          <el-row :gutter="10">
+            <el-col :span="6">
               <el-form-item label="药品" prop="isDrug"
                             :rules="{ required: !isControl, message: '请选择是否药品', trigger: 'change' }">
                 <el-select v-model="basicForm2.isDrug" placeholder="请选择" clearable :disabled="disable || isControl">
@@ -478,12 +503,12 @@
                 </el-select>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="注册证号/备案凭证编号" prop="registrationNo">
                 <el-input :disabled="disable || isControl" v-model="basicForm2.registrationNo"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="医疗器械" prop="medicalInstruments">
                 <el-select v-model="basicForm2.medicalInstruments" placeholder="请选择" clearable
                            :disabled="disable || isControl">
@@ -492,19 +517,22 @@
                 </el-select>
               </el-form-item>
             </el-col>
-          </el-row>
-          <el-row :gutter="20">
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="通用名称" prop="commonName">
                 <el-input :disabled="disable || isControl" v-model="basicForm2.commonName"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+          </el-row>
+
+
+          <el-row :gutter="10">
+            
+            <el-col :span="6">
               <el-form-item label="批准文号" prop="ratifyBatchNo">
                 <el-input :disabled="disable || isControl" v-model="basicForm2.ratifyBatchNo"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="剂型" prop="dosageFrom"
                             :rules="{ required: !isControl, message: '请选择剂型', trigger: 'blur' }">
                 <el-select ref="doses" v-model="basicForm2.dosageFrom" placeholder="请选择" clearable
@@ -513,14 +541,12 @@
                 </el-select>
               </el-form-item>
             </el-col>
-          </el-row>
-          <el-row :gutter="20">
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="旧注册证号" prop="oriRegistrationNo">
                 <el-input :disabled="disable || isControl" v-model="basicForm2.oriRegistrationNo"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="养护类型" prop="curingType">
                 <el-select v-model="basicForm2.curingType" placeholder="请选择" clearable :disabled="disable || isControl">
                   <el-option v-for="dict in dict.type.curing_type" :key="dict.value" :label="dict.label"
@@ -528,6 +554,7 @@
                 </el-select>
               </el-form-item>
             </el-col>
+
           </el-row>
         </el-form>
 
@@ -571,60 +598,63 @@
 
       <el-tab-pane label="单据信息" name="fourth">
         <el-form :model="basicForm" ref="info" label-width="160px">
-          <el-row :gutter="20">
-            <el-col :span="8">
+          <el-row :gutter="10">
+            <el-col :span="6">
               <el-form-item label="申请人" prop="createName">
                 <el-input disabled v-model="basicForm.createName"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="申请时间" prop="createTime">
                 <el-input disabled v-model="basicForm.createTime"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="创建人" prop="createName">
                 <el-input disabled v-model="basicForm.createName"></el-input>
               </el-form-item>
             </el-col>
-          </el-row>
-          <el-row :gutter="20">
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="创建时间" prop="createTime">
                 <el-input disabled v-model="basicForm.createTime"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+            
+          </el-row>
+          <el-row :gutter="10">
+            
+            <el-col :span="6">
               <el-form-item label="最后修改人" prop="updateName">
                 <el-input disabled v-model="basicForm.updateName"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="最后修改时间" prop="updateTime">
                 <el-input disabled v-model="basicForm.updateTime"></el-input>
               </el-form-item>
             </el-col>
+            <el-col :span="6">
+              <el-form-item label="单据状态" prop="status">
+                <el-select v-model="basicForm.status" size="small" disabled>
+                  <el-option v-for="item in statusOptions" :key="item.value" :label="item.label" :value="item.value">
+                  </el-option>
+                </el-select>
+                <!-- <el-input disabled v-model="basicForm.status"></el-input> -->
+              </el-form-item>
+            </el-col>
           </el-row>
-          <el-row :gutter="20">
-            <!-- <el-col :span="8">
+          <el-row :gutter="10">
+            <!-- <el-col :span="6">
               <el-form-item label="最后审核人" prop="reviewedByName">
                 <el-input disabled v-model="basicForm.reviewedByName"></el-input>
               </el-form-item>
             </el-col>
-            <el-col :span="8">
+            <el-col :span="6">
               <el-form-item label="最后审核时间" prop="approvalTime">
                 <el-input disabled v-model="basicForm.approvalTime"></el-input>
               </el-form-item>
             </el-col> -->
-            <el-col :span="8">
-              <el-form-item label="单据状态" prop="status">
-                <el-select v-model="basicForm.status" size="small" disabled>
-                  <el-option v-for="item in statusOptions" :key="item.value" :label="item.label" :value="item.value">
-                  </el-option>
-                </el-select>
-                <!-- <el-input disabled v-model="basicForm.status"></el-input> -->
-              </el-form-item>
-            </el-col>
+           
           </el-row>
         </el-form>
       </el-tab-pane>
@@ -1317,6 +1347,7 @@
           sparams.sysMaterialMedcineApply = this.basicForm2
           sparams.sysMaterialMedcineItemApply = this.sysMaterialMedcineItemApply
           console.log('提交参数', sparams)
+
           const form1 = new Promise((resolve, reject) => {
             this.$refs['basic'].validate(valid => {
               if (valid) resolve()
@@ -1327,9 +1358,11 @@
               if (valid) resolve()
             })
           })
+
           Promise.all([form1, form2]).then(() => {
             if (this.basicForm.isMedicine == '0' && this.sysMaterialMedcineItemApply.length == 0) {
               this.$modal.notifyWarning("医药物料需要维护物料类别!");
+
             } else {
               this.$modal.loading("保存中...");
               editReq(sparams).then(res => {

+ 36 - 22
src/views/material/requisition/columns.js

@@ -1,38 +1,52 @@
 
 
  export const TableColumns = [
-    { item: { key: "orgName", title: "所属组织" ,width:150,}, attr: {} },
-    { item: { key: "billCode", title: "单据编码" }, attr: {} },
-   
-    { item: { key: "status", title: "单据状态",width:120, }, 
+  { item: { key: "createName", title: "创建人" ,width:150, }, attr: {} },
+  { item: { key: "createTime", title: "创建时间" ,width:150,}, attr: {} },
+  { item: { key: "billCode", title: "单据编码" }, attr: {} },
+  
+  {
+    item: { key: "createName", title: "申请人",width:150, },
+    attr: { },
+  },
+  { item: { key: "status", title: "单据状态",width:120, }, 
       attr: {
         
         is: "el-dict-tag",
         dictName: "documents_status", // 字典名
       } 
     },
-    {
-      item: { key: "createName", title: "申请人",width:150, },
-      attr: { },
-    },
-    { item: { key: "createTime", title: "申请时间",width:150, }, attr: {} },
+
+    { item: { key: "oneClassify", title: "物料一级分类" ,width:150,}, attr: {} },
+    { item: { key: "materialType", title: "物料基本分类" ,width:150,}, attr: {} },
     { 
-      item: { key: "name", title: "物料名称" }, 
-      attr: {} 
-    },
-    // { 
-    //   item: { key: "materialCode", title: "物料编码" }, 
-    //   attr: {
+      item: { key: "materialCode", title: "物料编码" }, 
+      attr: {
    
-    //   } 
-    // },
-    { item: { key: "createName", title: "创建人" ,width:150, }, attr: {} },
-    { item: { key: "createTime", title: "创建时间" ,width:150,}, attr: {} },
-    {
-      item: { key: "updateName", title: "最后修改人" ,width:150, },
-      attr: {  },
+      } 
     },
+    { item: { key: "name", title: "物料名称" }, attr: {} },
+     { item: { key: "specification", title: "规格" ,width:150,}, attr: {} },
+    { item: { key: "manufacturerName", title: "生产厂商" ,width:150,}, attr: {} },
+     { item: { key: "registrationNo", title: "注册证号" ,width:150,}, attr: {} },
+    { item: { key: "registrant", title: "注册人" ,width:150,}, attr: {} },
     { item: { key: "updateTime", title: "最后修改时间" ,width:150,}, attr: {} },
+    { item: { key: "reviewedName", title: "最后审批人" ,width:150,}, attr: {} },
+     { item: { key: "auditTime", title: "最后审批时间" ,width:150,}, attr: {} },
+    // { item: { key: "orgName", title: "审批语" ,width:150,}, attr: {} },
+
+
+
+
+    // { item: { key: "orgName", title: "所属组织" ,width:150,}, attr: {} },
+   
+    // { item: { key: "createTime", title: "申请时间",width:150, }, attr: {} },
+ 
+    // {
+    //   item: { key: "updateName", title: "最后修改人" ,width:150, },
+    //   attr: {  },
+    // },
+    
    
   ].map(({ item, attr }) => ({
     attr,

+ 41 - 32
src/views/material/requisition/index.vue

@@ -195,46 +195,55 @@
       this.getList(this.queryParams)
     },
     methods: {
+      // 操作提示弹窗
+    handleConfirmTips(success){
+
+      this.$confirm('是否继续此操作?', '提示', {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+          type: 'warning'
+        }).then(() => {
+
+          success();
+
+        }).catch(() => {        
+        });
+    },
       // 批量提交
       async handleBatchSubmit(){
-          let filterList = this.checkedList.filter(item => !(item.status == '0' || item.status == '3') )
+          let filterList = this.checkedList.filter(item => !(item.status === '0' || item.status === '3') )
           
+          console.log(filterList,'filterList');
+
           if(!filterList.length &&  this.checkedList.length){  
 
-            try {
+            this.handleConfirmTips(async() =>{
 
-              this.failLoad = true;
-              
-              let ids = this.checkedList.map( item => Number(item.id));
-              
-              let {code,msg} = await betchSubmit(ids);
+              try {
 
-              if(code == 200){
-                this.reset();
-              }
+                this.failLoad = true;
 
-              this.$notify({
-                title: code == 200 ? msg : 'error',
-                type: code == 200 ? 'success' :'error',
-                message: code == 200 ?'' :msg,
-              });
+                let ids = this.checkedList.map( item => Number(item.id));
 
-              // if(code == 200){
-              //   this.$notify.success({
-              //     title: msg,
-              //   });
-              // }else{
-              //   this.$notify.error({
-              //     title: '错误',
-              //     message: msg,
-              //   });
-              // }
-
-            } catch (error) {
-              
-            }finally{
-              this.failLoad = false;
-            }
+                let {code,msg} = await betchSubmit(ids);
+
+                if(code == 200){
+                  this.reset();
+                }
+
+                this.$notify({
+                  title: code == 200 ? msg : 'error',
+                  type: code == 200 ? 'success' :'error',
+                  message: code == 200 ?'' :msg,
+                });
+
+                } catch (error) {
+
+                }finally{
+                this.failLoad = false;
+                }
+
+            })
 
           }else{
             this.$notify.warning({
@@ -250,7 +259,7 @@
 
         try {
 
-          let {code,msg,oaUrl} = await toOA(name,row.id);
+          let {code,msg,oaUrl} = await toOA(name,row.oaId);
 
           if(code == 200){
             window.open(oaUrl)

+ 110 - 92
src/views/purchase/PurchaseDemandList/add_bak (2).vue

@@ -179,44 +179,46 @@
           @selection-change="handleSelectionChange"
           :cell-class-name="cellClassName"
           ref="table"
+          :rules="tableRules"
           show-header-overflow="tooltip"
           show-overflow="tooltip"
           keep-source
           beautifyTable
           :checkbox-config="{highlight: true, trigger: 'row'}"
-          :edit-config="{trigger: 'click', mode: 'cell'}">
+          :edit-config="{trigger: 'click', mode: 'row'}"
+          :validConfig="{autoPos: true}">
         >
-          <ux-table-column type="checkbox" resizable fixed="left"/>
-          <ux-table-column title="序号" type="index" align="center" width="50px" fixed="left"/>
-          <ux-table-column title="行号" align="center" field="rowNo" fixed="left">
+          <ux-table-column resizable type="checkbox" fixed="left"/>
+          <ux-table-column resizable title="序号" type="index" align="center" width="50px"/>
+          <ux-table-column resizable title="行号" align="center" field="rowNo" width="50px">
             <template v-slot:edit="scope">
               {{ scope.row.rowNo = scope.rowIndex + 1 + "0" }}
             </template>
           </ux-table-column>
-          <ux-table-column title="默认采购组织" align="center" field="purOrgName" width="200px"/>
-          <ux-table-column title="需求客户" align="center" field="demandCustomerName" width="180px"/>
-          <ux-table-column title="行状态" align="center" field="status" :formatter="hangStatus" width="100px"/>
-          <ux-table-column title="物料编码" align="center" field="materialCode" width="220px" :render-header="addRedStar" fixed="left" edit-render>
+          <ux-table-column resizable title="默认采购组织" align="center" field="purOrgName" width="100px"/>
+          <ux-table-column resizable title="需求客户" align="center" field="demandCustomerName" width="100px"/>
+          <ux-table-column resizable title="行状态" align="center" field="status" :formatter="hangStatus" width="100px"/>
+          <ux-table-column resizable title="物料编码" align="center" field="materialCode" width="100px" :render-header="addRedStar" :edit-render="{autofocus: '.el-input__inner'}">
             <template v-slot:edit="scope">
                 <el-input clearable :disabled="sonDisable" size="mini" v-model="scope.row.materialCode" @paste.native="pasteMe($event, scope, scope.rowIndex)">
                   <el-button size="mini" :disabled="sonDisable" slot="append" icon="el-icon-more" @click="chooseMaterial(scope.rowIndex)"></el-button>
                 </el-input>
             </template>
           </ux-table-column>
-          <ux-table-column title="物料名称" align="center"  field="materialName" width="200px" fixed="left"/>
-          <ux-table-column title="规格" align="center"  field="specification" />
-          <ux-table-column title="型号" align="center"  field="model"/>
-          <ux-table-column title="单位" align="center"  field="unitName"/>
-          <ux-table-column title="生产厂家/代理人" align="center"  field="manufacturerName" width="230px"/>
-          <ux-table-column title="最小包装" align="center"  field="minPackage" width="100px"/>
-          <ux-table-column title="月均销量" align="center"  field="averageQtyMonth" width="100px"/>
-          <ux-table-column title="需求可用周期" align="center"  field="demandPeriod" width="120px"/>
-          <ux-table-column title="实际(业务)需求量" align="center"  field="qty" width="150px" :render-header="addRedStar" edit-render>
+          <ux-table-column resizable title="物料名称" align="center"  field="materialName" width="200px"/>
+          <ux-table-column resizable title="规格" align="center"  field="specification" />
+          <ux-table-column resizable title="型号" align="center"  field="model"/>
+          <ux-table-column resizable title="单位" align="center"  field="unitName"/>
+          <ux-table-column resizable title="生产厂家/代理人" align="center"  field="manufacturerName" width="230px"/>
+          <ux-table-column resizable title="最小包装" align="center"  field="minPackage" width="100px"/>
+          <ux-table-column resizable title="月均销量" align="center"  field="averageQtyMonth" width="100px"/>
+          <ux-table-column resizable title="需求可用周期" align="center"  field="demandPeriod" width="120px"/>
+          <ux-table-column resizable title="实际(业务)需求量" align="center"  field="qty" width="150px" :render-header="addRedStar" edit-render>
             <template v-slot:edit="scope">
                 <el-input type="number" min="0" clearable :disabled="sonDisable" size="mini" v-model="scope.row.qty" @input="getYLSL(scope)" @paste.native="pasteMe($event, scope, scope.rowIndex)"/>
             </template>
           </ux-table-column>
-          <ux-table-column title="紧急标识" align="center" field="isUrgency" width="100px" edit-render>
+          <ux-table-column resizable title="紧急标识" align="center" field="isUrgency" width="100px" edit-render>
             <template v-slot:edit="scope">
                 <el-switch
                   v-model="scope.row.isUrgency"
@@ -228,35 +230,35 @@
                 </el-switch>
             </template>
           </ux-table-column>
-          <ux-table-column title="收货仓库" align="center"  field="deliveryWarehouseName" width="200px" edit-render>
+          <ux-table-column resizable title="收货仓库" align="center"  field="deliveryWarehouseName" width="200px" edit-render>
             <template v-slot:edit="scope">
                 <el-input clearable :disabled="sonDisable" size="mini" v-model="scope.row.deliveryWarehouseName" @clear="clearHang(scope.rowIndex, '选择收货仓库')">
                   <el-button size="mini" :disabled="sonDisable" slot="append" icon="el-icon-more" @click="chooseCangKu(scope.rowIndex, 'WAREHOUSE_PARAM', true, '选择收货仓库', scope.row.puOrg)"></el-button>
                 </el-input>
             </template>
           </ux-table-column>
-          <ux-table-column title="收货货位" align="center"  field="deliveryAllocationName" width="200px" edit-render>
+          <ux-table-column resizable title="收货货位" align="center"  field="deliveryAllocationName" width="200px" edit-render>
             <template v-slot:edit="scope">
                 <el-input clearable :disabled="sonDisable" size="mini" v-model="scope.row.deliveryAllocationName" @clear="clearHang(scope.rowIndex, '选择收货货位')">
                   <el-button size="mini" :disabled="sonDisable" slot="append" icon="el-icon-more" @click="choosehuoWei(scope.rowIndex, 'ALLOCATION_PARAM', true, '选择收货货位', scope.row.deliveryWarehouse)"></el-button>
                 </el-input>
             </template>
           </ux-table-column>
-          <ux-table-column title="业务备注" align="center"  field="remark" width="150px" edit-render>
+          <ux-table-column resizable title="业务备注" align="center"  field="remark" width="150px" edit-render>
             <template v-slot:edit="scope">
                 <el-input clearable :disabled="sonDisable" size="mini" v-model="scope.row.remark"/>
             </template>
           </ux-table-column>
-          <ux-table-column title="物料一级分类" align="center" field="materialClassifyOneName" width="150px"/>
-          <ux-table-column title="物料二级分类" align="center" field="materialClassifyTwoName" width="150px"/>
-          <ux-table-column title="物料三级分类" align="center" field="materialClassifyThreeName" width="150px"/>
-          <ux-table-column title="物料四级分类" align="center" field="materialClassifyFourName" width="150px"/>
-          <ux-table-column title="最小批量" align="center"  field="minBatch" width="100px"/>
-          <ux-table-column title="最小订货量" align="center"  field="minOrderQty" width="120px"/>
-          <ux-table-column title="采购员" align="center" field="buyerName" width="100px"/>
-          <!-- <ux-table-column title="采购员" align="center"  field="buyer"/> -->
-          <ux-table-column title="采购周期" align="center"  field="puPeriod" width="120px"/>
-          <ux-table-column title="交货日期" align="center"  field="deliveryDate" width="230px" edit-render>
+          <ux-table-column resizable title="物料一级分类" align="center" field="materialClassifyOneName" width="150px"/>
+          <ux-table-column resizable title="物料二级分类" align="center" field="materialClassifyTwoName" width="150px"/>
+          <ux-table-column resizable title="物料三级分类" align="center" field="materialClassifyThreeName" width="150px"/>
+          <ux-table-column resizable title="物料四级分类" align="center" field="materialClassifyFourName" width="150px"/>
+          <ux-table-column resizable title="最小批量" align="center"  field="minBatch" width="100px"/>
+          <ux-table-column resizable title="最小订货量" align="center"  field="minOrderQty" width="120px"/>
+          <ux-table-column resizable title="采购员" align="center" field="buyerName" width="100px"/>
+          <!-- <ux-table-column resizable title="采购员" align="center"  field="buyer"/> -->
+          <ux-table-column resizable title="采购周期" align="center"  field="puPeriod" width="120px"/>
+          <ux-table-column resizable title="交货日期" align="center"  field="deliveryDate" width="230px" edit-render>
             <template v-slot:edit="scope">
                 <el-date-picker
                   v-model="scope.row.deliveryDate"
@@ -270,11 +272,11 @@
                 </el-date-picker>
             </template>
           </ux-table-column>
-          <ux-table-column title="有效期" align="center"  field="expiry" width="100px"/>
-          <ux-table-column title="有效期单位" align="center"  field="expiryUnit" width="100px"/>
-          <ux-table-column title="安全库存" align="center"  field="safeStock" width="100px"/>
-          <ux-table-column title="注册人" align="center"  field="registrant" width="100px"/>
-          <ux-table-column title="预留比例" align="center" field="reservedProportion" width="120px" edit-render>
+          <ux-table-column resizable title="有效期" align="center"  field="expiry" width="100px"/>
+          <ux-table-column resizable title="有效期单位" align="center"  field="expiryUnit" width="100px"/>
+          <ux-table-column resizable title="安全库存" align="center"  field="safeStock" width="100px"/>
+          <ux-table-column resizable title="注册人" align="center"  field="registrant" width="100px"/>
+          <ux-table-column resizable title="预留比例" align="center" field="reservedProportion" width="120px" edit-render>
             <template v-slot:edit="scope">
                 <el-select clearable :disabled="sonDisable" size="mini" v-model="scope.row.reservedProportion" @change="getYLSL(scope)" @clear="cleanYLSL(scope)">
                   <el-option v-for=" dict in dict.type.sys_reserve_ratio" :key="dict.value" :label="dict.label" :value="dict.value">
@@ -282,17 +284,17 @@
                 </el-select>
             </template>
           </ux-table-column>
-          <ux-table-column title="预留周期" align="center" field="reservedPeriod" width="120px" edit-render>
+          <ux-table-column resizable title="预留周期" align="center" field="reservedPeriod" width="120px" edit-render>
             <template v-slot:edit="scope">
                 <el-input type="number" min="0" clearable :disabled="sonDisable" size="mini" v-model="scope.row.reservedPeriod"></el-input>
             </template>
           </ux-table-column>
-          <ux-table-column title="预留数量" align="center"  field="reservedQty" width="120px"/>
-          <ux-table-column title="集团预测分类" align="center"  field="forecastClassify" width="120px"/>
-          <ux-table-column title="近一月需求" align="center"  field="onemonthAvgVolume" width="100px"/>
-          <ux-table-column title="近三月需求" align="center"  field="threemonthAvgVolume" width="100px"/>
-          <ux-table-column title="采购在途" align="center"  field="puFreight" width="100px"/>
-          <ux-table-column title="补单标识" align="center"  field="isReplenishment" width="100px" edit-render>
+          <ux-table-column resizable title="预留数量" align="center"  field="reservedQty" width="120px"/>
+          <ux-table-column resizable title="集团预测分类" align="center"  field="forecastClassify" width="120px"/>
+          <ux-table-column resizable title="近一月需求" align="center"  field="onemonthAvgVolume" width="100px"/>
+          <ux-table-column resizable title="近三月需求" align="center"  field="threemonthAvgVolume" width="100px"/>
+          <ux-table-column resizable title="采购在途" align="center"  field="puFreight" width="100px"/>
+          <ux-table-column resizable title="补单标识" align="center"  field="isReplenishment" width="100px" edit-render>
             <template v-slot:edit="scope">
                 <el-switch
                   v-model="scope.row.isReplenishment"
@@ -304,18 +306,18 @@
                 </el-switch>
             </template>
           </ux-table-column>
-          <ux-table-column title="补单供应商" align="center"  field="additionalSupplierName" width="200px" :render-header="anotherRedStar" edit-render>
+          <ux-table-column resizable title="补单供应商" align="center"  field="additionalSupplierName" width="200px" :render-header="anotherRedStar" edit-render>
             <template v-slot:edit="scope">
                 <el-input clearable :disabled="sonDisable || BDZT" size="mini" v-model="scope.row.additionalSupplierName" @clear="clearHang(scope.rowIndex, '选择补单供应商')" @paste.native="pasteMe($event, scope, scope.rowIndex)">
                   <el-button size="mini" :disabled="sonDisable || BDZT" slot="append" icon="el-icon-more" @click="chooseDept(scope.rowIndex, 'SUPPLIER_PARAM', true, '选择补单供应商')"></el-button>
                 </el-input>
             </template>
           </ux-table-column>
-          <ux-table-column title="末级供应库存组织" align="center" field="lastStockOrgName" width="180px"></ux-table-column>
-          <ux-table-column title="末级供应仓库" align="center"  field="lastWarehouseName" width="150px"/>
-          <ux-table-column title="末级供应货位" align="center"  field="lastAllocationName" width="150px"/>
-          <ux-table-column title="中心仓可用量" align="center"  field="centralWarehouseQty" width="120px"/>
-          <ux-table-column title="调拨状态" align="center"  field="statusAllot" width="100px" edit-render>
+          <ux-table-column resizable title="末级供应库存组织" align="center" field="lastStockOrgName" width="180px"></ux-table-column>
+          <ux-table-column resizable title="末级供应仓库" align="center"  field="lastWarehouseName" width="150px"/>
+          <ux-table-column resizable title="末级供应货位" align="center"  field="lastAllocationName" width="150px"/>
+          <ux-table-column resizable title="中心仓可用量" align="center"  field="centralWarehouseQty" width="120px"/>
+          <ux-table-column resizable title="调拨状态" align="center"  field="statusAllot" width="100px" edit-render>
             <template v-slot:edit="scope">
                 <el-switch
                   v-model="scope.row.statusAllot"
@@ -327,25 +329,25 @@
                 </el-switch>
             </template>
           </ux-table-column>
-          <ux-table-column title="调拨单号" align="center"  field="allotCode"></ux-table-column>
-          <ux-table-column title="调拨占有量" align="center"  field="allotQty" width="100px"/>
-          <ux-table-column title="最终净需求量" align="center"  field="resDemandQty" width="120px"/>
-          <ux-table-column title="最终采购执行数量" align="center"  field="executeQty" width="150px">
+          <ux-table-column resizable title="调拨单号" align="center"  field="allotCode"></ux-table-column>
+          <ux-table-column resizable title="调拨占有量" align="center"  field="allotQty" width="100px"/>
+          <ux-table-column resizable title="最终净需求量" align="center"  field="resDemandQty" width="120px"/>
+          <ux-table-column resizable title="最终采购执行数量" align="center"  field="executeQty" width="150px">
             <template v-slot:edit="scope">
               {{ scope.row.executeQty ? scope.row.executeQty : 0 }}
             </template>
           </ux-table-column>
-          <ux-table-column title="收货地址" align="center"  field="deliveryAddressName" width="200px" edit-render>
+          <ux-table-column resizable title="收货地址" align="center"  field="deliveryAddressName" width="200px" edit-render>
             <template v-slot:edit="scope">
                 <el-input clearable :disabled="sonDisable" size="mini" v-model="scope.row.deliveryAddressName" @clear="clearHang(scope.rowIndex, '选择收货地址')" @paste.native="pasteMe($event, scope, scope.rowIndex)">
                   <el-button size="mini" :disabled="sonDisable" slot="append" icon="el-icon-more" @click="chooseDept(scope.rowIndex, 'ADDRESS_PARAM', true, '选择收货地址')"></el-button>
                 </el-input>
             </template>
           </ux-table-column>
-          <ux-table-column title="联系人" align="center"  field="contacts"/>
-          <ux-table-column title="联系人电话" align="center"  field="contactsPhone" width="150px"/>
-          <ux-table-column title="详细地址" align="center"  field="address" width="200px"/>
-          <ux-table-column title="价格类型" align="center"  field="priceType" width="120px" edit-render>
+          <ux-table-column resizable title="联系人" align="center"  field="contacts"/>
+          <ux-table-column resizable title="联系人电话" align="center"  field="contactsPhone" width="150px"/>
+          <ux-table-column resizable title="详细地址" align="center"  field="address" width="200px"/>
+          <ux-table-column resizable title="价格类型" align="center"  field="priceType" width="120px" edit-render>
             <template v-slot:edit="scope">
                 <el-select clearable :disabled="sonDisable" size="mini" v-model="scope.row.priceType">
                   <el-option v-for=" dict in dict.type.sys_price_type" :key="dict.value" :label="dict.label" :value="dict.value">
@@ -353,7 +355,7 @@
                 </el-select>
             </template>
           </ux-table-column>
-          <ux-table-column title="是否客户指定" align="center"  field="isCustomerSpecified" width="120px" edit-render>
+          <ux-table-column resizable title="是否客户指定" align="center"  field="isCustomerSpecified" width="120px" edit-render>
             <template v-slot:edit="scope">
                 <el-switch
                   v-model="scope.row.isCustomerSpecified"
@@ -365,7 +367,7 @@
                 </el-switch>
             </template>
           </ux-table-column>
-          <!-- <ux-table-column title="批号锁定标识" align="center" field="isBatchLock" width="100px">
+          <!-- <ux-table-column resizable title="批号锁定标识" align="center" field="isBatchLock" width="100px">
             <template v-slot:edit="scope">
               <el-form-item class="hang">
                   <el-switch
@@ -379,8 +381,8 @@
               </el-form-item>
             </template>
           </ux-table-column> -->
-          <ux-table-column title="采购备注" align="center"  field="updateCause" width="150px"/>
-          <ux-table-column title="可用量" align="center"  field="availableQty"/>
+          <ux-table-column resizable title="采购备注" align="center"  field="updateCause" width="150px"/>
+          <ux-table-column resizable title="可用量" align="center"  field="availableQty"/>
 
           <ux-table-column
             fixed="right"
@@ -501,6 +503,7 @@ import {getRefer} from '@/api/purchase/basic.js'
 // 明细行选择物料参照
 import popDialog from '@/components/PopDialog/index.vue'
 import ElTableInfiniteScroll from "el-table-infinite-scroll";
+import 'regenerator-runtime/runtime'
 export default {
   directives: {
     "el-table-infinite-scroll": ElTableInfiniteScroll,
@@ -714,6 +717,11 @@ export default {
       loadDisabled: true,
       page: 0,
       total: 5,
+      // 表格校验规则
+      tableRules: {
+        materialCode : [{required: true, message: '物料编码必填'}],
+        qty: [{required: true, message: '实际业务需求量必填'}],
+      },
     }
   },
   created() {
@@ -948,37 +956,44 @@ export default {
       if(this.basicForm.puDemandItemList.length !== 0) {
         this.$refs['basic'].validate((valid, obj) => {
           if(valid) {
-            this.$modal.loading("保存中...");
-            if(this.sonPageStu == 'add') {
-              this.handleData()
-              addDemand(this.basicForm).then(res => {
-                console.log(333)
-                if (res.code === 200) {
-                  this.$modal.notifySuccess(res.msg);
-                  this.$modal.closeLoading();
-                  this.back()
-                }
-              }).catch(err => {
-                this.$modal.closeLoading();
-              })
-            } else if (this.sonPageStu == 'edit') {
-              let list = []
-              list.push(...this.basicForm.puDemandItemList, ...this.delDemandItemList)
-              // 深拷贝一下参数对象
-              let param = JSON.parse(JSON.stringify(this.basicForm))
-              console.log('深拷贝对象',param);
-              param.puDemandItemList = list
-              // this.basicForm.puDemandItemList.push(...this.delDemandItemList)
-              editDemand(param).then(res => {
-                if (res.code === 200) {
-                  this.$modal.notifySuccess(res.msg);
-                  this.$modal.closeLoading();
-                  this.back()
+            // 加上表格校验
+              this.$refs.table.fullValidate().then(data=> {
+              if(!data) {
+                this.$modal.loading("保存中...");
+                if(this.sonPageStu == 'add') {
+                  this.handleData()
+                  addDemand(this.basicForm).then(res => {
+                    console.log(333)
+                    if (res.code === 200) {
+                      this.$modal.notifySuccess(res.msg);
+                      this.$modal.closeLoading();
+                      this.back()
+                    }
+                  }).catch(err => {
+                    this.$modal.closeLoading();
+                  })
+                } else if (this.sonPageStu == 'edit') {
+                  let list = []
+                  list.push(...this.basicForm.puDemandItemList, ...this.delDemandItemList)
+                  // 深拷贝一下参数对象
+                  let param = JSON.parse(JSON.stringify(this.basicForm))
+                  console.log('深拷贝对象',param);
+                  param.puDemandItemList = list
+                  // this.basicForm.puDemandItemList.push(...this.delDemandItemList)
+                  editDemand(param).then(res => {
+                    if (res.code === 200) {
+                      this.$modal.notifySuccess(res.msg);
+                      this.$modal.closeLoading();
+                      this.back()
+                    }
+                  }).catch(err => {
+                    this.$modal.closeLoading();
+                  })
                 }
-              }).catch(err => {
-                this.$modal.closeLoading();
-              })
-            }
+              } else {
+                this.$modal.notifyError('校验不通过');
+              }
+            })
           } else {
             // 校验加弹窗
             const jiaoyan = []
@@ -1773,6 +1788,9 @@ export default {
 ::v-deep .elx-body--row .success-row {
   background-color: #f11616!important;
 }
+::v-deep .uxbeautifyTableClass .elx-table--header-wrapper {
+  color: #606266;
+}
 .pltzTxt{
   text-align: right;
   font-size: medium;

+ 6 - 0
src/views/purchase/apply/see/index.vue

@@ -100,6 +100,9 @@ export default {
       this.visible = false;
       this.tabName = tabName;
     },
+    async jumpOA() {
+      console.log('参数',this)
+    },
   },
   created() {},
   mounted() {},
@@ -124,6 +127,9 @@ export default {
     >
       <template slot="title">
         <span>{{ title }}</span>
+        <!-- <el-button :size="$attrs.size" :loading="loading" @click="jumpOA">
+          流程跳转
+        </el-button> -->
         <el-button :size="$attrs.size" :loading="loading" @click="hide">
           取 消
         </el-button>

+ 25 - 20
src/views/purchase/task/xie-yi-zhi-cai/column.js

@@ -1,22 +1,18 @@
 import CONFIG from "@/config";
 
 export const TableColumns = [
-  {
-    item: { key: "puOrgName", title: "采购组织" },
-    attr: {},
-  },
-  {
-    item: { key: "manufacturerName", title: "生产厂商" },
-    attr: {},
-  },
-  {
-    item: { key: "materialName", title: "物料名称" },
-    attr: {},
-  },
-  {
-    item: { key: "demandDate", title: "需求时间" },
-    attr: {},
-  },
+  // {
+  //   item: { key: "puOrgName", title: "采购组织" },
+  //   attr: {},
+  // },
+  // {
+  //   item: { key: "manufacturerName", title: "生产厂商" },
+  //   attr: {},
+  // },
+  // {
+  //   item: { key: "materialName", title: "物料名称" },
+  //   attr: {},
+  // },
   {
     item: { key: "supplierName", title: "供应商", filterabled:true, },
     attr: {
@@ -24,9 +20,14 @@ export const TableColumns = [
     },
   },
   {
-    item: { key: "customerName", title: "客户" },
+    item: { key: "demandDate", title: "需求时间" },
     attr: {},
   },
+  
+  // {
+  //   item: { key: "customerName", title: "客户" },
+  //   attr: {},
+  // },
   {
     item: { key: "priceType", title: "价格类型" },
     attr: { is: "el-dict-tag", dictName: "sys_price_type" },
@@ -67,7 +68,7 @@ export const TableColumns = [
     },
   },
   {
-    item: { key: "purchaseQuantity", title: "本次采购数量", fixed: true },
+    item: { key: "purchaseQuantity", title: "本次采购数量", fixed: true ,width:160},
     attr: {
       is: "el-input-number",
       min: 0,
@@ -79,7 +80,7 @@ export const TableColumns = [
     },
   },
   {
-    item: { key: "arrivalDatePlan", title: "计划到货日期", fixed: true },
+    item: { key: "arrivalDatePlan", title: "计划到货日期", fixed: true ,width:160},
     attr: {
       is: "el-date-picker",
       valueFormat: "yyyy-MM-dd",
@@ -91,7 +92,7 @@ export const TableColumns = [
     },
   },
   {
-    item: { key: "note", title: "备注", fixed: true },
+    item: { key: "note", title: "备注", fixed: true ,width:160},
     attr: {
       is: "el-input",
       autosize: true,
@@ -110,6 +111,10 @@ export const BasicColumns = [
     attr: {},
   },
   {
+    item: { key: "puOrgName", title: "采购组织" },
+    attr: {},
+  },
+  {
     item: { key: "manufacturerName", title: "生产厂商" },
     attr: {},
   },

+ 12 - 0
src/views/purchase/task/xie-yi-zhi-cai/index.vue

@@ -35,6 +35,15 @@ export default {
       },
       set() {},
     },
+    supplierNameSelect:{
+      get(){
+        return 
+      },
+      set(value){
+
+
+      }
+    }
   },
   watch: {},
   methods: {
@@ -97,6 +106,9 @@ export default {
         // finally
       }
     },
+    supplierChange(value){
+      console.log(value,'value');
+    },
   },
   created() {},
   mounted() {},