PersonalMapper.xml 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  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.dayou.mapper.PersonalMapper">
  4. <!-- 通用查询映射结果 -->
  5. <resultMap id="BaseResultMap" type="com.dayou.entity.Personal">
  6. <result column="id" property="id" />
  7. <result column="created" property="created" />
  8. <result column="modified" property="modified" />
  9. <result column="deleted" property="deleted" />
  10. <result column="order_id" property="orderId" />
  11. <result column="location" property="location" />
  12. <result column="evaluate_aim" property="evaluateAim" />
  13. <result column="purpose" property="purpose" />
  14. <result column="clientele_type" property="clienteleType" />
  15. <result column="clientele_id" property="clienteleId" />
  16. <result column="clientele_sub_id" property="clienteleSubId" />
  17. <result column="clientele_contact_id" property="clienteleContactId" />
  18. <result column="agent" property="agent" />
  19. <result column="loan_nature" property="loanNature" />
  20. <result column="loan_aim" property="loanAim" />
  21. <result column="loan_limit" property="loanLimit" />
  22. <result column="loan_period" property="loanPeriod" />
  23. <result column="loan_expire" property="loanExpire" />
  24. <result column="bailorA" property="bailorA" />
  25. <result column="bailorB" property="bailorB" />
  26. <result column="bailorA_tel" property="bailoraTel" />
  27. <result column="bailorB_tel" property="bailorbTel" />
  28. <result column="terminal_clientele_type" property="terminalClienteleType" />
  29. <result column="terminal_clientele_contact_id" property="terminalClienteleContactId" />
  30. <result column="terminal_clientele_id" property="terminalClienteleId" />
  31. <result column="credentials" property="credentials" />
  32. <result column="client_manager_id" property="clientManagerId" />
  33. <result column="outward_staff" property="outwardStaff" />
  34. <result column="inward_staff" property="inwardStaff" />
  35. <result column="pricing_staff" property="pricingStaff" />
  36. <result column="remark" property="remark" />
  37. </resultMap>
  38. <!-- 通用查询结果列 -->
  39. <sql id="Base_Column_List">
  40. id,
  41. created,
  42. modified,
  43. deleted,
  44. order_id, location, evaluate_aim, purpose, clientele_type, clientele_id, clientele_sub_id, clientele_contact_id, agent, loan_nature, loan_aim, loan_limit, loan_period, loan_expire, bailorA, bailorB, bailorA_tel, bailorB_tel, terminal_clientele_type, terminal_clientele_contact_id, terminal_clientele_id, credentials, is_online, client_manager_id, outward_staff, inward_staff, pricing_staff, remark
  45. </sql>
  46. <select id="xSelectPage" parameterType="com.dayou.vo.PersonalVO" resultType="com.dayou.vo.PersonalVO">
  47. SELECT
  48. wf.id AS currentNodeId,
  49. wf.node_id,
  50. wf.business_id,
  51. wf.business_sub_id,
  52. wf.created AS nodeTime,
  53. wn.NAME as currentNodeName,
  54. wn.CODE currentNodeCode,
  55. p.id,
  56. p.order_id,
  57. p.location,
  58. p.agent,
  59. p.bailorA,
  60. p.bailorB,
  61. p.bailorA_tel,
  62. p.bailorB_tel,
  63. p.client_manager_id,
  64. p.remark,
  65. pt.acreage,
  66. pt.price,
  67. pt.amount,
  68. cc1.NAME AS clientName,
  69. cc2.NAME AS clientSubName,
  70. cl1.NAME AS contactName,
  71. cl1.duty AS cDuty,
  72. u.NAME AS clientManager,
  73. u1.NAME AS outwardStaffName,
  74. u2.NAME AS inwardStaffName,
  75. u3.NAME AS pricingStaffName,
  76. u4.name as handlerName,
  77. u4.id as handlerId,
  78. p.created
  79. FROM
  80. work_flow_node_instance wf
  81. LEFT JOIN work_node wn ON wn.id = wf.node_id
  82. LEFT JOIN work_task_record wtr ON wtr.instance_id = wf.id
  83. LEFT JOIN user u4 ON u4.id = wtr.handler_id
  84. LEFT JOIN personal p ON p.id = wf.business_id
  85. LEFT JOIN personal_target pt ON pt.personal_id = wf.business_id
  86. LEFT JOIN customer_company cc1 ON cc1.id = p.clientele_id
  87. LEFT JOIN customer_company cc2 ON cc2.id = p.clientele_sub_id
  88. LEFT JOIN customer_linkman cl1 ON cl1.id = p.clientele_contact_id
  89. LEFT JOIN user u ON u.id = p.client_manager_id
  90. LEFT JOIN user u1 ON u1.id = p.outward_staff
  91. LEFT JOIN user u2 ON u2.id = p.inward_staff
  92. LEFT JOIN user u3 ON u3.id = p.pricing_staff
  93. WHERE
  94. wf.business_type = "PERSONAL_BUSINESS"
  95. AND wf.state = 'PENDING'
  96. AND wf.deleted = 0
  97. AND wn.deleted = 0
  98. AND p.deleted = 0
  99. </select>
  100. <select id="getDetail" parameterType="java.lang.Long" resultType="com.dayou.vo.PersonalVO">
  101. SELECT
  102. p.*,
  103. cc1.NAME AS clientName,
  104. cc2.NAME AS clientSubName,
  105. cl1.NAME AS contactName,
  106. cl1.mobile AS contactTel,
  107. cl1.mobile AS contactTel,
  108. cl1.department as cDepartment,
  109. u.NAME AS clientManager,
  110. u1.NAME AS outwardStaffName,
  111. u2.NAME AS inwardStaffName,
  112. u3.NAME AS pricingStaffName,
  113. cc3.name as tTerminalClienteleName,
  114. cc3.phone as tCompanyMobile,
  115. cl2.name as tTerminalClienteleContactName,
  116. cl2.mobile as tMobile
  117. FROM
  118. personal p
  119. LEFT JOIN personal_target pt ON p.id = pt.personal_id
  120. LEFT JOIN customer_company cc1 ON cc1.id = p.clientele_id
  121. LEFT JOIN customer_company cc2 ON cc2.id = p.clientele_sub_id
  122. LEFT JOIN customer_linkman cl1 ON cl1.id = p.clientele_contact_id
  123. left join customer_company cc3 on cc3.id = p.terminal_clientele_id
  124. left join customer_linkman cl2 on cl2.id = p.terminal_clientele_contact_id
  125. LEFT JOIN user u ON u.id = p.client_manager_id
  126. LEFT JOIN user u1 ON u1.id = p.outward_staff
  127. LEFT JOIN user u2 ON u2.id = p.inward_staff
  128. LEFT JOIN user u3 ON u3.id = p.pricing_staff
  129. where p.deleted = 0 and p.id = #{id}
  130. </select>
  131. <select id="getByTargetId" parameterType="java.lang.Long" resultType="com.dayou.entity.Personal">
  132. select id,credentials from personal where id = (select personal_id from personal_target where id = #{targetId} and deleted = 0) and deleted = 0
  133. </select>
  134. </mapper>