InsOrdersMapper.xml 54 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082
  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. <result property="subOrderId" column="subOrderId" jdbcType="VARCHAR"/>
  44. </resultMap>
  45. <resultMap id="OrderResultMap" type="com.ydtech.modules.order.entity.vo.OrderVo">
  46. <id property="orderno" column="orderno" jdbcType="VARCHAR"/>
  47. <result property="quoteno" column="quoteno" jdbcType="VARCHAR"/>
  48. <result property="orderstatus" column="orderstatus" jdbcType="VARCHAR"/>
  49. <result property="carinfo" column="carinfo" javaType="com.alibaba.fastjson.JSONObject"
  50. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  51. <result property="userid" column="userid" jdbcType="VARCHAR"/>
  52. <result property="username" column="username" jdbcType="VARCHAR"/>
  53. <result property="deptid" column="deptid" jdbcType="VARCHAR"/>
  54. <result property="deptname" column="deptname" jdbcType="VARCHAR"/>
  55. <result property="ownerinfo" column="ownerinfo" javaType="com.alibaba.fastjson.JSONObject"
  56. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  57. <result property="applyinfo" column="applyinfo" javaType="com.alibaba.fastjson.JSONObject"
  58. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  59. <result property="insureinfo" column="insureinfo" javaType="com.alibaba.fastjson.JSONObject"
  60. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"
  61. jdbcType="VARCHAR"/>
  62. <result property="agreeid" column="agreeid" jdbcType="VARCHAR"/>
  63. <result property="productid" column="productid" jdbcType="VARCHAR"/>
  64. <result property="product" column="product" jdbcType="VARCHAR"/>
  65. <result property="frameno" column="frameno" jdbcType="VARCHAR"/>
  66. <result property="licenseno" column="licenseno" jdbcType="VARCHAR"/>
  67. <result property="insuredname" column="insuredname" jdbcType="VARCHAR"/>
  68. <result property="jqstartdate" column="jqstartdate" jdbcType="VARCHAR"/>
  69. <result property="jqenddate" column="jqenddate" jdbcType="VARCHAR"/>
  70. <result property="systartdate" column="systartdate" jdbcType="VARCHAR"/>
  71. <result property="syenddate" column="syenddate" jdbcType="VARCHAR"/>
  72. <result property="id" column="id" jdbcType="BIGINT"/>
  73. <result property="companyId" column="company_id" jdbcType="BIGINT"/>
  74. <result property="reptxt" column="reptxt" javaType="com.alibaba.fastjson.JSONObject"
  75. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  76. <result property="vehicleAndVesselTax" column="vehicle_and_vessel_tax"
  77. javaType="com.alibaba.fastjson.JSONObject"
  78. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  79. <result property="inscompany" column="inscompany" jdbcType="VARCHAR"/>
  80. <result property="jqapplyno" column="jqapplyno" jdbcType="VARCHAR"/>
  81. <result property="jqpolicyno" column="jqpolicyno" jdbcType="VARCHAR"/>
  82. <result property="syapplyno" column="syapplyno" jdbcType="VARCHAR"/>
  83. <result property="sypolicyno" column="sypolicyno" jdbcType="VARCHAR"/>
  84. <result property="riskinfo" column="riskinfo" javaType="com.alibaba.fastjson.JSONArray"
  85. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  86. <result property="kindinfo" column="kindinfo" javaType="com.alibaba.fastjson.JSONArray"
  87. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  88. <result property="jqpremium" column="jqpremium" jdbcType="DECIMAL"/>
  89. <result property="sypremium" column="sypremium" jdbcType="DECIMAL"/>
  90. <result property="jypremium" column="jypremium" jdbcType="DECIMAL"/>
  91. <result property="taxamount" column="taxamount" jdbcType="DECIMAL"/>
  92. <result property="sumpremium" column="sumpremium" jdbcType="DECIMAL"/>
  93. <result property="jqdiscountrate" column="jqdiscountrate" jdbcType="DOUBLE"/>
  94. <result property="sydiscountrate" column="sydiscountrate" jdbcType="DOUBLE"/>
  95. <result property="feerate" column="feerate" jdbcType="DOUBLE"/>
  96. <result property="disrate" column="disrate" jdbcType="DOUBLE"/>
  97. <result property="auditid" column="auditid" jdbcType="VARCHAR"/>
  98. <result property="auditname" column="auditname" jdbcType="VARCHAR"/>
  99. <result property="audittime" column="audittime" jdbcType="TIMESTAMP"/>
  100. <result property="auditopinion" column="auditopinion" jdbcType="VARCHAR"/>
  101. <result property="jqappoint" column="jqappoint" jdbcType="VARCHAR"/>
  102. <result property="syappoint" column="syappoint" jdbcType="VARCHAR"/>
  103. <result property="createtime" column="createtime" jdbcType="TIMESTAMP"/>
  104. <result property="paymentLink" column="payment_link" jdbcType="VARCHAR"/>
  105. <result property="accidentInfo" column="accident_info" javaType="com.alibaba.fastjson.JSONArray"
  106. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  107. <result property="taxArrears" column="tax_arrears" javaType="com.alibaba.fastjson.JSONArray"
  108. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  109. <result property="crossInsurance" column="cross_insurance" javaType="com.alibaba.fastjson.JSONArray"
  110. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  111. </resultMap>
  112. <resultMap id="OrderExcelResultMap" type="com.ydtech.modules.ins.model.InsOrdersExcel">
  113. <id property="orderNo" column="orderno" jdbcType="VARCHAR"/>
  114. <result property="licenseNo" column="licenseno" jdbcType="VARCHAR"/>
  115. <result property="fraMeno" column="frameno" jdbcType="VARCHAR"/>
  116. <result property="carInfo" column="carinfo" javaType="com.alibaba.fastjson.JSONObject" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  117. <result property="score" column="score" jdbcType="VARCHAR"/>
  118. <result property="ownerInfo" column="ownerinfo" javaType="com.alibaba.fastjson.JSONObject" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  119. <result property="jqpRemIum" column="jqpremium" jdbcType="VARCHAR"/>
  120. <result property="apiType" column="api_type" jdbcType="VARCHAR"/>
  121. <result property="jqPolicyno" column="jqpolicyno" jdbcType="VARCHAR"/>
  122. <result property="sypRemIum" column="sypremium" jdbcType="VARCHAR"/>
  123. <result property="syPolicyno" column="sypolicyno" jdbcType="VARCHAR"/>
  124. <result property="jypRemIum" column="jypremium" jdbcType="VARCHAR"/>
  125. <result property="taxaMount" column="taxamount" jdbcType="VARCHAR"/>
  126. <result property="jqStartDate" column="jq_start_date" jdbcType="VARCHAR"/>
  127. <result property="jqEndDate" column="jq_end_date" jdbcType="VARCHAR"/>
  128. <result property="syStartDate" column="sy_start_date" jdbcType="VARCHAR"/>
  129. <result property="syEndDate" column="sy_end_date" jdbcType="VARCHAR"/>
  130. <result property="jqScore" column="jq_score" jdbcType="VARCHAR"/>
  131. <result property="syScore" column="sy_score" jdbcType="VARCHAR"/>
  132. <result property="lossRation" column="loss_ration" jdbcType="VARCHAR"/>
  133. <result property="jqLossRation" column="jq_loss_ration" jdbcType="VARCHAR"/>
  134. <result property="syLossRation" column="sy_loss_ration" jdbcType="VARCHAR"/>
  135. <result property="insCompany" column="inscompany" jdbcType="VARCHAR"/>
  136. <result property="agreementId" column="agreement_id" jdbcType="VARCHAR"/>
  137. <result property="userId" column="userid" jdbcType="VARCHAR"/>
  138. <result property="userName" column="username" jdbcType="VARCHAR"/>
  139. <result property="applyInfo" column="applyinfo" javaType="com.alibaba.fastjson.JSONObject"
  140. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  141. <result property="insureInfo" column="insureinfo" javaType="com.alibaba.fastjson.JSONObject"
  142. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  143. <result property="kindInfo" column="kindinfo" javaType="com.alibaba.fastjson.JSONArray"
  144. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  145. <result property="payDate" column="pay_date" jdbcType="VARCHAR"/>
  146. <result property="signingTime" column="signing_time" jdbcType="VARCHAR"/>
  147. <result property="crossInsurance" column="cross_insurance" javaType="com.alibaba.fastjson.JSONArray"
  148. typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler" jdbcType="VARCHAR"/>
  149. </resultMap>
  150. <sql id="Base_Column_List">
  151. orderno,quoteno,orderstatus,
  152. carinfo,userid,username,
  153. deptid,deptname,ownerinfo,
  154. applyinfo,insureinfo,agreeid,
  155. productid,product,createtime,
  156. frameno,licenseno,insuredname,
  157. jqstartdate,jqenddate,systartdate,
  158. syenddate
  159. </sql>
  160. <select id="getOrderAndAreaCompany" parameterType="java.lang.String" resultMap="OrderResultMap">
  161. select o.orderno,
  162. o.quoteno,
  163. o.carinfo,
  164. o.userid,
  165. o.username,
  166. o.deptid,
  167. o.deptname,
  168. o.ownerinfo,
  169. o.applyinfo,
  170. o.insureinfo,
  171. o.agreeid,
  172. o.productid,
  173. o.product,
  174. o.frameno,
  175. o.licenseno,
  176. o.insuredname,
  177. o.vehicle_and_vessel_tax,
  178. iac.jq_start_date as jqstartdate,
  179. iac.jq_end_date as jqenddate,
  180. iac.sy_start_date as systartdate,
  181. iac.sy_end_date as syenddate,
  182. iac.id,
  183. iac.company_id,
  184. iac.reptxt,
  185. iac.orderstatus,
  186. iac.inscompany,
  187. iac.jqapplyno,
  188. iac.jqpolicyno,
  189. iac.syapplyno,
  190. iac.sypolicyno,
  191. iac.riskinfo,
  192. iac.kindinfo,
  193. iac.jqpremium,
  194. iac.sypremium,
  195. iac.jypremium,
  196. iac.taxamount,
  197. iac.sumpremium,
  198. iac.jqdiscountrate,
  199. iac.sydiscountrate,
  200. iac.feerate,
  201. iac.disrate,
  202. iac.auditid,
  203. iac.auditname,
  204. iac.audittime,
  205. iac.auditopinion,
  206. iac.jqappoint,
  207. iac.syappoint,
  208. iac.createtime,
  209. iac.payment_link,
  210. iac.accident_info,
  211. iac.tax_arrears,
  212. iac.cross_insurance,
  213. iac.ubi_predicted_info_score
  214. from ins_orders as o
  215. join ins_area_company iac on o.orderno = iac.orderno
  216. where iac.id = #{companyId}
  217. </select>
  218. <select id="getByUseridAndLicenseNo" resultType="com.ydtech.modules.order.entity.InsOrders"
  219. parameterType="com.ydtech.modules.order.entity.vo.VerifyOrdersVo">
  220. select orderno,
  221. quoteno,
  222. orderstatus,
  223. carinfo,
  224. userid,
  225. username,
  226. deptid,
  227. deptname,
  228. ownerinfo,
  229. applyinfo,
  230. insureinfo,
  231. agreeid,
  232. productid,
  233. product,
  234. createtime,
  235. frameno,
  236. licenseno,
  237. insuredname,
  238. jqstartdate,
  239. jqenddate,
  240. systartdate,
  241. syenddate,
  242. risk,
  243. king,
  244. vehicle_and_vessel_tax
  245. from ins_orders
  246. where userid = #{userId, jdbcType=VARCHAR}
  247. and licenseno = #{licenseNo, jdbcType=VARCHAR}
  248. and createtime > DATE_SUB(CURDATE(), INTERVAL 6 MONTH)
  249. </select>
  250. <select id="queryPageOrderCount" resultType="Long">
  251. select
  252. count(1)
  253. from (
  254. select
  255. io.orderno
  256. from
  257. ins_orders io
  258. <!--如果存在 公司查询则进行连表 -->
  259. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  260. left JOIN
  261. ins_area_company iac on iac.orderno = io.orderno
  262. </if>
  263. <where>
  264. <if test="orderQueryVo.orderNo != null and orderQueryVo.orderNo != ''">
  265. and io.orderno = #{orderQueryVo.orderNo}
  266. </if>
  267. <if test="orderQueryVo.deptId != null and orderQueryVo.deptId != '' and isTeamLeader">
  268. and io.deptid like "${orderQueryVo.deptId}%"
  269. </if>
  270. <if test="orderQueryVo.orderStatus != null and orderQueryVo.orderStatus != ''">
  271. and io.orderstatus = #{orderQueryVo.orderStatus}
  272. </if>
  273. <if test="orderQueryVo.frameNo != null and orderQueryVo.frameNo != ''">
  274. and io.frameno = #{orderQueryVo.frameNo}
  275. </if>
  276. <if test="orderQueryVo.licenseNo != null and orderQueryVo.licenseNo != ''">
  277. and io.licenseno = #{orderQueryVo.licenseNo}
  278. </if>
  279. <if test="orderQueryVo.insuredName != null and orderQueryVo.insuredName != ''">
  280. and io.insuredname = #{orderQueryVo.insuredName}
  281. </if>
  282. <if test="orderQueryVo.startDate != null and orderQueryVo.endDate != null">
  283. and io.createtime between #{orderQueryVo.startDate} AND #{orderQueryVo.endDate}
  284. </if>
  285. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  286. and iac.company_id = #{orderQueryVo.companyId}
  287. </if>
  288. <if test="orderQueryVo.userId != null and orderQueryVo.userId != '' and isCdy">
  289. and io.operatorid = #{orderQueryVo.userId}
  290. </if>
  291. <if test="orderQueryVo.userId != null and orderQueryVo.userId != '' and !isTeamLeader">
  292. and io.userid = #{orderQueryVo.userId}
  293. </if>
  294. </where>
  295. group by io.orderno
  296. ) as s
  297. </select>
  298. <select id="queryPageOrder" resultMap="BaseResultMap">
  299. select
  300. io.*
  301. from
  302. ins_orders io
  303. <!--如果存在 公司查询则进行连表 -->
  304. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  305. left JOIN
  306. ins_area_company iac on iac.orderno = io.orderno
  307. </if>
  308. <where>
  309. <if test="orderQueryVo.orderNo != null and orderQueryVo.orderNo != ''">
  310. and io.orderno = #{orderQueryVo.orderNo}
  311. </if>
  312. <if test="orderQueryVo.deptId != null and orderQueryVo.deptId != '' and isTeamLeader">
  313. and io.deptid like "${orderQueryVo.deptId}%"
  314. </if>
  315. <if test="orderQueryVo.orderStatus != null and orderQueryVo.orderStatus != ''">
  316. and io.orderstatus = #{orderQueryVo.orderStatus}
  317. </if>
  318. <if test="orderQueryVo.frameNo != null and orderQueryVo.frameNo != ''">
  319. and io.frameno = #{orderQueryVo.frameNo}
  320. </if>
  321. <if test="orderQueryVo.licenseNo != null and orderQueryVo.licenseNo != ''">
  322. and io.licenseno = #{orderQueryVo.licenseNo}
  323. </if>
  324. <if test="orderQueryVo.insuredName != null and orderQueryVo.insuredName != ''">
  325. and io.insuredname = #{orderQueryVo.insuredName}
  326. </if>
  327. <if test="orderQueryVo.startDate != null and orderQueryVo.endDate != null">
  328. and io.createtime between #{orderQueryVo.startDate} AND #{orderQueryVo.endDate}
  329. </if>
  330. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  331. and iac.company_id = #{orderQueryVo.companyId}
  332. </if>
  333. <if test="orderQueryVo.userId != null and orderQueryVo.userId != '' and isCdy">
  334. and io.operatorid = #{orderQueryVo.userId}
  335. </if>
  336. <if test="orderQueryVo.userId != null and orderQueryVo.userId != '' and !isTeamLeader">
  337. and io.userid = #{orderQueryVo.userId}
  338. </if>
  339. </where>
  340. group by orderno
  341. order by io.createtime desc
  342. </select>
  343. <select id="queryOrderList" parameterType="com.ydtech.modules.ins.model.InsOrdersExcelVo" resultMap="OrderExcelResultMap">
  344. select
  345. a.orderno,
  346. a.licenseno,
  347. a.frameno,
  348. a.carinfo,
  349. b.api_type,
  350. b.score,
  351. a.ownerinfo,
  352. b.jqpremium,
  353. b.jqpolicyno,
  354. b.sypremium,
  355. b.sypolicyno,
  356. b.jypremium,
  357. b.taxamount,
  358. b.jq_start_date,
  359. b.jq_end_date,
  360. b.sy_start_date,
  361. b.sy_end_date,
  362. b.score,
  363. b.jq_score,
  364. b.sy_score,
  365. b.loss_ration,
  366. b.jq_loss_ration,
  367. b.sy_loss_ration,
  368. b.score,
  369. b.inscompany,
  370. b.agreement_id,
  371. a.userid,
  372. a.username,
  373. a.applyinfo,
  374. a.insureinfo,
  375. b.kindinfo,
  376. b.pay_date,
  377. b.signing_time,
  378. b.cross_insurance
  379. FROM ins_orders a LEFT JOIN ins_area_company b on a.orderno = b.orderno
  380. WHERE
  381. 1 = 1
  382. <if test="orderstatus != null and orderstatus != '' ">
  383. and b.orderstatus = #{orderstatus}
  384. </if>
  385. <if test="startDate != null ">
  386. and a.createtime &gt;= #{startDate}
  387. </if>
  388. <if test="endDate != null ">
  389. and a.createtime &lt;= #{endDate}
  390. </if>
  391. </select>
  392. <resultMap id="PolicyInsuranceReportMap" type="com.ydtech.modules.order.entity.vo.PolicyInsuranceReportResVo">
  393. <result property="insCompany" column="insCompany" jdbcType="VARCHAR"/>
  394. <result property="agreementName" column="agreementName" jdbcType="VARCHAR"/>
  395. <result property="policyNo" column="policyNo" jdbcType="VARCHAR"/>
  396. <result property="quoteDate" column="quoteDate" jdbcType="VARCHAR"/>
  397. <result property="policyStartDate" column="policyStartDate" jdbcType="VARCHAR"/>
  398. <result property="riskName" column="riskName" jdbcType="VARCHAR"/>
  399. <result property="sumPremium" column="sumPremium" jdbcType="DECIMAL"/>
  400. <result property="taxPremium" column="taxPremium" jdbcType="DECIMAL"/>
  401. <result property="taxLaterPremium" column="taxLaterPremium" jdbcType="DECIMAL"/>
  402. <result property="insuranceSubAmount" column="insuranceSubAmount" jdbcType="VARCHAR"/>
  403. <result property="licenseNo" column="licenseNo" jdbcType="VARCHAR"/>
  404. <result property="vehicleUse" column="vehicleUse" jdbcType="VARCHAR"/>
  405. <result property="powerType" column="powerType" jdbcType="VARCHAR"/>
  406. <result property="ciModelClass" column="ciModelClass" jdbcType="VARCHAR"/>
  407. <result property="limitLoad" column="limitLoad" jdbcType="VARCHAR"/>
  408. <result property="appliName" column="appliName" jdbcType="VARCHAR"/>
  409. <result property="insureName" column="insureName" jdbcType="VARCHAR"/>
  410. <result property="deptName" column="deptName" jdbcType="VARCHAR"/>
  411. <result property="userName" column="username" jdbcType="VARCHAR"/>
  412. </resultMap>
  413. <select id="getPolicyInsuranceReport" resultMap="PolicyInsuranceReportMap">
  414. /*交强数据*/
  415. SELECT a.`inscompany` AS insCompany,
  416. (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
  417. a.`jqpolicyno` AS policyNo,
  418. <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
  419. a.pay_date AS quoteDate,
  420. </if>
  421. <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
  422. a.inside_pay_time AS quoteDate,
  423. </if>
  424. a.`jq_start_date` AS policyStartDate,
  425. '交强险' AS riskName,
  426. a.`jqpremium` AS sumPremium,
  427. a.`taxamount` AS taxPremium,
  428. getCarShipLateFee(a.`id`) AS taxLaterPremium,
  429. '交强险 : 200000.00,' AS insuranceSubAmount,
  430. b.`licenseno` AS licenseNo,
  431. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.vehicleUse'),'"',''),'3') AS vehicleUse,
  432. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.powertype'),'"',''),'2') AS powerType,
  433. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.cimodelclass'),'"',''),'4') AS ciModelClass,
  434. REPLACE(JSON_EXTRACT(b.carinfo, '$.limitLoad'),'"','') AS limitLoad,
  435. REPLACE(JSON_EXTRACT(applyinfo, '$.name'),'"','') AS appliName,
  436. REPLACE(JSON_EXTRACT(insureinfo, '$.name'),'"','') AS insureName,
  437. b.`deptname` AS deptName,
  438. b.`username` AS userName
  439. FROM ins_area_company a,ins_orders b WHERE a.`jqpolicyno` IS NOT NULL AND a.`jqpolicyno`!='' AND a.`agreement_id` IS NOT NULL
  440. AND a.`orderno`=b.`orderno`
  441. <if test="policyReqVo.deptId != null and policyReqVo.deptId != ''">
  442. and b.deptid = #{policyReqVo.deptId}
  443. </if>
  444. <if test="policyReqVo.userId != null and policyReqVo.userId != ''">
  445. and b.userid = #{policyReqVo.userId}
  446. </if>
  447. <if test="policyReqVo.userName != null and policyReqVo.userName != ''">
  448. and b.username = #{policyReqVo.userName}
  449. </if>
  450. <if test="policyReqVo.appliName != null and policyReqVo.appliName != ''">
  451. and REPLACE(JSON_EXTRACT(applyinfo, '$.name'),'"','') = #{policyReqVo.appliName}
  452. </if>
  453. <if test="policyReqVo.insureName != null and policyReqVo.insureName != ''">
  454. and REPLACE(JSON_EXTRACT(insureinfo, '$.name'),'"','') = #{policyReqVo.insureName}
  455. </if>
  456. <if test="policyReqVo.productId != null and policyReqVo.productId != ''">
  457. and b.productid = #{policyReqVo.productId}
  458. </if>
  459. <if test="policyReqVo.insCompany != null and policyReqVo.insCompany != ''">
  460. and a.company_id = #{policyReqVo.insCompany}
  461. </if>
  462. <if test="policyReqVo.operatorId != null and policyReqVo.operatorId != ''">
  463. and a.operatorid = #{policyReqVo.operatorId}
  464. </if>
  465. <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
  466. <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
  467. and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
  468. </if>
  469. <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
  470. and a.inside_pay_time between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
  471. </if>
  472. </if>
  473. <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
  474. and a.jq_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
  475. </if>
  476. UNION ALL
  477. /*##商业数据*/
  478. SELECT a.`inscompany` AS insCompany,
  479. (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
  480. a.`sypolicyno` AS policyNo,
  481. <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
  482. a.pay_date AS quoteDate,
  483. </if>
  484. <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
  485. a.inside_pay_time AS quoteDate,
  486. </if>
  487. a.`sy_start_date` AS policyStartDate,
  488. '商业险' AS riskName,
  489. a.`sypremium` AS sumPremium,
  490. '' AS taxPremium,
  491. '' AS taxLaterPremium,
  492. getSyAmount(a.`orderno`) AS insuranceSubAmount,
  493. b.`licenseno` AS licenseNo,
  494. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.vehicleUse'),'"',''),'3') AS vehicleUse,
  495. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.powertype'),'"',''),'2') AS powerType,
  496. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.cimodelclass'),'"',''),'4') AS ciModelClass,
  497. REPLACE(JSON_EXTRACT(b.carinfo, '$.limitLoad'),'"','') AS limitLoad,
  498. REPLACE(JSON_EXTRACT(applyinfo, '$.name'),'"','') AS appliName,
  499. REPLACE(JSON_EXTRACT(insureinfo, '$.name'),'"','') AS insureName,
  500. b.`deptname` AS deptName,
  501. b.`username` AS userName
  502. FROM ins_area_company a,ins_orders b WHERE a.`sypolicyno` IS NOT NULL AND a.`syapplyno`!='' AND a.`agreement_id` IS NOT NULL
  503. AND a.`orderno`=b.`orderno`
  504. <if test="policyReqVo.deptId != null and policyReqVo.deptId != ''">
  505. and b.deptid = #{policyReqVo.deptId}
  506. </if>
  507. <if test="policyReqVo.userId != null and policyReqVo.userId != ''">
  508. and b.userid = #{policyReqVo.userId}
  509. </if>
  510. <if test="policyReqVo.userName != null and policyReqVo.userName != ''">
  511. and b.username = #{policyReqVo.userName}
  512. </if>
  513. <if test="policyReqVo.appliName != null and policyReqVo.appliName != ''">
  514. and REPLACE(JSON_EXTRACT(applyinfo, '$.name'),'"','') = #{policyReqVo.appliName}
  515. </if>
  516. <if test="policyReqVo.insureName != null and policyReqVo.insureName != ''">
  517. and REPLACE(JSON_EXTRACT(insureinfo, '$.name'),'"','') = #{policyReqVo.insureName}
  518. </if>
  519. <if test="policyReqVo.productId != null and policyReqVo.productId != ''">
  520. and b.productid = #{policyReqVo.productId}
  521. </if>
  522. <if test="policyReqVo.insCompany != null and policyReqVo.insCompany != ''">
  523. and a.company_id = #{policyReqVo.insCompany}
  524. </if>
  525. <if test="policyReqVo.operatorId != null and policyReqVo.operatorId != ''">
  526. and a.operatorid = #{policyReqVo.operatorId}
  527. </if>
  528. <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
  529. <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
  530. and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
  531. </if>
  532. <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
  533. and a.inside_pay_time between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
  534. </if>
  535. </if>
  536. <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
  537. and a.sy_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
  538. </if>
  539. </select>
  540. <select id="getPolicyInsuranceReportCount" resultType="Long">
  541. select
  542. count(1)
  543. from (
  544. /*交强数据*/
  545. SELECT a.`inscompany` AS insCompany,
  546. (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
  547. a.`jqpolicyno` AS policyNo,
  548. <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
  549. a.pay_date AS quoteDate,
  550. </if>
  551. <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
  552. a.inside_pay_time AS quoteDate,
  553. </if>
  554. a.`jq_start_date` AS policyStartDate,
  555. '交强险' AS riskName,
  556. a.`jqpremium` AS sumPremium,
  557. a.`taxamount` AS taxPremium,
  558. getCarShipLateFee(a.`id`) AS taxLaterPremium,
  559. '交强险 : 200000.00,' AS insuranceSubAmount,
  560. b.`licenseno` AS licenseNo,
  561. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.vehicleUse'),'"',''),'3') AS vehicleUse,
  562. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.powertype'),'"',''),'2') AS powerType,
  563. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.cimodelclass'),'"',''),'4') AS ciModelClass,
  564. REPLACE(JSON_EXTRACT(b.carinfo, '$.limitLoad'),'"','') AS limitLoad,
  565. REPLACE(JSON_EXTRACT(applyinfo, '$.name'),'"','') AS appliName,
  566. REPLACE(JSON_EXTRACT(insureinfo, '$.name'),'"','') AS insureName,
  567. b.`deptname` AS deptName,
  568. b.`username` AS userName
  569. FROM ins_area_company a,ins_orders b WHERE a.`jqpolicyno` IS NOT NULL AND a.`jqpolicyno`!='' AND a.`agreement_id` IS NOT NULL
  570. AND a.`orderno`=b.`orderno`
  571. <if test="policyReqVo.deptId != null and policyReqVo.deptId != ''">
  572. and b.deptid = #{policyReqVo.deptId}
  573. </if>
  574. <if test="policyReqVo.userId != null and policyReqVo.userId != ''">
  575. and b.userid = #{policyReqVo.userId}
  576. </if>
  577. <if test="policyReqVo.userName != null and policyReqVo.userName != ''">
  578. and b.username = #{policyReqVo.userName}
  579. </if>
  580. <if test="policyReqVo.appliName != null and policyReqVo.appliName != ''">
  581. and REPLACE(JSON_EXTRACT(applyinfo, '$.name'),'"','') = #{policyReqVo.appliName}
  582. </if>
  583. <if test="policyReqVo.insureName != null and policyReqVo.insureName != ''">
  584. and REPLACE(JSON_EXTRACT(insureinfo, '$.name'),'"','') = #{policyReqVo.insureName}
  585. </if>
  586. <if test="policyReqVo.productId != null and policyReqVo.productId != ''">
  587. and b.productid = #{policyReqVo.productId}
  588. </if>
  589. <if test="policyReqVo.insCompany != null and policyReqVo.insCompany != ''">
  590. and a.company_id = #{policyReqVo.insCompany}
  591. </if>
  592. <if test="policyReqVo.operatorId != null and policyReqVo.operatorId != ''">
  593. and a.operatorid = #{policyReqVo.operatorId}
  594. </if>
  595. <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
  596. <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
  597. and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
  598. </if>
  599. <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
  600. and a.inside_pay_time between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
  601. </if>
  602. </if>
  603. <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
  604. and a.jq_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
  605. </if>
  606. UNION ALL
  607. /*##商业数据*/
  608. SELECT a.`inscompany` AS insCompany,
  609. (SELECT agreement_name FROM ptl_agreement t WHERE t.`id`= a.`agreement_id`) AS agreementName,
  610. a.`sypolicyno` AS policyNo,
  611. <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
  612. a.pay_date AS quoteDate,
  613. </if>
  614. <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
  615. a.inside_pay_time AS quoteDate,
  616. </if>
  617. a.`sy_start_date` AS policyStartDate,
  618. '商业险' AS riskName,
  619. a.`sypremium` AS sumPremium,
  620. '' AS taxPremium,
  621. '' AS taxLaterPremium,
  622. getSyAmount(a.`orderno`) AS insuranceSubAmount,
  623. b.`licenseno` AS licenseNo,
  624. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.vehicleUse'),'"',''),'3') AS vehicleUse,
  625. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.powertype'),'"',''),'2') AS powerType,
  626. getCodeName(REPLACE(JSON_EXTRACT(b.carinfo, '$.cimodelclass'),'"',''),'4') AS ciModelClass,
  627. REPLACE(JSON_EXTRACT(b.carinfo, '$.limitLoad'),'"','') AS limitLoad,
  628. REPLACE(JSON_EXTRACT(applyinfo, '$.name'),'"','') AS appliName,
  629. REPLACE(JSON_EXTRACT(insureinfo, '$.name'),'"','') AS insureName,
  630. b.`deptname` AS deptName,
  631. b.`username` AS userName
  632. FROM ins_area_company a,ins_orders b WHERE a.`sypolicyno` IS NOT NULL AND a.`syapplyno`!='' AND a.`agreement_id` IS NOT NULL
  633. AND a.`orderno`=b.`orderno`
  634. <if test="policyReqVo.deptId != null and policyReqVo.deptId != ''">
  635. and b.deptid = #{policyReqVo.deptId}
  636. </if>
  637. <if test="policyReqVo.userId != null and policyReqVo.userId != ''">
  638. and b.userid = #{policyReqVo.userId}
  639. </if>
  640. <if test="policyReqVo.userName != null and policyReqVo.userName != ''">
  641. and b.username = #{policyReqVo.userName}
  642. </if>
  643. <if test="policyReqVo.appliName != null and policyReqVo.appliName != ''">
  644. and REPLACE(JSON_EXTRACT(applyinfo, '$.name'),'"','') = #{policyReqVo.appliName}
  645. </if>
  646. <if test="policyReqVo.insureName != null and policyReqVo.insureName != ''">
  647. and REPLACE(JSON_EXTRACT(insureinfo, '$.name'),'"','') = #{policyReqVo.insureName}
  648. </if>
  649. <if test="policyReqVo.productId != null and policyReqVo.productId != ''">
  650. and b.productid = #{policyReqVo.productId}
  651. </if>
  652. <if test="policyReqVo.insCompany != null and policyReqVo.insCompany != ''">
  653. and a.company_id = #{policyReqVo.insCompany}
  654. </if>
  655. <if test="policyReqVo.operatorId != null and policyReqVo.operatorId != ''">
  656. and a.operatorid = #{policyReqVo.operatorId}
  657. </if>
  658. <if test="policyReqVo.quoteStartDate != null and policyReqVo.quoteEndDate != null">
  659. <if test="policyReqVo.queryFlag=='queryPayDate'.toString()">
  660. and a.pay_date between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
  661. </if>
  662. <if test="policyReqVo.queryFlag=='queryPayTime'.toString()">
  663. and a.inside_pay_time between #{policyReqVo.quoteStartDate} AND #{policyReqVo.quoteEndDate}
  664. </if>
  665. </if>
  666. <if test="policyReqVo.policyStartDate != null and policyReqVo.policyEndDate != null">
  667. and a.sy_start_date between #{policyReqVo.policyStartDate} AND #{policyReqVo.policyEndDate}
  668. </if>
  669. ) as s
  670. </select>
  671. <update id="updateStatus">
  672. update ins_orders set orderstatus = #{status} where orderno = #{orderno}
  673. </update>
  674. <select id="queryPageHospitalityOrder" resultMap="BaseResultMap">
  675. select
  676. io.*
  677. from
  678. ins_orders io
  679. <!--如果存在 公司查询则进行连表 -->
  680. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  681. left JOIN
  682. ins_area_company iac on iac.orderno = io.orderno
  683. </if>
  684. <where>
  685. <if test="orderQueryVo.orderNo != null and orderQueryVo.orderNo != ''">
  686. and io.orderno = #{orderQueryVo.orderNo}
  687. </if>
  688. <if test="orderQueryVo.deptId != null and orderQueryVo.deptId != '' ">
  689. and io.deptid like "${orderQueryVo.deptId}%"
  690. </if>
  691. <if test="orderQueryVo.orderStatus != null and orderQueryVo.orderStatus != ''">
  692. and io.orderstatus = #{orderQueryVo.orderStatus}
  693. </if>
  694. <if test="orderQueryVo.frameNo != null and orderQueryVo.frameNo != ''">
  695. and io.frameno = #{orderQueryVo.frameNo}
  696. </if>
  697. <if test="orderQueryVo.licenseNo != null and orderQueryVo.licenseNo != ''">
  698. and io.licenseno = #{orderQueryVo.licenseNo}
  699. </if>
  700. <if test="orderQueryVo.insuredName != null and orderQueryVo.insuredName != ''">
  701. and io.insuredname = #{orderQueryVo.insuredName}
  702. </if>
  703. <if test="orderQueryVo.startDate != null and orderQueryVo.endDate != null">
  704. and io.createtime between #{orderQueryVo.startDate} AND #{orderQueryVo.endDate}
  705. </if>
  706. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  707. and iac.company_id = #{orderQueryVo.companyId}
  708. </if>
  709. <if test="orderQueryVo.userId != null and orderQueryVo.userId != ''">
  710. and io.userid = #{orderQueryVo.userId}
  711. </if>
  712. </where>
  713. group by orderno
  714. order by io.createtime desc
  715. </select>
  716. <select id="queryPageHospitalityOrderCount" resultType="Long">
  717. select
  718. count(1)
  719. from (
  720. select
  721. io.orderno
  722. from
  723. ins_orders io
  724. <!--如果存在 公司查询则进行连表 -->
  725. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  726. left JOIN
  727. ins_area_company iac on iac.orderno = io.orderno
  728. </if>
  729. <where>
  730. <if test="orderQueryVo.orderNo != null and orderQueryVo.orderNo != ''">
  731. and io.orderno = #{orderQueryVo.orderNo}
  732. </if>
  733. <if test="orderQueryVo.deptId != null and orderQueryVo.deptId != ''">
  734. and io.deptid like "${orderQueryVo.deptId}%"
  735. </if>
  736. <if test="orderQueryVo.orderStatus != null and orderQueryVo.orderStatus != ''">
  737. and io.orderstatus = #{orderQueryVo.orderStatus}
  738. </if>
  739. <if test="orderQueryVo.frameNo != null and orderQueryVo.frameNo != ''">
  740. and io.frameno = #{orderQueryVo.frameNo}
  741. </if>
  742. <if test="orderQueryVo.licenseNo != null and orderQueryVo.licenseNo != ''">
  743. and io.licenseno = #{orderQueryVo.licenseNo}
  744. </if>
  745. <if test="orderQueryVo.insuredName != null and orderQueryVo.insuredName != ''">
  746. and io.insuredname = #{orderQueryVo.insuredName}
  747. </if>
  748. <if test="orderQueryVo.startDate != null and orderQueryVo.endDate != null">
  749. and io.createtime between #{orderQueryVo.startDate} AND #{orderQueryVo.endDate}
  750. </if>
  751. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  752. and iac.company_id = #{orderQueryVo.companyId}
  753. </if>
  754. <if test="orderQueryVo.userId != null and orderQueryVo.userId != ''">
  755. and io.userid = #{orderQueryVo.userId}
  756. </if>
  757. </where>
  758. group by io.orderno
  759. ) as s
  760. </select>
  761. <select id="queryPageOrderByLinkType" resultMap="BaseResultMap">
  762. select
  763. io.orderno as orderno,
  764. io.quoteno as quoteno,
  765. iac.orderstatus as orderstatus,
  766. io.carinfo as carinfo,
  767. io.userid as userid,
  768. io.username as username,
  769. io.deptid as deptid,
  770. io.deptname as deptname,
  771. io.ownerinfo as ownerinfo,
  772. io.applyinfo as applyinfo,
  773. io.insureinfo as insureinfo,
  774. io.agreeid as agreeid,
  775. io.productid as productid,
  776. io.product as product,
  777. io.createtime as createtime,
  778. io.frameno as frameno,
  779. io.licenseno as licenseno,
  780. io.insuredname as insuredname,
  781. io.jqstartdate as jqstartdate,
  782. io.jqenddate as jqenddate,
  783. io.systartdate as systartdate,
  784. io.syenddate as syenddate,
  785. io.risk as risk,
  786. io.king as king,
  787. io.vehicle_and_vessel_tax as vehicleAndVesselTax,
  788. iac.id as subOrderId,
  789. iac.id as company_id,
  790. iac.inscompany as ins_company
  791. from
  792. ins_area_company iac
  793. left JOIN
  794. ins_orders io on iac.orderno = io.orderno
  795. <where>
  796. <if test="agentUserIds != null and agentUserIds.size>0" >
  797. AND (
  798. (io.userid in
  799. <foreach collection="agentUserIds" item="item" open="(" separator="," close=")">
  800. #{item}
  801. </foreach>
  802. AND ( iac.new_operator_id IS NULL OR iac.new_operator_id = #{orderQueryVo.userId} )
  803. <if test="deptIds != null and deptIds.size>0" >
  804. AND (
  805. <foreach collection="deptIds" item="item" open="(" separator="OR" close=")">
  806. io.deptid like CONCAT('', #{item}, '%')
  807. </foreach>
  808. )
  809. </if>
  810. )
  811. <if test="flag" >
  812. OR iac.operator_id = #{orderQueryVo.userId}
  813. </if>
  814. )
  815. </if>
  816. <if test="agreeIds != null and agreeIds.size>0">
  817. AND (
  818. (iac.agreement_id in
  819. <foreach collection="agreeIds" item="item" open="(" separator="," close=")">
  820. #{item}
  821. </foreach>
  822. AND ( iac.new_operator_id IS NULL OR iac.new_operator_id = #{orderQueryVo.userId} ) )
  823. <if test="flag" >
  824. OR iac.operator_id = #{orderQueryVo.userId}
  825. </if>
  826. )
  827. </if>
  828. <if test="orderQueryVo.orderNo != null and orderQueryVo.orderNo != ''">
  829. and io.orderno = #{orderQueryVo.orderNo}
  830. </if>
  831. <if test="orderQueryVo.deptId != null and orderQueryVo.deptId != ''">
  832. and io.deptid like "${orderQueryVo.deptId}%"
  833. </if>
  834. <if test="orderQueryVo.orderStatus != null and orderQueryVo.orderStatus != ''">
  835. and iac.orderstatus = #{orderQueryVo.orderStatus}
  836. </if>
  837. <if test="orderQueryVo.frameNo != null and orderQueryVo.frameNo != ''">
  838. and io.frameno = #{orderQueryVo.frameNo}
  839. </if>
  840. <if test="orderQueryVo.licenseNo != null and orderQueryVo.licenseNo != ''">
  841. and io.licenseno = #{orderQueryVo.licenseNo}
  842. </if>
  843. <if test="orderQueryVo.insuredName != null and orderQueryVo.insuredName != ''">
  844. and io.insuredname = #{orderQueryVo.insuredName}
  845. </if>
  846. <if test="orderQueryVo.startDate != null and orderQueryVo.endDate != null">
  847. and io.createtime between #{orderQueryVo.startDate} AND #{orderQueryVo.endDate}
  848. </if>
  849. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  850. and iac.company_id = #{orderQueryVo.companyId}
  851. </if>
  852. <if test="orderQueryVo.operatorId != null and orderQueryVo.operatorId != ''">
  853. and io.userid = #{orderQueryVo.operatorId}
  854. </if>
  855. <if test="orderQueryVo.operatorName != null and orderQueryVo.operatorName != ''">
  856. and io.username = #{orderQueryVo.operatorName}
  857. </if>
  858. </where>
  859. order by io.createtime desc
  860. </select>
  861. <select id="queryPageOrderByLinkTypeCount" resultType="Long">
  862. select
  863. count(1)
  864. from (
  865. select
  866. (0)
  867. from
  868. ins_area_company iac
  869. left JOIN
  870. ins_orders io on iac.orderno = io.orderno
  871. <where>
  872. <if test="agentUserIds != null and agentUserIds.size>0" >
  873. AND (
  874. (io.userid in
  875. <foreach collection="agentUserIds" item="item" open="(" separator="," close=")">
  876. #{item}
  877. </foreach>
  878. AND ( iac.new_operator_id IS NULL OR iac.new_operator_id = #{orderQueryVo.userId} )
  879. <if test="deptIds != null and deptIds.size>0" >
  880. AND (
  881. <foreach collection="deptIds" item="item" open="(" separator="OR" close=")">
  882. io.deptid like CONCAT('', #{item}, '%')
  883. </foreach>
  884. )
  885. </if>
  886. )
  887. <if test="flag" >
  888. OR iac.operator_id = #{orderQueryVo.userId}
  889. </if>
  890. )
  891. </if>
  892. <if test="agreeIds != null and agreeIds.size>0">
  893. AND (
  894. (iac.agreement_id in
  895. <foreach collection="agreeIds" item="item" open="(" separator="," close=")">
  896. #{item}
  897. </foreach>
  898. AND ( iac.new_operator_id IS NULL OR iac.new_operator_id = #{orderQueryVo.userId} ) )
  899. <if test="flag" >
  900. OR iac.operator_id = #{orderQueryVo.userId}
  901. </if>
  902. )
  903. </if>
  904. <if test="orderQueryVo.orderNo != null and orderQueryVo.orderNo != ''">
  905. and io.orderno = #{orderQueryVo.orderNo}
  906. </if>
  907. <if test="orderQueryVo.deptId != null and orderQueryVo.deptId != ''">
  908. and io.deptid like "${orderQueryVo.deptId}%"
  909. </if>
  910. <if test="orderQueryVo.orderStatus != null and orderQueryVo.orderStatus != ''">
  911. and iac.orderstatus= #{orderQueryVo.orderStatus}
  912. </if>
  913. <if test="orderQueryVo.frameNo != null and orderQueryVo.frameNo != ''">
  914. and io.frameno = #{orderQueryVo.frameNo}
  915. </if>
  916. <if test="orderQueryVo.licenseNo != null and orderQueryVo.licenseNo != ''">
  917. and io.licenseno = #{orderQueryVo.licenseNo}
  918. </if>
  919. <if test="orderQueryVo.insuredName != null and orderQueryVo.insuredName != ''">
  920. and io.insuredname = #{orderQueryVo.insuredName}
  921. </if>
  922. <if test="orderQueryVo.startDate != null and orderQueryVo.endDate != null">
  923. and io.createtime between #{orderQueryVo.startDate} AND #{orderQueryVo.endDate}
  924. </if>
  925. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  926. and iac.company_id = #{orderQueryVo.companyId}
  927. </if>
  928. <if test="orderQueryVo.operatorId != null and orderQueryVo.operatorId != ''">
  929. and io.userid = #{orderQueryVo.operatorId}
  930. </if>
  931. <if test="orderQueryVo.operatorName != null and orderQueryVo.operatorName != ''">
  932. and io.username = #{orderQueryVo.operatorName}
  933. </if>
  934. </where>
  935. ) as s
  936. </select>
  937. <select id="queryPageSubOrders" resultMap="BaseResultMap">
  938. select
  939. io.*,
  940. iac.id as subOrderId
  941. from
  942. ins_area_company iac
  943. left JOIN
  944. ins_orders io on iac.orderno = io.orderno
  945. <where>
  946. <if test="orderQueryVo.userId != null and orderQueryVo.userId != ''">
  947. and io.userid = #{orderQueryVo.userid}
  948. </if>
  949. <if test="orderQueryVo.orderNo != null and orderQueryVo.orderNo != ''">
  950. and io.orderno = #{orderQueryVo.orderNo}
  951. </if>
  952. <if test="orderQueryVo.quoteNo != null and orderQueryVo.quoteNo != ''">
  953. and io.quoteno = #{orderQueryVo.quoteNo}
  954. </if>
  955. <if test="orderQueryVo.deptId != null and orderQueryVo.deptId != ''">
  956. and io.deptid like "${orderQueryVo.deptId}%"
  957. </if>
  958. <if test="orderQueryVo.orderStatus != null and orderQueryVo.orderStatus != ''">
  959. and iac.orderstatus = #{orderQueryVo.orderStatus}
  960. </if>
  961. <if test="orderQueryVo.frameNo != null and orderQueryVo.frameNo != ''">
  962. and io.frameno = #{orderQueryVo.frameNo}
  963. </if>
  964. <if test="orderQueryVo.licenseNo != null and orderQueryVo.licenseNo != ''">
  965. and io.licenseno = #{orderQueryVo.licenseNo}
  966. </if>
  967. <if test="orderQueryVo.engineNo != null and orderQueryVo.engineNo != ''">
  968. and JSON_EXTRACT( io.carinfo, '$.engineNo' ) = #{orderQueryVo.engineNo}
  969. </if>
  970. <if test="orderQueryVo.insuredName != null and orderQueryVo.insuredName != ''">
  971. and io.insuredname = #{orderQueryVo.insuredName}
  972. </if>
  973. <if test="orderQueryVo.startDate != null and orderQueryVo.endDate != null">
  974. and io.createtime between #{orderQueryVo.startDate} AND #{orderQueryVo.endDate}
  975. </if>
  976. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  977. and iac.company_id = #{orderQueryVo.companyId}
  978. </if>
  979. <if test="orderQueryVo.riskCode != null and orderQueryVo.riskCode != ''">
  980. and iac.product = #{orderQueryVo.riskCode}
  981. </if>
  982. <if test="orderQueryVo.auditId != null and orderQueryVo.auditId != ''">
  983. and IFNULL( io.agreeid, '' ) = #{orderQueryVo.auditId}
  984. </if>
  985. <if test="orderQueryVo.policyStartDate != null and orderQueryVo.policyEndDate != ''">
  986. and ((
  987. io.jqstartdate BETWEEN #{orderQueryVo.policyStartDate}
  988. AND #{orderQueryVo.policyEndDate}
  989. )
  990. OR ( io.systartdate BETWEEN #{orderQueryVo.policyStartDate} AND #{orderQueryVo.policyEndDate} )
  991. )
  992. </if>
  993. </where>
  994. group by iac.id
  995. order by io.createtime desc
  996. </select>
  997. <select id="queryPageSubOrdersCount" resultType="Long">
  998. select
  999. count(1)
  1000. from (
  1001. select
  1002. io.*
  1003. from
  1004. ins_area_company iac
  1005. left JOIN
  1006. ins_orders io on iac.orderno = io.orderno
  1007. <where>
  1008. <if test="orderQueryVo.userId != null and orderQueryVo.userId != ''">
  1009. and io.userid = #{orderQueryVo.userid}
  1010. </if>
  1011. <if test="orderQueryVo.orderNo != null and orderQueryVo.orderNo != ''">
  1012. and io.orderno = #{orderQueryVo.orderNo}
  1013. </if>
  1014. <if test="orderQueryVo.quoteNo != null and orderQueryVo.quoteNo != ''">
  1015. and io.quoteno = #{orderQueryVo.quoteNo}
  1016. </if>
  1017. <if test="orderQueryVo.deptId != null and orderQueryVo.deptId != ''">
  1018. and io.deptid like "${orderQueryVo.deptId}%"
  1019. </if>
  1020. <if test="orderQueryVo.orderStatus != null and orderQueryVo.orderStatus != ''">
  1021. and iac.orderstatus = #{orderQueryVo.orderStatus}
  1022. </if>
  1023. <if test="orderQueryVo.frameNo != null and orderQueryVo.frameNo != ''">
  1024. and io.frameno = #{orderQueryVo.frameNo}
  1025. </if>
  1026. <if test="orderQueryVo.licenseNo != null and orderQueryVo.licenseNo != ''">
  1027. and io.licenseno = #{orderQueryVo.licenseNo}
  1028. </if>
  1029. <if test="orderQueryVo.engineNo != null and orderQueryVo.engineNo != ''">
  1030. and JSON_EXTRACT( io.carinfo, '$.engineNo' ) = #{orderQueryVo.engineNo}
  1031. </if>
  1032. <if test="orderQueryVo.insuredName != null and orderQueryVo.insuredName != ''">
  1033. and io.insuredname = #{orderQueryVo.insuredName}
  1034. </if>
  1035. <if test="orderQueryVo.startDate != null and orderQueryVo.endDate != null">
  1036. and io.createtime between #{orderQueryVo.startDate} AND #{orderQueryVo.endDate}
  1037. </if>
  1038. <if test="orderQueryVo.companyId != null and orderQueryVo.companyId != ''">
  1039. and iac.company_id = #{orderQueryVo.companyId}
  1040. </if>
  1041. <if test="orderQueryVo.riskCode != null and orderQueryVo.riskCode != ''">
  1042. and iac.product = #{orderQueryVo.riskCode}
  1043. </if>
  1044. <if test="orderQueryVo.auditId != null and orderQueryVo.auditId != ''">
  1045. and IFNULL( io.agreeid, '' ) = #{orderQueryVo.auditId}
  1046. </if>
  1047. <if test="orderQueryVo.policyStartDate != null and orderQueryVo.policyEndDate != ''">
  1048. and ((
  1049. io.jqstartdate BETWEEN #{orderQueryVo.policyStartDate}
  1050. AND #{orderQueryVo.policyEndDate}
  1051. )
  1052. OR ( io.systartdate BETWEEN #{orderQueryVo.policyStartDate} AND #{orderQueryVo.policyEndDate} )
  1053. )
  1054. </if>
  1055. </where>
  1056. group by iac.id
  1057. ) as s
  1058. </select>
  1059. </mapper>