|
@@ -0,0 +1,629 @@
|
|
|
|
+<?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.jeeplus.modules.ruralprojectrecords.dao.RuralProjectRecordsDao">
|
|
|
|
+
|
|
|
|
+ <sql id="projectRecordsColumns">
|
|
|
|
+ a.id AS "id",
|
|
|
|
+ a.create_by AS "createBy.id",
|
|
|
|
+ a.create_date AS "createDate",
|
|
|
|
+ a.update_by AS "updateBy.id",
|
|
|
|
+ a.update_date AS "updateDate",
|
|
|
|
+ a.del_flag AS "delFlag",
|
|
|
|
+ a.contract_id AS "workContractInfo.id",
|
|
|
|
+ a.project_id AS "projectId",
|
|
|
|
+ a.project_name AS "projectName",
|
|
|
|
+ a.scale_type AS "scaleType",
|
|
|
|
+ a.scale_unit AS "scaleUnit",
|
|
|
|
+ a.scale_quantity AS "scaleQuantity",
|
|
|
|
+ a.area_id AS "area.id",
|
|
|
|
+ a.project_site AS "projectSite",
|
|
|
|
+ a.project_desc AS "projectDesc",
|
|
|
|
+ a.remarks AS "remarks",
|
|
|
|
+ a.status AS "projectStatus",
|
|
|
|
+ a.process_instance_id AS "processInstanceId",
|
|
|
|
+ a.company_id AS "company.id",
|
|
|
|
+ a.office_id AS "office.id",
|
|
|
|
+ a.alter_process_id AS "alterProcessId",
|
|
|
|
+ area.name AS "area.name",
|
|
|
|
+ a.province,
|
|
|
|
+ a.city,
|
|
|
|
+ a.area_name AS "county",
|
|
|
|
+ a.project_structure AS "projectStructure",
|
|
|
|
+ a.on_ground_num AS "onGroundNum",
|
|
|
|
+ a.under_ground_num AS "underGroundNum",
|
|
|
|
+ a.building_scale AS "buildingScale",
|
|
|
|
+ a.measuring_unit AS "measuringUnit",
|
|
|
|
+ a.project_use AS "projectUse",
|
|
|
|
+ a.install_fees AS "installFees",
|
|
|
|
+ a.building_fees AS "buildingFees",
|
|
|
|
+ a.building_percent AS "buildingPercent",
|
|
|
|
+ a.install_percent AS "installPercent",
|
|
|
|
+ a.unit_fees AS "unitFees",
|
|
|
|
+ a.building_unit_fees AS "buildingUnitFees",
|
|
|
|
+ a.install_unit_fees AS "installUnitFees",
|
|
|
|
+ a.total_fees AS "totalFees"
|
|
|
|
+ </sql>
|
|
|
|
+
|
|
|
|
+ <sql id="projectRecordsJoins">
|
|
|
|
+ LEFT JOIN sys_area area ON area.id = a.area_id
|
|
|
|
+ </sql>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <select id="get" resultType="RuralProjectRecords" >
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="projectRecordsColumns"/>
|
|
|
|
+ ,su.name AS "createBy.name"
|
|
|
|
+ ,o.top_company AS "office.name"
|
|
|
|
+ FROM rural_project_records a
|
|
|
|
+ <include refid="projectRecordsJoins"/>
|
|
|
|
+ LEFT JOIN sys_user su ON su.id = a.create_by
|
|
|
|
+ LEFT JOIN sys_office o ON o.id = a.office_id
|
|
|
|
+ WHERE a.id = #{id}
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findList" resultType="RuralProjectRecords" >
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="projectRecordsColumns"/>
|
|
|
|
+ ,
|
|
|
|
+ wci.name AS "workContractInfo.name",
|
|
|
|
+ wct.id AS "workContractInfo.client.id",
|
|
|
|
+ wct.name AS "workContractInfo.client.name",
|
|
|
|
+ o.top_company AS "office.name"
|
|
|
|
+ FROM rural_project_records a
|
|
|
|
+ <include refid="projectRecordsJoins"/>
|
|
|
|
+
|
|
|
|
+ <if test="leaderNameStr !=null and leaderNameStr !=''">
|
|
|
|
+ LEFT JOIN work_project_user w on a.id = w.project_id
|
|
|
|
+ LEFT JOIN sys_user su on w.user_id = su.id
|
|
|
|
+ </if>
|
|
|
|
+ LEFT JOIN work_project_user w1 on a.id = w1.project_id
|
|
|
|
+ LEFT JOIN work_contract_info wci on a.contract_id = wci.id
|
|
|
|
+ LEFT JOIN work_client_info wct on wci.client_id = wct.id
|
|
|
|
+ LEFT JOIN sys_office o ON o.id = a.office_id
|
|
|
|
+ <where>
|
|
|
|
+ <if test="projectId != null and projectId != ''">
|
|
|
|
+ AND a.project_id like concat('%',#{projectId},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectName != null and projectName != ''">
|
|
|
|
+ AND a.project_name like concat(concat('%',#{projectName}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleType != null and scaleType != ''">
|
|
|
|
+ AND a.scale_type = #{scaleType}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleUnit != null and scaleUnit != ''">
|
|
|
|
+ AND a.scale_unit = #{scaleUnit}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleQuantity != null and scaleQuantity != ''">
|
|
|
|
+ AND a.scale_quantity = #{scaleQuantity}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectSite != null and projectSite != ''">
|
|
|
|
+ AND a.project_site LIKE concat('%',#{projectSite},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="remarks != null and remarks != ''">
|
|
|
|
+ AND a.remarks LIKE concat('%',#{remarks},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectDesc != null and projectDesc != ''">
|
|
|
|
+ AND a.project_desc LIKE concat('%',#{projectDesc},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="area != null and area.id != null and area.id != ''">
|
|
|
|
+ AND a.area_id = #{area.id}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
|
|
|
|
+ AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.contractNum !=null and workContractInfo.contractNum !=''">
|
|
|
|
+ AND wci.contract_num like concat(concat('%',#{workContractInfo.contractNum}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.contractPrice !=null and workContractInfo.contractPrice !=''">
|
|
|
|
+ AND wci.contract_price = #{workContractInfo.contractPrice}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.contractType !=null and workContractInfo.contractType !=''">
|
|
|
|
+ AND wci.contract_type = #{workContractInfo.contractType}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo!=null and workContractInfo.client !=null and workContractInfo.client.name !=null and workContractInfo.client.name !=''">
|
|
|
|
+ AND wct.name like concat(concat('%',#{workContractInfo.client.name}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="leaderNameStr !=null and leaderNameStr !=''">
|
|
|
|
+ AND su.name like concat(concat('%',#{leaderNameStr}),'%') AND w.is_master = '1' AND w.del_flag='0'
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectStatus !=null">
|
|
|
|
+ AND a.status = #{projectStatus}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="beginDate !=null">
|
|
|
|
+ AND a.create_date >= #{beginDate}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="endDate !=null">
|
|
|
|
+ AND a.create_date < #{endDate}
|
|
|
|
+ </if>
|
|
|
|
+ AND a.status != 7 AND a.del_flag = #{DEL_FLAG_NORMAL}
|
|
|
|
+ <if test="sqlMap.dsf !=null and sqlMap.dsf!=''">
|
|
|
|
+ AND ((w1.user_id = #{currentUser.id} AND w1.del_flag='0' AND a.company_id = #{currentUser.company.id} )${sqlMap.dsf} )
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ GROUP BY a.id
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ ORDER BY a.update_date DESC
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="queryCount" resultType="int" >
|
|
|
|
+ SELECT count(DISTINCT a.id)
|
|
|
|
+ FROM rural_project_records a
|
|
|
|
+ <if test="leaderNameStr !=null and leaderNameStr !=''">
|
|
|
|
+ LEFT JOIN work_project_user w on a.id = w.project_id
|
|
|
|
+ LEFT JOIN sys_user su on w.user_id = su.id
|
|
|
|
+ </if>
|
|
|
|
+ LEFT JOIN work_project_user w1 on a.id = w1.project_id
|
|
|
|
+ <if test="workContractInfo !=null">
|
|
|
|
+ LEFT JOIN work_contract_info wci on a.contract_id = wci.id
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo!=null and workContractInfo.client !=null and workContractInfo.client.name !=null and workContractInfo.client.name !=''">
|
|
|
|
+ LEFT JOIN work_client_info wct on wci.client_id = wct.id
|
|
|
|
+ </if>
|
|
|
|
+ <where>
|
|
|
|
+ <if test="projectId != null and projectId != ''">
|
|
|
|
+ AND a.project_id like concat('%',#{projectId},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectName != null and projectName != ''">
|
|
|
|
+ AND a.project_name like concat(concat('%',#{projectName}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleType != null and scaleType != ''">
|
|
|
|
+ AND a.scale_type = #{scaleType}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleUnit != null and scaleUnit != ''">
|
|
|
|
+ AND a.scale_unit = #{scaleUnit}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleQuantity != null and scaleQuantity != ''">
|
|
|
|
+ AND a.scale_quantity = #{scaleQuantity}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectSite != null and projectSite != ''">
|
|
|
|
+ AND a.project_site LIKE concat('%',#{projectSite},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="remarks != null and remarks != ''">
|
|
|
|
+ AND a.remarks LIKE concat('%',#{remarks},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectDesc != null and projectDesc != ''">
|
|
|
|
+ AND a.project_desc LIKE concat('%',#{projectDesc},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="area != null and area.id != null and area.id != ''">
|
|
|
|
+ AND a.area_id = #{area.id}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
|
|
|
|
+ AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.contractNum !=null and workContractInfo.contractNum !=''">
|
|
|
|
+ AND wci.contract_num like concat(concat('%',#{workContractInfo.contractNum}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.contractPrice !=null and workContractInfo.contractPrice !=''">
|
|
|
|
+ AND wci.contract_price = #{workContractInfo.contractPrice}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.contractType !=null and workContractInfo.contractType !=''">
|
|
|
|
+ AND wci.contract_type = #{workContractInfo.contractType}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo!=null and workContractInfo.client !=null and workContractInfo.client.name !=null and workContractInfo.client.name !=''">
|
|
|
|
+ AND wct.name like concat(concat('%',#{workContractInfo.client.name}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="leaderNameStr !=null and leaderNameStr !=''">
|
|
|
|
+ AND su.name like concat(concat('%',#{leaderNameStr}),'%') AND w.is_master = '1' AND w.del_flag='0'
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectStatus !=null">
|
|
|
|
+ AND a.status = #{projectStatus}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="beginDate !=null">
|
|
|
|
+ AND a.create_date >= #{beginDate}
|
|
|
|
+ </if>
|
|
|
|
+ <if test="endDate !=null">
|
|
|
|
+ AND a.create_date < #{endDate}
|
|
|
|
+ </if>
|
|
|
|
+ AND a.status != 7 AND a.del_flag = #{DEL_FLAG_NORMAL}
|
|
|
|
+ <if test="sqlMap.dsf !=null and sqlMap.dsf!=''">
|
|
|
|
+ AND ((w1.user_id = #{currentUser.id} AND w1.del_flag='0' AND a.company_id = #{currentUser.company.id})${sqlMap.dsf} )
|
|
|
|
+ </if>
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findListByStatus" resultType="RuralProjectRecords" >
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="projectRecordsColumns"/>
|
|
|
|
+ ,
|
|
|
|
+ wci.name AS "workContractInfo.name",
|
|
|
|
+ wci.contract_num AS "workContractInfo.contractNum",
|
|
|
|
+ wct.id AS "workContractInfo.client.id",
|
|
|
|
+ wct.name AS "workContractInfo.client.name",
|
|
|
|
+ o.top_company AS "office.name"
|
|
|
|
+ FROM rural_project_records a
|
|
|
|
+ <include refid="projectRecordsJoins"/>
|
|
|
|
+ LEFT JOIN work_project_user w on a.id = w.project_id
|
|
|
|
+ LEFT JOIN work_project_user w1 on a.id = w1.project_id
|
|
|
|
+ LEFT JOIN sys_user su on w.user_id = su.id
|
|
|
|
+ LEFT JOIN sys_user u on a.create_by = u.id
|
|
|
|
+ LEFT JOIN work_contract_info wci on a.contract_id = wci.id
|
|
|
|
+ LEFT JOIN work_client_info wct on wci.client_id = wct.id
|
|
|
|
+ LEFT JOIN sys_office s ON s.id = a.company_id
|
|
|
|
+ LEFT JOIN sys_office o ON o.id = a.office_id
|
|
|
|
+ <where>
|
|
|
|
+ <if test="projectId != null and projectId != ''">
|
|
|
|
+ AND a.project_id like concat('%',#{projectId},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectName != null and projectName != ''">
|
|
|
|
+ AND a.project_name like concat(concat('%',#{projectName}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
|
|
|
|
+ AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo!=null and workContractInfo.client !=null and workContractInfo.client.name !=null and workContractInfo.client.name !=''">
|
|
|
|
+ AND wct.name like concat(concat('%',#{workContractInfo.client.name}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="leaderNameStr !=null and leaderNameStr !=''">
|
|
|
|
+ AND su.name like concat(concat('%',#{leaderNameStr}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ AND w.is_master = '1' AND a.status = '5' AND a.del_flag='0'
|
|
|
|
+ <if test="sqlMap.dsf !=null and sqlMap.dsf!=''">
|
|
|
|
+ AND ((w1.user_id = #{currentUser.id} AND w1.del_flag='0' AND (s.id = #{currentUser.company.id} or find_in_set( #{currentUser.company.id}, s.parent_ids ) ))${sqlMap.dsf} )
|
|
|
|
+ </if>
|
|
|
|
+ AND a.del_flag = #{DEL_FLAG_NORMAL}
|
|
|
|
+ </where>
|
|
|
|
+ GROUP BY a.id
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ ORDER BY a.update_date DESC
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="queryCountByStatus" resultType="int" >
|
|
|
|
+ SELECT count(DISTINCT a.id)
|
|
|
|
+ FROM rural_project_records a
|
|
|
|
+ LEFT JOIN work_project_user w on a.id = w.project_id
|
|
|
|
+ LEFT JOIN work_project_user w1 on a.id = w1.project_id
|
|
|
|
+ LEFT JOIN sys_user su on w.user_id = su.id
|
|
|
|
+ LEFT JOIN sys_user u on a.create_by = u.id
|
|
|
|
+ LEFT JOIN work_contract_info wci on a.contract_id = wci.id
|
|
|
|
+ LEFT JOIN work_client_info wct on wci.client_id = wct.id
|
|
|
|
+ LEFT JOIN sys_office s ON s.id = a.company_id
|
|
|
|
+ LEFT JOIN sys_office o ON o.id = a.office_id
|
|
|
|
+ <where>
|
|
|
|
+ <if test="projectId != null and projectId != ''">
|
|
|
|
+ AND a.project_id like concat('%',#{projectId},'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectName != null and projectName != ''">
|
|
|
|
+ AND a.project_name like concat(concat('%',#{projectName}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
|
|
|
|
+ AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo!=null and workContractInfo.client !=null and workContractInfo.client.name !=null and workContractInfo.client.name !=''">
|
|
|
|
+ AND wct.name like concat(concat('%',#{workContractInfo.client.name}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ <if test="leaderNameStr !=null and leaderNameStr !=''">
|
|
|
|
+ AND su.name like concat(concat('%',#{leaderNameStr}),'%')
|
|
|
|
+ </if>
|
|
|
|
+ AND w.is_master = '1' AND a.status = '5' AND a.del_flag='0'
|
|
|
|
+ <if test="sqlMap.dsf !=null and sqlMap.dsf!=''">
|
|
|
|
+ AND ((w1.user_id = #{currentUser.id} AND w1.del_flag='0' AND (s.id = #{currentUser.company.id} or find_in_set( #{currentUser.company.id}, s.parent_ids ) ))${sqlMap.dsf} )
|
|
|
|
+ </if>
|
|
|
|
+ AND a.del_flag = #{DEL_FLAG_NORMAL}
|
|
|
|
+ </where>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findAllList" resultType="RuralProjectRecords" >
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="projectRecordsColumns"/>
|
|
|
|
+ FROM rural_project_records a
|
|
|
|
+ <include refid="projectRecordsJoins"/>
|
|
|
|
+ <where>
|
|
|
|
+ a.del_flag = #{DEL_FLAG_NORMAL}
|
|
|
|
+ </where>
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ ORDER BY a.update_date DESC
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <insert id="insert">
|
|
|
|
+ INSERT INTO rural_project_records(
|
|
|
|
+ id,
|
|
|
|
+ create_by,
|
|
|
|
+ create_date,
|
|
|
|
+ update_by,
|
|
|
|
+ update_date,
|
|
|
|
+ del_flag,
|
|
|
|
+ contract_id,
|
|
|
|
+ project_id,
|
|
|
|
+ project_name,
|
|
|
|
+ scale_type,
|
|
|
|
+ scale_unit,
|
|
|
|
+ scale_quantity,
|
|
|
|
+ area_id,
|
|
|
|
+ project_site,
|
|
|
|
+ project_desc,
|
|
|
|
+ remarks,
|
|
|
|
+ status,
|
|
|
|
+ company_id,
|
|
|
|
+ office_id,
|
|
|
|
+ alter_process_id,
|
|
|
|
+ province,
|
|
|
|
+ city,
|
|
|
|
+ area_name,
|
|
|
|
+ project_structure,
|
|
|
|
+ on_ground_num,
|
|
|
|
+ under_ground_num,
|
|
|
|
+ building_scale,
|
|
|
|
+ measuring_unit,
|
|
|
|
+ project_use,
|
|
|
|
+ install_fees,
|
|
|
|
+ building_fees,
|
|
|
|
+ building_percent,
|
|
|
|
+ install_percent,
|
|
|
|
+ unit_fees,
|
|
|
|
+ building_unit_fees,
|
|
|
|
+ install_unit_fees,
|
|
|
|
+ total_fees
|
|
|
|
+ ) VALUES (
|
|
|
|
+ #{id},
|
|
|
|
+ #{createBy.id},
|
|
|
|
+ #{createDate},
|
|
|
|
+ #{updateBy.id},
|
|
|
|
+ #{updateDate},
|
|
|
|
+ #{delFlag},
|
|
|
|
+ #{workContractInfo.id},
|
|
|
|
+ #{projectId},
|
|
|
|
+ #{projectName},
|
|
|
|
+ #{scaleType},
|
|
|
|
+ #{scaleUnit},
|
|
|
|
+ #{scaleQuantity},
|
|
|
|
+ #{area.id},
|
|
|
|
+ #{projectSite},
|
|
|
|
+ #{projectDesc},
|
|
|
|
+ #{remarks},
|
|
|
|
+ #{projectStatus},
|
|
|
|
+ #{company.id},
|
|
|
|
+ #{office.id},
|
|
|
|
+ #{alterProcessId},
|
|
|
|
+ #{province},
|
|
|
|
+ #{city},
|
|
|
|
+ #{county},
|
|
|
|
+ #{projectStructure},
|
|
|
|
+ #{onGroundNum},
|
|
|
|
+ #{underGroundNum},
|
|
|
|
+ #{buildingScale},
|
|
|
|
+ #{measuringUnit},
|
|
|
|
+ #{projectUse},
|
|
|
|
+ #{installFees},
|
|
|
|
+ #{buildingFees},
|
|
|
|
+ #{buildingPercent},
|
|
|
|
+ #{installPercent},
|
|
|
|
+ #{unitFees},
|
|
|
|
+ #{buildingUnitFees},
|
|
|
|
+ #{installUnitFees},
|
|
|
|
+ #{totalFees}
|
|
|
|
+ )
|
|
|
|
+ </insert>
|
|
|
|
+
|
|
|
|
+ <update id="update">
|
|
|
|
+ UPDATE rural_project_records SET
|
|
|
|
+ update_by = #{updateBy.id},
|
|
|
|
+ update_date = #{updateDate},
|
|
|
|
+ contract_id = #{workContractInfo.id},
|
|
|
|
+ project_id = #{projectId},
|
|
|
|
+ project_name = #{projectName},
|
|
|
|
+ scale_type = #{scaleType},
|
|
|
|
+ scale_unit = #{scaleUnit},
|
|
|
|
+ scale_quantity = #{scaleQuantity},
|
|
|
|
+ area_id = #{area.id},
|
|
|
|
+ project_site = #{projectSite},
|
|
|
|
+ project_desc = #{projectDesc},
|
|
|
|
+ remarks = #{remarks},
|
|
|
|
+ status = #{projectStatus},
|
|
|
|
+ company_id = #{company.id},
|
|
|
|
+ office_id = #{office.id},
|
|
|
|
+ alter_process_id = #{alterProcessId},
|
|
|
|
+ province = #{province},
|
|
|
|
+ city = #{city},
|
|
|
|
+ area_name = #{county},
|
|
|
|
+ project_structure = #{projectStructure},
|
|
|
|
+ on_ground_num = #{onGroundNum},
|
|
|
|
+ under_ground_num = #{underGroundNum},
|
|
|
|
+ building_scale = #{buildingScale},
|
|
|
|
+ measuring_unit = #{measuringUnit},
|
|
|
|
+ project_use = #{projectUse},
|
|
|
|
+ install_fees = #{installFees},
|
|
|
|
+ building_fees = #{buildingFees},
|
|
|
|
+ building_percent = #{buildingPercent},
|
|
|
|
+ install_percent = #{installPercent},
|
|
|
|
+ unit_fees = #{unitFees},
|
|
|
|
+ building_unit_fees = #{buildingUnitFees},
|
|
|
|
+ install_unit_fees = #{installUnitFees},
|
|
|
|
+ total_fees = #{totalFees}
|
|
|
|
+ WHERE id = #{id}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ <!--物理删除-->
|
|
|
|
+ <update id="delete">
|
|
|
|
+ UPDATE rural_project_records SET
|
|
|
|
+ del_flag = #{DEL_FLAG_DELETE}
|
|
|
|
+ WHERE id = #{id}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <!--逻辑删除-->
|
|
|
|
+ <update id="deleteByLogic">
|
|
|
|
+ UPDATE rural_project_records SET
|
|
|
|
+ del_flag = #{DEL_FLAG_DELETE}
|
|
|
|
+ WHERE id = #{id}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <!-- 根据实体名称和字段名称和字段值获取唯一记录 -->
|
|
|
|
+ <select id="findUniqueByProperty" resultType="RuralProjectRecords" statementType="STATEMENT">
|
|
|
|
+ select
|
|
|
|
+ <include refid="projectRecordsColumns"/>
|
|
|
|
+ FROM rural_project_records a
|
|
|
|
+ <include refid="projectRecordsJoins"/>
|
|
|
|
+ where ${propertyName} = '${value}'
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <select id="findUseableByProjectId" resultType="RuralProjectRecords">
|
|
|
|
+ select
|
|
|
|
+ <include refid="projectRecordsColumns"/>
|
|
|
|
+ FROM rural_project_records a
|
|
|
|
+ <include refid="projectRecordsJoins"/>
|
|
|
|
+ WHERE a.project_id = #{projectId} and a.status != 7
|
|
|
|
+ </select>
|
|
|
|
+
|
|
|
|
+ <update id="updateProcessIdAndStatus" >
|
|
|
|
+ UPDATE rural_project_records SET
|
|
|
|
+ process_instance_id = #{processInstanceId},
|
|
|
|
+ status = #{projectStatus}
|
|
|
|
+ WHERE id = #{id}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <update id="updateSelectiveById">
|
|
|
|
+ UPDATE rural_project_records
|
|
|
|
+ <set>
|
|
|
|
+ <if test="updateBy!=null and updateBy.id!=null and updateBy.id!=''">
|
|
|
|
+ update_by = #{updateBy.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="updateDate!=null">
|
|
|
|
+ update_date = #{updateDate},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo!=null and workContractInfo.id!=null and workContractInfo.id!=''">
|
|
|
|
+ contract_id = #{workContractInfo.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectId!=null and projectId!=''">
|
|
|
|
+ project_id = #{projectId},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectName!=null and projectName!=''">
|
|
|
|
+ project_name = #{projectName},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleType!=null and scaleType!=''">
|
|
|
|
+ scale_type = #{scaleType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleUnit!=null and scaleUnit!=''">
|
|
|
|
+ scale_unit = #{scaleUnit},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleQuantity !=null and scaleQuantity != ''">
|
|
|
|
+ scale_quantity = #{scaleQuantity},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="area!=null and area.id!=null and area.id!=''">
|
|
|
|
+ area_id = #{area.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectSite!=null and projectSite!=''">
|
|
|
|
+ project_site = #{projectSite},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectDesc!=null and projectDesc!=''">
|
|
|
|
+ project_desc = #{projectDesc},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="remarks!=null and remarks!=''">
|
|
|
|
+ remarks = #{remarks},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectStatus !=null and projectStatus != 0">
|
|
|
|
+ status = #{projectStatus},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="company!=null and company.id!=null and company.id!=''">
|
|
|
|
+ company_id = #{company.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="office!=null and office.id!=null and office.id!=''">
|
|
|
|
+ office_id = #{office.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="alterProcessId!=null and alterProcessId!=''">
|
|
|
|
+ alter_process_id = #{alterProcessId}
|
|
|
|
+ </if>
|
|
|
|
+ </set>
|
|
|
|
+ WHERE id = #{id}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <update id="updateSelectiveByProjectId">
|
|
|
|
+ UPDATE rural_project_records
|
|
|
|
+ <set>
|
|
|
|
+ <if test="updateBy!=null and updateBy.id!=null and updateBy.id!=''">
|
|
|
|
+ update_by = #{updateBy.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="updateDate!=null">
|
|
|
|
+ update_date = #{updateDate},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="workContractInfo!=null and workContractInfo.id!=null and workContractInfo.id!=''">
|
|
|
|
+ contract_id = #{workContractInfo.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectName!=null and projectName!=''">
|
|
|
|
+ project_name = #{projectName},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleType!=null and scaleType!=''">
|
|
|
|
+ scale_type = #{scaleType},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleUnit!=null and scaleUnit!=''">
|
|
|
|
+ scale_unit = #{scaleUnit},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="scaleQuantity !=null and scaleQuantity != ''">
|
|
|
|
+ scale_quantity = #{scaleQuantity},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="area!=null and area.id!=null and area.id!=''">
|
|
|
|
+ area_id = #{area.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectSite!=null and projectSite!=''">
|
|
|
|
+ project_site = #{projectSite},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectDesc!=null and projectDesc!=''">
|
|
|
|
+ project_desc = #{projectDesc},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="remarks!=null and remarks!=''">
|
|
|
|
+ remarks = #{remarks},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="projectStatus !=null and projectStatus != 0">
|
|
|
|
+ status = #{projectStatus},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="company!=null and company.id!=null and company.id!=''">
|
|
|
|
+ company_id = #{company.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="office!=null and office.id!=null and office.id!=''">
|
|
|
|
+ office_id = #{office.id},
|
|
|
|
+ </if>
|
|
|
|
+ <if test="alterProcessId!=null and alterProcessId!=''">
|
|
|
|
+ alter_process_id = #{alterProcessId}
|
|
|
|
+ </if>
|
|
|
|
+ </set>
|
|
|
|
+ WHERE project_id = #{projectId}
|
|
|
|
+ </update>
|
|
|
|
+
|
|
|
|
+ <select id="findPageByRe" resultType="RuralProjectRecords" >
|
|
|
|
+ SELECT
|
|
|
|
+ <include refid="projectRecordsColumns"/>
|
|
|
|
+ ,
|
|
|
|
+ wci.name AS "workContractInfo.name",
|
|
|
|
+ wci.contract_num AS "workContractInfo.contractNum",
|
|
|
|
+ wct.id AS "workContractInfo.client.id",
|
|
|
|
+ wct.name AS "workContractInfo.client.name",
|
|
|
|
+ o.name AS "office.name"
|
|
|
|
+ FROM rural_project_records a
|
|
|
|
+ <include refid="projectRecordsJoins"/>
|
|
|
|
+ LEFT JOIN work_project_user w on a.id = w.project_id
|
|
|
|
+ LEFT JOIN sys_user su on w.user_id = su.id
|
|
|
|
+ LEFT JOIN sys_user u on a.create_by = u.id
|
|
|
|
+ LEFT JOIN work_contract_info wci on a.contract_id = wci.id
|
|
|
|
+ LEFT JOIN work_client_info wct on wci.client_id = wct.id
|
|
|
|
+ LEFT JOIN sys_office s ON s.id = a.company_id
|
|
|
|
+ LEFT JOIN sys_office o ON o.id = a.office_id
|
|
|
|
+ where a.status='5' and a.del_flag='0' and w.user_id=#{userId} and w.del_flag='0'
|
|
|
|
+ and wci.del_flag='0' and (wci.completion_status!='5' or wci.completion_status is null)
|
|
|
|
+ GROUP BY a.id
|
|
|
|
+ <choose>
|
|
|
|
+ <when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
|
|
|
+ ORDER BY ${page.orderBy}
|
|
|
|
+ </when>
|
|
|
|
+ <otherwise>
|
|
|
|
+ ORDER BY a.update_date DESC
|
|
|
|
+ </otherwise>
|
|
|
|
+ </choose>
|
|
|
|
+ </select>
|
|
|
|
+</mapper>
|