From b7265cdd6f3e1fbb0d428c27e5b5e29e34d56953 Mon Sep 17 00:00:00 2001 From: zhaoxiaohao <279049017@qq.com> Date: Tue, 17 Nov 2020 17:55:21 +0800 Subject: [PATCH] Merge branch 'dev' --- kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml | 238 ++++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 178 insertions(+), 60 deletions(-) diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml index 6035955..cffb8ad 100644 --- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml +++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml @@ -4,83 +4,201 @@ <mapper namespace="com.kidgrow.oprationcenter.mapper.ProductOrderMapper"> <!--定义查询列--> <sql id="Column_List"> - * + DISTINCT * </sql> <!--sql查询片段--> <sql id="where"> <where> + <include refid="where_condition"></include> + </where> + </sql> + <sql id="where_condition"> + <if test="p.id != null and p.id !=''"> + and id = #{p.id} + </if> + <if test="p.hospitalId != null and p.hospitalId !=''"> + and hospital_id = #{p.hospitalId} + </if> + <if test="p.hospitalName != null and p.hospitalName !=''"> + and hospital_name like concat('%',#{p.hospitalName},'%') + </if> + <if test="p.departmentId != null and p.departmentId !=''"> + and department_id = #{p.departmentId} + </if> + <if test="p.departmentName != null and p.departmentName !=''"> + and department_name = #{p.departmentName} + </if> + <if test="p.contractNo != null and p.contractNo !=''"> + and contract_no = #{p.contractNo} + </if> + <if test="p.contractTitle != null and p.contractTitle !=''"> + and contract_title = #{p.contractTitle} + </if> + <if test="p.contractBeginTime != null and p.contractBeginTime !=''"> + and contract_begin_time = #{p.contractBeginTime} + </if> + <if test="p.contractEndTime != null and p.contractEndTime !=''"> + and contract_end_time = #{p.contractEndTime} + </if> + <if test="p.contractTime != null and p.contractTime !=''"> + and contract_time = #{p.contractTime} + </if> + <if test="p.isDel != null and p.isDel !=''"> + and is_del = #{p.isDel} + </if> + <if test="p.enabled != null and p.enabled !=''"> + and enabled = #{p.enabled} + </if> + <if test="p.updateTime != null and p.updateTime !=''"> + and update_time = #{p.updateTime} + </if> + <if test="p.createUserId != null and p.createUserId !=''"> + and create_user_id = #{p.createUserId} + </if> + <if test="p.createUserName != null and p.createUserName !=''"> + and create_user_name = #{p.createUserName} + </if> + <if test="p.updateUserId != null and p.updateUserId !=''"> + and update_user_id = #{p.updateUserId} + </if> + <if test="p.updateUserName != null and p.updateUserName !=''"> + and update_user_name = #{p.updateUserName} + </if> + <if test="p.createTime != null and p.createTime !=''"> + and create_time = #{p.createTime} + </if> + </sql> + <!--定义数据权限的查询--> + <sql id="Role_Organization"> + <if test="p.roleOrg != null and p.roleOrg.size>0"> + <foreach item="item" collection="p.roleOrg" index=""> + <foreach item="itemto" collection="item" index="inx"> + <choose> + <when test="inx == 1"> + <if test="itemto.flag"> + + </if> + <if test="!itemto.flag"> + or ( is_del = 0 and enabled=1) <include refid="where_condition"></include> + </if> + </when> + <when test="inx==2"> + <if test="itemto.flag"> + AND + <foreach item="itemtoto" collection="itemto.object" separator="or" open="(" close=")" + index=""> + create_user_org_code = #{itemtoto.orgCode} + </foreach> + </if> + <if test="!itemto.flag"> + or ( + <foreach item="itemtoto" collection="itemto.object" separator="or" open="(" close=")" + index=""> + create_user_org_code = #{itemtoto.orgCode} + </foreach> + and is_del = 0 and enabled=1 <include refid="where_condition"></include> + ) + </if> + </when> + <when test="inx == 3"> + <if test="itemto.flag"> + AND + create_user_org_code = #{itemto.object} + </if> + <if test="!itemto.flag"> + or (create_user_org_code = #{itemto.object} and is_del = 0 and enabled=1) <include refid="where_condition"></include> + </if> + </when> + <when test="inx == 4"> + <if test="itemto.flag"> + AND + create_user_org_code like '${itemto.object}%' + </if> + <if test="!itemto.flag"> + or (create_user_org_code like '${itemto.object}%' and is_del = 0 and enabled=1) <include refid="where_condition"></include> + </if> + </when> + <when test="inx == 5"> + <if test="itemto.flag"> + AND + create_user_id = #{itemto.object} + </if> + <if test="!itemto.flag"> + or (create_user_id = #{itemto.object} and is_del = 0 and enabled=1) <include refid="where_condition"></include> + </if> + </when> + <otherwise> + AND id is null + </otherwise> + </choose> + </foreach> + </foreach> + </if> + </sql> + <!--sql查询片段--> + <sql id="where_role"> + <where> <!--查询条件自行添加--> is_del=0 - <if test="id != null and id !=''"> - and id = #{id} - </if> - <if test="hospitalId != null and hospitalId !=''"> - and hospital_id = #{hospitalId} - </if> - <if test="hospitalName != null and hospitalName !=''"> - and hospital_name = #{hospitalName} - </if> - <if test="departmentId != null and departmentId !=''"> - and department_id = #{departmentId} - </if> - <if test="departmentName != null and departmentName !=''"> - and department_name = #{departmentName} - </if> - <if test="contractNo != null and contractNo !=''"> - and contract_no = #{contractNo} - </if> - <if test="contractTitle != null and contractTitle !=''"> - and contract_title = #{contractTitle} - </if> - <if test="contractBeginTime != null and contractBeginTime !=''"> - and contract_begin_time = #{contractBeginTime} - </if> - <if test="contractEndTime != null and contractEndTime !=''"> - and contract_end_time = #{contractEndTime} - </if> - <if test="contractTime != null and contractTime !=''"> - and contract_time = #{contractTime} - </if> - <if test="isDel != null and isDel !=''"> - and is_del = #{isDel} - </if> - <if test="enabled != null and enabled !=''"> - and enabled = #{enabled} - </if> - <if test="updateTime != null and updateTime !=''"> - and update_time = #{updateTime} - </if> - <if test="createUserId != null and createUserId !=''"> - and create_user_id = #{createUserId} - </if> - <if test="createUserName != null and createUserName !=''"> - and create_user_name = #{createUserName} - </if> - <if test="updateUserId != null and updateUserId !=''"> - and update_user_id = #{updateUserId} - </if> - <if test="updateUserName != null and updateUserName !=''"> - and update_user_name = #{updateUserName} - </if> - <if test="createTime != null and createTime !=''"> - and create_time = #{createTime} - </if> - </where> + <include refid="where_condition"></include> + <include refid="Role_Organization"></include> + </where> </sql> - <!--定义根据-ProductOrder当作查询条件返回对象--> - <select id="findByObject" resultType="com.kidgrow.oprationcenter.model.ProductOrder"> - select <include refid="Column_List"/> + <select id="findByObject" resultType="com.kidgrow.oprationcenter.model.ProductOrder"> + select + <include refid="Column_List"/> from product_order <include refid="where"/> order by id desc + limit 1 </select> <!--定义根据-ProductOrder当作查询条件返回对象集合--> <select id="findList" resultType="com.kidgrow.oprationcenter.model.ProductOrder"> - select <include refid="Column_List"/> + select + <include refid="Column_List"/> from product_order + <include refid="where_role"/> order by id desc </select> + <update id="delProductDetail"> + UPDATE product_order_record SET is_del=1,update_time=now() WHERE order_id= #{orderId}; + UPDATE product_order_detail SET is_del=1,update_time=now() WHERE order_id= #{orderId}; + </update> + <select id="getStatus" parameterType="com.kidgrow.oprationcenter.model.ProductOrder" resultType="int"> + SELECT + SUM(total) + FROM + ( + SELECT + count(*) total + FROM + `product_order` order_order + LEFT JOIN product_order_record record ON order_order.id = record.order_id + WHERE + order_order.hospital_id = #{hospitalId} + AND order_order.department_id = #{departmentId} + AND record.pro_type = 1 + AND order_order.enabled = 1 + AND order_order.is_del = 0 + AND record.enabled = 1 + AND record.is_del = 0 + UNION ALL + SELECT + count(*) total + FROM + `product_order` order_order + LEFT JOIN product_order_record record ON order_order.id = record.order_id + WHERE + order_order.hospital_id = #{hospitalId} + AND record.pro_type = 1 + AND record.is_share = 1 + AND order_order.enabled = 1 + AND order_order.is_del = 0 + AND record.enabled = 1 + AND record.is_del = 0 + ) cc + </select> </mapper> \ No newline at end of file -- Gitblit v1.8.0