refactor: 清理代码、优化结构
- 移除订阅消息相关代码(WxSubscribeMessageService、subscribeTemplateId配置) - 提取Result类为独立公共类(common.Result) - 拆分Controller: WxLoginController(登录) + AppointmentController(预约) - 引入Lombok(@Data/@Slf4j/@RequiredArgsConstructor)消除样板代码 - 修正WxLoginResult字段命名(session_key->sessionKey+@JsonProperty) - MySQL驱动升级mysql-connector-java->mysql-connector-j - updateStatus SQL增加status='pending'校验防并发重复审批 - pom.xml配置spring-boot-maven-plugin排除lombok
This commit is contained in:
@@ -18,16 +18,60 @@
|
||||
<result column="create_time" property="createTime"/>
|
||||
</resultMap>
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
id, name, phone, company, reason,
|
||||
DATE_FORMAT(visit_date, '%Y-%m-%d') AS visit_date,
|
||||
DATE_FORMAT(visit_time, '%H:%i') AS visit_time,
|
||||
host_name, area, status, status_text, openid,
|
||||
DATE_FORMAT(create_time, '%Y-%m-%dT%H:%i:%s.000+00:00') AS create_time
|
||||
</sql>
|
||||
|
||||
<select id="selectLatestByOpenid" resultMap="BaseResultMap">
|
||||
SELECT id, name, phone, company, reason,
|
||||
DATE_FORMAT(visit_date, '%Y-%m-%d') AS visit_date,
|
||||
DATE_FORMAT(visit_time, '%H:%i') AS visit_time,
|
||||
host_name, area, status, status_text, openid,
|
||||
DATE_FORMAT(create_time, '%Y-%m-%dT%H:%i:%s.000+00:00') AS create_time
|
||||
SELECT <include refid="Base_Column_List"/>
|
||||
FROM visit_application
|
||||
WHERE openid = #{openid}
|
||||
ORDER BY create_time DESC
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="selectListByOpenid" resultMap="BaseResultMap">
|
||||
SELECT <include refid="Base_Column_List"/>
|
||||
FROM visit_application
|
||||
WHERE openid = #{openid}
|
||||
ORDER BY create_time DESC
|
||||
</select>
|
||||
|
||||
<select id="selectByIdAndOpenid" resultMap="BaseResultMap">
|
||||
SELECT <include refid="Base_Column_List"/>
|
||||
FROM visit_application
|
||||
WHERE id = #{id} AND openid = #{openid}
|
||||
</select>
|
||||
|
||||
<insert id="insert">
|
||||
INSERT INTO visit_application (id, name, phone, company, reason,
|
||||
visit_date, visit_time, host_name, area,
|
||||
status, status_text, openid, create_time)
|
||||
VALUES (#{id}, #{name}, #{phone}, #{company}, #{reason},
|
||||
#{visitDate}, #{visitTime}, #{hostName}, #{area},
|
||||
#{status}, #{statusText}, #{openid}, NOW())
|
||||
</insert>
|
||||
|
||||
<update id="updateStatusToCancelled">
|
||||
UPDATE visit_application
|
||||
SET status = 'cancelled', status_text = '已取消'
|
||||
WHERE id = #{id} AND openid = #{openid} AND status = 'pending'
|
||||
</update>
|
||||
|
||||
<select id="selectById" resultMap="BaseResultMap">
|
||||
SELECT <include refid="Base_Column_List"/>
|
||||
FROM visit_application
|
||||
WHERE id = #{id}
|
||||
</select>
|
||||
|
||||
<update id="updateStatus">
|
||||
UPDATE visit_application
|
||||
SET status = #{status}, status_text = #{statusText}
|
||||
WHERE id = #{id} AND status = 'pending'
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
|
||||
Reference in New Issue
Block a user