ProduceServiceImpl.java 3.9 KB

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