ProductionTaskDetailMapper.xml 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.fjhx.mes.mapper.production.ProductionTaskDetailMapper">
  4. <select id="getPage" resultType="com.fjhx.mes.entity.production.vo.ProductionTaskDetailVo">
  5. select
  6. ptd.id,
  7. ptd.product_id,
  8. ptd.production_task_id,
  9. ptd.product_sn,
  10. ptd.production_processes_id,
  11. ptd.finish_time,
  12. ptd.finish_status,
  13. ptd.person_liable_id,
  14. ptd.create_user,
  15. ptd.create_time,
  16. ptd.update_user,
  17. ptd.update_time,
  18. ptd.next_production_processes_id,
  19. ptd.circulation_user_id,
  20. ptd.circulation_status,
  21. ptd.previous_processes_id
  22. from production_task_detail ptd
  23. left JOIN production_task_processes_detail ptpd ON ptpd.production_task_id = ptd.production_task_id
  24. AND ptpd.production_processes_id = ptd.production_processes_id
  25. ${ew.customSqlSegment}
  26. </select>
  27. <select id="getWorkOrderByProductionTask" resultType="com.fjhx.mes.entity.work.vo.WorkOrderVo">
  28. SELECT
  29. wo.*,
  30. pt.id productionTaskId
  31. FROM
  32. work_order wo
  33. LEFT JOIN production_plan pp ON pp.work_order_id = wo.id
  34. LEFT JOIN production_task pt ON pt.production_plan_id = pp.id
  35. ${ew.customSqlSegment}
  36. </select>
  37. <select id="snInfo" resultType="com.fjhx.mes.entity.production.vo.ProductionTaskDetailVo">
  38. SELECT
  39. ptd.product_id,
  40. ptd.product_sn,
  41. sc.`code`,
  42. wo.id workOrderId
  43. FROM
  44. production_task_detail ptd
  45. JOIN production_task pt ON ptd.production_task_id = pt.id
  46. JOIN production_plan pp ON pt.production_plan_id = pp.id
  47. JOIN work_order wo ON pp.work_order_id = wo.id
  48. JOIN bytesailing_jxst.sales_contract sc ON wo.source_id = sc.id
  49. WHERE
  50. ptd.product_sn = #{sn}
  51. </select>
  52. <select id="taskProgressPage" resultType="com.fjhx.mes.entity.production.vo.ProductionTaskDetailVo">
  53. SELECT
  54. *
  55. FROM
  56. (
  57. SELECT
  58. ptd.id,
  59. sc.`code` AS contractCode,
  60. wo.`code` AS workOrderCode,
  61. pp.`code` AS productionPlanCode,
  62. pt.`code` AS productionTaskCode,
  63. pi.`code` AS productCode,
  64. pi.`name` AS productName,
  65. ptd.product_sn,
  66. pt.due_date,
  67. IF(
  68. wo.is_customized=0,
  69. (
  70. SELECT
  71. GROUP_CONCAT( ppr.`name` SEPARATOR '->' )
  72. FROM
  73. technology tec
  74. LEFT JOIN production_processes ppr ON FIND_IN_SET( ppr.id, tec.process_route )
  75. LEFT JOIN applicable_products apr ON apr.technology_id = tec.id
  76. WHERE
  77. apr.product_id = wo.product_id
  78. ) ,
  79. ( SELECT GROUP_CONCAT( wopp.`name` SEPARATOR '->' ) FROM work_order_production_processes wopp WHERE wopp.work_order_id = wo.id )
  80. ) AS productionProcessesNames,
  81. IF(
  82. wo.is_customized=0,
  83. ( SELECT ppr.`name` FROM production_processes ppr WHERE ppr.id = ptd.production_processes_id ) , ( SELECT wopp.`name` FROM work_order_production_processes wopp WHERE wopp.id = ptd.production_processes_id )
  84. ) AS productionProcessesName,
  85. su.nick_name AS personLiableName,
  86. ptd.finish_status,
  87. ptd.finish_time
  88. FROM
  89. production_task_detail ptd
  90. LEFT JOIN production_task pt ON ptd.production_task_id = pt.id
  91. LEFT JOIN production_plan pp ON pt.production_plan_id = pp.id
  92. LEFT JOIN work_order wo ON pp.work_order_id = wo.id
  93. LEFT JOIN bytesailing_jxst.sales_contract sc ON wo.source_id = sc.id
  94. LEFT JOIN bytesailing_item.product_info pi ON wo.product_id = pi.id
  95. LEFT JOIN bytesailing_base.sys_user su ON ptd.person_liable_id = su.user_id
  96. ) t1
  97. ${ew.customSqlSegment}
  98. </select>
  99. </mapper>