Browse Source

工艺路线管理功能修复 保存图形后数据重复问题;

master_hella_20240701
zhousq 1 year ago
parent
commit
151f5e306f
  1. 14
      win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/controller/processroute/ProcessrouteController.java
  2. 25
      win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/controller/processroute/vo/ProcessrouteUpdateGraphReqVO.java
  3. 8
      win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/dal/mysql/processroutenodedetail/ProcessrouteNodeDetailMapper.java
  4. 2
      win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/service/processroute/ProcessrouteServiceImpl.java
  5. 2
      win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/service/processroutenodedetail/ProcessrouteNodeDetailService.java
  6. 5
      win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/service/processroutenodedetail/ProcessrouteNodeDetailServiceImpl.java
  7. 5
      win-module-mes/win-module-mes-biz/src/main/resources/mapper/processroutenodedetail/ProcessrouteNodeDetailMapper.xml
  8. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/itembasic/ItembasicServiceImpl.java

14
win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/controller/processroute/ProcessrouteController.java

@ -61,10 +61,10 @@ public class ProcessrouteController {
int result = processrouteService.updateProcessroute(updateReqVO);
return success(result > 0);
}
@Value("${win.mes.start-process-code}")
private String startProcessCode;
@Value("${win.mes.end-process-code}")
private String endProcesscode;
//@Value("${win.mes.start-process-code}")
private String startProcessCode="startNode";
//@Value("${win.mes.end-process-code}")
private String endProcesscode="endNode";
@PostMapping("/updategraph")
@Operation(summary = "更新工艺路线的图形定义")
// @PreAuthorize("@ss.hasPermission('mes:processroute:update')")
@ -75,14 +75,14 @@ public class ProcessrouteController {
* 如果紧后工序为endProcesscode表示该工序为结束工工序
* */
//logger.info(startProcessCode+"----------------"+endProcesscode);
List<ProcessrouteNodeDetailCreateReqVO> processConfigFromJsonByCells = graphVo.getProcessConfigFromJsonByCells(graphVo.getGraphJson(),graphVo.getProcessrouteCode());
List<ProcessrouteNodeDetailCreateReqVO> processConfigFromJsonByCells = graphVo.getProcessConfigFromJsonByCells(graphVo.getGraphJson(),graphVo.getProcessrouteCode(),startProcessCode,endProcesscode);
ProcessrouteDO processroute=new ProcessrouteDO();
processroute.setId(graphVo.getProcessrouteId());
processroute.setProcessrouteCode(graphVo.getProcessrouteCode());
processroute.setGraphJson(graphVo.getGraphJson().toJSONString());
processrouteService.updateProcessrouteGraph(processroute,ProcessrouteNodeDetailConvert.INSTANCE.convertListDetail(processConfigFromJsonByCells));
int ret=processrouteService.updateProcessrouteGraph(processroute,ProcessrouteNodeDetailConvert.INSTANCE.convertListDetail(processConfigFromJsonByCells));
//logger.info(graphVo.getGraphJson().toJSONString());
return success(true);
return success(ret>0);
}

25
win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/controller/processroute/vo/ProcessrouteUpdateGraphReqVO.java

@ -28,8 +28,9 @@ public class ProcessrouteUpdateGraphReqVO {
private JSONObject graphJson;
//从图形配置数据中进行转换出配置 通过Cells 数组方式
/**参考格式*/
public List<ProcessrouteNodeDetailCreateReqVO> getProcessConfigFromJsonByCells(JSONObject json,String processrouteCode) {
public List<ProcessrouteNodeDetailCreateReqVO> getProcessConfigFromJsonByCells(JSONObject json,String processrouteCode,String startCode,String endCode) {
Optional<JSONObject> data = Optional.ofNullable(json);
Map<String, ProcessrouteNodeDetailCreateReqVO> nodesMap=new HashMap<>();//节点数据
Map<String,JSONObject> edgesMap=new HashMap<>();//边数据
@ -49,16 +50,18 @@ public class ProcessrouteUpdateGraphReqVO {
}else{
String nodeId = cell.getString("id");
if(nodesMap.get(nodeId)==null){
vo=new ProcessrouteNodeDetailCreateReqVO();
//vo.setGraphX(cell.getInteger("x"));
//vo.setGraphY(cell.getInteger("y"));
vo.setGraphPro(cell.getString("attrs"));
vo.setNextCode("");
vo.setPreCode("");
vo.setProcessCode(nodeId);
//vo.setNodeName(cell.getString())
vo.setProcessrouteCode(processrouteCode);
nodesMap.put(nodeId,vo);
if(!(nodeId.equalsIgnoreCase(startCode) || nodeId.equalsIgnoreCase(endCode))){
vo=new ProcessrouteNodeDetailCreateReqVO();
//vo.setGraphX(cell.getInteger("x"));
//vo.setGraphY(cell.getInteger("y"));
vo.setGraphPro(cell.getString("attrs"));
vo.setNextCode("");
vo.setPreCode("");
vo.setProcessCode(nodeId);
//vo.setNodeName(cell.getString())
vo.setProcessrouteCode(processrouteCode);
nodesMap.put(nodeId,vo);
}
}
}
}

8
win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/dal/mysql/processroutenodedetail/ProcessrouteNodeDetailMapper.java

@ -9,6 +9,7 @@ import com.win.module.mes.controller.processroutenodedetail.vo.ProcessrouteNodeD
import com.win.module.mes.controller.processroutenodedetail.vo.ProcessrouteNodeDetailPageReqVO;
import com.win.module.mes.dal.dataobject.processroutenodedetail.ProcessrouteNodeDetailDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 工艺路由工序节点配置明细 Mapper
@ -56,9 +57,6 @@ public interface ProcessrouteNodeDetailMapper extends BaseMapperX<ProcessrouteNo
/***
*
*/
default Integer deleteByprocessRouteCode(String processRoutCode){
LambdaQueryWrapperX<ProcessrouteNodeDetailDO> lambdaQueryWrapperX = new LambdaQueryWrapperX<ProcessrouteNodeDetailDO>()
.eq(ProcessrouteNodeDetailDO::getProcessCode,processRoutCode);
return delete(lambdaQueryWrapperX);
}
Integer deleteByprocessRouteCode(@Param("processCode") String processCode);
}

2
win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/service/processroute/ProcessrouteServiceImpl.java

@ -130,7 +130,7 @@ public class ProcessrouteServiceImpl implements ProcessrouteService {
//queryWrapper.eq("processroute_code",);
processDetaiMapper.deleteByprocessRouteCode(dao.getProcessrouteCode());
processDetaiMapper.insertBatch(list);
return 0;}catch (Exception e){
return 1;}catch (Exception e){
return -1;
}
}

2
win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/service/processroutenodedetail/ProcessrouteNodeDetailService.java

@ -35,7 +35,7 @@ public interface ProcessrouteNodeDetailService {
* @param id 编号
*/
Integer deleteProcessrouteNodeDetail(Long id);
Integer deleteByProcessrouteCode(String code);
/**
* 获得工艺路由工序节点配置明细
*

5
win-module-mes/win-module-mes-biz/src/main/java/com/win/module/mes/service/processroutenodedetail/ProcessrouteNodeDetailServiceImpl.java

@ -58,7 +58,10 @@ public class ProcessrouteNodeDetailServiceImpl implements ProcessrouteNodeDetail
// 删除
return processrouteNodeDetailMapper.deleteById(id);
}
@Override
public Integer deleteByProcessrouteCode(String code){
return processrouteNodeDetailMapper.deleteByprocessRouteCode(code);
}
private void validateProcessrouteNodeDetailExists(Long id) {
if (processrouteNodeDetailMapper.selectById(id) == null) {
throw exception(PROCESSROUTE_NODE_DETAIL_NOT_EXISTS);

5
win-module-mes/win-module-mes-biz/src/main/resources/mapper/processroutenodedetail/ProcessrouteNodeDetailMapper.xml

@ -8,5 +8,8 @@
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
-->
<delete id="deleteByprocessRouteCode" parameterType="java.lang.String">
delete from strategy_processroute_node_detail
where processroute_code = #{processCode}
</delete>
</mapper>

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/itembasic/ItembasicServiceImpl.java

@ -146,8 +146,8 @@ public class ItembasicServiceImpl implements ItembasicService {
/**add by zhousq*/
@Override
public ItembasicDO getItembasicBycode(String code){
QueryWrapper<ItembasicDO> itembasicDOQueryWrapper = new QueryWrapper<>();
itembasicDOQueryWrapper.eq("code","code");
//QueryWrapper<ItembasicDO> itembasicDOQueryWrapper = new QueryWrapper<>();
//itembasicDOQueryWrapper.eq("code",code);
return itembasicMapper.selectByCode(code);
}
@Override

Loading…
Cancel
Save