Browse Source

产品新增仓库id、仓库code字段,并对接后端

xdd 1 month ago
parent
commit
2f5f9fbcaa

+ 10 - 1
src/api/store/warehouses.js

@@ -9,6 +9,15 @@ export function listWarehouses(query) {
   })
 }
 
+// 查询仓库列表-不分页
+export function listWarehousesAll(query) {
+  return request({
+    url: '/system/warehouses/listAll',
+    method: 'get',
+    params: query
+  })
+}
+
 // 查询仓库详细
 export function getWarehouses(id) {
   return request({
@@ -50,4 +59,4 @@ export function exportWarehouses(query) {
     method: 'get',
     params: query
   })
-}
+}

+ 39 - 1
src/views/store/storeProduct/index.vue

@@ -504,6 +504,16 @@
                   />
             </el-select>
         </el-form-item>
+        <el-form-item label="所属仓库" prop="warehouseCode">
+          <el-select v-model="warehouseModel" placeholder="请选择仓库" clearable size="small">
+            <el-option
+              v-for="item in warehouseOptions"
+              :key="item.id"
+              :label="item.warehouseName"
+              :value="item.id"
+            />
+          </el-select>
+        </el-form-item>
         <el-form-item label="国药准字" v-if="form.productType==2" prop="prescribeCode">
           <el-input v-model="form.prescribeCode" placeholder="请输入国药准字" />
         </el-form-item>
@@ -565,6 +575,7 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 import Editor from '@/components/Editor/wang';
 import Material from '@/components/Material'
 import singleImg from '@/components/Material/single'
+import {listWarehousesAll} from "../../../api/store/warehouses";
 export default {
   name: "StoreProduct",
   components: {
@@ -598,6 +609,8 @@ export default {
         url: process.env.VUE_APP_BASE_API + "/store/storeProduct/importData"
       },
       productTuiCateOptions:[],
+      // 仓库列表
+      warehouseOptions: [],
       showIput: false,
       createBnt:true,
       // 规格数据
@@ -711,6 +724,19 @@ export default {
       }
     };
   },
+  computed:{
+    warehouseModel:{
+      get(){
+        return this.form.warehouseId;
+      },
+      set(newVal){
+        this.form.warehouseId = newVal;
+        // 根据id找出code
+        let option = this.warehouseOptions.filter(e=>e.id===newVal)[0];
+        this.form.warehouseCode = option.warehouseCode;
+      }
+    }
+  },
   created() {
     this.getDicts("store_product_tui_cate").then((response) => {
       this.productTuiCateOptions = response.data;
@@ -736,8 +762,18 @@ export default {
     });
     this.getTreeselect();
     this.getList();
+
+    this.loadWarehouseOptions();
   },
   methods: {
+    // 加载仓库数据
+    loadWarehouseOptions(){
+      listWarehousesAll({
+        isActive: 1
+      }).then((response) => {
+        this.warehouseOptions = response.data;
+      });
+    },
     // 提交上传文件
     submitFileForm() {
       this.$refs.upload.submit();
@@ -959,7 +995,9 @@ export default {
         prescribeSpec: null,
         prescribeFactory: null,
         prescribeName: null,
-        isDisplay:"1"
+        isDisplay:"1",
+        warehouseCode: null,
+        warehouseId: null
       };
       this.resetForm("form");
       this.oneFormValidate = [

+ 3 - 3
src/views/store/warehouses/index.vue

@@ -127,7 +127,7 @@
       <el-table-column label="仓库地址" align="center" prop="warehouseAddress" />
       <el-table-column label="联系人" align="center" prop="contactPerson" />
       <el-table-column label="联系电话" align="center" prop="contactPhone" />
-      <el-table-column label="是否启用" align="center" prop="isActive" />
+      <el-table-column label="是否启用" align="center" prop="isActiveText" />
       <el-table-column label="创建时间" align="center" prop="createdAt" width="180">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.createdAt, '{y}-{m}-{d}') }}</span>
@@ -248,7 +248,7 @@ export default {
         updatedAt: null,
       },
       // 表单参数
-      form: {},
+      form: {isActive: 0},
       // 表单校验
       rules: {
         warehouseName: [
@@ -299,7 +299,7 @@ export default {
         warehouseAddress: null,
         contactPerson: null,
         contactPhone: null,
-        isActive: null,
+        isActive: 1,
         createdAt: null,
         updatedAt: null,
         remark: null