Add custom request management

This commit is contained in:
王鹏
2026-09-16 16:53:24 +08:00
parent 05e04ce021
commit e7ab83c564
9 changed files with 920 additions and 0 deletions

View File

@@ -0,0 +1,102 @@
<?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.ruoyi.app.mapper.AppCustomRequestMapper">
<resultMap type="AppCustomRequest" id="AppCustomRequestResult">
<result property="id" column="id" />
<result property="requestNo" column="request_no" />
<result property="userId" column="user_id" />
<result property="projectName" column="project_name" />
<result property="requirementContent" column="requirement_content" />
<result property="techStackId" column="tech_stack_id" />
<result property="techStackName" column="tech_stack_name" />
<result property="status" column="status" />
<result property="progressNote" column="progress_note" />
<result property="pointAmount" column="point_amount" />
<result property="pointStatus" column="point_status" />
<result property="rejectReason" column="reject_reason" />
<result property="userName" column="user_name" />
<result property="nickName" column="nick_name" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="selectAppCustomRequestVo">
select r.id, r.request_no, r.user_id, r.project_name, r.requirement_content,
r.tech_stack_id, r.tech_stack_name,
r.status, r.progress_note, r.point_amount, r.point_status, r.reject_reason,
r.create_by, r.create_time, r.update_by, r.update_time,
u.user_name, u.nick_name
from app_custom_request r
left join sys_user u on u.user_id = r.user_id
</sql>
<select id="selectAppCustomRequestById" parameterType="Long" resultMap="AppCustomRequestResult">
<include refid="selectAppCustomRequestVo" />
where r.id = #{id}
</select>
<select id="selectAppCustomRequestByIdForUpdate" parameterType="Long" resultMap="AppCustomRequestResult">
select id, request_no, user_id, project_name, requirement_content,
tech_stack_id, tech_stack_name, status,
progress_note, point_amount, point_status, reject_reason,
create_by, create_time, update_by, update_time
from app_custom_request
where id = #{id}
for update
</select>
<select id="selectAppCustomRequestList" parameterType="AppCustomRequest" resultMap="AppCustomRequestResult">
<include refid="selectAppCustomRequestVo" />
<where>
<if test="requestNo != null and requestNo != ''">and r.request_no like concat('%', #{requestNo}, '%')</if>
<if test="projectName != null and projectName != ''">and r.project_name like concat('%', #{projectName}, '%')</if>
<if test="techStackName != null and techStackName != ''">and r.tech_stack_name like concat('%', #{techStackName}, '%')</if>
<if test="status != null">and r.status = #{status}</if>
<if test="pointStatus != null">and r.point_status = #{pointStatus}</if>
<if test="userId != null">and r.user_id = #{userId}</if>
<if test="userName != null and userName != ''">
and (u.user_name like concat('%', #{userName}, '%') or u.nick_name like concat('%', #{userName}, '%'))
</if>
<if test="params.beginTime != null and params.beginTime != ''">
and date_format(r.create_time, '%Y%m%d') &gt;= date_format(#{params.beginTime}, '%Y%m%d')
</if>
<if test="params.endTime != null and params.endTime != ''">
and date_format(r.create_time, '%Y%m%d') &lt;= date_format(#{params.endTime}, '%Y%m%d')
</if>
</where>
order by r.update_time desc, r.id desc
</select>
<select id="selectMyCustomRequestList" resultMap="AppCustomRequestResult">
<include refid="selectAppCustomRequestVo" />
where r.user_id = #{userId}
order by r.update_time desc, r.id desc
</select>
<insert id="insertAppCustomRequest" parameterType="AppCustomRequest" useGeneratedKeys="true" keyProperty="id">
insert into app_custom_request
(request_no, user_id, project_name, requirement_content, tech_stack_id, tech_stack_name, status, progress_note,
point_amount, point_status, reject_reason, create_by, create_time, update_by, update_time)
values
(#{requestNo}, #{userId}, #{projectName}, #{requirementContent}, #{techStackId}, #{techStackName}, #{status}, #{progressNote},
#{pointAmount}, #{pointStatus}, #{rejectReason}, #{createBy}, #{createTime}, #{updateBy}, #{updateTime})
</insert>
<update id="updateAppCustomRequest" parameterType="AppCustomRequest">
update app_custom_request
<set>
<if test="status != null">status = #{status},</if>
<if test="progressNote != null">progress_note = #{progressNote},</if>
<if test="pointStatus != null">point_status = #{pointStatus},</if>
<if test="rejectReason != null">reject_reason = #{rejectReason},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
update_time = #{updateTime}
</set>
where id = #{id}
</update>
</mapper>