Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
yunuo970428 2 weeks ago
parent
commit
b9dc2c70d0
  1. 3
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeposit/AppBusDepositDetailInfoQuery.java
  2. 20
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeposit/BusDepositService.java
  3. 2175
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  4. 9
      anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/factoryDailyReport/FactoryDaliyReportFeign.java
  5. 32
      anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/factoryDailyReport/SybVo.java
  6. 18
      anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/factoryDailyReport/YearAllVo.java
  7. 5
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/factoryDailyReport/FactoryDaliyReportMapper.java
  8. 145
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/factoryDailyReport/FactoryDaliyReportMapper.xml
  9. 8
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/factoryDailyReport/FactoryDaliyReportRest.java
  10. 62
      anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/factoryDailyReport/FactoryDaliyReportService.java
  11. 3
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/virtualOrders/deposit/DepositDetailInfoQuery.java

3
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeposit/AppBusDepositDetailInfoQuery.java

@ -10,7 +10,8 @@ public class AppBusDepositDetailInfoQuery implements Query {
@ApiModelProperty("订单sid")
private String virtualOrderSid;
@ApiModelProperty("全路径")
private String orgPath;
@ApiModelProperty("用户sid")
private String userSid;
}

20
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeposit/BusDepositService.java

@ -26,6 +26,7 @@ import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@ -132,8 +133,21 @@ public class BusDepositService extends MybatisBaseService<BusDepositMapper, BusD
String userSid = query.getUserSid();
String virtualOrderSid = query.getVirtualOrderSid();
SysUserVo sysUserVo = sysUserFeign.fetchBySid(userSid).getData();
String orgSid = sysStaffOrgFeign.getPathSidByUserSid(userSid).getData();
SysOrganizationVo data = sysOrganizationFeign.fetchBySid(orgSid).getData();
String deptName = "";
if (StringUtils.isNotBlank(query.getOrgPath())) {
List<String> split = Arrays.asList(query.getOrgPath().split("/"));
if (split.size() > 1) {
//获取本级sid获取本级部门信息
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(split.size() - 2)).getData();
SysOrganizationVo sysOrganization1 = sysOrganizationFeign.fetchBySid(split.get(split.size() - 1)).getData();
deptName = sysOrganization.getName() + "/" + sysOrganization1.getName();
deptName = sysOrganization1.getName();
} else {
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(0)).getData();
deptName = sysOrganization.getName();
deptName = sysOrganization.getName();
}
}
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
AppBusDepositBusDetailsVo vo = new AppBusDepositBusDetailsVo();
if (StringUtils.isNotBlank(virtualOrderSid)) {
@ -162,7 +176,7 @@ public class BusDepositService extends MybatisBaseService<BusDepositMapper, BusD
vo.setCustomerList(customerList);
return vo;
} else {
vo.setDepartmentName(data.getName());
vo.setDepartmentName(deptName);
vo.setStaffName(sysUserVo.getName());
vo.setCreateDate(simpleDateFormat.format(new Date()));
return vo;

2175
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java

File diff suppressed because it is too large

9
anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/factoryDailyReport/FactoryDaliyReportFeign.java

@ -3,6 +3,7 @@ package com.yxt.anrui.reportcenter.api.factoryDailyReport;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
@ -20,14 +21,18 @@ import java.util.Map;
path = "v1/factoryDailyReport",
fallback = FactoryDaliyReportFeignFallback.class)
public interface FactoryDaliyReportFeign {
@PostMapping("pageList1")
@PostMapping("/pageList")
@ResponseBody
ResultBean<FactoryDaliyReportVo> pageList1(@RequestBody PagerQuery<FactoryDaliyReportQuery> pagerQuery);
@PostMapping("pageList")
@PostMapping("/pageList1")
@ResponseBody
ResultBean<Map<String, Object>> pageList(@RequestBody PagerQuery<FactoryDaliyReportQuery> pagerQuery);
@GetMapping("/syb")
@ResponseBody
ResultBean<SybVo> getSybList();
}

32
anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/factoryDailyReport/SybVo.java

@ -0,0 +1,32 @@
package com.yxt.anrui.reportcenter.api.factoryDailyReport;
import lombok.Data;
import java.util.List;
/**
* @description:
* @author: dimengzhe
* @date: 2025/5/21
**/
@Data
public class SybVo {
private String title;
private List<YearAllVo> row1;
private List<String> row2;
private List<String> row3;
private List<String> row4;
private List<String> row5;
private List<String> row6;
private List<String> row7;
private List<String> row8;
private List<String> row9;
private List<String> row10;
private List<String> row11;
}

18
anrui-reportcenter/anrui-reportcenter-api/src/main/java/com/yxt/anrui/reportcenter/api/factoryDailyReport/YearAllVo.java

@ -0,0 +1,18 @@
package com.yxt.anrui.reportcenter.api.factoryDailyReport;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2025/5/21
**/
@Data
public class YearAllVo {
private String name;
private String colspan;
private String linkSid;
}

5
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/factoryDailyReport/FactoryDaliyReportMapper.java

@ -3,6 +3,7 @@ package com.yxt.anrui.reportcenter.biz.factoryDailyReport;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.FactoryDaliyReportVo;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.YearAllVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -19,4 +20,8 @@ public interface FactoryDaliyReportMapper {
List<FactoryDaliyReportVo> selectRecordList(@Param("map") Map<String, Object> map, @Param(Constants.WRAPPER)QueryWrapper<FactoryDaliyReportVo> qw);
int selectRecordCount(@Param(Constants.WRAPPER)QueryWrapper<FactoryDaliyReportVo> qw);
List<YearAllVo> getSybNameList();
List<FactoryDaliyReportVo> getSybList();
}

145
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/factoryDailyReport/FactoryDaliyReportMapper.xml

@ -134,4 +134,149 @@
</where>
group by year)a where a.year != '' and a.year is not null
</select>
<select id="getSybNameList" resultType="com.yxt.anrui.reportcenter.api.factoryDailyReport.YearAllVo">
SELECT
so.name,
so.sid AS linkSid,
COUNT(DISTINCT LEFT(date_info.date_str, 4)) AS colspan
FROM (
-- 单车返利表
SELECT
SUBSTRING_INDEX(SUBSTRING_INDEX(orgPath, '/', 2), '/', -1) AS second_level_org,
palceGenDate AS date_str
FROM anrui_scm.scm_veh_rebate
WHERE orgPath LIKE '%/%/%'
AND palceGenDate IS NOT NULL
AND LEFT(palceGenDate, 4) != '' and LEFT(palceGenDate, 4) is not null
UNION ALL
-- 专项返利表
SELECT
SUBSTRING_INDEX(SUBSTRING_INDEX(orgPath, '/', 2), '/', -1) AS second_level_org,
palceGenDate AS date_str
FROM anrui_scm.scm_special_rebate
WHERE orgPath LIKE '%/%/%'
AND palceGenDate IS NOT NULL
AND LEFT(palceGenDate, 4) != '' and LEFT(palceGenDate, 4) is not null
UNION ALL
-- 回款返利表
SELECT
SUBSTRING_INDEX(SUBSTRING_INDEX(orgPath, '/', 2), '/', -1) AS second_level_org,
collectionDate AS date_str
FROM anrui_scm.scm_collection_rebate
WHERE orgPath LIKE '%/%/%'
AND collectionDate IS NOT NULL
AND LEFT(collectionDate, 4) != '' and LEFT(collectionDate, 4) is not null
) AS date_info
LEFT JOIN anrui_portal.sys_organization so
ON so.sid = date_info.second_level_org
GROUP BY date_info.second_level_org, so.name, so.sid
ORDER BY date_info.second_level_org DESC;
</select>
<select id="getSybList" resultType="com.yxt.anrui.reportcenter.api.factoryDailyReport.FactoryDaliyReportVo">
SELECT
a.year,
a.division_name,
ROUND(SUM(a.estimateRebate), 2) AS estimate,
ROUND(SUM(a.uploadMoney), 2) AS upload,
ROUND(SUM(a.adjustmentMoney), 2) AS adjust,
ROUND(SUM(a.notUploadMoney), 2) AS notUploadMoney,
ROUND(SUM(a.fee), 2) AS fee,
ROUND(SUM(a.expense_payment), 2) AS expense_payment,
ROUND(SUM(a.pending_payment), 2) AS pending_payment,
ROUND(SUM(a.offset_payment), 2) AS offset_payment,
ROUND(SUM(a.remaining_payment), 2) AS remaining_payment,
ROUND(SUM(a.unuploaded_rebate), 2) AS unuploaded_rebate
FROM (
SELECT
LEFT(palceGenDate, 4) AS year,
SUBSTRING_INDEX(SUBSTRING_INDEX(orgPath, '/', 2), '/', -1) AS division_name,
SUM(estimateRebate) estimateRebate,
SUM(uploadMoney) uploadMoney,
SUM(adjustmentMoney) adjustmentMoney,
SUM(
estimateRebate +
IFNULL(CASE WHEN isAdjustment = '是' AND adjustmentState = 1 THEN adjustmentMoney ELSE 0 END, 0)
- IFNULL(uploadMoney, 0) - IFNULL(secondaryUploadMoney, 0)
) AS notUploadMoney,
SUM(
estimateRebate +
IFNULL(CASE WHEN isAdjustment = '是' AND adjustmentState = 1 THEN adjustmentMoney ELSE 0 END, 0)
- (uploadMoney + secondaryUploadMoney)
) AS unuploaded_rebate,
SUM(onceTreatCost + secondTreatCost + tempTreatCost + expectTreatCost + expectSuppCost +
onceSuppCost + secondSuppCost + tempSuppCost) AS fee,
SUM(onceTreatCost + secondTreatCost + tempTreatCost) AS expense_payment,
SUM(expectTreatCost) AS pending_payment,
SUM(expectSuppCost + onceSuppCost + secondSuppCost + tempSuppCost) AS offset_payment,
SUM(
estimateRebate - (uploadMoney + secondaryUploadMoney)
- (onceTreatCost + secondTreatCost + tempTreatCost)
- expectTreatCost
- (expectSuppCost + onceSuppCost + secondSuppCost + tempSuppCost)
) AS remaining_payment
FROM anrui_scm.scm_veh_rebate
GROUP BY LEFT(palceGenDate, 4), SUBSTRING_INDEX(SUBSTRING_INDEX(orgPath, '/', 2), '/', -1)
UNION ALL
SELECT
LEFT(palceGenDate, 4) AS year,
SUBSTRING_INDEX(SUBSTRING_INDEX(orgPath, '/', 2), '/', -1) AS division_name,
SUM(estimateRebate) estimateRebate,
SUM(uploadMoney) uploadMoney,
SUM(adjustmentMoney) adjustmentMoney,
SUM(
estimateRebate +
IFNULL(CASE WHEN isAdjustment = '是' AND adjustmentState = 1 THEN adjustmentMoney ELSE 0 END, 0)
- IFNULL(uploadMoney, 0) - IFNULL(secondaryUploadMoney, 0)
) AS notUploadMoney,
SUM(
estimateRebate +
IFNULL(CASE WHEN isAdjustment = '是' AND adjustmentState = 1 THEN adjustmentMoney ELSE 0 END, 0)
- (uploadMoney + secondaryUploadMoney)
) AS unuploaded_rebate,
SUM(onceTreatCost + secondTreatCost + tempTreatCost + expectTreatCost + expectSuppCost +
onceSuppCost + secondSuppCost + tempSuppCost) AS fee,
SUM(onceTreatCost + secondTreatCost + tempTreatCost) AS expense_payment,
SUM(expectTreatCost) AS pending_payment,
SUM(expectSuppCost + onceSuppCost + secondSuppCost + tempSuppCost) AS offset_payment,
SUM(
estimateRebate - (uploadMoney + secondaryUploadMoney)
- (onceTreatCost + secondTreatCost + tempTreatCost)
- expectTreatCost
- (expectSuppCost + onceSuppCost + secondSuppCost + tempSuppCost)
) AS remaining_payment
FROM anrui_scm.scm_special_rebate
GROUP BY LEFT(palceGenDate, 4), SUBSTRING_INDEX(SUBSTRING_INDEX(orgPath, '/', 2), '/', -1)
UNION ALL
SELECT
LEFT(collectionDate, 4) AS year,
SUBSTRING_INDEX(SUBSTRING_INDEX(orgPath, '/', 2), '/', -1) AS division_name,
SUM(estimateRebate) estimateRebate,
SUM(uploadMoney) uploadMoney,
SUM(adjustmentMoney) adjustmentMoney,
SUM(estimateRebate + IFNULL(adjustmentMoney, 0) - IFNULL(uploadMoney, 0)) AS notUploadMoney,
SUM(estimateRebate + IFNULL(adjustmentMoney, 0) - uploadMoney) AS unuploaded_rebate,
0 AS fee,
0 AS expense_payment,
0 AS pending_payment,
0 AS offset_payment,
SUM(estimateRebate - uploadMoney) AS remaining_payment
FROM anrui_scm.scm_collection_rebate
GROUP BY LEFT(collectionDate, 4), SUBSTRING_INDEX(SUBSTRING_INDEX(orgPath, '/', 2), '/', -1)
) a
WHERE a.year IS NOT NULL AND a.year != ''
GROUP BY a.year, a.division_name
ORDER BY a.division_name desc, a.year DESC;
</select>
</mapper>

8
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/factoryDailyReport/FactoryDaliyReportRest.java

@ -3,6 +3,7 @@ package com.yxt.anrui.reportcenter.biz.factoryDailyReport;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.FactoryDaliyReportFeign;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.FactoryDaliyReportQuery;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.FactoryDaliyReportVo;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.SybVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -38,4 +39,11 @@ public class FactoryDaliyReportRest implements FactoryDaliyReportFeign {
Map<String,Object> map = factoryDaliyReportService.pageList(pagerQuery);
return rb.success().setData(map);
}
@Override
public ResultBean<SybVo> getSybList() {
return factoryDaliyReportService.getSybList();
}
}

62
anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/factoryDailyReport/FactoryDaliyReportService.java

@ -7,11 +7,10 @@ import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReport;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReportAppPagerQuery;
import com.yxt.anrui.reportcenter.api.dailyreport.DailyReportListVo;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.FactoryDaliyReportQuery;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.FactoryDaliyReportVo;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.UnUploadVo;
import com.yxt.anrui.reportcenter.api.factoryDailyReport.*;
import com.yxt.anrui.reportcenter.config.DecimalUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@ -20,6 +19,7 @@ import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
/**
* @description:
@ -158,4 +158,60 @@ public class FactoryDaliyReportService {
reportMap.put("records", recordList);
return reportMap;
}
public ResultBean<SybVo> getSybList() {
ResultBean<SybVo> rb = ResultBean.fireFail();
SybVo sysVo = new SybVo();
sysVo.setTitle("事业部报表");
//先查询有哪些事业部以及事业部下的年份
List<YearAllVo> orgNameList = factoryDaliyReportMapper.getSybNameList();
List<FactoryDaliyReportVo> factoryDaliyReportVoList = factoryDaliyReportMapper.getSybList();
factoryDaliyReportVoList.removeAll(Collections.singleton(null));
if(!factoryDaliyReportVoList.isEmpty()){
for (int i = 0; i < factoryDaliyReportVoList.size(); i++) {
FactoryDaliyReportVo factoryDaliyReportVo = factoryDaliyReportVoList.get(i);
factoryDaliyReportVo.setEstimate(DecimalUtil.format(factoryDaliyReportVo.getEstimate()));
factoryDaliyReportVo.setUpload(DecimalUtil.format(factoryDaliyReportVo.getUpload()));
factoryDaliyReportVo.setAdjust(DecimalUtil.format(factoryDaliyReportVo.getAdjust()));
factoryDaliyReportVo.setNotUploadMoney(DecimalUtil.format(factoryDaliyReportVo.getNotUploadMoney()));
factoryDaliyReportVo.setUnuploaded_rebate(DecimalUtil.format(factoryDaliyReportVo.getUnuploaded_rebate()));
factoryDaliyReportVo.setFee(DecimalUtil.format(factoryDaliyReportVo.getFee()));
factoryDaliyReportVo.setExpense_payment(DecimalUtil.format(factoryDaliyReportVo.getExpense_payment()));
factoryDaliyReportVo.setPending_payment(DecimalUtil.format(factoryDaliyReportVo.getPending_payment()));
factoryDaliyReportVo.setOffset_payment(DecimalUtil.format(factoryDaliyReportVo.getOffset_payment()));
}
//年份
List<String> row2 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getYear).collect(Collectors.toList());
//预提
List<String> row3 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getEstimate).collect(Collectors.toList());
//上传
List<String> row4 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getUpload).collect(Collectors.toList());
//调整
List<String> row5 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getAdjust).collect(Collectors.toList());
//未上传
List<String> row6 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getNotUploadMoney).collect(Collectors.toList());
//其中返利
List<String> row7 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getUnuploaded_rebate).collect(Collectors.toList());
//其中费用
List<String> row8 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getFee).collect(Collectors.toList());
//支出
List<String> row9 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getExpense_payment).collect(Collectors.toList());
//待支付
List<String> row10 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getPending_payment).collect(Collectors.toList());
//抵顶
List<String> row11 = factoryDaliyReportVoList.stream().map(FactoryDaliyReportVo::getOffset_payment).collect(Collectors.toList());
sysVo.setRow1(orgNameList);
sysVo.setRow2(row2);
sysVo.setRow3(row3);
sysVo.setRow4(row4);
sysVo.setRow5(row5);
sysVo.setRow6(row6);
sysVo.setRow7(row7);
sysVo.setRow8(row8);
sysVo.setRow9(row9);
sysVo.setRow10(row10);
sysVo.setRow11(row11);
}
return rb.success().setData(sysVo);
}
}

3
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/virtualOrders/deposit/DepositDetailInfoQuery.java

@ -10,7 +10,8 @@ public class DepositDetailInfoQuery implements Query {
private static final long serialVersionUID = -8558418138668642644L;
@ApiModelProperty("订单sid")
private String virtualOrderSid;
@ApiModelProperty("全路径")
private String orgPath;
@ApiModelProperty("用户sid")
private String userSid;
}

Loading…
Cancel
Save