## 退单报错同步284修改;

This commit is contained in:
cabbage 2025-07-17 14:07:32 +08:00
parent aab42daf4c
commit 550e7869a4
5 changed files with 76 additions and 0 deletions

View File

@ -1,14 +1,17 @@
package com.hzs.system.sys.controller.manage;
import cn.hutool.core.collection.CollectionUtil;
import com.hzs.common.core.constant.msg.DocumentMsgConstants;
import com.hzs.common.core.enums.*;
import com.hzs.common.core.web.controller.BaseController;
import com.hzs.common.core.web.domain.AjaxResult;
import com.hzs.common.domain.system.sys.SysApproval;
import com.hzs.common.domain.system.sys.SysUser;
import com.hzs.common.domain.system.sys.ext.SysApprovalExt;
import com.hzs.common.domain.system.sys.ext.SysApprovalItemExt;
import com.hzs.common.domain.system.sys.ext.SysApprovalSendExt;
import com.hzs.common.security.utils.SecurityUtils;
import com.hzs.common.util.TransactionUtils;
import com.hzs.system.sys.service.*;
import com.hzs.system.sys.vo.*;
import lombok.extern.slf4j.Slf4j;
@ -120,4 +123,36 @@ public class SysApprovalController extends BaseController {
return AjaxResult.success(resultList);
}
/**
* 是否存在签呈
*
* @param approvalBusinessList
* @return
*/
@GetMapping("/has-sign/{approvalBusinessList}")
public AjaxResult hasSign(@PathVariable("approvalBusinessList") List<Integer> approvalBusinessList) {
// 查询是否存在签呈
List<SysApproval> sysApprovalList = iSysApprovalService.lastApproval(approvalBusinessList, SecurityUtils.getPkCountry());
if (CollectionUtil.isNotEmpty(sysApprovalList)) {
approval:
for (Integer approvalBusiness : approvalBusinessList) {
for (SysApproval sysApproval : sysApprovalList) {
if (sysApproval.getApprovalBusiness().equals(approvalBusiness)) {
// 存在则直接进行下次
continue approval;
}
}
EApprovalBusiness eApprovalBusiness = EApprovalBusiness.getEnumByValue(approvalBusiness);
if (null != eApprovalBusiness) {
// %s 未配置签呈
return AjaxResult.error(TransactionUtils.getContent(DocumentMsgConstants.SIGN_NOT_CONFIG, eApprovalBusiness.getLabel()));
}
// 签呈业务类型错误
return AjaxResult.error(TransactionUtils.getContent(DocumentMsgConstants.SIGN_TYPE_ERROR));
}
}
return AjaxResult.success();
}
}

View File

@ -21,4 +21,13 @@ public interface SysApprovalMapper extends BaseMapper<SysApproval> {
*/
List<SysApprovalExt> lastApprovalAndItem(@Param("approvalBusinessList") List<Integer> approvalBusinessList, @Param("pkCountry") Integer pkCountry);
/**
* 根据审批业务类型相关最新的审批
*
* @param approvalBusinessList 审批业务类型列表
* @param pkCountry 国家ID
* @return
*/
List<SysApproval> lastApproval(@Param("approvalBusinessList") List<Integer> approvalBusinessList, @Param("pkCountry") Integer pkCountry);
}

View File

@ -20,4 +20,13 @@ public interface ISysApprovalService extends IService<SysApproval> {
*/
List<SysApprovalExt> lastApprovalAndItem(List<Integer> approvalBusinessList, Integer pkCountry);
/**
* 根据审批业务类型相关最新的审批
*
* @param approvalBusinessList 审批业务类型列表
* @param pkCountry 国家ID
* @return
*/
List<SysApproval> lastApproval(List<Integer> approvalBusinessList, Integer pkCountry);
}

View File

@ -20,4 +20,9 @@ public class SysApprovalServiceImpl extends ServiceImpl<SysApprovalMapper, SysAp
return baseMapper.lastApprovalAndItem(approvalBusinessList, pkCountry);
}
@Override
public List<SysApproval> lastApproval(List<Integer> approvalBusinessList, Integer pkCountry) {
return baseMapper.lastApproval(approvalBusinessList, pkCountry);
}
}

View File

@ -55,4 +55,22 @@
order by sa.APPROVAL_BUSINESS, sai.approval_level
</select>
<!-- 根据审批业务类型相关最新的审批 -->
<select id="lastApproval" resultMap="BaseResultMap">
select sa.*
from SYS_APPROVAL sa
where (sa.approval_business, effective_date) in
(select sa.approval_business, max(sa.effective_date) effective_date
from SYS_APPROVAL sa
where sa.del_flag = 0
and sysdate >= sa.effective_date
and sa.pk_country = #{pkCountry}
and sa.APPROVAL_BUSINESS in
<foreach collection="approvalBusinessList" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
group by sa.approval_business)
order by sa.EFFECTIVE_DATE desc, sa.CREATION_TIME desc
</select>
</mapper>