From db1a8cd3c7d8423f39bb2bf47bc908d78e3db622 Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期二, 14 十一月 2023 16:00:00 +0800
Subject: [PATCH] 添加时间筛选条件
---
lxzn-module-eam/src/main/java/org/jeecg/modules/spare/service/impl/SparePartCancellingStocksDetailServiceImpl.java | 89 +++++++++++++++++++++++++++++++++++++++-----
1 files changed, 79 insertions(+), 10 deletions(-)
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/spare/service/impl/SparePartCancellingStocksDetailServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/spare/service/impl/SparePartCancellingStocksDetailServiceImpl.java
index ae3c2b2..ec9b129 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/spare/service/impl/SparePartCancellingStocksDetailServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/spare/service/impl/SparePartCancellingStocksDetailServiceImpl.java
@@ -1,20 +1,31 @@
package org.jeecg.modules.spare.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.system.api.ISysBaseAPI;
+import org.jeecg.common.system.vo.DictModel;
import org.jeecg.modules.spare.entity.*;
import org.jeecg.modules.spare.mapper.SparePartCancellingStocksDetailMapper;
-import org.jeecg.modules.spare.service.ISparePartCancellingStocksDetailService;
-import org.jeecg.modules.spare.service.ISparePartCancellingStocksService;
-import org.jeecg.modules.spare.service.ISparePartService;
-import org.jeecg.modules.spare.service.ISparesPartInventoryService;
+import org.jeecg.modules.spare.service.*;
+import org.jeecg.modules.system.entity.SysRole;
+import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.service.ISysDictService;
+import org.jeecg.modules.system.service.ISysRoleService;
+import org.jeecg.modules.system.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -39,6 +50,26 @@
@Autowired
private ISparePartService sparePartService;
+
+ @Autowired
+ @Lazy
+ private ISparePartOutboundService sparePartOutboundService;
+
+ @Autowired
+ @Lazy
+ private ISysDictService sysDictService;
+
+ @Autowired
+ @Lazy
+ private ISysRoleService sysRoleService;
+
+ @Autowired
+ @Lazy
+ private ISysUserService sysUserService;
+
+ @Autowired
+ @Lazy
+ private ISysBaseAPI sysBaseAPI;
@Override
@@ -74,29 +105,29 @@
//3.鑾峰彇涓� 杈呭崟浣嶈浆鎹㈡瘮渚�
SparePart sparePart = sparePartService.getById(sparePartId);
- String conversionRatio = sparePart.getConversionRatio();
+ /* String conversionRatio = sparePart.getConversionRatio();
double conversionRatioD = 0;
if (StringUtils.isBlank(conversionRatio)) {
conversionRatioD = Double.parseDouble("0");
} else {
conversionRatioD = Double.parseDouble(conversionRatio);
}
- BigDecimal conversionRatioB = new BigDecimal(conversionRatioD);
+ BigDecimal conversionRatioB = new BigDecimal(conversionRatioD);*/
//4.璁$畻鍑哄簱鏁伴噺鏇存柊搴撳瓨鏁伴噺(搴撳瓨)
Double mainQuantity = sparesPartInventory.getMainQuantity();
BigDecimal mainQuantityB = new BigDecimal(mainQuantity);
/*浠撳簱杈呮暟閲�*/
Double auxiliaryQuantity = sparesPartInventory.getAuxiliaryQuantity();
- BigDecimal auxiliaryQuantityB = new BigDecimal(auxiliaryQuantity);
+ /* BigDecimal auxiliaryQuantityB = new BigDecimal(auxiliaryQuantity);*/
BigDecimal mainQuantitySubtract = mainQuantityB.add(outboundMainQuantityB);//鍔犲悗鐨勫簱瀛樹富鏁伴噺
- BigDecimal outboundAuxiliaryQuantity = outboundMainQuantityB.multiply(conversionRatioB);//鍑哄簱杈呮暟閲�
+ /* BigDecimal outboundAuxiliaryQuantity = outboundMainQuantityB.multiply();*///鍑哄簱杈呮暟閲�
/*杈呮暟閲�=浠撳簱杈呮暟閲�+鍑哄簱鐨勮緟鏁伴噺锛堝嚭搴撴暟閲�*璁$畻姣斾緥锛�*/
- BigDecimal auxiliaryQuantitySubtract = auxiliaryQuantityB.add(outboundAuxiliaryQuantity);//鍔犲悗鐨勫簱瀛樿緟鏁伴噺
+ /* BigDecimal auxiliaryQuantitySubtract = auxiliaryQuantityB.add(outboundAuxiliaryQuantity);//鍔犲悗鐨勫簱瀛樿緟鏁伴噺*/
sparesPartInventory.setMainQuantity(mainQuantitySubtract.doubleValue());
- sparesPartInventory.setAuxiliaryQuantity(auxiliaryQuantitySubtract.doubleValue());
+ /* sparesPartInventory.setAuxiliaryQuantity(auxiliaryQuantitySubtract.doubleValue());*/
boolean b = sparesPartInventoryService.updateById(sparesPartInventory);
if (!b) {
@@ -115,6 +146,44 @@
sparePartCancellingStocks.setStatus("4");
sparePartCancellingStocksService.updateById(sparePartCancellingStocks);
}
+
+ //6.鍒ゆ柇鍑哄簱鍚庡簱瀛樻槸鍚︿綆浜庡畨鍏ㄥ簱瀛樻垨鍑虹幇绉帇鎯呭喌
+ List roleList = new ArrayList<>();
+ List<DictModel> dictModelList = sysDictService.getDictItems("warehouse_message");
+ for(DictModel dictModel : dictModelList){
+ roleList.add(dictModel.getText());
+ }
+ QueryWrapper<SysRole> queryWrapper = Wrappers.query();
+ queryWrapper.in("role_code", roleList);
+ List<SysRole> sysRoleList = sysRoleService.list(queryWrapper);
+ List<SysUser> sysUsers = new ArrayList<>();
+ for (SysRole sysRole : sysRoleList) {
+ sysUsers.addAll(sysUserService.getAllUsersByRoleId(sysRole.getId()));
+ }
+ double quantity = 0.0;
+ List<SparesPartInventory> sparesPartInventoryList = sparesPartInventoryService.lambdaQuery().eq(SparesPartInventory::getSparePartId,sparesPartInventory.getSparePartId()).eq(SparesPartInventory::getDelFlag, CommonConstant.DEL_FLAG_0).list();
+ for(SparesPartInventory sparesPartInventory1 : sparesPartInventoryList){
+ quantity = quantity + sparesPartInventory1.getMainQuantity();
+ }
+ if(quantity < sparePart.getInventoryLowerLimit()){
+ String messageTitle;
+ String messageContent;
+ String sysTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
+ messageTitle = "绯荤粺娑堟伅锛氬浠剁紪鐮佷负 " + sparePart.getNum() + " 鐨勫浠跺簱瀛橀噺涓嶈冻锛岃鍙婃椂澶勭悊!";
+ messageContent = "绯荤粺娑堟伅锛氬浠剁紪鐮侊細" + sparePart.getNum() + " 鐨勫浠跺簱瀛橀噺宸蹭綆浜庡畨鍏ㄥ簱瀛�!" + "\n" + "娑堟伅鏃堕棿:" + sysTime + "\n";
+ for (SysUser sysUser : sysUsers) {
+ sysBaseAPI.sendAnnouncement("admin", sysUser.getUsername(), messageTitle, messageContent);
+ }
+ }else if(quantity > sparePart.getInventoryUpperLimit()){
+ String messageTitle;
+ String messageContent;
+ String sysTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
+ messageTitle = "绯荤粺娑堟伅锛氬浠剁紪鐮佷负 " + sparePart.getNum() + " 鐨勫浠跺嚭鐜扮Н鍘嬫儏鍐碉紝璇峰強鏃跺鐞�!";
+ messageContent = "绯荤粺娑堟伅锛氬浠剁紪鐮佷负 " + sparePart.getNum() + " 鐨勫浠跺簱瀛橀噺宸查珮浜庡簱瀛樹笂闄愬�硷紝鍑虹幇绉帇鎯呭喌!" + "\n" + "娑堟伅鏃堕棿:" + sysTime + "\n";
+ for (SysUser sysUser : sysUsers) {
+ sysBaseAPI.sendAnnouncement("admin", sysUser.getUsername(), messageTitle, messageContent);
+ }
+ }
return true;
}
--
Gitblit v1.9.3