ProduceServiceImpl.java 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. package com.iamberry.rst.service.pts;
  2. import com.iamberry.rst.core.pts.ProcessNode;
  3. import com.iamberry.rst.core.pts.Produce;
  4. import com.iamberry.rst.core.pts.ProduceProcess;
  5. import com.iamberry.rst.faces.pts.ProduceService;
  6. import com.iamberry.rst.service.pts.mapper.ProduceMapper;
  7. import com.iamberry.rst.util.ProduceNumberUtil;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Service;
  10. import java.util.List;
  11. /**
  12. * 生产产品管理
  13. * Created by wangxiaoming on 2017/8/28.
  14. */
  15. @Service
  16. public class ProduceServiceImpl implements ProduceService {
  17. @Autowired
  18. private ProduceMapper produceMapper;
  19. //获取生产产品列表
  20. public List<Produce> getProduceList() {
  21. return produceMapper.getProduceList();
  22. }
  23. //获取生产产品,产品工序,工序节点
  24. public List<Produce> getAllProduceList(Integer employeeId){
  25. return produceMapper.getAllProduceList(employeeId);
  26. }
  27. @Override
  28. public Produce getProduce(String produceNo) {
  29. return produceMapper.getProduce(produceNo);
  30. }
  31. //获取单个产品
  32. public Produce getProduce(Produce produce){
  33. return produceMapper.getProduceByPro(produce);
  34. }
  35. @Override
  36. public ProduceProcess getProduceProcess(Integer produceId,String processNo) {
  37. ProduceProcess produceProcess = new ProduceProcess();
  38. produceProcess.setProduceId(produceId);
  39. produceProcess.setProcessNo(processNo);
  40. return produceMapper.getProduceProcess(produceProcess);
  41. }
  42. @Override
  43. public ProcessNode getprocessNode(Integer ProcessId,String nodeNo) {
  44. ProcessNode processNode = new ProcessNode();
  45. processNode.setProcessId(ProcessId);
  46. processNode.setNodeNo(nodeNo);
  47. return produceMapper.getprocessNode(processNode);
  48. }
  49. @Override
  50. public List<ProduceProcess> listProduceProcess(ProduceProcess produceProcess) {
  51. return produceMapper.selectProcessList(produceProcess);
  52. }
  53. //添加产品
  54. public Integer saveProduce(Produce produce){
  55. produce.setProduceNo(ProduceNumberUtil.getProduceNo());
  56. produce.setProduceStatus(1);
  57. int flag = produceMapper.saveProduce(produce);
  58. Integer produceId = produce.getProduceId(); // 获取产品主键
  59. for (int i=0; i<produce.getProcess().size();i++){
  60. produce.getProcess().get(i).setProduceId(produceId); //产品id
  61. produce.getProcess().get(i).setProcessNo(ProduceNumberUtil.getProcessNo(i)); //工序编号
  62. produce.getProcess().get(i).setProcessStatus(1); //状态
  63. produce.getProcess().get(i).setProcessSort(i); //排序字段
  64. ProduceProcess produceProcess = produce.getProcess().get(i);
  65. this.saveProduceProcess(produceProcess);
  66. Integer processId = produceProcess.getProcessId(); //获取工序主键
  67. for(int j=0; j<produceProcess.getNodes().size();j++){
  68. produceProcess.getNodes().get(j).setProduceId(produceId);
  69. produceProcess.getNodes().get(j).setProcessId(processId);
  70. produceProcess.getNodes().get(j).setNodeNo(ProduceNumberUtil.getNodeNo(j)); //节点编号
  71. }
  72. this.saveProcessNodeList(produceProcess.getNodes());
  73. }
  74. return flag;
  75. }
  76. //添加产品工序
  77. public Integer saveProduceProcess(ProduceProcess produceProcesses){
  78. int flag = produceMapper.saveProduceProcess(produceProcesses);
  79. return flag;
  80. }
  81. //添加产品工序操作
  82. public Integer saveProcessNodeList(List<ProcessNode> processNodeList){
  83. int flag = produceMapper.saveProcessNodeList(processNodeList);
  84. return flag;
  85. }
  86. }