医生端im优化后端设计文档
一.不在服务时间允许留言接设计
1.接口方法设计
a) main-site:
新建ConsultantServiceSettingVO类,包含consultantServicePeriod和allowComment两个属性,前端修改健康是服务时间设定和不在服务时间是否允许留言(/updateConsultantServicePeriod)时,进行参数的获取与确定。
修改/getConsultantServicePeriod接口的参数返回类型为ConsultantServiceSettingVO类对象,方便前端获取健康师服务时间状态和是否允许留言状态
b) mytijian-uic
ConsultantService和ConsultantServiceImpl中新增 updateAllowCommentById,参数(Integer consultantId, Integer allowComment);
ConsultantMapper.java中新增 updateConsultantAllowComment,参数(Integer consultantId,Integer allowComment);
ConsultantMapper.xml中新增相应的更新语句:<update id="updateConsultantAllowComment">
UPDATE tb_consultant
<set>
<if test="allowComment != null">
allow_comment = #{allowComment},
</if>
</set>
WHERE id = #{consultantId,jdbcType=INTEGER}
</update>
;
ConsultantDTO/ConsultantDO中新增 allowComment 属性和相应的getter和setter方法;
c)涉及的SQL语句
给表 tb_consultant 添加字段 allow_comment
SQL语句:
ALTER table tb_consultant ADD allow_comment tinyInt(1) NOT NULL DEFAULT 1;
二.服务中状态排序
main-site中,ConsultantController中的 pages 接口中用到的 returnConsultantPage 方法中,增加根据健康师服务状态servingStatus排序;
增加app/consultant/pages接口参数 statusAndComment, 过滤既不在服务时间,又不允许不在服务时间留言的健康师
三.健康师推送消息服务时间判断
main-site中,ChatController中的/push/message接口用到的 pushMessageToConsultant 方法中,在推送消息的时候,判定当前时间是否为健康师服务时间