diff --git a/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/DictTypeConstants.java b/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/DictTypeConstants.java index 32be3bd7..f728351f 100644 --- a/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/DictTypeConstants.java +++ b/win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/DictTypeConstants.java @@ -83,4 +83,5 @@ public interface DictTypeConstants { String JOB_STATUS = "job_status";//任务状态 String JOB_STAGE_STATUS = "job_stage_status";//任务阶段状态 String COUNT_STAGE = "count_stage"; //阶段 + String BIND_TYPE = "bind_type"; // 器具绑定类型 } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java index 2733cf5d..e68cc9fc 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java @@ -1,6 +1,9 @@ package com.win.module.wms.controller.index; import com.win.framework.common.pojo.CommonResult; +import com.win.module.wms.service.issueRequest.IssueRequestMainService; +import com.win.module.wms.service.location.LocationService; +import com.win.module.wms.service.preparetoissue.PreparetoissueMainService; import com.win.module.wms.service.purchase.PurchaseMainService; import com.win.module.wms.service.purchasePlan.PurchasePlanMainService; import com.win.module.wms.service.purchaseclaimRecord.PurchaseclaimRecordDetailService; @@ -38,10 +41,16 @@ public class IndexController { private PurchasereturnRecordDetailService purchasereturnRecordDetailService; @Resource private PurchaseclaimRecordDetailService purchaseclaimRecordDetailService; + @Resource + private PreparetoissueMainService preparetoissueMainService; + @Resource + private IssueRequestMainService issueRequestMainService; + @Resource + private LocationService locationService; - @GetMapping("/indexSupplierde") + @GetMapping("/indexSupplier") @Operation(summary = "供应商首页") - public CommonResult> indexSupplierde() { + public CommonResult> indexSupplier() { Map dataMap = new HashMap<>(); dataMap.put("openPurchaseCount", purchaseMainService.getPurchaseCount(true));//开放订单数 dataMap.put("allPurchaseCount", purchaseMainService.getPurchaseCount(false));//全部订单数 @@ -56,4 +65,15 @@ public class IndexController { return success(dataMap); } + @GetMapping("/indexMaterial") + @Operation(summary = "原料管理员首页") + public CommonResult> indexMaterial() { + Map dataMap = new HashMap<>(); + dataMap.put("preparetoissueTodayCount", preparetoissueMainService.getPreparetoissueToday());//今日备料计划(已发料) + dataMap.put("issueRequestTodayCount", issueRequestMainService.getIssueRequestToday());//今日叫料请求(已发料) + dataMap.put("freeLocationCount", locationService.getFreeLocationCount());//空闲库位数 + dataMap.put("totalLocationCount", locationService.getTotalLocationCount());//总库位数 + return success(dataMap); + } + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailExportReqVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailExportReqVO.java index 5bc2f39e..56880c9b 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailExportReqVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailExportReqVO.java @@ -99,4 +99,7 @@ public class ProductrepairRecordDetailExportReqVO { @Schema(description = "任务明细ID") private String jobDetailId; + @Schema(description = "主键ID") + private Long masterId; + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailPageReqVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailPageReqVO.java index 2c33d053..469f680d 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailPageReqVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productrepairRecord/vo/ProductrepairRecordDetailPageReqVO.java @@ -101,4 +101,7 @@ public class ProductrepairRecordDetailPageReqVO extends PageParam { @Schema(description = "任务明细ID") private String jobDetailId; + @Schema(description = "主键ID") + private Long masterId; + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/vo/TransferissueRecordMainBaseVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/vo/TransferissueRecordMainBaseVO.java index 32666b57..9bba4166 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/vo/TransferissueRecordMainBaseVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/transferissueRecord/vo/TransferissueRecordMainBaseVO.java @@ -24,7 +24,6 @@ public class TransferissueRecordMainBaseVO { private Long id; @Schema(description = "申请单号", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "申请单号不能为空") private String requestNumber; @Schema(description = "任务单号") @@ -40,35 +39,28 @@ public class TransferissueRecordMainBaseVO { private String vehiclePlateNumber; @Schema(description = "从仓库代码", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "从仓库代码不能为空") private String fromWarehouseCode; @Schema(description = "到仓库代码", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "到仓库代码不能为空") private String toWarehouseCode; @Schema(description = "代码", requiredMode = Schema.RequiredMode.REQUIRED) private String code; @Schema(description = "接口类型", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "接口类型不能为空") private String interfaceType; @Schema(description = "出库事务类型", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "出库事务类型不能为空") private String outTransactionType; @Schema(description = "入库事务类型", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "入库事务类型不能为空") private String inTransactionType; @Schema(description = "执行时间", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "执行时间不能为空") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime executeTime; @Schema(description = "生效日期", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "生效日期不能为空") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime activeDate; @@ -81,27 +73,22 @@ public class TransferissueRecordMainBaseVO { private LocalDateTime dueTime; @Schema(description = "部门", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "部门不能为空") private String departmentCode; @Schema(description = "单据号", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "单据号不能为空") private String number; @Schema(description = "业务类型", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "业务类型不能为空") private String businessType; @Schema(description = "备注") private String remark; @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "创建时间不能为空") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime createTime; @Schema(description = "创建者Id", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "创建者Id不能为空") private String creator; @Schema(description = "从月台代码") @@ -120,7 +107,6 @@ public class TransferissueRecordMainBaseVO { private String toAreaCodes; @Schema(description = "是否可用", requiredMode = Schema.RequiredMode.REQUIRED) - @NotNull(message = "是否可用不能为空") private String available; } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productrepairRecord/ProductrepairRecordDetailMapper.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productrepairRecord/ProductrepairRecordDetailMapper.java index 2060becc..6e501f9f 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productrepairRecord/ProductrepairRecordDetailMapper.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productrepairRecord/ProductrepairRecordDetailMapper.java @@ -49,6 +49,7 @@ public interface ProductrepairRecordDetailMapper extends BaseMapperX getBalanceByBatchOffShelf(String itemCode, BigDecimal qty); + + /** + * 今日叫料请求(已发料) + * @return 退货明细 + */ + Long getIssueRequestToday(); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/issueRequest/IssueRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/issueRequest/IssueRequestMainServiceImpl.java index eadd9da7..e40e1406 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/issueRequest/IssueRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/issueRequest/IssueRequestMainServiceImpl.java @@ -4,11 +4,11 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.exceptions.UtilException; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.win.framework.common.exception.ServiceException; import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.PageResult; import com.win.framework.common.util.validation.ValidationUtils; -import com.win.framework.dict.core.util.DictFrameworkUtils; import com.win.module.infra.api.trends.TrendsApi; import com.win.module.infra.enums.TrendsTypeEnum; import com.win.module.system.api.dict.DictDataApi; @@ -39,7 +39,6 @@ import com.win.module.wms.dal.mysql.issueJob.IssueJobDetailMapper; import com.win.module.wms.dal.mysql.issueJob.IssueJobMainMapper; import com.win.module.wms.dal.mysql.issueRequest.IssueRequestDetailMapper; import com.win.module.wms.dal.mysql.issueRequest.IssueRequestMainMapper; -import com.win.module.wms.enums.DictTypeConstants; import com.win.module.wms.enums.job.JobStatusEnum; import com.win.module.wms.enums.request.RequestStatusEnum; import com.win.module.wms.enums.request.RequestStatusState; @@ -775,4 +774,14 @@ public class IssueRequestMainServiceImpl implements IssueRequestMainService { }); return issueJobDetailDOList; } + + @Override + public Long getIssueRequestToday() { + LocalDateTime endTime = LocalDateTime.now(); + LocalDateTime beginTime = endTime.withHour(0).withMinute(0).withSecond(0).withNano(0); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.between("create_time", beginTime, endTime); + queryWrapper.inSql("number", "SELECT DISTINCT request_number FROM record_issue_main WHERE request_number=request_issue_main.number"); + return issueRequestMainMapper.selectCount(queryWrapper); + } } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationService.java index e9869d55..40c5c770 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationService.java @@ -98,4 +98,16 @@ public interface LocationService { * @return */ LocationDO inspectLocation(RuleRespVO ruleRespVO, String itemCode, String batch, String inventoryStatus); + + /** + * 获取总库位数 + * @return 总库位数 + */ + Long getTotalLocationCount(); + + /** + * 获取空闲库位数 + * @return 空闲库位数 + */ + Long getFreeLocationCount(); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationServiceImpl.java index 9298cb37..29dc0bc6 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationServiceImpl.java @@ -380,6 +380,23 @@ public class LocationServiceImpl implements LocationService { return locationDOList.get(0); } + @Override + public Long getTotalLocationCount() { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("available", "TRUE"); + queryWrapper.eq("`type`", "RAW"); + return locationMapper.selectCount(queryWrapper); + } + + @Override + public Long getFreeLocationCount() { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("available", "TRUE"); + queryWrapper.eq("`type`", "RAW"); + queryWrapper.inSql("`code`", "SELECT location_code FROM (SELECT location_code,SUM(qty) qty FROM transaction_balance GROUP BY location_code HAVING qty>0) t1"); + return locationMapper.selectCount(queryWrapper); + } + /** * 判断优先空库位和非空库位 * diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/preparetoissue/PreparetoissueMainService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/preparetoissue/PreparetoissueMainService.java index 47904795..df406b3d 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/preparetoissue/PreparetoissueMainService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/preparetoissue/PreparetoissueMainService.java @@ -105,4 +105,9 @@ public interface PreparetoissueMainService { Integer resettingProductionMain(Long id); + /** + * 今日备料计划(已发料) + * @return 退货明细 + */ + Long getPreparetoissueToday(); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/preparetoissue/PreparetoissueMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/preparetoissue/PreparetoissueMainServiceImpl.java index 1088d1b4..199222dc 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/preparetoissue/PreparetoissueMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/preparetoissue/PreparetoissueMainServiceImpl.java @@ -1,5 +1,6 @@ package com.win.module.wms.service.preparetoissue; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.win.framework.common.exception.ServiceException; import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.PageResult; @@ -9,15 +10,11 @@ import com.win.module.system.api.dict.DictDataApi; import com.win.module.system.api.serialnumber.SerialNumberApi; import com.win.module.system.api.user.AdminUserApi; import com.win.module.system.enums.serialNumber.RuleCodeEnum; -import com.win.module.wms.controller.bom.vo.BomExportReqVO; import com.win.module.wms.controller.issueRequest.vo.IssueRequestDetailCreateReqVO; import com.win.module.wms.controller.issueRequest.vo.IssueRequestMainCreateReqVO; import com.win.module.wms.controller.preparetoissue.vo.*; import com.win.module.wms.convert.preparetoissue.PreparetoissueDetailConvert; import com.win.module.wms.convert.preparetoissue.PreparetoissueMainConvert; -import com.win.module.wms.convert.production.ProductionDetailConvert; -import com.win.module.wms.convert.production.ProductionMainConvert; -import com.win.module.wms.dal.dataobject.bom.BomDO; import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; import com.win.module.wms.dal.dataobject.preparetoissue.PreparetoissueDetailDO; @@ -26,7 +23,6 @@ import com.win.module.wms.dal.dataobject.production.ProductionDetailDO; import com.win.module.wms.dal.dataobject.production.ProductionMainDO; import com.win.module.wms.dal.mysql.preparetoissue.PreparetoissueDetailMapper; import com.win.module.wms.dal.mysql.preparetoissue.PreparetoissueMainMapper; -import com.win.module.wms.enums.plan.PlanStatusEnum; import com.win.module.wms.enums.plan.PlanStatusState; import com.win.module.wms.enums.request.RequestStatusEnum; import com.win.module.wms.service.bom.BomService; @@ -45,7 +41,11 @@ import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.math.BigDecimal; -import java.util.*; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Map; import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.win.framework.web.core.util.WebFrameworkUtils.getLoginUserId; @@ -285,6 +285,16 @@ public class PreparetoissueMainServiceImpl implements PreparetoissueMainService return preparetoissueMainMapper.updateById(mainDO); } + @Override + public Long getPreparetoissueToday() { + LocalDateTime endTime = LocalDateTime.now(); + LocalDateTime beginTime = endTime.withHour(0).withMinute(0).withSecond(0).withNano(0); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.between("create_time", beginTime, endTime); + queryWrapper.inSql("number", "SELECT DISTINCT preparetoissue_plan_number FROM record_issue_main WHERE preparetoissue_plan_number=plan_preparetoissue_main.number"); + return preparetoissueMainMapper.selectCount(queryWrapper); + } + /** * 新增校验 * @param detailDo diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java index b1ce5e48..49af88c5 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productrepairRequest/ProductrepairRequestMainServiceImpl.java @@ -189,7 +189,7 @@ public class ProductrepairRequestMainServiceImpl implements ProductrepairRequest transactionCreateReqVO.setContainerNumber(null); transactionCreateReqVO.setAmount(BigDecimal.ZERO); transactionCreateReqVO.setWarehouseCode(productrepairRecordMainDO.getFromWarehouseCode()); - transactionCreateReqVO.setLocationCode(productrepairRecordDetailDO.getToLocationCode()); + transactionCreateReqVO.setLocationCode(consumeRecordDetailbDO.getFromLocationCode()); transactionCreateReqVOList.add(transactionCreateReqVO); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productscrapRequest/RawscrapRequestDetailServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productscrapRequest/RawscrapRequestDetailServiceImpl.java index 3b7b1374..518f9b02 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productscrapRequest/RawscrapRequestDetailServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productscrapRequest/RawscrapRequestDetailServiceImpl.java @@ -135,7 +135,7 @@ public class RawscrapRequestDetailServiceImpl implements RawscrapRequestDetailSe rawscrapRequestDetailDO.setInventoryStatus(balanceDO.getInventoryStatus()); rawscrapRequestDetailDO.setBatch(balanceDO.getBatch()); rawscrapRequestDetailDO.setPackingNumber(balanceDO.getPackingNumber()); - rawscrapRequestDetailDO.setFromLocationCode(balanceDO.getLocationCode()); + rawscrapRequestDetailDO.setFromLocationCode(detailDO.getFromLocationCode()); rawscrapRequestDetailDO.setCreateTime(LocalDateTime.now()); rawscrapRequestDetailDO.setCreator(null); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRecord/TransferissueRecordMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRecord/TransferissueRecordMainServiceImpl.java index 230eeb5d..467a1946 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRecord/TransferissueRecordMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/transferissueRecord/TransferissueRecordMainServiceImpl.java @@ -26,6 +26,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Collection; @@ -81,6 +82,8 @@ public class TransferissueRecordMainServiceImpl implements TransferissueRecordMa transferissueRecordMainDO.setId(null); transferissueRecordMainDO.setCreator(null); transferissueRecordMainDO.setCreateTime(LocalDateTime.now()); + transferissueRecordMainDO.setFromAreaCodes(businesstypeDO.getOutAreaCodes()); + transferissueRecordMainDO.setToAreaCodes(businesstypeDO.getInAreaCodes()); transferissueRecordMainMapper.insert(transferissueRecordMainDO); //库存事务 List transactionCreateReqVOList = new ArrayList<>(); @@ -109,6 +112,7 @@ public class TransferissueRecordMainServiceImpl implements TransferissueRecordMa transactionCreateReqVO.setWarehouseCode(transferissueRecordMainDO.getToWarehouseCode()); transactionCreateReqVO.setRecordNumber(number); transactionCreateReqVO.setId(null); + transactionCreateReqVO.setAmount(BigDecimal.ZERO); transactionCreateReqVOList.add(transactionCreateReqVO); } //增加库存事务