diff --git a/src/main/java/com/budwk/app/zhgh/democratic/proposal/controller/export/ProposalExportComprehensiveController.java b/src/main/java/com/budwk/app/zhgh/democratic/proposal/controller/export/ProposalExportComprehensiveController.java index d5c8f4e7..accff9bb 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/proposal/controller/export/ProposalExportComprehensiveController.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/proposal/controller/export/ProposalExportComprehensiveController.java @@ -53,8 +53,32 @@ public class ProposalExportComprehensiveController { ins.variable instanceVariable, ins.processDefineId instanceProcessDefineId, t.displayName curTaskName, - GROUP_CONCAT(DISTINCT CASE WHEN pru.isMaster = 1 THEN pru.unitName END) AS masterUnitName, - GROUP_CONCAT(DISTINCT CASE WHEN pru.isMaster = 0 THEN pru.unitName END) AS slaveUnitNames + COALESCE( + NULLIF(GROUP_CONCAT(DISTINCT CASE WHEN pru.isMaster = 1 THEN pru.unitName END), ''), + NULLIF( + REPLACE( + REPLACE( + REPLACE(MAX(committeeTask.variable->>'$.tf_masterUnitName'), '[', ''), + ']', '' + ), + '"', '' + ), + '' + ) + ) AS masterUnitName, + COALESCE( + NULLIF(GROUP_CONCAT(DISTINCT CASE WHEN pru.isMaster = 0 THEN pru.unitName END), ''), + NULLIF( + REPLACE( + REPLACE( + REPLACE(MAX(committeeTask.variable->>'$.tf_slaveUnitNames'), '[', ''), + ']', '' + ), + '"', '' + ), + '' + ) + ) AS slaveUnitNames FROM proposal_info info LEFT JOIN proposal_type type on type.id = info.typeId @@ -64,6 +88,9 @@ public class ProposalExportComprehensiveController { LEFT JOIN teacher_congress_delegate tcde on tcde.loginName = info.createUserLoginName LEFT JOIN wf_process_instance ins ON ins.businessNo = info.id LEFT JOIN wf_process_task t ON t.processInstanceId = ins.id AND t.taskState = 10 + LEFT JOIN wf_process_task committeeTask ON committeeTask.processInstanceId = ins.id + AND committeeTask.taskState = 20 + AND committeeTask.taskName = 'committee' LEFT JOIN proposal_reply_unit pru ON pru.proposalId = info.id $condition """); diff --git a/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/impl/ProposalExportServiceImpl.java b/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/impl/ProposalExportServiceImpl.java index 3b109630..dec0dbc1 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/impl/ProposalExportServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/proposal/service/impl/ProposalExportServiceImpl.java @@ -555,8 +555,32 @@ public class ProposalExportServiceImpl extends BaseServiceImpl imp tcs.c, tcs.fullName AS sessionName, tcd.`name` AS delegationName, - GROUP_CONCAT(DISTINCT CASE WHEN pru.isMaster = 1 THEN pru.unitName END) AS masterUnitName, - GROUP_CONCAT(DISTINCT CASE WHEN pru.isMaster = 0 THEN pru.unitName END) AS slaveUnitNames + COALESCE( + NULLIF(GROUP_CONCAT(DISTINCT CASE WHEN pru.isMaster = 1 THEN pru.unitName END), ''), + NULLIF( + REPLACE( + REPLACE( + REPLACE(MAX(committeeTask.variable->>'$.tf_masterUnitName'), '[', ''), + ']', '' + ), + '"', '' + ), + '' + ) + ) AS masterUnitName, + COALESCE( + NULLIF(GROUP_CONCAT(DISTINCT CASE WHEN pru.isMaster = 0 THEN pru.unitName END), ''), + NULLIF( + REPLACE( + REPLACE( + REPLACE(MAX(committeeTask.variable->>'$.tf_slaveUnitNames'), '[', ''), + ']', '' + ), + '"', '' + ), + '' + ) + ) AS slaveUnitNames FROM proposal_info info LEFT JOIN proposal_type type on type.id = info.typeId @@ -564,6 +588,10 @@ public class ProposalExportServiceImpl extends BaseServiceImpl imp LEFT JOIN teacher_congress_session tcs on tcs.id = info.sessionId LEFT JOIN teacher_congress_delegation tcd on tcd.id = info.delegationId LEFT JOIN teacher_congress_delegate tcde on tcde.loginName = info.createUserLoginName + LEFT JOIN wf_process_instance ins ON ins.businessNo = info.id + LEFT JOIN wf_process_task committeeTask ON committeeTask.processInstanceId = ins.id + AND committeeTask.taskState = 20 + AND committeeTask.taskName = 'committee' LEFT JOIN proposal_reply_unit pru ON pru.proposalId = info.id $condition """);