修bug
This commit is contained in:
@ -111,7 +111,7 @@ public interface IMatMaterialsService extends IService<MatMaterials> {
|
||||
/**
|
||||
* 生成材料并入库
|
||||
*/
|
||||
void create(Long projectId, List<MatMaterialReceiveItemDto> itemList);
|
||||
void create(Long projectId, List<MatMaterialReceiveItemDto> itemList,String nickname);
|
||||
|
||||
/**
|
||||
* 获取材料库存数据列表
|
||||
|
@ -21,6 +21,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||
import org.dromara.common.oss.core.OssClient;
|
||||
import org.dromara.common.oss.exception.OssException;
|
||||
import org.dromara.common.oss.factory.OssFactory;
|
||||
import org.dromara.common.satoken.utils.LoginHelper;
|
||||
import org.dromara.common.utils.DocumentUtil;
|
||||
import org.dromara.materials.constants.MatMaterialsConstant;
|
||||
import org.dromara.materials.domain.MatMaterialReceive;
|
||||
@ -232,6 +233,7 @@ public class MatMaterialReceiveServiceImpl extends ServiceImpl<MatMaterialReceiv
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insertByBo(MatMaterialReceiveCreateReq req) {
|
||||
String nickname = LoginHelper.getLoginUser().getNickname();
|
||||
MatMaterialReceive materialReceive = new MatMaterialReceive();
|
||||
BeanUtils.copyProperties(req, materialReceive);
|
||||
validEntityBeforeSave(materialReceive, true);
|
||||
@ -268,7 +270,7 @@ public class MatMaterialReceiveServiceImpl extends ServiceImpl<MatMaterialReceiv
|
||||
//生成缺货采购单
|
||||
purchaseDocService.create(materialReceive.getDocId(), map);
|
||||
//生成库存
|
||||
materialsService.create(materialReceive.getProjectId(), itemList);
|
||||
materialsService.create(materialReceive.getProjectId(), itemList, nickname);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
@ -10,7 +10,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.dromara.common.core.constant.HttpStatus;
|
||||
import org.dromara.common.core.domain.model.LoginUser;
|
||||
import org.dromara.common.core.exception.ServiceException;
|
||||
import org.dromara.common.core.utils.ObjectUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
@ -354,7 +353,7 @@ public class MatMaterialsServiceImpl extends ServiceImpl<MatMaterialsMapper, Mat
|
||||
|
||||
@Override
|
||||
@Async
|
||||
public void create(Long projectId, List<MatMaterialReceiveItemDto> itemList) {
|
||||
public void create(Long projectId, List<MatMaterialReceiveItemDto> itemList, String nickname) {
|
||||
for (MatMaterialReceiveItemDto item : itemList) {
|
||||
|
||||
Long materialsId;
|
||||
@ -386,10 +385,7 @@ public class MatMaterialsServiceImpl extends ServiceImpl<MatMaterialsMapper, Mat
|
||||
req.setOutPut(MatMaterialsInventoryOutPutEnum.PUT.getValue());
|
||||
req.setNumber(item.getAcceptedQuantity().longValue());
|
||||
req.setOutPutTime(new Date());
|
||||
LoginUser loginUser = LoginHelper.getLoginUser();
|
||||
if (loginUser != null) {
|
||||
req.setOperator(loginUser.getNickname());
|
||||
}
|
||||
req.setOperator(nickname);
|
||||
materialsInventoryService.insertByBo(req);
|
||||
}
|
||||
}
|
||||
|
@ -35,6 +35,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.time.LocalDate;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
@ -334,7 +335,7 @@ public class PgsProgressPlanServiceImpl extends ServiceImpl<PgsProgressPlanMappe
|
||||
BigDecimal total = progressCategory.getTotal();
|
||||
// 百分比项目需乘以总数
|
||||
if (progressCategory.getUnitType().equals(PgsProgressUnitTypeEnum.PERCENTAGE.getValue())) {
|
||||
planNumber = planNumber.multiply(total);
|
||||
planNumber = planNumber.multiply(total).divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP);
|
||||
unitTypeMsg = "百分比";
|
||||
}
|
||||
if (planNumber.compareTo(BigDecimal.ZERO) <= 0) {
|
||||
@ -348,9 +349,9 @@ public class PgsProgressPlanServiceImpl extends ServiceImpl<PgsProgressPlanMappe
|
||||
// 如果计划数量大于未完成和计划的数量,则计划数量不合法
|
||||
BigDecimal planAndFinishedNumberNumber = this.getCurrentPlanAndFinishedNumber(progressCategory);
|
||||
// 百分比项目需乘以总数
|
||||
if (progressCategory.getUnitType().equals(PgsProgressUnitTypeEnum.PERCENTAGE.getValue())) {
|
||||
/* if (progressCategory.getUnitType().equals(PgsProgressUnitTypeEnum.PERCENTAGE.getValue())) {
|
||||
planAndFinishedNumberNumber = planAndFinishedNumberNumber.multiply(total);
|
||||
}
|
||||
}*/
|
||||
BigDecimal leftNumber = total.subtract(planAndFinishedNumberNumber);
|
||||
if (planNumber.compareTo(leftNumber) > 0) {
|
||||
throw new ServiceException("计划" + unitTypeMsg + "不能大于当前完成" + unitTypeMsg + "和计划" + unitTypeMsg + "总和", HttpStatus.BAD_REQUEST);
|
||||
|
Reference in New Issue
Block a user