Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
@ -14,4 +14,9 @@ public interface SupplierUserConstant {
|
||||
public static final String DEPT_ID="dept001";
|
||||
|
||||
public static final String PARENT_DEPT_ID="dept002";
|
||||
|
||||
/**
|
||||
* 创建部门
|
||||
*/
|
||||
public static final String CREATE_DEPT="创建部门";
|
||||
}
|
||||
|
@ -60,10 +60,12 @@ public class AnnualScheduledTasksServiceImpl implements AnnualScheduledTasksServ
|
||||
coscoAnnualreviewTaskSupplier.setAnnualreviewTaskId(coscoAnnualreviewTask.getId());
|
||||
List<CoscoAnnualreviewTaskSupplier> coscoAnnualreviewTaskSuppliers =
|
||||
coscoAnnualreviewTaskSupplierMapper.selectCoscoAnnualreviewTaskSupplierList(coscoAnnualreviewTaskSupplier);
|
||||
//根据人员技术分数
|
||||
coscoAnnualreviewTaskSuppliers.forEach(supplier -> {
|
||||
AuditQuantityVo selectVo = new AuditQuantityVo();
|
||||
selectVo.setSupplierId(supplier.getSupplierId());
|
||||
selectVo.setAnnualreviewTaskId(coscoAnnualreviewTask.getId());
|
||||
//获取合格结果
|
||||
AuditQuantityVo vo = coscoAnnualreviewScoringMapper.selectAuditQuantity(selectVo);
|
||||
if (vo != null && vo.getTotalNumber() > 0) {
|
||||
if (vo.getErrorNumber() > 0) {
|
||||
@ -71,9 +73,11 @@ public class AnnualScheduledTasksServiceImpl implements AnnualScheduledTasksServ
|
||||
} else {
|
||||
supplier.setReviewResult(AnnualreviewTaskConstant.APPROVE_SUCCESS);
|
||||
}
|
||||
//修改供应商状态
|
||||
coscoAnnualreviewTaskSupplierMapper.updateCoscoAnnualreviewTaskSupplier(supplier);
|
||||
}
|
||||
});
|
||||
//修改任务状态
|
||||
coscoAnnualreviewTask.setStatus(AnnualreviewTaskConstant.COMPLETED);
|
||||
coscoAnnualreviewTask.setUpdateBy(SupplierUserConstant.USER_NAME);
|
||||
coscoAnnualreviewTask.setUpdateTime(new Date());
|
||||
|
@ -102,6 +102,7 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
|
||||
List<String> supplierIds = list.stream().map(SupplierPeopleVo::getSuppliedId).collect(Collectors.toList());
|
||||
List<BlackSupplierVo> blackSupplierVos = coscoSupplierBaseMapper.selectSupplierByIds(supplierIds);
|
||||
List<UserVo> userInfo=userIdMap.keySet().stream().map(userId -> userMap.get(userId)).collect(Collectors.toList());
|
||||
//用户信息封装
|
||||
blackSupplierVos.forEach(blackSupplierVo -> {
|
||||
List<TaskUserVo> taskUserVos = new ArrayList<>();
|
||||
List<String> strings = suppMap.get(blackSupplierVo.getSupplierId());
|
||||
@ -156,9 +157,11 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
|
||||
}
|
||||
|
||||
private void addList(AddTaskVo taskVo) {
|
||||
//去除旧数据
|
||||
coscoAnnualreviewTaskSupplierMapper.deleteByTaskId(taskVo.getId());
|
||||
coscoAnnualreviewTaskSupplierUserMapper.deleteByTaskId(taskVo.getId());
|
||||
coscoAnnualreviewScoringMapper.deleteByTaskId(taskVo.getId());
|
||||
//封装新数据
|
||||
CoscoAnnualreviewTemplateIndicator coscoAnnualreviewTemplate = new CoscoAnnualreviewTemplateIndicator();
|
||||
coscoAnnualreviewTemplate.setTemplateId(taskVo.getTemplateId());
|
||||
List<CoscoAnnualreviewTemplateIndicator> coscoAnnualreviewTemplateIndicators = coscoAnnualreviewTemplateIndicatorMapper.selectCoscoAnnualreviewTemplateIndicatorList(coscoAnnualreviewTemplate);
|
||||
@ -179,7 +182,7 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
|
||||
taskSupplierList.add(taskSupplier);
|
||||
List<String> userIds = vo.getUserIds();
|
||||
userIds.forEach(userId -> {
|
||||
//添加供应商人员信息
|
||||
//添加供应商打分人员信息
|
||||
CoscoAnnualreviewTaskSupplierUser taskSupplierUser = new CoscoAnnualreviewTaskSupplierUser();
|
||||
taskSupplierUser.setId(PropertyUtils.getSnowflakeId());
|
||||
taskSupplierUser.setAnnualreviewTaskId(taskVo.getId());
|
||||
@ -191,6 +194,7 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
|
||||
taskSupplierUser.setReviewStatus(AnnualreviewTaskConstant.WAIT_APPROVE);
|
||||
taskSupplierUser.setUpdateTime(new Date());
|
||||
taskSupplierUserList.add(taskSupplierUser);
|
||||
//添加打分人员打分项信息
|
||||
coscoAnnualreviewTemplateIndicators.forEach(ind -> {
|
||||
CoscoAnnualreviewScoring scoring = new CoscoAnnualreviewScoring();
|
||||
scoring.setId(PropertyUtils.getSnowflakeId());
|
||||
@ -204,6 +208,7 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
|
||||
});
|
||||
});
|
||||
});
|
||||
//批量插入
|
||||
coscoAnnualreviewScoringMapper.batchCoscoAnnualreviewScoring(scoringList);
|
||||
coscoAnnualreviewTaskSupplierMapper.batchCoscoAnnualreviewTaskSupplier(taskSupplierList);
|
||||
coscoAnnualreviewTaskSupplierUserMapper.batchCoscoAnnualreviewTaskSupplierUser(taskSupplierUserList);
|
||||
@ -251,6 +256,7 @@ public class CoscoAnnualreviewTaskServiceImpl implements ICoscoAnnualreviewTaskS
|
||||
IPage<CoscoAnnualreviewTaskListVo> p = new Page<>(taskListVo.getBasePageRequest().getPageNo(),
|
||||
taskListVo.getBasePageRequest().getPageSize());
|
||||
IPage<CoscoAnnualreviewTaskListVo> coscoAnnualreviewTaskListVoIPage = coscoAnnualreviewTaskMapper.selectPage(p, taskListVo);
|
||||
//获取查询任务部门信息
|
||||
List<String> deptIds = new ArrayList<>();
|
||||
coscoAnnualreviewTaskListVoIPage.getRecords().forEach(ss -> {
|
||||
deptIds.add(ss.getDeptId());
|
||||
|
@ -93,12 +93,18 @@ public class CoscoAnnualreviewTaskSupplierServiceImpl implements ICoscoAnnualrev
|
||||
return coscoAnnualreviewTaskSupplierMapper.deleteCoscoAnnualreviewTaskSupplierById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
* @param supplierListVo
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public IPage<AnnualreviewTaskSupplierListVo> getPage(AnnualreviewTaskSupplierListVo supplierListVo) {
|
||||
IPage<CoscoEvaluateTemplateVo> p = new Page<>(supplierListVo.getBasePageRequest().getPageNo(),
|
||||
supplierListVo.getBasePageRequest().getPageSize());
|
||||
IPage<AnnualreviewTaskSupplierListVo> annualreviewTaskSupplierListVoIPage =
|
||||
coscoAnnualreviewTaskSupplierMapper.selectMyPage(p, supplierListVo);
|
||||
//获取查询部门信息
|
||||
List<String> deptIds=new ArrayList<>();
|
||||
annualreviewTaskSupplierListVoIPage.getRecords().forEach(vo -> {
|
||||
deptIds.add(vo.getDeptId());
|
||||
|
@ -141,9 +141,14 @@ public class CoscoAnnualreviewTaskSupplierUserServiceImpl implements ICoscoAnnua
|
||||
return coscoAnnualreviewTaskSupplierUserMapper.selectCoscoAnnualreviewTaskSupplierUserById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加分数
|
||||
* @param vo
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void addScore(AnnualAddScoreVo vo) {
|
||||
//修改分数
|
||||
List<AnnualTaskIndicatorVo> scoreVoList = vo.getScoreVoList();
|
||||
scoreVoList.forEach(scorevo -> {
|
||||
CoscoAnnualreviewScoring scoring = new CoscoAnnualreviewScoring();
|
||||
@ -153,6 +158,7 @@ public class CoscoAnnualreviewTaskSupplierUserServiceImpl implements ICoscoAnnua
|
||||
scoring.setUpdateTime(new Date());
|
||||
coscoAnnualreviewScoringMapper.updateCoscoAnnualreviewScoring(scoring);
|
||||
});
|
||||
//修改人员打分状态
|
||||
CoscoAnnualreviewTaskSupplierUser coscoAnnualreviewTaskSupplierUser = new CoscoAnnualreviewTaskSupplierUser();
|
||||
coscoAnnualreviewTaskSupplierUser.setId(vo.getId());
|
||||
coscoAnnualreviewTaskSupplierUser.setReviewStatus(AnnualreviewTaskConstant.APPROVE_PASS);
|
||||
|
@ -102,6 +102,7 @@ public class CoscoAnnualreviewTemplateIndicatorServiceImpl implements ICoscoAnnu
|
||||
* 删除之前可能拥有的指标
|
||||
*/
|
||||
coscoAnnualreviewTemplateIndicatorMapper.deleteByTemplateId(coscoAnnualreviewTemplate.getId());
|
||||
//添加二级指标
|
||||
List<CoscoAnnualreviewTemplateIndicator> indicatorList = coscoAnnualreviewTemplate.getIndicatorList();
|
||||
for (CoscoAnnualreviewTemplateIndicator coscoAnnualreviewTemplateIndicator : indicatorList) {
|
||||
coscoAnnualreviewTemplateIndicator.setCreateTime(new Date());
|
||||
|
@ -71,7 +71,12 @@ public class CoscoEvaluateTaskSupplierController extends BaseController {
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取评价结果
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/getScoreResult")
|
||||
public BaseResponse<Object> getScoreResult(String id) {
|
||||
return BaseResponse.success(coscoEvaluateTaskSupplierService.getScoreResult(id));
|
||||
|
@ -62,7 +62,16 @@ public interface ICoscoEvaluateTaskSupplierUserService {
|
||||
*/
|
||||
public int deleteCoscoEvaluateTaskSupplierUserById(String id);
|
||||
|
||||
/**
|
||||
* 获取人员打分项
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
TaskIndicatorBaseVo getIndicator(String id);
|
||||
|
||||
/**
|
||||
*打分结果保存
|
||||
* @param vo
|
||||
*/
|
||||
void getScore(AddScoreVo vo);
|
||||
}
|
||||
|
@ -95,7 +95,7 @@ public class CoscoEvaluateTaskAssignDeptServiceImpl implements ICoscoEvaluateTas
|
||||
dept.setEvaluateTaskId(addCoscoEvaluateTaskVo.getId());
|
||||
dept.setParentDeptId(SupplierUserConstant.DEPT_ID);
|
||||
List<CoscoEvaluateTaskAssignDept> coscoEvaluateTaskAssignDepts = coscoEvaluateTaskAssignDeptMapper.selectCoscoEvaluateTaskAssignDeptList(dept);
|
||||
if (coscoEvaluateTaskAssignDepts.size() == 0) {
|
||||
if (coscoEvaluateTaskAssignDepts.isEmpty()) {
|
||||
dept.setId(PropertyUtils.getSnowflakeId());
|
||||
dept.setStatus(addCoscoEvaluateTaskVo.getTaskStatus());
|
||||
coscoEvaluateTaskAssignDeptMapper.insertCoscoEvaluateTaskAssignDept(dept);
|
||||
|
@ -125,7 +125,7 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
List<UserNdTypeVo> userNdTypeVos1 = map.get(userId);
|
||||
vo.setType(userNdTypeVos1.get(0).getType());
|
||||
|
||||
if (vo.getType() == EvaluateTaskConstant.INDICATOR_TYPE_ND_1) {
|
||||
if (EvaluateTaskConstant.INDICATOR_TYPE_ND_1.equals(vo.getType())) {
|
||||
List<String> indicatorIds = userNdTypeVos1.stream().map(UserNdTypeVo::getNeId).collect(Collectors.toList());
|
||||
vo.setIndicatorIds(indicatorIds);
|
||||
} else {
|
||||
@ -155,7 +155,6 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
addCoscoEvaluateTaskVo.setBlackSupplierVos(blackSupplierVos);
|
||||
addCoscoEvaluateTaskVo.setIndicatorList(vos);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
return addCoscoEvaluateTaskVo;
|
||||
@ -247,12 +246,15 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
public IPage<CoscoEvaluateTaskListVo> getPage(CoscoEvaluateTaskListVo taskListVo) {
|
||||
IPage<CoscoEvaluateTaskListVo> p = new Page<>(taskListVo.getBasePageRequest().getPageNo(),
|
||||
taskListVo.getBasePageRequest().getPageSize());
|
||||
//获取分页数据
|
||||
IPage<CoscoEvaluateTaskListVo> coscoEvaluateTaskListVoIPage = coscoEvaluateTaskMapper.selectMyPage(p, taskListVo);
|
||||
//根据分页数据获取是否显示分工
|
||||
List<String> taskIds = coscoEvaluateTaskListVoIPage.getRecords().stream().map(CoscoEvaluateTaskListVo::getId).collect(Collectors.toList());
|
||||
taskListVo.setDeptId(SupplierUserConstant.DEPT_ID);
|
||||
taskListVo.setTaskIds(taskIds);
|
||||
taskListVo.setParentDeptId(SupplierUserConstant.PARENT_DEPT_ID);
|
||||
List<DivisionVo> vos = coscoEvaluateTaskMapper.selectDivisionVo(taskListVo);
|
||||
//根据分工参数获取内容
|
||||
Map<String, String> map = vos.stream().collect(Collectors.toMap(DivisionVo::getTaskId, DivisionVo::getDivision));
|
||||
coscoEvaluateTaskListVoIPage.getRecords().forEach(task -> {
|
||||
task.setIsEditor(task.getDeptId().equals(taskListVo.getDeptId()) ? "1" : "0");
|
||||
@ -311,7 +313,7 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
ApproveVo aVo = new ApproveVo();
|
||||
aVo.setResult(vo.getApproveStatus());
|
||||
aVo.setCreateBy(coscoEvaluateTask.getCreateBy());
|
||||
aVo.setDeptName("创建部门");
|
||||
aVo.setDeptName(SupplierUserConstant.CREATE_DEPT);
|
||||
aVo.setTaskName(coscoEvaluateTask.getEvaluateTheme());
|
||||
CoscoEvaluateTaskSupplier coscoEvaluateTaskSupplier = new CoscoEvaluateTaskSupplier();
|
||||
coscoEvaluateTaskSupplier.setEvaluateTaskId(coscoEvaluateTask.getId());
|
||||
@ -349,7 +351,6 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
|
||||
addEvalTaskInfo(addCoscoEvaluateTaskVo);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
return 1;
|
||||
@ -368,7 +369,7 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
* 权重信息添加
|
||||
*/
|
||||
List<CoscoEvaluateTaskDeptWeight> taskDeptWeightList = addCoscoEvaluateTaskVo.getTaskDeptWeightList();
|
||||
if (taskDeptWeightList.size() > 0) {
|
||||
if (!taskDeptWeightList.isEmpty()) {
|
||||
taskDeptWeightList.forEach(taskDeptWeight -> {
|
||||
taskDeptWeight.setId(PropertyUtils.getSnowflakeId());
|
||||
taskDeptWeight.setEvaluateTaskId(addCoscoEvaluateTaskVo.getId());
|
||||
@ -420,6 +421,7 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
supplierUserIds.keySet().stream().forEach(supplierId -> {
|
||||
List<String> strings = supplierUserIds.get(supplierId);
|
||||
strings.forEach(userId -> {
|
||||
//封装人员
|
||||
CoscoEvaluateTaskSupplierUser user = new CoscoEvaluateTaskSupplierUser();
|
||||
user.setId(PropertyUtils.getSnowflakeId());
|
||||
user.setEvaluateTaskId(addCoscoEvaluateTaskVo.getId());
|
||||
@ -431,11 +433,13 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
user.setCreateBy(SupplierUserConstant.USER_NAME);
|
||||
user.setUpdateBy(SupplierUserConstant.USER_NAME);
|
||||
coscoEvaluateTaskSupplierUsers.add(user);
|
||||
//封装人员二级项信息
|
||||
map.get(userId).forEach(indicatorId -> {
|
||||
CoscoEvaluateTaskUserIndicator indicator = new CoscoEvaluateTaskUserIndicator();
|
||||
indicator.setIndicatorNdId(indicatorId);
|
||||
indicator.setEvaluateTaskSupplierUserId(user.getId());
|
||||
coscoEvaluateTaskSupplierUserIndicators.add(indicator);
|
||||
//封装打分信息
|
||||
CoscoEvaluateScoring coscoEvaluateScoring = new CoscoEvaluateScoring();
|
||||
coscoEvaluateScoring.setId(PropertyUtils.getSnowflakeId());
|
||||
coscoEvaluateScoring.setEvaluateTaskSupplierUserId(user.getId());
|
||||
@ -448,7 +452,7 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
//添加数据
|
||||
coscoEvaluateTaskSupplierMapper.batchCoscoEvaluateTaskSupplier(list);
|
||||
coscoEvaluateScoringMapper.batchCoscoEvaluateScoring(coscoEvaluateScorings);
|
||||
coscoEvaluateTaskSupplierUserMapper.batchCoscoEvaluateTaskSupplierUser(coscoEvaluateTaskSupplierUsers);
|
||||
@ -471,14 +475,21 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
coscoEvaluateTaskMapper.insertCoscoEvaluateTask(addCoscoEvaluateTaskVo);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 人员信息封装
|
||||
* @param userMap
|
||||
* @param vo
|
||||
* @param coscoEvaluateTemplateIndicatorNds
|
||||
*/
|
||||
public void adduserMap(Map<String, List<String>> userMap, AdduserIndicatorVo vo, List<CoscoEvaluateTemplateIndicatorNd> coscoEvaluateTemplateIndicatorNds) {
|
||||
Map<String, String> map = new HashMap<>();
|
||||
coscoEvaluateTemplateIndicatorNds.forEach(coscoEvaluateTemplateIndicatorNd -> {
|
||||
map.put(coscoEvaluateTemplateIndicatorNd.getId(), coscoEvaluateTemplateIndicatorNd.getIndicatorStId());
|
||||
});
|
||||
Long type = vo.getType();
|
||||
//一级项信息
|
||||
Map<String, String> stIdMap = new HashMap<>();
|
||||
//二级项信息
|
||||
Map<String, String> ndIdMap = new HashMap<>();
|
||||
if (type.equals(0L)) {
|
||||
coscoEvaluateTemplateIndicatorNds.forEach(coscoEvaluateTemplateIndicatorNd -> {
|
||||
@ -488,11 +499,11 @@ public class CoscoEvaluateTaskServiceImpl implements ICoscoEvaluateTaskService {
|
||||
} else {
|
||||
List<String> indicatorIds = vo.getIndicatorIds();
|
||||
indicatorIds.forEach(indicatorId -> {
|
||||
|
||||
stIdMap.put(map.get(indicatorId), map.get(indicatorId));
|
||||
ndIdMap.put(indicatorId, indicatorId);
|
||||
});
|
||||
}
|
||||
//根据人员id添加二级项信息
|
||||
userMap.put(vo.getUserId(), new ArrayList<>(ndIdMap.keySet()));
|
||||
|
||||
}
|
||||
|
@ -151,8 +151,11 @@ public class CoscoEvaluateTaskSupplierServiceImpl implements ICoscoEvaluateTaskS
|
||||
|
||||
@Override
|
||||
public TaskIndicatorBaseVo getScoreResult(String id) {
|
||||
//获取供应商信息
|
||||
CoscoEvaluateTaskSupplier coscoEvaluateTaskSupplier = coscoEvaluateTaskSupplierMapper.selectCoscoEvaluateTaskSupplierById(id);
|
||||
//获取评价任务信息
|
||||
CoscoEvaluateTask coscoEvaluateTask = coscoEvaluateTaskMapper.selectCoscoEvaluateTaskById(coscoEvaluateTaskSupplier.getEvaluateTaskId());
|
||||
//获取供应商名称和品类名称
|
||||
BaseCategoryNameVo baseCategoryNameVo = coscoSupplierBaseMapper.selectNameAndCategoryName(coscoEvaluateTaskSupplier.getSupplierId());
|
||||
TaskIndicatorBaseVo taskIndicatorBaseVo = new TaskIndicatorBaseVo();
|
||||
taskIndicatorBaseVo.setName(baseCategoryNameVo.getName());
|
||||
@ -160,15 +163,20 @@ public class CoscoEvaluateTaskSupplierServiceImpl implements ICoscoEvaluateTaskS
|
||||
List<TaskIndicatorVo> taskIndicatorVo = new ArrayList<>();
|
||||
CoscoEvaluateScoringResult result = new CoscoEvaluateScoringResult();
|
||||
result.setEvaluateTaskSupplierId(id);
|
||||
//获取评分数据
|
||||
List<CoscoEvaluateScoringResult> coscoEvaluateScoringResults = coscoEvaluateScoringResultMapper.selectCoscoEvaluateScoringResultList(result);
|
||||
CoscoEvaluateTemplateIndicatorNd coscoEvaluateTemplateIndicatorNd = new CoscoEvaluateTemplateIndicatorNd();
|
||||
coscoEvaluateTemplateIndicatorNd.setTemplateId(coscoEvaluateTask.getTemplateId());
|
||||
//获取评分二级节点数据
|
||||
List<CoscoEvaluateTemplateIndicatorNd> coscoEvaluateTemplateIndicatorNds = coscoEvaluateTemplateIndicatorNdMapper.selectCoscoEvaluateTemplateIndicatorNdList(coscoEvaluateTemplateIndicatorNd);
|
||||
CoscoEvaluateTemplateIndicatorSt coscoEvaluateTemplateIndicatorSt = new CoscoEvaluateTemplateIndicatorSt();
|
||||
coscoEvaluateTemplateIndicatorSt.setTemplateId(coscoEvaluateTask.getTemplateId());
|
||||
//获取评分一级节点数据
|
||||
List<CoscoEvaluateTemplateIndicatorSt> coscoEvaluateTemplateIndicatorSts =
|
||||
coscoEvaluateTemplateIndicatorStMapper.selectCoscoEvaluateTemplateIndicatorStList(coscoEvaluateTemplateIndicatorSt);
|
||||
//根据一级节点封装数据
|
||||
coscoEvaluateTemplateIndicatorSts.forEach(st -> {
|
||||
//获取一级节点对应二级节点及评分数据
|
||||
List<CoscoEvaluateTemplateIndicatorNd> collect = coscoEvaluateTemplateIndicatorNds.stream().filter(scoring -> scoring.getIndicatorStId().equals(st.getId())).collect(Collectors.toList());
|
||||
List<TaskSubIndicatorVo> subIndicator = new ArrayList<>();
|
||||
for (CoscoEvaluateTemplateIndicatorNd evaluateTemplateIndicatorNd : collect) {
|
||||
@ -178,11 +186,12 @@ public class CoscoEvaluateTaskSupplierServiceImpl implements ICoscoEvaluateTaskS
|
||||
vo.setSubScore(evaluateTemplateIndicatorNd.getScore());
|
||||
vo.setStarIndicator(evaluateTemplateIndicatorNd.getIsStar());
|
||||
List<CoscoEvaluateScoringResult> collect1 = coscoEvaluateScoringResults.stream().filter(scoring -> scoring.getIndicatorNdId().equals(evaluateTemplateIndicatorNd.getId())).collect(Collectors.toList());
|
||||
if (collect1.size() > 0) {
|
||||
if (!collect1.isEmpty()) {
|
||||
vo.setScore(collect1.get(0).getIndicatorScore().toString());
|
||||
}
|
||||
subIndicator.add(vo);
|
||||
}
|
||||
//一级节点封装
|
||||
TaskIndicatorVo vo = new TaskIndicatorVo();
|
||||
vo.setBaseIndicator(st.getBaseIndicator());
|
||||
vo.setIndicatorDesc(st.getDescIndicator());
|
||||
|
@ -108,8 +108,11 @@ public class CoscoEvaluateTaskSupplierUserServiceImpl implements ICoscoEvaluateT
|
||||
|
||||
@Override
|
||||
public TaskIndicatorBaseVo getIndicator(String id) {
|
||||
//获取人员信息
|
||||
CoscoEvaluateTaskSupplierUser coscoEvaluateTaskSupplierUser = coscoEvaluateTaskSupplierUserMapper.selectCoscoEvaluateTaskSupplierUserById(id);
|
||||
//获取项目信息
|
||||
CoscoEvaluateTask coscoEvaluateTask = coscoEvaluateTaskMapper.selectCoscoEvaluateTaskById(coscoEvaluateTaskSupplierUser.getEvaluateTaskId());
|
||||
//项目信息
|
||||
BaseCategoryNameVo baseCategoryNameVo = coscoSupplierBaseMapper.selectNameAndCategoryName(coscoEvaluateTaskSupplierUser.getSupplierId());
|
||||
TaskIndicatorBaseVo taskIndicatorBaseVo = new TaskIndicatorBaseVo();
|
||||
taskIndicatorBaseVo.setName(baseCategoryNameVo.getName());
|
||||
@ -119,8 +122,10 @@ public class CoscoEvaluateTaskSupplierUserServiceImpl implements ICoscoEvaluateT
|
||||
List<TaskSubIndicatorVo> coscoEvaluateScorings = coscoEvaluateScoringMapper.selectTaskSubIndicatorVo(id);
|
||||
CoscoEvaluateTemplateIndicatorSt coscoEvaluateTemplateIndicatorSt=new CoscoEvaluateTemplateIndicatorSt();
|
||||
coscoEvaluateTemplateIndicatorSt.setTemplateId(coscoEvaluateTask.getTemplateId());
|
||||
//获取二级项目信息
|
||||
List<CoscoEvaluateTemplateIndicatorSt> coscoEvaluateTemplateIndicatorSts =
|
||||
coscoEvaluateTemplateIndicatorStMapper.selectCoscoEvaluateTemplateIndicatorStList(coscoEvaluateTemplateIndicatorSt);
|
||||
//根据人员信息进行封装
|
||||
coscoEvaluateTemplateIndicatorSts.forEach(st->{
|
||||
List<TaskSubIndicatorVo> collect = coscoEvaluateScorings.stream().filter(scoring -> scoring.getStId().equals(st.getId())).collect(Collectors.toList());
|
||||
if(collect.size()>0){
|
||||
@ -136,9 +141,15 @@ public class CoscoEvaluateTaskSupplierUserServiceImpl implements ICoscoEvaluateT
|
||||
return taskIndicatorBaseVo;
|
||||
}
|
||||
|
||||
/**
|
||||
* 打分结果保存
|
||||
* @param vo
|
||||
*/
|
||||
@Override
|
||||
public void getScore(AddScoreVo vo) {
|
||||
//打分结果添加
|
||||
int i =0;
|
||||
//修改列表
|
||||
List<ScoreVo> scoreVoList = vo.getScoreVoList();
|
||||
for (ScoreVo voVo : scoreVoList){
|
||||
if(voVo.getScore()!=null && !voVo.getScore().equals("")){
|
||||
@ -150,6 +161,7 @@ public class CoscoEvaluateTaskSupplierUserServiceImpl implements ICoscoEvaluateT
|
||||
i++;
|
||||
}
|
||||
}
|
||||
//批量修改数据
|
||||
if(i>0){
|
||||
CoscoEvaluateTaskSupplierUser user=new CoscoEvaluateTaskSupplierUser();
|
||||
user.setId(vo.getId());
|
||||
|
@ -99,6 +99,7 @@ public class CoscoEvaluateTemplateIndicatorStServiceImpl implements ICoscoEvalua
|
||||
|
||||
@Override
|
||||
public void batchInsert(AddCoscoEvaluateTemplateVo templateVo) {
|
||||
//封装批量添加信息
|
||||
List<CoscoEvaluateTemplateIndicatorSt> indicatorStList = templateVo.getIndicatorStList();
|
||||
List<CoscoEvaluateTemplateIndicatorNd> addAll=new ArrayList<>();
|
||||
for (CoscoEvaluateTemplateIndicatorSt indicatorSt : indicatorStList) {
|
||||
@ -108,6 +109,7 @@ public class CoscoEvaluateTemplateIndicatorStServiceImpl implements ICoscoEvalua
|
||||
indicatorSt.setCreateBy(SupplierUserConstant.USER_NAME);
|
||||
indicatorSt.setId(PropertyUtils.getSnowflakeId());
|
||||
indicatorSt.setCreateTime(new Date());
|
||||
//封装批量添加二级指标信息
|
||||
List<CoscoEvaluateTemplateIndicatorNd> indicatorNdList = indicatorSt.getIndicatorNdList();
|
||||
for (CoscoEvaluateTemplateIndicatorNd indicatorNd : indicatorNdList) {
|
||||
indicatorNd.setTemplateId(templateVo.getId());
|
||||
@ -120,6 +122,7 @@ public class CoscoEvaluateTemplateIndicatorStServiceImpl implements ICoscoEvalua
|
||||
addAll.add(indicatorNd);
|
||||
}
|
||||
}
|
||||
//添加信息
|
||||
coscoEvaluateTemplateIndicatorStMapper.removeByTemplateId(templateVo.getId());
|
||||
coscoEvaluateTemplateIndicatorStMapper.batchCoscoEvaluateTemplateIndicatorSt(indicatorStList);
|
||||
coscoEvaluateTemplateIndicatorNdService.batchNd(addAll,templateVo.getId());
|
||||
@ -132,11 +135,14 @@ public class CoscoEvaluateTemplateIndicatorStServiceImpl implements ICoscoEvalua
|
||||
*/
|
||||
@Override
|
||||
public List<CoscoEvaluateTemplateIndicatorSt> selectByTemplateId(String templateId) {
|
||||
|
||||
CoscoEvaluateTemplateIndicatorSt st=new CoscoEvaluateTemplateIndicatorSt();
|
||||
st.setTemplateId(templateId);
|
||||
//获取一级打分项
|
||||
List<CoscoEvaluateTemplateIndicatorSt> coscoEvaluateTemplateIndicatorSts = coscoEvaluateTemplateIndicatorStMapper.selectCoscoEvaluateTemplateIndicatorStList(st);
|
||||
CoscoEvaluateTemplateIndicatorNd nd=new CoscoEvaluateTemplateIndicatorNd();
|
||||
nd.setTemplateId(templateId);
|
||||
//获取二级打分项
|
||||
List<CoscoEvaluateTemplateIndicatorNd> coscoEvaluateTemplateIndicatorNds = coscoEvaluateTemplateIndicatorNdService.selectCoscoEvaluateTemplateIndicatorNdList(nd);
|
||||
coscoEvaluateTemplateIndicatorSts.forEach(coscoEvaluateTemplateIndicatorSt -> {
|
||||
List<CoscoEvaluateTemplateIndicatorNd> collect = coscoEvaluateTemplateIndicatorNds.stream().filter(coscoEvaluateTemplateIndicatorNd -> coscoEvaluateTemplateIndicatorNd.getIndicatorStId().equals(coscoEvaluateTemplateIndicatorSt.getId())).collect(Collectors.toList());
|
||||
|
@ -105,6 +105,12 @@ public class ScheduledTasksServiceImpl implements ScheduledTasksService {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取供应商评价结果
|
||||
* @param totalScore
|
||||
* @param coscoEvaluateLevels
|
||||
* @param supplier
|
||||
*/
|
||||
private void getReviewResult(int totalScore, List<CoscoEvaluateLevel> coscoEvaluateLevels, CoscoEvaluateTaskSupplier supplier) {
|
||||
CoscoEvaluateLevel coscoEvaluateLevel1 = coscoEvaluateLevels.stream()
|
||||
.filter(coscoEvaluateLevel -> totalScore >= coscoEvaluateLevel.getBeginValue()
|
||||
@ -135,7 +141,7 @@ public class ScheduledTasksServiceImpl implements ScheduledTasksService {
|
||||
Map<String, BigDecimal> weightMap = weightsToMap(weights);
|
||||
List<CalculateAndObtainScoresVo> supplierScores = filterSupplierScores(scores, supplier);
|
||||
Map<String, List<CalculateAndObtainScoresVo>> groupedByIndicator = groupByIndicator(supplierScores);
|
||||
|
||||
//获取分数
|
||||
double totalScore = 0.0;
|
||||
for (Map.Entry<String, List<CalculateAndObtainScoresVo>> entry : groupedByIndicator.entrySet()) {
|
||||
String indicatorId = entry.getKey();
|
||||
@ -190,7 +196,7 @@ public class ScheduledTasksServiceImpl implements ScheduledTasksService {
|
||||
BigDecimal noWeightScore = BigDecimal.ZERO;
|
||||
int noWeightCount = 0;
|
||||
BigDecimal hundred = BigDecimal.valueOf(100);
|
||||
|
||||
//根据部门查询数据
|
||||
for (Map.Entry<String, List<CalculateAndObtainScoresVo>> entry : groupedByDept.entrySet()) {
|
||||
String deptId = entry.getKey();
|
||||
List<CalculateAndObtainScoresVo> deptScores = entry.getValue();
|
||||
@ -207,7 +213,7 @@ public class ScheduledTasksServiceImpl implements ScheduledTasksService {
|
||||
noWeightCount += deptScores.size();
|
||||
}
|
||||
}
|
||||
|
||||
//计算分数
|
||||
BigDecimal nonWeighted = noWeightCount > 0 ?
|
||||
noWeightScore.divide(BigDecimal.valueOf(noWeightCount), 2, BigDecimal.ROUND_HALF_UP)
|
||||
.multiply(BigDecimal.valueOf(basePercentage))
|
||||
|
Reference in New Issue
Block a user