| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- <?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.mokamrp.privates.mapper.GroupMapper">
- <!-- 通用查询映射结果 -->
- <resultMap id="BaseResultMap" type="com.mokamrp.privates.mapper.pojo.Group">
- <id column="id" property="id"/>
- <result column="group_type" property="groupType"/>
- <result column="group_name" property="groupName"/>
- <result column="create_at" property="createAt"/>
- <result column="update_at" property="updateAt"/>
- </resultMap>
- <!-- 通用查询结果列 -->
- <sql id="Base_Column_List">
- id
- , group_type, group_name, create_at, update_at
- </sql>
- <select id="selectCorpAndWorkEmployeeList" resultType="map">
- SELECT
- C.`name`,
- A.group_id,
- B.group_name,
- D.`name`,
- D.gender,
- D.avatar,
- D.qr_code,
- D.mobile,
- D.private_switch_status,
- D.private_tag_id,
- D.private_phone_code,
- D.private_forbidden_status,
- D.private_user_id,
- D.cust_cnt,
- D.group_cnt,
- D.in_group_cnt
- FROM private_group_corp AS A
- LEFT JOIN private_group AS B on A.group_id = B.id AND B.group_type = 1
- LEFT JOIN mc_corp AS C on A.corp_id = C.id
- LEFT JOIN mc_work_employee AS D ON C.id = D.corp_id
- WHERE A.corp_id IN (#{corpIds})
- group by a.id
- </select>
- <select id="getBaseJoinList" resultType="com.mokamrp.privates.mapper.vo.WorkGroupDataVo">
- SELECT
- a.*,count(c.id) as companyNum
- FROM
- private_group AS a
- LEFT JOIN private_group_corp AS b ON b.group_id = a.id
- LEFT JOIN mc_corp AS c ON b.corp_id = c.id
- WHERE
- group_type =1
- GROUP BY a.id
- </select>
- <select id="getBaseJoinListTotal" resultType="Integer">
- SELECT
- count(*)
- FROM
- private_group
- WHERE
- group_type =1
- </select>
- <select id="getRoomData" resultType="map">
- SELECT
- c.group_id,a.corp_id,count(*) as num
- FROM
- mc_work_room AS a
- LEFT JOIN mc_corp AS b ON b.id = a.corp_id
- LEFT JOIN private_group_corp AS c ON b.id = c.corp_id
- <where>
- ${ew.sqlSegment}
- </where>
- group by c.group_id;
- </select>
- <select id="getFanData" resultType="map">
- SELECT
- c.group_id,a.corp_id,count(*) as num
- FROM
- mc_work_contact_employee AS a
- LEFT JOIN mc_corp AS b ON b.id = a.corp_id
- LEFT JOIN private_group_corp AS c ON b.id = c.corp_id
- <where>
- ${ew.sqlSegment}
- </where>
- group by c.group_id;
- </select>
- <select id="getEmployeeDataList" resultType="map">
- SELECT
- c.group_id,
- a.private_tag_id,
- d.tag_name,
- concat(c.group_id,"_",a.private_tag_id) as kk,
- count(*) as num
- FROM
- mc_work_employee AS a
- LEFT JOIN mc_corp AS b ON b.id = a.corp_id
- LEFT JOIN private_group_corp AS c ON b.id = c.corp_id
- LEFT JOIN private_tag AS d ON a.private_tag_id = d.id
- where d.tag_name != '' AND ${ew.sqlSegment}
- GROUP BY
- c.group_id,
- a.private_tag_id
- </select>
- </mapper>
|