花名册模板列定制优化20230113

pull/142/head
Mlin 2 years ago
parent 58d5bccddc
commit 78682a47c7

@ -26,7 +26,7 @@ import lombok.NoArgsConstructor;
"t.telephone," +
"t.managerid, " +
"t.dsporder ",
fromSql = "FROM hrmresource t left join cus_fielddata t0 on t.id = t0.id and t0.scopeid ='-1' left join cus_fielddata t1 on t.id = t1.id and t1.scopeid ='1' left join cus_fielddata t2 on t.id = t2.id and t2.scopeid ='3' ",
fromSql = "FROM hrmresource t left join cus_fielddata t0 on t.id = t0.id and t0.scopeid ='-1' left join cus_fielddata t1 on t.id = t1.id and t1.scopeid ='1' left join cus_fielddata t2 on t.id = t2.id and t2.scopeid ='3' left join HRMJOBTITLES t3 on t.JOBTITLE=t3.id left join HRMJOBACTIVITIES t4 on t3.JOBACTIVITYID=t4.ID left join HRMJOBGROUPS t5 on t4.JOBGROUPID=t5.ID ",
orderby = " t.dsporder ",
sortway = " asc",
primarykey = "id",

@ -138,44 +138,65 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
List<WeaTableColumn> weaTableColumnList = new ArrayList<>();
JclOrgCustomTemplatePO jclOrgCustomTemplatePO = MapperProxyFactory.getProxy(JclOrgCustomTemplateMapper.class).queryIsusedTemp("1", String.valueOf(user.getUID()));
String columns = null;
List<String> fields = new ArrayList<>();
List<SearchConditionGroup> allConditions = getAllConditions();
if (jclOrgCustomTemplatePO != null) {
columns = jclOrgCustomTemplatePO.getBasicFields();
if (StringUtils.isNotBlank(jclOrgCustomTemplatePO.getPersonalFields())) {
columns = "," + jclOrgCustomTemplatePO.getPersonalFields();
columns = columns + "," + jclOrgCustomTemplatePO.getPersonalFields();
}
if (StringUtils.isNotBlank(jclOrgCustomTemplatePO.getWorkFields())) {
columns = "," + jclOrgCustomTemplatePO.getWorkFields();
columns = columns + "," + jclOrgCustomTemplatePO.getWorkFields();
}
} else {
//初次使用,无模板初始值
columns = "-1_hrm_lastname,-1_hrm_departmentid,-1_hrm_subcompanyid1,-1_hrm_jobtitle,-1_hrm_mobile,-1_hrm_telephone,-1_hrm_managerid,-1_hrm_sporder";
}
if (StringUtils.isNotBlank(columns)) {
String[] tmp = columns.split(",");
for (int i = 0; i < tmp.length; i++) {
String scopeId = tmp[i].split("_")[0];
String fieldName = tmp[i].substring(tmp[i].lastIndexOf("_") + 1);
List<String> columnList = Arrays.asList(columns.split(","));
for (SearchConditionGroup allCondition : allConditions) {
List<SearchConditionItem> items = allCondition.getItems();
for (SearchConditionItem item : items) {
String columnName = item.getDomkey()[0];
fields.add(buildTableSql(columnName) + " as " + buildTableSql(columnName).replace(".", "_"));
String scopeId = columnName.split("_")[0];
String fieldName = columnName.substring(columnName.lastIndexOf("_") + 1);
WeaTableColumn weaTableColumn = new WeaTableColumn();
weaTableColumn.setText(getHrmResourceMapper().queryLabelName(fieldName, scopeId));
weaTableColumn.setColumn(fieldName);
weaTableColumn.setDisplay(WeaBoolAttr.TRUE);
weaTableColumn.setColumn(buildTableSql(columnName).replace(".", "_"));
weaTableColumn.setDisplay(columnList.contains(columnName) ? WeaBoolAttr.TRUE : WeaBoolAttr.FALSE);
weaTableColumn.setTransmethod("com.engine.organization.transmethod.HrmResourceTransMethod.getFieldTrueValue");
String param = tmp[i];
weaTableColumn.setOtherpara(param);
weaTableColumn.setOtherpara(columnName);
weaTableColumnList.add(weaTableColumn);
}
}
// if (StringUtils.isNotBlank(columns)) {
// String[] tmp = columns.split(",");
// for (int i = 0; i < tmp.length; i++) {
// String scopeId = tmp[i].split("_")[0];
// String fieldName = tmp[i].substring(tmp[i].lastIndexOf("_") + 1);
// WeaTableColumn weaTableColumn = new WeaTableColumn();
// weaTableColumn.setText(getHrmResourceMapper().queryLabelName(fieldName, scopeId));
// weaTableColumn.setColumn(buildTableSql(tmp[i]).replace(".", "_"));
// weaTableColumn.setDisplay(WeaBoolAttr.TRUE);
// weaTableColumn.setTransmethod("com.engine.organization.transmethod.HrmResourceTransMethod.getFieldTrueValue");
// String param = tmp[i];
// weaTableColumn.setOtherpara(param);
// weaTableColumnList.add(weaTableColumn);
// }
// }
// 增加id字段,跳转人员卡片
WeaTableColumn weaTableColumn = new WeaTableColumn();
weaTableColumn.setText("id");
// weaTableColumn.setText("id");
weaTableColumn.setColumn("id");
weaTableColumn.setDisplay(WeaBoolAttr.FALSE);
weaTableColumn.setTransmethod("com.engine.organization.transmethod.HrmResourceTransMethod.getFieldTrueValue");
String param = "-1_hrm_id_" + user.getUID();
weaTableColumn.setOtherpara(param);
weaTableColumnList.add(weaTableColumn);
weaTableColumnList.add(weaTableColumn);
fields.add("t.id");
table.setBackfields(StringUtils.join(fields, ","));
table.setColumns(weaTableColumnList);
WeaResultMsg result = new WeaResultMsg(false);
result.putAll(table.makeDataResult());
@ -366,16 +387,16 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
String templateId = Util.null2String(params.get("templateId"));
SearchTemplatePO templatePO = buildSearchTemplateByFields(columns);
JclOrgCustomTemplatePO jclOrgCustomTemplatePO = new JclOrgCustomTemplatePO();
if (StringUtils.isNotBlank(templateId)){
if (StringUtils.isNotBlank(templateId)) {
jclOrgCustomTemplatePO = getJclOrgCustomTemplateMapper().selectByPrimaryKey(Long.parseLong(templateId));
if (jclOrgCustomTemplatePO!=null){
if (jclOrgCustomTemplatePO != null) {
jclOrgCustomTemplatePO.setId(Integer.valueOf(templateId));
jclOrgCustomTemplatePO.setBasicFields(templatePO.getBasicFields());
jclOrgCustomTemplatePO.setPersonalFields(templatePO.getPersonalFields());
jclOrgCustomTemplatePO.setWorkFields(templatePO.getWorkFields());
jclOrgCustomTemplatePO.setIsused(1);
//取消已启用模板
getJclOrgCustomTemplateMapper().updateUsed("0",templateId,String.valueOf(user.getUID()));
getJclOrgCustomTemplateMapper().updateUsed("0", templateId, String.valueOf(user.getUID()));
//启用当前模板
getJclOrgCustomTemplateMapper().updateByPrimaryKeySelective(jclOrgCustomTemplatePO);
}
@ -1066,6 +1087,13 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
String tableName = s[1];
String fieldName = s[2];
if ("jobactivity".equalsIgnoreCase(fieldName)) {
return "t4.id";
}
if ("jobGroupId".equalsIgnoreCase(fieldName)) {
return "t5.id";
}
if ("hrm".equals(tableName)) {
return sb.append("t.").append(fieldName).toString();
}

Loading…
Cancel
Save