Commit dc1e071c authored by fangxinjiang's avatar fangxinjiang

项目负责人服务团队更新-fxj

parent cee26333
......@@ -16,10 +16,14 @@
*/
package com.yifu.cloud.plus.v1.yifu.archives.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TAutoInsurStandard;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import java.time.LocalDateTime;
/**
......@@ -61,4 +65,16 @@ public class TAutoInsurStandardSearchVo extends TAutoInsurStandard {
**/
@Schema(description = "项目编码")
private int projectNo;
/**
* 购买标准min
*/
@Schema(description = "购买标准min")
private String standardMin;
/**
* 购买标准max
*/
@Schema(description = "购买标准max")
private String standardMax;
}
......@@ -93,7 +93,7 @@ public class TAutoMainRelServiceImpl extends ServiceImpl<TAutoMainRelMapper, TAu
public static final String itemsLabelRepeat = "同一项目岗位名称不可重复";
public static final String buyStandardRepeat = "同一保险公司+险种+购买标准+购买地不可重复";
public static final String buyStandardRepeat = "'同一保险公司+险种+购买标准+购买地'或‘配置名称’不可重复";
/**
* 项目配置表主表简单分页查询
......@@ -378,18 +378,22 @@ public class TAutoMainRelServiceImpl extends ServiceImpl<TAutoMainRelMapper, TAu
if (Common.isEmpty(standards)){
return R.failed(CommonConstants.PARAM_IS_NOT_ERROR);
}else {
standard.setStandard(standards.stream().map(TAutoStandardInfo::getStandard).collect(Collectors.joining(",")));
// 按字段 standard 排序后逗号拼接并去除末尾逗号
standard.setStandard(standards.stream()
.sorted(Comparator.comparing(TAutoStandardInfo::getStandard))
.map(TAutoStandardInfo::getStandard)
.collect(Collectors.joining(","))
.replaceAll(",$",""));
}
errorMessage = excelUtil.checkEntity(standard,0);
if (Common.isNotNull(errorMessage)){
return R.failed(errorMessage.getMessage());
}
}
}else {
return R.failed(CommonConstants.PARAM_IS_NOT_ERROR);
}
if (checkInsurStandardsForDuplicates(insurStandards)){
return R.failed(buyStandardRepeat);
if (checkInsurStandardsForDuplicates(insurStandards)){
return R.failed(buyStandardRepeat);
}
}
return null;
}
......@@ -401,6 +405,9 @@ public class TAutoMainRelServiceImpl extends ServiceImpl<TAutoMainRelMapper, TAu
if (map.put(standard.getCompany() + standard.getRiskType() + standard.getStandard(), "") != null){
return true;
}
if (map.put(standard.getName() , "") != null){
return true;
}
}
map.clear();
}
......@@ -496,9 +503,11 @@ public class TAutoMainRelServiceImpl extends ServiceImpl<TAutoMainRelMapper, TAu
return R.failed(errorMessage.getMessage());
}
// 根据ID查询原有的商险规则信息
autoInsurRuleOld = autoInsurRuleInfoMapper.selectById(autoEmpRuleNew.getId());
autoInsurRuleOld = autoInsurRuleInfoMapper.selectOne(Wrappers.<TAutoInsurRuleInfo>query().lambda()
.eq(TAutoInsurRuleInfo::getMainId,autoMainRel.getId()).last(CommonConstants.LAST_ONE_SQL));
}
//保存商险规则
List<TAutoInsurStandard> insurStandardsOld = null;
List<TAutoInsurStandard> insurStandards = null;
if (Common.isNotNull(autoInsurRuleNew)){
if (Common.isNotNull(autoInsurRuleNew.getId())){
......@@ -518,16 +527,16 @@ public class TAutoMainRelServiceImpl extends ServiceImpl<TAutoMainRelMapper, TAu
if (checkInsurStandardsForDuplicates(insurStandards)){
return R.failed(buyStandardRepeat);
}
//获取旧的购买标准
insurStandardsOld = autoInsurStandardMapper.selectList(Wrappers
.<TAutoInsurStandard>query().lambda().eq(TAutoInsurStandard::getMainId,autoInsurRuleNew.getId()));
}
//获取旧的购买标准
List<TAutoInsurStandard> insurStandardsOld = autoInsurStandardMapper.selectList(Wrappers
.<TAutoInsurStandard>query().lambda().eq(TAutoInsurStandard::getMainId,autoInsurRuleNew.getId()));
//商险购买标准是否更新标识 false 未更新 true 更新
boolean flag = false;
//保存商险购买标准
//先删除再批增
autoInsurStandardMapper.delete(Wrappers.<TAutoInsurStandard>query().lambda().eq(TAutoInsurStandard::getMainId,autoInsurRuleNew.getId()));
if (Common.isNotNull(insurStandards)){
//先删除再批增
autoInsurStandardMapper.delete(Wrappers.<TAutoInsurStandard>query().lambda().eq(TAutoInsurStandard::getMainId,autoInsurRuleNew.getId()));
for (TAutoInsurStandard standard:insurStandards){
if (!Common.isNotNull(standard.getId())){
flag =true;
......@@ -579,6 +588,9 @@ public class TAutoMainRelServiceImpl extends ServiceImpl<TAutoMainRelMapper, TAu
ignoreFields.add("createName");
ignoreFields.add("createTime");
ignoreFields.add("deptId");
ignoreFields.add("deptNo");
ignoreFields.add("standardInfos");
// 更新档案管理规则
if (Common.isNotNull(autoEmpRuleNew)){
String differenceKey = HrEquator.comparisonValueIgnoreField(autoEmpRuleOld, autoEmpRuleNew,ignoreFields);
......@@ -629,8 +641,8 @@ public class TAutoMainRelServiceImpl extends ServiceImpl<TAutoMainRelMapper, TAu
}
}
}
if (!Common.isEmpty(flag)){
diffKeyMap.put("insurStandardRule",diffKeys.toString());
if (flag){
diffKeyMap.put("insurStandardRule","standardInfos");
oldMap.put("oldInsurStandards",insurStandardsOld);
newMap.put("newInsurStandards",insurStandards);
}
......@@ -685,18 +697,22 @@ public class TAutoMainRelServiceImpl extends ServiceImpl<TAutoMainRelMapper, TAu
*/
private R<Boolean> checkItemRepeat(List<SysAutoDictItem> autoDictItems, Map<String, SysAutoDictItem> repeatItems) {
// 校验输入参数是否为 null
if (Common.isEmpty(autoDictItems) || Common.isEmpty(repeatItems)) {
if (Common.isEmpty(autoDictItems)) {
return null; // 根据业务需求决定返回值
}
Map<String,String> labelRepeat = new HashMap<>();
for (SysAutoDictItem item : autoDictItems) {
//自循环查询是否重复
if (CommonConstants.ZERO_STRING.equals(item.getDisable()) && labelRepeat.put(item.getLabel(),"") != null){
return R.failed(itemsLabelRepeat);
}
if (Common.isEmpty(item)
|| Common.isEmpty(item.getLabel())
|| CommonConstants.ONE_STRING.equals(item.getDisable())) {
continue; // 跳过无效的 item
}
SysAutoDictItem checkItem = repeatItems.get(item.getLabel());
//和已有岗位是否重复
SysAutoDictItem checkItem = null == repeatItems?null:repeatItems.get(item.getLabel());
if (checkItem != null) {
// 检查是否存在重复项
if (CommonConstants.ZERO_STRING.equals(checkItem.getDisable())
......
......@@ -114,8 +114,15 @@
SELECT
<include refid="Base_Column_List"/>
FROM t_auto_insur_standard a
<if test="tAutoInsurStandard.standard != null and tAutoInsurStandard.standard.trim() != ''">
LEFT JOIN (select * from t_auto_standard_info where STANDARD+0 = #{tAutoInsurStandard.standard}+0) b on a.id=b.MAIN_ID
<if test="(tAutoInsurStandard.standardMin != null and tAutoInsurStandard.standardMin.trim() != '') or (tAutoInsurStandard.standardMax != null and tAutoInsurStandard.standardMax.trim() != '')">
LEFT JOIN (select * from t_auto_standard_info where 1=1
<if test="tAutoInsurStandard.standardMin != null and tAutoInsurStandard.standardMin.trim() != ''">
and STANDARD+0 >= #{tAutoInsurStandard.standardMin}+0
</if>
<if test="tAutoInsurStandard.standardMax != null and tAutoInsurStandard.standardMax.trim() != ''">
and STANDARD+0 <![CDATA[ <= ]]> #{tAutoInsurStandard.standardMax}+0
</if>
) b on a.id=b.MAIN_ID
</if>
<where>
......@@ -135,5 +142,6 @@
</if>
</if>
</where>
group by a.id
</select>
</mapper>
......@@ -57,7 +57,6 @@
<include refid="Base_Column_List"/>
FROM t_auto_standard_info a
<where>
1=1
<include refid="tAutoStandardInfo_where"/>
</where>
</select>
......
......@@ -224,6 +224,8 @@ public interface SysUserPermissionMapper extends BaseMapper<SysUserPermission> {
List<SysUserPermission> getUserPermissionByAutoCreateBJD(@Param("fdId") String fdId);
List<SysUserPermission> getUserPermissionByAutoCreateHT(@Param("fdId") String fdId);
List<SysUserPermission> getUserPermissionByAutoCreateXM(@Param("fdId") String fdId);
//项目服务团队项目负责人变更权限
List<SysUserPermission> getUserPermissionByAutoCreateXMBGTD(@Param("fdId") String fdId);
List<SysUserPermission> getUserPermissionByAutoCreateHTBG(@Param("fdId") String fdId);
List<SysUserPermission> getUserPermissionByAutoCreateXMBG(@Param("fdId") String fdId);
String selectCodeByFdId(@Param("fdId") String fdId);
......
......@@ -486,6 +486,9 @@ public class SysUserPermissionServiceImpl extends ServiceImpl<SysUserPermissionM
case "项目变更":
deleteType = CommonConstants.dingleDigitStrArray[5];
list = baseMapper.getUserPermissionByAutoCreateXMBG(fdId); break;
case "项目服务团队变更":
deleteType = CommonConstants.dingleDigitStrArray[5];
list = baseMapper.getUserPermissionByAutoCreateXMBG(fdId); break;
default:
list = new ArrayList<>();
}
......
......@@ -419,6 +419,30 @@
) a GROUP BY a.USER_ID
</select>
<!-- 查找权限,用来新建 - 项目服务团队项目负责人 -->
<select id="getUserPermissionByAutoCreateXMBGTD" resultMap="sysUserPermissionMap">
select a.EMP_NAME,a.EMP_LOGIN_NAME,a.EMP_DEPT,a.PERMISSION_TYPE,a.NAME,a.CODE,a.SOURCE_TYPE,a.IS_CONTAINS,a.PERMISSION_STATUS,a.DELETE_FLAG,a.USER_ID,a.DOMAIN_ID
from (
select
e.fd_name EMP_NAME,p.fd_login_name EMP_LOGIN_NAME,SUBSTRING_INDEX(SUBSTRING_INDEX(e.fd_ldap_dn,',ou', 2),',ou=', -1) EMP_DEPT
,'5' PERMISSION_TYPE,d.fd_3b8797876dc13c_text NAME,d.fd_3b879793d37afe CODE,0 SOURCE_TYPE
,'1' IS_CONTAINS,'0' PERMISSION_STATUS,'1' DELETE_FLAG,e.fd_id USER_ID,d.fd_id DOMAIN_ID
from ekp_d701e3e72794ff390ca8 d
LEFT JOIN ekporg_195eb1d6815b96ceb269 f on f.fd_parent_id = d.fd_id
LEFT JOIN sys_org_element e on e.fd_id = f.sys_org_person_id JOIN sys_org_person p on e.fd_id=p.fd_id
where d.fd_id = #{fdId}
union ALL
select
e.fd_name EMP_NAME,p.fd_login_name EMP_LOGIN_NAME,SUBSTRING_INDEX(SUBSTRING_INDEX(e.fd_ldap_dn,',ou', 2),',ou=', -1) EMP_DEPT
,'5' PERMISSION_TYPE,d.fd_3b8797876dc13c_text NAME,d.fd_3b879793d37afe CODE,0 SOURCE_TYPE
,'1' IS_CONTAINS,'0' PERMISSION_STATUS,'1' DELETE_FLAG,e.fd_id USER_ID,d.fd_id DOMAIN_ID
from ekp_d701e3e72794ff390ca8 d
LEFT JOIN sys_org_element e on e.fd_id = d.fd_changeafter
JOIN sys_org_person p on e.fd_id=p.fd_id
where d.fd_id = #{fdId}
) a GROUP BY a.USER_ID
</select>
<!-- 查找权限,用来新建 - 合同变更 -->
<select id="getUserPermissionByAutoCreateHTBG" resultMap="sysUserPermissionMap">
......
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