mes相关看板

master
zhaoxiaolin 10 months ago
parent 65fe3d2ef1
commit efa426825e

@ -57,4 +57,17 @@ public class MesBoardController extends BaseController {
}
return success(iMesBoradService.getProductionLineInfo(mesBoard));
}
/**工单详情**/
@PostMapping("/getPorOrderList")
public AjaxResult getPorOrderList(@RequestBody BoardDTO mesBoard) {
if (StringUtils.isBlank(mesBoard.getFactoryCode())) {
return error("[factoryCode] 不能为空");
}
if (StringUtils.isBlank(mesBoard.getEquCode())) {
return error("[equCode] 不能为空");
}
return success(iMesBoradService.getPorOrderList(mesBoard));
}
}

@ -3,6 +3,7 @@ package com.op.mes.mapper;
import com.op.common.core.domain.BaseFileData;
import com.op.mes.domain.MesBoard;
import com.op.mes.domain.MesReportWork;
import com.op.mes.domain.ProOrderWorkorder;
import com.op.mes.domain.dto.BaseEquipmentDto;
import com.op.mes.domain.dto.LGInfoDto;
import com.op.system.api.domain.SysDept;
@ -10,6 +11,7 @@ import com.op.system.api.domain.SysSapLog;
import com.op.system.api.domain.dto.BoardDTO;
import com.op.system.api.domain.dto.WCSDTO;
import com.op.system.api.domain.dto.WCSDataItemsDTO;
import com.op.system.api.domain.quality.QcCheckTaskDTO;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -83,4 +85,10 @@ public interface MesMapper {
BoardDTO getWorkOrder(BoardDTO boardDTO);
@MapKey("productDate")
Map<String, MesReportWork> getProduction15DaysAct(BoardDTO boardDTO);
QcCheckTaskDTO getTaskInfo(BoardDTO boardDTO);
List<QcCheckTaskDTO> getCheckList(BoardDTO boardDTO);
List<ProOrderWorkorder> getPorOrderList(BoardDTO boardDTO);
}

@ -1,6 +1,7 @@
package com.op.mes.service;
import com.op.common.core.web.domain.AjaxResult;
import com.op.mes.domain.ProOrderWorkorder;
import com.op.system.api.domain.dto.BoardDTO;
import java.util.List;
@ -13,4 +14,6 @@ public interface IMesBoradService {
public BoardDTO getProduction15Days(BoardDTO mesBoard);
public Map<String,BoardDTO> getProductionLineInfo(BoardDTO mesBoard);
public List<ProOrderWorkorder> getPorOrderList(BoardDTO mesBoard);
}

@ -1,15 +1,19 @@
package com.op.mes.service.impl;
import com.alibaba.fastjson2.JSONObject;
import com.alibaba.nacos.common.utils.CollectionUtils;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import com.op.common.core.utils.DateUtils;
import com.op.common.core.utils.StringUtils;
import com.op.common.core.web.domain.AjaxResult;
import com.op.mes.domain.MesReportWork;
import com.op.mes.domain.ProOrderWorkorder;
import com.op.mes.mapper.MesMapper;
import com.op.mes.service.IMesBoradService;
import com.op.system.api.domain.dto.BoardDTO;
import com.op.system.api.domain.mes.ProOrderWorkorderDTO;
import com.op.system.api.domain.quality.QcCheckTaskDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -103,11 +107,40 @@ public class MesBoradServiceImpl implements IMesBoradService {
BoardDTO workOrder = mesMapper.getWorkOrder(boardDTO);
dtoMap.put("workOrder",workOrder);
QcCheckTaskDTO taskDTO = mesMapper.getTaskInfo(boardDTO);
BoardDTO task2 = new BoardDTO();
if(taskDTO.getQuality() != null){
task2.setTaskNum(taskDTO.getQuality().toString());
}else{
task2.setTaskNum("0");
}
dtoMap.put("taskNum",task2);//巡检次数
BoardDTO task3 = new BoardDTO();
if(taskDTO.getSampleQuality() != null){
task3.setTaskSampleNum(taskDTO.getSampleQuality().toString());
}else{
task3.setTaskSampleNum("0");
}
dtoMap.put("taskSampleNum",task3);//巡检抽样数量
BoardDTO task4 = new BoardDTO();
List<QcCheckTaskDTO> checkList = mesMapper.getCheckList(boardDTO);
if(!CollectionUtils.isEmpty(checkList)){
task4.setCheckList(checkList);
}
dtoMap.put("piedata",task4);//巡检结果
return dtoMap;
}
@Override
public List<ProOrderWorkorder> getPorOrderList(BoardDTO boardDTO) {
DynamicDataSourceContextHolder.push(boardDTO.getFactoryCode());
List<ProOrderWorkorder> dtos = mesMapper.getPorOrderList(boardDTO);
return dtos;
}
//获取当前日期前几天
private List<String> getDays(int dayNum){
List<String> days = new ArrayList<>();

@ -330,5 +330,43 @@
and CONVERT ( DATE, pow.product_date ) = CONVERT ( DATE, GETDATE( ) )
and pow.parent_order = '0' and pow.del_flag='0'
</select>
<select id="getTaskInfo" resultType="com.op.system.api.domain.quality.QcCheckTaskDTO">
select count(0) quality,
sum(sample_quality) sampleQuality
from qc_check_task
where check_type = 'checkTypeSCXJ' and del_flag = '0'
and check_loc = #{equCode}
and CONVERT(varchar(10),create_time, 120) = CONVERT(varchar(10),GETDATE(), 120)
</select>
<select id="getCheckList" resultType="com.op.system.api.domain.quality.QcCheckTaskDTO">
select count(0) quality,
case when check_result='Y' then '合格'
when check_result='N' then '不合格'
else check_result end checkResult
from qc_check_task
where check_type = 'checkTypeSCXJ' and del_flag = '0'
and check_loc = #{equCode}
and CONVERT(varchar(10),create_time, 120) = CONVERT(varchar(10),GETDATE(), 120)
and check_result is not null
group by check_result
</select>
<select id="getPorOrderList" resultType="com.op.mes.domain.ProOrderWorkorder">
select pow.workorder_code_sap workorderCodeSap,
pow.product_name productName,
powb.batch_code batchCode,
powb.batch_quantity quantitySplit,
t.quantityFeedback quantityProduced
from pro_order_workorder pow
left join pro_order_workorder_batch powb on powb.workorder_id = pow.workorder_id
left join (
select workorder_code,batch,sum(quantity_feedback) quantityFeedback from mes_report_work
where CONVERT(varchar(10),feedback_time, 120) = CONVERT(varchar(10),GETDATE(), 120)
and del_flag = '0'
group by workorder_code,batch
)t on pow.workorder_code = t.workorder_code and powb.batch_code = t.batch
where pow.del_flag = '0' and CONVERT(varchar(10),pow.product_date, 120) = CONVERT(varchar(10),GETDATE(), 120)
and pow.workorder_name = #{equCode} and pow.parent_order ='0' and powb.del_flag = '0'
order by powb.batch_code
</select>
</mapper>

Loading…
Cancel
Save