|
|
@@ -48,6 +48,7 @@ import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
|
+import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import jakarta.annotation.Resource;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
@@ -156,6 +157,9 @@ public class OrderReportServiceImpl extends ServiceImpl<OrderReportMapper, Order
|
|
|
@Resource
|
|
|
private DeptApi deptApi;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private JdbcTemplate jdbcTemplate;
|
|
|
+
|
|
|
|
|
|
private final String ACCEPT = "1";
|
|
|
private final String TASK = "2";
|
|
|
@@ -232,8 +236,10 @@ public class OrderReportServiceImpl extends ServiceImpl<OrderReportMapper, Order
|
|
|
orderReportDO.setAcceptOrderId(acceptOrderId);
|
|
|
orderReportDO.setOrderType(ACCEPT);
|
|
|
orderReportDO.setTemplateId(reportTemplateDO.getId());
|
|
|
- String acceptOrderNo = this.generateAcceptOrderNo(acceptOrderId, 200, "SL");
|
|
|
- orderReportDO.setAcceptOrderNo(acceptOrderNo);
|
|
|
+ if (orderReportDO.getId() == null){
|
|
|
+ String acceptOrderNo = this.generateAcceptOrderNo(acceptOrderId, 200, "SL");
|
|
|
+ orderReportDO.setAcceptOrderNo(acceptOrderNo);
|
|
|
+ }
|
|
|
|
|
|
// 生成报表数据
|
|
|
CreateInstantiateWithRuleVO ruleVO = new CreateInstantiateWithRuleVO();
|
|
|
@@ -258,7 +264,7 @@ public class OrderReportServiceImpl extends ServiceImpl<OrderReportMapper, Order
|
|
|
//修改受理单编号
|
|
|
AcceptOrderDO updateAcceptOrder = new AcceptOrderDO();
|
|
|
updateAcceptOrder.setId(acceptOrderId);
|
|
|
- updateAcceptOrder.setAcceptNo(acceptOrderNo);
|
|
|
+ updateAcceptOrder.setAcceptNo(orderReportDO.getAcceptOrderNo());
|
|
|
acceptOrderMapper.updateById(updateAcceptOrder);
|
|
|
|
|
|
}
|
|
|
@@ -282,8 +288,10 @@ public class OrderReportServiceImpl extends ServiceImpl<OrderReportMapper, Order
|
|
|
orderReportDO.setAcceptOrderId(acceptOrderId);
|
|
|
orderReportDO.setOrderType(ACCEPT);
|
|
|
orderReportDO.setTemplateId(reportTemplateDO.getId());
|
|
|
- String acceptOrderNo = this.generateAcceptOrderNo(acceptOrderId, 200, "WT");
|
|
|
- orderReportDO.setAcceptOrderNo(acceptOrderNo);
|
|
|
+ if (orderReportDO.getId() == null){
|
|
|
+ String acceptOrderNo = this.generateAcceptOrderNo(acceptOrderId, 200, "WT");
|
|
|
+ orderReportDO.setAcceptOrderNo(acceptOrderNo);
|
|
|
+ }
|
|
|
|
|
|
// 生成报表数据
|
|
|
CreateInstantiateWithRuleVO ruleVO = new CreateInstantiateWithRuleVO();
|
|
|
@@ -314,17 +322,18 @@ public class OrderReportServiceImpl extends ServiceImpl<OrderReportMapper, Order
|
|
|
orderReportDO.setAcceptOrderId(acceptOrderId);
|
|
|
orderReportDO.setOrderType(ACCEPT);
|
|
|
|
|
|
- String acceptOrderNo = "";
|
|
|
- AcceptOrderDO acceptOrderDO = acceptOrderMapper.selectById(acceptOrderId);
|
|
|
- if (acceptOrderDO != null){
|
|
|
- if (acceptOrderDO.getCheckType() == 100){
|
|
|
- acceptOrderNo = this.generateAcceptOrderNo(acceptOrderId, 300, "SL");
|
|
|
- }else if (acceptOrderDO.getCheckType() == 200){
|
|
|
- acceptOrderNo = this.generateAcceptOrderNo(acceptOrderId, 300, "WT");
|
|
|
+ if (orderReportDO.getId() == null) {
|
|
|
+ String acceptOrderNo = "";
|
|
|
+ AcceptOrderDO acceptOrderDO = acceptOrderMapper.selectById(acceptOrderId);
|
|
|
+ if (acceptOrderDO != null) {
|
|
|
+ if (acceptOrderDO.getCheckType() == 100) {
|
|
|
+ acceptOrderNo = this.generateAcceptOrderNo(acceptOrderId, 300, "SL");
|
|
|
+ } else if (acceptOrderDO.getCheckType() == 200) {
|
|
|
+ acceptOrderNo = this.generateAcceptOrderNo(acceptOrderId, 300, "WT");
|
|
|
+ }
|
|
|
}
|
|
|
+ orderReportDO.setAcceptOrderNo(acceptOrderNo);
|
|
|
}
|
|
|
- orderReportDO.setAcceptOrderNo(acceptOrderNo);
|
|
|
-
|
|
|
/*List<DynamicTbDO> list = dynamicTbService.list(new LambdaQueryWrapperX<DynamicTbDO>()
|
|
|
.eq(DynamicTbDO::getPjType, 4)
|
|
|
.eq(DynamicTbDO::getReportType, 300)
|
|
|
@@ -377,7 +386,7 @@ public class OrderReportServiceImpl extends ServiceImpl<OrderReportMapper, Order
|
|
|
//修改受理单编号
|
|
|
AcceptOrderDO updateAcceptOrder = new AcceptOrderDO();
|
|
|
updateAcceptOrder.setId(acceptOrderId);
|
|
|
- updateAcceptOrder.setAcceptNo(acceptOrderNo);
|
|
|
+ updateAcceptOrder.setAcceptNo(orderReportDO.getAcceptOrderNo());
|
|
|
acceptOrderMapper.updateById(updateAcceptOrder);
|
|
|
|
|
|
}else {
|
|
|
@@ -701,8 +710,12 @@ public class OrderReportServiceImpl extends ServiceImpl<OrderReportMapper, Order
|
|
|
}
|
|
|
|
|
|
String deptId = acceptOrderDO.getDeptId();
|
|
|
- DeptRespDTO dept = deptApi.getDept(deptId).getCheckedData();
|
|
|
- String deptCode = dept.getCode();
|
|
|
+ // 使用原生 SQL 直接查询部门 code,避免因无用户上下文导致 Feign 调用/数据权限问题
|
|
|
+ String deptCode = jdbcTemplate.queryForObject(
|
|
|
+ "SELECT code FROM system_dept WHERE id = ?", String.class, deptId);
|
|
|
+ if (deptCode == null) {
|
|
|
+ throw new ServiceException(500, "部门不存在");
|
|
|
+ }
|
|
|
|
|
|
// 获取项目代码(2位)
|
|
|
String projectCode = "";
|