SQL 修改
This commit is contained in:
parent
7cbc1b9341
commit
bcb3982b2e
|
|
@ -15,6 +15,7 @@ import com.bonus.common.security.utils.SecurityUtils;
|
|||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.ServletOutputStream;
|
||||
|
|
@ -33,6 +34,7 @@ import java.util.zip.ZipOutputStream;
|
|||
* @author zys
|
||||
*/
|
||||
@Service("salaryStatService")
|
||||
@Slf4j
|
||||
public class SalaryStatServiceImpl implements SalaryStatService{
|
||||
|
||||
@Resource(name = "salaryStatDao")
|
||||
|
|
|
|||
|
|
@ -270,101 +270,107 @@
|
|||
<select id="getSubContractIdByIdNumber" resultType="java.lang.String">
|
||||
SELECT
|
||||
CASE
|
||||
WHEN count(*) = 0 THEN (
|
||||
SELECT
|
||||
CASE
|
||||
WHEN count(*) = 0 THEN (
|
||||
SELECT
|
||||
bsr.sub_contract_id
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
id_number,
|
||||
team_id
|
||||
FROM
|
||||
"ynrealname"."bm_worker_ein_history"
|
||||
WHERE
|
||||
id_number = #{idNumber}
|
||||
AND exit_time IS NULL
|
||||
AND team_id != 0
|
||||
AND is_active = 1
|
||||
) a
|
||||
LEFT JOIN "ynrealname"."bm_sub_relation" bsr ON
|
||||
bsr.value = a.team_id
|
||||
WHERE
|
||||
bsr.is_active = 1
|
||||
ORDER BY
|
||||
bsr.id DESC OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY
|
||||
)
|
||||
ELSE sub_contract_id
|
||||
END
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
bsr.sub_contract_id
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
id_number,
|
||||
team_id
|
||||
FROM
|
||||
"ynrealname"."bm_worker_ein_history"
|
||||
WHERE
|
||||
id_number = #{idNumber}
|
||||
AND team_id != 0
|
||||
AND TO_DATE(#{currentDay}, 'YYYY-MM-DD') BETWEEN TRUNC(ein_time)
|
||||
AND TRUNC(exit_time)
|
||||
AND is_active = 1
|
||||
) a
|
||||
LEFT JOIN "ynrealname"."bm_sub_relation" bsr ON
|
||||
bsr.value = a.team_id
|
||||
ORDER BY
|
||||
bsr.id DESC OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY) a
|
||||
WHEN (SELECT COUNT(*) FROM (
|
||||
SELECT "sub_contract_id"
|
||||
FROM (
|
||||
SELECT "sub_contract_id", "value", "create_time","v"
|
||||
FROM "ynrealname"."bm_sub_relation"
|
||||
WHERE "type" = 3
|
||||
AND TO_DATE(#{currentDay}, 'YYYY-MM-DD') BETWEEN TRUNC("create_time") AND TRUNC("update_time")
|
||||
) bsr
|
||||
LEFT JOIN (
|
||||
SELECT "id_number", "team_id"
|
||||
FROM "ynrealname"."bm_worker_ein_history"
|
||||
WHERE "id_number" = #{idNumber}
|
||||
AND "exit_time" IS NULL
|
||||
AND "team_id" != 0
|
||||
AND "is_active" = '1'
|
||||
) bweh ON bweh."team_id" = bsr."v"
|
||||
LEFT JOIN (
|
||||
SELECT "team_id"
|
||||
FROM "ynrealname"."bm_team_user_relation"
|
||||
WHERE "id_number" = #{idNumber}
|
||||
AND TO_DATE(#{currentDay}, 'YYYY-MM-DD') BETWEEN TRUNC("create_time") AND TRUNC("update_time")
|
||||
) team ON team."team_id" = bsr."value"
|
||||
WHERE bweh."team_id" IS NOT NULL
|
||||
AND team."team_id" IS NOT NULL
|
||||
ORDER BY bsr."create_time" DESC
|
||||
OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY
|
||||
)) = 0 THEN (
|
||||
SELECT CASE
|
||||
WHEN (SELECT COUNT(*) FROM (
|
||||
SELECT bsr."sub_contract_id"
|
||||
FROM (
|
||||
SELECT "id_number", "team_id"
|
||||
FROM "ynrealname"."bm_worker_ein_history"
|
||||
WHERE "id_number" = #{idNumber}
|
||||
AND "team_id" != 0
|
||||
AND TO_DATE(#{currentDay}, 'YYYY-MM-DD') BETWEEN TRUNC("ein_time") AND TRUNC("exit_time")
|
||||
AND "is_active" = '1'
|
||||
) a
|
||||
LEFT JOIN "ynrealname"."bm_sub_relation" bsr ON bsr."value" = a."team_id"
|
||||
ORDER BY bsr."id" DESC
|
||||
OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY
|
||||
)) = 0 THEN (
|
||||
SELECT bsr."sub_contract_id"
|
||||
FROM (
|
||||
SELECT "id_number", "team_id"
|
||||
FROM "ynrealname"."bm_worker_ein_history"
|
||||
WHERE "id_number" = #{idNumber}
|
||||
AND "exit_time" IS NULL
|
||||
AND "team_id" != 0
|
||||
AND "is_active" = '1'
|
||||
) a
|
||||
LEFT JOIN "ynrealname"."bm_sub_relation" bsr ON bsr."v" = a."team_id"
|
||||
WHERE TRIM(bsr."is_active") = '1'
|
||||
ORDER BY bsr."id" DESC
|
||||
OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY
|
||||
)
|
||||
ELSE (
|
||||
SELECT bsr."sub_contract_id"
|
||||
FROM (
|
||||
SELECT "id_number", "team_id"
|
||||
FROM "ynrealname"."bm_worker_ein_history"
|
||||
WHERE "id_number" = #{idNumber}
|
||||
AND "team_id" != 0
|
||||
AND TO_DATE(#{currentDay}, 'YYYY-MM-DD') BETWEEN TRUNC("ein_time") AND TRUNC("exit_time")
|
||||
AND "is_active" = '1'
|
||||
) a
|
||||
LEFT JOIN "ynrealname"."bm_sub_relation" bsr ON bsr."value" = a."team_id"
|
||||
ORDER BY bsr."id" DESC
|
||||
OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY
|
||||
)
|
||||
END
|
||||
)
|
||||
ELSE (
|
||||
SELECT "sub_contract_id"
|
||||
FROM (
|
||||
SELECT "sub_contract_id", "value", "create_time","v"
|
||||
FROM "ynrealname"."bm_sub_relation"
|
||||
WHERE "type" = 3
|
||||
AND TO_DATE(#{currentDay}, 'YYYY-MM-DD') BETWEEN TRUNC("create_time") AND TRUNC("update_time")
|
||||
) bsr
|
||||
LEFT JOIN (
|
||||
SELECT "id_number", "team_id"
|
||||
FROM "ynrealname"."bm_worker_ein_history"
|
||||
WHERE "id_number" = #{idNumber}
|
||||
AND "exit_time" IS NULL
|
||||
AND "team_id" != 0
|
||||
AND "is_active" = '1'
|
||||
) bweh ON bweh."team_id" = bsr."v"
|
||||
LEFT JOIN (
|
||||
SELECT "team_id"
|
||||
FROM "ynrealname"."bm_team_user_relation"
|
||||
WHERE "id_number" = #{idNumber}
|
||||
AND TO_DATE(#{currentDay}, 'YYYY-MM-DD') BETWEEN TRUNC("create_time") AND TRUNC("update_time")
|
||||
) team ON team."team_id" = bsr."v"
|
||||
WHERE bweh."team_id" IS NOT NULL
|
||||
AND team."team_id" IS NOT NULL
|
||||
ORDER BY bsr."create_time" DESC
|
||||
OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY
|
||||
)
|
||||
ELSE a.sub_contract_id
|
||||
END AS contractId
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
sub_contract_id
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
"ynrealname"."bm_sub_relation"
|
||||
WHERE
|
||||
TYPE = 3
|
||||
AND TO_DATE(#{currentDay}, 'YYYY-MM-DD') BETWEEN TRUNC(create_time) AND TRUNC(update_time)) bsr
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
id_number,
|
||||
team_id
|
||||
FROM
|
||||
"ynrealname"."bm_worker_ein_history"
|
||||
WHERE
|
||||
id_number = #{idNumber}
|
||||
AND exit_time IS NULL
|
||||
AND team_id != 0
|
||||
AND is_active = 1)
|
||||
bweh ON
|
||||
bweh.team_id = bsr.VALUE
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
"ynrealname"."bm_team_user_relation"
|
||||
WHERE
|
||||
id_number = #{idNumber}
|
||||
AND TO_DATE(#{currentDay}, 'YYYY-MM-DD') BETWEEN TRUNC(create_time)
|
||||
AND TRUNC(update_time)) team ON
|
||||
team.team_id = bsr.VALUE
|
||||
WHERE
|
||||
bweh.team_id IS NOT NULL
|
||||
AND team.team_id IS NOT NULL
|
||||
ORDER BY
|
||||
bsr.create_time DESC
|
||||
OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY) a
|
||||
FROM DUAL;
|
||||
</select>
|
||||
|
||||
<select id="getSalaryBySubContractWorkerList"
|
||||
|
|
|
|||
Loading…
Reference in New Issue