|
@@ -3380,34 +3380,39 @@ public class NCServiceImpl implements NCService {
|
|
|
.build());
|
|
.build());
|
|
|
|
|
|
|
|
//算薪人数
|
|
//算薪人数
|
|
|
- String status = "2,3,5,-1";
|
|
|
|
|
- List<String> filterList = new ArrayList<>();
|
|
|
|
|
- filterList.add("sys00-dept");
|
|
|
|
|
- filterList.add("sys00-mainDept");
|
|
|
|
|
- List<String> workingEmployeeIds = ddClientPersonnel.getWorkingEmployeeIds(ddClient.getAccessToken(), status);
|
|
|
|
|
- List<Map> employeeInfos = ddClientPersonnel.getEmployeeInfos(ddClient.getAccessToken(), workingEmployeeIds, agentId, filterList);
|
|
|
|
|
- List<String> personList = new ArrayList<>();
|
|
|
|
|
- employeeInfos.forEach(e->{
|
|
|
|
|
- List<Map> mapList = (List<Map>) e.get("field_data_list");
|
|
|
|
|
- mapList.forEach(m->{
|
|
|
|
|
- if ("sys00-dept".equals(m.get("field_code"))){
|
|
|
|
|
- List<Map> valueList = (List<Map>) m.get("field_value_list");
|
|
|
|
|
- String value = valueList.get(0).get("value").toString();
|
|
|
|
|
- personList.add(value);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- });
|
|
|
|
|
- Map<String, Long> collect = personList.stream().collect(Collectors.groupingBy(i -> i, Collectors.counting()));
|
|
|
|
|
-
|
|
|
|
|
- Integer[] personSum = {0};
|
|
|
|
|
- dataList.forEach(e->{
|
|
|
|
|
- String name = e.get("textField_lrr3rg6i").toString();
|
|
|
|
|
- if (ObjectUtil.isNotNull(collect)) {
|
|
|
|
|
- int personCount = (ObjectUtil.isNotNull(collect.get(name)) ? Math.toIntExact(collect.get(name)) : 0);
|
|
|
|
|
- personSum[0] += personCount;
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
-
|
|
|
|
|
|
|
+// String status = "2,3,5,-1";
|
|
|
|
|
+// List<String> filterList = new ArrayList<>();
|
|
|
|
|
+// filterList.add("sys00-dept");
|
|
|
|
|
+// filterList.add("sys00-mainDept");
|
|
|
|
|
+// List<String> workingEmployeeIds = ddClientPersonnel.getWorkingEmployeeIds(ddClient.getAccessToken(), status);
|
|
|
|
|
+// List<Map> employeeInfos = ddClientPersonnel.getEmployeeInfos(ddClient.getAccessToken(), workingEmployeeIds, agentId, filterList);
|
|
|
|
|
+// List<String> personList = new ArrayList<>();
|
|
|
|
|
+// employeeInfos.forEach(e->{
|
|
|
|
|
+// List<Map> mapList = (List<Map>) e.get("field_data_list");
|
|
|
|
|
+// mapList.forEach(m->{
|
|
|
|
|
+// if ("sys00-dept".equals(m.get("field_code"))){
|
|
|
|
|
+// List<Map> valueList = (List<Map>) m.get("field_value_list");
|
|
|
|
|
+// String value = valueList.get(0).get("value").toString();
|
|
|
|
|
+// personList.add(value);
|
|
|
|
|
+// }
|
|
|
|
|
+// });
|
|
|
|
|
+// });
|
|
|
|
|
+// Map<String, Long> collect = personList.stream().collect(Collectors.groupingBy(i -> i, Collectors.counting()));
|
|
|
|
|
+//
|
|
|
|
|
+// Integer[] personSum = {0};
|
|
|
|
|
+// dataList.forEach(e->{
|
|
|
|
|
+// String name = e.get("textField_lrr3rg6i").toString();
|
|
|
|
|
+// if (ObjectUtil.isNotNull(collect)) {
|
|
|
|
|
+// int personCount = (ObjectUtil.isNotNull(collect.get(name)) ? Math.toIntExact(collect.get(name)) : 0);
|
|
|
|
|
+// personSum[0] += personCount;
|
|
|
|
|
+// }
|
|
|
|
|
+// });
|
|
|
|
|
+ List<Map> workingEmployeeIds = ydService.queryFormData_all(YDParam.builder()
|
|
|
|
|
+ .appType("APP_ERBDTFS82HOVBPL3NFH0")
|
|
|
|
|
+ .systemToken("RRB66F91T97H1WN89QZYC47PKLZO2ZQOUMOQLP")
|
|
|
|
|
+ .formUuid("FORM-5F5A9EC778314542853426DC93AD474C6GWC")
|
|
|
|
|
+ .searchFieldJson(JSON.toJSONString(UtilMap.map("dateField_4lnxn1m, textField_5hgys6d",timeList,"直属队")))
|
|
|
|
|
+ .build());
|
|
|
final Double[] zsdglfy = {0.0};
|
|
final Double[] zsdglfy = {0.0};
|
|
|
final Double[] zsdsum = {0.0};
|
|
final Double[] zsdsum = {0.0};
|
|
|
//直属队
|
|
//直属队
|
|
@@ -3427,7 +3432,7 @@ public class NCServiceImpl implements NCService {
|
|
|
if (workingEmployeeIds.size() == 0 || workingEmployeeIds.size() * zsdsum[0] == 0.0){
|
|
if (workingEmployeeIds.size() == 0 || workingEmployeeIds.size() * zsdsum[0] == 0.0){
|
|
|
zsdglfy[0] = 0.0;
|
|
zsdglfy[0] = 0.0;
|
|
|
}else {
|
|
}else {
|
|
|
- zsdglfy[0] = zsdglfy[0] + (collect.get("直属队")==null||collect.get("直属队").toString().isEmpty()?0.0:Double.parseDouble(collect.get("直属队").toString()))/personSum[0]*Double.parseDouble(manageList.get(0).get("manage_compute").toString());
|
|
|
|
|
|
|
+ zsdglfy[0] = zsdglfy[0] + (workingEmployeeIds.size()==0?0.0: workingEmployeeIds.size()/ personCostList.size()*Double.parseDouble(manageList.get(0).get("manage_compute").toString()));
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
@@ -3486,7 +3491,7 @@ public class NCServiceImpl implements NCService {
|
|
|
PreparedStatement preparedStatement = mysqlCon.prepareStatement(delete);
|
|
PreparedStatement preparedStatement = mysqlCon.prepareStatement(delete);
|
|
|
preparedStatement.execute();
|
|
preparedStatement.execute();
|
|
|
|
|
|
|
|
- String insert = "INSERT INTO `dingtalk`.`lanyun_project_analysis_copy1`(`project_name`, `belong_project`, `month`, `status`, `predict_income`, " +
|
|
|
|
|
|
|
+ String insert = "INSERT INTO `dingtalk`.`lanyun_project_analysis_salary`(`project_name`, `belong_project`, `month`, `status`, `predict_income`, " +
|
|
|
"`open`, `income`, `person`, `person_cost`, `material`, `other_cost`, `cost_sum`, `taxes`, `gross_profit`, `gross_margin`, `overhead`, " +
|
|
"`open`, `income`, `person`, `person_cost`, `material`, `other_cost`, `cost_sum`, `taxes`, `gross_profit`, `gross_margin`, `overhead`, " +
|
|
|
"`corporate_income_tax`, `net_profit`, `net_margin`, `format`, `customer_system`, `profit_loss`, `approach_date`, `level`, `notes`, " +
|
|
"`corporate_income_tax`, `net_profit`, `net_margin`, `format`, `customer_system`, `profit_loss`, `approach_date`, `level`, `notes`, " +
|
|
|
"`monthString`, `small_income`, `six`, `sum`, `folding_repair`, `project_code`) " +
|
|
"`monthString`, `small_income`, `six`, `sum`, `folding_repair`, `project_code`) " +
|
|
@@ -3537,16 +3542,17 @@ public class NCServiceImpl implements NCService {
|
|
|
// });
|
|
// });
|
|
|
// }
|
|
// }
|
|
|
// //算薪人数
|
|
// //算薪人数
|
|
|
- if (ObjectUtil.isNotNull(collect)) {
|
|
|
|
|
- person[0] = ObjectUtil.isNotNull(collect.get(name)) ? Math.toIntExact(collect.get(name)) : 0;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+// if (ObjectUtil.isNotNull(collect)) {
|
|
|
|
|
+// person[0] = ObjectUtil.isNotNull(collect.get(name)) ? Math.toIntExact(collect.get(name)) : 0;
|
|
|
|
|
+// }
|
|
|
//生产成本-工资
|
|
//生产成本-工资
|
|
|
if (ObjectUtil.isNotNull(personCostList) && personCostList.size()>0) {
|
|
if (ObjectUtil.isNotNull(personCostList) && personCostList.size()>0) {
|
|
|
personCostList.forEach(s -> {
|
|
personCostList.forEach(s -> {
|
|
|
if (name.equals(s.get("textField_lr8loohg"))) {
|
|
if (name.equals(s.get("textField_lr8loohg"))) {
|
|
|
- double person_cost_compute = (s.get("numberField_bjzkeii_value") == null ? 0.0 : Double.parseDouble(s.get("numberField_bjzkeii_value").toString())) +
|
|
|
|
|
|
|
+ double person_cost_compute = (s.get("numberField_m2u0nhk3_value") == null ? 0.0 : Double.parseDouble(s.get("numberField_m2u0nhk3_value").toString())) +
|
|
|
(s.get("numberField_lnc1nj0_value") == null ? 0.0 : Double.parseDouble(s.get("numberField_lnc1nj0_value").toString()));
|
|
(s.get("numberField_lnc1nj0_value") == null ? 0.0 : Double.parseDouble(s.get("numberField_lnc1nj0_value").toString()));
|
|
|
sum[1] = sum[1] + person_cost_compute;
|
|
sum[1] = sum[1] + person_cost_compute;
|
|
|
|
|
+ person[0] = person[0] + 1;
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|