123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498 |
- <?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="AnnualPlanCompMapper">
- <select id="getPlanCompList" parameterType="pd" resultType="pd">
- select *
- from
- annual_plan_comp_list
- where
- COMPANY_NAME=#{COMPANY}
- AND STATUS='审批通过'
- order by YEAR
- </select>
-
- <select id="getPlanCompByCompanyAndYear" parameterType="pd" resultType="pd">
- select * from annual_plan_comp_list
- where YEAR = #{YEAR} AND COMPANY_NAME = #{COMPANY}
- </select>
-
- <!-- 删除年度计划-->
- <delete id="delAnnualCompPlan" parameterType="pd">
- delete from annual_plan_comp_list
- where
- ID = #{ANNUALPLAN_ID}
- </delete>
-
- <select id="getdata" parameterType="pd" resultType="pd">
- select roadinfo.*,planinfo.* from(
- select cast(SHOW_NUM as SIGNED INTEGER) as no,COMPANY_ID,COMPANY,ROAD_ID,ROAD,numstr as num,flag from (
- select
- @f:= case when @company_id2=c.company_id then '0' else '1' end as flag,
- @company_id2:=c.company_id1 as company_id2,
- c.*,cast(num as char) as numstr
- from (
- SELECT
- @r:= case when @company_id=a.company_id then @r+1 else 1 end num,
- @company_id:=a.company_id as company_id1,
- a.*
- from(
- select p.SHOW_NUM SHOW_NUM,p.name as COMPANY,p.bianma as COMPANY_ID,roads.name as ROAD,roads.bianma as ROAD_ID
- from ${table} roads
- left join ${table} p
- on p.DEPARTMENT_ID = roads.PARENT_ID
- where roads.PARENT_ID <> '0'
- order by
- cast(p.bianma AS SIGNED INTEGER) ASC,
- cast(roads.bianma AS SIGNED INTEGER) ASC
- )a ,(select @r:=0 ,@company_id:='',@c:=1) b
- order by company_id,num desc
- )c ,(select @f:=0,@company_id2:='') d
- )e
- ) roadinfo
- left join (
- select f.* from(
- select * from ${type} where year = #{YEAR}
- )f
- LEFT JOIN annual_plan_list e
- ON f.YEAR = e.YEAR AND f.PCOMPANY_ID = e.COMPANY_ID
- WHERE
- e.STATUS = '审批通过' OR e.STATUS = '待审批'
- )planinfo on roadinfo.company_id = planinfo.pcompany_id and roadinfo.road_id = planinfo.proad_id
- <!-- order by company_id,road_id -->
- order by NO ASC,(road_id+0) ASC
- </select>
-
-
- <!-- 年度计划汇总导出 -->
- <select id="gethzdata" parameterType="pd" resultType="pd">
- select roadinfo.*,planinfo.* from(
- select cast(SHOW_NUM as SIGNED INTEGER) as no,COMPANY_ID,COMPANY,ROAD_ID,ROAD,numstr ,rnumstr,flag,rflag from (
- select
- @f:= case when @company_id2=c.company_id then '0' else '1' end as flag,
- @rf := CASE WHEN @company_id2 = c.company_id AND @road_id2 = c.road_id THEN '0' ELSE '1'END AS rflag,
- @company_id2:=c.company_id1 as company_id2,
- c.*,cast(num as char) as numstr,
- cast(rnum AS CHAR) AS rnumstr
- from (
- SELECT
- @r:= case when @company_id=a.company_id then @r+1 else 1 end num,
- @rr := CASE WHEN @company_id = a.company_id AND @road_id = a.road_id THEN @rr + 1 ELSE 1 END rnum,
- @company_id:=a.company_id as company_id1,
- a.*
- from(
- select p.SHOW_NUM SHOW_NUM,p.name as COMPANY,p.bianma as COMPANY_ID,roads.name as ROAD,roads.bianma as ROAD_ID
- from ${table} roads
- left join ${table} p
- on p.DEPARTMENT_ID = roads.PARENT_ID
- where roads.PARENT_ID <> '0'
- order by
- cast(p.bianma AS SIGNED INTEGER) ASC,
- cast(roads.bianma AS SIGNED INTEGER) ASC
- )a ,(select @r:=0 ,@company_id:='',@c:=1,@rr := 0 ,@road_id := '') b
- order by company_id,num desc
- )c ,(select @f:=0,@company_id2:='',@rf := 0 ,@road_id2 := '') d
- )e
- ) roadinfo
- left join (
- select f.* from(
- select * from ${type} where year = #{YEAR}
- )f
- LEFT JOIN annual_plan_list e
- ON f.YEAR = e.YEAR AND f.PCOMPANY_ID = e.COMPANY_ID
- WHERE
- e.STATUS = '审批通过' OR e.STATUS = '待审批'
- )planinfo on roadinfo.company_id = planinfo.pcompany_id and roadinfo.road_id = planinfo.proad_id
- <!-- order by company_id,road_id -->
- order by NO ASC,(road_id+0) ASC
- </select>
-
- <!-- 年度完成汇总导出 -->
- <select id="getcompletehzdata" parameterType="pd" resultType="pd">
- select roadinfo.*,planinfo.* from(
- select cast(SHOW_NUM as SIGNED INTEGER) as no,COMPANY_ID,COMPANY,ROAD_ID,ROAD,numstr,rnumstr,flag,rflag from (
- select
- @f:= case when @company_id2=c.company_id then '0' else '1' end as flag,
- @rf := CASE WHEN @company_id2 = c.company_id AND @road_id2 = c.road_id THEN '0' ELSE '1'END AS rflag,
- @company_id2:=c.company_id1 as company_id2,
- c.*,
- cast(num as char) as numstr,
- cast(rnum AS CHAR) AS rnumstr
- from (
- SELECT
- @r:= case when @company_id=a.company_id then @r+1 else 1 end num,
- @rr := CASE WHEN @company_id = a.company_id AND @road_id = a.road_id THEN @rr + 1 ELSE 1 END rnum,
- @company_id:=a.company_id as company_id1,
- a.*
- from(
- select p.SHOW_NUM SHOW_NUM,p.name as COMPANY,p.bianma as COMPANY_ID,roads.name as ROAD,roads.bianma as ROAD_ID
- from ${table} roads
- left join ${table} p
- on p.DEPARTMENT_ID = roads.PARENT_ID
- where roads.PARENT_ID <> '0'
- order by
- cast(p.bianma AS SIGNED INTEGER) ASC,
- cast(roads.bianma AS SIGNED INTEGER) ASC
- )a ,(select @r:=0 ,@company_id:='',@c:=1,@rr := 0 ,@road_id := '') b
- order by company_id,num desc
- )c ,(select @f:=0,@company_id2:='',@rf := 0 ,@road_id2 := '') d
- )e
- ) roadinfo
- left join (
- select f.* from(
- select * from ${type} where year = #{YEAR}
- )f
- LEFT JOIN annual_plan_list e
- ON f.YEAR = e.YEAR AND f.PCOMPANY_ID = e.COMPANY_ID
- WHERE
- e.STATUS = '审批通过' OR e.STATUS = '待审批'
- )planinfo on roadinfo.company_id = planinfo.pcompany_id and roadinfo.road_id = planinfo.proad_id
- <!-- order by company_id,road_id -->
- order by NO ASC,(road_id+0) ASC
- </select>
-
- <select id="getDailydata" parameterType="pd" resultType="pd">
- select roadinfo.*,planinfo.* from(
- select cast(SHOW_NUM as SIGNED INTEGER) as no,COMPANY_ID,COMPANY,ROAD_ID,ROAD,numstr as num,flag from (
- select
- @f:= case when @company_id2=c.company_id then '0' else '1' end as flag,
- @company_id2:=c.company_id1 as company_id2,
- c.*,cast(num as char) as numstr
- from (
- SELECT
- @r:= case when @company_id=a.company_id then @r+1 else 1 end num,
- @company_id:=a.company_id as company_id1,
- a.*
- from(
- select p.SHOW_NUM SHOW_NUM,p.name as COMPANY,p.bianma as COMPANY_ID,roads.name as ROAD,roads.bianma as ROAD_ID
- from ${table} roads
- left join ${table} p
- on p.DEPARTMENT_ID = roads.PARENT_ID
- where roads.PARENT_ID <> '0'
- order by
- cast(p.bianma AS SIGNED INTEGER) ASC,
- cast(roads.bianma AS SIGNED INTEGER) ASC
- )a ,(select @r:=0 ,@company_id:='',@c:=1) b
- order by company_id,num desc
- )c ,(select @f:=0,@company_id2:='') d
- )e
- ) roadinfo left join (
- select K.*,km_info.DESIGN_KM as DESIGN_KM, km_info.CARE_KM as CARE_KM from(
- select f.* from(
- select * from highway_daily_plan_statable where year = #{YEAR}
- )f
- left join annual_plan_list e
- ON f.YEAR = e.YEAR AND f.COMPANY_ID = e.COMPANY_ID
- WHERE
- e.STATUS = '审批通过' OR e.STATUS = '待审批'
- )k left join km_info
- on k.COMPANY_ID = km_info.COMPANY_ID AND k.ROAD_ID = km_info.ROAD_ID
- )planinfo on roadinfo.company_id = planinfo.company_id and roadinfo.road_id = planinfo.road_id
- <!-- order by no,roadinfo.company_id,roadinfo.road_id -->
- order by NO ASC,(roadinfo.road_id+0) ASC
- </select>
-
- <select id="getDailyCompData" parameterType="pd" resultType="pd">
- select roadinfo.*,planinfo.* from(
- select cast(SHOW_NUM as SIGNED INTEGER) as no,COMPANY_ID,COMPANY,ROAD_ID,ROAD,numstr as num,flag from (
- select
- @f:= case when @company_id2=c.company_id then '0' else '1' end as flag,
- @company_id2:=c.company_id1 as company_id2,
- c.*,cast(num as char) as numstr
- from (
- SELECT
- @r:= case when @company_id=a.company_id then @r+1 else 1 end num,
- @company_id:=a.company_id as company_id1,
- a.*
- from(
- select p.SHOW_NUM SHOW_NUM,p.name as COMPANY,p.bianma as COMPANY_ID,roads.name as ROAD,roads.bianma as ROAD_ID
- from ${table} roads
- left join ${table} p
- on p.DEPARTMENT_ID = roads.PARENT_ID
- where roads.PARENT_ID <> '0'
- order by
- cast(p.bianma AS SIGNED INTEGER) ASC,
- cast(roads.bianma AS SIGNED INTEGER) ASC
- )a ,(select @r:=0 ,@company_id:='',@c:=1) b
- order by company_id,num desc
- )c ,(select @f:=0,@company_id2:='') d
- )e
- ) roadinfo left join (
- select k.* from(
- select f.* from(
- select * from annual_daily_comp_sumtable_view where year = #{YEAR}
- )f
- left join annual_plan_list e
- ON f.YEAR = e.YEAR AND f.PCOMPANY_ID = e.COMPANY_ID
- WHERE
- e.STATUS = '审批通过' OR e.STATUS = '待审批'
- )k
- )planinfo on roadinfo.company_id = planinfo.pcompany_id and roadinfo.road_id = planinfo.proad_id
- <!-- order by no,roadinfo.company_id,roadinfo.road_id -->
- order by (roadinfo.no+0) ASC,(roadinfo.road_id+0) ASC
- </select>
-
- <select id="getProjectData" parameterType="pd" resultType="pd">
- select oa.SHOW_NUM,e.* from(
- select c.*,
- @f:= case when @company_id2=c.company_id then '0' else '1' end as flag,
- @company_id2:=c.company_id1 as company_id2,
- @rf:= case when @company_id2=c.company_id and @road_id2=c.road_id then '0' else '1' end as rflag,
- @road_id2:=c.road_id1 as road_id2,
- cast(num as char) as numstr,
- cast(rnum as char) as rnumstr
- from (
- SELECT
- @r:= case when @company_id=a.company_id then @r+1 else 1 end num,
- @company_id:=a.company_id as company_id1,
- @rr:= case when @company_id=a.company_id and @road_id=a.road_id then @rr+1 else 1 end rnum,
- @road_id:=a.road_id as road_id1,
- a.*
- from (
- select * from ${type}
- where year = #{YEAR}
- order by company_id,road_id,PROJECT_NAME
- )a,(select @r:=0 ,@company_id:='',@rr:=0 ,@road_id:='') b
- order by company_id,num desc,road_id,rnum desc
- )c ,(select @f:=0,@company_id2:='',@rf:=0,@road_id2:='') d
- )e
- LEFT JOIN ${table} oa on oa.BIANMA = company_id
- order by (oa.SHOW_NUM + 0)ASC,(company_id+0) ASC,num,(road_id+0) ASC,rnum
- </select>
- <select id="getFeesTotalCost" parameterType="String" resultType="String">
- select SUM(TOTAL_COST) as TOTAL_COST
- from highway_reserve_fees_sumtable_total
- where YEAR = #{year}
- </select>
-
- <select id="getDettData" parameterType="pd" resultType="pd">
- select a.*
- from
- ${TABLENAME} a
- left join annual_plan_list b
- on a.YEAR = b.YEAR AND a.COMPANY_ID=b.COMPANY_ID
- LEFT JOIN ${table} oa on oa.BIANMA = a.COMPANY_ID
- where
- a.YEAR=#{YEAR} AND (b.STATUS='审批通过' OR b.STATUS = '待审批')
- ORDER BY (oa.SHOW_NUM+ 0),(a.COMPANY_ID+0),(a.ROAD_ID+0),
- <if test="TABLENAME != 'highway_special_comp_sumtable_view' and TABLENAME != 'highway_reserve_fees_sumtable_view' and TABLENAME != 'highway_special_comp_sumtable_view2' "><!-- 专项养护明细表和预备费 -->
- a.PROJECT_TYPE,
- </if>
- a.PROJECT_NAME
- </select>
-
- <select id="getTotalFee" parameterType="pd" resultType="pd">
- select *
- from
- highway_reserve_fees_sumtable_total
- where
- YEAR=#{YEAR}
- </select>
-
- <select id="getSumTotalFee" parameterType="pd" resultType="String">
- select SUM(IFNULL(AUDIT_FEE, TOTAL_COST)) as TOTAL_COST
- from
- highway_reserve_fees_sumtable_total
- where
- YEAR=#{YEAR}
- <if test="COMPANY_ID != null">
- AND COMPANY_ID = #{COMPANY_ID}
- </if>
- <if test="COMPANY != null">
- AND COMPANY = #{COMPANY}
- </if>
- </select>
-
- <select id="getnPlanList" parameterType="pd" resultType="pd">
- select name AS COMPANY_NAME, BIANMA AS COMPANY_ID
- from ${table} where parent_id = '0' and name not in
- (
- select company_name from annual_plan_list where status in ('待审批','审批通过') and year = #{YEAR}
- )
- ORDER BY (COMPANY_ID+0) ASC
- </select>
-
- <select id="getPlanList" parameterType="pd" resultType="pd">
- select * from(
- select date_format(CTIME,'%Y-%m-%d') as 'CTIME', date_format(MTIME,'%Y-%m-%d') as 'MTIME', COMPANY_ID, COMPANY_NAME,YEAR,STATUS
- from
- annual_plan_list
- where
- YEAR = #{YEAR}
- ) as a
- where a.STATUS = '待审批' OR a.STATUS = '审批通过'
- ORDER BY (COMPANY_ID+0) ASC
- </select>
-
- <update id="changePlanStatus" parameterType="pd">
- update ${TABLE_NAME} set
- STATUS = CASE WHEN STATUS='待审批' THEN #{STATUS}
- ELSE
- STATUS
- END
- where YEAR = #{YEAR} AND COMPANY_ID = #{COMPANY_ID}
- </update>
-
- <update id="changeCompPlanStatus" parameterType="pd">
- update annual_plan_comp_list set
- STATUS = #{STATUS}
- where YEAR = #{YEAR} AND COMPANY_ID = #{COMPANY_ID}
- </update>
-
- <update id="updateAuditFee" parameterType="pd">
- update ${TABLE_NAME} set
- <if test="AUDIT_FEE != ''">
- AUDIT_FEE = #{AUDIT_FEE}
- <if test="AUDIT_MAKER != ''">
- , AUDIT_MAKER=#{AUDIT_MAKER}
- </if>
- <if test="AUDIT_MAKER == ''">
- , AUDIT_MAKER= null
- </if>
- </if>
- <if test="AUDIT_FEE == ''">
- AUDIT_FEE = null
- <if test="AUDIT_MAKER != ''">
- , AUDIT_MAKER=#{AUDIT_MAKER}
- </if>
- <if test="AUDIT_MAKER == ''">
- , AUDIT_MAKER= null
- </if>
- </if>
- where YEAR = #{YEAR} AND COMPANY_ID = #{COMPANY_ID} AND ROAD_ID=#{ROAD_ID} AND PROJECT_NAME=#{PROJECT_NAME}
- </update>
-
- <select id="getSPTime" parameterType="pd" resultType="String">
- select SPTIME
- from SPTIME
- WHERE YEAR=#{YEAR}
- </select>
-
- <update id="updateSPTime" parameterType="pd">
- update SPTIME
- set SPTIME=#{TIME}
- WHERE YEAR=#{YEAR}
- </update>
-
- <insert id="insertSPTime" parameterType="pd">
- insert SPTIME
- (YEAR,SPTIME)
- VALUES
- (#{YEAR},#{TIME})
- </insert>
-
- <select id="getBaseInfoData" parameterType="pd" resultType="pd">
- select roadinfo.*,planinfo.*,k.DESIGN_KM,k.CARE_KM from(
- select cast(SHOW_NUM as SIGNED INTEGER) as no,COMPANY_ID as PCOMPANY_ID,COMPANY,ROAD_ID as PROAD_ID,ROAD,
- numstr ,rnumstr,flag,rflag from (
- select
- @f:= case when @company_id2=c.company_id then '0' else '1' end as flag,
- @rf := CASE WHEN @company_id2 = c.company_id AND @road_id2 = c.road_id THEN '0' ELSE '1'END AS rflag,
- @company_id2:=c.company_id1 as company_id2,
- c.*,cast(num as char) as numstr,
- cast(rnum AS CHAR) AS rnumstr
- from (
- SELECT
- @r:= case when @company_id=a.company_id then @r+1 else 1 end num,
- @rr := CASE WHEN @company_id = a.company_id AND @road_id = a.road_id THEN @rr + 1 ELSE 1 END rnum,
- @company_id:=a.company_id as company_id1,
- a.*
- from(
- select p.SHOW_NUM SHOW_NUM,p.name as COMPANY,p.bianma as COMPANY_ID,roads.name as ROAD,roads.bianma as ROAD_ID
- from ${table} roads
- left join ${table} p
- on p.DEPARTMENT_ID = roads.PARENT_ID
- where roads.PARENT_ID <> '0'
- order by
- cast(p.bianma AS SIGNED INTEGER) ASC,
- cast(roads.bianma AS SIGNED INTEGER) ASC
- )a ,(select @r:=0 ,@company_id:='',@c:=1,@rr := 0 ,@road_id := '') b
- order by company_id,num desc
- )c ,(select @f:=0,@company_id2:='',@rf := 0 ,@road_id2 := '') d
- )e
- ) roadinfo
- left join (
- select * from ${type} where year = #{YEAR}
- )planinfo on roadinfo.pcompany_id = planinfo.company_id and roadinfo.proad_id = planinfo.road_id
- left join km_info k on roadinfo.pcompany_id = k.company_id and roadinfo.proad_id = k.road_id
- order by (no+0) ASC,(pcompany_id+0) ASC,(proad_id+0) ASC
- </select>
-
- <!-- 基本信息导出 -->
- <select id="getBaseInfoExportData" parameterType="pd" resultType="pd">
- select roadinfo.*,planinfo.*,k.DESIGN_KM,k.CARE_KM from(
- select cast(SHOW_NUM as SIGNED INTEGER) as no,COMPANY_ID as PCOMPANY_ID,COMPANY,ROAD_ID as PROAD_ID,ROAD,numstr ,rnumstr,flag,rflag from (
- select
- @f:= case when @company_id2=c.company_id then '0' else '1' end as flag,
- @company_id2:=c.company_id1 as company_id2,
- c.*,cast(num as char) as numstr,
- cast(rnum AS CHAR) AS rnumstr
- from (
- SELECT
- @r:= case when @company_id=a.company_id then @r+1 else 1 end num,
- @rr := CASE WHEN @company_id = a.company_id AND @road_id = a.road_id THEN @rr + 1 ELSE 1 END rnum,
- @company_id:=a.company_id as company_id1,
- a.*
- from(
- select p.SHOW_NUM SHOW_NUM,p.name as COMPANY,p.bianma as COMPANY_ID,roads.name as ROAD,roads.bianma as ROAD_ID
- from oa_department roads
- left join oa_department p
- on p.DEPARTMENT_ID = roads.PARENT_ID
- where roads.PARENT_ID <> '0'
- order by
- cast(p.bianma AS SIGNED INTEGER) ASC,
- cast(roads.bianma AS SIGNED INTEGER) ASC
- )a ,(select @r:=0 ,@company_id:='',@c:=1,@rr := 0 ,@road_id := '') b
- order by company_id,num desc
- )c ,(select @f:=0,@company_id2:='',@rf := 0 ,@road_id2 := '') d
- )e
- ) roadinfo
- left join (
- select * from ${type} where year = #{YEAR}
- )planinfo on roadinfo.pcompany_id = planinfo.company_id and roadinfo.proad_id = planinfo.road_id
- left join km_info k on roadinfo.pcompany_id = k.company_id and roadinfo.proad_id = k.road_id
- order by NO ASC,(pcompany_id+0) ASC,(proad_id+0) ASC
- </select>
-
- <select id="getCompanyRoadList" parameterType="pd" resultType="pd">
- select * from ${table} ORDER BY BIANMA ASC
- </select>
-
- <!--批量更新养护计划汇总的审批费用 -->
- <insert id="saveOrUpdatBatchAuditFee" parameterType="pd">
- INSERT INTO highway_reserve_fees_sumtable_total (
- COMPANY,
- COMPANY_ID,
- YEAR,
- ROAD,
- ROAD_ID,
- AUDIT_FEE
- )
- VALUES
- <foreach collection ="list" item="item" separator =",">
- (
- #{item.COMPANY},
- #{item.COMPANY_ID},
- #{item.YEAR},
- #{item.ROAD},
- #{item.ROAD_ID},
- #{item.AUDIT_FEE,jdbcType=DECIMAL}
- )
- </foreach >
- ON DUPLICATE KEY UPDATE AUDIT_FEE = values(AUDIT_FEE)
- </insert>
- <update id="editTableRecod" parameterType="pd">
- update highway_daily_plan_statable set
- <foreach item="key" index="index" collection="KEYARRAY"
- separator=",">
- ${key} =
- <foreach item="value" index="index2" collection="VALUEARRAY">
- <if test="index == index2">
- #{value}
- </if>
- </foreach>
- </foreach>
- where YEAR = #{YEAR} AND COMPANY_ID = #{COMPANY_ID} AND ROAD_ID =
- #{ROAD_ID}
- </update>
- </mapper>
|