فهرست منبع

物料申请单-新增-按照需求进行默认值设置,以及改变医药物料之后需要改变类别维护数据

002390 1 سال پیش
والد
کامیت
74afa74993
2فایلهای تغییر یافته به همراه107 افزوده شده و 84 حذف شده
  1. 9 0
      src/api/requisition/basic.js
  2. 98 84
      src/views/material/requisition/add.vue

+ 9 - 0
src/api/requisition/basic.js

@@ -176,4 +176,13 @@ export function saveAndToOa(data) {
     method: "POST",
     data: data,
   });
+}
+
+export const REFER = (data, params) => {
+  return request({
+    url: "/refer/query",
+    method: "POST",
+    data: data,
+    params: params,
+  });
 }

+ 98 - 84
src/views/material/requisition/add.vue

@@ -31,11 +31,11 @@
     <el-tabs type="border-card" v-model="tabValue" @tab-click="handleClick">
       <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-form :model="basicForm" :rules="basicRules" ref="basic" label-width="170px"  :size="size">
             <el-row :gutter="10">
               <el-col :span="6">
                 <el-form-item label="单据编码" prop="billCode">
-                  <el-input disabled v-model="basicForm.billCode"></el-input>
+                  <el-input disabled v-model="basicForm.billCode" ></el-input>
                 </el-form-item>
               </el-col>
               <el-col :span="6">
@@ -111,7 +111,6 @@
               </el-col>
             </el-row>
 
-
             <el-row :gutter="10">
              
               <el-col :span="6">
@@ -144,7 +143,6 @@
 
             </el-row>
 
-
             <el-row :gutter="10">
               <el-col :span="6">
                 <el-form-item label="厂家物料编码" prop="manufacturersMaterialCode">
@@ -168,34 +166,35 @@
                 </el-form-item>
               </el-col>
               <el-col :span="6">
+                <el-form-item label="批号及库存状态管理" prop="isInventoryStatus">
+                  <el-select v-model="basicForm.isInventoryStatus" placeholder="批号及库存状态管理" @change="stockControl"
+                             :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="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> -->
             </el-row>
 
             <el-row :gutter="10">
               
-              <el-col :span="6">
+              <!-- <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="6">
-                <el-form-item label="批号及库存状态管理" prop="isInventoryStatus">
-                  <el-select v-model="basicForm.isInventoryStatus" placeholder="批号及库存状态管理" @change="stockControl"
-                             :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> -->
+             
               <el-col :span="6">
                 <el-form-item label="序列号管理" prop="serialNoManager">
-                  <el-select v-model="basicForm.serialNoManager" placeholder="序列号管理" :disabled="disable || isStock">
+                  <el-select v-model="basicForm.serialNoManager" placeholder="序列号管理" :disabled="disable || isStock" clearable>
                     <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"/>
                   </el-select>
                 </el-form-item>
@@ -209,10 +208,6 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-
-            </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
@@ -230,6 +225,11 @@
                   </el-select>
                 </el-form-item>
               </el-col>
+
+            </el-row>
+
+            <el-row :gutter="10">
+              
               <el-col :span="6">
                 <el-form-item label="近效期管理" prop="nearOnsetManagerment">
                   <el-select v-model="basicForm.nearOnsetManagerment" placeholder="近效期管理" :disabled="disable">
@@ -244,10 +244,6 @@
                             v-model="basicForm.usefulLife"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-
-
-            <el-row :gutter="10">
               <el-col :span="6">
                 <el-form-item label="效期单位" prop="expiryUnitId"
                               :rules="{ required: !isExp, message: '请选择效期单位', trigger: 'change' }">
@@ -267,6 +263,11 @@
                   </el-select>
                 </el-form-item>
               </el-col>
+            </el-row>
+
+
+            <el-row :gutter="10">
+             
               <el-col :span="6">
                 <el-form-item label="近效期预警天数" prop="recentWarningPeriod"
                               :rules="{ required: (basicForm.expiryDateManagerment === '0' && basicForm.nearOnsetManagerment ==='0'), message: '请填写近效期预警天数', trigger: 'blur' }">
@@ -282,9 +283,6 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-            </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"
@@ -298,6 +296,9 @@
                   <el-input disabled v-model="basicForm.rateCode"></el-input>
                 </el-form-item>
               </el-col>
+            </el-row>
+
+            <el-row :gutter="10">
               <el-col :span="6">
                 <el-form-item label="交货周期" prop="deliveryPeriod">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.deliveryPeriod"></el-input>
@@ -308,9 +309,6 @@
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.minOrderQty"></el-input>
                 </el-form-item>
               </el-col>
-            </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>
@@ -324,6 +322,10 @@
                   </el-select>
                 </el-form-item>
               </el-col>
+            </el-row>
+
+            <el-row :gutter="10">
+              
               <el-col :span="6">
                 <el-form-item label="最小批量" prop="minBatchQty">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.minBatchQty"></el-input>
@@ -334,10 +336,6 @@
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.length"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-
-
-            <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>
@@ -348,6 +346,11 @@
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.width"></el-input>
                 </el-form-item>
               </el-col>
+            </el-row>
+
+
+            <el-row :gutter="10">
+              
               <el-col :span="6">
                 <el-form-item label="箱包装数" prop="boxPackaingQty">
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.boxPackaingQty"></el-input>
@@ -358,11 +361,6 @@
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.mediumPackageQty"></el-input>
                 </el-form-item>
               </el-col>
-
-            </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>
@@ -378,6 +376,11 @@
                   </el-select>
                 </el-form-item>
               </el-col>
+            </el-row>
+
+            <el-row :gutter="10">
+              
+              
               <!-- <el-col :span="6">
                 <el-form-item label="业务线" prop="businessLine">
                   <el-select ref="lines" v-model="basicForm.businessLine" placeholder="请选择" clearable
@@ -398,9 +401,6 @@
                   <el-input :disabled="disable" v-model="basicForm.barCode"></el-input>
                 </el-form-item>
               </el-col>
-            </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>
@@ -411,6 +411,10 @@
                   <el-input :disabled="disable" v-model="basicForm.healthCode"></el-input>
                 </el-form-item>
               </el-col>
+            </el-row>
+
+            <el-row :gutter="10">
+              
               <el-col :span="6">
                 <el-form-item label="原系统物料编码" prop="oriMaterialCode">
                   <el-input :disabled="disable" v-model="basicForm.oriMaterialCode"></el-input>
@@ -422,10 +426,6 @@
                   <el-input :disabled="disable" v-model="basicForm.productionPermit"></el-input>
                 </el-form-item>
               </el-col>
-            </el-row>
-
-
-            <el-row :gutter="10">
               <el-col :span="6">
                 <el-form-item label="一级分类" prop="oneClass">
                   <el-input disabled v-model="basicForm.oneClass"></el-input>
@@ -436,6 +436,11 @@
                   <el-input disabled v-model="basicForm.twoClass"></el-input>
                 </el-form-item>
               </el-col>
+            </el-row>
+
+
+            <el-row :gutter="10">
+             
               <el-col :span="6">
                 <el-form-item label="三级分类" prop="threeClass">
                   <el-input disabled v-model="basicForm.threeClass"></el-input>
@@ -450,11 +455,6 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-
-            </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> -->
@@ -470,6 +470,10 @@
                   <el-input type="number" min="0" :disabled="disable" v-model="basicForm.innerPackingQty"></el-input>
                 </el-form-item>
               </el-col>
+            </el-row>
+
+            <el-row :gutter="10">
+            
               <el-col :span="6">
                 <el-form-item label="进口产品生产厂家" prop="importsManufacturer">
                   <el-input :disabled="disable" v-model="basicForm.importsManufacturer"></el-input>
@@ -490,17 +494,11 @@
                   </el-select>
                 </el-form-item>
               </el-col> -->
-              
-            </el-row>
-            <el-row :gutter="10">
-              
-
-              <el-col :span="6">
+              <el-col :span="12">
                 <el-form-item label="备注" prop="remark">
-                  <el-input :disabled="disable" v-model="basicForm.remark"></el-input>
+                  <el-input type="textarea" :disabled="disable" v-model="basicForm.remark"></el-input>
                 </el-form-item>
               </el-col>
-              
             </el-row>
             
           </el-form>
@@ -508,7 +506,7 @@
       </el-tab-pane>
 
       <el-tab-pane label="医药属性" name="second">
-        <el-form :model="basicForm2" ref="basic2" label-width="160px">
+        <el-form :model="basicForm2" ref="basic2" label-width="160px"  :size="size">
           <el-row :gutter="10">
             <el-col :span="6">
               <el-form-item label="药品" prop="isDrug"
@@ -592,19 +590,19 @@
               <el-table-column type="selection" width="55"/>
               <el-table-column label="ID" align="center" prop="sort">
                 <template slot-scope="scope">
-                  <el-input readonly v-model="scope.row.drugId">
+                  <el-input readonly v-model="scope.row.drugId" :size="size">
                     <!-- <el-button :disabled="disable" slot="append" icon="el-icon-more" @click="chooseDrug"></el-button> -->
                   </el-input>
                 </template>
               </el-table-column>
               <el-table-column label="药品类别编码" align="center" prop="medicineCode">
                 <template slot-scope="scope">
-                  <el-input readonly v-model="scope.row.drugCode"></el-input>
+                  <el-input readonly v-model="scope.row.drugCode" :size="size"></el-input>
                 </template>
               </el-table-column>
               <el-table-column label="药品类别名称" align="center" prop="medicineName">
                 <template slot-scope="scope">
-                  <el-input readonly v-model="scope.row.drugName"></el-input>
+                  <el-input readonly v-model="scope.row.drugName" :size="size"></el-input>
                 </template>
               </el-table-column>
             </el-table>
@@ -613,7 +611,7 @@
       </el-tab-pane>
 
       <el-tab-pane label="单据信息" name="fourth">
-        <el-form :model="basicForm" ref="info" label-width="160px">
+        <el-form :model="basicForm" ref="info" label-width="160px" :size="size">
           <el-row :gutter="10">
             <el-col :span="6">
               <el-form-item label="申请人" prop="createName">
@@ -726,7 +724,7 @@
 
   import midpack from '@/components/PopDialog/midPack.vue'
 
-  import {addReq, getReqDetail, editReq,saveAndToOa} from '@/api/requisition/basic'
+  import {addReq, getReqDetail, editReq,saveAndToOa,getDrug} from '@/api/requisition/basic'
   // 调用物料分类详情接口用于数据回显
   import {getDetail} from '@/api/classify/basic';
   // 生产厂商/代理人调用用于回显
@@ -806,15 +804,15 @@
           isB2c: '2',
           assembly: '2',
           isInventoryStatus: '0',
-          serialNoManager: '2',
+          serialNoManager: '',
           expiryDateManagerment: '0',
           nearOnsetManagerment: '0',
           usefulLife: '',
           expiryUnitId: '',
           usefulLifeUnitId: '',
           recentWarningPeriod: '',
-          storageCondition: '',
-          transportationCondition: '',
+          storageCondition: "MED2001",
+          transportationCondition: "MED3003",
           materialRate: '',
           deliveryPeriod: '',
           minOrderQty: '',
@@ -1064,7 +1062,9 @@
         }
       } else if (this.pageStu == 'add') {
         this.controlMedic('0');
-        console.log('页面状态', this.pageStu)
+        // 默认值
+        this.acceptTax([{id:"1001A11000000000TPTF",code:"CN011",name: "专票13%"}]);
+
       } else if (this.pageStu === 'copy') {
         this.getDetails(this.row)
         // 控制效期单位后面的是否可填写
@@ -1156,23 +1156,39 @@
         this.orgControl = true
       },
       // 选择是否医药物料时控制医药属性
-      controlMedic(val) {
-        console.log('val1111111', val)
+      async controlMedic(val) {
         if (val == '0') {
-          this.isControl = false
+          this.isControl = false;
           this.basicForm2.dosageFrom = '0001A11000000000BX7Z';
           this.basicForm2.isDrug = '2';
-          this.getDoseDetails(this.basicForm2.dosageFrom)
+          this.getDoseDetails(this.basicForm2.dosageFrom);
+          this.sysMaterialMedcineItemApply = [];
         } else {
-          this.basicForm2.isDrug = ''
-          this.basicForm2.registrationNo = ''
-          this.basicForm2.medicalInstruments = ''
-          this.basicForm2.commonName = ''
-          this.basicForm2.ratifyBatchNo = ''
-          this.basicForm2.dosageFrom = ''
-          this.basicForm2.oriRegistrationNo = ''
-          this.basicForm2.curingType = ''
-          this.isControl = true
+          this.basicForm2.isDrug = '';
+          this.basicForm2.registrationNo = '';
+          this.basicForm2.medicalInstruments = '';
+          this.basicForm2.commonName = '';
+          this.basicForm2.ratifyBatchNo = '';
+          this.basicForm2.dosageFrom = '';
+          this.basicForm2.oriRegistrationNo = '';
+          this.basicForm2.curingType = '';
+          this.isControl = true;
+          // 物料类别赋值为【D 其他非医疗器械】
+          try {
+            
+            let { code, data:{tableBody}} = await getDrug({param: '其他非医疗器械'});
+
+            if(code == 200){
+              
+              this.sysMaterialMedcineItemApply = [];
+
+              this.acceptDrug(tableBody[0]);
+
+            }
+
+          } catch (error) {
+            
+          }
         }
       },
       // 用于回显四级分类树形选择
@@ -1591,8 +1607,6 @@
         }
       },
       testsave() {
-        console.log('暂存表格:', this.sysMaterialMedcineItemApply)
-        console.log('暂存表单1', this.basicForm)
         let params = {...this.basicForm}
         params.sysMaterialMedcineApply = this.basicForm2
         params.sysMaterialMedcineItemApply = this.sysMaterialMedcineItemApply