From 0a426c08ac419c558334d89ab79fbbef4e7e3af8 Mon Sep 17 00:00:00 2001 From: jyy <935090232@qq.com> Date: Mon, 08 Mar 2021 14:15:31 +0800 Subject: [PATCH] Merge branch 'api' into test --- zq-erp/src/main/resources/mybatis/mapper/hive/SysFollowupDao.xml | 405 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 405 insertions(+), 0 deletions(-) diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysFollowupDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysFollowupDao.xml new file mode 100644 index 0000000..408922a --- /dev/null +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysFollowupDao.xml @@ -0,0 +1,405 @@ +<?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.matrix.system.hive.dao.SysFollowupDao" > + <!-- 定义SysFollowup 的复杂关联map --> + <resultMap type="com.matrix.system.hive.bean.SysFollowup" id="SysFollowupMap"> + <id property="id" column="id" /> + <result property="createBy" column="create_by" /> + <result property="createTime" column="create_time" /> + <result property="updateBy" column="update_by" /> + <result property="updateTime" column="update_time" /> + <result property="staffId" column="staff_id" /> + <result property="vipId" column="vip_id" /> + <result property="orderId" column="order_id" /> + <result property="serviceId" column="service_id" /> + <result property="shopId" column="shop_id" /> + <result property="companyId" column="company_id" /> + <result property="nextNotifyTime" column="next_notify_time" /> + <result property="content" column="content" /> + <result property="visible" column="visible" /> + <result property="orderAbstract" column="order_abstract" /> + <result property="zans" column="zans" /> + + <result property="staffPhoto" column="staffPhoto" /> + <result property="staffName" column="staffName" /> + <result property="vipName" column="vipName" /> + + <collection property="albums" column="{sourceId=id}" select="com.matrix.system.hive.dao.SysVipAlbumDao.selectBySourceId" /> + + <collection property="followupComments" column="{follId=id}" select="com.matrix.system.hive.dao.SysFollowupCommentDao.selectByfollId" ></collection> + + <collection property="zanUsers" column="{zans=zans}" select="selectUserByZaqns" ></collection> + + + </resultMap> + + <select id="selectUserByZaqns" resultMap="com.matrix.system.common.dao.SysUsersDao.SysUsersMap" > + select su_id,su_name from sys_users where FIND_IN_SET(su_id,#{zans}) + </select> + + <!-- 定义SysFollowup 的简单map ,本map不添加其他的关联属性 --> + <resultMap type="com.matrix.system.hive.bean.SysFollowup" id="SysFollowupSimpleMap"> + <id property="id" column="id" /> + <result property="createBy" column="create_by" /> + <result property="createTime" column="create_time" /> + <result property="updateBy" column="update_by" /> + <result property="updateTime" column="update_time" /> + <result property="staffId" column="staff_id" /> + <result property="vipId" column="vip_id" /> + <result property="orderId" column="order_id" /> + <result property="serviceId" column="service_id" /> + <result property="shopId" column="shop_id" /> + <result property="companyId" column="company_id" /> + <result property="nextNotifyTime" column="next_notify_time" /> + <result property="content" column="content" /> + <result property="visible" column="visible" /> + <result property="orderAbstract" column="order_abstract" /> + <result property="zans" column="zans" /> + </resultMap> + + <!-- 字段sql --> + <sql id="columns"> + create_by, + create_time, + update_by, + update_time, + id, + staff_id, + vip_id, + order_id, + service_id, + shop_id, + company_id, + next_notify_time, + content, + visible, + order_abstract, + zans + </sql> + + <!-- 属性sql --> + <sql id="propertys"> + #{item.createBy}, + now(), + #{item.updateBy}, + now(), + #{item.id}, + #{item.staffId}, + #{item.vipId}, + #{item.orderId}, + #{item.serviceId}, + #{item.shopId}, + #{item.companyId}, + #{item.nextNotifyTime}, + #{item.content}, + #{item.visible}, + #{item.orderAbstract}, + #{item.zans} + </sql> + + <!-- where sql --> + <sql id="where_sql"> + + <if test="record!=null"> + <if test="(record.id!=null and record.id!='') or (record.id!='' and record.id==0) "> + and id = #{record.id} + </if> + <if test="(record.staffId!=null and record.staffId!='') or (record.staffId!='' and record.staffId==0) "> + and staff_id = #{record.staffId} + </if> + <if test="(record.vipId!=null and record.vipId!='') or (record.vipId!='' and record.vipId==0) "> + and vip_id = #{record.vipId} + </if> + <if test="(record.orderId!=null and record.orderId!='') or (record.orderId!='' and record.orderId==0) "> + and order_id = #{record.orderId} + </if> + <if test="(record.serviceId!=null and record.serviceId!='') or (record.serviceId!='' and record.serviceId==0) "> + and service_id = #{record.serviceId} + </if> + <if test="(record.shopId!=null and record.shopId!='') or (record.shopId!='' and record.shopId==0) "> + and shop_id = #{record.shopId} + </if> + <if test="(record.companyId!=null and record.companyId!='') or (record.companyId!='' and record.companyId==0) "> + and company_id = #{record.companyId} + </if> + <if test="(record.nextNotifyTime!=null and record.nextNotifyTime!='') or (record.nextNotifyTime!='' and record.nextNotifyTime==0) "> + and next_notify_time = #{record.nextNotifyTime} + </if> + <if test="(record.content!=null and record.content!='') or (record.content!='' and record.content==0) "> + and content = #{record.content} + </if> + <if test="(record.visible!=null and record.visible!='') or (record.visible!='' and record.visible==0) "> + and visible = #{record.visible} + </if> + <if test="(record.orderAbstract!=null and record.orderAbstract!='') or (record.orderAbstract!='' and record.orderAbstract==0) "> + and order_abstract = #{record.orderAbstract} + </if> + <if test="(record.zans!=null and record.zans!='') or (record.zans!='' and record.zans==0) "> + and zans = #{record.zans} + </if> + </if> + + </sql> + + <!-- 插入方法 --> + <insert id="insert" parameterType="com.matrix.system.hive.bean.SysFollowup" + useGeneratedKeys="true" keyProperty="item.id"> + INSERT INTO sys_followup ( + <include refid="columns"></include> + ) + VALUES ( + <include refid="propertys"></include> + ) + </insert> + + + + <!-- 批量插入 --> + <insert id="batchInsert" parameterType="java.util.List"> + INSERT INTO sys_followup ( + <include refid="columns"></include> + ) + VALUES + <foreach collection="list" item="item" index="index" separator=",">( + <include refid="propertys"></include> + )</foreach> + </insert> + + + + + + <!-- 根据Map更新 部分更新 --> + <update id="updateByMap" parameterType="java.util.HashMap" > + UPDATE sys_followup + <set> + <if test="_parameter.containsKey('staffId')"> + staff_id = #{staffId}, + </if> + <if test="_parameter.containsKey('vipId')"> + vip_id = #{vipId}, + </if> + <if test="_parameter.containsKey('orderId')"> + order_id = #{orderId}, + </if> + <if test="_parameter.containsKey('serviceId')"> + service_id = #{serviceId}, + </if> + <if test="_parameter.containsKey('shopId')"> + shop_id = #{shopId}, + </if> + <if test="_parameter.containsKey('companyId')"> + company_id = #{companyId}, + </if> + <if test="_parameter.containsKey('nextNotifyTime')"> + next_notify_time = #{nextNotifyTime}, + </if> + <if test="_parameter.containsKey('content')"> + content = #{content}, + </if> + <if test="_parameter.containsKey('visible')"> + visible = #{visible}, + </if> + <if test="_parameter.containsKey('orderAbstract')"> + order_abstract = #{orderAbstract}, + </if> + <if test="_parameter.containsKey('zans')"> + zans = #{zans}, + </if> + </set> + WHERE id=#{id} + </update> + + + <!-- 根据对象更新 部分更新 --> + <update id="updateByModel" parameterType="Integer"> + UPDATE sys_followup + <set> + <if test="record.staffId != null "> + staff_id = #{record.staffId}, + </if> + <if test="record.vipId != null "> + vip_id = #{record.vipId}, + </if> + <if test="record.orderId != null "> + order_id = #{record.orderId}, + </if> + <if test="record.serviceId != null "> + service_id = #{record.serviceId}, + </if> + <if test="record.shopId != null "> + shop_id = #{record.shopId}, + </if> + <if test="record.companyId != null "> + company_id = #{record.companyId}, + </if> + <if test="record.nextNotifyTime != null "> + next_notify_time = #{record.nextNotifyTime}, + </if> + <if test="record.content != null and record.content != '' "> + content = #{record.content}, + </if> + <if test="record.visible != null "> + visible = #{record.visible}, + </if> + <if test="record.orderAbstract != null and record.orderAbstract != '' "> + order_abstract = #{record.orderAbstract}, + </if> + <if test="record.zans != null and record.zans != '' "> + zans = #{record.zans}, + </if> + </set> + WHERE id=#{record.id} + </update> + + <!-- 更新点赞人数 --> + <update id="updateZan"> + update sys_followup set zans=#{zans} where id=#{id} + </update> + + <!-- 批量删除 --> + <delete id="deleteByIds" parameterType="java.util.List"> + delete from sys_followup where id in + <foreach collection="list" index="index" item="item" open="(" + separator="," close=")"> + #{item} + </foreach> + </delete> + + <!-- 根据id删除--> + <delete id="deleteById" parameterType="Integer"> + DELETE FROM sys_followup + where id=#{id} + </delete> + + <!-- 根据对象删除--> + <delete id="deleteByModel" parameterType="com.matrix.system.hive.bean.SysFollowup"> + DELETE FROM sys_followup + <where> + <include refid="where_sql" ></include> + </where> + </delete> + + + + <!-- 分页查询 --> + <select id="selectInPage" resultMap="SysFollowupMap"> + select + <include refid="columns" ></include> + from sys_followup + <where> + <include refid="where_sql"></include> + </where> + <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 --> + <if test="pageVo.sort !=null and pageVo.order !=null"> + order by + ${pageVo.sort} ${pageVo.order} + </if> + <if test="pageVo.offset >=0 and pageVo.limit >0"> + limit + #{pageVo.offset},#{pageVo.limit} + </if> + </if> + </select> + + <!-- 查询总条数 --> + <select id="selectTotalRecord" parameterType="long" resultType="java.lang.Integer"> + select count(*) + from sys_followup + <where> + <include refid="where_sql"></include> + </where> + </select> + + <!-- 根据id查询--> + <select id="selectById" resultMap="SysFollowupMap"> + select + <include refid="columns" ></include> + from sys_followup + where id=#{id} + </select> + + + <!-- 根据id 锁表查询--> + <select id="selectForUpdate" resultMap="SysFollowupMap"> + select + <include refid="columns" ></include> + from sys_followup + where id=#{id} + for update + </select> + + + + <!-- 根据对象查询--> + <select id="selectByModel" resultMap="SysFollowupMap"> + select + <include refid="columns" ></include> + from sys_followup + <where> + <include refid="where_sql"></include> + </where> + </select> + + + <select id="selectByAppDto" resultMap="SysFollowupMap"> + select a.*, + b.su_photo as staffPhoto, + b.su_name as staffName, + c.vip_name as vipName + from sys_followup a + left join sys_users b on a.staff_id= b.su_id + left join sys_vip_info c on a.vip_id=c.id + <where> + and a.company_id=#{companyId} + + <if test="shopId != null "> + and a.shop_id=#{shopId} + </if> + <if test="queryType == 1 "> + and (visible=1 or ( visible!=1 and a.staff_id=#{selfStaff})) + </if> + <if test="queryType == 2 "> + and a.staff_id=#{selfStaff} + </if> + <if test="queryType == 3 "> + and( visible=1 and a.staff_id!=#{selfStaff}) + </if> + + <if test="startTime != null "> + and a.create_time <![CDATA[ >= ]]> #{startTime} + </if> + <if test="endTime != null "> + and a.create_time <![CDATA[ <= ]]> #{endTime} + </if> + + <if test="vipIds!=null and vipIds.size()!=0"> + and a.vip_id in + <foreach collection="vipIds" index="index" item="item" open="(" + separator="," close=")"> + #{item} + </foreach> + </if> + + <if test="staffIds!=null and staffIds.size()!=0"> + and a.staff_id in + <foreach collection="staffIds" index="index" item="item" open="(" + separator="," close=")"> + #{item} + </foreach> + </if> + + + </where> + + + order by a.create_time desc + + + limit ${offset},${limit} + </select> + + +</mapper> \ No newline at end of file -- Gitblit v1.9.1