Merge remote-tracking branch 'origin/master'
This commit is contained in:
+1
-1
@@ -50,7 +50,7 @@ public class PayMailContractController extends JeroController<PayMailContract, I
|
||||
HttpServletRequest req) {
|
||||
QueryWrapper<PayMailBillList> queryWrapper = QueryGenerator.initQueryWrapper(payMailBillList, req.getParameterMap());
|
||||
Page<PayMailBillList> page = new Page<>(pageNo, pageSize);
|
||||
queryWrapper.orderByDesc("create_time");
|
||||
queryWrapper.orderByDesc("pc.create_time");
|
||||
IPage<PayMailBillList> pageList = payMailContractService.pageContract(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
+2
-5
@@ -27,10 +27,7 @@ import org.apache.poi.hssf.record.DVALRecord;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
@@ -128,7 +125,7 @@ public class PayWorkingGroupStatisticsController {
|
||||
*/
|
||||
@GetMapping(value = "/exportXls2")
|
||||
@ApiOperation(value="工作组项目统计-统计导出excel", notes="工作组项目统计-统计导出excel")
|
||||
public ModelAndView exportXls2(PayWorkingGroupSearch payWorkingGroupSearch) {
|
||||
public ModelAndView exportXls2( PayWorkingGroupSearch payWorkingGroupSearch) {
|
||||
if(payWorkingGroupSearch.getYear()==null|| payWorkingGroupSearch.getYear().equals("")){
|
||||
Calendar calendar= Calendar.getInstance();
|
||||
String year = String.valueOf(calendar.get(Calendar.YEAR));
|
||||
|
||||
+17
@@ -117,4 +117,21 @@ public interface PayWorkingGroupMapper extends BaseMapper<PayWorkingGroup> {
|
||||
* @return
|
||||
*/
|
||||
IPage<PrincipalPeopleDetail> queryPageListForPrincipalDetail(Page<PrincipalPeopleDetail> page,@Param("principalPeopleDetailSearch") PrincipalPeopleDetailSearch principalPeopleDetailSearch);
|
||||
|
||||
/**
|
||||
* 企业来款统计
|
||||
* @param page
|
||||
* @param companyComeMoneySearch
|
||||
* @param idList
|
||||
* @return
|
||||
*/
|
||||
IPage<CompanyComeMoneyList> queryPageListForCompany(Page<CompanyComeMoneyList> page,@Param("companyComeMoneySearch") CompanyComeMoneySearch companyComeMoneySearch,@Param("idList") List<String> idList);
|
||||
|
||||
/**
|
||||
* 企业来款详情
|
||||
* @param page
|
||||
* @param companyComeMoneyDetailSearch
|
||||
* @return
|
||||
*/
|
||||
IPage<CompanyComeMoneyDetail> queryPageListForCompanyDetail(Page<CompanyComeMoneyDetail> page,@Param("companyComeMoneyDetailSearch") CompanyComeMoneyDetailSearch companyComeMoneyDetailSearch);
|
||||
}
|
||||
|
||||
+343
-58
@@ -160,7 +160,6 @@
|
||||
pwgs.id,
|
||||
pwg.working_group_project AS projectName,
|
||||
pwg.principal_name_a as principalName,
|
||||
pwg.principal_id_a as principalId,
|
||||
pwgs.charge_company_temporary_name AS chargeCompanyTemporaryName,
|
||||
pwgs.receivable_amount as allMoney,
|
||||
pwgs.paid_amount as comeAllMoney,
|
||||
@@ -217,7 +216,6 @@
|
||||
pcp.id,
|
||||
pcp.charge_project AS projectName,
|
||||
pcp.principal_name as principalName,
|
||||
pcp.principal_id as principalId,
|
||||
pcp.charge_company_temporary_name AS chargeCompanyTemporaryName,
|
||||
pcp.receivable_amount as allMoney,
|
||||
pcp.paid_amount as comeAllMoney,
|
||||
@@ -271,7 +269,6 @@
|
||||
pmps.id,
|
||||
pmp.project_name AS projectName,
|
||||
pmp.director_name as principalName,
|
||||
pmp.director_id as principalId,
|
||||
pmps.company_name AS chargeCompanyTemporaryName,
|
||||
pmps.amount_receivable as allMoney,
|
||||
pmps.paid_amount as comeAllMoney,
|
||||
@@ -328,14 +325,13 @@
|
||||
pms.id,
|
||||
pm.meeting_name AS projectName,
|
||||
pm.director_name as principalName,
|
||||
pm.director_id as principalId,
|
||||
pms.company_name AS chargeCompanyTemporaryName,
|
||||
pms.amount_receivable as allMoney,
|
||||
pms.paid_amount as comeAllMoney,
|
||||
pms.charge_use as chargeUse,
|
||||
sd.depart_name as depart,
|
||||
pms.create_time as createTime
|
||||
FROM pay_meeting pm left join pay_meeting_situation pms on(pm.id=pms.meeting_id)
|
||||
FROM pay_meeting pm right join pay_meeting_situation pms on(pm.id=pms.meeting_id)
|
||||
left JOIN sys_user su on(pm.director_id=su.id) left join sys_depart sd on(su.org_code=sd.org_code)
|
||||
<where>
|
||||
<if test="allProjectStatisticsSearch.projectName != null and allProjectStatisticsSearch.projectName != ''">
|
||||
@@ -386,8 +382,7 @@
|
||||
tmp.project_name AS projectName,
|
||||
tmps.company_name AS chargeCompanyTemporaryName,
|
||||
tmps.amount_receivable as allMoney,
|
||||
tmp.update_by as principalName,
|
||||
tmp.id as principalId,
|
||||
"" as principalName,
|
||||
tmps.paid_amount as comeAllMoney,
|
||||
tmps.charge_use as chargeUse,
|
||||
sd.depart_name as depart,
|
||||
@@ -433,7 +428,7 @@
|
||||
</if>
|
||||
</otherwise>
|
||||
</choose>
|
||||
</where>) pp left join
|
||||
</where>) pp right join
|
||||
(select pwgs.id as id
|
||||
from pay_working_group_subitem pwgs
|
||||
left join pay_payment_record ppr on(pwgs.id=ppr.project_id)
|
||||
@@ -470,7 +465,7 @@
|
||||
|
||||
<!--个人来款统计-->
|
||||
<select id="queryPageListForPrincipal" resultType="com.jero.statistics.entity.PrincipalPeopleList">
|
||||
select pp.principalId, principalName,allMoney,comeAllMoney,createTime,
|
||||
select principalId, principalName,allMoney,comeAllMoney,createTime,
|
||||
CONCAT(CAST(ROUND((comeAllMoney/allMoney)*100,2) AS CHAR),'%') AS finishRate from
|
||||
(select
|
||||
principalId,principalName,SUM(allMoney) as allMoney,sum(comeAllMoney) as comeAllMoney,
|
||||
@@ -483,11 +478,14 @@
|
||||
sum(pwgs.comeAllMoney) as comeAllMoney,
|
||||
pwg.create_time as createTime
|
||||
FROM pay_working_group pwg
|
||||
LEFT JOIN (select id,working_group_id,SUM(receivable_amount) AS allMoney,SUM(paid_amount) AS comeAllMoney
|
||||
from pay_working_group_subitem GROUP BY working_group_id) pwgs
|
||||
LEFT JOIN (
|
||||
select pwg1s.id,working_group_id,SUM(receivable_amount) AS allMoney,SUM(paid_amount) AS comeAllMoney
|
||||
from pay_working_group_subitem pwg1s inner join pay_payment_record ppr on(pwg1s.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like concat('%',#{principalPeopleSearch.year},'%')
|
||||
GROUP BY pwg1s.working_group_id
|
||||
) pwgs
|
||||
ON (pwg.id=pwgs.working_group_id)
|
||||
left JOIN sys_user su on(pwg.principal_id_a=su.id) left join sys_depart sd on(su.org_code=sd.org_code)
|
||||
left join pay_payment_record ppr on(pwgs.id=ppr.project_id)
|
||||
<where>
|
||||
<if test="idList != null and idList != ''">
|
||||
pwg.principal_id_a in
|
||||
@@ -501,7 +499,6 @@
|
||||
<if test="principalPeopleSearch.departCode != null and principalPeopleSearch.departCode != ''">
|
||||
AND su.org_code =#{principalPeopleSearch.departCode}
|
||||
</if>
|
||||
|
||||
</where> GROUP BY pwg.principal_id_a
|
||||
union all
|
||||
SELECT
|
||||
@@ -510,9 +507,12 @@
|
||||
sum(pcp.receivable_amount) as allMoney,
|
||||
sum(pcp.paid_amount) as comeAllMoney,
|
||||
pcp.create_time as createTime
|
||||
FROM pay_common_project pcp left JOIN sys_user su on(pcp.principal_id=su.id) left join sys_depart sd
|
||||
on(su.org_code=sd.org_code) left join pay_payment_record ppr on(pcp.id=ppr.project_id)
|
||||
FROM pay_common_project pcp inner join pay_payment_record ppr on(pcp.id=ppr.project_id)
|
||||
left JOIN sys_user su on(pcp.principal_id=su.id) left join sys_depart sd
|
||||
on(su.org_code=sd.org_code)
|
||||
<where>
|
||||
ppr.payment_date like
|
||||
concat('%',#{principalPeopleSearch.year},'%')
|
||||
<if test="idList != null and idList != ''">
|
||||
pcp.principal_id in
|
||||
<foreach item="item" open="(" separator="," close=")" collection="idList">
|
||||
@@ -535,11 +535,15 @@
|
||||
pmps.comeAllMoney as comeAllMoney,
|
||||
pmp.create_time as createTime
|
||||
FROM pay_member_project pmp left join (select
|
||||
id,project_id,SUM(amount_receivable) AS allMoney,SUM(paid_amount) AS
|
||||
pmp1s.id,pmp1s.project_id as projectId,SUM(amount_receivable) AS allMoney,SUM(paid_amount) AS
|
||||
comeAllMoney
|
||||
from pay_member_project_subitem GROUP BY project_id) pmps on(pmp.id=pmps.project_id)
|
||||
from pay_member_project_subitem pmp1s
|
||||
inner join pay_payment_record ppr on(pmp1s.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like
|
||||
concat('%',#{principalPeopleSearch.year},'%')
|
||||
GROUP BY pmp1s.project_id) pmps on(pmp.id=pmps.projectId)
|
||||
left JOIN sys_user su on(pmp.director_id=su.id) left join sys_depart sd on(su.org_code=sd.org_code)
|
||||
left join pay_payment_record ppr on(pmps.id=ppr.project_id)
|
||||
|
||||
<where>
|
||||
<if test="idList != null and idList != ''">
|
||||
pmp.director_id in
|
||||
@@ -548,9 +552,8 @@
|
||||
</foreach>
|
||||
</if>
|
||||
|
||||
<if test="principalPeopleSearch.year != null and principalPeopleSearch.year != ''">
|
||||
AND date_format(ppr.payment_date,'%Y-%m-%d') LIKE
|
||||
concat('%',concat(#{principalPeopleSearch.year},'%'))
|
||||
<if test="principalPeopleSearch.departCode != null and principalPeopleSearch.departCode != ''">
|
||||
AND su.org_code =#{principalPeopleSearch.departCode}
|
||||
</if>
|
||||
<if test="principalPeopleSearch.principalId != null and principalPeopleSearch.principalId != ''">
|
||||
AND pmp.director_id=#{principalPeopleSearch.principalId}
|
||||
@@ -563,11 +566,15 @@
|
||||
sum(pms.allMoney) as allMoney,
|
||||
sum(pms.comeAllMoney) as comeAllMoney,
|
||||
pm.create_time as createTime
|
||||
FROM pay_meeting pm left join (select id,meeting_id,SUM(amount_receivable) AS
|
||||
FROM pay_meeting pm left join (select pm1s.id,meeting_id,SUM(amount_receivable) AS
|
||||
allMoney,SUM(paid_amount) AS comeAllMoney
|
||||
from pay_meeting_situation GROUP BY meeting_id) pms on(pm.id=pms.meeting_id)
|
||||
from pay_meeting_situation pm1s
|
||||
inner join pay_payment_record ppr on(pm1s.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like
|
||||
concat('%',#{principalPeopleSearch.year},'%')
|
||||
GROUP BY pm1s.meeting_id) pms on(pm.id=pms.meeting_id)
|
||||
left JOIN sys_user su on(pm.director_id=su.id) left join sys_depart sd on(su.org_code=sd.org_code)
|
||||
left join pay_payment_record ppr on(pms.id=ppr.project_id)
|
||||
|
||||
<where>
|
||||
<if test="idList != null and idList != ''">
|
||||
pm.director_id in
|
||||
@@ -582,38 +589,7 @@
|
||||
<if test="principalPeopleSearch.principalId != null and principalPeopleSearch.principalId != ''">
|
||||
AND pm.director_id=#{principalPeopleSearch.principalId}
|
||||
</if>
|
||||
</where> group by pm.director_id) principalPeople group by principalPeople.principalId) pp inner join
|
||||
-- 判断来款项目的来款年份
|
||||
(select * from (SELECT
|
||||
pwg.principal_id_a as principalId
|
||||
FROM pay_working_group pwg
|
||||
inner JOIN (select pwgs.id as id,working_group_id
|
||||
from pay_working_group_subitem pwgs
|
||||
left join pay_payment_record ppr on(pwgs.id=ppr.project_id)
|
||||
|
||||
WHERE ppr.payment_date like
|
||||
concat('%',#{principalPeopleSearch.year},'%')
|
||||
|
||||
GROUP BY working_group_id) pwgss ON (pwg.id=pwgss.working_group_id)
|
||||
GROUP BY pwg.principal_id_a
|
||||
union ALL
|
||||
SELECT
|
||||
pcp.principal_id as principalId
|
||||
FROM pay_common_project pcp inner JOIN pay_payment_record ppr on(pcp.id=ppr.project_id) WHERE ppr.payment_date like concat('%',#{principalPeopleSearch.year},'%')
|
||||
group by pcp.principal_id
|
||||
union all
|
||||
SELECT
|
||||
pmp.director_id as principalId
|
||||
FROM pay_member_project pmp left join pay_member_project_subitem pmps on(pmp.id=pmps.project_id) inner join pay_payment_record ppr on(pmps.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like
|
||||
concat('%',#{principalPeopleSearch.year},'%')
|
||||
group by director_id
|
||||
union all
|
||||
SELECT
|
||||
pm.director_id as principalId
|
||||
FROM pay_meeting pm left join pay_meeting_situation pms on(pm.id=pms.meeting_id) left join pay_payment_record ppr on(pms.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like concat('%',#{principalPeopleSearch.year},'%')
|
||||
group by director_id) prr3 group by prr3.principalId) pprr on(pp.principalId=pprr.principalId)
|
||||
</where> ) pp
|
||||
<where>
|
||||
<choose>
|
||||
<when test="principalPeopleSearch.allMoney != null and principalPeopleSearch.allMoney != '' and principalPeopleSearch.allMoneyTwo != null and principalPeopleSearch.allMoneyTwo != ''">
|
||||
@@ -630,7 +606,7 @@
|
||||
</otherwise>
|
||||
</choose>
|
||||
</where>
|
||||
order by pp.createTime
|
||||
group by pp.principalId order by pp.createTime) ppp
|
||||
|
||||
|
||||
</select>
|
||||
@@ -649,7 +625,7 @@
|
||||
<where>
|
||||
pwg.principal_id_a = #{principalPeopleDetailSearch.principalNameId}
|
||||
<if test="principalPeopleDetailSearch.projectName != null and principalPeopleDetailSearch.projectName != ''">
|
||||
AND pwgs.charge_project LIKE
|
||||
AND pwg.working_group_project LIKE
|
||||
concat('%',concat(#{principalPeopleDetailSearch.projectName},'%'))
|
||||
</if>
|
||||
<if test="principalPeopleDetailSearch.chargeUse != null and principalPeopleDetailSearch.chargeUse != ''">
|
||||
@@ -906,5 +882,314 @@
|
||||
</select>
|
||||
|
||||
|
||||
<!--企业来款统计-->
|
||||
<select id="queryPageListForCompany" resultType="com.jero.statistics.entity.CompanyComeMoneyList">
|
||||
select chargeCompanyTemporaryId, chargeCompanyTemporaryName,allMoney,comeAllMoney,createTime,
|
||||
CONCAT(CAST(ROUND((comeAllMoney/allMoney)*100,2) AS CHAR),'%') AS finishRate from
|
||||
(select
|
||||
chargeCompanyTemporaryId,chargeCompanyTemporaryName,SUM(allMoney) as allMoney,sum(comeAllMoney) as comeAllMoney,
|
||||
createTime
|
||||
from
|
||||
(SELECT
|
||||
pwgs.charge_company_temporary_id as chargeCompanyTemporaryId,
|
||||
pwgs.charge_company_temporary_name as chargeCompanyTemporaryName,
|
||||
sum(allMoney) as allMoney,
|
||||
sum(comeAllMoney) as comeAllMoney,
|
||||
pwgs.create_time as createTime
|
||||
FROM pay_working_group pwg
|
||||
right JOIN (
|
||||
select pwg1s.id,working_group_id,SUM(receivable_amount) AS allMoney,SUM(paid_amount) AS comeAllMoney,charge_company_temporary_id,charge_company_temporary_name,pwg1s.create_time
|
||||
from pay_working_group_subitem pwg1s inner join pay_payment_record ppr on(pwg1s.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like concat('%',#{companyComeMoneySearch.year},'%')
|
||||
GROUP BY pwg1s.charge_company_temporary_id
|
||||
) pwgs
|
||||
ON (pwg.id=pwgs.working_group_id)
|
||||
left JOIN sys_user su on(pwg.principal_id_a=su.id) left join sys_depart sd on(su.org_code=sd.org_code)
|
||||
<where>
|
||||
<if test="idList != null and idList != ''">
|
||||
pwg.principal_id_a in
|
||||
<foreach item="item" open="(" separator="," close=")" collection="idList">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="companyComeMoneySearch.chargeCompanyTemporaryId != null and companyComeMoneySearch.chargeCompanyTemporaryId != ''">
|
||||
AND pwgs.charge_company_temporary_id=#{companyComeMoneySearch.chargeCompanyTemporaryId}
|
||||
</if>
|
||||
</where> GROUP BY pwgs.charge_company_temporary_id
|
||||
union all
|
||||
SELECT
|
||||
pcp.charge_company_temporary_id as chargeCompanyTemporaryId,
|
||||
pcp.charge_company_temporary_name as chargeCompanyTemporaryName,
|
||||
sum(pcp.receivable_amount) as allMoney,
|
||||
sum(pcp.paid_amount) as comeAllMoney,
|
||||
pcp.create_time as createTime
|
||||
FROM pay_common_project pcp inner join pay_payment_record ppr on(pcp.id=ppr.project_id)
|
||||
left JOIN sys_user su on(pcp.principal_id=su.id) left join sys_depart sd
|
||||
on(su.org_code=sd.org_code)
|
||||
<where>
|
||||
ppr.payment_date like
|
||||
concat('%',#{companyComeMoneySearch.year},'%')
|
||||
<if test="idList != null and idList != ''">
|
||||
pcp.principal_id in
|
||||
<foreach item="item" open="(" separator="," close=")" collection="idList">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="companyComeMoneySearch.chargeCompanyTemporaryId != null and companyComeMoneySearch.chargeCompanyTemporaryId != ''">
|
||||
AND pcp.charge_company_temporary_id=#{companyComeMoneySearch.chargeCompanyTemporaryId}
|
||||
</if>
|
||||
</where> group by pcp.charge_company_temporary_id
|
||||
union all
|
||||
SELECT
|
||||
pmps.company_temporary_id as chargeCompanyTemporaryId,
|
||||
pmps.company_name as chargeCompanyTemporaryName,
|
||||
sum(pmps.allMoney) as allMoney,
|
||||
pmps.comeAllMoney as comeAllMoney,
|
||||
pmps.create_time as createTime
|
||||
FROM pay_member_project pmp right join (select
|
||||
pmp1s.id,pmp1s.project_id as projectId,SUM(amount_receivable) AS allMoney,SUM(paid_amount) AS
|
||||
comeAllMoney,pmp1s.create_time,company_temporary_id,company_name
|
||||
from pay_member_project_subitem pmp1s
|
||||
inner join pay_payment_record ppr on(pmp1s.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like
|
||||
concat('%',#{companyComeMoneySearch.year},'%')
|
||||
GROUP BY pmp1s.company_temporary_id) pmps on(pmp.id=pmps.projectId)
|
||||
left JOIN sys_user su on(pmp.director_id=su.id) left join sys_depart sd on(su.org_code=sd.org_code)
|
||||
|
||||
<where>
|
||||
<if test="idList != null and idList != ''">
|
||||
pmp.director_id in
|
||||
<foreach item="item" open="(" separator="," close=")" collection="idList">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
|
||||
<if test="companyComeMoneySearch.chargeCompanyTemporaryId != null and companyComeMoneySearch.chargeCompanyTemporaryId != ''">
|
||||
AND pmps.company_temporary_id=#{companyComeMoneySearch.chargeCompanyTemporaryId}
|
||||
</if>
|
||||
</where> group by pmps.company_temporary_id
|
||||
union all
|
||||
SELECT
|
||||
pms.company_id as chargeCompanyTemporaryId,
|
||||
pms.company_name as chargeCompanyTemporaryName,
|
||||
sum(pms.allMoney) as allMoney,
|
||||
sum(pms.comeAllMoney) as comeAllMoney,
|
||||
pms.create_time as createTime
|
||||
FROM pay_meeting pm right join (select pm1s.id,meeting_id,SUM(amount_receivable) AS
|
||||
allMoney,SUM(paid_amount) AS comeAllMoney,pm1s.create_time,company_id,company_name
|
||||
from pay_meeting_situation pm1s
|
||||
inner join pay_payment_record ppr on(pm1s.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like
|
||||
concat('%',#{companyComeMoneySearch.year},'%')
|
||||
GROUP BY pm1s.company_id) pms on(pm.id=pms.meeting_id)
|
||||
left JOIN sys_user su on(pm.director_id=su.id) left join sys_depart sd on(su.org_code=sd.org_code)
|
||||
<where>
|
||||
<if test="idList != null and idList != ''">
|
||||
pm.director_id in
|
||||
<foreach item="item" open="(" separator="," close=")" collection="idList">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="companyComeMoneySearch.chargeCompanyTemporaryId != null and companyComeMoneySearch.chargeCompanyTemporaryId != ''">
|
||||
AND pms.company_id=#{companyComeMoneySearch.chargeCompanyTemporaryId}
|
||||
</if>
|
||||
</where> group by pms.company_id) pp
|
||||
<where>
|
||||
<choose>
|
||||
<when test="companyComeMoneySearch.allMoney != null and companyComeMoneySearch.allMoney != '' and companyComeMoneySearch.allMoneyTwo != null and companyComeMoneySearch.allMoneyTwo != ''">
|
||||
pp.allMoney > #{companyComeMoneySearch.allMoney} and pp.allMoney <![CDATA[<]]>
|
||||
#{companyComeMoneySearch.allMoneyTwo}
|
||||
</when>
|
||||
<otherwise>
|
||||
<if test="companyComeMoneySearch.allMoney != null and companyComeMoneySearch.allMoney != ''">
|
||||
AND pp.allMoney > #{companyComeMoneySearch.allMoney}
|
||||
</if>
|
||||
<if test="companyComeMoneySearch.allMoneyTwo != null and companyComeMoneySearch.allMoneyTwo != ''">
|
||||
AND pp.allMoney <![CDATA[<]]> #{companyComeMoneySearch.allMoneyTwo}
|
||||
</if>
|
||||
</otherwise>
|
||||
</choose>
|
||||
</where>
|
||||
group by pp.chargeCompanyTemporaryId order by pp.createTime) ppp
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 企业来款详情统计-->
|
||||
<select id="queryPageListForCompanyDetail" resultType="com.jero.statistics.entity.CompanyComeMoneyDetail">
|
||||
select * from (SELECT
|
||||
pwgs.create_time as createTime,
|
||||
pwgs.id,
|
||||
pwg.working_group_project as projectName,
|
||||
pwg.principal_id_a as principalId,
|
||||
pwgs.receivable_amount AS allMoney,
|
||||
pwgs.paid_amount AS comeAllMoney,
|
||||
pwgs.charge_use as chargeUse
|
||||
FROM pay_working_group_subitem pwgs
|
||||
left join pay_working_group pwg on (pwgs.working_group_id=pwg.id)
|
||||
<where>
|
||||
pwgs.charge_company_temporary_id = #{companyComeMoneyDetailSearch.chargeCompanyTemporaryId}
|
||||
<if test="CompanyComeMoneyDetailSearch.projectName != null and CompanyComeMoneyDetailSearch.projectName != ''">
|
||||
AND pwg.working_group_project LIKE
|
||||
concat('%',concat(#{CompanyComeMoneyDetailSearch.projectName},'%'))
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.chargeUse != null and CompanyComeMoneyDetailSearch.chargeUse != ''">
|
||||
AND pwgs.charge_use=#{CompanyComeMoneyDetailSearch.chargeUse}
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.inAccountStatue != null and CompanyComeMoneyDetailSearch.inAccountStatue != ''">
|
||||
AND pwgs.in_account=#{CompanyComeMoneyDetailSearch.payStatue}
|
||||
</if>
|
||||
<choose>
|
||||
<when test="CompanyComeMoneyDetailSearch.allMoney != null and CompanyComeMoneyDetailSearch.allMoney != '' and CompanyComeMoneyDetailSearch.allMoneyTwo != null and CompanyComeMoneyDetailSearch.allMoneyTwo != ''">
|
||||
pwgs.receivable_amount > #{CompanyComeMoneyDetailSearch.allMoney} and pwgs.receivable_amount <![CDATA[<]]>
|
||||
#{CompanyComeMoneyDetailSearch.allMoneyTwo}
|
||||
</when>
|
||||
<otherwise>
|
||||
<if test="CompanyComeMoneyDetailSearch.allMoney != null and CompanyComeMoneyDetailSearch.allMoney != ''">
|
||||
AND pwgs.receivable_amount > #{CompanyComeMoneyDetailSearch.allMoney}
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.allMoneyTwo != null and CompanyComeMoneyDetailSearch.allMoneyTwo != ''">
|
||||
AND pwgs.receivable_amount <![CDATA[<]]> #{CompanyComeMoneyDetailSearch.allMoneyTwo}
|
||||
</if>
|
||||
</otherwise>
|
||||
</choose>
|
||||
</where>
|
||||
union ALL
|
||||
SELECT
|
||||
pcp.create_time as createTime,
|
||||
pcp.id,
|
||||
pcp.charge_project as projectName,
|
||||
pcp.principal_id as principalId,
|
||||
pcp.receivable_amount AS allMoney,
|
||||
pcp.paid_amount AS comeAllMoney,
|
||||
pcp.charge_use as chargeUse
|
||||
FROM pay_common_project pcp
|
||||
<where>
|
||||
pcp.charge_company_id = #{CompanyComeMoneyDetailSearch.chargeCompanyTemporaryId}
|
||||
<if test="CompanyComeMoneyDetailSearch.projectName != null and CompanyComeMoneyDetailSearch.projectName != ''">
|
||||
AND pcp.charge_project LIKE
|
||||
concat('%',concat(#{CompanyComeMoneyDetailSearch.projectName},'%'))
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.chargeUse != null and CompanyComeMoneyDetailSearch.chargeUse != ''">
|
||||
AND pcp.charge_use=#{CompanyComeMoneyDetailSearch.chargeUse}
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.inAccountStatue != null and CompanyComeMoneyDetailSearch.inAccountStatue != ''">
|
||||
AND pcp.in_account=#{CompanyComeMoneyDetailSearch.payStatue}
|
||||
</if>
|
||||
<choose>
|
||||
<when test="CompanyComeMoneyDetailSearch.allMoney != null and CompanyComeMoneyDetailSearch.allMoney != '' and CompanyComeMoneyDetailSearch.allMoneyTwo != null and CompanyComeMoneyDetailSearch.allMoneyTwo != ''">
|
||||
pcp.receivable_amount > #{CompanyComeMoneyDetailSearch.allMoney} and pcp.receivable_amount <![CDATA[<]]>
|
||||
#{CompanyComeMoneyDetailSearch.allMoneyTwo}
|
||||
</when>
|
||||
<otherwise>
|
||||
<if test="CompanyComeMoneyDetailSearch.allMoney != null and CompanyComeMoneyDetailSearch.allMoney != ''">
|
||||
AND pcp.receivable_amount > #{CompanyComeMoneyDetailSearch.allMoney}
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.allMoneyTwo != null and CompanyComeMoneyDetailSearch.allMoneyTwo != ''">
|
||||
AND pcp.receivable_amount <![CDATA[<]]> #{CompanyComeMoneyDetailSearch.allMoneyTwo}
|
||||
</if>
|
||||
</otherwise>
|
||||
</choose>
|
||||
</where>
|
||||
union ALL
|
||||
SELECT
|
||||
pms.create_time as createTime,
|
||||
pms.id,
|
||||
pm.meeting_name as projectName,
|
||||
pm.director_id as principalId,
|
||||
pms.amount_receivable AS allMoney,
|
||||
pms.paid_amount AS comeAllMoney,
|
||||
pms.charge_use as chargeUse
|
||||
FROM pay_meeting pm left join pay_meeting_situation pms on(pm.id=pms.meeting_id)
|
||||
<where>
|
||||
pm.charge_company_id = #{CompanyComeMoneyDetailSearch.chargeCompanyTemporaryId}
|
||||
<if test="CompanyComeMoneyDetailSearch.projectName != null and CompanyComeMoneyDetailSearch.projectName != ''">
|
||||
AND pm.meeting_name LIKE
|
||||
concat('%',concat(#{CompanyComeMoneyDetailSearch.projectName},'%'))
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.chargeUse != null and CompanyComeMoneyDetailSearch.chargeUse != ''">
|
||||
AND pms.charge_use=#{CompanyComeMoneyDetailSearch.chargeUse}
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.inAccountStatue != null and CompanyComeMoneyDetailSearch.inAccountStatue != ''">
|
||||
AND pms.in_account=#{CompanyComeMoneyDetailSearch.payStatue}
|
||||
</if>
|
||||
<choose>
|
||||
<when test="CompanyComeMoneyDetailSearch.allMoney != null and CompanyComeMoneyDetailSearch.allMoney != '' and CompanyComeMoneyDetailSearch.allMoneyTwo != null and CompanyComeMoneyDetailSearch.allMoneyTwo != ''">
|
||||
pms.amount_receivable > #{CompanyComeMoneyDetailSearch.allMoney} and pms.amount_receivable <![CDATA[<]]>
|
||||
#{CompanyComeMoneyDetailSearch.allMoneyTwo}
|
||||
</when>
|
||||
<otherwise>
|
||||
<if test="CompanyComeMoneyDetailSearch.allMoney != null and CompanyComeMoneyDetailSearch.allMoney != ''">
|
||||
AND pms.amount_receivable > #{CompanyComeMoneyDetailSearch.allMoney}
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.allMoneyTwo != null and CompanyComeMoneyDetailSearch.allMoneyTwo != ''">
|
||||
AND pms.amount_receivable <![CDATA[<]]> #{CompanyComeMoneyDetailSearch.allMoneyTwo}
|
||||
</if>
|
||||
</otherwise>
|
||||
</choose>
|
||||
</where>
|
||||
union ALL
|
||||
SELECT
|
||||
pmps.create_time as createTime,
|
||||
pmp.director_id as principalId,
|
||||
pmps.id,
|
||||
pmp.project_name as projectName,
|
||||
pmps.amount_receivable AS allMoney,
|
||||
pmps.paid_amount AS comeAllMoney,
|
||||
pmps.charge_use as chargeUse
|
||||
FROM pay_member_project pmp left join pay_member_project_subitem pmps on(pmp.id=pmps.project_id)
|
||||
<where>
|
||||
pmp.director_id = #{CompanyComeMoneyDetailSearch.principalNameId}
|
||||
<if test="CompanyComeMoneyDetailSearch.projectName != null and CompanyComeMoneyDetailSearch.projectName != ''">
|
||||
AND pmp.project_name LIKE
|
||||
concat('%',concat(#{CompanyComeMoneyDetailSearch.projectName},'%'))
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.chargeUse != null and CompanyComeMoneyDetailSearch.chargeUse != ''">
|
||||
AND pmps.charge_use=#{CompanyComeMoneyDetailSearch.chargeUse}
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.inAccountStatue != null and CompanyComeMoneyDetailSearch.inAccountStatue != ''">
|
||||
AND pmps.in_account=#{CompanyComeMoneyDetailSearch.payStatue}
|
||||
</if>
|
||||
<choose>
|
||||
<when test="CompanyComeMoneyDetailSearch.allMoney != null and CompanyComeMoneyDetailSearch.allMoney != '' and CompanyComeMoneyDetailSearch.allMoneyTwo != null and CompanyComeMoneyDetailSearch.allMoneyTwo != ''">
|
||||
pmps.amount_receivable > #{CompanyComeMoneyDetailSearch.allMoney} and pmps.amount_receivable <![CDATA[<]]>
|
||||
#{CompanyComeMoneyDetailSearch.allMoneyTwo}
|
||||
</when>
|
||||
<otherwise>
|
||||
<if test="CompanyComeMoneyDetailSearch.allMoney != null and CompanyComeMoneyDetailSearch.allMoney != ''">
|
||||
AND pmps.amount_receivable > #{CompanyComeMoneyDetailSearch.allMoney}
|
||||
</if>
|
||||
<if test="CompanyComeMoneyDetailSearch.allMoneyTwo != null and CompanyComeMoneyDetailSearch.allMoneyTwo != ''">
|
||||
AND pmps.amount_receivable <![CDATA[<]]> #{CompanyComeMoneyDetailSearch.allMoneyTwo}
|
||||
</if>
|
||||
</otherwise>
|
||||
</choose>
|
||||
</where>) pp
|
||||
inner join
|
||||
-- 判断来款项目的来款年份
|
||||
(select pwgs.id as id
|
||||
from pay_working_group_subitem pwgs
|
||||
left join pay_payment_record ppr on(pwgs.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like
|
||||
concat('%',#{CompanyComeMoneyDetailSearch.year},'%')
|
||||
GROUP BY pwgs.id
|
||||
union ALL
|
||||
SELECT
|
||||
pcp.id as id
|
||||
FROM pay_common_project pcp left JOIN pay_payment_record ppr on(pcp.id=ppr.project_id) WHERE ppr.payment_date like concat('%',#{CompanyComeMoneyDetailSearch.year},'%')
|
||||
group by pcp.id
|
||||
union all
|
||||
SELECT
|
||||
pmps.id as id from
|
||||
pay_member_project_subitem pmps left join pay_payment_record ppr on(pmps.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like
|
||||
concat('%',#{CompanyComeMoneyDetailSearch.year},'%')
|
||||
group by pmps.id
|
||||
union all
|
||||
SELECT
|
||||
pms.id as id from pay_meeting_situation pms left join pay_payment_record ppr on (pms.id=ppr.project_id)
|
||||
WHERE ppr.payment_date like concat('%',#{CompanyComeMoneyDetailSearch.year},'%')
|
||||
group by pms.id) pprr on(pp.id=pprr.id)
|
||||
order by pp.createTime
|
||||
</select>
|
||||
</mapper>
|
||||
+2
-1
@@ -16,6 +16,7 @@
|
||||
<select id="queryPageList" resultType="com.jero.project.entity.PayWorkingGroupSubItem">
|
||||
SELECT
|
||||
pwgs.id,
|
||||
pwgs.charge_project AS chargeProject,
|
||||
pwgs.working_group_id AS workingGroupId,
|
||||
pwgs.charge_company_id AS chargeCompanyId,
|
||||
pwgs.charge_company_temporary_id AS chargeCompanyTemporaryId,
|
||||
@@ -78,7 +79,7 @@
|
||||
<where>
|
||||
pwgs.working_group_id = #{id}
|
||||
<if test="payWorkingGroupSubletSearch.projectName != null and payWorkingGroupSubletSearch.projectName != ''">
|
||||
AND pwgs.charge_project LIKE
|
||||
AND pwg.working_group_project LIKE
|
||||
concat('%',concat(#{payWorkingGroupSubletSearch.projectName},'%'))
|
||||
</if>
|
||||
<if test="payWorkingGroupSubletSearch.chargeUse != null and payWorkingGroupSubletSearch.chargeUse != ''">
|
||||
|
||||
+17
@@ -142,4 +142,21 @@ public interface IPayWorkingGroupService extends IService<PayWorkingGroup> {
|
||||
* @return
|
||||
*/
|
||||
List<PrincipalPeopleDetail> queryPageListForPrincipalDetailExcel(PrincipalPeopleDetailSearch principalPeopleDetailSearch);
|
||||
|
||||
/**
|
||||
* 企业来款统计
|
||||
* @param page
|
||||
* @param companyComeMoneySearch
|
||||
* @param idList
|
||||
* @return
|
||||
*/
|
||||
IPage<CompanyComeMoneyList> queryPageListForCompany(Page<CompanyComeMoneyList> page, CompanyComeMoneySearch companyComeMoneySearch, List<String> idList);
|
||||
|
||||
/**
|
||||
* 企业来款详情统计
|
||||
* @param page
|
||||
* @param companyComeMoneyDetailSearch
|
||||
* @return
|
||||
*/
|
||||
IPage<CompanyComeMoneyDetail> queryPageListForCompanyDetail(Page<CompanyComeMoneyDetail> page, CompanyComeMoneyDetailSearch companyComeMoneyDetailSearch);
|
||||
}
|
||||
|
||||
+28
@@ -224,11 +224,39 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
|
||||
return payWorkingGroupMapper.queryPageListForStatistics(payWorkingGroupSearch,idList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 个人来款详情
|
||||
* @param principalPeopleDetailSearch
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<PrincipalPeopleDetail> queryPageListForPrincipalDetailExcel(PrincipalPeopleDetailSearch principalPeopleDetailSearch) {
|
||||
return payWorkingGroupMapper.queryPageListForPrincipalDetail(principalPeopleDetailSearch);
|
||||
}
|
||||
|
||||
/**
|
||||
* 企业来款统计
|
||||
* @param page
|
||||
* @param companyComeMoneySearch
|
||||
* @param idList
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public IPage<CompanyComeMoneyList> queryPageListForCompany(Page<CompanyComeMoneyList> page, CompanyComeMoneySearch companyComeMoneySearch, List<String> idList) {
|
||||
return payWorkingGroupMapper.queryPageListForCompany(page,companyComeMoneySearch,idList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 企业来款详情统计
|
||||
* @param page
|
||||
* @param companyComeMoneyDetailSearch
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public IPage<CompanyComeMoneyDetail> queryPageListForCompanyDetail(Page<CompanyComeMoneyDetail> page, CompanyComeMoneyDetailSearch companyComeMoneyDetailSearch) {
|
||||
return payWorkingGroupMapper.queryPageListForCompanyDetail(page,companyComeMoneyDetailSearch);
|
||||
}
|
||||
|
||||
/**
|
||||
* @Description 校验是存在关联合同的项目
|
||||
* @Author lqt
|
||||
|
||||
+1
-1
@@ -100,7 +100,7 @@ public class AllProjectStatisticsController {
|
||||
*/
|
||||
@GetMapping(value = "/statistics/excel")
|
||||
@ApiOperation(value = "所领导统计-导出统计", notes = "所领导统计-导出统计")
|
||||
public ModelAndView excel(AllProjectStatisticsSearch allProjectStatisticsSearch) {
|
||||
public ModelAndView excel( AllProjectStatisticsSearch allProjectStatisticsSearch) {
|
||||
LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
String roleCode = sysUser.getRoleCode();
|
||||
if(constant.SLD.equals(roleCode)||constant.ADMIN.equals(roleCode)) {
|
||||
|
||||
+194
@@ -0,0 +1,194 @@
|
||||
package com.jero.statistics.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.system.api.ISysBaseAPI;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.mail.commont.constant;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.mapper.SysUserMapper;
|
||||
import com.jero.project.service.IPayWorkingGroupService;
|
||||
import com.jero.statistics.entity.*;
|
||||
import com.jero.util.AmountUtil;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.text.DecimalFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Calendar;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author zql
|
||||
* @date 2021/9/23 14:07
|
||||
*/
|
||||
@Api(tags="企业来款统计")
|
||||
@RestController
|
||||
@RequestMapping("/statistics/companyComeMoney")
|
||||
@Slf4j
|
||||
public class CompanyComeMoneyStatisticsController {
|
||||
@Resource
|
||||
private SysUserMapper userMapper;
|
||||
@Autowired
|
||||
private ISysBaseAPI sysBaseAPI;
|
||||
@Autowired
|
||||
private IPayWorkingGroupService payWorkingGroupService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param companyComeMoneySearch 企业来款统计
|
||||
* @param pageNo 页数
|
||||
* @param pageSize 条数
|
||||
*/
|
||||
@ApiOperation(value = "企业来款统计-分页列表查询", notes = "企业来款统计-分页列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<?> list(CompanyComeMoneySearch companyComeMoneySearch,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
|
||||
|
||||
if (companyComeMoneySearch.getYear() == null || companyComeMoneySearch.getYear().equals("")) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
String year = String.valueOf(calendar.get(Calendar.YEAR));
|
||||
companyComeMoneySearch.setYear(year);
|
||||
}
|
||||
//根据不同角色加载不同列表的参数
|
||||
List<String> idList = new ArrayList<>();
|
||||
//判断登录角色,显示特定工作组内容,判断依据为登录用户的角色和机构编码
|
||||
LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
String roleCode = sysUser.getRoleCode();
|
||||
//科长
|
||||
if(constant.BMFZR.equals(roleCode)) {
|
||||
String orgCode = sysUser.getOrgCode();
|
||||
List<SysUser> userList = userMapper.selectList(new QueryWrapper<SysUser>().eq("status", 1).eq("del_flag", 0).eq("org_code", orgCode));
|
||||
idList = userList.stream().map(SysUser::getId).collect(Collectors.toList());
|
||||
//所领导或者超级管理员
|
||||
} else if (constant.SLD.equals(roleCode)||constant.ADMIN.equals(roleCode)) {
|
||||
idList=null;
|
||||
//企业职员项目负责人
|
||||
}else if( constant.QYRY.equals(roleCode)){
|
||||
String userId = sysUser.getId();
|
||||
idList.add(userId);
|
||||
}
|
||||
Page<CompanyComeMoneyList> page = new Page<>(pageNo, pageSize);
|
||||
IPage<CompanyComeMoneyList> pageList = payWorkingGroupService.queryPageListForCompany(page,companyComeMoneySearch,idList);
|
||||
HashMap<String, Object> hashMap = new HashMap<>();
|
||||
double sum = pageList.getRecords() != null ? pageList.getRecords().stream().mapToDouble(t -> Double.parseDouble(t.getAllMoney() == null ? "0" : t.getAllMoney())).sum() : 0;
|
||||
double sum2 = pageList.getRecords() != null ? pageList.getRecords().stream().mapToDouble(t -> Double.parseDouble(t.getComeAllMoney() == null ? "0" : t.getComeAllMoney())).sum() : 0;
|
||||
DecimalFormat df = new DecimalFormat("#.00");
|
||||
hashMap.put("sumOfMoney", sum==0.0?sum:df.format(sum));
|
||||
hashMap.put("sumOfReallyMoney", sum2==0.0?sum2:df.format(sum2));
|
||||
hashMap.put("pageList",pageList);
|
||||
return Result.OK(hashMap);
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
* @param companyComeMoneyDetailSearch 企业来款统计
|
||||
* @param pageNo 页数
|
||||
* @param pageSize 条数
|
||||
*/
|
||||
@ApiOperation(value = "企业来款详情统计-详情分页列表查询", notes = "企业来款详情统计-详情分页列表查询")
|
||||
@GetMapping(value = "/listForDetail")
|
||||
public Result<?> listForDetail(CompanyComeMoneyDetailSearch companyComeMoneyDetailSearch,
|
||||
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
||||
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
|
||||
|
||||
if (companyComeMoneyDetailSearch.getYear() == null || companyComeMoneyDetailSearch.getYear().equals("")) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
String year = String.valueOf(calendar.get(Calendar.YEAR));
|
||||
companyComeMoneyDetailSearch.setYear(year);
|
||||
}
|
||||
Page<CompanyComeMoneyDetail> page = new Page<>(pageNo, pageSize);
|
||||
IPage<CompanyComeMoneyDetail> pageList = payWorkingGroupService.queryPageListForCompanyDetail(page, companyComeMoneyDetailSearch);
|
||||
HashMap<String, Object> hashMap = new HashMap<>();
|
||||
double sum = pageList.getRecords() != null ? pageList.getRecords().stream().mapToDouble(t -> Double.parseDouble(t.getAllMoney() == null ? "0" : t.getAllMoney())).sum() : 0;
|
||||
double sum2 = pageList.getRecords() != null ? pageList.getRecords().stream().mapToDouble(t -> Double.parseDouble(t.getComeAllMoney() == null ? "0" : t.getComeAllMoney())).sum() : 0;
|
||||
DecimalFormat df = new DecimalFormat("#.00");
|
||||
for(CompanyComeMoneyDetail s: pageList.getRecords()){
|
||||
String key = String.valueOf(s.getChargeUse());
|
||||
String payment_charge_use = sysBaseAPI.translateDict("payment_charge_use", key);
|
||||
s.setChargeUse_text(payment_charge_use);
|
||||
}
|
||||
hashMap.put("sumOfMoney", sum == 0.0 ? sum : df.format(sum));
|
||||
hashMap.put("sumOfReallyMoney", sum2 == 0.0 ? sum2 : df.format(sum2));
|
||||
hashMap.put("pageList", pageList);
|
||||
return Result.OK(hashMap);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
*个人来款统计导出
|
||||
*
|
||||
*/
|
||||
@GetMapping(value = "/excel")
|
||||
@ApiOperation(value = "个人来款统计导出-导出统计", notes = "个人来款统计导出-导出统计")
|
||||
public ModelAndView excel(PrincipalPeopleSearch principalPeopleSearch) {
|
||||
if (principalPeopleSearch.getYear() == null || principalPeopleSearch.getYear().equals("")) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
String year = String.valueOf(calendar.get(Calendar.YEAR));
|
||||
principalPeopleSearch.setYear(year);
|
||||
}
|
||||
//根据不同角色加载不同列表的参数
|
||||
List<String> idList = new ArrayList<>();
|
||||
//判断登录角色,显示特定工作组内容,判断依据为登录用户的角色和机构编码
|
||||
LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
String roleCode = sysUser.getRoleCode();
|
||||
//科长
|
||||
if(constant.BMFZR.equals(roleCode)) {
|
||||
String orgCode = sysUser.getOrgCode();
|
||||
List<SysUser> userList = userMapper.selectList(new QueryWrapper<SysUser>().eq("status", 1).eq("del_flag", 0).eq("org_code", orgCode));
|
||||
idList = userList.stream().map(SysUser::getId).collect(Collectors.toList());
|
||||
//所领导或者超级管理员
|
||||
} else if (constant.SLD.equals(roleCode)||constant.ADMIN.equals(roleCode)) {
|
||||
idList=null;
|
||||
//企业职员项目负责人
|
||||
}else if( constant.QYRY.equals(roleCode)){
|
||||
String userId = sysUser.getId();
|
||||
idList.add(userId);
|
||||
}
|
||||
List<PrincipalPeopleList> pageList = payWorkingGroupService.queryPageListForPrincipalExcel(principalPeopleSearch,idList);
|
||||
|
||||
return AmountUtil.exportListXls(pageList, PrincipalPeopleList.class, "个人来款");
|
||||
}
|
||||
|
||||
/**
|
||||
*个人来款统详情计导出
|
||||
*
|
||||
*/
|
||||
@GetMapping(value = "/excelDetail")
|
||||
@ApiOperation(value = "个人来款统详情计导出-导出统计", notes = "个人来款统详情计导出-导出统计")
|
||||
public ModelAndView excelDetail( PrincipalPeopleDetailSearch principalPeopleDetailSearch) {
|
||||
if (principalPeopleDetailSearch.getYear() == null || principalPeopleDetailSearch.getYear().equals("")) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
String year = String.valueOf(calendar.get(Calendar.YEAR));
|
||||
principalPeopleDetailSearch.setYear(year);
|
||||
}
|
||||
List<PrincipalPeopleDetail> pageList = payWorkingGroupService.queryPageListForPrincipalDetailExcel(principalPeopleDetailSearch);
|
||||
|
||||
return AmountUtil.exportListXls(pageList, PrincipalPeopleDetail.class, "个人来款详情");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -140,7 +140,7 @@ public class PrincipalPeopleStatisticsController {
|
||||
*/
|
||||
@GetMapping(value = "/excel")
|
||||
@ApiOperation(value = "个人来款统计导出-导出统计", notes = "个人来款统计导出-导出统计")
|
||||
public ModelAndView excel( PrincipalPeopleSearch principalPeopleSearch) {
|
||||
public ModelAndView excel( PrincipalPeopleSearch principalPeopleSearch) {
|
||||
if (principalPeopleSearch.getYear() == null || principalPeopleSearch.getYear().equals("")) {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
String year = String.valueOf(calendar.get(Calendar.YEAR));
|
||||
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
package com.jero.statistics.entity;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
|
||||
/**
|
||||
* @author zql
|
||||
* @date 2021/9/23 14:16
|
||||
*/
|
||||
|
||||
@Data
|
||||
public class CompanyComeMoneyDetail {
|
||||
@ApiModelProperty(value = "项目id")
|
||||
private String id;
|
||||
@Excel(name = "来款项目", width = 15)
|
||||
@ApiModelProperty(value = "来款项目")
|
||||
private String projectName;
|
||||
@Excel(name = "应收总金额", width = 15)
|
||||
@ApiModelProperty(value = "应收金额")
|
||||
private String allMoney;
|
||||
@Excel(name = "实收总金额", width = 15)
|
||||
@ApiModelProperty(value = "实收金额")
|
||||
private String comeAllMoney;
|
||||
@Excel(name = "来款用途", width = 15,dicCode = "charge_use")
|
||||
@ApiModelProperty(value = "来款用途编码")
|
||||
private String chargeUse;
|
||||
|
||||
@ApiModelProperty(value = "来款用途")
|
||||
private String chargeUse_text;
|
||||
}
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
package com.jero.statistics.entity;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.DecimalMax;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* @author zql
|
||||
* @date 2021/9/23 14:16
|
||||
*/
|
||||
@Data
|
||||
public class CompanyComeMoneyDetailSearch {
|
||||
|
||||
@ApiModelProperty(value = "来款企业id")
|
||||
private String chargeCompanyTemporaryId;
|
||||
|
||||
@ApiModelProperty(value = "来款项目")
|
||||
private String projectName;
|
||||
|
||||
@ApiModelProperty(value = "来款年份")
|
||||
private String year;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "来款用途编码")
|
||||
private String chargeUse;
|
||||
|
||||
@ApiModelProperty(value = "付款状态")
|
||||
private String inAccountStatue;
|
||||
|
||||
@DecimalMax(value = "9999999999.99",message = "应收总金额(元)格式错误")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||
@ApiModelProperty(value = "应收总金额")
|
||||
private BigDecimal allMoney;
|
||||
|
||||
@DecimalMax(value = "9999999999.99",message = "应收总金额(元)格式错误")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||
@ApiModelProperty(value = "应收总金额范围")
|
||||
private BigDecimal allMoneyTwo;
|
||||
}
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
package com.jero.statistics.entity;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
|
||||
/**
|
||||
* @author zql
|
||||
* @date 2021/9/23 14:09
|
||||
*/
|
||||
@Data
|
||||
public class CompanyComeMoneyList {
|
||||
|
||||
@ApiModelProperty(value = "来款企业id")
|
||||
private String chargeCompanyTemporaryId;
|
||||
|
||||
@Excel(name = "来款企业", width = 15)
|
||||
@ApiModelProperty(value = "来款企业")
|
||||
private String chargeCompanyTemporaryName;
|
||||
|
||||
@Excel(name = "应收总金额", width = 15)
|
||||
@ApiModelProperty(value = "应收总金额")
|
||||
private String allMoney;
|
||||
|
||||
@Excel(name = "实收总金额", width = 15)
|
||||
@ApiModelProperty(value = "实收总金额")
|
||||
private String comeAllMoney;
|
||||
}
|
||||
+34
@@ -0,0 +1,34 @@
|
||||
package com.jero.statistics.entity;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.DecimalMax;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* @author zql
|
||||
* @date 2021/9/23 14:14
|
||||
*/
|
||||
@Data
|
||||
public class CompanyComeMoneySearch {
|
||||
|
||||
|
||||
@ApiModelProperty(value = "来款企业id")
|
||||
private String chargeCompanyTemporaryId;
|
||||
|
||||
@ApiModelProperty(value = "来款年份")
|
||||
private String year;
|
||||
|
||||
@DecimalMax(value = "9999999999.99",message = "应收总金额(元)格式错误")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||
@ApiModelProperty(value = "应收总金额")
|
||||
private BigDecimal allMoney;
|
||||
|
||||
@DecimalMax(value = "9999999999.99",message = "应收总金额(元)格式错误")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING)
|
||||
@ApiModelProperty(value = "应收总金额范围")
|
||||
private BigDecimal allMoneyTwo;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user