Browse Source

2024年2月2日17:36:16

纪新园 1 year ago
parent
commit
267498d5a0

+ 28 - 3
blade-service/blade-los/src/main/java/org/springblade/los/business/customsDeclaration/service/impl/CustomsDeclarationServiceImpl.java

@@ -21,6 +21,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import io.seata.spring.annotation.GlobalTransactional;
 import lombok.AllArgsConstructor;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
@@ -51,6 +52,7 @@ import org.springblade.los.finance.fee.service.IFeeCenterService;
 import org.springblade.los.finance.fee.service.IFinAccBillsService;
 import org.springblade.system.feign.ISysClient;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import java.math.BigDecimal;
@@ -284,11 +286,32 @@ public class CustomsDeclarationServiceImpl extends ServiceImpl<CustomsDeclaratio
 	}
 
 	@Override
+	@Transactional(rollbackFor = Exception.class)
+	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
 	public CustomsDeclaration checkCustomsDeclaration(CustomsDeclaration customsDeclaration) {
 		CustomsDeclaration declare = baseMapper.selectById(customsDeclaration.getId());
-		Integer actId = 1118;
-		String processType = "报关审核";
-		String checkType = "BGDJ";
+		Integer actId = null;
+		String processType = "";
+		String checkType = "";
+		if ("BGSE".equals(declare.getBusinessType())) {
+			actId = 1118;
+			processType = "海运出口报关审核";
+			checkType = "BGSE";
+		} else if ("BGSI".equals(declare.getBusinessType())) {
+			actId = 1119;
+			processType = "海运进口报关审核";
+			checkType = "BGSI";
+		}
+		else if ("BGAE".equals(declare.getBusinessType())) {
+			actId = 1120;
+			processType = "空运出口报关审核";
+			checkType = "BGAE";
+		}
+		else if ("BGAI".equals(declare.getBusinessType())) {
+			actId = 1121;
+			processType = "空运进口报关审核";
+			checkType = "BGAI";
+		}
 		//审批数据
 		LosAuditProecessDTO auditProecessDTO = new LosAuditProecessDTO();
 		//获取审批级次
@@ -359,6 +382,8 @@ public class CustomsDeclarationServiceImpl extends ServiceImpl<CustomsDeclaratio
 	}
 
 	@Override
+	@Transactional(rollbackFor = Exception.class)
+	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
 	public CustomsDeclaration revokeCheckCustomsDeclaration(CustomsDeclaration customsDeclaration) {
 		CustomsDeclaration declare = baseMapper.selectById(customsDeclaration.getId());
 		if (3 == declare.getStatus()) {

+ 5 - 1
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/BillsServiceImpl.java

@@ -322,7 +322,7 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 		Integer GP48 = 0;
 		StringBuilder boxTypeSum = new StringBuilder();
 		if (ObjectUtils.isNotNull(bills.getPreContainersList())) {
-			bills.setTeu(bills.getPreContainersList().stream().map(PreContainers::getTeu).reduce(BigDecimal.ZERO,BigDecimal::add).intValue());
+			BigDecimal teu = new BigDecimal("0.00");
 			for (PreContainers item : bills.getPreContainersList()) {
 				item.setPid(bills.getId());
 				if ("20GP".equals(item.getCntrTypeCode())) {
@@ -337,7 +337,11 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 					GP48 += item.getQuantity();
 				}
 				boxTypeSum.append(item.getCntrTypeCode()).append("*").append(item.getQuantity()).append(",");
+				if (ObjectUtils.isNotNull(item.getQuantity()) && ObjectUtils.isNotNull(item.getTeu())){
+					teu = teu.add(new BigDecimal(item.getQuantity()).multiply(item.getTeu()));
+				}
 			}
+			bills.setTeu(teu.intValue());
 			R res = preContainersService.submitList(bills.getPreContainersList());
 			if (!res.isSuccess()) {
 				throw new RuntimeException("保存失败");

+ 7 - 1
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/PreContainersServiceImpl.java

@@ -219,7 +219,13 @@ public class PreContainersServiceImpl extends ServiceImpl<PreContainersMapper, P
 			bills.setUpdateUser(AuthUtil.getUserId());
 			bills.setUpdateTime(new Date());
 			bills.setUpdateUserName(AuthUtil.getUserName());
-			bills.setTeu(preContainersList.stream().map(PreContainers::getTeu).reduce(BigDecimal.ZERO, BigDecimal::add).intValue());
+			BigDecimal teu = new BigDecimal("0.00");
+			for (PreContainers preContainers : preContainersList) {
+				if (ObjectUtils.isNotNull(preContainers.getQuantity()) && ObjectUtils.isNotNull(preContainers.getTeu())){
+					teu = teu.add(new BigDecimal(preContainers.getQuantity()).multiply(preContainers.getTeu()));
+				}
+			}
+			bills.setTeu(teu.intValue());
 			billsMapper.updateById(bills);
 		}
 		List<Containers> containersList = new ArrayList<>();

+ 2 - 1
blade-service/blade-los/src/main/java/org/springblade/los/check/controller/AuditProecessController.java

@@ -228,7 +228,8 @@ public class AuditProecessController extends BladeController {
 			auditProecessService.losBillsCheck(auditProecess);
 		}else if ("KYCK-DJ".equals(proecess.getCheckType()) || "KYJK-DJ".equals(proecess.getCheckType())) {
 			auditProecessService.losAeBillsCheck(auditProecess);
-		}else if ("BGDJ".equals(proecess.getCheckType())) {
+		}else if ("BGSE".equals(proecess.getCheckType()) || "BGSI".equals(proecess.getCheckType()) ||
+			"BGAE".equals(proecess.getCheckType()) || "BGAI".equals(proecess.getCheckType())) {
 			auditProecessService.losCustomsDeclarationCheck(auditProecess);
 		} else if ("HYCK-FFSQ".equals(proecess.getCheckType())) {
 			auditProecessService.losStlBillsCheck(auditProecess);

+ 41 - 8
blade-service/blade-los/src/main/java/org/springblade/los/check/service/impl/AuditProecessServiceImpl.java

@@ -1542,8 +1542,23 @@ public class AuditProecessServiceImpl extends ServiceImpl<AuditProecessMapper, L
 				message.setUrl(auditProecess.getUrl());
 				message.setPageLabel(auditProecess.getPageLabel());
 				message.setPageStatus(auditProecess.getPageStatus());
-				if ("报关审核".equals(auditProecess.getProcessType())) {
-					message.setMessageBody("您有新的报关审核,业务单号:" + "" + proecessTemp.getBillNo() + ","
+				if ("海运出口报关审核".equals(auditProecess.getProcessType())) {
+					message.setMessageBody("您有新的海运出口报关审核,业务单号:" + "" + proecessTemp.getBillNo() + ","
+						+ "单据日期:" + billsDate + ",请审核。"
+						+ "提交人:" + proecessTemp.getSendName() + "  " + "提交时间" + simpleDateFormat.format(proecessTemp.getSendTime())
+					);
+				} else if ("海运进口报关审核".equals(auditProecess.getProcessType())) {
+					message.setMessageBody("您有新的海运进口报关审核,业务单号:" + "" + proecessTemp.getBillNo() + ","
+						+ "单据日期:" + billsDate + ",请审核。"
+						+ "提交人:" + proecessTemp.getSendName() + "  " + "提交时间" + simpleDateFormat.format(proecessTemp.getSendTime())
+					);
+				} else if ("空运出口报关审核".equals(auditProecess.getProcessType())) {
+					message.setMessageBody("您有新的空运出口报关审核,业务单号:" + "" + proecessTemp.getBillNo() + ","
+						+ "单据日期:" + billsDate + ",请审核。"
+						+ "提交人:" + proecessTemp.getSendName() + "  " + "提交时间" + simpleDateFormat.format(proecessTemp.getSendTime())
+					);
+				} else if ("空运进口报关审核".equals(auditProecess.getProcessType())) {
+					message.setMessageBody("您有新的空运进口报关审核,业务单号:" + "" + proecessTemp.getBillNo() + ","
 						+ "单据日期:" + billsDate + ",请审核。"
 						+ "提交人:" + proecessTemp.getSendName() + "  " + "提交时间" + simpleDateFormat.format(proecessTemp.getSendTime())
 					);
@@ -1576,8 +1591,14 @@ public class AuditProecessServiceImpl extends ServiceImpl<AuditProecessMapper, L
 					item.setApproveTime(new Date());
 				}
 				feeCenterService.saveOrUpdateBatch(feeCenterList);
-				if ("报关审核".equals(auditProecess.getProcessType())) {
-					sendMessage.setMessageBody("您的报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				if ("海运出口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的海运出口报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				} else if ("海运进口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的海运进口报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				} else if ("空运出口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的空运出口报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				} else if ("空运进口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的空运进口报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
 				}
 				R save = messageClient.save(sendMessage);
 				if (!save.isSuccess()) {
@@ -1622,8 +1643,14 @@ public class AuditProecessServiceImpl extends ServiceImpl<AuditProecessMapper, L
 					finAccBillsService.generateBill(finAccBills);
 				}
 				feeCenterService.saveOrUpdateBatch(feeCenterList);
-				if ("报关审核".equals(auditProecess.getProcessType())) {
-					sendMessage.setMessageBody("您的报关审核已通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				if ("海运出口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的海运出口报关审核已通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				} else if ("海运进口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的海运进口报关审核已通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				} else if ("空运出口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的空运出口报关审核已通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				} else if ("空运进口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的空运进口报关审核已通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
 				}
 				R save = messageClient.save(sendMessage);
 				if (!save.isSuccess()) {
@@ -1653,8 +1680,14 @@ public class AuditProecessServiceImpl extends ServiceImpl<AuditProecessMapper, L
 					item.setApproveTime(new Date());
 				}
 				feeCenterService.saveOrUpdateBatch(feeCenterList);
-				if ("报关审核".equals(auditProecess.getProcessType())) {
-					sendMessage.setMessageBody("您的报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				if ("海运出口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的海运出口报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				} else if ("海运进口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的海运进口报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				} else if ("空运出口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的空运出口报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
+				} else if ("空运进口报关审核".equals(auditProecess.getProcessType())) {
+					sendMessage.setMessageBody("您的空运进口报关审核未通过" + ",业务单号:" + proecessTemp.getBillNo() + ",驳回原因:" + auditProecess.getAuditMsg());
 				}
 				R save = messageClient.save(sendMessage);
 				if (!save.isSuccess()) {