From c981d74612bf35c16365aba0db9b55be0ad81dac Mon Sep 17 00:00:00 2001 From: zhaoxiaohao <279049017@qq.com> Date: Wed, 04 Nov 2020 16:48:45 +0800 Subject: [PATCH] 将充值记录的数据权限放开 --- kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml | 225 +++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 167 insertions(+), 58 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 81c0769..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 @@ -10,66 +10,141 @@ <!--sql查询片段--> <sql id="where"> <where> - <!--查询条件自行添加--> - is_del=0 - <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> - <include refid="com.kidgrow.oprationcenter.mapper.SysProductMapper.Role_Organization"></include> + <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 + <include refid="where_condition"></include> + <include refid="Role_Organization"></include> + </where> + </sql> <!--定义根据-ProductOrder当作查询条件返回对象--> <select id="findByObject" resultType="com.kidgrow.oprationcenter.model.ProductOrder"> select @@ -85,11 +160,45 @@ select <include refid="Column_List"/> from product_order - <include refid="where"/> + <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