考勤,考勤日报视图刷新功能修改,用助记码替代名称;日历排班列表查询条件增加状态字段

main
sy 6 months ago
parent 7c2ba0f269
commit 5680590a31

@ -257,8 +257,8 @@ public class AttendanceSummaryServiceImpl extends Service implements AttendanceS
bs.writeLog("columns : " + columns);
//收集考勤项目id-核算单位映射
Map<String, String> kqxmUnitInfo = kqxmDates.stream().collect(Collectors.toMap(e->Util.null2String(e.get("id")),e->Util.null2String(e.get("hsdw"))));
//收集考勤项目id-考勤项目名称映射
Map<String, String> kqxmMcInfo = kqxmDates.stream().collect(Collectors.toMap(e->Util.null2String(e.get("id")),e->Util.null2String(e.get("mc"))));
//收集考勤项目id-考勤项目名称映射, 20241031需求变更字段“助记码”代替“名称”
Map<String, String> kqxmMcInfo = kqxmDates.stream().collect(Collectors.toMap(e->Util.null2String(e.get("id")),e->Util.null2String(e.get("zjm"))));
//获取列表结果typeSelect为9、10时查询出勤汇总明细表数据其他则生成临时汇总数据
List<Map<String,Object>> dtDates = null;
LocalDate targetDate = LocalDate.now(); // 获取当前日期
@ -489,37 +489,39 @@ public class AttendanceSummaryServiceImpl extends Service implements AttendanceS
//拼接视图内容sql
StringBuilder viewResourceSql = new StringBuilder("SELECT id, ygid, rq, fbid, bm, zw, bc");
//考勤项目核算单位、id、名称
//20241031需求变更字段“助记码”代替“名称”
String hsdw = "";
String kqxmId = "";
String mc = "";
// String mc = "";
String zjm = "";
for (Map<String, Object> kqxmInfo : kqxmList) {
hsdw = Util.null2String(kqxmInfo.get("hsdw"));
kqxmId = Util.null2String(kqxmInfo.get("id"));
mc = Util.null2String(kqxmInfo.get("mc"));
zjm = Util.null2String(kqxmInfo.get("zjm"));
int lengthCompareValue = "字".getBytes().length * 9;
int mcLength = mc.getBytes().length;
if ("oracle".equals(dbType) && mcLength > lengthCompareValue) {
mc = mc.substring(0,9);
int zjmLength = zjm.getBytes().length;
if ("oracle".equals(dbType) && zjmLength > lengthCompareValue) {
zjm = zjm.substring(0,9);
}
if ("0".equals(hsdw)) {
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN sc ELSE 0 END) AS \"").append(mc).append("_t\"");
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN 1 ELSE 0 END) AS \"").append(mc).append("_c\"");
viewColumn.append(",").append(mc).append("_t").append(",").append(mc).append("_c");
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN sc ELSE 0 END) AS \"").append(zjm).append("_t\"");
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN 1 ELSE 0 END) AS \"").append(zjm).append("_c\"");
viewColumn.append(",").append(zjm).append("_t").append(",").append(zjm).append("_c");
} else if ("1".equals(hsdw)) {
if ("1".equals(kqxmId)) {
viewResourceSql.append(", SUM(CASE WHEN xm = 1 OR xm = 5").append(" THEN sc ELSE 0 END) AS \"").append(mc).append("_s\"");
viewResourceSql.append(", SUM(CASE WHEN xm = 1 OR xm = 5").append(" THEN sc ELSE 0 END) AS \"").append(zjm).append("_s\"");
} else {
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN sc ELSE 0 END) AS \"").append(mc).append("_s\"");
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN sc ELSE 0 END) AS \"").append(zjm).append("_s\"");
}
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN 1 ELSE 0 END) AS \"").append(mc).append("_c\"");
viewColumn.append(",").append(mc).append("_s").append(",").append(mc).append("_c");
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN 1 ELSE 0 END) AS \"").append(zjm).append("_c\"");
viewColumn.append(",").append(zjm).append("_s").append(",").append(zjm).append("_c");
} else if ("2".equals(hsdw)) {
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN sc ELSE 0 END) AS \"").append(mc).append("_f\"");
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN 1 ELSE 0 END) AS \"").append(mc).append("_c\"");
viewColumn.append(",").append(mc).append("_f").append(",").append(mc).append("_c");
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN sc ELSE 0 END) AS \"").append(zjm).append("_f\"");
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN 1 ELSE 0 END) AS \"").append(zjm).append("_c\"");
viewColumn.append(",").append(zjm).append("_f").append(",").append(zjm).append("_c");
} else {
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN 1 ELSE 0 END) AS \"").append(mc).append("_c\"");
viewColumn.append(",").append(mc).append("_c");
viewResourceSql.append(", SUM(CASE WHEN xm = ").append(kqxmId).append(" THEN 1 ELSE 0 END) AS \"").append(zjm).append("_c\"");
viewColumn.append(",").append(zjm).append("_c");
}
}
//ifnull函数的适配
@ -1568,7 +1570,7 @@ public class AttendanceSummaryServiceImpl extends Service implements AttendanceS
itemMap.put("ls", String.format("%.2f", time));
}
if (accountUnit.equals(AccountingUnitEnum.MINUTES.getKey())) {
itemMap.put("lf", String.format("%.2f", time));
itemMap.put("lf", String.format("%.0f", time));
}
dailyKqAddList.add(itemMap);
}

@ -96,6 +96,7 @@ public class WorkRulesServiceImpl extends Service implements WorkRulesService {
String employeeIds = Util.null2String(params.get("employeeIds"));
String username = Util.null2String(params.get("username"));
String psersongroup = Util.null2String(params.get("psersongroup"));
String status = Util.null2String(params.get("status"));
String userId = Util.null2String(user.getUID());
//0:全体人员、1分部、2部门,3:人员
@ -112,6 +113,9 @@ public class WorkRulesServiceImpl extends Service implements WorkRulesService {
if (!"".equals(username)){
conditions = conditions +" and lastname like '%"+username+"%'";
}
if (!"".equals(status)){
conditions = conditions +" and status in (" + status + ")";
}
Set<String> psersongroupUserIds = null;
if (!"".equals(psersongroup)){
psersongroupUserIds = CommonUtil.getEmpGroupUserIds(psersongroup);

Loading…
Cancel
Save