Commit 726c6472 authored by zhaji's avatar zhaji

"feature-zhaJi:优化排序规则,优化EKP调用类"

parent 77d21f57
......@@ -739,14 +739,23 @@ public class InsurancesConstants {
public static final String COMPANY_IS_USED = "当前保险公司的名称已存在对应的商险信息,不能进行修改";
/** 权限相关提示语 **/
/**
* 非创建人无法编辑保单信息
*/
public static final String NOT_CREATE_USER_UPDATE_ERROR = "非创建人无法编辑保单信息";
/**
* 非创建人无法删除保单信息
*/
public static final String NOT_CREATE_USER_DELETE_ERROR = "非创建人无法删除保单信息";
/**
* 非创建人无法进行出险
*/
public static final String NOT_CREATE_USER_UPDATE_IS_USE_ERROR = "非创建人无法进行出险";
......
......@@ -27,20 +27,11 @@ public class EKPUtil {
//把ModelingAppModelParameterAddForm转换成MultiValueMap
MultiValueMap<String,Object> wholeForm = new LinkedMultiValueMap<>();
wholeForm.add("docSubject", new String("接口发起流程".getBytes("UTF-8"),"ISO-8859-1") );
wholeForm.add("docCreator", "{\"PersonNo\":\"00013\"}");
wholeForm.add("docCreator", "{\"LoginName\":\"admin\"}");
wholeForm.add("docStatus", 20);
wholeForm.add("fdModelId", "169b437e7e1cd1bd7b6367c4563b24ef");
wholeForm.add("fdFlowId", "178255fbdeda940cbd17bdd476398084");
wholeForm.add("formValues", new String("{\"fd_37310fdc84a55e\":\"王五\", \"fd_37310fe0aa2334\":\"2019-03-26\", \"fd_37310fde1759a4\":\"这里内容\"}".getBytes("UTF-8"),"ISO-8859-1") );
LinkedMultiValueMap<String,Object> innerMap = new LinkedMultiValueMap<>();
//注意附件列表的key是一样的
//第一个附件
wholeForm.add("attachmentForms[0].fdKey", "fd_3731bf4852e8fe");
wholeForm.add("attachmentForms[0].fdFileName", new String("测试文档.txt".getBytes("UTF-8"),"ISO-8859-1"));
wholeForm.add("attachmentForms[0].fdAttachment", new FileSystemResource(new File("E:/测试文档.txt")));
wholeForm.add("fdModelId", "181d73279372e5a55438a47d7436ab7e");
wholeForm.add("fdFlowId", "18267f206233f29cbd3c5ee425c9408a");
wholeForm.add("formValues", new String("{\"fd_3adfe6af71a1cc\":\"王五\", \"fd_3adfe658c6229e\":\"2019-03-26\", \"fd_3adfe6592b4158\":\"这里内容\"}".getBytes("UTF-8"),"ISO-8859-1") );
HttpHeaders headers = new HttpHeaders();
//如果EKP对该接口启用了Basic认证,那么客户端需要加入
......@@ -49,7 +40,6 @@ public class EKPUtil {
//必须设置上传类型,如果入参是字符串,使用MediaType.TEXT_PLAIN;如果
HttpEntity<MultiValueMap<String,Object>> entity = new HttpEntity<MultiValueMap<String,Object>>(wholeForm,headers);
//有返回值的情况 VO可以替换成具体的JavaBean
ResponseEntity<String> obj = yourRestTemplate.exchange(url, HttpMethod.POST, entity, String.class);
String body = obj.getBody();
......
......@@ -57,4 +57,10 @@ public class InsuranceListParam implements Serializable {
*/
@Schema(description = "险种名称")
private String insuranceTypeName;
/**
* 项目编码列表
*/
@Schema(description = "项目编码列表")
private List<String> deptNoList;
}
......@@ -5,6 +5,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @author zhaji
......@@ -65,4 +66,10 @@ public class InsuranceRefundParam implements Serializable {
*/
@Schema(description = "投保办理状态 1待投保 2投保中 3已投保 4投保退回 5 已减员")
private Integer buyHandleStatus;
/**
* 项目编码列表
*/
@Schema(description = "项目编码列表")
private List<String> deptNoList;
}
......@@ -10,6 +10,7 @@ import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
/**
* @author zhaji
......@@ -111,4 +112,10 @@ public class InsuredParam implements Serializable {
@Schema(description = "派单结束日期")
private String createEndTime;
/**
* 项目编码列表
*/
@Schema(description = "项目编码列表")
private List<String> deptNoList;
}
package com.yifu.cloud.plus.v1.yifu.insurances.vo;
import lombok.Data;
/**
* @author zhaji
* @description 结算信息推送类
* @date 2022-08-05 10:32:16
*/
@Data
public class TInsuranceSettlePushParam {
}
......@@ -296,7 +296,7 @@ public class TInsuranceDetailController {
@Operation(summary = "已减员列表分页查询", description = "已减员列表分页查询")
@PostMapping("/getInsuranceRefundPageList")
public R<IPage<InsuranceRefundListVo>> getInsuranceRefundPageList(Page<InsuranceRefundParam> page, @RequestBody InsuranceRefundParam param) {
return R.ok(tInsuranceDetailService.getInsuranceRefundPageList(page,param));
return tInsuranceDetailService.getInsuranceRefundPageList(page,param);
}
/**
......@@ -382,7 +382,7 @@ public class TInsuranceDetailController {
* 出险
*
* @author zhaji
* @param id 险种id
* @param id 保单id
* @return {@link R<List< RefundExportListVo >>}
*/
@Operation(summary = "出险", description = "出险")
......@@ -417,6 +417,18 @@ public class TInsuranceDetailController {
return tInsuranceDetailService.getDeptList();
}
/**
* 根据登录人获取项目列表
*
* @author zhaji
* @return {@link R<List<Dept>>}
*/
@Operation(summary = "根据登录人获取项目列表", description = "根据登录人获取项目列表")
@GetMapping("/getDeptListByUser")
public R getDeptListByUser() {
return tInsuranceDetailService.getDeptListByUser();
}
/**
* 紧急出险
*
......
......@@ -183,7 +183,7 @@ public interface TInsuranceDetailService extends IService<TInsuranceDetail> {
* @param param 查询参数
* @return {@link IPage< InsuranceRefundListVo >}
*/
IPage<InsuranceRefundListVo> getInsuranceRefundPageList(Page<InsuranceRefundParam> page, InsuranceRefundParam param);
R getInsuranceRefundPageList(Page<InsuranceRefundParam> page, InsuranceRefundParam param);
/**
* 已减员列表导出
......@@ -285,6 +285,15 @@ public interface TInsuranceDetailService extends IService<TInsuranceDetail> {
*/
R getDeptList();
/**
* 获取当前登录人的项目列表
*
* @author zhaji
* @param
* @return {@link R}
*/
R getDeptListByUser();
/**
* EKP紧急出险
*
......
......@@ -24,10 +24,7 @@ import com.yifu.cloud.plus.v1.yifu.insurances.constants.InsurancesConstants;
import com.yifu.cloud.plus.v1.yifu.insurances.entity.*;
import com.yifu.cloud.plus.v1.yifu.insurances.mapper.TInsuranceDetailMapper;
import com.yifu.cloud.plus.v1.yifu.insurances.service.*;
import com.yifu.cloud.plus.v1.yifu.insurances.util.BeanCopyUtils;
import com.yifu.cloud.plus.v1.yifu.insurances.util.BigDecimalUtils;
import com.yifu.cloud.plus.v1.yifu.insurances.util.LocalDateUtil;
import com.yifu.cloud.plus.v1.yifu.insurances.util.ValidityUtil;
import com.yifu.cloud.plus.v1.yifu.insurances.util.*;
import com.yifu.cloud.plus.v1.yifu.insurances.vo.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
......@@ -412,6 +409,11 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if (null == byId){
return R.failed(InsurancesConstants.DATA_IS_NOT_EXIST);
}
//校验当前保单信息是否由当前登录人创建
String createBy = byId.getCreateBy();
if(!createBy.equals(user.getId())){
return R.failed(InsurancesConstants.NOT_CREATE_USER_DELETE_ERROR);
}
if (byId.getBuyHandleStatus() != CommonConstants.FOUR_INT){
return R.failed(InsurancesConstants.DELETE_ERROR);
}
......@@ -439,6 +441,11 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if (null == byId){
return R.failed(InsurancesConstants.DATA_IS_NOT_EXIST);
}
//校验当前保单信息是否由当前登录人创建
String createBy = byId.getCreateBy();
if(!createBy.equals(user.getId())){
return R.failed(InsurancesConstants.NOT_CREATE_USER_UPDATE_ERROR);
}
if (byId.getBuyHandleStatus() == CommonConstants.FOUR_INT && byId.getBuyType() != CommonConstants.FOUR_INT){
//新增、批增的编辑逻辑
......@@ -2425,6 +2432,14 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
*/
@Override
public IPage<InsuredListVo> getInsuredListPage(Page<InsuredListVo> page, InsuredParam param) {
//todo 根据登录人获取其项目权限列表
YifuUser user = SecurityUtils.getUser();
List<String> deptList = new ArrayList<>(16);
deptList.add("皖M02002");
deptList.add("皖A12345678");
deptList.add("皖B29203");
deptList.add("皖M02023");
param.setDeptNoList(deptList);
IPage<InsuredListVo> insuranceList = this.baseMapper.getInsuredListPage(page, param);
if (CollectionUtils.isNotEmpty(insuranceList.getRecords())){
//根据项目编码获取项目名称
......@@ -2454,6 +2469,14 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
*/
@Override
public List<InsuredListVo> getInsuredList(InsuredParam param) {
//todo 根据登录人获取其项目权限列表
YifuUser user = SecurityUtils.getUser();
List<String> deptList = new ArrayList<>(16);
deptList.add("皖M02002");
deptList.add("皖A12345678");
deptList.add("皖B29203");
deptList.add("皖M02023");
param.setDeptNoList(deptList);
List<InsuredListVo> insuredList = this.baseMapper.getInsuredList(param);
if (CollectionUtils.isNotEmpty(insuredList)){
//根据项目编码获取项目名称
......@@ -2483,7 +2506,18 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
* @return {@link IPage< InsuranceRefundListVo >}
*/
@Override
public IPage<InsuranceRefundListVo> getInsuranceRefundPageList(Page<InsuranceRefundParam> page, InsuranceRefundParam param) {
public R getInsuranceRefundPageList(Page<InsuranceRefundParam> page, InsuranceRefundParam param) {
//todo 根据登录人获取其项目权限列表
YifuUser user = SecurityUtils.getUser();
List<String> deptList = new ArrayList<>(16);
deptList.add("皖M02002");
deptList.add("皖A12345678");
deptList.add("皖B29203");
deptList.add("皖M02023");
if (CollectionUtils.isEmpty(deptList)){
return R.ok("当前登录人无任何项目权限");
}
param.setDeptNoList(deptList);
IPage<InsuranceRefundListVo> insuranceRefundPageList = this.baseMapper.getInsuranceRefundPageList(page, param);
if (CollectionUtils.isNotEmpty(insuranceRefundPageList.getRecords())){
//根据项目编码获取项目名称
......@@ -2501,7 +2535,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
}
}
}
return insuranceRefundPageList;
return R.ok(insuranceRefundPageList);
}
/**
......@@ -3074,6 +3108,11 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
}
tInsuranceOperateService.saveBatch(operateList);
List<DeptChangeCheckParam> errorList = stringListMap.get("errorList");
try{
EKPUtil.testAddNewsInRestTemplate();
}catch (Exception e){
System.out.println(e.getMessage());
}
return R.ok(errorList,"导入成功");
}
......@@ -3173,6 +3212,11 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if(Common.isEmpty(insuranceDetail) || CommonConstants.ONE_INT == insuranceDetail.getDeleteFlag()){
return R.failed("保单信息不存在或已被删除");
}
//校验当前保单信息是否由当前登录人创建
String createBy = insuranceDetail.getCreateBy();
if(!createBy.equals(user.getId())){
return R.failed(InsurancesConstants.NOT_CREATE_USER_UPDATE_IS_USE_ERROR);
}
Integer reduceHandleStatus = insuranceDetail.getReduceHandleStatus();
Integer buyHandleStatus = insuranceDetail.getBuyHandleStatus();
if(CommonConstants.ONE_INT == buyHandleStatus || CommonConstants.TWO_INT == buyHandleStatus ||CommonConstants.FOUR_INT == buyHandleStatus){
......@@ -3936,6 +3980,41 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
return R.ok(deptList);
}
/**
* 获取当前登录人的项目列表
*
* @author zhaji
* @param
* @return {@link R}
*/
@Override
public R getDeptListByUser(){
YifuUser user = SecurityUtils.getUser();
//根据当前登录人获取其拥有的项目列表权限
// TODO: 2022/8/5
//List<String> deptNoList = user.getDeptList();
//目前是获取到所有的项目权限
List<Dept> deptList = new ArrayList<>();
List<String> deptNoList = new ArrayList<>(16);
deptNoList.add("皖M02002");
deptNoList.add("皖A12345678");
deptNoList.add("皖B29203");
deptNoList.add("皖M02023");
R<SetInfoVo> setInfoByCodes = archivesDaprUtil.getSetInfoByCodes(deptNoList);
if (null != setInfoByCodes && setInfoByCodes.getCode() == CommonConstants.SUCCESS && Common.isNotNull(setInfoByCodes.getData())) {
SetInfoVo data = setInfoByCodes.getData();
Map<String, ProjectSetInfoVo> projectSetInfoVoMap = data.getProjectSetInfoVoMap();
for (String deptNo : deptNoList) {
ProjectSetInfoVo projectSetInfoVo = projectSetInfoVoMap.get(deptNo);
if(!Common.isEmpty(projectSetInfoVo)){
deptList.add(new Dept(projectSetInfoVo.getDepartNo(),projectSetInfoVo.getDepartName()));
}
}
}
return R.ok(deptList,"查询项目列表成功");
}
/**
* EKP紧急出险
*
......
......@@ -306,6 +306,12 @@
<if test="param.deptNo != null and param.deptNo.trim() != ''">
and detail.DEPT_NO = #{param.deptNo}
</if>
<!-- <if test="param.deptNo == null or param.deptNo.trim() == ''">
and detail.DEPT_NO in
<foreach collection="param.deptNoList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>-->
<if test="param.insuranceCompanyName != null and param.insuranceCompanyName.trim() != ''">
and detail.INSURANCE_COMPANY_NAME = #{param.insuranceCompanyName}
</if>
......@@ -385,8 +391,14 @@
and detail.EMP_IDCARD_NO like concat('%',replace(replace(#{param.empIdcardNo},'_','\_'),'%','\%'),'%')
</if>
<if test="param.deptNo != null and param.deptNo.trim() != ''">
and detail.DEPT_NO like concat('%',replace(replace(#{param.deptNo},'_','\_'),'%','\%'),'%')
and detail.DEPT_NO = #{param.deptNo}
</if>
<!-- <if test="param.deptNo == null or param.deptNo.trim() == ''">
and detail.DEPT_NO in
<foreach collection="param.deptNoList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>-->
<if test="param.insuranceCompanyName != null and param.insuranceCompanyName.trim() != ''">
and detail.INSURANCE_COMPANY_NAME = #{param.insuranceCompanyName}
</if>
......@@ -452,8 +464,14 @@
and detail.EMP_IDCARD_NO like concat('%',replace(replace(#{param.empIdcardNo},'_','\_'),'%','\%'),'%')
</if>
<if test="param.deptNo != null and param.deptNo.trim() != ''">
and detail.DEPT_NO like concat('%',replace(replace(#{param.deptNo},'_','\_'),'%','\%'),'%')
and detail.DEPT_NO = #{param.deptNo}
</if>
<!-- <if test="param.deptNo == null or param.deptNo.trim() == ''">
and detail.DEPT_NO in
<foreach collection="param.deptNoList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>-->
<if test="param.insuranceCompanyName != null and param.insuranceCompanyName.trim() != ''">
and detail.INSURANCE_COMPANY_NAME = #{param.insuranceCompanyName}
</if>
......@@ -512,8 +530,14 @@
and detail.EMP_IDCARD_NO like concat('%',replace(replace(#{param.empIdcardNo},'_','\_'),'%','\%'),'%')
</if>
<if test="param.deptNo != null and param.deptNo.trim() != ''">
and detail.DEPT_NO like concat('%',replace(replace(#{param.deptNo},'_','\_'),'%','\%'),'%')
and detail.DEPT_NO = #{param.deptNo}
</if>
<!-- <if test="param.deptNo == null or param.deptNo.trim() == ''">
and detail.DEPT_NO in
<foreach collection="param.deptNoList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>-->
<if test="param.insuranceCompanyName != null and param.insuranceCompanyName.trim() != ''">
and detail.INSURANCE_COMPANY_NAME = #{param.insuranceCompanyName}
</if>
......@@ -572,6 +596,12 @@
<if test="param.deptNo != null and param.deptNo.trim() != ''">
and detail.DEPT_NO = #{param.deptNo}
</if>
<!-- <if test="param.deptNo == null or param.deptNo.trim() == ''">
and detail.DEPT_NO in
<foreach collection="param.deptNoList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>-->
<if test="param.reduceHandleStatus != null">
and detail.REDUCE_HANDLE_STATUS = #{param.reduceHandleStatus}
</if>
......@@ -581,7 +611,7 @@
<if test="param.insuranceCompanyName != null and param.insuranceCompanyName.trim() != ''">
and detail.INSURANCE_COMPANY_NAME = #{param.insuranceCompanyName}
</if>
ORDER BY refund.CREATE_TIME ,detail.ID DESC
ORDER BY refund.CREATE_TIME DESC,detail.ID ASC
</select>
<!-- 减员办理列表不分页查询-->
<select id="getInsuranceRefundHandlingList" resultType="com.yifu.cloud.plus.v1.yifu.insurances.vo.RefundExportListVo">
......@@ -625,13 +655,19 @@
and detail.EMP_IDCARD_NO like concat('%',replace(replace(#{param.empIdcardNo},'_','\_'),'%','\%'),'%')
</if>
<if test="param.deptNo != null and param.deptNo.trim() != ''">
and detail.DEPT_NO like concat('%',replace(replace(#{param.deptNo},'_','\_'),'%','\%'),'%')
and detail.DEPT_NO = #{param.deptNo}
</if>
<!-- <if test="param.deptNo == null or param.deptNo.trim() == ''">
and detail.DEPT_NO in
<foreach collection="param.deptNoList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>-->
<if test="param.isOverdue != null ">
and detail.IS_OVERDUE like concat('%',replace(replace(#{param.isOverdue},'_','\_'),'%','\%'),'%')
and detail.IS_OVERDUE = #{param.isOverdue}
</if>
<if test="param.isUse != null">
and detail.IS_USE like concat('%',replace(replace(#{param.isUse},'_','\_'),'%','\%'),'%')
and detail.IS_USE = #{param.isUse}
</if>
ORDER BY detail.REFUND_CREATE_TIME DESC
</select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment