From 8423a1b0e824c0370ceb856a43addcd96479d475 Mon Sep 17 00:00:00 2001 From: sunzheng Date: Tue, 9 Jul 2024 10:35:04 +0800 Subject: [PATCH] =?UTF-8?q?update:=E5=B7=A5=E4=BD=9C=E7=BB=84=E6=8C=89?= =?UTF-8?q?=E7=85=A7sortNo=E5=AD=97=E6=AE=B5=E6=8E=92=E5=BA=8F,=E6=89=93?= =?UTF-8?q?=E5=8C=85=E5=85=B3=E8=81=94=E9=A1=B9=E7=9B=AE=E7=9A=84=E6=8E=92?= =?UTF-8?q?=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/24年6月变更.sql | 32 +++++++------------ .../xml/PayPackCompanyProjectMapper.xml | 29 ++++++++++++----- .../controller/PayWorkingGroupController.java | 1 + .../jero/project/entity/PayCommonProject.java | 3 ++ .../jero/project/entity/PayWorkingGroup.java | 3 ++ .../mapper/xml/PayWorkingGroupMapper.xml | 8 +++-- 6 files changed, 45 insertions(+), 31 deletions(-) diff --git a/db/24年6月变更.sql b/db/24年6月变更.sql index d185ef55..54896d6f 100644 --- a/db/24年6月变更.sql +++ b/db/24年6月变更.sql @@ -148,28 +148,18 @@ INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `com -- 20240705 标协会员的视图创建 CREATE VIEW v_member_project_subitem AS -SELECT - `t1`.`id` AS `id`, - `t1`.`member_no` AS `member_no`, - `t1`.`company_name` AS `company_name`, - `t1`.`liaison_man_id` AS `liaison_man_id`, - `t1`.`member_status` AS `member_status`, - `t1`.`effective_date` AS `effective_date`, - `t1`.`invalidation_date` AS `invalidation_date`, - `t1`.`create_time` AS `create_time`, - `t1`.`project_id` AS `project_id` -FROM - ( - `tb_member_project_subitem` `t1` - JOIN ( SELECT `tb_member_project_subitem`.`company_id` AS `company_id`, max( `tb_member_project_subitem`.`create_time` ) AS `max_create_time` FROM `tb_member_project_subitem` GROUP BY `tb_member_project_subitem`.`company_id` ) `t2` ON ((( - `t1`.`company_id` = `t2`.`company_id` - ) - AND ( `t1`.`create_time` = `t2`.`max_create_time` )))) -WHERE - ( - `t1`.`member_status` IS NOT NULL); +select `t1`.`id` AS `id`,`t1`.`member_no` AS `member_no`,`t1`.`company_name` AS `company_name`,`t1`.`liaison_man_id` AS `liaison_man_id`, + `t1`.`member_status` AS `member_status`,`t1`.`effective_date` AS `effective_date`,`t1`.`invalidation_date` AS `invalidation_date`, + `t1`.`create_time` AS `create_time`,`t1`.`project_id` AS `project_id` from (`tb_member_project_subitem` `t1` join + (select `tb_member_project_subitem`.`company_id` AS `company_id`,max(`tb_member_project_subitem`.`create_time`) AS `max_create_time` + from `tb_member_project_subitem` group by `tb_member_project_subitem`.`company_id`) `t2` on(((`t1`.`company_id` = `t2`.`company_id`) + and (`t1`.`create_time` = `t2`.`max_create_time`)))) where (`t1`.`member_status` is not null); -- 20240708 工作组成员新增是否审核,是否确认凭证字段 ALTER TABLE `tb_member_project_subitem` add column check_payment_status tinyint(1) comment '是否审核(1:是,0:否)', - add column confirm_voucher tinyint(1) comment '是否确认凭证(1:是,0:否)'; \ No newline at end of file + add column confirm_voucher tinyint(1) comment '是否确认凭证(1:是,0:否)'; + +-- 20240708 工作组表新增自定义排序字段 +ALTER TABLE `pay_working_group` + add column sort_no int comment '自定义排序顺序' \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/pack/mapper/xml/PayPackCompanyProjectMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/pack/mapper/xml/PayPackCompanyProjectMapper.xml index dcac6bce..ca99ebe3 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/pack/mapper/xml/PayPackCompanyProjectMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/pack/mapper/xml/PayPackCompanyProjectMapper.xml @@ -30,13 +30,14 @@ ( project.phone = '' or project.phone IS NULL, pcmt.phone, project.phone ) AS phone, IF ( project.email = '' or project.email IS NULL, pcmt.email, project.email ) AS email, - affirm_income + affirm_income, + project.sort_no from ( select c.id,c.charge_project,c.invoice_amount, c.charge_use, c.principal_id,su.realname as principal_name,c.contacts_temporary_id,c.contacts_temporary_name,c.charge_company_temporary_name,c.receivable_amount, c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType,pcm.phone,pcm.email,affirm_income - ,c.mail_contacts_id,c.mail_contacts_temporary_id,c.mail_contacts_temporary_name + ,c.mail_contacts_id,c.mail_contacts_temporary_id,c.mail_contacts_temporary_name, NULL as sort_no from pay_common_project c left join sys_user su on c.principal_id = su.id LEFT JOIN pay_contacts_management pcm ON c.contacts_temporary_id = pcm.id @@ -56,7 +57,7 @@ UNION ALL select gsub.id,g.working_group_project,gsub.invoice_amount, gsub.charge_use, g.principal_id_a,su.realname,gsubc.contacts_temporary_id as contacts_temporary_id,gsubc.contacts_temporary_name as contacts_temporary_name_one,gsub.charge_company_temporary_name,gsub.receivable_amount, gsub.paid_amount,gsub.need_invoice,gsub.pack,gsub.in_account,gsub.make_invoice,gsub.mail,gsub.create_time,2,pcm.phone,pcm.email,affirm_income - ,gsub.mail_contacts_id,gsub.mail_contacts_temporary_id,gsub.mail_contacts_temporary_name + ,gsub.mail_contacts_id,gsub.mail_contacts_temporary_id,gsub.mail_contacts_temporary_name,g.sort_no from pay_working_group g left join sys_user su on g.principal_id_a = su.id inner join pay_working_group_subitem gsub on g.id = gsub.working_group_id @@ -77,7 +78,7 @@ UNION ALL select sit.id,meeting.meeting_name,sit.invoice_amount,sit.charge_use, meeting.director_id, su.realname,sit.company_contact_temporary_id AS contacts_temporary_id,sit.company_contact_name,sit.company_name,sit.amount_receivable, sit.paid_amount,sit.need_invoice,sit.pack,sit.in_account,sit.make_invoice,sit.mail,sit.create_time,3,pcm.phone,pcm.email,affirm_income - ,sit.post_contact_id as mail_contacts_id,sit.post_contact_temporary_id as mail_contacts_temporary_id,sit.post_contact_name as mail_contacts_temporary_name + ,sit.post_contact_id as mail_contacts_id,sit.post_contact_temporary_id as mail_contacts_temporary_id,sit.post_contact_name as mail_contacts_temporary_name, NULL as sort_no from pay_meeting meeting left join sys_user su on meeting.director_id = su.id inner join pay_meeting_situation sit on meeting.id = sit.meeting_id @@ -98,7 +99,7 @@ UNION ALL select msub.id,pmp.project_name,msub.invoice_amount,msub.charge_use,pmp.director_id, su.realname,msub.company_contact_temporary_id AS contacts_temporary_id,msub.company_contact_name,msub.company_name,msub.amount_receivable, msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4,pcm.phone,pcm.email,affirm_income - ,msub.post_contact_id as mail_contacts_id,msub.post_contact_temporary_id as mail_contacts_temporary_id,msub.post_contact_name as mail_contacts_temporary_name + ,msub.post_contact_id as mail_contacts_id,msub.post_contact_temporary_id as mail_contacts_temporary_id,msub.post_contact_name as mail_contacts_temporary_name, NULL as sort_no from pay_member_project pmp left join sys_user su on pmp.director_id = su.id inner join pay_member_project_subitem msub on pmp.id = msub.project_id @@ -118,7 +119,7 @@ UNION ALL select tmsub.id,tmember.project_name,tmsub.invoice_amount,tmsub.charge_use,tmember.director_id, su.realname,'',pcm.name as contacts_temporary_name,tmsub.company_name,tmsub.amount_receivable, tmsub.paid_amount,tmsub.invoice_requirements,tmsub.pack,tmsub.in_account,tmsub.make_invoice,tmsub.mail,tmsub.create_time,5,pcm.phone,pcm.email,affirm_income - ,null as mail_contacts_id,null as mail_contacts_temporary_id,null as mail_contacts_temporary_name + ,null as mail_contacts_id,null as mail_contacts_temporary_id,null as mail_contacts_temporary_name, NULL as sort_no from tb_member_project tmember left join sys_user su on tmember.director_id = su.id inner join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id @@ -138,7 +139,7 @@ UNION ALL select tcp.id,tmember.project_name,tcp.invoice_amount,tcp.charge_use,tmember.director_id, su.realname,'',pcm.name as contacts_temporary_name,tcp.company_name,tcp.amount_receivable, tcp.paid_amount,tcp.invoice_requirements,tcp.pack,tcp.in_account,tcp.make_invoice,tcp.mail,tcp.create_time,6,pcm.phone,pcm.email,affirm_income - ,null as mail_contacts_id,null as mail_contacts_temporary_id,null as mail_contacts_temporary_name + ,null as mail_contacts_id,null as mail_contacts_temporary_id,null as mail_contacts_temporary_name, NULL as sort_no from tb_member_project tmember left join sys_user su on tmember.director_id = su.id inner join tb_certificate_payment tcp on tmember.id = tcp.project_id @@ -166,7 +167,19 @@ AND DATE_FORMAT(ppr.payment_date,'%Y') = #{paymentDate} - GROUP BY ppcp.project_id ORDER BY project.paid_amount asc,project.create_time desc + GROUP BY ppcp.project_id + ORDER BY + CASE + WHEN project.projectType = 2 THEN 0 + ELSE 1 + END, + CASE + WHEN project.projectType = 2 AND project.sort_no IS NULL THEN 1 + WHEN project.projectType = 2 THEN 0 + END, + project.sort_no ASC, + project.paid_amount ASC, + project.create_time DESC