<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.boco.nbd.wios.flow.mapper.def.NodeMapper"> <!--获取节点配置的用户组 --> <select id="getNodeGroupsInfo" parameterType="Long" resultType="com.boco.nbd.wios.flow.entity.bo.NodeGroupBO"> SELECT a.flow_id, a.flow_code, b.node_id, b.node_code, b.node_name, d.group_id, d.group_name FROM tv3_lug_groups d left join tv3_lug_node_group c on c.group_id = d.group_id left join tv3_lug_nodes b on b.node_id = c.node_id <if test="nodeId !=null"> AND b.node_id = #{nodeId} </if> left join tv3_lug_flows a on a.flow_id = b.flow_id WHERE 1 = 1 <if test="nodeId !=null"> AND b.node_id = #{nodeId} </if> ORDER BY b.node_id </select> <!-- 解除节点和组的关系 --> <delete id="deleteGroupNode"> delete from tv3_lug_node_group where node_id = #{nodeId} </delete> <!-- 绑定节点和组 --> <select id="bindGroupNode" resultType="Integer"> insert into tv3_lug_node_group (node_id, group_id) values (#{nodeId}, #{groupId}) </select> <select id="selectByFlowIdAndNodeCode" resultType="com.boco.nbd.wios.flow.entity.po.FlowNodePO"> select a.flow_id, a.category_name, a.flow_code, a.flow_name, b.node_id, b.node_code, b.node_name from tv3_lug_flows a, tv3_lug_nodes b where a.flow_id = b.flow_id <if test="flowCode !=null"> AND b.flow_code = #{flowCode} </if> <if test="nodeCode !=null"> and node_code = #{nodeCode} </if> </select> <!-- 据组ID删除成员 --> <delete id="deleteGroupUser"> delete from tv3_lug_group_user where group_id = #{groupId} </delete> <insert id="bindGroupUser"> insert into tv3_lug_group_user (group_id, user_id) values (#{groupId}, #{userId}) </insert> <select id="getRoles"> select a.id role_id, a.name role_name from wb_role a where a.status = 1 order by a.id </select> <!--主机厂加载CAMS用户 select b.type vendor_type, a.id user_id,b.id vendor_id,b.name vendor_name from wb_account a inner join t_oem b on (a.parent_id=b.wb_account_id or a.id=b.wb_account_id) inner join t_oem_contract c on b.id = c.oem_id and c.status = 2 union all --> <select id="loadUsers" resultType="com.boco.nbd.wios.flow.entity.po.UserPO"> select a.*,b.name user_name,b.phone, d.id role_id, d.name role_name from ( select 0 vendor_type,a.id user_id,-1 vendor_id,'CAMS' vendor_name from wb_account a where a.parent_id is null union all select 0 vendor_type,a.id user_id,-1 vendor_id,'CAMS' vendor_name from wb_account a inner join t_cams_account b on a.id=b.account_id union all select 3 vendor_type,a.id user_id,c.id vendor_id,c.name vendor_id from wb_account a inner join t_supplier c on (c.account_id=a.id or c.account_id=a.parent_id)) a inner join wb_account b on a.user_id=b.id inner join wb_account_role c on c.account_id=b.id inner join wb_role d on c.role_id=d.id where b.status = 1 <if test="vendorId != null and vendorId!=0"> and (a.vendor_id=#{vendorId} or (a.vendor_id=-1 and exists(select 1 from t_oem where id=#{vendorId}))) </if> order by a.vendor_type </select> <!--主机厂加载CAMS用户 union all select b.type vendor_type,a.id user_id,b.id vendor_id,b.name vendor_name from wb_account a inner join t_oem b on (a.parent_id=b.wb_account_id or a.id=b.wb_account_id) inner join t_oem_contract c on b.id = c.oem_id and c.status = 2 --> <select id="getUserByGroup" parameterType="java.lang.Long" resultType="com.boco.nbd.wios.flow.entity.po.UserPO"> select a.*,b.name user_name,b.phone, d.id role_id, d.name role_name,e.group_id from ( select 0 vendor_type,a.id user_id,-1 vendor_id,'CAMS' vendor_name from wb_account a where a.parent_id is null union all select 0 vendor_type,a.id user_id,-1 vendor_id,'CAMS' vendor_name from wb_account a inner join t_cams_account b on a.id=b.account_id union all select 3 vendor_type,a.id user_id,c.id vendor_id,c.name vendor_id from wb_account a inner join t_supplier c on (c.account_id=a.id or c.account_id=a.parent_id)) a inner join wb_account b on a.user_id=b.id inner join wb_account_role c on c.account_id=b.id inner join wb_role d on c.role_id=d.id inner join tv3_lug_groups f on (f.vendor_id=a.vendor_id or (a.vendor_id =-1 and exists(select 1 from t_oem where id=f.vendor_id))) left join tv3_lug_group_user e on b.id = e.user_id and f.group_id=e.group_id where b.status = 1 <if test="groupId != null"> and f.group_id = #{groupId} </if> order by a.vendor_type </select> <select id="getSuperUserByGroup" parameterType="java.lang.Long" resultType="com.boco.nbd.wios.flow.entity.po.BaseUserPO"> select c.id, c.phone from wb_account c inner join tv3_lug_group_user d on c.id = d.user_id and d.group_id = #{groupId} where c.status = 1 </select> <select id="getSelectVendorInfo" resultType="com.boco.nbd.wios.flow.entity.po.VendorPO"> select distinct a.id vendor_id, a.name vendor_name from t_oem a inner join t_oem_contract b on a.id = b.oem_id and b.status = 2 where type = 1 and a.status = 1 union all select id vendor_id, name vendor_name from t_supplier </select> <select id="getFlowNodeUserInfo" parameterType="com.boco.nbd.wios.flow.entity.qo.FlowNodeUserQo" resultType="com.boco.nbd.wios.flow.entity.po.FlowNodeUserPO"> select a.flow_code, b.node_code, d.group_name, d.vendor_name, e.user_id, f.name user_name,f.phone from tv3_lug_flows a inner join tv3_lug_nodes b on a.flow_id = b.flow_id inner join tv3_lug_node_group c on b.node_id = c.node_id inner join tv3_lug_groups d on c.group_id = d.group_id inner join tv3_lug_group_user e on d.group_id = e.group_id inner join wb_account f on e.user_id = f.id where 1=1 and a.flow_code=#{flowCode} <if test="nodeCode != null"> and b.node_code=#{nodeCode} </if> <if test="vendorId != null"> and d.vendor_id=#{vendorId} </if> <if test="userName != null and userName != ''"> <bind name="userNameLike" value="'%' + userName + '%'"/> and f.name like #{userNameLike} </if> </select> <!-- 据组ID删除成员 --> <delete id="deleteConnectConfig"> delete from t_connect_order_config where group_id = #{groupId} and user_id = #{userId} </delete> <insert id="bindConnectConfig"> insert into t_connect_order_config (group_id, user_id, end_number) values (#{groupId}, #{userId}, #{endNumber}) </insert> <select id="getConnectConfig" resultType="com.boco.nbd.wios.flow.entity.bo.ConnectConfigBO"> select d.vendor_id, d.vendor_name, d.group_id, d.group_name, e.user_id, f.name user_name, g.end_number from tv3_lug_flows a inner join tv3_lug_nodes b on a.flow_id = b.flow_id inner join tv3_lug_node_group c on b.node_id = c.node_id inner join tv3_lug_groups d on c.group_id = d.group_id inner join tv3_lug_group_user e on d.group_id = e.group_id inner join wb_account f on e.user_id = f.id left join t_connect_order_config g on g.group_id = e.group_id and g.user_id = e.user_id where a.flow_code = #{flowCode} and b.node_code = #{nodeCode} <if test="vendorId != null"> and d.vendor_id = #{vendorId} </if> </select> </mapper>