wangpengfei 2 years ago
parent
commit
d942c5c4c4
  1. 30
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/DailySalesReport.java
  2. 21
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/DailySalesReportDto.java
  3. 23
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/DailySalesReportQuery.java
  4. 21
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/DailySalesReportVo.java
  5. 13
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/FinancialData.java
  6. 15
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/ListSalesChannelData.java
  7. 11
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/financialAnalysisChartData.java
  8. 25
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportMapper.java
  9. 8
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportMapper.xml
  10. 41
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportRest.java
  11. 164
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportService.java
  12. 3
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/ds/rms/RmsMapper.java
  13. 40
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/ds/supplychain/SupplyChainMapper.java
  14. 51
      yxt_supervise/supervise-report/supervise-report-biz/src/test/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportServiceTest.java
  15. 2
      yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmService.java

30
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/DailySalesReport.java

@ -0,0 +1,30 @@
package com.yxt.supervise.report.api.dailysalesreport;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/9/6 11:35
*/
@ApiModel(value = "每日销售日报表", description = "每日销售日报表")
@TableName("daily_sales_report")
@Data
public class DailySalesReport {
private String id;
private String sid;
//联网连锁店销售总额
private double lwlsdTotalSales;
//连锁内加盟
private double lsnjnTotalSales;
//配送中心
private double pszxTotalSales;
//连锁外加盟
private double lswjmTotalSales;
//36524集团报烟门店仓
private double bymdcTotalSales;
//烟草连锁外加盟
private double yclswjmTotalSales;
private String orderDate;
}

21
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/DailySalesReportDto.java

@ -0,0 +1,21 @@
package com.yxt.supervise.report.api.dailysalesreport;
import com.yxt.common.core.dto.Dto;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/9/6 11:35
*/
@Data
public class DailySalesReportDto implements Dto {
private String id;
private String sid;
private double lwlsdTotalSales;
private double lsnjnTotalSales;
private String pszxTotalSales;
private String lswjmTotalSales;
private String bymdcTotalSales;
private String yclswjmTotalSales;
private String orderDate;
}

23
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/DailySalesReportQuery.java

@ -0,0 +1,23 @@
package com.yxt.supervise.report.api.dailysalesreport;
import com.yxt.common.core.query.Query;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/9/6 11:35
*/
@Data
public class DailySalesReportQuery implements Query {
private String id;
private String sid;
private double lwlsdTotalSales;
private double lsnjnTotalSales;
private String pszxTotalSales;
private String lswjmTotalSales;
private String bymdcTotalSales;
private String yclswjmTotalSales;
private String orderDate;
private String endDate;
private String startDate;
}

21
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/DailySalesReportVo.java

@ -0,0 +1,21 @@
package com.yxt.supervise.report.api.dailysalesreport;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/9/6 11:35
*/
@Data
public class DailySalesReportVo implements Vo {
private String id;
private String sid;
private double lwlsdTotalSales;
private double lsnjnTotalSales;
private String pszxTotalSales;
private String lswjmTotalSales;
private String bymdcTotalSales;
private String yclswjmTotalSales;
private String orderDate;
}

13
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/FinancialData.java

@ -0,0 +1,13 @@
package com.yxt.supervise.report.api.dailysalesreport;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/9/6 14:36
*/
@Data
public class FinancialData {
private String totalPrice;
private String name;
}

15
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/ListSalesChannelData.java

@ -0,0 +1,15 @@
package com.yxt.supervise.report.api.dailysalesreport;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/9/6 14:37
*/
@Data
public class ListSalesChannelData {
private String deductionAccountsReceivable;
private String salesChannelCategory;
private String totalAmount;
private String accountsReceivable;
}

11
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/dailysalesreport/financialAnalysisChartData.java

@ -0,0 +1,11 @@
package com.yxt.supervise.report.api.dailysalesreport;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/9/6 14:39
*/
@Data
public class financialAnalysisChartData {
}

25
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportMapper.java

@ -0,0 +1,25 @@
package com.yxt.supervise.report.biz.dailysalesreport;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.supervise.report.api.dailysalesreport.DailySalesReport;
import com.yxt.supervise.report.api.dailysalesreport.DailySalesReportVo;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
* @author wangpengfei
* @date 2023/9/6 13:40
*/
@Mapper
public interface DailySalesReportMapper extends BaseMapper<DailySalesReport> {
@Select("select * from daily_sales_report")
List<DailySalesReport> getSalesByDate();
}

8
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportMapper.xml

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.supervise.report.biz.dailysalesreport.DailySalesReportMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
</mapper>

41
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportRest.java

@ -0,0 +1,41 @@
package com.yxt.supervise.report.biz.dailysalesreport;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.supervise.report.api.dailysalesreport.DailySalesReportDto;
import com.yxt.supervise.report.api.dailysalesreport.DailySalesReportQuery;
import com.yxt.supervise.report.api.dailysalesreport.DailySalesReportVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.text.ParseException;
import java.util.List;
/**
* @author wangpengfei
* @date 2023/4/21 11:18
*/
@RestController
@RequestMapping("/DailySalesReport")
public class DailySalesReportRest {
@Autowired
DailySalesReportService DailySalesReportService;
@PostMapping("/saveSales")
public ResultBean<DailySalesReportVo> saveSales(@RequestParam("orderDate") String orderDate){
ResultBean rb = ResultBean.fireFail();
return DailySalesReportService.saveSales(orderDate);
}
@PostMapping("/getSalesByDate")
public ResultBean<DailySalesReportVo> getSalesByDate(@RequestBody DailySalesReportQuery pq){
ResultBean rb = ResultBean.fireFail();
return DailySalesReportService.getSalesByDate(pq);
}
@PostMapping("/test")
public ResultBean test( ) throws ParseException {
ResultBean rb = ResultBean.fireFail();
DailySalesReportService.test();
return rb;
}
}

164
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportService.java

@ -0,0 +1,164 @@
package com.yxt.supervise.report.biz.dailysalesreport;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.result.ResultBean;
import com.yxt.supervise.report.api.dailysalesreport.DailySalesReport;
import com.yxt.supervise.report.api.dailysalesreport.DailySalesReportQuery;
import com.yxt.supervise.report.api.dailysalesreport.FinancialData;
import com.yxt.supervise.report.api.dailysalesreport.ListSalesChannelData;
import com.yxt.supervise.report.ds.supplychain.SupplyChainMapper;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
/**
* @author wangpengfei
* @date 2023/4/21 11:18
*/
@Service
public class DailySalesReportService extends MybatisBaseService<DailySalesReportMapper, DailySalesReport> {
@Autowired
SupplyChainMapper supplyChainMapper;
public ResultBean saveSales(String orderDate) {
ResultBean rb=new ResultBean();
DailySalesReport dailySalesReport=new DailySalesReport();
dailySalesReport.setSid(UUID.randomUUID().toString());
double lwlsd=supplyChainMapper.amountOfLsdOnDay(orderDate);
dailySalesReport.setLwlsdTotalSales(lwlsd);
double lsnjn=supplyChainMapper.amountOfLsnjmOnDay(orderDate);
dailySalesReport.setLsnjnTotalSales(lsnjn);
double pszx=supplyChainMapper.amountOfPszxDay(orderDate);
dailySalesReport.setPszxTotalSales(pszx);
double lswjm=supplyChainMapper.amountOfLswjmDay(orderDate);
dailySalesReport.setLswjmTotalSales(lswjm);
double bymdc=supplyChainMapper.amountOfYcDay(orderDate);
dailySalesReport.setBymdcTotalSales(bymdc);
double yclsw=supplyChainMapper.amountOfDayJmd(orderDate);
dailySalesReport.setYclswjmTotalSales(yclsw);
dailySalesReport.setOrderDate(orderDate);
baseMapper.insert(dailySalesReport);
return rb;
}
public ResultBean getSalesByDate(DailySalesReportQuery pq) {
ResultBean rb=new ResultBean<>();
List<DailySalesReport> dailySalesReports=baseMapper.getSalesByDate();
List<List<String>> financialAnalysisChartData=convert(dailySalesReports);
Map<String,Object> map=new HashMap<>();
map.put("financialAnalysisChartData",financialAnalysisChartData);
List<ListSalesChannelData> listSalesChannelData=salesChanne(pq.getOrderDate());
map.put("listSalesChannelData",listSalesChannelData);
// List<FinancialData> financialData=new ArrayList<>();
// FinancialData financialData1=new FinancialData();
// financialData1.setName("销售商品收到的现金(元)");
// financialData1.setTotalPrice("637774.16");
// FinancialData financialData2=new FinancialData();
// financialData2.setName("销售商品收到的现金(元)");
// financialData2.setTotalPrice("637774.16");
// financialData.add(financialData1);
// financialData.add(financialData2);
// map.put("financialData",financialData);
return rb.success().setData(map);
}
public List<ListSalesChannelData> salesChanne(String orderDate){
List<ListSalesChannelData> list=new ArrayList<>();
double lwlsdTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getLwlsdTotalSales();
ListSalesChannelData lwlsd=new ListSalesChannelData();
lwlsd.setDeductionAccountsReceivable(String.valueOf(lwlsdTotalSales));
lwlsd.setSalesChannelCategory("连网连锁店");
lwlsd.setTotalAmount(String.valueOf(lwlsdTotalSales));
lwlsd.setAccountsReceivable("0");
double lsnjnTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getLsnjnTotalSales();
ListSalesChannelData lsnjn=new ListSalesChannelData();
lsnjn.setDeductionAccountsReceivable(String.valueOf(lsnjnTotalSales));
lsnjn.setSalesChannelCategory("连锁内加盟");
lsnjn.setTotalAmount(String.valueOf(lsnjnTotalSales));
lsnjn.setAccountsReceivable("0");
double pszxTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getPszxTotalSales();
ListSalesChannelData pszx=new ListSalesChannelData();
pszx.setDeductionAccountsReceivable(String.valueOf(pszxTotalSales));
pszx.setSalesChannelCategory("配送中心");
pszx.setTotalAmount(String.valueOf(pszxTotalSales));
pszx.setAccountsReceivable("0");
double lswjmTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getLswjmTotalSales();
ListSalesChannelData lswjm=new ListSalesChannelData();
lswjm.setDeductionAccountsReceivable(String.valueOf(lswjmTotalSales));
lswjm.setSalesChannelCategory("连锁外加盟");
lswjm.setTotalAmount(String.valueOf(lswjmTotalSales));
lswjm.setAccountsReceivable("0");
double bymdcTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getBymdcTotalSales();
ListSalesChannelData bymdc=new ListSalesChannelData();
bymdc.setDeductionAccountsReceivable(String.valueOf(bymdcTotalSales));
bymdc.setSalesChannelCategory("36524集团报烟门店仓");
bymdc.setTotalAmount(String.valueOf(bymdcTotalSales));
bymdc.setAccountsReceivable("0");
double yclswjmTotalSales=baseMapper.selectOne(new QueryWrapper<DailySalesReport>().eq("orderDate",orderDate)).getYclswjmTotalSales();
ListSalesChannelData yclswjm=new ListSalesChannelData();
yclswjm.setDeductionAccountsReceivable(String.valueOf(yclswjmTotalSales));
yclswjm.setSalesChannelCategory("烟草连锁外加盟");
yclswjm.setTotalAmount(String.valueOf(yclswjmTotalSales));
yclswjm.setAccountsReceivable("0");
list.add(lwlsd);
list.add(lsnjn);
list.add(pszx);
list.add(lswjm);
list.add(bymdc);
list.add(yclswjm);
return list;
}
public List<List<String>> convert(List<DailySalesReport> list){
List<List<String>> lists=new ArrayList<>();
List<String> date=new ArrayList<>();
date.add("日期");
date.add("连网连锁店");
date.add("连锁内加盟");
date.add("配送中心");
date.add("连锁外加盟");
date.add("36524集团报烟门店仓");
date.add("烟草连锁外加盟");
lists.add(date);
for(DailySalesReport dailySalesReport:list){
date.add(dailySalesReport.getOrderDate());
date.add(String.valueOf(dailySalesReport.getLwlsdTotalSales()));
date.add(String.valueOf(dailySalesReport.getLsnjnTotalSales()));
date.add(String.valueOf(dailySalesReport.getPszxTotalSales()));
date.add(String.valueOf(dailySalesReport.getLswjmTotalSales()));
date.add(String.valueOf(dailySalesReport.getBymdcTotalSales()));
date.add(String.valueOf(dailySalesReport.getYclswjmTotalSales()));
}
return lists;
}
public boolean test() throws ParseException {
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd");
//String date=ft.format(new Date()-1);
//昨天时间
Date date= DateUtil.yesterday();
//结束时间
String d="2023-07-01";
Date date1=ft.parse(d);
while (date1.before(date)){
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, -1);
date = calendar.getTime();
System.out.println(ft.format(date));
saveSales(ft.format(date));
}
return true;
}
}

3
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/ds/rms/RmsMapper.java

@ -2,9 +2,6 @@ package com.yxt.supervise.report.ds.rms;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.supervise.report.ds.crm.ProjectInfo;
import com.yxt.supervise.report.ds.crm.UserProject;
import com.yxt.supervise.report.ds.warehouse.StoreHouse;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

40
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/ds/supplychain/SupplyChainMapper.java

@ -0,0 +1,40 @@
package com.yxt.supervise.report.ds.supplychain;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.supervise.report.ds.rms.RiskAlarm;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/**
* @author wangpengfei
* @date 2023/9/6 14:05
*/
@DS("supplychain")
@Mapper
public interface SupplyChainMapper extends BaseMapper<RiskAlarm> {
@Select("select CONVERT(IFNULL(sum(saleNum*salePrice),0),DECIMAL(12,2)) as amount from ( " +
" select gs.saleNum,gs.salePrice from gd_sales gs left join store_index si on gs.storeCode=si.code " +
" where gs.dataDate=#{dataDate} and si.`type` ='连网连锁店' ) t ")
double amountOfLsdOnDay(@Param("dataDate") String orderDate);
@Select("select CONVERT(IFNULL(sum(saleNum*salePrice),0),DECIMAL(12,2)) as amount from ( " +
" select gs.saleNum,gs.salePrice from gd_sales gs left join store_index si on gs.storeCode=si.code " +
" where gs.dataDate=#{dataDate} and si.`type` ='连锁内加盟' ) t ")
double amountOfLsnjmOnDay(@Param("dataDate") String orderDate);
@Select("SELECT CONVERT(IFNULL(sum(saleNum*salePrice),0),DECIMAL(12,2)) as amount FROM gd_wholesale where dataDate=#{dataDate} ")
double amountOfPszxDay(String orderDate);
@Select("SELECT CONVERT(IFNULL(sum(colq16),0),DECIMAL(12,2)) as amount FROM gd_instorage_jmd where orderDate=#{orderDate} ")
double amountOfLswjmDay(@Param("orderDate") String orderDate);
@Select("SELECT CONVERT(IFNULL(sum(saleNum*salePrice),0),DECIMAL(12,2)) as amount FROM gd_sales_yc where dataDate=#{dataDate}")
double amountOfYcDay(@Param("dataDate") String orderDate);
@Select("select CONVERT(IFNULL(sum(t.colq16),0),DECIMAL(12,2)) as amount from ( " +
" select gig.* from gd_instorage_yc gig left join store_index si on gig.colb1=si.code " +
" where gig.orderDate=#{orderDate} and (si.`type` ='连锁外加盟(销配结算)' OR si.`type` ='连锁外加盟(销配结算)' ) ) t ")
double amountOfDayJmd(@Param("orderDate") String orderDate);
}

51
yxt_supervise/supervise-report/supervise-report-biz/src/test/java/com/yxt/supervise/report/biz/dailysalesreport/DailySalesReportServiceTest.java

@ -0,0 +1,51 @@
package com.yxt.supervise.report.biz.dailysalesreport;
import cn.hutool.Hutool;
import cn.hutool.core.date.DateUtil;
import com.yxt.supervise.report.biz.messagepushlog.MessagePushLogService;
import com.yxt.supervise.report.wx.SuperviseWxMessSender;
import junit.framework.TestCase;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* @author wangpengfei
* @date 2023/9/6 15:18
*/
@Component
public class DailySalesReportServiceTest extends TestCase {
@Autowired
private DailySalesReportService dailySalesReportService;
public static DailySalesReportServiceTest dailySalesReportServiceTest;
@PostConstruct // 初始化
public void init(){
dailySalesReportServiceTest= this;
dailySalesReportServiceTest.dailySalesReportService= this.dailySalesReportService;
}
public void test() throws ParseException {
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd");
//String date=ft.format(new Date()-1);
//昨天时间
Date date= DateUtil.yesterday();
//结束时间
String d="2023-07-01";
Date date1=ft.parse(d);
while (date1.before(date)){
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, -1);
date = calendar.getTime();
System.out.println(ft.format(date));
dailySalesReportService.saveSales(ft.format(date));
}
}
}

2
yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmService.java

@ -106,7 +106,7 @@ public class RiskAlarmService extends MybatisBaseService<RiskAlarmMapper, RiskAl
riskAlarm.setTreatmentTime(new Date());
riskAlarm.setContent(dto.getDevices().toString());
RiskAlarmVo riskAlarmVo = baseMapper.getRiskAlarm(dto.getSid(),"030404");
determine(riskAlarmVo,riskAlarm,dto.getSid(),"0304034");
determine(riskAlarmVo,riskAlarm,dto.getSid(),"030404");
}
return rb.success().setMsg("成功");
}

Loading…
Cancel
Save