fix
This commit is contained in:
parent
123e993e68
commit
6ff5b1b3f9
@ -873,7 +873,7 @@ public class ResultRecordController extends AbstractController {
|
||||
taskReq.setTaskId(taskDto.getId());
|
||||
taskReq.setName(taskDto.getName());
|
||||
taskReq.setOrderBy(orderBy);
|
||||
taskReq.setProcessRate(taskDto.getProcessRate());
|
||||
taskReq.setProcessRate(BigDecimal.valueOf(taskDto.getProcessRate()));
|
||||
resultTaskService.saveOrUpdateResultTask(taskReq);
|
||||
orderBy++;
|
||||
}
|
||||
|
||||
@ -28,7 +28,7 @@ public class ResultTaskDto {
|
||||
private String name;
|
||||
//任务的当前进度
|
||||
@ApiModelProperty(value = "任务的当前进度", name = "processRate")
|
||||
private BigDecimal processRate;
|
||||
private Double processRate;
|
||||
//头像
|
||||
@ApiModelProperty(value = "头像", name = "avatar")
|
||||
private String avatar;
|
||||
|
||||
@ -145,38 +145,40 @@ public class ResultTaskServiceImpl extends ServiceImpl<ResultTaskMapper, ResultT
|
||||
|
||||
log.info("绩效任务修改操作。。。");
|
||||
resultTask = resultTaskMapper.selectResultTaskById(tasklId);
|
||||
resultTask.setOrderBy(req.getOrderBy());
|
||||
resultTask.setName(req.getName());
|
||||
resultTask.setProcessRate(req.getProcessRate());
|
||||
resultTaskMapper.updateResultTaskById(resultTask);
|
||||
int i = changeTaskProcess(resultTask, req);
|
||||
if(i<1){
|
||||
log.info("任务暂无变化,不做修改");
|
||||
}
|
||||
resultTask.setOrderBy(req.getOrderBy());
|
||||
resultTask.setName(req.getName());
|
||||
resultTask.setProcessRate(req.getProcessRate());
|
||||
resultTaskMapper.updateCoverResultTaskById(resultTask);
|
||||
|
||||
}
|
||||
//修改总进度
|
||||
if(detailId == null){
|
||||
detailId = resultTask.getDetailId();
|
||||
}
|
||||
ResultDetail resultDetail = resultDetailService.selectResultDetailById(detailId);
|
||||
resultDetail.setProcessRate(caclateResultDetailProcess(detailId));
|
||||
resultDetail.setProcessRate(BigDecimal.valueOf(caclateResultDetailProcess(detailId)));
|
||||
return resultDetailService.updateResultDetailById(resultDetail);
|
||||
|
||||
}
|
||||
|
||||
//计算总进度
|
||||
private BigDecimal caclateResultDetailProcess(Long detailId){
|
||||
private Double caclateResultDetailProcess(Long detailId){
|
||||
List<ResultTaskDto> resultTaskDtos = resultTaskMapper.selectResultTaskDtosByDetailId(detailId);
|
||||
if(CollectionUtils.isEmpty(resultTaskDtos)){
|
||||
log.info("未找到该绩效详情下得任务信息");
|
||||
return BigDecimal.ZERO;
|
||||
return 0d;
|
||||
}
|
||||
int size = resultTaskDtos.size();
|
||||
BigDecimal rate = BigDecimal.ZERO;
|
||||
Double rate = 0d;
|
||||
for(ResultTaskDto dto:resultTaskDtos){
|
||||
rate = BigDecimalUtil.add(rate,dto.getProcessRate());
|
||||
}
|
||||
return BigDecimalUtil.divide(rate,BigDecimal.valueOf(size)).setScale(4);
|
||||
double result = BigDecimalUtil.div(rate, size, 4);
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
@ -187,16 +189,16 @@ public class ResultTaskServiceImpl extends ServiceImpl<ResultTaskMapper, ResultT
|
||||
//新增操作
|
||||
if(before == null){
|
||||
taskProcessRecord.setType(ProcessRecordEnum.ADD.getType());
|
||||
taskProcessRecord.setLabel("新增key Results名称:" + after.getName() + "进度:" + BigDecimalUtil.mul(after.getProcessRate(),BigDecimal.valueOf(100)) + "%");
|
||||
taskProcessRecord.setLabel("新增key Results名称:" + after.getName() + "进度:" + BigDecimalUtil.mul(after.getProcessRate(),BigDecimal.valueOf(100)).setScale(2) + "%");
|
||||
return taskProcessRecordService.insertTaskProcessRecord(taskProcessRecord).intValue();
|
||||
}
|
||||
taskProcessRecord.setTaskId(before.getId());
|
||||
//判断修改了名称或进度
|
||||
if(before.getName().equals(after.getName())){
|
||||
if(before.getProcessRate().equals(after.getProcessRate())){
|
||||
if(!before.getName().equals(after.getName())){
|
||||
if(!before.getProcessRate().equals(after.getProcessRate())){
|
||||
taskProcessRecord.setType(ProcessRecordEnum.ALL.getType());
|
||||
taskProcessRecord.setLabel("将key Results名称:" + before.getName() + "改为" + after.getName() + "\n"
|
||||
+ "进度:" + BigDecimalUtil.mul(before.getProcessRate(),BigDecimal.valueOf(100)) + "%" + "改为" + BigDecimalUtil.mul(after.getProcessRate(),BigDecimal.valueOf(100)) + "%");
|
||||
+ "进度:" + BigDecimalUtil.mul(before.getProcessRate(),BigDecimal.valueOf(100)).setScale(2) + "%" + "改为" + BigDecimalUtil.mul(after.getProcessRate(),BigDecimal.valueOf(100)).setScale(2) + "%");
|
||||
return taskProcessRecordService.insertTaskProcessRecord(taskProcessRecord).intValue();
|
||||
}
|
||||
|
||||
@ -205,14 +207,16 @@ public class ResultTaskServiceImpl extends ServiceImpl<ResultTaskMapper, ResultT
|
||||
return taskProcessRecordService.insertTaskProcessRecord(taskProcessRecord).intValue();
|
||||
|
||||
}
|
||||
if(before.getProcessRate().equals(after.getProcessRate())){
|
||||
if(!before.getProcessRate().equals(after.getProcessRate())){
|
||||
taskProcessRecord.setType(ProcessRecordEnum.PROCESS.getType());
|
||||
taskProcessRecord.setLabel("将" +before.getName() + "得进度由" + BigDecimalUtil.mul(before.getProcessRate(),BigDecimal.valueOf(100)) + "%" + "更新为:" + BigDecimalUtil.mul(after.getProcessRate(),BigDecimal.valueOf(100)) + "%");
|
||||
taskProcessRecord.setLabel("将" +before.getName() + "得进度由" + BigDecimalUtil.mul(before.getProcessRate(),BigDecimal.valueOf(100)).setScale(2) + "%" + "更新为:" + BigDecimalUtil.mul(after.getProcessRate(),BigDecimal.valueOf(100)).setScale(2) + "%");
|
||||
return taskProcessRecordService.insertTaskProcessRecord(taskProcessRecord).intValue();
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public List<ResultTask> selectResultTasksByDetailId(Long detailId){
|
||||
return resultTaskMapper.selectResultTasksByDetailId(detailId);
|
||||
@ -240,7 +244,7 @@ public class ResultTaskServiceImpl extends ServiceImpl<ResultTaskMapper, ResultT
|
||||
taskProcessRecordService.insertTaskProcessRecord(taskProcessRecord);
|
||||
//修改总进度
|
||||
ResultDetail resultDetail = resultDetailService.selectResultDetailById(resultTask.getDetailId());
|
||||
resultDetail.setProcessRate(caclateResultDetailProcess(resultTask.getDetailId()));
|
||||
resultDetail.setProcessRate(BigDecimal.valueOf(caclateResultDetailProcess(resultTask.getDetailId())));
|
||||
resultDetailService.updateResultDetailById(resultDetail);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user