Commit d34d3562 authored by 温志超's avatar 温志超

更新报表查询

parent 5ac64454
...@@ -52,6 +52,8 @@ public class WorkOrderProgressController extends BaseController { ...@@ -52,6 +52,8 @@ public class WorkOrderProgressController extends BaseController {
@Log(title = "生产进度:报工明细", businessType = BusinessType.QUERY) @Log(title = "生产进度:报工明细", businessType = BusinessType.QUERY)
@GetMapping("/getFeedbackList") @GetMapping("/getFeedbackList")
public TableDataInfo<WorkOrderProgressFeedbackListResponse> getFeedbackList(Long taskWorkunitId, Long taskId,@RequestParam("workorderCode") String workorderCode) { public TableDataInfo<WorkOrderProgressFeedbackListResponse> getFeedbackList(Long taskWorkunitId, Long taskId,@RequestParam("workorderCode") String workorderCode) {
if(taskWorkunitId == 0)
taskWorkunitId = null;
List<WorkOrderProgressFeedbackListResponse> workOrderProgressFeedbackListResponses = workOrderProgressService.getFeedbackList(workorderCode,taskId,taskWorkunitId); List<WorkOrderProgressFeedbackListResponse> workOrderProgressFeedbackListResponses = workOrderProgressService.getFeedbackList(workorderCode,taskId,taskWorkunitId);
return getDataTable(workOrderProgressFeedbackListResponses); return getDataTable(workOrderProgressFeedbackListResponses);
} }
......
...@@ -23,5 +23,5 @@ public class WorkOrderProgressProcessListResponse { ...@@ -23,5 +23,5 @@ public class WorkOrderProgressProcessListResponse {
@ApiModelProperty("合格率") @ApiModelProperty("合格率")
private BigDecimal passRate; private BigDecimal passRate;
private Long taskId; private Long taskId;
private Long taskWorkunitId; private Long taskWorkunitId = 0L;
} }
...@@ -3,9 +3,12 @@ package com.ximai.mes.report.service.impl; ...@@ -3,9 +3,12 @@ package com.ximai.mes.report.service.impl;
import com.ximai.mes.constant.TaskStatusEnum; import com.ximai.mes.constant.TaskStatusEnum;
import com.ximai.mes.pro.domain.ProFeedback; import com.ximai.mes.pro.domain.ProFeedback;
import com.ximai.mes.pro.domain.proWorkOrder.ProWorkorder; import com.ximai.mes.pro.domain.proWorkOrder.ProWorkorder;
import com.ximai.mes.pro.domain.task.ProTask;
import com.ximai.mes.pro.domain.task.ProTaskWorkunit;
import com.ximai.mes.pro.mapper.ProFeedbackMapper; import com.ximai.mes.pro.mapper.ProFeedbackMapper;
import com.ximai.mes.pro.mapper.proWorkOrder.ProWorkorderMapper; import com.ximai.mes.pro.mapper.proWorkOrder.ProWorkorderMapper;
import com.ximai.mes.pro.mapper.task.ProTaskMapper; import com.ximai.mes.pro.mapper.task.ProTaskMapper;
import com.ximai.mes.pro.mapper.task.ProTaskWorkunitMapper;
import com.ximai.mes.report.request.WorkOrderProgressRequest; import com.ximai.mes.report.request.WorkOrderProgressRequest;
import com.ximai.mes.report.response.WorkOrderProgressFeedbackListResponse; import com.ximai.mes.report.response.WorkOrderProgressFeedbackListResponse;
import com.ximai.mes.report.response.WorkOrderProgressListResponse; import com.ximai.mes.report.response.WorkOrderProgressListResponse;
...@@ -31,6 +34,8 @@ public class WorkOrderProgressServiceImp implements WorkOrderProgressService { ...@@ -31,6 +34,8 @@ public class WorkOrderProgressServiceImp implements WorkOrderProgressService {
private ProTaskMapper proTaskMapper; private ProTaskMapper proTaskMapper;
@Autowired @Autowired
private ProFeedbackMapper proFeedbackMapper; private ProFeedbackMapper proFeedbackMapper;
@Autowired
ProTaskWorkunitMapper proTaskWorkunitMapper;
@Override @Override
@Transactional @Transactional
public List<WorkOrderProgressListResponse> getList(WorkOrderProgressRequest workOrderProgressRequest) { public List<WorkOrderProgressListResponse> getList(WorkOrderProgressRequest workOrderProgressRequest) {
...@@ -57,17 +62,41 @@ public class WorkOrderProgressServiceImp implements WorkOrderProgressService { ...@@ -57,17 +62,41 @@ public class WorkOrderProgressServiceImp implements WorkOrderProgressService {
public List<WorkOrderProgressProcessListResponse> getProcessList(String workorderCode) { public List<WorkOrderProgressProcessListResponse> getProcessList(String workorderCode) {
List<WorkOrderProgressProcessListResponse> workOrderProgressProcessListResponses = proTaskMapper.getProcessList(workorderCode); List<WorkOrderProgressProcessListResponse> workOrderProgressProcessListResponses = proTaskMapper.getProcessList(workorderCode);
for (WorkOrderProgressProcessListResponse workOrderProgressProcessListResponse : workOrderProgressProcessListResponses){ for (WorkOrderProgressProcessListResponse workOrderProgressProcessListResponse : workOrderProgressProcessListResponses){
if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.BEGINNING.getStatus())){ // if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.BEGINNING.getStatus())){
workOrderProgressProcessListResponse.setStatus("加工中"); // workOrderProgressProcessListResponse.setStatus("加工中");
}else if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.FINISHED.getStatus())){ // }else if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.FINISHED.getStatus())){
workOrderProgressProcessListResponse.setStatus("已完工"); // workOrderProgressProcessListResponse.setStatus("已完工");
}else if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.PAUSE.getStatus())){ // }else if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.PAUSE.getStatus())){
workOrderProgressProcessListResponse.setStatus("暂停"); // workOrderProgressProcessListResponse.setStatus("暂停");
}else if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.PREPARE.getStatus())){ // }else if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.PREPARE.getStatus())){
// workOrderProgressProcessListResponse.setStatus("未开工");
// }else if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.ERROR_STOP.getStatus())){
// workOrderProgressProcessListResponse.setStatus("故障停工");
// }
ProTaskWorkunit proTaskWorkunitQuery = new ProTaskWorkunit();
proTaskWorkunitQuery.setTaskId(workOrderProgressProcessListResponse.getTaskId());
List<ProTaskWorkunit> proTaskWorkunitList = proTaskWorkunitMapper.selectProTaskWorkunitList(proTaskWorkunitQuery);
if(proTaskWorkunitList.size() > 0){
if(proTaskWorkunitList.stream()
.filter(proTaskWorkunit -> proTaskWorkunit.getStatus().equals(TaskStatusEnum.FINISHED.getStatus())).count() == proTaskWorkunitList.size() ){
//下面的所有派工表任务都完工时,标记为完工
workOrderProgressProcessListResponse.setStatus("已完工");
}else if(proTaskWorkunitList.stream()
.filter(proTaskWorkunit -> proTaskWorkunit.getStatus().equals(TaskStatusEnum.ERROR_STOP.getStatus())).count() > 0 ){
//下面的所有派工表任务存在有任何一条故障时,标记为故障停工
workOrderProgressProcessListResponse.setStatus("故障停工");
}else if(proTaskWorkunitList.stream()
.filter(proTaskWorkunit -> proTaskWorkunit.getStatus().equals(TaskStatusEnum.PREPARE.getStatus())).count() == proTaskWorkunitList.size() ){
//下面的所有派工表任务都未开工时,标记为未开工
workOrderProgressProcessListResponse.setStatus("未开工");
}else{
//其他加工中
workOrderProgressProcessListResponse.setStatus("加工中");
}
}else{
workOrderProgressProcessListResponse.setStatus("未开工"); workOrderProgressProcessListResponse.setStatus("未开工");
}else if(workOrderProgressProcessListResponse.getStatus().equals(TaskStatusEnum.ERROR_STOP.getStatus())){
workOrderProgressProcessListResponse.setStatus("故障停工");
} }
if(workOrderProgressProcessListResponse.getQuantityProduced() != null && workOrderProgressProcessListResponse.getQuantityProduced().compareTo(BigDecimal.ZERO) > 0){ if(workOrderProgressProcessListResponse.getQuantityProduced() != null && workOrderProgressProcessListResponse.getQuantityProduced().compareTo(BigDecimal.ZERO) > 0){
if(workOrderProgressProcessListResponse.getQuantityProduced().compareTo(workOrderProgressProcessListResponse.getQuantityQualify()) > 0){ if(workOrderProgressProcessListResponse.getQuantityProduced().compareTo(workOrderProgressProcessListResponse.getQuantityQualify()) > 0){
workOrderProgressProcessListResponse.setPassRate(workOrderProgressProcessListResponse.getQuantityQualify().multiply(new BigDecimal(100)). workOrderProgressProcessListResponse.setPassRate(workOrderProgressProcessListResponse.getQuantityQualify().multiply(new BigDecimal(100)).
......
...@@ -407,15 +407,7 @@ ...@@ -407,15 +407,7 @@
</select> </select>
<select id="getProcessList" <select id="getProcessList"
resultType="com.ximai.mes.report.response.WorkOrderProgressProcessListResponse"> resultType="com.ximai.mes.report.response.WorkOrderProgressProcessListResponse">
SELECT select * from pro_task where arrange_code = #{workorderCode} order by task_id
workunit.* ,
task.process_code,
task.process_name
FROM
pro_task task
JOIN pro_task_workunit workunit ON workunit.task_id = task.task_id
where arrange_code = #{workorderCode}
order by task.task_id
</select> </select>
<insert id="insertProTask" parameterType="ProTask" useGeneratedKeys="true" keyProperty="taskId"> <insert id="insertProTask" parameterType="ProTask" useGeneratedKeys="true" keyProperty="taskId">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment