Merge pull request '1.花名册定制列table字段顺序调整无效修复' (#226) from feature/cl into develop
Reviewed-on: http://221.226.25.34:3000/liang.cheng/weaver-hrm-organization/pulls/226
This commit is contained in:
commit
20d5ca6861
|
|
@ -21,6 +21,7 @@ import org.apache.commons.collections.CollectionUtils;
|
|||
import org.apache.commons.lang3.StringUtils;
|
||||
import weaver.conn.RecordSet;
|
||||
import weaver.conn.RecordSetTrans;
|
||||
import weaver.general.BaseBean;
|
||||
import weaver.general.Util;
|
||||
import weaver.hrm.User;
|
||||
import weaver.hrm.company.DepartmentComInfo;
|
||||
|
|
@ -654,6 +655,10 @@ public class ChartServiceImpl extends Service implements ChartService {
|
|||
" and b.plan_year = ?");
|
||||
}
|
||||
|
||||
if ("false".equals(new BaseBean().getPropValue("hrmOrganization","accountType"))) {
|
||||
jobSql.append(" and accounttype != 1");
|
||||
}
|
||||
|
||||
rs.executeQuery(jobSql.toString());
|
||||
rs.next();
|
||||
stp.setOnJobNum(Util.getIntValue(rs.getString("count")));
|
||||
|
|
|
|||
|
|
@ -69,6 +69,7 @@ import java.time.LocalDate;
|
|||
import java.util.*;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.IntStream;
|
||||
|
||||
import static weaver.general.Util.getIntValue;
|
||||
|
||||
|
|
@ -169,25 +170,29 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
|
|||
|
||||
List<String> columnList = Arrays.asList(columns.split(","));
|
||||
BigDecimal decimal = new BigDecimal(100 / columnList.size());
|
||||
List<SearchConditionItem> all = new ArrayList<>();
|
||||
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(".", "_"));
|
||||
all.addAll(allCondition.getItems());
|
||||
|
||||
String scopeId = columnName.split("_")[0];
|
||||
String fieldName = columnName.substring(columnName.lastIndexOf("_") + 1);
|
||||
WeaTableColumn weaTableColumn = new WeaTableColumn();
|
||||
weaTableColumn.setText(getHrmResourceMapper().queryLabelName(fieldName, scopeId));
|
||||
weaTableColumn.setColumn(buildTableSql(columnName).replace(".", "_"));
|
||||
|
||||
weaTableColumn.setDisplay(columnList.contains(columnName) ? WeaBoolAttr.TRUE : WeaBoolAttr.FALSE);
|
||||
weaTableColumn.setTransmethod("com.engine.organization.transmethod.HrmResourceTransMethod.getFieldTrueValue");
|
||||
weaTableColumn.setOtherpara(columnName);
|
||||
weaTableColumn.setWidth(decimal.setScale(2, RoundingMode.HALF_UP).doubleValue() + "%");
|
||||
weaTableColumnList.add(weaTableColumn);
|
||||
}
|
||||
}
|
||||
List<SearchConditionItem> items = filterByDomkey(all, columnList);
|
||||
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(buildTableSql(columnName).replace(".", "_"));
|
||||
|
||||
weaTableColumn.setDisplay(columnList.contains(columnName) ? WeaBoolAttr.TRUE : WeaBoolAttr.FALSE);
|
||||
weaTableColumn.setTransmethod("com.engine.organization.transmethod.HrmResourceTransMethod.getFieldTrueValue");
|
||||
weaTableColumn.setOtherpara(columnName);
|
||||
weaTableColumn.setWidth(decimal.setScale(2, RoundingMode.HALF_UP).doubleValue() + "%");
|
||||
weaTableColumnList.add(weaTableColumn);
|
||||
}
|
||||
|
||||
// 增加id字段,跳转人员卡片
|
||||
WeaTableColumn weaTableColumn = new WeaTableColumn();
|
||||
weaTableColumn.setColumn("id");
|
||||
|
|
@ -211,6 +216,28 @@ public class HrmResourceServiceImpl extends Service implements HrmResourceServic
|
|||
return apiDatas;
|
||||
}
|
||||
|
||||
private List<SearchConditionItem> filterByDomkey(List<SearchConditionItem> items, List<String> domkeys) {
|
||||
List<SearchConditionItem> tempResult = items.stream()
|
||||
.filter(item -> domkeys.contains(item.getDomkey()[0]))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
Map<String, SearchConditionItem> hashMap = new HashMap<>();
|
||||
for (SearchConditionItem item : tempResult) {
|
||||
String domkeyElement = item.getDomkey()[0];
|
||||
hashMap.put(domkeyElement, item);
|
||||
}
|
||||
List<SearchConditionItem> resultList = new ArrayList<>();
|
||||
|
||||
for (String domkeyElement : domkeys) {
|
||||
SearchConditionItem item = hashMap.get(domkeyElement);
|
||||
if (item != null) {
|
||||
resultList.add(item);
|
||||
}
|
||||
}
|
||||
|
||||
return resultList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Long saveBaseForm(Map<String, Object> params) {
|
||||
return 0L;
|
||||
|
|
|
|||
|
|
@ -517,6 +517,11 @@ public class StaffServiceImpl extends Service implements StaffService {
|
|||
Integer ecJobTitle = jobById.getEcJobTitle();
|
||||
sql += " and jobtitle = " + ecJobTitle;
|
||||
}
|
||||
|
||||
if ("false".equals(new BaseBean().getPropValue("hrmOrganization","accountType"))) {
|
||||
sql += " and accounttype != 1";
|
||||
}
|
||||
|
||||
rs.executeQuery(sql);
|
||||
if (rs.next()) {
|
||||
staffPO.setPermanentNum(-1 == rs.getInt("num") ? 0 : rs.getInt("num"));
|
||||
|
|
|
|||
Loading…
Reference in New Issue