WatchMedicationTaskMapper.xml 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  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.fs.watch.mapper.WatchMedicationTaskMapper">
  6. <resultMap type="WatchMedicationTask" id="WatchMedicationTaskResult">
  7. <result property="id" column="id" />
  8. <result property="userId" column="user_id" />
  9. <result property="packageOrderId" column="package_order_id" />
  10. <result property="packageId" column="package_id" />
  11. <result property="productId" column="product_id" />
  12. <result property="productName" column="product_name" />
  13. <result property="usageFrequencyUnit" column="usage_frequency_unit" />
  14. <result property="requiredNum" column="required_num" />
  15. <result property="actualNum" column="actual_num" />
  16. <result property="createTime" column="create_time" />
  17. <result property="updateTime" column="update_time" />
  18. <result property="status" column="status" />
  19. </resultMap>
  20. <sql id="selectWatchMedicationTaskVo">
  21. select id,user_id, package_order_id, package_id,product_id, product_name,usage_frequency_unit, required_num, actual_num, create_time, update_time,status from watch_medication_task
  22. </sql>
  23. <select id="selectWatchMedicationTaskList" parameterType="WatchMedicationTask" resultMap="WatchMedicationTaskResult">
  24. <include refid="selectWatchMedicationTaskVo"/>
  25. <where>
  26. <if test="packageOrderId != null "> and package_order_id = #{packageOrderId}</if>
  27. <if test="userId !=null">and user_id= #{userId}</if>
  28. <if test="packageId != null "> and package_id = #{packageId}</if>
  29. <if test="productId != null "> and product_id = #{productId}</if>
  30. <if test="productName != null and productName != ''"> and product_name like concat('%', #{productName}, '%')</if>
  31. <if test="usageFrequencyUnit != null "> and usage_frequency_unit = #{usageFrequencyUnit}</if>
  32. <if test="requiredNum != null "> and required_num = #{requiredNum}</if>
  33. <if test="actualNum != null "> and actual_num = #{actualNum}</if>
  34. <if test="status !=null">and status = #{status}</if>
  35. </where>
  36. </select>
  37. <select id="selectWatchMedicationTaskById" parameterType="Long" resultMap="WatchMedicationTaskResult">
  38. <include refid="selectWatchMedicationTaskVo"/>
  39. where id = #{id}
  40. </select>
  41. <select id="medicationTaskList" resultType="com.fs.watch.domain.vo.WatchUserAndMedicationVo">
  42. SELECT wmt.* ,wu.device_id FROM watch_medication_task wmt
  43. LEFT JOIN watch_user wu ON wu.user_id = wmt.user_id
  44. WHERE wu.device_id IS NOT NULL AND wu.device_id !='' AND wmt.`status` =0
  45. <if test="medicationTime == 1">
  46. AND wmt.usage_frequency_unit > 0
  47. </if>
  48. <if test="medicationTime == 2">
  49. AND wmt.usage_frequency_unit >=3
  50. </if>
  51. <if test="medicationTime == 3">
  52. AND wmt.usage_frequency_unit >=2
  53. </if>
  54. </select>
  55. <insert id="insertWatchMedicationTask" parameterType="WatchMedicationTask" useGeneratedKeys="true" keyProperty="id">
  56. insert into watch_medication_task
  57. <trim prefix="(" suffix=")" suffixOverrides=",">
  58. <if test="packageOrderId != null">package_order_id,</if>
  59. <if test="userId != null">user_id,</if>
  60. <if test="packageId != null">package_id,</if>
  61. <if test="productId != null">product_id,</if>
  62. <if test="productName != null">product_name,</if>
  63. <if test="usageFrequencyUnit != null">usage_frequency_unit,</if>
  64. <if test="requiredNum != null">required_num,</if>
  65. <if test="actualNum != null">actual_num,</if>
  66. <if test="createTime != null">create_time,</if>
  67. <if test="updateTime != null">update_time,</if>
  68. <if test="status != null">status,</if>
  69. </trim>
  70. <trim prefix="values (" suffix=")" suffixOverrides=",">
  71. <if test="packageOrderId != null">#{packageOrderId},</if>
  72. <if test="userId != null">#{userId},</if>
  73. <if test="packageId != null">#{packageId},</if>
  74. <if test="productId != null">#{productId},</if>
  75. <if test="productName != null">#{productName},</if>
  76. <if test="usageFrequencyUnit != null">#{usageFrequencyUnit},</if>
  77. <if test="requiredNum != null">#{requiredNum},</if>
  78. <if test="actualNum != null">#{actualNum},</if>
  79. <if test="createTime != null">#{createTime},</if>
  80. <if test="updateTime != null">#{updateTime},</if>
  81. <if test="status != null">#{status},</if>
  82. </trim>
  83. </insert>
  84. <insert id="insertList" parameterType="WatchMedicationTask">
  85. insert into watch_medication_task (package_order_id,user_id, package_id, product_id, product_name, usage_frequency_unit, required_num, actual_num,create_time,update_time,status)
  86. values
  87. <foreach collection="tasks" item="task" index="index" separator=",">
  88. ( #{task.packageOrderId}, #{task.userId},#{task.packageId}, #{task.productId}, #{task.productName}, #{task.usageFrequencyUnit}, #{task.requiredNum}, #{task.actualNum},#{task.updateTime},#{task.updateTime},#{task.status})
  89. </foreach>
  90. </insert>
  91. <update id="updateWatchMedicationTask" parameterType="WatchMedicationTask">
  92. update watch_medication_task
  93. <trim prefix="SET" suffixOverrides=",">
  94. <if test="packageOrderId != null">package_order_id = #{packageOrderId},</if>
  95. <if test="userId != null">user_id = #{userId},</if>
  96. <if test="packageId != null">package_id = #{packageId},</if>
  97. <if test="productId != null">product_id = #{productId},</if>
  98. <if test="productName != null">product_name = #{productName},</if>
  99. <if test="usageFrequencyUnit != null">usage_frequency_unit = #{usageFrequencyUnit},</if>
  100. <if test="requiredNum != null">required_num = #{requiredNum},</if>
  101. <if test="actualNum != null">actual_num = #{actualNum},</if>
  102. <if test="createTime != null">create_time = #{createTime},</if>
  103. <if test="updateTime != null">update_time = #{updateTime},</if>
  104. <if test="status != null">status = #{status},</if>
  105. </trim>
  106. where id = #{id}
  107. </update>
  108. <delete id="deleteWatchMedicationTaskById" parameterType="Long">
  109. delete from watch_medication_task where id = #{id}
  110. </delete>
  111. <delete id="deleteWatchMedicationTaskByIds" parameterType="String">
  112. delete from watch_medication_task where id in
  113. <foreach item="id" collection="array" open="(" separator="," close=")">
  114. #{id}
  115. </foreach>
  116. </delete>
  117. </mapper>