|
|
@@ -40,7 +40,6 @@ import org.springblade.los.business.sea.service.IPreContainersService;
|
|
|
import org.springblade.los.business.sea.vo.PreContainersVO;
|
|
|
import org.springblade.los.finance.fee.entity.FeeCenter;
|
|
|
import org.springblade.los.finance.fee.mapper.FeeCenterMapper;
|
|
|
-import org.springblade.los.finance.fee.service.IFeeCenterService;
|
|
|
import org.springblade.system.feign.ISysClient;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
@@ -97,7 +96,7 @@ public class PreContainersServiceImpl extends ServiceImpl<PreContainersMapper, P
|
|
|
if (bills == null) {
|
|
|
throw new RuntimeException("未找到单据信息");
|
|
|
}
|
|
|
- preContainers.setWhetherModifyJson(preContainers.getCntrTypeCode()+"+"+preContainers.getQuantity());
|
|
|
+ preContainers.setWhetherModifyJson(preContainers.getCntrTypeCode() + "+" + preContainers.getQuantity());
|
|
|
preContainers.setMeasurement(ObjectUtils.isNotNull(preContainers.getMeasurement()) ? preContainers.getMeasurement() : new BigDecimal("0.00"));
|
|
|
preContainers.setGrossWeight(ObjectUtils.isNotNull(preContainers.getGrossWeight()) ? preContainers.getGrossWeight() : new BigDecimal("0.00"));
|
|
|
preContainers.setQuantity(ObjectUtils.isNotNull(preContainers.getNumber()) ? preContainers.getNumber().intValue() : 0);
|
|
|
@@ -333,7 +332,7 @@ public class PreContainersServiceImpl extends ServiceImpl<PreContainersMapper, P
|
|
|
}
|
|
|
}
|
|
|
for (PreContainers preContainers : preContainersList) {
|
|
|
- preContainers.setWhetherModifyJson(preContainers.getCntrTypeCode()+"+"+preContainers.getQuantity());
|
|
|
+ preContainers.setWhetherModifyJson(preContainers.getCntrTypeCode() + "+" + preContainers.getQuantity());
|
|
|
if (preContainers.getId() == null) {
|
|
|
preContainers.setCreateTime(new Date());
|
|
|
preContainers.setCreateUser(AuthUtil.getUserId());
|
|
|
@@ -374,14 +373,23 @@ public class PreContainersServiceImpl extends ServiceImpl<PreContainersMapper, P
|
|
|
List<FeeCenter> feeCenterList = feeCenterMapper.selectList(new LambdaQueryWrapper<FeeCenter>()
|
|
|
.eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
|
|
|
.eq(FeeCenter::getIsDeleted, 0)
|
|
|
- .eq(FeeCenter::getPid, preContainersList.get(0).getPid())
|
|
|
- .in(FeeCenter::getUnitNo, cntrType));
|
|
|
+ .eq(FeeCenter::getPid, preContainersList.get(0).getPid()));
|
|
|
for (FeeCenter item : feeCenterList) {
|
|
|
- PreContainers preContainers = preContainersList.stream().filter(e -> e.getCntrTypeCode().equals(item.getUnitNo()))
|
|
|
- .findFirst().orElse(null);
|
|
|
- if (preContainers != null && item.getQuantity().compareTo(new BigDecimal(preContainers.getQuantity() + "")) != 0 &&
|
|
|
- "0,1".contains(item.getAuditStatus())) {
|
|
|
- item.setQuantity(new BigDecimal(preContainers.getQuantity() + ""));
|
|
|
+ boolean status = true;
|
|
|
+ if (cntrType.contains(item.getUnitNo())) {
|
|
|
+ PreContainers preContainers = preContainersList.stream().filter(e -> e.getCntrTypeCode().equals(item.getUnitNo()))
|
|
|
+ .findFirst().orElse(null);
|
|
|
+ if (preContainers != null && item.getQuantity().compareTo(new BigDecimal(preContainers.getQuantity() + "")) != 0 &&
|
|
|
+ "0,1".contains(item.getAuditStatus())) {
|
|
|
+ item.setQuantity(new BigDecimal(preContainers.getQuantity() + ""));
|
|
|
+ }
|
|
|
+ } else if ("箱量".equals(item.getUnitNo())) {
|
|
|
+ Integer quantity = preContainersList.stream().map(PreContainers::getQuantity).reduce(0, Integer::sum);
|
|
|
+ item.setQuantity(new BigDecimal(quantity + ""));
|
|
|
+ }else{
|
|
|
+ status = false;
|
|
|
+ }
|
|
|
+ if (status){
|
|
|
item.setAmount(item.getPrice().multiply(item.getQuantity()));
|
|
|
item.setAmountLoc(item.getAmount().multiply(item.getExrate()));
|
|
|
// 去税金额 = 数量quantity * 单价price
|