InsOrdersMapper.xml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.ydtech.modules.order.dao.InsOrdersMapper">
  6. <resultMap id="BaseResultMap" type="com.ydtech.modules.order.entity.InsOrders">
  7. <id property="orderno" column="orderno" jdbcType="VARCHAR"/>
  8. <result property="quoteno" column="quoteno" jdbcType="VARCHAR"/>
  9. <result property="orderstatus" column="orderstatus" jdbcType="VARCHAR"/>
  10. <result property="companyId" column="company_id" jdbcType="VARCHAR"/>
  11. <result property="insCompany" column="ins_company" jdbcType="VARCHAR"/>
  12. <result property="carinfo" column="carinfo" javaType="com.alibaba.fastjson.JSONObject"
  13. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  14. <result property="userid" column="userid" jdbcType="VARCHAR"/>
  15. <result property="username" column="username" jdbcType="VARCHAR"/>
  16. <result property="deptid" column="deptid" jdbcType="VARCHAR"/>
  17. <result property="deptname" column="deptname" jdbcType="VARCHAR"/>
  18. <result property="ownerinfo" column="ownerinfo" javaType="com.alibaba.fastjson.JSONObject"
  19. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  20. <result property="applyinfo" column="applyinfo" javaType="com.alibaba.fastjson.JSONObject"
  21. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  22. <result property="insureinfo" column="insureinfo" javaType="com.alibaba.fastjson.JSONObject"
  23. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"
  24. jdbcType="VARCHAR"/>
  25. <result property="agreeid" column="agreeid" jdbcType="VARCHAR"/>
  26. <result property="productid" column="productid" jdbcType="VARCHAR"/>
  27. <result property="product" column="product" jdbcType="VARCHAR"/>
  28. <result property="createtime" column="createtime" jdbcType="TIMESTAMP"/>
  29. <result property="frameno" column="frameno" jdbcType="VARCHAR"/>
  30. <result property="licenseno" column="licenseno" jdbcType="VARCHAR"/>
  31. <result property="insuredname" column="insuredname" jdbcType="VARCHAR"/>
  32. <result property="jqstartdate" column="jqstartdate" jdbcType="VARCHAR"/>
  33. <result property="jqenddate" column="jqenddate" jdbcType="VARCHAR"/>
  34. <result property="systartdate" column="systartdate" jdbcType="VARCHAR"/>
  35. <result property="syenddate" column="syenddate" jdbcType="VARCHAR"/>
  36. <result property="risk" column="risk" javaType="com.alibaba.fastjson.JSONArray"
  37. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  38. <result property="king" column="king" javaType="com.alibaba.fastjson.JSONArray"
  39. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  40. <result property="vehicleAndVesselTax" column="vehicle_and_vessel_tax"
  41. javaType="com.alibaba.fastjson.JSONObject"
  42. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  43. </resultMap>
  44. <resultMap id="OrderResultMap" type="com.ydtech.modules.order.entity.vo.OrderVo">
  45. <id property="orderno" column="orderno" jdbcType="VARCHAR"/>
  46. <result property="quoteno" column="quoteno" jdbcType="VARCHAR"/>
  47. <result property="orderstatus" column="orderstatus" jdbcType="VARCHAR"/>
  48. <result property="carinfo" column="carinfo" javaType="com.alibaba.fastjson.JSONObject"
  49. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  50. <result property="userid" column="userid" jdbcType="VARCHAR"/>
  51. <result property="username" column="username" jdbcType="VARCHAR"/>
  52. <result property="deptid" column="deptid" jdbcType="VARCHAR"/>
  53. <result property="deptname" column="deptname" jdbcType="VARCHAR"/>
  54. <result property="ownerinfo" column="ownerinfo" javaType="com.alibaba.fastjson.JSONObject"
  55. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  56. <result property="applyinfo" column="applyinfo" javaType="com.alibaba.fastjson.JSONObject"
  57. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  58. <result property="insureinfo" column="insureinfo" javaType="com.alibaba.fastjson.JSONObject"
  59. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"
  60. jdbcType="VARCHAR"/>
  61. <result property="agreeid" column="agreeid" jdbcType="VARCHAR"/>
  62. <result property="productid" column="productid" jdbcType="VARCHAR"/>
  63. <result property="product" column="product" jdbcType="VARCHAR"/>
  64. <result property="frameno" column="frameno" jdbcType="VARCHAR"/>
  65. <result property="licenseno" column="licenseno" jdbcType="VARCHAR"/>
  66. <result property="insuredname" column="insuredname" jdbcType="VARCHAR"/>
  67. <result property="jqstartdate" column="jqstartdate" jdbcType="VARCHAR"/>
  68. <result property="jqenddate" column="jqenddate" jdbcType="VARCHAR"/>
  69. <result property="systartdate" column="systartdate" jdbcType="VARCHAR"/>
  70. <result property="syenddate" column="syenddate" jdbcType="VARCHAR"/>
  71. <result property="id" column="id" jdbcType="BIGINT"/>
  72. <result property="companyId" column="company_id" jdbcType="BIGINT"/>
  73. <result property="reptxt" column="reptxt" javaType="com.alibaba.fastjson.JSONObject"
  74. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  75. <result property="vehicleAndVesselTax" column="vehicle_and_vessel_tax"
  76. javaType="com.alibaba.fastjson.JSONObject"
  77. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  78. <result property="inscompany" column="inscompany" jdbcType="VARCHAR"/>
  79. <result property="jqapplyno" column="jqapplyno" jdbcType="VARCHAR"/>
  80. <result property="jqpolicyno" column="jqpolicyno" jdbcType="VARCHAR"/>
  81. <result property="syapplyno" column="syapplyno" jdbcType="VARCHAR"/>
  82. <result property="sypolicyno" column="sypolicyno" jdbcType="VARCHAR"/>
  83. <result property="riskinfo" column="riskinfo" javaType="com.alibaba.fastjson.JSONArray"
  84. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  85. <result property="kindinfo" column="kindinfo" javaType="com.alibaba.fastjson.JSONArray"
  86. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  87. <result property="jqpremium" column="jqpremium" jdbcType="DECIMAL"/>
  88. <result property="sypremium" column="sypremium" jdbcType="DECIMAL"/>
  89. <result property="jypremium" column="jypremium" jdbcType="DECIMAL"/>
  90. <result property="taxamount" column="taxamount" jdbcType="DECIMAL"/>
  91. <result property="sumpremium" column="sumpremium" jdbcType="DECIMAL"/>
  92. <result property="jqdiscountrate" column="jqdiscountrate" jdbcType="DOUBLE"/>
  93. <result property="sydiscountrate" column="sydiscountrate" jdbcType="DOUBLE"/>
  94. <result property="feerate" column="feerate" jdbcType="DOUBLE"/>
  95. <result property="disrate" column="disrate" jdbcType="DOUBLE"/>
  96. <result property="auditid" column="auditid" jdbcType="VARCHAR"/>
  97. <result property="auditname" column="auditname" jdbcType="VARCHAR"/>
  98. <result property="audittime" column="audittime" jdbcType="TIMESTAMP"/>
  99. <result property="auditopinion" column="auditopinion" jdbcType="VARCHAR"/>
  100. <result property="jqappoint" column="jqappoint" jdbcType="VARCHAR"/>
  101. <result property="syappoint" column="syappoint" jdbcType="VARCHAR"/>
  102. <result property="createtime" column="createtime" jdbcType="TIMESTAMP"/>
  103. <result property="paymentLink" column="payment_link" jdbcType="VARCHAR"/>
  104. <result property="accidentInfo" column="accident_info" javaType="com.alibaba.fastjson.JSONArray"
  105. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  106. <result property="taxArrears" column="tax_arrears" javaType="com.alibaba.fastjson.JSONArray"
  107. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  108. <result property="crossInsurance" column="cross_insurance" javaType="com.alibaba.fastjson.JSONArray"
  109. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  110. </resultMap>
  111. <sql id="Base_Column_List">
  112. orderno,quoteno,orderstatus,
  113. carinfo,userid,username,
  114. deptid,deptname,ownerinfo,
  115. applyinfo,insureinfo,agreeid,
  116. productid,product,createtime,
  117. frameno,licenseno,insuredname,
  118. jqstartdate,jqenddate,systartdate,
  119. syenddate
  120. </sql>
  121. <select id="getOrderAndAreaCompany" parameterType="java.lang.String" resultMap="OrderResultMap">
  122. select o.orderno,
  123. o.quoteno,
  124. o.carinfo,
  125. o.userid,
  126. o.username,
  127. o.deptid,
  128. o.deptname,
  129. o.ownerinfo,
  130. o.applyinfo,
  131. o.insureinfo,
  132. o.agreeid,
  133. o.productid,
  134. o.product,
  135. o.frameno,
  136. o.licenseno,
  137. o.insuredname,
  138. o.vehicle_and_vessel_tax,
  139. iac.jq_start_date as jqstartdate,
  140. iac.jq_end_date as jqenddate,
  141. iac.sy_start_date as systartdate,
  142. iac.sy_end_date as syenddate,
  143. iac.id,
  144. iac.company_id,
  145. iac.reptxt,
  146. iac.orderstatus,
  147. iac.inscompany,
  148. iac.jqapplyno,
  149. iac.jqpolicyno,
  150. iac.syapplyno,
  151. iac.sypolicyno,
  152. iac.riskinfo,
  153. iac.kindinfo,
  154. iac.jqpremium,
  155. iac.sypremium,
  156. iac.jypremium,
  157. iac.taxamount,
  158. iac.sumpremium,
  159. iac.jqdiscountrate,
  160. iac.sydiscountrate,
  161. iac.feerate,
  162. iac.disrate,
  163. iac.auditid,
  164. iac.auditname,
  165. iac.audittime,
  166. iac.auditopinion,
  167. iac.jqappoint,
  168. iac.syappoint,
  169. iac.createtime,
  170. iac.payment_link,
  171. iac.accident_info,
  172. iac.tax_arrears,
  173. iac.cross_insurance
  174. from ins_orders as o
  175. join ins_area_company iac on o.orderno = iac.orderno
  176. where iac.id = #{companyId}
  177. </select>
  178. <select id="getOrder" resultMap="BaseResultMap" parameterType="com.ydtech.modules.order.entity.vo.OrderQueryVo">
  179. select io.orderno,
  180. io.quoteno,
  181. io.orderstatus,
  182. io.carinfo,
  183. io.userid,
  184. io.username,
  185. io.deptid,
  186. io.deptname,
  187. io.ownerinfo,
  188. io.applyinfo,
  189. io.insureinfo,
  190. io.agreeid,
  191. io.productid,
  192. io.product,
  193. io.createtime,
  194. io.frameno,
  195. io.licenseno,
  196. io.insuredname,
  197. io.jqstartdate,
  198. io.jqenddate,
  199. io.systartdate,
  200. io.syenddate,
  201. io.risk,
  202. io.king,
  203. io.vehicle_and_vessel_tax from ins_orders io
  204. JOIN (SELECT DISTINCT(o.orderno) as orderno
  205. FROM ins_orders o
  206. LEFT JOIN ins_area_company a ON o.orderno = a.orderno
  207. left join sys_user u on o.userid=u.id
  208. WHERE 1 = 1
  209. <if test="orderNo != null and orderNo != ''">
  210. and o.orderno = #{orderNo, jdbcType=VARCHAR}
  211. </if>
  212. <if test="deptId != null and deptId != ''">
  213. and u.dept_id like CONCAT(#{deptId, jdbcType=VARCHAR}, '%')
  214. </if>
  215. <if test="deptId == null and deptId == '' and userId != null and userId != ''">
  216. and o.userid = #{userId, jdbcType=VARCHAR}
  217. </if>
  218. <if test="orderStatus != null and orderStatus != ''">
  219. and a.orderstatus like CONCAT('%', #{orderStatus, jdbcType=VARCHAR}, '%')
  220. </if>
  221. <if test="frameNo != null and frameNo != ''">
  222. and o.frameno like CONCAT('%', #{frameNo, jdbcType=VARCHAR}, '%')
  223. </if>
  224. <if test="licenseNo != null and licenseNo != ''">
  225. and o.licenseno like CONCAT('%', #{licenseNo, jdbcType=VARCHAR}, '%')
  226. </if>
  227. <if test="insuredName != null and insuredName != ''">
  228. and o.insuredname like CONCAT('%', #{insuredName, jdbcType=VARCHAR}, '%')
  229. </if>
  230. <if test="startDate != null and endDate != null">
  231. and o.createtime between #{startDate, jdbcType=TIMESTAMP} and #{endDate, jdbcType=TIMESTAMP}
  232. </if>) as f on io.orderno=f.orderno
  233. order by createtime desc
  234. </select>
  235. <select id="getByUseridAndLicenseNo" resultType="com.ydtech.modules.order.entity.InsOrders"
  236. parameterType="com.ydtech.modules.order.entity.vo.VerifyOrdersVo">
  237. select orderno,
  238. quoteno,
  239. orderstatus,
  240. carinfo,
  241. userid,
  242. username,
  243. deptid,
  244. deptname,
  245. ownerinfo,
  246. applyinfo,
  247. insureinfo,
  248. agreeid,
  249. productid,
  250. product,
  251. createtime,
  252. frameno,
  253. licenseno,
  254. insuredname,
  255. jqstartdate,
  256. jqenddate,
  257. systartdate,
  258. syenddate,
  259. risk,
  260. king,
  261. vehicle_and_vessel_tax
  262. from ins_orders
  263. where userid = #{userId, jdbcType=VARCHAR}
  264. and licenseno = #{licenseNo, jdbcType=VARCHAR}
  265. and createtime > DATE_SUB(CURDATE(), INTERVAL 6 MONTH)
  266. </select>
  267. <select id="selectByOrderQueryVo" resultMap="BaseResultMap" parameterType="com.ydtech.modules.order.entity.vo.OrderQueryVo">
  268. select o.orderno,
  269. o.quoteno,
  270. o.company_id,
  271. o.ins_company,
  272. o.orderstatus,
  273. o.carinfo,
  274. o.userid,
  275. o.username,
  276. o.deptid,
  277. o.deptname,
  278. o.ownerinfo,
  279. o.applyinfo,
  280. o.insureinfo,
  281. o.agreeid,
  282. o.productid,
  283. o.product,
  284. o.createtime,
  285. o.frameno,
  286. o.licenseno,
  287. o.insuredname,
  288. o.jqstartdate,
  289. o.jqenddate,
  290. o.systartdate,
  291. o.syenddate,
  292. o.risk,
  293. o.king,
  294. o.vehicle_and_vessel_tax from ins_orders o
  295. <if test="companyId != null and companyId != ''">
  296. left join ins_area_company iac on iac.orderno = o.orderno
  297. </if>
  298. where 1 = 1
  299. <if test="orderNo != null and orderNo != ''">
  300. and o.orderno = #{orderNo, jdbcType=VARCHAR}
  301. </if>
  302. <if test="deptId != null and deptId != ''">
  303. and o.deptid like CONCAT(#{deptId, jdbcType=VARCHAR}, '%')
  304. </if>
  305. <if test="(deptId == null or deptId == '') and userId != null and userId != ''">
  306. and o.userid = #{userId, jdbcType=VARCHAR}
  307. </if>
  308. <if test="orderStatus != null and orderStatus != ''">
  309. and o.orderstatus like CONCAT('%', #{orderStatus, jdbcType=VARCHAR}, '%')
  310. </if>
  311. <if test="frameNo != null and frameNo != ''">
  312. and o.frameno like CONCAT('%', #{frameNo, jdbcType=VARCHAR}, '%')
  313. </if>
  314. <if test="licenseNo != null and licenseNo != ''">
  315. and o.licenseno like CONCAT('%', #{licenseNo, jdbcType=VARCHAR}, '%')
  316. </if>
  317. <if test="insuredName != null and insuredName != ''">
  318. and o.insuredname like CONCAT('%', #{insuredName, jdbcType=VARCHAR}, '%')
  319. </if>
  320. <if test="startDate != null and endDate != null">
  321. and o.createtime between #{startDate, jdbcType=TIMESTAMP} and DATE_ADD(#{endDate, jdbcType=TIMESTAMP},
  322. INTERVAL 1 DAY)
  323. </if>
  324. <if test="companyId != null and companyId != ''">
  325. and iac.company_id = #{companyId, jdbcType=VARCHAR}
  326. </if>
  327. order by o.createtime desc
  328. </select>
  329. </mapper>