代码更新

This commit is contained in:
2022-11-14 16:42:27 +08:00
parent 1233cf3aec
commit fcd828d13f

View File

@@ -385,6 +385,20 @@ public class PerformancemstServiceImpl implements PerformancemstService {
JSONArray are = new JSONArray();
JSONArray re = WQL.getWO("QL_TEST_PERFORMANCEMST01").addParamMap(map).process().getResultJSONArray(0);
// ===== 2.根据日期查出当天日期所有人员及分数
// 总出勤时间
JSONObject jsonAllTime = new JSONObject();
jsonAllTime.put("assessor_date", "总出勤时间");
// 总积分
JSONObject jsonAllTotal = new JSONObject();
jsonAllTotal.put("assessor_date", "总积分");
// 工时效率
JSONObject jsonEta = new JSONObject();
jsonEta.put("assessor_date", "工时效率");
// 与班组平均对比
JSONObject jsonContrast = new JSONObject();
jsonContrast.put("assessor_date", "与班组平均对比");
for (int i = 0; i < re.size(); i++) {
JSONObject json = re.getJSONObject(i);
JSONArray userArr = WQL.getWO("QL_TEST_PERFORMANCEMST01").addParam("flag", "7").addParam("assessor_date", json.getString("assessor_date")).process().getResultJSONArray(0);
@@ -397,6 +411,57 @@ public class PerformancemstServiceImpl implements PerformancemstService {
total = total + json2.getDoubleValue("total_score");
average = NumberUtil.div(total, userArr.size());
JSONObject map1 = new JSONObject();
map1.put("flag", "9");
map1.put("begin_time", begin_time);
map1.put("end_time", end_time);
map1.put("assessor_id", json2.getString("assessor_id"));
// 计算总出勤时间
JSONObject jsonAllTimeNum = WQL.getWO("QL_TEST_PERFORMANCEMST01").addParamMap(map1).process().uniqueResult(0);
jsonAllTime.put(json2.getString("assessor_id"),jsonAllTimeNum.getString("num"));
// 计算总积分
map1.put("flag", "10");
JSONObject jsonAllTotalNum = WQL.getWO("QL_TEST_PERFORMANCEMST01").addParamMap(map1).process().uniqueResult(0);
jsonAllTotal.put(json2.getString("assessor_id"),jsonAllTotalNum.getString("num"));
// 计算工时效率:总积分 / 总出勤时间
try {
String eta = NumberUtil.div(jsonAllTotalNum.getString("num"), jsonAllTimeNum.getString("num")).toString();
jsonEta.put(json2.getString("assessor_id"),NumberUtil.round(eta, 2));
} catch (Exception e) {
jsonEta.put(json2.getString("assessor_id"),"0");
}
// 计算与班组平均对比:个人工时效率 - 所有人总积分 / 所有人总出勤时间
map1.put("flag", "9");
map1.put("assessor_id", "");
double allPersonTotal = 0; // 所有人总积分
double allPersonTime = 0; // 所有人总出勤时间
JSONArray allPersonTimeArr = WQL.getWO("QL_TEST_PERFORMANCEMST01").addParamMap(map1).process().getResultJSONArray(0);
for (int k = 0; k < allPersonTimeArr.size(); k++) {
JSONObject jsonObject1 = allPersonTimeArr.getJSONObject(k);
allPersonTime = NumberUtil.add(allPersonTime,jsonObject1.getDoubleValue("num"));
}
map1.put("flag", "10");
JSONArray allPersonTotalArr = WQL.getWO("QL_TEST_PERFORMANCEMST01").addParamMap(map1).process().getResultJSONArray(0);
for (int k = 0; k < allPersonTotalArr.size(); k++) {
JSONObject jsonObject1 = allPersonTotalArr.getJSONObject(k);
allPersonTotal = NumberUtil.add(allPersonTotal,jsonObject1.getDoubleValue("num"));
}
// 与班组平均对比计算结果
try {
String contrast = NumberUtil.sub(jsonEta.getString(json2.getString("assessor_id")), String.valueOf(NumberUtil.div(allPersonTotal, allPersonTime))).toString();
jsonContrast.put(json2.getString("assessor_id"),NumberUtil.round(contrast, 2));
} catch (Exception e) {
jsonContrast.put(json2.getString("assessor_id"),"0");
}
}
//查询出有多少个员工 要用到它们的个数
@@ -406,6 +471,11 @@ public class PerformancemstServiceImpl implements PerformancemstService {
are.add(json);
}
are.add(0, jsonAllTime);
are.add(1, jsonAllTotal);
are.add(2, jsonEta);
are.add(3, jsonContrast);
List<Map<String, Object>> list = new ArrayList<>();
for (int i = 0; i < are.size(); i++) {
JSONObject json = are.getJSONObject(i);