Pre Merge pull request !230 from dxfeng/feature/dxf

pull/230/MERGE
dxfeng 3 years ago committed by Gitee
commit f9dc9c987b
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

@ -103,7 +103,7 @@ public class CompBO {
} }
public static List<SearchTree> buildSetToSearchTree(Set<CompPO> comps) { public static List<SearchTree> buildSetToSearchTree(Set<CompPO> comps) {
return comps.stream().map(item -> { return comps.stream().sorted(Comparator.comparing(CompPO::getShowOrder)).map(item -> {
SearchTree tree = new SearchTree(); SearchTree tree = new SearchTree();
tree.setCanClick(true); tree.setCanClick(true);
tree.setCanceled(item.getForbiddenTag() != 0); tree.setCanceled(item.getForbiddenTag() != 0);
@ -115,6 +115,7 @@ public class CompBO {
tree.setPid(null == item.getParentCompany() ? "0" : item.getParentCompany().toString()); tree.setPid(null == item.getParentCompany() ? "0" : item.getParentCompany().toString());
tree.setSelected(false); tree.setSelected(false);
tree.setType("1"); tree.setType("1");
tree.setOrderNum(null == item.getShowOrder() ? 0 : item.getShowOrder());
return tree; return tree;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
} }

@ -140,6 +140,7 @@ public class DepartmentBO {
tree.setSelected(false); tree.setSelected(false);
tree.setType("2"); tree.setType("2");
tree.setParentComp(null == item.getParentComp() ? "0" : item.getParentComp().toString()); tree.setParentComp(null == item.getParentComp() ? "0" : item.getParentComp().toString());
tree.setOrderNum(null == item.getShowOrder() ? 0 : item.getShowOrder());
return tree; return tree;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
} }

@ -167,6 +167,7 @@ public class JobBO {
tree.setSelected(false); tree.setSelected(false);
tree.setType("3"); tree.setType("3");
tree.setParentComp(null == item.getParentDept() ? "0" : item.getParentDept().toString()); tree.setParentComp(null == item.getParentDept() ? "0" : item.getParentDept().toString());
tree.setOrderNum(null == item.getShowOrder() ? 0 : item.getShowOrder());
return tree; return tree;
}).collect(Collectors.toList()); }).collect(Collectors.toList());

@ -18,4 +18,5 @@ public class SearchTree extends TreeNode {
private boolean isCanceled; private boolean isCanceled;
private String requestParams; private String requestParams;
private String parentComp; private String parentComp;
private Integer orderNum;
} }

@ -162,7 +162,7 @@
'hrmresource' as tablename 'hrmresource' as tablename
from hrm_formfield a from hrm_formfield a
inner join htmllabelinfo b on a.fieldlabel = b.indexid and b.languageid = 7 inner join htmllabelinfo b on a.fieldlabel = b.indexid and b.languageid = 7
where a.fielddbtype != '6' where a.fielddbtype != '6' and a.isuse = '1'
and a.fieldname in and a.fieldname in
<foreach collection="fields" open="(" item="field" separator="," close=")"> <foreach collection="fields" open="(" item="field" separator="," close=")">
#{field} #{field}

@ -91,4 +91,5 @@ public interface GradeMapper {
GradePO getGradeByLevelId(@Param("levelId") long levelId); GradePO getGradeByLevelId(@Param("levelId") long levelId);
int checkRepeatNo(@Param("schemeId") Long schemeId, @Param("no") String no, @Param("id") Long id);
} }

@ -245,9 +245,20 @@
<select id="getGradeByLevelId" resultType="com.engine.organization.entity.scheme.po.GradePO"> <select id="getGradeByLevelId" resultType="com.engine.organization.entity.scheme.po.GradePO">
select select
<include refid="baseColumns"/> <include refid="baseColumns"/>
from jcl_org_grade t where from jcl_org_grade t where delete_type = 0
<include refid="likeSQL"/> <include refid="likeSQL"/>
</select> </select>
<select id="checkRepeatNo" resultType="java.lang.Integer">
select
count(1)
from jcl_org_grade
where delete_type = 0
and scheme_id =#{schemeId}
and grade_no = #{no}
<if test=" id!=null ">
and id != #{id}
</if>
</select>
<sql id="likeSQL"> <sql id="likeSQL">
concat(',', level_id, ',') like concat('%,', cast(#{levelId} as CHAR), ',%') concat(',', level_id, ',') like concat('%,', cast(#{levelId} as CHAR), ',%')

@ -98,4 +98,6 @@ public interface LevelMapper {
ArrayList<TreeData> getTreeData(); ArrayList<TreeData> getTreeData();
List<LevelPO> getLevelsByIds(@Param("ids")Collection<Long> ids); List<LevelPO> getLevelsByIds(@Param("ids")Collection<Long> ids);
int checkRepeatNo(@Param("schemeId") Long schemeId, @Param("no") String no, @Param("id") Long id);
} }

@ -89,6 +89,17 @@
#{id} #{id}
</foreach> </foreach>
</select> </select>
<select id="checkRepeatNo" resultType="java.lang.Integer">
select
count(1)
from jcl_org_level
where delete_type = 0
and scheme_id =#{schemeId}
and level_no = #{no}
<if test=" id!=null ">
and id != #{id}
</if>
</select>
<update id="updateLevel" parameterType="com.engine.organization.entity.scheme.po.LevelPO"> <update id="updateLevel" parameterType="com.engine.organization.entity.scheme.po.LevelPO">
update jcl_org_level update jcl_org_level

@ -705,7 +705,7 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
private List<SearchTree> getFilterCompany(String id, String keyword) { private List<SearchTree> getFilterCompany(String id, String keyword) {
// 查询部门信息 // 查询部门信息
Long parentCompId = StringUtil.isEmpty(id) ? null : Long.parseLong(id); Long parentCompId = StringUtil.isEmpty(id) ? null : Long.parseLong(id);
CompPO compBuild = CompPO.builder().compName(keyword).parentCompany(parentCompId).build(); CompPO compBuild = CompPO.builder().compName(keyword).parentCompany(parentCompId).forbiddenTag(0).build();
List<CompPO> filterComps = getCompMapper().listByFilter(compBuild, "show_order"); List<CompPO> filterComps = getCompMapper().listByFilter(compBuild, "show_order");
Set<CompPO> builderComps = new HashSet<>(); Set<CompPO> builderComps = new HashSet<>();
@ -728,7 +728,7 @@ public class DepartmentServiceImpl extends Service implements DepartmentService
return; return;
} }
CompPO parentComp = getCompMapper().listById(compPO.getParentCompany()); CompPO parentComp = getCompMapper().listById(compPO.getParentCompany());
if (null != parentComp) { if (null != parentComp && 0 == parentComp.getForbiddenTag()) {
buildParentComps(parentComp, builderComps); buildParentComps(parentComp, builderComps);
} }
} }

@ -73,8 +73,7 @@ public class GradeServiceImpl extends Service implements GradeService {
@Override @Override
public int saveGrade(GradeSearchParam param) { public int saveGrade(GradeSearchParam param) {
HasRightUtil.hasRight(user, RIGHT_NAME, false); HasRightUtil.hasRight(user, RIGHT_NAME, false);
List<GradePO> list = getGradeMapper().listByNo(Util.null2String(param.getGradeNo())); OrganizationAssert.isTrue(checkRepeatNo(param.getSchemeId(), param.getGradeNo(), null), "同一等级方案下编号不能重复");
OrganizationAssert.isEmpty(list, "编号不允许重复");
GradePO gradePO = GradeDTO.convertParamToPO(param, (long) user.getUID()); GradePO gradePO = GradeDTO.convertParamToPO(param, (long) user.getUID());
return getGradeMapper().insertIgnoreNull(gradePO); return getGradeMapper().insertIgnoreNull(gradePO);
} }
@ -83,11 +82,7 @@ public class GradeServiceImpl extends Service implements GradeService {
public int updateGrade(GradeSearchParam param) { public int updateGrade(GradeSearchParam param) {
HasRightUtil.hasRight(user, RIGHT_NAME, false); HasRightUtil.hasRight(user, RIGHT_NAME, false);
GradePO gradePO = GradeDTO.convertParamToPO(param, (long) user.getUID()); GradePO gradePO = GradeDTO.convertParamToPO(param, (long) user.getUID());
String oldGradeNo = getGradeMapper().getGradeByID(gradePO.getId()).getGradeNo(); OrganizationAssert.isTrue(checkRepeatNo(gradePO.getSchemeId(), gradePO.getGradeNo(), gradePO.getId()), "同一等级方案下编号不能重复");
if (!oldGradeNo.equals(gradePO.getGradeNo())) {
List<GradePO> list = getGradeMapper().listByNo(Util.null2String(param.getGradeNo()));
OrganizationAssert.isEmpty(list, "编号不允许重复");
}
return getGradeMapper().updateGrade(gradePO); return getGradeMapper().updateGrade(gradePO);
} }
@ -167,20 +162,20 @@ public class GradeServiceImpl extends Service implements GradeService {
long l = System.currentTimeMillis(); long l = System.currentTimeMillis();
Map<String, Object> completeParams = levelBrowserBean.getCompleteParams(); Map<String, Object> completeParams = levelBrowserBean.getCompleteParams();
completeParams.put("currenttime", l); completeParams.put("currenttime", l);
completeParams.put("scheme_id_"+ l,gradePO.getSchemeId()); completeParams.put("scheme_id_" + l, gradePO.getSchemeId());
completeParams.put("level_id_"+ l,"''"); completeParams.put("level_id_" + l, "''");
Map<String, Object> conditionDataParams = levelBrowserBean.getConditionDataParams(); Map<String, Object> conditionDataParams = levelBrowserBean.getConditionDataParams();
conditionDataParams.put("currenttime", l); conditionDataParams.put("currenttime", l);
conditionDataParams.put("scheme_id_"+ l,gradePO.getSchemeId()); conditionDataParams.put("scheme_id_" + l, gradePO.getSchemeId());
conditionDataParams.put("level_id_"+ l,"''"); conditionDataParams.put("level_id_" + l, "''");
Map<String, Object> dataParams = levelBrowserBean.getDataParams(); Map<String, Object> dataParams = levelBrowserBean.getDataParams();
dataParams.put("currenttime", l); dataParams.put("currenttime", l);
dataParams.put("scheme_id_"+ l,gradePO.getSchemeId()); dataParams.put("scheme_id_" + l, gradePO.getSchemeId());
dataParams.put("level_id_"+ l,"''"); dataParams.put("level_id_" + l, "''");
Map<String, Object> destDataParams = levelBrowserBean.getDestDataParams(); Map<String, Object> destDataParams = levelBrowserBean.getDestDataParams();
destDataParams.put("currenttime", l); destDataParams.put("currenttime", l);
destDataParams.put("scheme_id_"+ l,gradePO.getSchemeId()); destDataParams.put("scheme_id_" + l, gradePO.getSchemeId());
destDataParams.put("level_id_"+ l,"''"); destDataParams.put("level_id_" + l, "''");
levelBrowserItem.setBrowserConditionParam(levelBrowserBean); levelBrowserItem.setBrowserConditionParam(levelBrowserBean);
@ -253,4 +248,11 @@ public class GradeServiceImpl extends Service implements GradeService {
return sqlWhere; return sqlWhere;
} }
/**
*
*/
private boolean checkRepeatNo(Long schemeId, String no, Long id) {
return 0 == getGradeMapper().checkRepeatNo(schemeId, no, id);
}
} }

@ -153,8 +153,9 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
mergeList.addAll(hrmFieldBeanList); mergeList.addAll(hrmFieldBeanList);
mergeList.addAll(customFieldList); mergeList.addAll(customFieldList);
// TODO 分部、部门
List<FieldTypeTreeParam> fieldDatas = mergeList.stream().map(item -> FieldTypeTreeParam.builder().id(item.getFieldId()).name(item.getFieldLabel()).build()).collect(Collectors.toList()); List<FieldTypeTreeParam> fieldDatas = mergeList.stream().map(item -> FieldTypeTreeParam.builder().id(item.getFieldId()).name(item.getFieldLabel()).build()).collect(Collectors.toList());
List<Long> selectedKeys = mergeList.stream().filter(item -> ("1".equals(item.getRequired()) || "hrmresource".equals(item.getTableName()))).map(CusFormFieldPO::getFieldId).collect(Collectors.toList()); List<Long> selectedKeys = mergeList.stream().filter(item -> ("1".equals(item.getRequired()) || "subcompanyid1".equals(item.getFieldName()) || "departmentid".equals(item.getFieldName()))).map(CusFormFieldPO::getFieldId).collect(Collectors.toList());
returnMaps.put("data", fieldDatas); returnMaps.put("data", fieldDatas);
returnMaps.put("selectedKeys", selectedKeys); returnMaps.put("selectedKeys", selectedKeys);
@ -657,6 +658,14 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
if (StringUtils.isBlank(Util.null2String(map.get("forbidden_tag")))) { if (StringUtils.isBlank(Util.null2String(map.get("forbidden_tag")))) {
map.put("forbidden_tag", 0); map.put("forbidden_tag", 0);
} }
String showOrder = Util.null2String(map.get("show_order"));
if (StringUtils.isBlank(showOrder)) {
Integer maxShowOrder = MapperProxyFactory.getProxy(CompMapper.class).getMaxShowOrder();
if (null == maxShowOrder) {
maxShowOrder = 0;
}
map.put("show_order", maxShowOrder + 1);
}
Map<String, Object> syncMap = new OrganizationSyncEc(user, LogModuleNameEnum.COMPANY, OperateTypeEnum.ADD, map, false).sync(); Map<String, Object> syncMap = new OrganizationSyncEc(user, LogModuleNameEnum.COMPANY, OperateTypeEnum.ADD, map, false).sync();
if (isThrowError(syncMap)) { if (isThrowError(syncMap)) {
@ -861,7 +870,14 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
if (StringUtils.isBlank(Util.null2String(map.get("forbidden_tag")))) { if (StringUtils.isBlank(Util.null2String(map.get("forbidden_tag")))) {
map.put("forbidden_tag", 0); map.put("forbidden_tag", 0);
} }
String showOrder = Util.null2String(map.get("show_order"));
if (StringUtils.isBlank(showOrder)) {
Integer maxShowOrder = MapperProxyFactory.getProxy(DepartmentMapper.class).getMaxShowOrder();
if (null == maxShowOrder) {
maxShowOrder = 0;
}
map.put("show_order", maxShowOrder + 1);
}
Map<String, Object> syncMap = new OrganizationSyncEc(user, LogModuleNameEnum.DEPARTMENT, OperateTypeEnum.ADD, map, false).sync(); Map<String, Object> syncMap = new OrganizationSyncEc(user, LogModuleNameEnum.DEPARTMENT, OperateTypeEnum.ADD, map, false).sync();
if (isThrowError(syncMap)) { if (isThrowError(syncMap)) {
// 查询UUID // 查询UUID
@ -1093,6 +1109,14 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
if (StringUtils.isBlank(Util.null2String(map.get("forbidden_tag")))) { if (StringUtils.isBlank(Util.null2String(map.get("forbidden_tag")))) {
map.put("forbidden_tag", 0); map.put("forbidden_tag", 0);
} }
String showOrder = Util.null2String(map.get("show_order"));
if (StringUtils.isBlank(showOrder)) {
Integer maxShowOrder = MapperProxyFactory.getProxy(JobMapper.class).getMaxShowOrder();
if (null == maxShowOrder) {
maxShowOrder = 0;
}
map.put("show_order", maxShowOrder + 1);
}
ExtendInfoParams infoParams = ExtendInfoParams.builder().tableName("JCL_ORG_JOB").params(map).build(); ExtendInfoParams infoParams = ExtendInfoParams.builder().tableName("JCL_ORG_JOB").params(map).build();
map.put("jobactivityid", JobServiceImpl.JOB_ACTIVITY_ID); map.put("jobactivityid", JobServiceImpl.JOB_ACTIVITY_ID);

@ -497,7 +497,7 @@ public class JobServiceImpl extends Service implements JobService {
return; return;
} }
DepartmentPO parentDept = getDepartmentMapper().getDeptById(departmentPO.getParentDept()); DepartmentPO parentDept = getDepartmentMapper().getDeptById(departmentPO.getParentDept());
if (null != parentDept) { if (null != parentDept && 0 == parentDept.getForbiddenTag()) {
buildParentDepts(parentDept, builderDeparts); buildParentDepts(parentDept, builderDeparts);
} }
} }
@ -514,7 +514,7 @@ public class JobServiceImpl extends Service implements JobService {
return; return;
} }
CompPO parentComp = getCompMapper().listById(compPO.getParentCompany()); CompPO parentComp = getCompMapper().listById(compPO.getParentCompany());
if (null != parentComp) { if (null != parentComp && 0 == parentComp.getForbiddenTag()) {
buildParentComps(parentComp, builderComps); buildParentComps(parentComp, builderComps);
} }
} }
@ -532,13 +532,13 @@ public class JobServiceImpl extends Service implements JobService {
// 通过分部、公司 组装数据 // 通过分部、公司 组装数据
if (StringUtil.isEmpty(id) || TYPE_COMP.equals(type)) { if (StringUtil.isEmpty(id) || TYPE_COMP.equals(type)) {
Long parentCompId = StringUtil.isEmpty(id) ? null : Long.parseLong(id); Long parentCompId = StringUtil.isEmpty(id) ? null : Long.parseLong(id);
DepartmentPO departmentBuild = DepartmentPO.builder().deptName(keyword).parentComp(parentCompId).build(); DepartmentPO departmentBuild = DepartmentPO.builder().deptName(keyword).parentComp(parentCompId).forbiddenTag(0).build();
CompPO compBuild = CompPO.builder().compName(keyword).parentCompany(parentCompId).build(); CompPO compBuild = CompPO.builder().compName(keyword).parentCompany(parentCompId).forbiddenTag(0).build();
searchTree = buildTreeByCompAndDept(departmentBuild, compBuild); searchTree = buildTreeByCompAndDept(departmentBuild, compBuild);
} else if (TYPE_DEPT.equals(type)) { } else if (TYPE_DEPT.equals(type)) {
// //
// 查询部门信息 // 查询部门信息
List<DepartmentPO> filterDeparts = getDepartmentMapper().listByFilter(DepartmentPO.builder().deptName(keyword).parentDept(Long.parseLong(id)).build(), "show_order"); List<DepartmentPO> filterDeparts = getDepartmentMapper().listByFilter(DepartmentPO.builder().deptName(keyword).forbiddenTag(0).parentDept(Long.parseLong(id)).build(), "show_order");
Set<DepartmentPO> builderDeparts = new HashSet<>(); Set<DepartmentPO> builderDeparts = new HashSet<>();
for (DepartmentPO departmentPO : filterDeparts) { for (DepartmentPO departmentPO : filterDeparts) {
buildParentDepts(departmentPO, builderDeparts); buildParentDepts(departmentPO, builderDeparts);

@ -70,7 +70,7 @@ public class LevelServiceImpl extends Service implements LevelService {
public int saveLevel(LevelSearchParam param) { public int saveLevel(LevelSearchParam param) {
HasRightUtil.hasRight(user, RIGHT_NAME, false); HasRightUtil.hasRight(user, RIGHT_NAME, false);
List<LevelPO> list = getLevelMapper().listByNo(Util.null2String(param.getLevelNo())); List<LevelPO> list = getLevelMapper().listByNo(Util.null2String(param.getLevelNo()));
OrganizationAssert.isEmpty(list, "编号不允许重复"); OrganizationAssert.isTrue(checkRepeatNo(param.getSchemeId(), param.getLevelNo(), null), "同一等级方案下编号不能重复");
LevelPO levelPO = LevelDTO.convertParamToPO(param, (long) user.getUID()); LevelPO levelPO = LevelDTO.convertParamToPO(param, (long) user.getUID());
return getLevelMapper().insertIgnoreNull(levelPO); return getLevelMapper().insertIgnoreNull(levelPO);
} }
@ -79,12 +79,7 @@ public class LevelServiceImpl extends Service implements LevelService {
public int updateLevel(LevelSearchParam param) { public int updateLevel(LevelSearchParam param) {
HasRightUtil.hasRight(user, RIGHT_NAME, false); HasRightUtil.hasRight(user, RIGHT_NAME, false);
LevelPO levelPO = LevelDTO.convertParamToPO(param, (long) user.getUID()); LevelPO levelPO = LevelDTO.convertParamToPO(param, (long) user.getUID());
// 更新前先查询下旧编号, OrganizationAssert.isTrue(checkRepeatNo(levelPO.getSchemeId(), levelPO.getLevelNo(), levelPO.getId()), "同一等级方案下编号不能重复");
String oldLevelNo = getLevelMapper().getLevelByID(levelPO.getId()).getLevelNo();
if (!oldLevelNo.equals(levelPO.getLevelNo())) {
List<LevelPO> list = getLevelMapper().listByNo(Util.null2String(levelPO.getLevelNo()));
OrganizationAssert.isEmpty(list, "编号不允许重复");
}
return getLevelMapper().updateLevel(levelPO); return getLevelMapper().updateLevel(levelPO);
} }
@ -220,4 +215,11 @@ public class LevelServiceImpl extends Service implements LevelService {
} }
return sqlWhere; return sqlWhere;
} }
/**
*
*/
private boolean checkRepeatNo(Long schemeId, String no, Long id) {
return 0 == getLevelMapper().checkRepeatNo(schemeId, no, id);
}
} }

@ -282,8 +282,9 @@ public class HrmImportAdaptExcelE9 extends BaseBean implements IHrmImportAdapt {
cellValue = getCellValue(cell).trim(); cellValue = getCellValue(cell).trim();
for (int k = 0; k < temFields.length; k++) { for (int k = 0; k < temFields.length; k++) {
if (cellValue.equals(temFields[k])) { if (cellValue.equals(temFields[k])) {
// 初始化必填字段下标 // TODO 初始化必填字段下标
String requiredFields = "所属分部,部门,姓名,岗位,职务,职务类别,办公地点"; String requiredFields = "所属分部,部门,姓名,岗位,职务,职务类别,办公地点";
requiredFields = "所属分部,部门,登录名,姓名,性别,状态,办公地点,入职日期,参加工作日期,担任岗位,职等职级,担任职务";
List<String> requiredFieldList = Arrays.asList(requiredFields.split(",")); List<String> requiredFieldList = Arrays.asList(requiredFields.split(","));
if (requiredFieldList.contains(cellValue)) { if (requiredFieldList.contains(cellValue)) {

@ -88,8 +88,9 @@ public class SearchTreeUtil {
* @return * @return
*/ */
public static List<SearchTree> builderTreeMode(List<SearchTree> treeList) { public static List<SearchTree> builderTreeMode(List<SearchTree> treeList) {
Map<String, List<TreeNode>> collects = treeList.stream().collect(Collectors.groupingBy(TreeNode::getPid)); List<SearchTree> sortedList = treeList.stream().sorted(Comparator.comparing(SearchTree::getOrderNum)).collect(Collectors.toList());
return treeList.stream().peek(e -> e.setSubs(collects.get(e.getId()))).peek(item -> { Map<String, List<TreeNode>> collects = sortedList.stream().collect(Collectors.groupingBy(TreeNode::getPid));
return sortedList.stream().peek(e -> e.setSubs(collects.get(e.getId()))).peek(item -> {
if (CollectionUtils.isNotEmpty(item.getSubs())) { if (CollectionUtils.isNotEmpty(item.getSubs())) {
item.setIsParent(true); item.setIsParent(true);
} }

Loading…
Cancel
Save