SQL 修改
This commit is contained in:
parent
885148352b
commit
392c2a51fc
|
|
@ -66,16 +66,16 @@
|
|||
<select id="list" resultType="com.bonus.bmw.subeva.entity.SubEvaBean" >
|
||||
SELECT
|
||||
bsc."id" as id,
|
||||
bp."NAME" as proName,
|
||||
bs."sub_name" as subName,
|
||||
bsc."contract_name" as contractName,
|
||||
COUNT(bsr."id") AS teamNumber,
|
||||
td."value" AS evaMonth,
|
||||
fcpe."eva_grade" AS evaGrade,
|
||||
fcpe."eva_name" AS evaName,
|
||||
fcpe."eva_date" AS evaDate,
|
||||
fcpe."eva_id" as evaId,
|
||||
fcpe."eva_year" as evaYear
|
||||
MAX(bp."name") as proName,
|
||||
MAX(bs."sub_name") as subName,
|
||||
MAX(bsc."contract_name") as contractName,
|
||||
COUNT(bsr."id") AS teamNumber,
|
||||
MAX(td."value") AS evaMonth,
|
||||
MAX(fcpe."eva_grade") AS evaGrade,
|
||||
MAX(fcpe."eva_name") AS evaName,
|
||||
MAX(fcpe."eva_date") AS evaDate,
|
||||
MAX(fcpe."eva_id") as evaId,
|
||||
MAX(fcpe."eva_year") as evaYear
|
||||
FROM
|
||||
"ynrealname"."bm_sub_contract" bsc
|
||||
LEFT JOIN "ynrealname"."bm_project" bp on bp."id" = bsc."pro_id" and bp."is_active" = '1'
|
||||
|
|
@ -95,8 +95,7 @@
|
|||
|
||||
</if>
|
||||
GROUP BY
|
||||
bsc."id", bp."NAME", bs."sub_name", bsc."contract_name", td."value",
|
||||
fcpe."eva_grade", fcpe."eva_name", fcpe."eva_date", fcpe."eva_id", fcpe."eva_year"
|
||||
bsc."id"
|
||||
<if test="offset != null and offset >= 0 and limit != null and limit >= 0">
|
||||
OFFSET #{offset} ROWS FETCH NEXT #{limit} ROWS ONLY
|
||||
</if>
|
||||
|
|
|
|||
|
|
@ -3,19 +3,19 @@
|
|||
<mapper namespace="com.bonus.bmw.subeva.dao.SubProjectDao">
|
||||
<select id="getList" resultType="com.bonus.bmw.subeva.entity.SubEvaBean">
|
||||
SELECT
|
||||
fcpe."id" as uuid,
|
||||
MAX(fcpe."id") as uuid,
|
||||
bsc."id" as id,
|
||||
bsc."contract_money" AS contractMoney,
|
||||
bp."NAME" as proName,
|
||||
bs."sub_name" as subName,
|
||||
bsc."contract_name" as contractName,
|
||||
su."username" AS sitePersonInCharge,
|
||||
td."value" AS evaMonth,
|
||||
fcpe."eva_score" AS evaGrade,
|
||||
fcpe."eva_name" AS evaName,
|
||||
fcpe."eva_date" AS evaDate,
|
||||
fcpe."eva_year" as evaYear,
|
||||
fcpe."eva_id" as evaId
|
||||
MAX(bsc."contract_money") AS contractMoney,
|
||||
MAX(bp."name") as proName,
|
||||
MAX(bs."sub_name") as subName,
|
||||
MAX(bsc."contract_name") as contractName,
|
||||
MAX(su."username") AS sitePersonInCharge,
|
||||
MAX(td."value") AS evaMonth,
|
||||
MAX(fcpe."eva_score") AS evaGrade,
|
||||
MAX(fcpe."eva_name") AS evaName,
|
||||
MAX(fcpe."eva_date") AS evaDate,
|
||||
MAX(fcpe."eva_year") as evaYear,
|
||||
MAX(fcpe."eva_id") as evaId
|
||||
FROM
|
||||
"ynrealname"."bm_sub_contract" bsc
|
||||
LEFT JOIN "ynrealname"."bm_project" bp on bp."id" = bsc."pro_id" and bp."is_active" = '1'
|
||||
|
|
@ -119,13 +119,13 @@
|
|||
</select>
|
||||
<select id="getRankList" resultType="com.bonus.bmw.subeva.entity.SubEvaBean">
|
||||
SELECT
|
||||
fsp."id" as uuid,
|
||||
bs."id" as subId,
|
||||
MAX(fsp."id") as uuid,
|
||||
MAX(bs."id") as subId,
|
||||
bs."sub_name" AS subName,
|
||||
bsc."id" AS cid,
|
||||
bsc."contract_name",
|
||||
fsp."eva_month" as evaMonth,
|
||||
fsp."eva_score",
|
||||
MAX(bsc."id") AS cid,
|
||||
MAX(bsc."contract_name") AS contractName,
|
||||
MAX(fsp."eva_month") as evaMonth,
|
||||
MAX(fsp."eva_score") AS evaScore,
|
||||
COUNT(bs."sub_name") as proNum,
|
||||
SUM(fsp."eva_score") / COUNT(bs."sub_name") as evaScore,
|
||||
case WHEN ROUND(SUM(fsp."eva_score") / COUNT(bs."sub_name"),2) > 90 then 1
|
||||
|
|
|
|||
|
|
@ -3,26 +3,36 @@
|
|||
<mapper namespace="com.bonus.bmw.subeva.dao.SubTeamDao">
|
||||
|
||||
<insert id="putTeamEvaList">
|
||||
MERGE INTO "ynrealname"."bm_sub_team_eva" ("level","team_id","user_id")
|
||||
USING (SELECT #{user.evaLevel} as "level", #{user.teamId} as "team_id", #{userId} as "user_id" FROM DUAL) src
|
||||
ON ("level" = src."level" AND "team_id" = src."team_id")
|
||||
MERGE INTO "ynrealname"."bm_sub_team_eva" tgt
|
||||
USING (
|
||||
<foreach collection="teamEvaBeanList" item="user" separator=" UNION ALL ">
|
||||
SELECT #{user.evaLevel} AS "level", #{user.teamId} AS "team_id", #{userId} AS "user_id" FROM DUAL
|
||||
</foreach>
|
||||
) src
|
||||
ON (tgt."team_id" = src."team_id")
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET "user_id" = src."user_id"
|
||||
UPDATE SET tgt."level" = src."level", tgt."user_id" = src."user_id"
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT ("level","team_id","user_id") VALUES (src."level", src."team_id", src."user_id")
|
||||
</insert>
|
||||
|
||||
<select id="list" resultType="com.bonus.bmw.subeva.entity.SubTeamEvaBean">
|
||||
SELECT
|
||||
bsc."id",bsc."pro_id" AS proId,bp."name" AS proName,bs."sub_name" AS subName,bsc."sub_id" AS subId,
|
||||
bsc."contract_name" AS contractName,bsc."update_time" AS conFinishTime,su."username" AS corePersonName,
|
||||
bsc."id" AS id,
|
||||
MAX(bsc."pro_id") AS proId,
|
||||
MAX(bp."name") AS proName,
|
||||
MAX(bs."sub_name") AS subName,
|
||||
MAX(bsc."sub_id") AS subId,
|
||||
MAX(bsc."contract_name") AS contractName,
|
||||
MAX(bsc."update_time") AS conFinishTime,
|
||||
MAX(su."username") AS corePersonName,
|
||||
COUNT(DISTINCT bsr1."id") AS teamNumber,
|
||||
COUNT(DISTINCT bste."team_id") AS evaTeamNumber,
|
||||
COUNT(DISTINCT CASE WHEN bste."level" = '1' THEN TRUE ELSE NULL END) AS aLevelNumber,
|
||||
COUNT(DISTINCT CASE WHEN bste."level" = '2' THEN TRUE ELSE NULL END) AS bLevelNumber,
|
||||
COUNT(DISTINCT CASE WHEN bste."level" = '3' THEN TRUE ELSE NULL END) AS cLevelNumber,
|
||||
COUNT(DISTINCT CASE WHEN bste."level" = '4' THEN TRUE ELSE NULL END) AS dLevelNumber,
|
||||
CASE WHEN bste."create_time" IS NULL THEN NULL ELSE bste."create_time" END AS conEvaTime
|
||||
SUM(CASE WHEN bste."level" = '1' THEN 1 ELSE 0 END) AS aLevelNumber,
|
||||
SUM(CASE WHEN bste."level" = '2' THEN 1 ELSE 0 END) AS bLevelNumber,
|
||||
SUM(CASE WHEN bste."level" = '3' THEN 1 ELSE 0 END) AS cLevelNumber,
|
||||
SUM(CASE WHEN bste."level" = '4' THEN 1 ELSE 0 END) AS dLevelNumber,
|
||||
CASE WHEN MAX(bste."create_time") IS NULL THEN NULL ELSE MAX(bste."create_time") END AS conEvaTime
|
||||
FROM
|
||||
"ynrealname"."bm_sub_contract" bsc
|
||||
LEFT JOIN "ynrealname"."bm_project" bp ON bsc."pro_id" = bp."id"
|
||||
|
|
@ -32,7 +42,17 @@
|
|||
LEFT JOIN "ynrealname"."bm_sub_team_eva" bste ON bsr1."v" = bste."team_id"
|
||||
LEFT JOIN "ynrealname"."sys_user" su ON bsr."value" = su."id"
|
||||
WHERE bsc."is_complete" = '1'
|
||||
GROUP BY bsc."id"
|
||||
<if test="params != null and params != ''">
|
||||
<if test="params.proId != null and params.proId != ''">
|
||||
AND bp."id" =#{params.proId}
|
||||
</if>
|
||||
<if test="params.subName != null and params.subName != ''">
|
||||
AND bs."sub_name" LIKE concat('%', #{params.subName}, '%')
|
||||
</if>
|
||||
|
||||
</if>
|
||||
GROUP BY
|
||||
bsc."id"
|
||||
<if test="offset != null and offset >= 0 and limit != null and limit >= 0">
|
||||
OFFSET #{offset} ROWS FETCH NEXT #{limit} ROWS ONLY
|
||||
</if>
|
||||
|
|
@ -43,13 +63,24 @@
|
|||
count(bsc."id")
|
||||
FROM
|
||||
"ynrealname"."bm_sub_contract" bsc
|
||||
LEFT JOIN "ynrealname"."bm_project" bp ON bsc."pro_id" = bp."id"
|
||||
LEFT JOIN "ynrealname"."bm_subcontractor" bs ON bsc."sub_id" = bs."id"
|
||||
WHERE bsc."is_complete" = '1'
|
||||
<if test="params != null and params != ''">
|
||||
<if test="params.proId != null and params.proId != ''">
|
||||
AND bp."id" =#{params.proId}
|
||||
</if>
|
||||
<if test="params.subName != null and params.subName != ''">
|
||||
AND bs."sub_name" LIKE concat('%', #{params.subName}, '%')
|
||||
</if>
|
||||
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="getTeamEvaById" resultType="com.bonus.bmw.subeva.entity.SubTeamEvaBean">
|
||||
SELECT
|
||||
bsr."id",bsr."v" AS teamId,bst."team_name" AS teamName,bste."level" AS evaLevel,
|
||||
CONCAT(bw."name",'-',bw."phone") AS corePersonName,su."username" AS userName,bste."create_time" AS conEvaTime
|
||||
bw."name" || '-' || bw."phone" AS corePersonName,su."username" AS userName,bste."create_time" AS conEvaTime
|
||||
FROM
|
||||
"ynrealname"."bm_sub_relation" bsr
|
||||
LEFT JOIN "ynrealname"."bm_sub_team" bst ON bst."id" = bsr."v"
|
||||
|
|
|
|||
|
|
@ -288,7 +288,7 @@ function exportData(id,proName,subName,contractName,startDate,stopDate) {
|
|||
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
||||
});
|
||||
window.location.href = ctxPath + "/SubProjectEvaluate/exportExamList?contractName=" + contractName
|
||||
+ "&proName=" + proName + "&id=" + id + "&subName=" + subName + "&stopDate=" + stopDate + "&exportType=1";
|
||||
+ "&proName=" + proName + "&id=" + id + "&subName=" + subName + "&stopDate=" + stopDate + "&exportType=1" + "&Authorization=" + token;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ $(function () {
|
|||
var layer = layui.layer;
|
||||
form = layui.form;
|
||||
laydate = layui.laydate;
|
||||
getProjectSelect();
|
||||
form.render();
|
||||
setTimeout(function () {
|
||||
init();
|
||||
|
|
|
|||
Loading…
Reference in New Issue