From 805f69de95e29f919fdbcaa79c4318a84b20075a Mon Sep 17 00:00:00 2001 From: 76164 <761646706@qq.com> Date: Wed, 24 Jul 2024 18:50:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8C=E7=BA=A7=E5=BA=93=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E5=89=8D=E5=90=8E=E7=AB=AF=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/sgzb/base/domain/MaPartType.java | 2 + .../bonus/sgzb/base/service/ExcelService.java | 11 ++ .../SecondaryWarehouseController.java | 7 +- .../material/domain/SecondaryWarehouse.java | 13 +- .../sgzb/material/domain/TeamLeaseInfo.java | 20 ++- .../mapper/SecondaryWarehouseMapper.java | 8 + .../service/SecondaryWarehouseService.java | 6 +- .../impl/SecondaryWarehouseServiceImpl.java | 76 +++++---- .../material/SecondaryWarehouseMapper.xml | 52 ++++-- sgzb-ui/src/api/claimAndRefund/secondStore.js | 4 +- .../secondStore/secondStore.vue | 152 +++++++++--------- .../warehouseManage/machinery/parts/index.vue | 46 +++++- 12 files changed, 267 insertions(+), 130 deletions(-) create mode 100644 sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/ExcelService.java diff --git a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/domain/MaPartType.java b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/domain/MaPartType.java index dd4548dd..16515b46 100644 --- a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/domain/MaPartType.java +++ b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/domain/MaPartType.java @@ -86,5 +86,7 @@ public class MaPartType extends BaseEntity { // @Excel(name = "年份") private String year; + private String firstLevel; + } diff --git a/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/ExcelService.java b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/ExcelService.java new file mode 100644 index 00000000..5a5d2313 --- /dev/null +++ b/sgzb-modules/sgzb-base/src/main/java/com/bonus/sgzb/base/service/ExcelService.java @@ -0,0 +1,11 @@ +package com.bonus.sgzb.base.service; + +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + + +public interface ExcelService { + Map>> readExcelFile(String filePath); +} diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SecondaryWarehouseController.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SecondaryWarehouseController.java index a9d78764..fa20debd 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SecondaryWarehouseController.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/controller/SecondaryWarehouseController.java @@ -54,9 +54,10 @@ public class SecondaryWarehouseController extends BaseController { */ @ApiOperation(value = "出库/退库操作") @PostMapping("/operate") - @Log(title = "二级库管理--出库退库操作", businessType = BusinessType.MATERIAL) - public AjaxResult operate(TeamLeaseInfo bean){ - return toAjax(service.addOperate(bean)); + @Log(title = "二级库管理--出库退库操作") + public AjaxResult operate(@RequestBody TeamLeaseInfo bean){ + int i = service.addNewOperate(bean); + return toAjax(i); } /** diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondaryWarehouse.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondaryWarehouse.java index 49b2090d..80ab5404 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondaryWarehouse.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/SecondaryWarehouse.java @@ -11,7 +11,7 @@ import lombok.Data; @Data public class SecondaryWarehouse { /** - * + * */ private Long id; /** @@ -100,6 +100,7 @@ public class SecondaryWarehouse { */ @Excel(name = "计量单位") private String nuitName; + private String keyword; /** @@ -111,6 +112,14 @@ public class SecondaryWarehouse { /** * 领用数量 */ - @Excel(name = "领用数量") + private Integer Num; + + /** + * 领用数量 + */ private Integer receiveNum; + /** + * 库存数量 + */ + private Integer stockNum; } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamLeaseInfo.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamLeaseInfo.java index 8472d83e..d8a5b490 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamLeaseInfo.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/domain/TeamLeaseInfo.java @@ -1,8 +1,12 @@ package com.bonus.sgzb.material.domain; import com.bonus.sgzb.common.core.annotation.Excel; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; /** * @author c liu @@ -11,7 +15,7 @@ import lombok.Data; @Data public class TeamLeaseInfo { /** - * + * */ private Long id; /** @@ -27,6 +31,14 @@ public class TeamLeaseInfo { *机具id */ private String maId; + /** + *领料人 + */ + private String pickName; + /** + *出库人 + */ + private String nickName; /** * 查询时间 */ @@ -108,5 +120,9 @@ public class TeamLeaseInfo { */ private String queryType; - + private int outNum; + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date outTime; } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SecondaryWarehouseMapper.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SecondaryWarehouseMapper.java index 235750cb..656065ae 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SecondaryWarehouseMapper.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/mapper/SecondaryWarehouseMapper.java @@ -32,4 +32,12 @@ public interface SecondaryWarehouseMapper { * @return */ List getRecordsFive(TeamLeaseInfo bean); + +// List getNewRecordsFive(TeamLeaseInfo bean); + + int addNewOperate(TeamLeaseInfo bean); + + Integer selectStockNum(SecondaryWarehouse secondaryWarehouse); + + List getNewRecords(TeamLeaseInfo bean); } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SecondaryWarehouseService.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SecondaryWarehouseService.java index c4f4fc30..f098f8c4 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SecondaryWarehouseService.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/SecondaryWarehouseService.java @@ -12,9 +12,13 @@ import java.util.List; public interface SecondaryWarehouseService { List getList(SecondaryWarehouse bean); - int addOperate(TeamLeaseInfo bean); +// int addOperate(TeamLeaseInfo bean); List getOperateList(TeamLeaseInfo bean); List getRecords(TeamLeaseInfo bean); + +// List getNewRecords(TeamLeaseInfo bean); + + int addNewOperate(TeamLeaseInfo bean); } diff --git a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SecondaryWarehouseServiceImpl.java b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SecondaryWarehouseServiceImpl.java index 9bb8fe77..a0b1503b 100644 --- a/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SecondaryWarehouseServiceImpl.java +++ b/sgzb-modules/sgzb-material/src/main/java/com/bonus/sgzb/material/service/impl/SecondaryWarehouseServiceImpl.java @@ -25,15 +25,24 @@ public class SecondaryWarehouseServiceImpl implements SecondaryWarehouseService @Override public List getList(SecondaryWarehouse bean) { - return mapper.getList(bean); + List list = mapper.getList(bean); + for (SecondaryWarehouse secondaryWarehouse : list) { + Integer warehouse = mapper.selectStockNum(secondaryWarehouse); + if (warehouse == null) { + warehouse = 0; + } + secondaryWarehouse.setReceiveNum(warehouse); + secondaryWarehouse.setStockNum(secondaryWarehouse.getNum() - secondaryWarehouse.getReceiveNum()); + } + return list; } - @Override - public int addOperate(TeamLeaseInfo bean) { - Long userid = SecurityUtils.getLoginUser().getUserid(); - bean.setCreateBy(String.valueOf(userid)); - return mapper.addOperate(bean); - } +// @Override +// public int addOperate(TeamLeaseInfo bean) { +// Long userid = SecurityUtils.getLoginUser().getUserid(); +// bean.setCreateBy(String.valueOf(userid)); +// return mapper.addOperate(bean); +// } @Override public List getOperateList(TeamLeaseInfo bean) { @@ -42,25 +51,38 @@ public class SecondaryWarehouseServiceImpl implements SecondaryWarehouseService @Override public List getRecords(TeamLeaseInfo bean) { - List list = new ArrayList<>(); - if (STRING_1.equals(bean.getQueryType())){ - //进场数量 - list = mapper.getRecordsOne(bean); - } else if (STRING_2.equals(bean.getQueryType())) { - //退场数量 - list = mapper.getRecordsTwo(bean); - } else if (STRING_3.equals(bean.getQueryType())) { - //场内库存 - list = mapper.getRecordsThree(bean); - } else if (STRING_4.equals(bean.getQueryType())) { - //已出库数量 - list = mapper.getRecordsFour(bean); - } else if (STRING_5.equals(bean.getQueryType())) { - //已退库数量 - list = mapper.getRecordsFive(bean); - } else { - throw new ServiceException("查询出错"); - } - return list; + return mapper.getNewRecords(bean); + } + + @Override + public int addNewOperate(TeamLeaseInfo bean) { + Long userid = SecurityUtils.getLoginUser().getUserid(); + bean.setCreateBy(String.valueOf(userid)); + return mapper.addNewOperate(bean); + } + +// @Override +// public List getNewRecords(TeamLeaseInfo bean) { +// List list = new ArrayList<>(); +// if (STRING_1.equals(bean.getQueryType())){ +// //进场数量 +// list = mapper.getRecordsOne(bean); +// } else if (STRING_2.equals(bean.getQueryType())) { +// //退场数量 +// list = mapper.getRecordsTwo(bean); +// } else if (STRING_3.equals(bean.getQueryType())) { +// //场内库存 +// list = mapper.getRecordsThree(bean); +// } else if (STRING_4.equals(bean.getQueryType())) { +// //已出库数量 +// list = mapper.getRecordsFour(bean); +// } else if (STRING_5.equals(bean.getQueryType())) { +// //已退库数量 +// list = mapper.getNewRecordsFive(bean); +// } else { +// throw new ServiceException("查询出错"); +// } +// return list; +// } } diff --git a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SecondaryWarehouseMapper.xml b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SecondaryWarehouseMapper.xml index 3a63fd14..a06434ca 100644 --- a/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SecondaryWarehouseMapper.xml +++ b/sgzb-modules/sgzb-material/src/main/resources/mapper/material/SecondaryWarehouseMapper.xml @@ -11,6 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - \ No newline at end of file + + + + + insert into receive_detail (parent_id,type_id,out_num,out_time,type,out_name) + values (#{id},#{typeId},#{outNum},now(),#{type},#{createBy}); + + diff --git a/sgzb-ui/src/api/claimAndRefund/secondStore.js b/sgzb-ui/src/api/claimAndRefund/secondStore.js index afe18f12..27348a0a 100644 --- a/sgzb-ui/src/api/claimAndRefund/secondStore.js +++ b/sgzb-ui/src/api/claimAndRefund/secondStore.js @@ -20,11 +20,11 @@ export function getOperateList(query) { // 出库/退库操作 -export function operate(query) { +export function operate(data) { return request({ url: '/material/secondaryWarehouse/operate', method: 'post', - params: query + data }) } diff --git a/sgzb-ui/src/views/claimAndRefund/secondStore/secondStore.vue b/sgzb-ui/src/views/claimAndRefund/secondStore/secondStore.vue index 6725f079..9471c366 100644 --- a/sgzb-ui/src/views/claimAndRefund/secondStore/secondStore.vue +++ b/sgzb-ui/src/views/claimAndRefund/secondStore/secondStore.vue @@ -148,6 +148,7 @@ --> - - - - - - - - + label="库存数量" + align="center" + key="8" + + prop="stockNum" + :show-overflow-tooltip="true" + v-if="leaseType == 1" + /> + @@ -258,7 +252,7 @@ size="mini" type="primary" @click="handleOut(scope.row)" - v-if="parseInt(scope.row.kcNum) > 0" + v-if="parseInt(scope.row.stockNum) > 0" > 出库 @@ -267,9 +261,9 @@ type="warning" @click="handleIn(scope.row)" v-if=" - parseInt(scope.row.ckNum) > 0 && - parseInt(scope.row.zkNum) < - parseInt(scope.row.ckNum) + parseInt(scope.row.receiveNum) > 0 && + parseInt(scope.row.stockNum) < + parseInt(scope.row.num) " > 退库 @@ -322,8 +316,8 @@ /> - - + + - + - + @@ -440,7 +434,7 @@ :inline="true" label-width="80px" > - + @@ -500,23 +494,29 @@ :show-overflow-tooltip="true" /> + { this.$modal.msgSuccess('操作成功') this.openOut = false @@ -846,19 +850,19 @@ export default { openRecords(row, type) { this.title = undefined this.openRecord = true - this.queryType = type + /*this.queryType = type this.dialogQuery.typeName = row.typeName this.dialogQuery.agreementId = row.agreementId this.dialogQuery.modelName = row.modelName this.dialogQuery.unitId = row.unitId - this.dialogQuery.typeId = row.typeId + this.dialogQuery.typeId = row.typeId*/ this.getDialogList() }, /** 查询列表 */ getDialogList() { this.dialogQuery.queryType = this.queryType - getRecords(this.dialogQuery).then((response) => { + getRecords().then((response) => { this.dialogList = response.rows this.dialogTotal = response.total }) diff --git a/sgzb-ui/src/views/warehouseManage/machinery/parts/index.vue b/sgzb-ui/src/views/warehouseManage/machinery/parts/index.vue index 7d9db317..7d5dd7ed 100644 --- a/sgzb-ui/src/views/warehouseManage/machinery/parts/index.vue +++ b/sgzb-ui/src/views/warehouseManage/machinery/parts/index.vue @@ -260,10 +260,11 @@ > 点击上传 @@ -284,8 +285,14 @@ align-items: center; margin-top: 20px "> - 确定 - 取消 + 确定 + 取消 @@ -376,16 +383,34 @@ export default { }, isEdit: false, // excel文件列表 - excelList: [] + fileList: [], + excelList: {} } }, created() { this.getList() }, methods: { + /** 确认上传excel */ + confirmUpload() { + console.log(this.fileList) + fileUpLoad(this.excelList).then(res => { + console.log(res) + if (res.code == 200) { + this.$modal.msgSuccess(res.msg) + this.openUpload = false + this.reset() + this.getList() + } else { + this.$modal.msgError(res.msg) + } + }).catch(err => { + console.log(err) + }) + }, /** 上传excel文件 */ - uploadExcel(file) { - console.log(file) + uploadExcel(obj) { + this.excelList = obj }, /** 上传excel文件前 */ beforeExcelUpload(file) { @@ -399,6 +424,11 @@ export default { excelError() { console.log('上传失败') }, + /** 关闭excel弹窗 */ + closeExcelDialog() { + this.excelList = {} + this.openUpload = false + }, /** 查询部门列表 */ getList() { console.log(this.queryParams) @@ -464,7 +494,7 @@ export default { handleUploadExcel() { this.reset() this.openUpload = true - }, + }, /** 展开/折叠操作 */ toggleExpandAll() { this.refreshTable = false