列定制 全局模板
This commit is contained in:
parent
c33532c241
commit
b58378854b
|
|
@ -5,6 +5,8 @@ import lombok.Builder;
|
|||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author:dxfeng
|
||||
* @createTime: 2023/01/05
|
||||
|
|
@ -19,4 +21,21 @@ public class SearchTemplateParam {
|
|||
//private boolean selected;
|
||||
private String showname;
|
||||
private String fields;
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) {
|
||||
return true;
|
||||
}
|
||||
if (o == null || getClass() != o.getClass()) {
|
||||
return false;
|
||||
}
|
||||
SearchTemplateParam that = (SearchTemplateParam) o;
|
||||
return key.equals(that.key);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Objects.hash(key);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -64,4 +64,6 @@ public class JclOrgCustomTemplatePO implements Serializable {
|
|||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private Integer overall;
|
||||
|
||||
}
|
||||
|
|
@ -147,7 +147,7 @@
|
|||
select id,
|
||||
name
|
||||
from jcl_org_custom_template
|
||||
where creator = #{userId}
|
||||
where creator = #{userId} and overall is null
|
||||
</select>
|
||||
|
||||
<select id="getCustomOverAll" resultMap="SearchTemplateMap">
|
||||
|
|
@ -452,7 +452,7 @@
|
|||
select *
|
||||
from jcl_org_custom_template
|
||||
where ISUSED = 1
|
||||
and overall = 0
|
||||
and overall is null
|
||||
and creator = #{userId}
|
||||
</select>
|
||||
|
||||
|
|
|
|||
|
|
@ -14,12 +14,13 @@
|
|||
<result property="creator" column="creator" jdbcType="INTEGER"/>
|
||||
<result property="createTime" column="create_time" jdbcType="DATE"/>
|
||||
<result property="updateTime" column="update_time" jdbcType="DATE"/>
|
||||
<result property="overall" column="overall"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
id,name,basic_fields,
|
||||
personal_fields,work_fields,isused,
|
||||
creator,create_time,update_time
|
||||
creator,create_time,update_time,overall
|
||||
</sql>
|
||||
|
||||
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
|
||||
|
|
@ -132,9 +133,7 @@
|
|||
<update id="updateUsed" parameterType="java.lang.String">
|
||||
update JCL_ORG_CUSTOM_TEMPLATE set isused = #{isused}
|
||||
<where>
|
||||
<if test="overall !=null">
|
||||
overall = #{overall}
|
||||
</if>
|
||||
overall is null
|
||||
<if test="id !=null">
|
||||
and id = #{id}
|
||||
</if>
|
||||
|
|
@ -147,7 +146,7 @@
|
|||
<select id="queryIsusedTemp" parameterType="java.lang.String" resultMap="BaseResultMap">
|
||||
select
|
||||
<include refid="Base_Column_List" />
|
||||
from JCL_ORG_CUSTOM_TEMPLATE t where t.isused = #{isused} and t.creator = #{creator}
|
||||
from JCL_ORG_CUSTOM_TEMPLATE t where t.isused = #{isused} and t.creator = #{creator} and overall is null
|
||||
</select>
|
||||
|
||||
<select id="queryOverAll" parameterType="java.lang.String" resultMap="BaseResultMap">
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ import com.engine.organization.entity.search.QuickSearchDetail;
|
|||
import com.engine.organization.entity.searchtree.SearchTree;
|
||||
import com.engine.organization.entity.searchtree.SearchTreeParams;
|
||||
import com.engine.organization.enums.HrmGroupEnum;
|
||||
import com.engine.organization.exception.OrganizationRunTimeException;
|
||||
import com.engine.organization.mapper.comp.CompMapper;
|
||||
import com.engine.organization.mapper.condition.QuickSearchMapper;
|
||||
import com.engine.organization.mapper.department.DepartmentMapper;
|
||||
|
|
@ -320,19 +321,32 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
|
|||
int userUID = user.getUID();
|
||||
// 根据ID查询所存储的模板
|
||||
List<SearchTemplateParam> templates;
|
||||
boolean addDefault = true;
|
||||
if ("custom".equals(type)) {
|
||||
templates = getHrmResourceMapper().getCustomTemplatesByUser(userUID);
|
||||
SearchTemplatePO overallCustomTemplate = getHrmResourceMapper().getOverallCustomTemplate();
|
||||
if (null != overallCustomTemplate) {
|
||||
if("-1".equals(id)) {
|
||||
id = overallCustomTemplate.getId().toString();
|
||||
}
|
||||
templates.add(SearchTemplateParam.builder().key(overallCustomTemplate.getId().toString()).showname(overallCustomTemplate.getName()).build());
|
||||
//}
|
||||
addDefault = false;
|
||||
}
|
||||
returnMap.put("id", id);
|
||||
} else {
|
||||
templates = getHrmResourceMapper().getSearchTemplatesByUser(userUID);
|
||||
}
|
||||
if (addDefault) {
|
||||
templates.add(0, SearchTemplateParam.builder().key("-1").showname("默认模板").build());
|
||||
}
|
||||
|
||||
//1.增加全局模板
|
||||
if (userUID != 1) {
|
||||
templates.addAll(getHrmResourceMapper().getCustomOverAll());
|
||||
}
|
||||
returnMap.put("templates", templates);
|
||||
LinkedHashSet<Object> objects = new LinkedHashSet<>(templates);
|
||||
returnMap.put("templates", objects);
|
||||
return returnMap;
|
||||
}
|
||||
|
||||
|
|
@ -423,20 +437,21 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
|
|||
}
|
||||
transferOptions.add(SearchTemplateParam.builder().key(Integer.toString(idx.getAndIncrement())).showname(allCondition.getTitle()).build());
|
||||
}
|
||||
if ("-1".equals(templateId)) {
|
||||
|
||||
|
||||
// 查询当前使用的模板,没有使用的,则展示默认模板
|
||||
SearchTemplatePO usedCustomTemplate = getHrmResourceMapper().getUsedCustomTemplateByUser(user.getUID());
|
||||
if (null == usedCustomTemplate) {
|
||||
if ("-1".equals(templateId)) {
|
||||
String selectKeys = "-1_hrm_lastname,-1_hrm_departmentid,-1_hrm_jobtitle,-1_hrm_mobile,-1_hrm_telephone,-1_hrm_managerid";
|
||||
transferKeys = Arrays.asList(selectKeys.split(","));
|
||||
} else {
|
||||
transferKeys = getSelectKeys(usedCustomTemplate);
|
||||
templateId = usedCustomTemplate.getId().toString();
|
||||
SearchTemplatePO overallCustomTemplate = getHrmResourceMapper().getOverallCustomTemplate();
|
||||
if (null != overallCustomTemplate) {
|
||||
transferKeys = getSelectKeys(overallCustomTemplate);
|
||||
}
|
||||
} else {
|
||||
SearchTemplatePO searchTemplateById = getHrmResourceMapper().getCustomTemplateById(templateId);
|
||||
transferKeys = getSelectKeys(searchTemplateById);
|
||||
}
|
||||
|
||||
transferOptions.add(0, SearchTemplateParam.builder().key("").showname("").build());
|
||||
resultMap.put("transferDatas", transferDatas);
|
||||
resultMap.put("transferKeys", transferKeys);
|
||||
|
|
@ -458,13 +473,17 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
|
|||
} else {
|
||||
jclOrgCustomTemplatePO = getJclOrgCustomTemplateMapper().selectByPrimaryKey(Long.parseLong(templateId));
|
||||
if (jclOrgCustomTemplatePO != null) {
|
||||
//取消已启用模板
|
||||
getJclOrgCustomTemplateMapper().updateUsed(0, "0", null, String.valueOf(user.getUID()));
|
||||
if (!user.isAdmin() && jclOrgCustomTemplatePO.getOverall() != null && "1".equals(jclOrgCustomTemplatePO.getOverall().toString())) {
|
||||
throw new OrganizationRunTimeException(SystemEnv.getHtmlLabelName(547857, user.getLanguage()));
|
||||
}
|
||||
jclOrgCustomTemplatePO.setId(Integer.valueOf(templateId));
|
||||
jclOrgCustomTemplatePO.setBasicFields(templatePO.getBasicFields());
|
||||
jclOrgCustomTemplatePO.setPersonalFields(templatePO.getPersonalFields());
|
||||
jclOrgCustomTemplatePO.setWorkFields(templatePO.getWorkFields());
|
||||
jclOrgCustomTemplatePO.setIsused(1);
|
||||
//取消已启用模板
|
||||
getJclOrgCustomTemplateMapper().updateUsed(0,"0", null, String.valueOf(user.getUID()));
|
||||
|
||||
//启用当前模板
|
||||
getJclOrgCustomTemplateMapper().updateByPrimaryKeySelective(jclOrgCustomTemplatePO);
|
||||
}
|
||||
|
|
@ -535,7 +554,7 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
|
|||
RecordSet rs = new RecordSet();
|
||||
Map<String, Object> data = new HashMap<>(2);
|
||||
//1.将已有所有人的模板状态改变
|
||||
rs.executeUpdate("update jcl_org_custom_template set overall = 0 where overall = 1");
|
||||
rs.executeUpdate("update jcl_org_custom_template set overall = null where overall = 1");
|
||||
//2.应用当前模板到所有人
|
||||
String templateId = Util.null2String(params.get("templateId"));
|
||||
boolean b = rs.executeUpdate("update jcl_org_custom_template set overall = 1,isused=1 where id = ?", templateId);
|
||||
|
|
@ -617,6 +636,7 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
|
|||
|
||||
/**
|
||||
* 获取当前用户使用的列定制模板Id
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
private String getCustomTemplateId() {
|
||||
|
|
|
|||
Loading…
Reference in New Issue