优化未打卡用户列表

This commit is contained in:
xiezhijun
2021-08-27 14:02:56 +08:00
parent 1a6dae2800
commit 129eec1b21
10 changed files with 92 additions and 26 deletions

View File

@ -16,6 +16,7 @@
<result property="updateTime" column="update_time" />
<result property="updateBy" column="update_by" />
<result property="delFlag" column="del_flag" />
<result property="createByName" column="createByName"></result>
</resultMap>
<!-- 部分字段resultMap -->
@ -28,6 +29,10 @@
<result property="createTime" column="create_time" />
</resultMap>
<sql id="base_field">
id, title, content, `key`, title_content_index, show_flag, create_time, create_by, update_time, update_by, del_flag
</sql>
<sql id="selectSysNutritionQuestionVo">
select id, title, content, `key`, title_content_index, show_flag, create_time, create_by, update_time, update_by, del_flag from sys_nutrition_question
</sql>
@ -37,8 +42,11 @@
</select>
<select id="selectSysNutritionQuestionById" parameterType="Long" resultMap="SysNutritionQuestionResult">
<include refid="selectSysNutritionQuestionVo"/>
where id = #{id} and del_flag = 0
select
nq.*,u.nick_name as createByName
from sys_nutrition_question nq
left join sys_user u on u.user_id = nq.create_by
where nq.del_flag = 0 and nq.id = #{id}
</select>
<insert id="insertSysNutritionQuestion" parameterType="SysNutritionQuestion" useGeneratedKeys="true" keyProperty="id">
@ -115,7 +123,11 @@
<!-- 分页查询-->
<select id="getNutritionQuestionListByPage" resultMap="SysNutritionQuestionResult">
select * from sys_nutrition_question where del_flag = 0 order by id asc limit #{start},#{pageSize}
select
nq.*,u.nick_name as createByName
from sys_nutrition_question nq
left join sys_user u on u.user_id = nq.create_by
where nq.del_flag = 0 order by id asc limit #{start},#{pageSize}
</select>

View File

@ -473,21 +473,21 @@
<!-- 根据日期查询该日期中未打卡客户(根据食谱计划判断今日是否需要打卡) -->
<select id="selectNotPunchCustomerByDate" parameterType="SysCustomer" resultType="SysCustomer">
select plan.cus_id as id, cus.name, cus.main_dietitian as mainDietitian, cus.assistant_dietitian as assistantDietitian,cus.after_dietitian as afterDietitian from
select cus.id, cus.name, cus.main_dietitian as mainDietitian, cus.assistant_dietitian as assistantDietitian,cus.after_dietitian as afterDietitian from
(
select DISTINCT cus_id from sys_recipes_plan where end_date >= DATE_FORMAT(#{startDate},'%Y-%m-%d') and DATE_FORMAT(#{startDate},'%Y-%m-%d') >= start_date and del_flag = 0 and instr(pause_date, DATE_FORMAT(#{startDate},'%Y%m%d')) = 0
) as plan
left join sys_customer cus on cus.id = plan.cus_id and cus.del_flag = 0
where plan.cus_id not in
(
select info.cus_id from sys_wx_user_log log left join sys_wx_user_info info on info.openid = log.openid
where log.del_flag = 0 and DATE_FORMAT(log.log_time,'%Y-%m-%d') = DATE_FORMAT(#{startDate},'%Y-%m-%d')
select distinct info.cus_id from sys_wx_user_log log left join sys_wx_user_info info on info.openid = log.openid where log.del_flag = 0 and info.cus_id is not null
)
as punchCus
left join sys_customer cus on cus.id = punchCus.cus_id
where cus.del_flag = 0 and punchCus.cus_id in
(
select DISTINCT cus_id from sys_recipes_plan where end_date >= DATE_FORMAT(#{startDate},'%Y-%m-%d') and DATE_FORMAT(#{startDate},'%Y-%m-%d') >= start_date and del_flag = 0 and instr(pause_date, DATE_FORMAT('2021-08-26','%Y%m%d')) = 0
)
and punchCus.cus_id not in
(
select info.cus_id from sys_wx_user_log log left join sys_wx_user_info info on info.openid = log.openid
where log.del_flag = 0 and DATE_FORMAT(log.log_time,'%Y-%m-%d') = DATE_FORMAT(#{startDate},'%Y-%m-%d')
)
<if test="mainDietitian != null">
and cus.main_dietitian = #{mainDietitian}
</if>
@ -498,7 +498,7 @@
and cus.after_dietitian = #{afterDietitian}
</if>
order by plan.cus_id desc
order by cus.id desc
</select>
<!-- 获取打卡详情(上一天、下一天) -->