From 5d2cfd4562f74496a5263db3451c1e78ff53aead Mon Sep 17 00:00:00 2001 From: heheng <475597332@qq.com> Date: 星期四, 27 三月 2025 08:44:16 +0800 Subject: [PATCH] 单据增加查询返回字段 --- assess-system/src/main/resources/mapper/AssProjectMapper.xml | 61 +++++++++++++++++++++++++----- 1 files changed, 50 insertions(+), 11 deletions(-) diff --git a/assess-system/src/main/resources/mapper/AssProjectMapper.xml b/assess-system/src/main/resources/mapper/AssProjectMapper.xml index 5aa9f2a..4e9126c 100644 --- a/assess-system/src/main/resources/mapper/AssProjectMapper.xml +++ b/assess-system/src/main/resources/mapper/AssProjectMapper.xml @@ -35,6 +35,7 @@ <result property="businessName" column="business_name" /> <result property="leaderId" column="leader_id" /> <result property="estimateTypeName" column="estimate_type_name" /> + <result property="agencyName" column="agency_name" /> <association property="leader" javaType="com.gkhy.assess.system.domain.SysUser" resultMap="userResult" /> <association property="contract" javaType="com.gkhy.assess.system.domain.AssContract" resultMap="contractResult" /> </resultMap> @@ -42,6 +43,7 @@ <resultMap id="userResult" type="com.gkhy.assess.system.domain.SysUser"> <id property="id" column="leader_id" /> <result property="name" column="leader_name" /> + <result property="phone" column="link_phone" /> </resultMap> <resultMap id="contractResult" type="com.gkhy.assess.system.domain.AssContract"> @@ -54,8 +56,8 @@ select distinct p.id,p.name, p.code,p.client,p.province,p.city,p.district,p.business,p.invest,p.address,p.agency_id, p.actual_location,p.location,p.estimate_type,p.filing_date, p.credit_code,p.report_progress,p.phase,p.state,p.introduction,p.is_review,p.del_flag,p.create_by,p.create_time, - p.update_by,p.update_time,p.remark,d1.label as business_name,d2.label as estimate_type_name,e.leader_id,u.name as leader_name, - c.id as contract_id,c.contract_money,c.actual_contract_money, + p.update_by,p.update_time,p.remark,d1.label as business_name,d2.label as estimate_type_name,e.leader_id,u.name as leader_name,e.link_phone, + c.id as contract_id,c.contract_money,c.actual_contract_money,a.name as agency_name, (select count(*) from ass_project_material m where m.project_id=p.id and m.file_id is not null) as material_cnt from ass_project p left join ass_estimate_task e on e.project_id=p.id @@ -63,19 +65,32 @@ left join sys_dict_data d1 on d1.id=p.business left join sys_dict_data d2 on d2.id=p.estimate_type left join ass_contract c on c.project_id=p.id + left join sys_agency a on a.id=p.agency_id </sql> <select id="projectList" resultMap="projectResult"> <include refid="selectProjectVo"/> <if test="params.personId != null and params.personId != ''"> - left join ass_plan_person a on a.project_id=p.id + left join ass_plan_person pp on pp.project_id=p.id </if> <if test="params.lostMaterial != null"> left join ass_project_material m on m.project_id=p.id </if> <where> and p.del_flag = 0 + <if test="safetyCheck != null and safetyCheck == 0"> + and p.estimate_type != 33 + </if> + <if test="safetyCheck != null and safetyCheck == 1"> + and p.estimate_type = 33 + </if> + <if test="unFinish != null and unFinish == 1"> + and p.report_progress != 14 + </if> + <if test="agencyName != null and agencyName != ''"> + and a.name=#{agencyName} + </if> <if test="name != null and name != ''"> AND p.name like concat('%', #{name}, '%') </if> @@ -110,7 +125,7 @@ and date_format(p.create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d') </if> <if test="params.personId != null and params.personId != ''"> - and a.person_id=#{params.personId} and a.del_flag=0 + and pp.person_id=#{params.personId} and pp.del_flag=0 </if> <if test="params.lostMaterial != null and params.lostMaterial==1"> and (m.file_id is null) @@ -129,16 +144,23 @@ <select id="getProjectByName" resultType="com.gkhy.assess.system.domain.AssProject"> select id,name from ass_project - where name=#{name} + where name=#{name} and agency_id=#{agencyId} and del_flag=0 + <if test="safetyCheck != null and safetyCheck == 0"> + and estimate_type != 33 + </if> + <if test="safetyCheck != null and safetyCheck == 1"> + and estimate_type = 33 + </if> + limit 1 </select> <select id="getReportProgress" resultType="java.lang.Integer"> select report_progress from ass_project where id=#{projectId} </select> - +<!--a.id as plan_person_id, sql字段无用 增加后组件分页查询数量有问题--> <select id="getMemberProjectByUserId" resultMap="projectResult"> - select p.id,p.name,p.report_progress,p.code,p.client,p.province,p.city,p.district,p.business,p.create_time,a.id as plan_person_id, + select distinct p.id,p.name,p.report_progress,p.code,p.client,p.province,p.city,p.district,p.business,p.create_time, e.leader_id,u.name as leader_name from ass_project p left join ass_plan_person a on a.project_id=p.id @@ -160,7 +182,7 @@ </select> <select id="getLeaderProjectByUserId" resultMap="projectResult"> - select p.id,p.name,p.report_progress,p.code,p.client,p.province,p.city,p.district,p.business,p.create_time,a.id as plan_person_id, + select distinct p.id,p.name,p.report_progress,p.code,p.client,p.province,p.city,p.district,p.business,p.create_time,a.id as plan_person_id, e.leader_id,u.name as leader_name from ass_project p left join ass_plan_person a on a.project_id=p.id @@ -174,14 +196,29 @@ </select> <select id="getProjectCount" resultType="java.lang.Integer"> - select count(distinct p.id) from ass_project p + select Ifnull(count(distinct p.id),0) from ass_project p <if test="params.lostMaterial != null"> left join ass_project_material m on m.project_id=p.id </if> + <if test="agencyName != null and agencyName != ''"> + left join sys_agency a on a.id=p.agency_id + </if> <where> and p.del_flag=0 + <if test="safetyCheck != null and safetyCheck == 0"> + and p.estimate_type != 33 + </if> + <if test="safetyCheck != null and safetyCheck == 1"> + and p.estimate_type = 33 + </if> + <if test="unFinish != null and unFinish == 1"> + and p.report_progress != 14 + </if> <if test="agencyId!=null and agencyId!=''"> and p.agency_id=#{agencyId} + </if> + <if test="agencyName != null and agencyName != ''"> + and a.name=#{agencyName} </if> <if test="name != null and name != ''"> AND p.name like concat('%', #{name}, '%') @@ -223,13 +260,15 @@ </select> <select id="getProjectByPersonIds" resultType="com.gkhy.assess.system.domain.vo.PersonProjectVO"> - select a.person_id,count(*) as project_count,max(p.create_time) as last_estimate_time from ass_project p + select d.person_id,count(*) as project_count,max(d.create_time) as last_estimate_time from + (select a.person_id,a.project_id,max(p.create_time) as create_time from ass_project p left join ass_plan_person a on a.project_id=p.id where a.del_flag=0 and p.del_flag=0 and a.person_id in <foreach collection="personIds" item="personId" open="(" separator="," close=")"> #{personId} </foreach> - group by a.person_id + group by a.person_id,a.project_id) d + group by d.person_id </select> </mapper> -- Gitblit v1.9.2