From 56dfe0d4bf81262622a1919cceb2b039fd356209 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 03 九月 2024 16:52:49 +0800
Subject: [PATCH] 代码提交 bug解决
---
ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java | 102 +++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 87 insertions(+), 15 deletions(-)
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java
index b49c0da..a334ef4 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java
@@ -1,8 +1,10 @@
package com.ruoyi.management.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.page.BeanUtils;
import com.ruoyi.common.core.utils.page.PageDTO;
import com.ruoyi.common.security.utils.SecurityUtils;
@@ -62,17 +64,72 @@
public PageDTO<VolumeProductionCkglVO> getslVolumeProductionCkglList(getslVolumeProductionCkglQuery VolumeProductionCkglQuery) {
Page<SlVolumeProductionCkgl> page = new Page<>(VolumeProductionCkglQuery.getPageCurr(), VolumeProductionCkglQuery.getPageSize());
+ LambdaQueryWrapper< SlVolumeProductionCkgl> wrapper1= Wrappers.lambdaQuery();
+ QueryWrapper<SlStoreManagement> storeManagementGrade = new QueryWrapper<SlStoreManagement>()
+ .eq("del_flag", "0");
getVolumeProductionRkQuery getVolume=new getVolumeProductionRkQuery();
getVolume.setSupplierPhone(VolumeProductionCkglQuery.getSupplierPhone());
getVolume.setSupplierName(VolumeProductionCkglQuery.getSupplierName());
List<SysUser> data1 = sysUserClient.getUserSupplierList(getVolume).getData();
+ SysUser sysUser = sysUserClient.getSysUser(SecurityUtils.getUserId()).getData();
+ List<Long> managementIds = new ArrayList<>();
+ if (sysUser!=null){
+ if (!sysUser.getUserType().equals("00")){
+ // 仓库管理员 根据仓库管理员的等级查询对应的仓库
+ switch (sysUser.getRoleType()){
+ case 3:
+ storeManagementGrade.ge("store_management_grade",3);
+ storeManagementGrade.eq("city_code",sysUser.getCityCode());
+ managementIds = slStoreManagementMapper.selectList(storeManagementGrade).stream()
+ .map(SlStoreManagement::getId).collect(Collectors.toList());
+ if (!managementIds.isEmpty()){
+ wrapper1.in(SlVolumeProductionCkgl::getManagementId,managementIds);
+ }
+ break;
+ case 4:
+ storeManagementGrade.ge("store_management_grade",4);
+ storeManagementGrade.eq("county_code",sysUser.getCountyCode());
+ managementIds = slStoreManagementMapper.selectList(storeManagementGrade).stream()
+ .map(SlStoreManagement::getId).collect(Collectors.toList());
+ if (!managementIds.isEmpty()){
+ wrapper1.in(SlVolumeProductionCkgl::getManagementId,managementIds);
+ }
+ break;
+ case 5:
+ storeManagementGrade.ge("store_management_grade",5);
+ storeManagementGrade.eq("town_code",sysUser.getTownCode());
+ managementIds = slStoreManagementMapper.selectList(storeManagementGrade).stream()
+ .map(SlStoreManagement::getId).collect(Collectors.toList());
+ if (!managementIds.isEmpty()){
+ wrapper1.in(SlVolumeProductionCkgl::getManagementId,managementIds);
+ }
+ break;
+ case 6:
+ storeManagementGrade.eq("store_management_grade",6);
+ storeManagementGrade.eq("town_code",sysUser.getTownCode());
+ managementIds = slStoreManagementMapper.selectList(storeManagementGrade).stream()
+ .map(SlStoreManagement::getId).collect(Collectors.toList());
+ if (!managementIds.isEmpty()){
+ wrapper1.in(SlVolumeProductionCkgl::getManagementId,managementIds);
+ }
+ break;
+ }
+
+ }
+
+ }
+
Set<Long> goodsSkuIdList = null;
goodsSkuIdList = data1.stream().map(SysUser::getUserId)
.collect(Collectors.toSet());
- LambdaQueryWrapper< SlVolumeProductionCkgl> wrapper1= Wrappers.lambdaQuery();
+ if (VolumeProductionCkglQuery.getPresentState()!=null &&VolumeProductionCkglQuery.getPresentState()!=0){
wrapper1.eq(SlVolumeProductionCkgl::getPresentState,VolumeProductionCkglQuery.getPresentState());
- wrapper1.eq(SlVolumeProductionCkgl::getAuditStatus,VolumeProductionCkglQuery.getAuditStatus());
+ }
+ if (VolumeProductionCkglQuery.getAuditStatus()!=null &&VolumeProductionCkglQuery.getAuditStatus()!=0){
+ wrapper1.eq(SlVolumeProductionCkgl::getAuditStatus,VolumeProductionCkglQuery.getAuditStatus());
+
+ }
if (goodsSkuIdList.size()>0){
wrapper1.in(SlVolumeProductionCkgl::getSysId,goodsSkuIdList);
}
@@ -93,9 +150,9 @@
}
@Override
- public void addslVolumeProductionCkgl(VolumeProductionCkglDTO volumeProductionCkglDTO) {
+ public String addslVolumeProductionCkgl(VolumeProductionCkglDTO volumeProductionCkglDTO) {
Long userid = SecurityUtils.getUserId();
- if (volumeProductionCkglDTO.getId()!=null){
+ if (volumeProductionCkglDTO.getId()==null){
SlVolumeProductionCkgl slVolumeProductionRkgl=new SlVolumeProductionCkgl();
slVolumeProductionRkgl.setAttachmentUrl(volumeProductionCkglDTO.getAttachmentUrl());
slVolumeProductionRkgl.setAuthorizationUrl(volumeProductionCkglDTO.getAuthorization());
@@ -106,7 +163,9 @@
slVolumeProductionRkgl.setSource(volumeProductionCkglDTO.getSource());
slVolumeProductionRkgl.setStartiTime(new Date());
slVolumeProductionRkgl.setSysId(userid);
+ slVolumeProductionRkgl.setCreateTime(new Date());
this.save(slVolumeProductionRkgl);
+ return slVolumeProductionRkgl.getId().toString();
}else{
SlVolumeProductionCkgl byId = this.getById(volumeProductionCkglDTO.getId());
if (volumeProductionCkglDTO.getSource()!=null){
@@ -119,27 +178,34 @@
byId.setAuthorizationUrl(volumeProductionCkglDTO.getAuthorization());
}
this.updateById(byId);
+ return volumeProductionCkglDTO.getId().toString();
}
}
@Override
public VolumeProductionCkglInfoVO getVolumeProductionCkglnfo(Long id) {
-
SlVolumeProductionCkgl byId = this.getById(id);
VolumeProductionCkglInfoVO v= BeanUtils.copyBean(byId, VolumeProductionCkglInfoVO.class);
+ v.setAuthorization(byId.getAuthorizationUrl());
SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId());
v.setStoreManagementName(slStoreManagement.getStoreManagementName());
+ v.setZhuren(slStoreManagement.getDirectorId());
+ v.setZhuguan(slStoreManagement.getCompetentId());
+ v.setGuanliyuan(slStoreManagement.getAdministratorId());
+ v.setReasonsRefusal(byId.getReasonsRefusal());
SysUser data1 = sysUserClient.getSysUser(Long.valueOf(byId.getSysId())).getData();
- v.setSysName(data1.getNickName());
- v.setSysPhone(data1.getPhonenumber());
- return null;
+ if (data1!=null){
+ v.setSysName(data1.getNickName());
+ v.setSysPhone(data1.getPhonenumber());
+ }
+ return v;
}
@Override
public VolumeProductionCkglInventoryVO getVolumeProductionCkglInventory(Long id) {
SlVolumeProductionCkgl byId = this.getById(id);
VolumeProductionCkglInventoryVO vo = new VolumeProductionCkglInventoryVO();
- SysUser data = sysUserClient.getSysUser(byId.getId()).getData();
+ SysUser data = sysUserClient.getSysUser(byId.getSysId()).getData();
vo.setSysPhone(data.getPhonenumber());
vo.setSysName(data.getNickName());
vo.setStartiTime(byId.getStartiTime());
@@ -213,11 +279,12 @@
wrapper1.orderByDesc(SlVolumeProductionCk::getCreateTime);
List<SlVolumeProductionCk> page2 = slVolumeProductionCkMapper.selectList(wrapper1);
for (SlVolumeProductionCk list : page2) {
+ list.setCkTime(new Date());
+ slVolumeProductionCkMapper.updateById(list);
SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
Long num =slVolumeProductionRk.getRepertoryZhai()-Long.valueOf(list.getCkNum());
slVolumeProductionRk.setRepertoryZhai(num);
slVolumeProductionRkMapper.updateById(slVolumeProductionRk);
-
LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId());
wrapper2.eq(ManagementGoodsMaterials::getManagementId,slVolumeProductionRk.getManagementId());
@@ -228,7 +295,7 @@
Long re1=repertoryZhai-Long.valueOf(list.getCkNum());
Integer num1= managementGoodsMaterials.getRepertoryChu()+list.getCkNum();
managementGoodsMaterials.setRepertoryZhai(re1);
- managementGoodsMaterials.setCheckNum(num1);
+ managementGoodsMaterials.setRepertoryChu(num1);
managementGoodsMaterialsMapper.updateById(managementGoodsMaterials);
}
}
@@ -248,13 +315,12 @@
List<SlVolumeProductionCk> page2 = slVolumeProductionCkMapper.selectList(wrapper1);
for (SlVolumeProductionCk list : page2) {
list.setIsGh(2);
+ list.setGhTime(new Date());
slVolumeProductionCkMapper.updateById(list);
-
SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
Long num =slVolumeProductionRk.getRepertoryZhai()+Long.valueOf(list.getGuihNum());
slVolumeProductionRk.setRepertoryZhai(num);
slVolumeProductionRkMapper.updateById(slVolumeProductionRk);
-
LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId());
wrapper2.eq(ManagementGoodsMaterials::getManagementId,slVolumeProductionRk.getManagementId());
@@ -263,12 +329,18 @@
if (managementGoodsMaterials!=null){
Long repertoryZhai = managementGoodsMaterials.getRepertoryZhai();
Long re1=repertoryZhai+Long.valueOf(list.getGuihNum());
- Integer m=managementGoodsMaterials.getCheckNum()-list.getCkNum();
+ Integer m=managementGoodsMaterials.getRepertoryChu()-list.getGuihNum();
Integer m1=list.getCkNum()-list.getGuihNum();
Integer m2=managementGoodsMaterials.getRepertoryYishi()+m1;
managementGoodsMaterials.setRepertoryChu(m);
managementGoodsMaterials.setRepertoryZhai(re1);
- managementGoodsMaterials.setRepertoryYishi(m2);
+ SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(list.getMaterialsId());
+ if (slGoodsMaterials != null) {
+ if (slGoodsMaterials.getIsConsume() == 1){
+ // 非消耗品才计算遗失
+ managementGoodsMaterials.setRepertoryYishi(m2);
+ }
+ }
managementGoodsMaterialsMapper.updateById(managementGoodsMaterials);
}
}
--
Gitblit v1.7.1