From b6a27b9ca71d636a1598751f8114c36a5d7007fe Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期一, 15 四月 2024 16:52:36 +0800
Subject: [PATCH] 修改
---
src/views/warehouse/components/addStock.vue | 91 +++++++++++++++++++++++-------
src/views/warehouse/stockManage.vue | 3
src/views/warehouse/stockAnalyse.vue | 27 ++++++---
src/api/warehouse.js | 1
src/views/license/licenseInfo/index.vue | 12 +--
src/views/warehouse/components/stockRecords.vue | 2
src/views/warehouse/stockSupervision.vue | 5 +
7 files changed, 99 insertions(+), 42 deletions(-)
diff --git a/src/api/warehouse.js b/src/api/warehouse.js
index c9aad12..6228389 100644
--- a/src/api/warehouse.js
+++ b/src/api/warehouse.js
@@ -151,7 +151,6 @@
})
}
-
// 监管
export function getSupervisionStatistics(data) {
return request({
diff --git a/src/views/license/licenseInfo/index.vue b/src/views/license/licenseInfo/index.vue
index 35b6339..37ebacd 100644
--- a/src/views/license/licenseInfo/index.vue
+++ b/src/views/license/licenseInfo/index.vue
@@ -933,10 +933,10 @@
} else if (val.type === 3 || val.type === 4) {
this.area = val.dealingarea
this.powder = val.reservekg
- if (val.licensetype === 2) {
- this.licensetype = '临时零售'
- } else {
+ if (val.licensetype === 1) {
this.licensetype = '长期零售'
+ } else{
+ this.licensetype = '短期零售'
}
if (val.dealingtype === 2 || val.dealingtype === 4) {
this.dealingtype = '专店'
@@ -996,11 +996,9 @@
} else if (val.type === 3 || val.type === 4) {
this.area = val.dealingarea
this.powder = val.reservekg
- if (val.licensetype === 2) {
- this.licensetype = '临时'
- } else if(val.licensetype === 3){
+ if (val.licensetype === 1) {
this.licensetype = '长期'
- }else{
+ } else{
this.licensetype = '短期'
}
if (val.dealingtype === 2 || val.dealingtype === 4) {
diff --git a/src/views/warehouse/components/addStock.vue b/src/views/warehouse/components/addStock.vue
index b07eca3..506cfe3 100644
--- a/src/views/warehouse/components/addStock.vue
+++ b/src/views/warehouse/components/addStock.vue
@@ -10,7 +10,7 @@
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="库区名称:" prop="reserveName" >
- <el-input v-model.trim="dataForm.reserveName"/>
+ <el-input v-model.trim="dataForm.reserveName" :readonly="isDisabled"/>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -22,7 +22,7 @@
<el-row :gutter="20">
<el-col :span="10">
<el-form-item label="所属省份:" prop="province">
- <el-select v-model="dataForm.province" clearable @change="changeArea('province')" style="width: 100%;">
+ <el-select v-model="dataForm.province" clearable @change="changeArea('province')" style="width: 100%;" :disabled="isDisabled">
<el-option
v-for="item in provinceList"
:key="item.id"
@@ -35,7 +35,7 @@
</el-col>
<el-col :span="6">
<el-form-item prop="city" class="selector">
- <el-select v-model="dataForm.city" prop="city" clearable @change="changeArea('city')" style="width: 100%;">
+ <el-select v-model="dataForm.city" prop="city" clearable @change="changeArea('city')" style="width: 100%;" :disabled="isDisabled">
<el-option
v-for="item in cityList"
:key="item.id"
@@ -48,7 +48,7 @@
</el-col>
<el-col :span="6">
<el-form-item prop="area" class="selector">
- <el-select v-model="dataForm.area" clearable filterable @change="changeArea('district')" style="width: 100%;">
+ <el-select v-model="dataForm.area" clearable filterable @change="changeArea('district')" style="width: 100%;" :disabled="isDisabled">
<el-option
v-for="item in districtList"
:key="item.id"
@@ -63,31 +63,31 @@
<el-row>
<el-col :span="22">
<el-form-item label="库区地址:" prop="reserveAddress" >
- <el-input v-model.trim="dataForm.reserveAddress"/>
+ <el-input v-model.trim="dataForm.reserveAddress" :readonly="isDisabled"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="11">
<el-form-item label="库区总面积:" prop="square" class="numInput">
- <el-input type="number" v-model.number="dataForm.square"><template slot="append">㎡</template></el-input>
+ <el-input type="number" v-model.number="dataForm.square" :readonly="isDisabled"><template slot="append">㎡</template></el-input>
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item label="有效仓储面积:" prop="effectiveStorageSquare" class="numInput">
- <el-input type="number" v-model.number="dataForm.effectiveStorageSquare"><template slot="append">㎡</template></el-input>
+ <el-input type="number" v-model.number="dataForm.effectiveStorageSquare" :readonly="isDisabled"><template slot="append">㎡</template></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="11">
<el-form-item label="核定储量:" prop="approvedReserves" class="numInput">
- <el-input type="number" v-model.number="dataForm.approvedReserves"><template slot="append">箱</template></el-input>
+ <el-input type="number" v-model.number="dataForm.approvedReserves" :readonly="isDisabled"><template slot="append">箱</template></el-input>
</el-form-item>
</el-col>
<el-col :span="11">
<el-form-item label="核药量:" prop="nuclearDose" class="numInput">
- <el-input type="number" v-model.number="dataForm.nuclearDose"><template slot="append">kg</template></el-input>
+ <el-input type="number" v-model.number="dataForm.nuclearDose" :readonly="isDisabled"><template slot="append">kg</template></el-input>
</el-form-item>
</el-col>
</el-row>
@@ -104,41 +104,41 @@
<td>核定储量(箱)</td>
<td>等级</td>
<td>核药量</td>
- <td>操作</td>
+ <td v-if="isDisabled == false">操作</td>
</tr>
<tr v-for="(item,index) in dataForm.storehouseInfos" :key="index">
<td class="w-12">
{{ index + 1 }}
</td>
<td class="w-20">
- <el-input v-model="item.storehouseName"></el-input>
+ <el-input v-model="item.storehouseName" :readonly="isDisabled"></el-input>
</td>
<td>
- <el-input type="number" v-model.number="item.square"><template slot="append">㎡</template></el-input>
+ <el-input type="number" v-model.number="item.square" :readonly="isDisabled"><template slot="append">㎡</template></el-input>
</td>
<td>
- <el-input type="number" v-model.number="item.effectiveStorageSquare"><template slot="append">㎡</template></el-input>
+ <el-input type="number" v-model.number="item.effectiveStorageSquare" :readonly="isDisabled"><template slot="append">㎡</template></el-input>
</td>
<td>
- <el-input type="number" v-model.number="item.approvedReserves"><template slot="append">箱</template></el-input>
+ <el-input type="number" v-model.number="item.approvedReserves" :readonly="isDisabled"><template slot="append">箱</template></el-input>
</td>
<td>
- <el-select v-model="item.storehouseLevel" clearable filterable>
+ <el-select v-model="item.storehouseLevel" clearable filterable :disabled="isDisabled">
<el-option label="1.1" :value="1.1"></el-option>
<el-option label="1.3" :value="1.3"></el-option>
</el-select>
</td>
<td>
- <el-input type="number" v-model.number="item.nuclearDose"><template slot="append">kg</template></el-input>
+ <el-input type="number" v-model.number="item.nuclearDose" :readonly="isDisabled"><template slot="append">kg</template></el-input>
</td>
- <td>
+ <td v-if="isDisabled == false">
<el-button type="danger" @click="delItem(item,index)">删除</el-button>
</td>
</tr>
- <el-button type="primary" style="margin-top: 20px" @click="addItem()">新增仓库</el-button>
+ <el-button type="primary" style="margin-top: 20px" @click="addItem()" v-if="isDisabled == false">新增仓库</el-button>
</el-form>
<br>
- <span slot="footer" class="dialog-footer">
+ <span slot="footer" class="dialog-footer" v-if="isDisabled == false">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="handleSubmit">保 存</el-button>
</span>
@@ -148,8 +148,9 @@
<script>
import {mapGetters} from "vuex";
import {getCityListData, getProvinceListData} from "../../../api/area";
- import {saveReserveInfo, getInfoById, editReserveInfo} from '../../../api/warehouse'
+ import {saveReserveInfo, getInfoById, editReserveInfo, delStore} from '../../../api/warehouse'
import Cookies from 'js-cookie'
+ import {MessageBox} from "_element-ui@2.14.1@element-ui";
export default {
name: "addStock",
data() {
@@ -186,6 +187,7 @@
approvedReserves:[{ required: true, message: '请填写库区核定储量', trigger: 'blur' }],
nuclearDose:[{ required: true, message: '请填写库区核药量', trigger: 'blur' }]
},
+ isDisabled: false
}
},
created() {
@@ -203,7 +205,8 @@
if(type == 'add'){
this.dataForm.company = Cookies.get('company')
this.dialogTitle = '新增库区'
- }else{
+ this.isDisabled = false
+ }else if(type == 'edit'){
this.dialogTitle = '编辑库区'
getInfoById({id: data.topId}).then((res)=>{
if(res.data.code == 200){
@@ -224,6 +227,29 @@
}).catch((res)=>{
this.$message.warning(res.data.message)
})
+ this.isDisabled = false
+ }else{
+ this.dialogTitle = '查看库区'
+ getInfoById({id: data.topId}).then((res)=>{
+ if(res.data.code == 200){
+ if(res.data.result){
+ for(let i in this.dataForm){
+ if(this.isKey(i,res.data.result)){
+ this.dataForm[i] = res.data.result[i]
+ }
+ }
+ }
+ this.dataForm['storehouseInfos'] = res.data.result.storehouseInfo.map((i)=>{
+ const{reserveId,...data} = i
+ return data
+ })
+ this.dataForm['company'] = data.enterpriseName
+ this.dataForm['enterpriseId'] = res.data.result.enterpriseId
+ }
+ }).catch((res)=>{
+ this.$message.warning(res.data.message)
+ })
+ this.isDisabled = true
}
this.dialogVisible = true
},
@@ -232,7 +258,27 @@
},
delItem(item,index){
- this.dataForm.storehouseInfos.splice(index,1);
+ MessageBox.confirm('确定删除信息', '确定删除', {
+ confirmButtonText: '确定',
+ cancelButtonText: '取消',
+ type: 'warning'
+ }).then(async () => {
+ const res = await delStore({id: item.id})
+ if(res.data.code == 200){
+ this.$message({
+ type:'success',
+ message: '删除成功'
+ })
+ this.dataForm.storehouseInfos.splice(index,1);
+ }else{
+ this.$message({
+ type:'warning',
+ message: res.data.message
+ })
+ }
+ }).catch(() => {
+ console.log('已取消删除')
+ })
},
addItem(){
const obj = {
@@ -316,6 +362,7 @@
reset(){
this.$refs.dataForm.resetFields()
this.$refs.dataForm.clearValidate()
+ this.$emit('refresh')
}
}
}
diff --git a/src/views/warehouse/components/stockRecords.vue b/src/views/warehouse/components/stockRecords.vue
index 7f1c350..2dcd59d 100644
--- a/src/views/warehouse/components/stockRecords.vue
+++ b/src/views/warehouse/components/stockRecords.vue
@@ -146,7 +146,7 @@
methods:{
open(row){
this.listQuery.pageIndex = 1
- this.listQuery.filter.storehouseId = row.storehouseId
+ this.listQuery.filter.storehouseId = row.storehouseId || row.id
this.initValidTime()
if(this.tableStatus){
this.getOutbound()
diff --git a/src/views/warehouse/stockAnalyse.vue b/src/views/warehouse/stockAnalyse.vue
index 7ab0b52..b4b21f5 100644
--- a/src/views/warehouse/stockAnalyse.vue
+++ b/src/views/warehouse/stockAnalyse.vue
@@ -1,7 +1,7 @@
<template>
<div class="app-container">
<div class="filter-container">
- <div style="display: block;">
+ <div style="display: block;" v-show="disable == false">
<!-- <div class="basic_search">-->
<!-- <span>区域:</span>-->
<!-- <el-select v-model="listQuery.province" clearable filterable @change="changeArea('province')">-->
@@ -67,7 +67,7 @@
<el-table-column label="库区" prop="reserveName" align="center">
<template slot-scope="scope">
<span v-if="scope.row.reserveName =='合计'">{{scope.row.reserveName}}</span>
- <el-link v-else type="primary" @click="openStock('edit',scope.row)">{{scope.row.reserveName}}</el-link>
+ <el-link v-else type="primary" @click="openStock('view',scope.row)">{{scope.row.reserveName}}</el-link>
</template>
</el-table-column>
<el-table-column label="库区总库存" prop="gName" align="center"></el-table-column>
@@ -150,14 +150,16 @@
},
created() {
const t = this
- t.getList()
- t.getProvince()
const roles = JSON.parse(Cookies.get('roles'))
if(roles.find(i=>i.name == '管理员'|| i.name == '监管部门')){
this.disable = false
+ t.listQuery.enterpriseName = ''
}else{
this.disable = true
+ t.listQuery.enterpriseName = Cookies.get('company')
}
+ t.getList()
+ t.getProvince()
},
mounted() {
},
@@ -180,14 +182,21 @@
content['gName'] = item.enterpriseName
// 重点!赋值合并的行数数值,只需要取子循环的第一个数赋值待合并的行数即可
if(subIndex == 0){
- content['gNum'] = item.reserves.length
+ let gNum = 0
+ for(let i of item.reserves){
+ if(i.storehouse && i.storehouse.warehouses && Array.isArray(i.storehouse.warehouses)){
+ gNum= gNum + i.storehouse.warehouses.length + 1
+ }else{
+ gNum = gNum + 0
+ }
+ }
+ content['gNum'] = gNum
}
gData.push(content)
})
}
})
}
-
if(Array.isArray(gData)){
gData.map(item=>{
if(Array.isArray(item.storehouse.warehouses) && item.storehouse.whTotal){
@@ -215,6 +224,7 @@
content2['gId'] = item.gId
content2['ggId'] = item.enterpriseId
content2['gStock'] = item.gStock
+ content2['enterpriseName'] = item.enteripriseName
content2['gName'] = item.gName
content2['gNum'] = item.gNum || null
content2['topId'] = item.reserveId
@@ -262,7 +272,6 @@
}
this.stateStockData.push(totalObj)
}
- console.log(this.stateStockData,'G')
}else{
this.$message({
type:'warning',
@@ -376,8 +385,8 @@
// columnIndex 代表列数,从0开始计数,我们要合并的字段属于第一列,取0
if(columnIndex ==0 || columnIndex ==1){
return {
- rowspan: row.gNum * row.rowNum, // 待合并行数 -- 合并的行数长度就等于之前赋值的子数据的长度;未赋值的即表示0,不显示
- colspan: row.gNum>0?1:0 // 待合并列数 -- 合并的列数自身占一列,被合并的要返回0,表示不显示
+ rowspan: row.gNum, // 待合并行数 -- 合并的行数长度就等于之前赋值的子数据的长度;未赋值的即表示0,不显示
+ colspan: row.rowNum>0?1:0 // 待合并列数 -- 合并的列数自身占一列,被合并的要返回0,表示不显示
};
}
if(columnIndex >1 && columnIndex < 7){
diff --git a/src/views/warehouse/stockManage.vue b/src/views/warehouse/stockManage.vue
index 1ac57e4..c862528 100644
--- a/src/views/warehouse/stockManage.vue
+++ b/src/views/warehouse/stockManage.vue
@@ -43,6 +43,7 @@
<el-table-column label="库容量/箱" prop="approvedReserves" align="center"></el-table-column>
<el-table-column label="核药量/kg" prop="nuclearDose" align="center"></el-table-column>
<el-table-column label="当前总库存" prop="totalInventory" align="center"></el-table-column>
+ <el-table-column label="存药量" prop="drugContent" align="center"></el-table-column>
<el-table-column label="本公司库存" prop="inventoryOfTheCompany" align="center"></el-table-column>
<el-table-column label="爆竹类(箱)" prop="firecracker" align="center"></el-table-column>
<el-table-column label="喷花类(箱)" prop="spray" align="center"></el-table-column>
@@ -161,7 +162,7 @@
},
openRecord(row){
const t = this
- t.$refs.stockRecords.open()
+ t.$refs.stockRecords.open(row)
},
showEnterprises(row){
const t = this
diff --git a/src/views/warehouse/stockSupervision.vue b/src/views/warehouse/stockSupervision.vue
index 055d90a..6a554e7 100644
--- a/src/views/warehouse/stockSupervision.vue
+++ b/src/views/warehouse/stockSupervision.vue
@@ -84,9 +84,10 @@
<el-table-column label="库房面积/㎡" prop="square" align="center"></el-table-column>
<el-table-column label="有效存储面积/㎡" prop="storageSquare" align="center"></el-table-column>
<el-table-column label="库容量/箱" prop="approvedReserves" align="center"></el-table-column>
+ <el-table-column label="存药量/箱" prop="approvedReserves" align="center"></el-table-column>
<el-table-column label="核药量/kg" prop="nuclearDose" align="center"></el-table-column>
<el-table-column label="当前总库存" prop="totalStock" align="center"></el-table-column>
-<!-- <el-table-column label="存药量" prop="totalStock" align="center"></el-table-column>-->
+ <el-table-column label="存药量" prop="drugContent" align="center"></el-table-column>
<el-table-column label="爆竹类(箱)" prop="firecracker" align="center"></el-table-column>
<el-table-column label="喷花类(箱)" prop="spray" align="center"></el-table-column>
<el-table-column label="旋转类(箱)" prop="rotation" align="center"></el-table-column>
@@ -191,6 +192,7 @@
storehouseId: null,
storehouseName: item.storehouse.whTotal.wname,
totalStock: item.storehouse.whTotal.wtotalStock,
+ drugContent: item.storehouse.whTotal.wtotalDrugContent,
toy: item.storehouse.whTotal.wtotalToy,
}
item.storehouse.warehouses.push(obj)
@@ -233,6 +235,7 @@
rotation: total.totalRotation,
spray: total.totalSpray,
totalStock: total.totalStock,
+ drugContent: total.totalDrugContent,
toy: total.totalToy,
approvedReserves: total.whTotalApprovedReserves,
square: total.whTotalSquare,
--
Gitblit v1.9.2