Browse Source

kafka消息队列、销售报表统计、接口修改、多线程

master
wangpengfei 2 years ago
parent
commit
8d8b51b333
  1. 6
      yxt/yxt-common/yxt-common-base/src/main/java/com/yxt/common/base/service/MybatisBaseService.java
  2. 2
      yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/restrictedbrand/RestrictedBrandDto.java
  3. 4
      yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/restrictedbrand/RestrictedBrandVo.java
  4. 1
      yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/restrictedcategory/RestrictedCategoryDto.java
  5. 3
      yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/restrictedcategory/RestrictedCategoryVo.java
  6. 13
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/gdinstoragegd/GdInstorageGdRest.java
  7. 11
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/gdinstoragegd/GdInstorageGdService.java
  8. 10
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/gdinventoryok/GdInventoryOkRest.java
  9. 9
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/gdsales/GdSalesRest.java
  10. 2
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandMapper.java
  11. 5
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandMapper.xml
  12. 23
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandRest.java
  13. 19
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandService.java
  14. 2
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryMapper.java
  15. 5
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryMapper.xml
  16. 23
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryRest.java
  17. 20
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryService.java
  18. 2
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/supplierbankinfo/SupplierBankInfoRest.java
  19. 15
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/kafka/messageconsumer/MessageConsumerRest.java
  20. 17
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/kafka/messageconsumer/MessageConsumerService.java
  21. 24
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/kafka/messageproducer/MessageProducerRest.java
  22. 25
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/kafka/messageproducer/MessageProducerService.java
  23. 129
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaygather/ReportSalesDayGather.java
  24. 156
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaygather/ReportSalesDayGatherDto.java
  25. 125
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaygather/ReportSalesDayGatherVo.java
  26. 11
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaystore/ReportSalesDayStore.java
  27. 13
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaystoreproduct/ReportSalesDayStoreProduct.java
  28. 13
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaytobaccostore/ReportSalesDayTobaccoStore.java
  29. 13
      yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaytobaccostoreproduct/ReportSalesDayTobaccoStoreProduct.java
  30. 10
      yxt_supervise/supervise-report/supervise-report-biz/pom.xml
  31. 63
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaygather/ReportSalesDayGatherMapper.java
  32. 189
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaygather/ReportSalesDayGatherService.java
  33. 10
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaylog/ReportSalesDayLogMapper.java
  34. 1
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaylog/ReportSalesDayLogMapper.xml
  35. 25
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaylog/ReportSalesDayLogRest.java
  36. 40
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaylog/ReportSalesDayLogService.java
  37. 14
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaystore/ReportSalesDayStoreMapper.java
  38. 21
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaystore/ReportSalesDayStoreService.java
  39. 13
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaystoreproduct/ReportSalesDayStoreProductMapper.java
  40. 20
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaystoreproduct/ReportSalesDayStoreProductService.java
  41. 14
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaytobaccostore/ReportSalesDayTobaccoStoreMapper.java
  42. 21
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaytobaccostore/ReportSalesDayTobaccoStoreService.java
  43. 16
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaytobaccostoreproduct/ReportSalesDayTobaccoStoreProductMapper.java
  44. 22
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaytobaccostoreproduct/ReportSalesDayTobaccoStoreProductService.java
  45. 68
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/thread/ReportThread.java
  46. 4
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/kafka/messageconsumer/MessageConsumerRest.java
  47. 14
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/kafka/messageconsumer/MessageConsumerService.java
  48. 10
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/kafka/messageproducer/MessageProducerRest.java
  49. 4
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/kafka/messageproducer/MessageProducerService.java

6
yxt/yxt-common/yxt-common-base/src/main/java/com/yxt/common/base/service/MybatisBaseService.java

@ -139,7 +139,11 @@ public class MybatisBaseService<M extends BaseMapper<T>, T> extends ServiceImpl<
map.put("sid", sid);
return baseMapper.deleteByMap(map);
}
public int deleteByid(String id) {
Map<String, Object> map = new HashMap<>();
map.put("id", id);
return baseMapper.deleteByMap(map);
}
/**
* 描述 : <描述函数实现的功能>. <br/>
* <p>

2
yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/restrictedbrand/RestrictedBrandDto.java

@ -50,7 +50,7 @@ public class RestrictedBrandDto implements Dto {
private static final long serialVersionUID = -4284546832808688666L;
private String sid;
private String id;
@ApiModelProperty("代码")
private String code;
@ApiModelProperty("名称")

4
yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/restrictedbrand/RestrictedBrandVo.java

@ -50,10 +50,12 @@ public class RestrictedBrandVo implements Vo {
private static final long serialVersionUID = 4695482182172367290L;
private String sid;
private String id;
@ApiModelProperty("代码")
private String code;
@ApiModelProperty("名称")
private String name;
private String dictValue;
private String dictKey;
}

1
yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/restrictedcategory/RestrictedCategoryDto.java

@ -50,6 +50,7 @@ public class RestrictedCategoryDto implements Dto {
private static final long serialVersionUID = 2112403315598174369L;
private String sid;
private String id;
@ApiModelProperty("监管品类")
private String categorys;
@ApiModelProperty("监管品类Key")

3
yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/restrictedcategory/RestrictedCategoryVo.java

@ -50,9 +50,12 @@ public class RestrictedCategoryVo implements Vo {
private static final long serialVersionUID = 7449291362621420732L;
private String sid;
private String id;
@ApiModelProperty("监管品类")
private String categorys;
@ApiModelProperty("监管品类Key")
private String categoryKey;
private String dictValue;
private String dictKey;
}

13
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/gdinstoragegd/GdInstorageGdRest.java

@ -11,9 +11,13 @@ import com.yxt.supervise.customer.api.gdsales.GdSalesQuery;
import com.yxt.supervise.customer.biz.gdinstoragelog.GdInstorageLogService;
import com.yxt.supervise.customer.biz.gdinventorylog.GdInventoryLogService;
import com.yxt.supervise.customer.biz.gdsaleslog.GdSalesLogService;
import com.yxt.supervise.customer.kafka.messageconsumer.MessageConsumerRest;
import com.yxt.supervise.customer.kafka.messageproducer.MessageProducerRest;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.stream.annotation.StreamListener;
import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -38,11 +42,8 @@ public class GdInstorageGdRest implements GdInstorageGdFeign {
GdInventoryLogService inventoryLogService;
@Autowired
GdSalesLogService gdSalesLogService;
@PostMapping("/sendMsg")
public void send(@RequestBody String message) {
gdInstorageGdService.sendMsg(message);
}
@Autowired
MessageProducerRest messageProducerRest;
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ -73,7 +74,7 @@ public class GdInstorageGdRest implements GdInstorageGdFeign {
GdInstorageLog gdInstorageLog=gdInstorageGdService.uploadAndInsert(file);
//判断都就给report服务发消息
if(ee(gdInstorageLog.getOrderDate())==true){
this.send(gdInstorageLog.getOrderDate());
messageProducerRest.send(gdInstorageLog.getOrderDate());
}
rb.success().setData(gdInstorageLog);
return rb;

11
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/gdinstoragegd/GdInstorageGdService.java

@ -39,6 +39,8 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.annotation.StreamListener;
import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.cloud.stream.messaging.Source;
import org.springframework.messaging.support.MessageBuilder;
import org.springframework.stereotype.Service;
@ -54,7 +56,6 @@ import java.util.List;
*/
@Slf4j
@Service
@EnableBinding(Source.class)
public class GdInstorageGdService extends MybatisBaseService<GdInstorageGdMapper, GdInstorageGd> {
@Autowired
FileUploadComponent fileUploadComponent;
@ -78,14 +79,6 @@ public class GdInstorageGdService extends MybatisBaseService<GdInstorageGdMapper
GdInstorageLogErrService gdInstorageLogErrService;
@Autowired
private GdInstorageJmdService gdInstorageJmdService;
@Autowired
private Source source;
public void sendMsg(String msg) {
System.out.println("customer开始执行");
source.output().send(MessageBuilder.withPayload(msg).build());
}
public PagerVo<GdInstorageGdVo> listPageVo(PagerQuery<GdInstorageGdQuery> pq) {
GdInstorageGdQuery query = pq.getParams();

10
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/gdinventoryok/GdInventoryOkRest.java

@ -14,6 +14,7 @@ import com.yxt.supervise.customer.biz.gdinstoragelog.GdInstorageLogService;
import com.yxt.supervise.customer.biz.gdinventorylog.GdInventoryLogService;
import com.yxt.supervise.customer.biz.gdinventoryyc.GdInventoryYcService;
import com.yxt.supervise.customer.biz.gdsaleslog.GdSalesLogService;
import com.yxt.supervise.customer.kafka.messageproducer.MessageProducerRest;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@ -45,10 +46,9 @@ public class GdInventoryOkRest implements GdInventoryOkFeign {
GdInventoryLogService inventoryLogService;
@Autowired
GdSalesLogService gdSalesLogService;
@PostMapping("/sendMsg")
public void send(@RequestBody String message) {
gdInstorageGdService.sendMsg(message);
}
@Autowired
MessageProducerRest messageProducerRest;
//@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ -79,7 +79,7 @@ public class GdInventoryOkRest implements GdInventoryOkFeign {
ResultBean rb = ResultBean.fireFail();
GdInventoryLog log=gdInventoryOkService.uploadAndResetData(file);
if(ee(log.getOrderDate())==true){
this.send(log.getOrderDate());
messageProducerRest.send(log.getOrderDate());
}
return rb.success().setData(log);
}

9
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/gdsales/GdSalesRest.java

@ -18,6 +18,7 @@ import com.yxt.supervise.customer.biz.gdinstoragegd.GdInstorageGdService;
import com.yxt.supervise.customer.biz.gdinstoragelog.GdInstorageLogService;
import com.yxt.supervise.customer.biz.gdinventorylog.GdInventoryLogService;
import com.yxt.supervise.customer.biz.gdsaleslog.GdSalesLogService;
import com.yxt.supervise.customer.kafka.messageproducer.MessageProducerRest;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.poi.ss.usermodel.FillPatternType;
@ -55,11 +56,9 @@ public class GdSalesRest implements GdSalesFeign {
GdInventoryLogService inventoryLogService;
@Autowired
GdSalesLogService gdSalesLogService;
@Autowired
MessageProducerRest messageProducerRest;
@PostMapping("/sendMsg")
public void send(@RequestBody String message) {
gdInstorageGdService.sendMsg(message);
}
@Override
@ApiOperation("根据条件分页查询数据的列表")
@ -91,7 +90,7 @@ public class GdSalesRest implements GdSalesFeign {
ResultBean rb = ResultBean.fireFail();
GdSalesLog log=gdSalesService.uploadAndInsert(file);
if(ee(log.getOrderDate())==true){
this.send(log.getOrderDate());
messageProducerRest.send(log.getOrderDate());
}
return rb.success().setData(log);
}

2
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandMapper.java

@ -67,4 +67,6 @@ public interface RestrictedBrandMapper extends BaseMapper<RestrictedBrand> {
RestrictedBrand selectByCodeAndSid(@Param("code") String code, @Param("sid") String sid);
RestrictedBrand selectByCode(String code);
List<RestrictedBrandVo> brandList();
}

5
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandMapper.xml

@ -31,4 +31,9 @@
from restricted_brand
where code = #{code}
</select>
<select id="brandList" resultType="com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrandVo">
select name as dictValue, code as dictKey
from restricted_brand
</select>
</mapper>

23
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandRest.java

@ -40,6 +40,7 @@ import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
/**
* Project: supervise-customer(客户中心) <br/>
@ -70,7 +71,13 @@ public class RestrictedBrandRest implements RestrictedBrandFeign {
PagerVo<RestrictedBrandVo> pv = restrictedBrandService.listPageVo(pq);
return rb.success().setData(pv);
}
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/brandList")
public ResultBean<PagerVo<RestrictedBrandVo>> brandList() {
ResultBean rb = ResultBean.fireFail();
List<RestrictedBrandVo> pv = restrictedBrandService.brandList();
return rb.success().setData(pv);
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
@ -79,26 +86,26 @@ public class RestrictedBrandRest implements RestrictedBrandFeign {
}
@Override
public ResultBean delBySid(String sid) {
public ResultBean delBySid(String id) {
ResultBean rb = ResultBean.fireFail();
RestrictedBrand restrictedBrand = restrictedBrandService.fetchBySid(sid);
RestrictedBrand restrictedBrand = restrictedBrandService.getRestById(id);
if(restrictedBrand == null){
return rb.setMsg("该监管品牌不存在");
}
restrictedBrandService.deleteBySid(sid);
restrictedBrandService.deleteByid(id);
return rb.success();
}
@Override
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<RestrictedBrandDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid) {
@GetMapping("/fetchDetailsBySid/{id}")
public ResultBean<RestrictedBrandDetailsVo> fetchDetailsBySid(@PathVariable("id") String id) {
ResultBean rb = ResultBean.fireFail();
RestrictedBrand restrictedBrand = restrictedBrandService.fetchBySid(sid);
RestrictedBrand restrictedBrand = restrictedBrandService.getRestById(id);
if (restrictedBrand == null) {
return rb.setMsg("该品牌不存在");
}
RestrictedBrandDetailsVo vo = restrictedBrandService.fetchDetailsVoBySid(sid);
RestrictedBrandDetailsVo vo = restrictedBrandService.fetchDetailsVoBySid(id);
return rb.success().setData(vo);
}

19
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandService.java

@ -85,11 +85,16 @@ public class RestrictedBrandService extends MybatisBaseService<RestrictedBrandMa
return p;
}
public List<RestrictedBrandVo> brandList() {
List<RestrictedBrandVo> pagging = baseMapper.brandList();
return pagging;
}
public ResultBean saveOrUpdateDto(RestrictedBrandDto dto) {
ResultBean rb = ResultBean.fireFail();
String sid = dto.getSid();
String id =dto.getSid();
String code = dto.getCode();
if (StringUtils.isBlank(sid)) {
if (StringUtils.isBlank(id)) {
RestrictedBrand restrictedBrand = baseMapper.selectByCode(code);
if (restrictedBrand != null) {
return rb.setMsg("该品牌编码已存在");
@ -98,7 +103,7 @@ public class RestrictedBrandService extends MybatisBaseService<RestrictedBrandMa
BeanUtil.copyProperties(dto, restrictedBrand, "sid");
baseMapper.insert(restrictedBrand);
} else {
RestrictedBrand restrictedBrand = fetchBySid(sid);
RestrictedBrand restrictedBrand = fetchByCode(code);
if (restrictedBrand == null) {
return rb.setMsg("该品牌不存在");
}
@ -114,12 +119,18 @@ public class RestrictedBrandService extends MybatisBaseService<RestrictedBrandMa
}
public RestrictedBrandDetailsVo fetchDetailsVoBySid(String sid) {
RestrictedBrand entity = fetchBySid(sid);
public RestrictedBrandDetailsVo fetchDetailsVoBySid(String id) {
RestrictedBrand entity = getRestById(id);
RestrictedBrandDetailsVo vo = new RestrictedBrandDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
public RestrictedBrand getRestById(String id) {
RestrictedBrand entity = fetchById(id);
QueryWrapper<RestrictedBrand> qw = new QueryWrapper<>();
qw.eq("id", id);
return baseMapper.selectOne(qw);
}
public void readBrandPeriodSorXls1(InputStream is, String sid) {
HSSFWorkbook hssfWorkbook = null;

2
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryMapper.java

@ -72,4 +72,6 @@ public interface RestrictedCategoryMapper extends BaseMapper<RestrictedCategory>
RestrictedCategory selectByKey(String key);
RestrictedCategory selectByKeyAndSid(@Param("key") String key, @Param("sid") String sid);
List<RestrictedCategoryVo> categoryList();
}

5
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryMapper.xml

@ -31,4 +31,9 @@
where categoryKey = #{key}
and sid &lt;&gt; #{sid}
</select>
<select id="categoryList" resultType="com.yxt.supervise.customer.api.restrictedcategory.RestrictedCategoryVo">
select categorys as dictValue,categoryKey as dictKey
from restricted_category
</select>
</mapper>

23
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryRest.java

@ -40,6 +40,7 @@ import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
/**
* Project: supervise-customer(客户中心) <br/>
@ -70,7 +71,13 @@ public class RestrictedCategoryRest implements RestrictedCategoryFeign {
PagerVo<RestrictedCategoryVo> pv = restrictedCategoryService.listPageVo(pq);
return rb.success().setData(pv);
}
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/categoryList")
public ResultBean<PagerVo<RestrictedCategoryVo>> categoryList() {
ResultBean rb = ResultBean.fireFail();
List<RestrictedCategoryVo> pv = restrictedCategoryService.categoryList();
return rb.success().setData(pv);
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
@ -79,26 +86,26 @@ public class RestrictedCategoryRest implements RestrictedCategoryFeign {
}
@Override
public ResultBean delBySid(String sid) {
public ResultBean delBySid(String id) {
ResultBean rb = ResultBean.fireFail();
RestrictedCategory restrictedCategory = restrictedCategoryService.fetchBySid(sid);
RestrictedCategory restrictedCategory = restrictedCategoryService.getRestById(id);
if(restrictedCategory == null){
return rb.setMsg("该监管类别不存在");
}
restrictedCategoryService.deleteBySid(sid);
restrictedCategoryService.deleteByid(id);
return rb.success();
}
@Override
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<RestrictedCategoryDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid) {
@GetMapping("/fetchDetailsBySid/{id}")
public ResultBean<RestrictedCategoryDetailsVo> fetchDetailsBySid(@PathVariable("id") String id) {
ResultBean rb = ResultBean.fireFail();
RestrictedCategory restrictedCategory = restrictedCategoryService.fetchBySid(sid);
RestrictedCategory restrictedCategory = restrictedCategoryService.getRestById(id);
if(restrictedCategory == null){
return rb.setMsg("该类别不存在");
}
RestrictedCategoryDetailsVo vo = restrictedCategoryService.fetchDetailsVoBySid(sid);
RestrictedCategoryDetailsVo vo = restrictedCategoryService.fetchDetailsVoBySid(id);
return rb.success().setData(vo);
}

20
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryService.java

@ -35,6 +35,7 @@ import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrand;
import com.yxt.supervise.customer.api.restrictedcategory.*;
import com.yxt.supervise.customer.biz.restrictedbrand.RestrictedBrandService;
import lombok.extern.slf4j.Slf4j;
@ -99,11 +100,16 @@ public class RestrictedCategoryService extends MybatisBaseService<RestrictedCate
return p;
}
public List<RestrictedCategoryVo> categoryList() {
List<RestrictedCategoryVo> pagging = baseMapper.categoryList();
return pagging;
}
public ResultBean saveOrUpdateDto(RestrictedCategoryDto dto) {
ResultBean rb = ResultBean.fireFail();
String sid = dto.getSid();
String id=dto.getId();
String key = dto.getCategoryKey();
if (StringUtils.isBlank(sid)) {
if (StringUtils.isBlank(id)) {
RestrictedCategory restrictedCategory = baseMapper.selectByKey(key);
//查询key是否重复
if (restrictedCategory != null) {
@ -113,7 +119,7 @@ public class RestrictedCategoryService extends MybatisBaseService<RestrictedCate
BeanUtil.copyProperties(dto, restrictedCategory, "sid");
baseMapper.insert(restrictedCategory);
} else {
RestrictedCategory restrictedCategory = fetchBySid(sid);
RestrictedCategory restrictedCategory = fetchByCode(key);
if (restrictedCategory == null) {
return rb.setMsg("该类别不存在");
}
@ -128,13 +134,19 @@ public class RestrictedCategoryService extends MybatisBaseService<RestrictedCate
return rb.success();
}
public RestrictedCategoryDetailsVo fetchDetailsVoBySid(String sid) {
RestrictedCategory entity = fetchBySid(sid);
public RestrictedCategoryDetailsVo fetchDetailsVoBySid(String id) {
RestrictedCategory entity = getRestById(id);
RestrictedCategoryDetailsVo vo = new RestrictedCategoryDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
public RestrictedCategory getRestById(String id) {
RestrictedCategory entity = fetchById(id);
QueryWrapper<RestrictedCategory> qw = new QueryWrapper<>();
qw.eq("id", id);
return baseMapper.selectOne(qw);
}
public void readBrandPeriodSorXls1(InputStream is, String sid) {
HSSFWorkbook hssfWorkbook = null;
try {

2
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/supplierbankinfo/SupplierBankInfoRest.java

@ -101,7 +101,9 @@ public class SupplierBankInfoRest implements SupplierBankInfoFeign {
SupplierBankInfoDetailsVo vo = supplierBankInfoService.fetchDetailsVoBySid(sid);
String[] contractFiles = vo.getContractInfo().getContractFiles();
SupplierContractInfoDto supplierContractInfo=supplierContractInfoService.fetchByMainSid(sid);
if(contractFiles.length!=0){
supplierContractInfo.setContractFiles(contractFiles);
}
vo.setContractInfo(supplierContractInfo);
List<SupplierIndexDetailsVo> supplierIndexDetailsVos = supplierIndexService.fetchDetailsVosBycodeUnified(vo.getCodeUnified());
List<String> codeIndex = new ArrayList<>();

15
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/kafka/messageconsumer/MessageConsumerRest.java

@ -0,0 +1,15 @@
package com.yxt.supervise.customer.kafka.messageconsumer;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author wangpengfei
* @date 2023/4/26 17:57
*/
@Api("kafka消息消费者")
@RestController
@RequestMapping("v1/messageconsumer")
public class MessageConsumerRest {
}

17
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/kafka/messageconsumer/MessageConsumerService.java

@ -0,0 +1,17 @@
package com.yxt.supervise.customer.kafka.messageconsumer;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.annotation.StreamListener;
import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.cloud.stream.messaging.Source;
import org.springframework.stereotype.Service;
/**
* @author wangpengfei
* @date 2023/4/26 17:59
*/
@Slf4j
@Service
public class MessageConsumerService {
}

24
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/kafka/messageproducer/MessageProducerRest.java

@ -0,0 +1,24 @@
package com.yxt.supervise.customer.kafka.messageproducer;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author wangpengfei
* @date 2023/4/26 17:57
*/
@Api("kafka消息生产者")
@RestController
@RequestMapping("v1/messageproducer")
public class MessageProducerRest {
@Autowired
MessageProducerService messageProducerService;
@PostMapping("/sendMsg")
public void send(String message) {
messageProducerService.sendMsg(message);
}
}

25
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/kafka/messageproducer/MessageProducerService.java

@ -0,0 +1,25 @@
package com.yxt.supervise.customer.kafka.messageproducer;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.messaging.Source;
import org.springframework.messaging.support.MessageBuilder;
import org.springframework.stereotype.Service;
/**
* @author wangpengfei
* @date 2023/4/26 17:59
*/
@Slf4j
@Service
@EnableBinding(Source.class)
public class MessageProducerService {
@Autowired
private Source source;
public void sendMsg(String msg) {
log.info("customer开始执行");
log.info(msg);
source.output().send(MessageBuilder.withPayload(msg).build());
}
}

129
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaygather/ReportSalesDayGather.java

@ -1,11 +1,15 @@
package com.yxt.supervise.report.api.reportsalesdaygather;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.BaseEntity;
import com.yxt.common.core.domain.EntityWithId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author wangpengfei
* @date 2023/4/21 10:13
@ -13,9 +17,9 @@ import lombok.Data;
@ApiModel(value = "销售日报表-汇总", description = "销售日报表-汇总")
@TableName("report_sales_day_gather")
@Data
public class ReportSalesDayGather extends BaseEntity {
//@ApiModelProperty("记录创建时间")
//private String createTime;
public class ReportSalesDayGather extends EntityWithId {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime = new Date(); // 记录创建时间/
@ApiModelProperty("备注说明")
private String remarks;
@ApiModelProperty("单据日期")
@ -31,57 +35,57 @@ public class ReportSalesDayGather extends BaseEntity {
@ApiModelProperty("科目/日,昨天")
private String kmDateC;
@ApiModelProperty("现金流量-经营活动产生的现金流量(元),大前天")
private String xjllA;
private double xjllA=0;
@ApiModelProperty("现金流量-经营活动产生的现金流量(元),前天")
private String xjllB;
private double xjllB=0;
@ApiModelProperty("现金流量-经营活动产生的现金流量(元),昨天")
private String xjllC;
private double xjllC=0;
@ApiModelProperty("销售商品收到的现金(元),大前天")
private String xsxjA;
private double xsxjA=0;
@ApiModelProperty("销售商品收到的现金(元),前天")
private String xsxjB;
private double xsxjB=0;
@ApiModelProperty("销售商品收到的现金(元),昨天")
private String xsxjC;
private double xsxjC=0;
@ApiModelProperty("收到其他与经营活动有关的现金(元),大前天")
private String qtxjA;
private double qtxjA=0;
@ApiModelProperty("收到其他与经营活动有关的现金(元),前天")
private String qtxjB;
private double qtxjB=0;
@ApiModelProperty("收到其他与经营活动有关的现金(元),昨天")
private String qtxjC;
private double qtxjC=0;
@ApiModelProperty("财务分析本项合计,大前天")
private String cwfxhjA;
private double cwfxhjA=0;
@ApiModelProperty("财务分析本项合计,前天")
private String cwfxhjB;
private double cwfxhjB=0;
@ApiModelProperty("财务分析本项合计,昨天")
private String cwfxhjC;
private double cwfxhjC=0;
@ApiModelProperty("资产负债-流动资产(元),大前天")
private String zcfzA;
private double zcfzA=0;
@ApiModelProperty("资产负债-流动资产(元),前天")
private String zcfzB;
private double zcfzB=0;
@ApiModelProperty("资产负债-流动资产(元),昨天")
private String zcfzC;
private double zcfzC=0;
@ApiModelProperty("应收账款(元),大前天")
private String yszkA;
private double yszkA=0;
@ApiModelProperty("应收账款(元),前天")
private String yszkB;
private double yszkB=0;
@ApiModelProperty("应收账款(元),昨天")
private String yszkC;
private double yszkC=0;
@ApiModelProperty("流动负债(元),大前天")
private String ldfzA;
private double ldfzA=0;
@ApiModelProperty("流动负债(元),前天")
private String ldfzB;
private double ldfzB=0;
@ApiModelProperty("流动负债(元),昨天")
private String ldfzC;
private double ldfzC=0;
@ApiModelProperty("预收款项(元),大前天")
private String yskxA;
private double yskxA=0;
@ApiModelProperty("预收款项(元),前天")
private String yskxB;
private double yskxB=0;
@ApiModelProperty("预收款项(元),昨天")
private String yskxC;
private double yskxC=0;
@ApiModelProperty("期初总货值")
private String cqzhz;
private double cqzhz=0;
@ApiModelProperty("烟草期初货值")
private String ycqchz;
private double ycqchz=0;
@ApiModelProperty("项目/日,前天")
private String xmDateA;
@ApiModelProperty("项目/日,昨天")
@ -89,69 +93,70 @@ public class ReportSalesDayGather extends BaseEntity {
@ApiModelProperty("项目/日,今天")
private String xmDateC;
@ApiModelProperty("在途货值(元),前天")
private String zthzA;
private double zthzA=0;
@ApiModelProperty("在途货值(元),昨天")
private String zthzB;
private double zthzB=0;
@ApiModelProperty("在途货值(元),今天")
private String zthzC;
private double zthzC=0;
@ApiModelProperty("库存货值(元),前天")
private String kchzA;
private double kchzA=0;
@ApiModelProperty("库存货值(元),昨天")
private String kchzB;
private double kchzB=0;
@ApiModelProperty("库存货值(元),今天")
private String kchzC;
private double kchzC=0;
@ApiModelProperty("帐户余额(元)账户余额为前一天余额,前天")
private String zhyeA;
private double zhyeA=0;
@ApiModelProperty("帐户余额(元)账户余额为前一天余额,昨天")
private String zhyeB;
private double zhyeB=0;
@ApiModelProperty("帐户余额(元)账户余额为前一天余额,今天")
private String zhyeC;
private double zhyeC=0;
@ApiModelProperty("预警应收帐款(元),前天")
private String yjyszkA;
private double yjyszkA=0;
@ApiModelProperty("预警应收帐款(元),昨天")
private String yjyszkB;
private double yjyszkB=0;
@ApiModelProperty("预警应收帐款(元),今天")
private String yjyszkC;
private double yjyszkC=0;
@ApiModelProperty("主要预警指标本项合计,前天")
private String yjhjA;
private double yjhjA=0;
@ApiModelProperty("主要预警指标本项合计,昨天")
private String yjhjB;
private double yjhjB=0;
@ApiModelProperty("主要预警指标本项合计,今天")
private String yjhjC;
private double yjhjC=0;
@ApiModelProperty("连网连锁店,总额(元)")
private String lwlsdze;
private double lwlsdze=0;
@ApiModelProperty("连网连锁店,应收帐款(元)")
private String lwlsdyszk;
private double lwlsdyszk=0;
@ApiModelProperty("连网连锁店,扣除应收金额(元)")
private String lwlsdkcje;
private double lwlsdkcje=0;
@ApiModelProperty("连锁内加盟,总额(元)")
private String lsnjmze;
private double lsnjmze=0;
@ApiModelProperty("连锁内加盟,应收帐款(元)")
private String lsnjmyszk;
private double lsnjmyszk=0;
@ApiModelProperty("连锁内加盟,扣除应收金额(元)")
private String lsnjmkcje;
private double lsnjmkcje=0;
@ApiModelProperty("配送中心,总额(元)")
private String pszxze;
private double pszxze=0;
@ApiModelProperty("配送中心,应收帐款(元)")
private String pszxyszk;
private double pszxyszk=0;
@ApiModelProperty("配送中心,扣除应收金额(元)")
private String pszxkcje;
private double pszxkcje=0;
@ApiModelProperty("连锁外加盟(销配结算),总额(元)")
private String lswjmze;
private double lswjmze=0;
@ApiModelProperty("连锁外加盟(销配结算),应收帐款(元)")
private String lswjmyszk;
private double lswjmyszk=0;
@ApiModelProperty("连锁外加盟(销配结算),扣除应收金额(元)")
private String lswjmkcje;
private double lswjmkcje=0;
@ApiModelProperty("36524集团报烟门店仓,总额(元)")
private String ycmdze;
private double ycmdze=0;
@ApiModelProperty("36524集团报烟门店仓,应收帐款(元)")
private String ycmdyszk;
private double ycmdyszk=0;
@ApiModelProperty("36524集团报烟门店仓,扣除应收金额(元)")
private String ycmdkcje;
private double ycmdkcje=0;
@ApiModelProperty("烟草连锁外加盟(销配结算),总额(元)")
private String ycjmdze;
private double ycjmdze=0;
@ApiModelProperty("烟草连锁外加盟(销配结算),应收帐款(元)")
private String ycjmdyszk;
private double ycjmdyszk=0;
@ApiModelProperty("烟草连锁外加盟(销配结算),扣除应收金额(元)")
private String ycjmdkcje;
private double ycjmdkcje=0;
}

156
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaygather/ReportSalesDayGatherDto.java

@ -0,0 +1,156 @@
package com.yxt.supervise.report.api.reportsalesdaygather;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author wangpengfei
* @date 2023/4/27 9:26
*/
@Data
public class ReportSalesDayGatherDto implements Dto {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime = new Date(); // 记录创建时间/
@ApiModelProperty("备注说明")
private String remarks;
@ApiModelProperty("单据日期")
private String orderDate;
@ApiModelProperty("编号")
private String serialNumber;
@ApiModelProperty("上报时间")
private String reportTime;
@ApiModelProperty("科目/日,大前天")
private String kmDateA;
@ApiModelProperty("科目/日,前天")
private String kmDateB;
@ApiModelProperty("科目/日,昨天")
private String kmDateC;
@ApiModelProperty("现金流量-经营活动产生的现金流量(元),大前天")
private double xjliA;
@ApiModelProperty("现金流量-经营活动产生的现金流量(元),前天")
private double xjliB;
@ApiModelProperty("现金流量-经营活动产生的现金流量(元),昨天")
private double xjliC;
@ApiModelProperty("销售商品收到的现金(元),大前天")
private double xsxjA;
@ApiModelProperty("销售商品收到的现金(元),前天")
private double xsxjB;
@ApiModelProperty("销售商品收到的现金(元),昨天")
private double xsxjC;
@ApiModelProperty("收到其他与经营活动有关的现金(元),大前天")
private double qtxjA;
@ApiModelProperty("收到其他与经营活动有关的现金(元),前天")
private double qtxjB;
@ApiModelProperty("收到其他与经营活动有关的现金(元),昨天")
private double qtxjC;
@ApiModelProperty("财务分析本项合计,大前天")
private double cwfxhjA;
@ApiModelProperty("财务分析本项合计,前天")
private double cwfxhjB;
@ApiModelProperty("财务分析本项合计,昨天")
private double cwfxhjC;
@ApiModelProperty("资产负债-流动资产(元),大前天")
private double zcfzA;
@ApiModelProperty("资产负债-流动资产(元),前天")
private double zcfzB;
@ApiModelProperty("资产负债-流动资产(元),昨天")
private double zcfzC;
@ApiModelProperty("应收账款(元),大前天")
private double yszkA;
@ApiModelProperty("应收账款(元),前天")
private double yszkB;
@ApiModelProperty("应收账款(元),昨天")
private double yszkC;
@ApiModelProperty("流动负债(元),大前天")
private double ldfzA;
@ApiModelProperty("流动负债(元),前天")
private double ldfzB;
@ApiModelProperty("流动负债(元),昨天")
private double ldfzC;
@ApiModelProperty("预收款项(元),大前天")
private double yskxA;
@ApiModelProperty("预收款项(元),前天")
private double yskxB;
@ApiModelProperty("预收款项(元),昨天")
private double yskxC;
@ApiModelProperty("期初总货值")
private double cqzhz;
@ApiModelProperty("烟草期初货值")
private double ycqchz;
@ApiModelProperty("项目/日,前天")
private String xmDateA;
@ApiModelProperty("项目/日,昨天")
private String xmDateB;
@ApiModelProperty("项目/日,今天")
private String xmDateC;
@ApiModelProperty("在途货值(元),前天")
private double zthzA;
@ApiModelProperty("在途货值(元),昨天")
private double zthzB;
@ApiModelProperty("在途货值(元),今天")
private double zthzC;
@ApiModelProperty("库存货值(元),前天")
private double kchzA;
@ApiModelProperty("库存货值(元),昨天")
private double kchzB;
@ApiModelProperty("库存货值(元),今天")
private double kchzC;
@ApiModelProperty("帐户余额(元)账户余额为前一天余额,前天")
private double zhyeA;
@ApiModelProperty("帐户余额(元)账户余额为前一天余额,昨天")
private double zhyeB;
@ApiModelProperty("帐户余额(元)账户余额为前一天余额,今天")
private double zhyeC;
@ApiModelProperty("预警应收帐款(元),前天")
private double yjyszkA;
@ApiModelProperty("预警应收帐款(元),昨天")
private double yjyszkB;
@ApiModelProperty("预警应收帐款(元),今天")
private double yjyszkC;
@ApiModelProperty("主要预警指标本项合计,前天")
private double yjhjA;
@ApiModelProperty("主要预警指标本项合计,昨天")
private double yjhjB;
@ApiModelProperty("主要预警指标本项合计,今天")
private double yjhjC;
@ApiModelProperty("连网连锁店,总额(元)")
private double lwlsdze;
@ApiModelProperty("连网连锁店,应收帐款(元)")
private double lwlsdyszk;
@ApiModelProperty("连网连锁店,扣除应收金额(元)")
private double lwlsdkcje;
@ApiModelProperty("连锁内加盟,总额(元)")
private double lsnjmze;
@ApiModelProperty("连锁内加盟,应收帐款(元)")
private double lsnjmyszk;
@ApiModelProperty("连锁内加盟,扣除应收金额(元)")
private double lsnjmkcje;
@ApiModelProperty("配送中心,总额(元)")
private double pszxze;
@ApiModelProperty("配送中心,应收帐款(元)")
private double pszxyszk;
@ApiModelProperty("配送中心,扣除应收金额(元)")
private double pszxkcje;
@ApiModelProperty("连锁外加盟(销配结算),总额(元)")
private double lswjmze;
@ApiModelProperty("连锁外加盟(销配结算),应收帐款(元)")
private double lswjmyszk;
@ApiModelProperty("连锁外加盟(销配结算),扣除应收金额(元)")
private double lswjmkcje;
@ApiModelProperty("36524集团报烟门店仓,总额(元)")
private double ycmdze;
@ApiModelProperty("36524集团报烟门店仓,应收帐款(元)")
private double ycmdyszk;
@ApiModelProperty("36524集团报烟门店仓,扣除应收金额(元)")
private double ycmdkcje;
@ApiModelProperty("烟草连锁外加盟(销配结算),总额(元)")
private double ycjmdze;
@ApiModelProperty("烟草连锁外加盟(销配结算),应收帐款(元)")
private double ycjmdyszk;
@ApiModelProperty("烟草连锁外加盟(销配结算),扣除应收金额(元)")
private double ycjmdkcje;
}

125
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaygather/ReportSalesDayGatherVo.java

@ -1,17 +1,20 @@
package com.yxt.supervise.report.api.reportsalesdaygather;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author wangpengfei
* @date 2023/4/21 11:15
*/
@Data
public class ReportSalesDayGatherVo implements Vo {
@ApiModelProperty("记录创建时间")
private String createTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime = new Date(); // 记录创建时间/
@ApiModelProperty("备注说明")
private String remarks;
@ApiModelProperty("单据日期")
@ -27,57 +30,57 @@ public class ReportSalesDayGatherVo implements Vo {
@ApiModelProperty("科目/日,昨天")
private String kmDateC;
@ApiModelProperty("现金流量-经营活动产生的现金流量(元),大前天")
private String xjliA;
private double xjliA;
@ApiModelProperty("现金流量-经营活动产生的现金流量(元),前天")
private String xjliB;
private double xjliB;
@ApiModelProperty("现金流量-经营活动产生的现金流量(元),昨天")
private String xjliC;
private double xjliC;
@ApiModelProperty("销售商品收到的现金(元),大前天")
private String xsxjA;
private double xsxjA;
@ApiModelProperty("销售商品收到的现金(元),前天")
private String xsxjB;
private double xsxjB;
@ApiModelProperty("销售商品收到的现金(元),昨天")
private String xsxjC;
private double xsxjC;
@ApiModelProperty("收到其他与经营活动有关的现金(元),大前天")
private String qtxjA;
private double qtxjA;
@ApiModelProperty("收到其他与经营活动有关的现金(元),前天")
private String qtxjB;
private double qtxjB;
@ApiModelProperty("收到其他与经营活动有关的现金(元),昨天")
private String qtxjC;
private double qtxjC;
@ApiModelProperty("财务分析本项合计,大前天")
private String cwfxhjA;
private double cwfxhjA;
@ApiModelProperty("财务分析本项合计,前天")
private String cwfxhjB;
private double cwfxhjB;
@ApiModelProperty("财务分析本项合计,昨天")
private String cwfxhjC;
private double cwfxhjC;
@ApiModelProperty("资产负债-流动资产(元),大前天")
private String zcfzA;
private double zcfzA;
@ApiModelProperty("资产负债-流动资产(元),前天")
private String zcfzB;
private double zcfzB;
@ApiModelProperty("资产负债-流动资产(元),昨天")
private String zcfzC;
private double zcfzC;
@ApiModelProperty("应收账款(元),大前天")
private String yszkA;
private double yszkA;
@ApiModelProperty("应收账款(元),前天")
private String yszkB;
private double yszkB;
@ApiModelProperty("应收账款(元),昨天")
private String yszkC;
private double yszkC;
@ApiModelProperty("流动负债(元),大前天")
private String ldfzA;
private double ldfzA;
@ApiModelProperty("流动负债(元),前天")
private String ldfzB;
private double ldfzB;
@ApiModelProperty("流动负债(元),昨天")
private String ldfzC;
private double ldfzC;
@ApiModelProperty("预收款项(元),大前天")
private String yskxA;
private double yskxA;
@ApiModelProperty("预收款项(元),前天")
private String yskxB;
private double yskxB;
@ApiModelProperty("预收款项(元),昨天")
private String yskxC;
private double yskxC;
@ApiModelProperty("期初总货值")
private String cqzhz;
private double cqzhz;
@ApiModelProperty("烟草期初货值")
private String ycqchz;
private double ycqchz;
@ApiModelProperty("项目/日,前天")
private String xmDateA;
@ApiModelProperty("项目/日,昨天")
@ -85,70 +88,70 @@ public class ReportSalesDayGatherVo implements Vo {
@ApiModelProperty("项目/日,今天")
private String xmDateC;
@ApiModelProperty("在途货值(元),前天")
private String zthzA;
private double zthzA;
@ApiModelProperty("在途货值(元),昨天")
private String zthzB;
private double zthzB;
@ApiModelProperty("在途货值(元),今天")
private String zthzC;
private double zthzC;
@ApiModelProperty("库存货值(元),前天")
private String kchzA;
private double kchzA;
@ApiModelProperty("库存货值(元),昨天")
private String kchzB;
private double kchzB;
@ApiModelProperty("库存货值(元),今天")
private String kchzC;
private double kchzC;
@ApiModelProperty("帐户余额(元)账户余额为前一天余额,前天")
private String zhyeA;
private double zhyeA;
@ApiModelProperty("帐户余额(元)账户余额为前一天余额,昨天")
private String zhyeB;
private double zhyeB;
@ApiModelProperty("帐户余额(元)账户余额为前一天余额,今天")
private String zhyeC;
private double zhyeC;
@ApiModelProperty("预警应收帐款(元),前天")
private String yjyszkA;
private double yjyszkA;
@ApiModelProperty("预警应收帐款(元),昨天")
private String yjyszkB;
private double yjyszkB;
@ApiModelProperty("预警应收帐款(元),今天")
private String yjyszkC;
private double yjyszkC;
@ApiModelProperty("主要预警指标本项合计,前天")
private String yjhjA;
private double yjhjA;
@ApiModelProperty("主要预警指标本项合计,昨天")
private String yjhjB;
private double yjhjB;
@ApiModelProperty("主要预警指标本项合计,今天")
private String yjhjC;
private double yjhjC;
@ApiModelProperty("连网连锁店,总额(元)")
private String lwlsdze;
private double lwlsdze;
@ApiModelProperty("连网连锁店,应收帐款(元)")
private String lwlsdyszk;
private double lwlsdyszk;
@ApiModelProperty("连网连锁店,扣除应收金额(元)")
private String lwlsdkcje;
private double lwlsdkcje;
@ApiModelProperty("连锁内加盟,总额(元)")
private String lsnjmze;
private double lsnjmze;
@ApiModelProperty("连锁内加盟,应收帐款(元)")
private String lsnjmyszk;
private double lsnjmyszk;
@ApiModelProperty("连锁内加盟,扣除应收金额(元)")
private String lsnjmkcje;
private double lsnjmkcje;
@ApiModelProperty("配送中心,总额(元)")
private String pszxze;
private double pszxze;
@ApiModelProperty("配送中心,应收帐款(元)")
private String pszxyszk;
private double pszxyszk;
@ApiModelProperty("配送中心,扣除应收金额(元)")
private String pszxkcje;
private double pszxkcje;
@ApiModelProperty("连锁外加盟(销配结算),总额(元)")
private String lswjmze;
private double lswjmze;
@ApiModelProperty("连锁外加盟(销配结算),应收帐款(元)")
private String lswjmyszk;
private double lswjmyszk;
@ApiModelProperty("连锁外加盟(销配结算),扣除应收金额(元)")
private String lswjmkcje;
private double lswjmkcje;
@ApiModelProperty("36524集团报烟门店仓,总额(元)")
private String ycmdze;
private double ycmdze;
@ApiModelProperty("36524集团报烟门店仓,应收帐款(元)")
private String ycmdyszk;
private double ycmdyszk;
@ApiModelProperty("36524集团报烟门店仓,扣除应收金额(元)")
private String ycmdkcje;
private double ycmdkcje;
@ApiModelProperty("烟草连锁外加盟(销配结算),总额(元)")
private String ycjmdze;
private double ycjmdze;
@ApiModelProperty("烟草连锁外加盟(销配结算),应收帐款(元)")
private String ycjmdyszk;
private double ycjmdyszk;
@ApiModelProperty("烟草连锁外加盟(销配结算),扣除应收金额(元)")
private String ycjmdkcje;
private double ycjmdkcje;
}

11
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaystore/ReportSalesDayStore.java

@ -1,6 +1,7 @@
package com.yxt.supervise.report.api.reportsalesdaystore;
import com.yxt.common.core.domain.BaseEntity;
import com.yxt.common.core.domain.EntityWithId;
import lombok.Data;
/**
@ -8,16 +9,16 @@ import lombok.Data;
* @date 2023/4/21 13:47
*/
@Data
public class ReportSalesDayStore extends BaseEntity {
public class ReportSalesDayStore extends EntityWithId {
//private String id; //'ID,唯一编号',
//private String createTime; // '记录创建时间',
//private String remarks;//'备注说明',
private String createTime; // '记录创建时间',
private String remarks;//'备注说明',
private String orderDate; //'单据日期',
private String serialNumber; // '编号',
private String storeNumber;// '渠道数量',
private String reportTime;//'上报时间',
private String sort; // '序号',
private String storeCodeName; //'[门店编号]门店名称',
private String saleAmount ;//'销售金额',
private String countAmount; //'总计销售金额',
private double saleAmount ;//'销售金额',
private double countAmount; //'总计销售金额',
}

13
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaystoreproduct/ReportSalesDayStoreProduct.java

@ -1,17 +1,20 @@
package com.yxt.supervise.report.api.reportsalesdaystoreproduct;
import com.yxt.common.core.domain.BaseEntity;
import com.yxt.common.core.domain.EntityWithId;
import lombok.Data;
import java.util.Date;
/**
* @author wangpengfei
* @date 2023/4/21 13:57
*/
@Data
public class ReportSalesDayStoreProduct extends BaseEntity {
public class ReportSalesDayStoreProduct extends EntityWithId {
//private String id;//'ID,唯一编号',
//private String createTime; // '记录创建时间',
//private String remarks;// '备注说明',
private Date createTime; // '记录创建时间',
private String remarks;// '备注说明',
private String orderDate;// '单据日期',
private String serialNumber; // '编号',
private String productNumber; // '商品数量',
@ -23,6 +26,6 @@ public class ReportSalesDayStoreProduct extends BaseEntity {
private String productName; // '商品名称',
private String saleNumber; //'数量',
private String salePrice; // '单价',
private String saleAmount; // '小计',
private String countAmount; // '总计销售金额',
private double saleAmount; // '小计',
private double countAmount; // '总计销售金额',
}

13
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaytobaccostore/ReportSalesDayTobaccoStore.java

@ -1,23 +1,26 @@
package com.yxt.supervise.report.api.reportsalesdaytobaccostore;
import com.yxt.common.core.domain.BaseEntity;
import com.yxt.common.core.domain.EntityWithId;
import lombok.Data;
import java.util.Date;
/**
* @author wangpengfei
* @date 2023/4/21 14:11
*/
@Data
public class ReportSalesDayTobaccoStore extends BaseEntity {
public class ReportSalesDayTobaccoStore extends EntityWithId {
//private String id ;// 'ID,唯一编号',
//private String createTime ;// '记录创建时间',
//private String remarks ;// '备注说明',
private Date createTime ;// '记录创建时间',
private String remarks ;// '备注说明',
private String orderDate ;// '单据日期',
private String serialNumber ;// '编号',
private String storeNumber;// '渠道数量',
private String reportTime ;// '上报时间',
private String sort; // '序号',
private String storeCodeName ;// '[门店编号]门店名称',
private String saleAmount ;// '销售金额',
private String countAmount ;// '总计销售金额',
private double saleAmount ;// '销售金额',
private double countAmount ;// '总计销售金额',
}

13
yxt_supervise/supervise-report/supervise-report-api/src/main/java/com/yxt/supervise/report/api/reportsalesdaytobaccostoreproduct/ReportSalesDayTobaccoStoreProduct.java

@ -1,17 +1,20 @@
package com.yxt.supervise.report.api.reportsalesdaytobaccostoreproduct;
import com.yxt.common.core.domain.BaseEntity;
import com.yxt.common.core.domain.EntityWithId;
import lombok.Data;
import java.util.Date;
/**
* @author wangpengfei
* @date 2023/4/21 14:20
*/
@Data
public class ReportSalesDayTobaccoStoreProduct extends BaseEntity {
public class ReportSalesDayTobaccoStoreProduct extends EntityWithId {
//private String id;//'ID,唯一编号',
//private String createTime; // '记录创建时间',
//private String remarks;// '备注说明',
private Date createTime; // '记录创建时间',
private String remarks;// '备注说明',
private String orderDate;// '单据日期',
private String serialNumber; // '编号',
private String productNumber; // '商品数量',
@ -23,6 +26,6 @@ public class ReportSalesDayTobaccoStoreProduct extends BaseEntity {
private String productName; // '商品名称',
private String saleNumber; //'数量',
private String salePrice; // '单价',
private String saleAmount; // '小计',
private String countAmount; // '总计销售金额',
private double saleAmount; // '小计',
private double countAmount; // '总计销售金额',
}

10
yxt_supervise/supervise-report/supervise-report-biz/pom.xml

@ -76,6 +76,16 @@
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>net.sourceforge.javacsv</groupId>
<artifactId>javacsv</artifactId>
<version>2.0</version>
</dependency>
<dependency>
<groupId>de.siegmar</groupId>
<artifactId>fastcsv</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-binder-kafka</artifactId>

63
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaygather/ReportSalesDayGatherMapper.java

@ -5,10 +5,13 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.supervise.report.api.reportsalesdaygather.ReportSalesDayGather;
import com.yxt.supervise.report.api.reportsalesdaygather.ReportSalesDayGatherVo;
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 java.util.List;
import java.util.Map;
/**
* @author wangpengfei
@ -18,4 +21,64 @@ import java.util.List;
public interface ReportSalesDayGatherMapper extends BaseMapper<ReportSalesDayGather> {
List<ReportSalesDayGatherVo> getReportSalesDayGather(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayGather> qw);
List<ReportSalesDayGatherVo> getAllReportSalesDayGather(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayGather> qw);
@Delete("delete from supervise_supplychain.gd_sales_reportday where orderDate=#{orderDate} ")
void clearByOrderDate(@Param("orderDate") String orderDate);
@Select("select CONVERT(IFNULL(sum(saleNum*salePrice),0),DECIMAL(12,2)) as amount from ( " +
" select gs.saleNum,gs.salePrice from supervise_supplychain.gd_sales gs left join supervise_supplychain.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 supervise_supplychain.gd_sales gs left join supervise_supplychain.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 supervise_supplychain.gd_wholesale where dataDate=#{dataDate} ")
double amountOfPszxDay(String orderDate);
@Select("SELECT CONVERT(IFNULL(sum(colq16),0),DECIMAL(12,2)) as amount FROM supervise_supplychain.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 supervise_supplychain.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 supervise_supplychain.gd_instorage_yc gig left join supervise_supplychain.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);
@Select("SELECT t.*, " +
" CONVERT(IF((t.billTotalPrice-t.prodValue)>0,t.billTotalPrice-t.prodValue,0),DECIMAL(12,2)) wdhjz, " +
" CONVERT(IF((t.prodValue-t.billTotalPrice)>0,t.prodValue-t.billTotalPrice,0),DECIMAL(12,2)) cchjz, " +
" IF((t.billTotalPrice-t.prodValue)>0 and DATEDIFF(arrivaldate, CURDATE())<0 ,'是','否') sfyq " +
"FROM( " +
" SELECT " +
" MAX(sbi.codeUnified) codeUnified, " +
" MAX(sbi.name) name , " +
" 1 as ee, " +
" CONVERT(SUM(packageTotalPrice),DECIMAL(12,2)) billtotalprice, " +
" ( " +
" SELECT CONVERT(IFNULL(SUM(colq16),0),DECIMAL(12,2)) FROM supervise_supplychain.gd_instorage gic LEFT JOIN supervise_supplychain.product_information PI ON pi.code=gic.colh7 " +
" WHERE gic.supplierCodeUnified=pr.supplierOnlyCode " +
// " AND pi.categoryKey IN(SELECT categoryKey FROM `restricted_category`) " +
// " AND pi.brandsid IN(SELECT CODE FROM `restricted_brand`) " +
" ) prodvalue, " +
" MAX(pr.`arrivalDate`) arrivaldate " +
" FROM supervise_supplychain.supplier_bank_info sbi " +
" LEFT JOIN supervise_supplychain.purchase_requisition pr ON pr.supplierOnlyCode=sbi.codeUnified " +
" LEFT JOIN supervise_supplychain.purchase_requisition_pro prp ON pr.sid=prp.mainsid " +
" WHERE pr.purchaseState=1 AND pr.bankState=1 AND sbi.`purchaseRequisition`=1 AND sbi.`bankState`=1 " +
" GROUP BY pr.supplierOnlyCode ORDER BY sbi.name " +
") t ")
List<Map<String, Object>> gysdhhzb();
@Select("SELECT prt.code, " +
"CONVERT(SUM(prs.price),DECIMAL(12,2)) ddje, " +
"prt.purchasedate,prt.arrivaldate, " +
"(SELECT IFNULL(CONVERT(SUM(giyy.colq16),DECIMAL(12,2)),0) FROM supervise_supplychain.gd_instorage_yc giyy WHERE giyy.purchasedate=prt.purchasedate ) dddhjz , " +
"IFNULL(CONVERT((CONVERT(SUM(prs.price),DECIMAL(12,2))-(SELECT IFNULL(CONVERT(SUM(giyy.colq16),DECIMAL(12,2)),0) FROM supervise_supplychain.gd_instorage_yc giyy WHERE giyy.purchasedate=prt.purchasedate )),DECIMAL(12,2)),0) zthjz " +
"FROM " +
"supervise_supplychain.purchase_requisition_store prs " +
"LEFT JOIN " +
"supervise_supplychain.purchase_requisition_tobacco prt ON prt.sid=prs.mainsid " +
"GROUP BY prt.code; ")
List<Map<String, Object>> ycddmxb();
@Select("select IFNULL(sum(prodValue),0) from supervise_supplychain.gd_inventory_ok")
double amountCurrent();
@Select("select IFNULL(sum(prodValue),0) from supervise_supplychain.gd_inventory_yc")
double amountYcCurrent();
}

189
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaygather/ReportSalesDayGatherService.java

@ -1,5 +1,8 @@
package com.yxt.supervise.report.biz.reportsalesdaygather;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.util.ListUtils;
@ -9,17 +12,20 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.supervise.report.api.reportsalesdaygather.ReportSalesDayGather;
import com.yxt.supervise.report.api.reportsalesdaygather.ReportSalesDayGatherDto;
import com.yxt.supervise.report.api.reportsalesdaygather.ReportSalesDayGatherQuery;
import com.yxt.supervise.report.api.reportsalesdaygather.ReportSalesDayGatherVo;
import com.yxt.supervise.report.api.reportsalesdaylog.MyHandler;
import com.yxt.supervise.report.api.reportsalesdaystore.ReportSalesDayStoreVo;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.util.CellRangeAddress;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -29,7 +35,8 @@ import java.util.Map;
*/
@Service
public class ReportSalesDayGatherService extends MybatisBaseService<ReportSalesDayGatherMapper, ReportSalesDayGather> {
@Autowired
ReportSalesDayGatherMapper reportSalesDayGatherMapper;
public List<ReportSalesDayGatherVo> getReportSalesDayGather(PagerQuery<ReportSalesDayGatherQuery> pq) {
ReportSalesDayGatherQuery query = pq.getParams();
QueryWrapper<ReportSalesDayGather> qw = new QueryWrapper<>();
@ -71,4 +78,184 @@ public class ReportSalesDayGatherService extends MybatisBaseService<ReportSalesD
excelWriter.fill(SalesVos, fillConfig, writeSheet);
}
public ReportSalesDayGather fetchByOrderDate(String orderDate) {
QueryWrapper<ReportSalesDayGather> qw = new QueryWrapper<>();
qw.eq("orderDate", orderDate);
List<ReportSalesDayGather> list = list(qw);
if (list == null || list.isEmpty()) return null;
return list.get(0);
}
/**
* 清理数据日期的数据
*
* @param orderDate
*/
public void clearByOrderDate(String orderDate) {
reportSalesDayGatherMapper.clearByOrderDate(orderDate);
}
private String dayAgo(String orderDate, int offset) {
if (offset == 0) return orderDate;
DateTime nowDate = DateUtil.parse(orderDate, "yyyy-MM-dd");
DateTime preDate = DateUtil.offsetDay(nowDate, offset);
return DateUtil.format(preDate, "yyyy-MM-dd");
}
public ReportSalesDayGather clearAndInitByOrderDate(String orderDate) {
this.clearByOrderDate(orderDate); // 清除数据日的数据
Date curDate = new Date();
String dfmt = DateUtil.format(curDate, "yyyy-MM-dd");
String dfmt2 = DateUtil.format(curDate, "yyyy-MM-dd HH:mm");
String preOrderDate = dayAgo(orderDate, -1); // 前一天
String befOrderDate = dayAgo(orderDate, -2); // 前两天
String thrOrderDate = dayAgo(orderDate, -3); // 前三天
ReportSalesDayGather preRp = fetchByOrderDate(preOrderDate);
if (preRp == null) preRp = new ReportSalesDayGather();
ReportSalesDayGather rp = new ReportSalesDayGather();
rp.setOrderDate(orderDate); // 单据日期
rp.setSerialNumber("xsjyrbb" + orderDate.replace("-", "")); // 编号
rp.setReportTime(dfmt + " 11:00"); // 上报时间
rp.setKmDateA(befOrderDate); // 科目/日,大前天
rp.setKmDateB(preOrderDate); // 科目/日,前天
rp.setKmDateC(orderDate); // 科目/日,昨天
// rp.setXjlla(""); // 现金流量-经营活动产生的现金流量(元),大前天
// rp.setXjllb(""); // 现金流量-经营活动产生的现金流量(元),前天
// rp.setXjllc(""); // 现金流量-经营活动产生的现金流量(元),昨天
rp.setXsxjA(preRp.getXsxjB()); // 销售商品收到的现金(元),大前天
rp.setXsxjB(preRp.getXsxjC()); // 销售商品收到的现金(元),前天
rp.setXsxjC(0); // 销售商品收到的现金(元),昨天 //后面计算
// rp.setQtxja(""); // 收到其他与经营活动有关的现金(元),大前天
// rp.setQtxjb(""); // 收到其他与经营活动有关的现金(元),前天
// rp.setQtxjc(""); // 收到其他与经营活动有关的现金(元),昨天
rp.setCwfxhjA(preRp.getCwfxhjB()); // 财务分析本项合计,大前天
rp.setCwfxhjB(preRp.getCwfxhjC()); // 财务分析本项合计,前天
rp.setCwfxhjC(0); // 财务分析本项合计,昨天 //后面计算
// rp.setZcfza(""); // 资产负债-流动资产(元),大前天
// rp.setZcfzb(""); // 资产负债-流动资产(元),前天
// rp.setZcfzc(""); // 资产负债-流动资产(元),昨天
// rp.setYszka(""); // 应收账款(元),大前天
// rp.setYszkb(""); // 应收账款(元),前天
// rp.setYszkc(""); // 应收账款(元),昨天
// rp.setLdfza(""); // 流动负债(元),大前天
// rp.setLdfzb(""); // 流动负债(元),前天
// rp.setLdfzc(""); // 流动负债(元),昨天
// rp.setYskxa(""); // 预收款项(元),大前天
// rp.setYskxb(""); // 预收款项(元),前天
// rp.setYskxc(""); // 预收款项(元),昨天
// rp.setQczhz(""); // 期初总货值
// rp.setYcqchz(""); // 烟草期初货值
rp.setXmDateA(StrUtil.isBlank(preRp.getXmDateB()) ? preOrderDate : preRp.getXmDateB()); // 项目/日,前天
rp.setXmDateB(StrUtil.isBlank(preRp.getXmDateC()) ? orderDate : preRp.getXmDateC()); // 项目/日,昨天
rp.setXmDateC(dfmt); // 项目/日,今天
rp.setZthzA(preRp.getZthzB()); // 在途货值(元),前天
rp.setZthzB(preRp.getZthzC()); // 在途货值(元),昨天
rp.setZthzC(0); // 在途货值(元),今天 // 计算
rp.setKchzA(preRp.getKchzB()); // 库存货值(元),前天
rp.setKchzB(preRp.getKchzC()); // 库存货值(元),昨天
rp.setKchzC(0); // 库存货值(元),今天 // 计算
// rp.setZhyea(""); // 帐户余额(元)账户余额为前一天余额,前天
// rp.setZhyeb(""); // 帐户余额(元)账户余额为前一天余额,昨天
// rp.setZhyec(""); // 帐户余额(元)账户余额为前一天余额,今天
// rp.setYjyszka(""); // 预警应收帐款(元),前天
// rp.setYjyszkb(""); // 预警应收帐款(元),昨天
// rp.setYjyszkc(""); // 预警应收帐款(元),今天
// rp.setYjhja(""); // 主要预警指标本项合计,前天
// rp.setYjhjb(""); // 主要预警指标本项合计,昨天
// rp.setYjhjc(""); // 主要预警指标本项合计,今天
double xsLwlsd = amountOfLwlsdDay(orderDate);
rp.setLwlsdze(xsLwlsd); // 连网连锁店,总额(元)
// rp.setLwlsdyszk(""); // 连网连锁店,应收帐款(元)
rp.setLwlsdkcje(xsLwlsd); // 连网连锁店,扣除应收金额(元)
double xsLsnjm = amountOfLsnjmDay(orderDate);
rp.setLsnjmze(xsLsnjm); // 连锁内加盟,总额(元)
// rp.setLsnjmyszk(""); // 连锁内加盟,应收帐款(元)
rp.setLsnjmkcje(xsLsnjm); // 连锁内加盟,扣除应收金额(元)
double xsPszx = amountOfPszxDay(orderDate);
rp.setPszxze(xsPszx); // 配送中心,总额(元)
// rp.setPszxyszk(""); // 配送中心,应收帐款(元)
rp.setPszxkcje(xsPszx); // 配送中心,扣除应收金额(元)
double xsLswjm = amountOfLswjmDay(orderDate);
rp.setLswjmze(xsLswjm); // 连锁外加盟(销配结算),总额(元)
// rp.setLswjmyszk(""); // 连锁外加盟(销配结算),应收帐款(元)
rp.setLswjmkcje(xsLswjm); // 连锁外加盟(销配结算),扣除应收金额(元)
double xsYc = amountOfYcDay(orderDate);
rp.setYcmdze(xsYc); // 36524集团报烟门店仓,总额(元)
// rp.setYcmdyszk(""); // 36524集团报烟门店仓,应收帐款(元)
rp.setYcmdkcje(xsYc); // 36524集团报烟门店仓,扣除应收金额(元)
double xsYcJmd = amountOfDayJmd(orderDate);
rp.setYcjmdze(xsYcJmd); // 烟草连锁外加盟(销配结算),总额(元)
// rp.setYcjmdyszk(""); // 烟草连锁外加盟(销配结算),应收帐款(元)
rp.setYcjmdkcje(xsYcJmd); // 烟草连锁外加盟(销配结算),扣除应收金额(元)
// double xshz1 = ((double) Math.round((xsLwlsd + xsLsnjm + xsPszx + xsLswjm + xsYc + xsYcJmd) * 100)) / 100;
double xshz1 = xsLwlsd + xsLsnjm + xsPszx + xsLswjm + xsYc + xsYcJmd;
rp.setXsxjC(xshz1); // 销售商品收到的现金(元),昨天 //后面计算
rp.setCwfxhjC(xshz1); // 财务分析本项合计,昨天 //后面计算
//在途货值
double zthz = amountZaitu();
double zthzyc = amountZaituYc();
rp.setZthzC(zthz + zthzyc); // 在途货值(元),今天 // 计算
//库存货值
double kzhz = amountCurrent();
double kzhzyc = amountYcCurrent();
// double kzhz1 = ((double) Math.round((kzhz + kzhzyc) * 100)) / 100;
double kzhz1 = kzhz + kzhzyc;
rp.setKchzC(kzhz1); // 库存货值(元),今天 // 计算
reportSalesDayGatherMapper.insert(rp);
//clearAndInsertBySalesReportday(rp);
return rp;
}
public double amountOfLwlsdDay(String orderDate) {
return reportSalesDayGatherMapper.amountOfLsdOnDay(orderDate);
}
public double amountOfLsnjmDay(String orderDate) {
return reportSalesDayGatherMapper.amountOfLsnjmOnDay(orderDate);
}
public double amountOfPszxDay(String orderDate) {
return reportSalesDayGatherMapper.amountOfPszxDay(orderDate);
}
public double amountOfLswjmDay(String orderDate) {
return reportSalesDayGatherMapper.amountOfLswjmDay(orderDate);
}
public double amountOfYcDay(String orderDate) {
return reportSalesDayGatherMapper.amountOfYcDay(orderDate);
}
public double amountOfDayJmd(String orderDate) {
return reportSalesDayGatherMapper.amountOfDayJmd( orderDate);
}
public double amountZaitu() {
double wdhjz = 0;
List<Map<String, Object>> list = reportSalesDayGatherMapper.gysdhhzb();
for (Map<String, Object> map : list) {
wdhjz = wdhjz + Double.valueOf(map.get("wdhjz").toString());
}
return wdhjz;
}
public double amountZaituYc() {
double wdhjz = 0;
List<Map<String, Object>> list = reportSalesDayGatherMapper.ycddmxb();
for (Map<String, Object> map : list) {
//wdhjz = wdhjz + ExcelTool.toDouble(map.get("zthjz"));
wdhjz = wdhjz + Double.valueOf(map.get("zthjz").toString());
}
return wdhjz;
}
public double amountCurrent() {
return reportSalesDayGatherMapper.amountCurrent();
}
public double amountYcCurrent() {
return reportSalesDayGatherMapper.amountYcCurrent();
}
}

10
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaylog/ReportSalesDayLogMapper.java

@ -7,6 +7,7 @@ import com.yxt.supervise.report.api.reportsalesdaylog.ReportSalesDayLog;
import com.yxt.supervise.report.api.reportsalesdaylog.ReportSalesDayLogVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@ -20,4 +21,13 @@ public interface ReportSalesDayLogMapper extends BaseMapper<ReportSalesDayLog> {
ReportSalesDayLogVo getLogByOrderDate(@Param("orderDate") String orderDate);
List<ReportSalesDayLogVo> getAllReportSalesDayLog(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayLog> qw);
//获取入库log
@Select("select count(1) from supervise_supplychain.gd_instorage_log where orderDate=@{orderDate}")
int getInstorageLog(@Param("orderDate") String orderDate);
//获取库存log
@Select("select count(1) from supervise_supplychain.gd_inventory_log where orderDate=@{orderDate}")
int getInventoryLog(@Param("orderDate") String orderDate);
//获取销售log
@Select("select count(1) from supervise_supplychain.gd_sales_log where orderDate=@{orderDate}")
int getSalesLog(@Param("orderDate") String orderDate);
}

1
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaylog/ReportSalesDayLogMapper.xml

@ -26,5 +26,4 @@
report_sales_day_store
<where> ${ew.sqlSegment} </where>
</select>
</mapper>

25
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaylog/ReportSalesDayLogRest.java

@ -59,7 +59,6 @@ public class ReportSalesDayLogRest {
@PostMapping("/getReportSalesDayLog")
public ResultBean<ReportSalesDayLogVo> getReportSalesDayLog(@RequestBody PagerQuery<ReportSalesDayLogQuery> pq){
new Thread(new GdSalesThread(pq.getParams().getDate())).start();
ResultBean rb = ResultBean.fireFail();
List<ReportSalesDayLogVo> pv = ReportSalesDayLogService.getReportSalesDayLog(pq);
return rb.success().setData(pv);
@ -71,21 +70,6 @@ public class ReportSalesDayLogRest {
pv.getFullUrl();
return rb.success().setData(pv);
}
public class GdSalesThread extends Thread{
String orderDate;
public GdSalesThread(String orderDate) {
this.orderDate = orderDate;
}
public void run(){
try {
System.out.println("excel线程开启");
SalesReport(orderDate);
System.out.println("excel线程结束");
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
/**
* 生成excel存在本地
@ -111,6 +95,13 @@ public class ReportSalesDayLogRest {
log.setFilePath(uploadPath + newFileName);
ReportSalesDayLogService.update(log,new QueryWrapper<ReportSalesDayLog>().eq("orderDate",orderDate));
excelWriter.finish();
}
/**
* 获取入库 库存 销售的上传log
* @param orderDate
* @return
*/
public boolean getLog(String orderDate){
return ReportSalesDayLogService.getLog(orderDate);
}
}

40
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaylog/ReportSalesDayLogService.java

@ -1,18 +1,26 @@
package com.yxt.supervise.report.biz.reportsalesdaylog;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.supervise.report.api.reportsalesdaygather.ReportSalesDayGatherDto;
import com.yxt.supervise.report.api.reportsalesdaygather.ReportSalesDayGatherVo;
import com.yxt.supervise.report.api.reportsalesdaylog.ReportSalesDayLog;
import com.yxt.supervise.report.api.reportsalesdaylog.ReportSalesDayLogQuery;
import com.yxt.supervise.report.api.reportsalesdaylog.ReportSalesDayLogVo;
import com.yxt.supervise.report.kafka.messageconsumer.MessageConsumerService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.annotation.StreamListener;
import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.cloud.stream.messaging.Source;
import org.springframework.messaging.handler.annotation.SendTo;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
/**
@ -20,27 +28,8 @@ import java.util.List;
* @date 2023/4/21 11:18
*/
@Service
@EnableBinding(Sink.class)
public class ReportSalesDayLogService extends MybatisBaseService<ReportSalesDayLogMapper, ReportSalesDayLog> {
@StreamListener(Sink.INPUT)
public void recieve(String payload) {
System.out.println("report接收");
new GdSalesThread(payload);
System.out.println(payload);
}
public class GdSalesThread extends Thread{
String orderDate;
public GdSalesThread(String orderDate) {
this.orderDate = orderDate;
}
public void run(){
System.out.println("excel线程开启");
//gdInstorageGdService.uploadAndInsert(null);
System.out.println("excel线程结束");
}
}
public class ReportSalesDayLogService extends MybatisBaseService<ReportSalesDayLogMapper, ReportSalesDayLog> {
public List<ReportSalesDayLogVo> getReportSalesDayLog(PagerQuery<ReportSalesDayLogQuery> pq) {
ReportSalesDayLogQuery query = pq.getParams();
@ -70,4 +59,15 @@ public class ReportSalesDayLogService extends MybatisBaseService<ReportSalesDayL
return pagging;
}
public boolean getLog(String orderDate){
int instLog=baseMapper.getInstorageLog(orderDate);
int inveLog=baseMapper.getInventoryLog(orderDate);
int salesLog=baseMapper.getSalesLog(orderDate);
if(instLog==1 && inveLog==1&& salesLog==1){
return true;
}
return false;
}
}

14
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaystore/ReportSalesDayStoreMapper.java

@ -7,6 +7,7 @@ import com.yxt.supervise.report.api.reportsalesdaystore.ReportSalesDayStore;
import com.yxt.supervise.report.api.reportsalesdaystore.ReportSalesDayStoreVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@ -18,4 +19,17 @@ import java.util.List;
public interface ReportSalesDayStoreMapper extends BaseMapper<ReportSalesDayStore> {
List<ReportSalesDayStoreVo> getReportSalesDayStore(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayStore> qw);
List<ReportSalesDayStoreVo> getAllReportSalesDayStore(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayStore> qw);
@Select(" SELECT" +
" ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume," +
" i.NAME AS storeName," +
" rank() over(order by s.storeCode) as serialNumber," +
" s.dataDate as date" +
" FROM" +
" supervise_supplychain.gd_sales_gd s" +
" LEFT JOIN supervise_supplychain.store_info i ON i.`code` = s.storeCode" +
" where s.dataDate=#{orderDate}" +
" GROUP BY" +
" s.storeCode")
List<ReportSalesDayStore> getAllStoreSalesReport(@Param("orderDate") String orderDate);
}

21
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaystore/ReportSalesDayStoreService.java

@ -1,6 +1,7 @@
package com.yxt.supervise.report.biz.reportsalesdaystore;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.util.ListUtils;
@ -52,6 +53,26 @@ public class ReportSalesDayStoreService extends MybatisBaseService<ReportSalesDa
return rb.success().setMsg("保存门店销售信息成功");
}
public void getSalesStore(String orderDate) {
List<ReportSalesDayStore> list= baseMapper.getAllStoreSalesReport(orderDate);
int size=list.size();
double amount=0;
Date date=new Date();
String dfmt = DateUtil.format(date, "yyyy-MM-dd");
for(ReportSalesDayStore store:list){
amount=amount+store.getSaleAmount();
}
for (ReportSalesDayStore store:list){
store.setStoreNumber(String.valueOf(size));
store.setCountAmount(amount);
store.setOrderDate(orderDate);
store.setSerialNumber("mdxsmxb"+dfmt);
store.setReportTime(dfmt);
}
saveBatch(list);
//return null;
}
public List<ReportSalesDayStoreVo> getAllReportSalesDayStore(String orderDate) {
ReportSalesDayStoreQuery reportSalesDayStoreQuery=new ReportSalesDayStoreQuery();
reportSalesDayStoreQuery.setDate(orderDate);

13
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaystoreproduct/ReportSalesDayStoreProductMapper.java

@ -7,6 +7,8 @@ import com.yxt.supervise.report.api.reportsalesdaystoreproduct.ReportSalesDaySto
import com.yxt.supervise.report.api.reportsalesdaystoreproduct.ReportSalesDayStoreProductVo;
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;
@ -18,4 +20,15 @@ import java.util.List;
public interface ReportSalesDayStoreProductMapper extends BaseMapper<ReportSalesDayStoreProduct> {
List<ReportSalesDayStoreProductVo> getReportSalesDayStoreProduct(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayStoreProduct> qw);
List<ReportSalesDayStoreProductVo> getAllReportSalesDayStoreProduct(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayStoreProduct> qw);
@Select(" SELECT" +
" s.prodName as productName,i.name as storeCodeName,s.saleNum as saleNumber,s.salePrice as salePrice," +
" ROUND((s.saleNum*s.salePrice),2) as saleAmount," +
" s.orderType as saleType,s.orderNo as saleCode,s.prodCode as productCode" +
" FROM" +
" supervise_supplychain.gd_sales_gd s" +
" LEFT JOIN supervise_supplychain.store_info i ON i.`code` = s.storeCode" +
" where s.dataDate =#{orderDate}" +
" ORDER BY i. name")
List<ReportSalesDayStoreProduct> getAllStoreSalesReport(@Param("orderDate") String orderDate);
}

20
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaystoreproduct/ReportSalesDayStoreProductService.java

@ -1,6 +1,7 @@
package com.yxt.supervise.report.biz.reportsalesdaystoreproduct;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.util.ListUtils;
@ -55,6 +56,25 @@ public class ReportSalesDayStoreProductService extends MybatisBaseService<Report
return rb.success().setMsg("保存门店商品信息成功");
}
public void getSalesStoreProduct(String orderDate) {
List<ReportSalesDayStoreProduct> list= baseMapper.getAllStoreSalesReport(orderDate);
int size=list.size();
double amount=0;
Date date=new Date();
String dfmt = DateUtil.format(date, "yyyy-MM-dd");
for(ReportSalesDayStoreProduct store:list){
amount=amount+store.getSaleAmount();
}
for (ReportSalesDayStoreProduct store:list){
store.setProductNumber(String.valueOf(size));
store.setCountAmount(amount);
store.setOrderDate(orderDate);
store.setSerialNumber("mdspxsmxb"+dfmt);
store.setReportTime(dfmt);
}
saveBatch(list);
//return null;
}
public List<ReportSalesDayStoreProductVo> getAllReportSalesDayStoreProduct(String orderDate) {
ReportSalesDayStoreProductQuery reportSalesDayStoreProductQuery=new ReportSalesDayStoreProductQuery();
reportSalesDayStoreProductQuery.setDate(orderDate);

14
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaytobaccostore/ReportSalesDayTobaccoStoreMapper.java

@ -7,6 +7,7 @@ import com.yxt.supervise.report.api.reportsalesdaytobaccostore.ReportSalesDayTob
import com.yxt.supervise.report.api.reportsalesdaytobaccostore.ReportSalesDayTobaccoStoreVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@ -18,4 +19,17 @@ import java.util.List;
public interface ReportSalesDayTobaccoStoreMapper extends BaseMapper<ReportSalesDayTobaccoStore> {
List<ReportSalesDayTobaccoStoreVo> getReportSalesDayTobaccoStore(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayTobaccoStore> qw);
List<ReportSalesDayTobaccoStoreVo> getAllReportSalesDayTobaccoStore(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayTobaccoStore> qw);
@Select(" SELECT" +
" ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume," +
" i.NAME AS storeName," +
" rank() over(order by s.storeCode) as serialNumber," +
" s.dataDate as date" +
" FROM" +
" supervise_supplychain.gd_sales_yc s" +
" LEFT JOIN supervise_supplychain.store_info i ON i.`code` = s.storeCode" +
" where s.dataDate=#{orderDate}" +
" GROUP BY" +
" s.storeCode")
List<ReportSalesDayTobaccoStore> getAllTobaccoReport(@Param("orderDate") String orderDate);
}

21
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaytobaccostore/ReportSalesDayTobaccoStoreService.java

@ -1,6 +1,7 @@
package com.yxt.supervise.report.biz.reportsalesdaytobaccostore;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.util.ListUtils;
@ -11,6 +12,7 @@ import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.supervise.report.api.reportsalesdaylog.MyHandler;
import com.yxt.supervise.report.api.reportsalesdaystore.ReportSalesDayStore;
import com.yxt.supervise.report.api.reportsalesdaystore.ReportSalesDayStoreVo;
import com.yxt.supervise.report.api.reportsalesdaystoreproduct.ReportSalesDayStoreProduct;
import com.yxt.supervise.report.api.reportsalesdaystoreproduct.ReportSalesDayStoreProductDto;
@ -56,6 +58,25 @@ public class ReportSalesDayTobaccoStoreService extends MybatisBaseService<Report
return rb.success().setMsg("保存门店烟草信息成功");
}
public void getAllTobaccoReport(String orderDate) {
List<ReportSalesDayTobaccoStore> list= baseMapper.getAllTobaccoReport(orderDate);
int size=list.size();
double amount=0;
Date date=new Date();
String dfmt = DateUtil.format(date, "yyyy-MM-dd");
for(ReportSalesDayTobaccoStore store:list){
amount=amount+store.getSaleAmount();
}
for (ReportSalesDayTobaccoStore store:list){
store.setStoreNumber(String.valueOf(size));
store.setCountAmount(amount);
store.setOrderDate(orderDate);
store.setSerialNumber("ycmdxsmxb"+dfmt);
store.setReportTime(dfmt);
}
saveBatch(list);
//return null;
}
public List<ReportSalesDayTobaccoStoreVo> getAllReportSalesDayTobaccoStore(String orderDate) {
ReportSalesDayTobaccoStoreQuery reportSalesDayTobaccoStoreQuery=new ReportSalesDayTobaccoStoreQuery();
reportSalesDayTobaccoStoreQuery.setDate(orderDate);

16
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaytobaccostoreproduct/ReportSalesDayTobaccoStoreProductMapper.java

@ -7,6 +7,7 @@ import com.yxt.supervise.report.api.reportsalesdaytobaccostoreproduct.ReportSale
import com.yxt.supervise.report.api.reportsalesdaytobaccostoreproduct.ReportSalesDayTobaccoStoreProductVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@ -18,4 +19,19 @@ import java.util.List;
public interface ReportSalesDayTobaccoStoreProductMapper extends BaseMapper<ReportSalesDayTobaccoStoreProduct> {
List<ReportSalesDayTobaccoStoreProductVo> getReportSalesDayTobaccoStoreProduct(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayTobaccoStoreProduct> qw);
List<ReportSalesDayTobaccoStoreProductVo> getAllReportSalesDayTobaccoStoreProduct(@Param(Constants.WRAPPER) Wrapper<ReportSalesDayTobaccoStoreProduct> qw);
@Select(" SELECT" +
" s.prodName as productName,i.name as storeCodeName,s.saleNum as saleNumber,s.salePrice as salePrice," +
" ROUND((s.saleNum*s.salePrice),2) as saleAmount," +
" s.orderType as saleType,s.orderNo as saleCode,s.prodCode as productCode" +
" FROM "+
" gd_sales_yc s" +
" LEFT JOIN store_info i ON i.`code` = s.storeCode" +
" where s.dataDate=#{orderDate}" +
" ORDER BY i. name")
List<ReportSalesDayTobaccoStoreProduct> getSalesStoreTobaccoProduct(@Param("orderDate") String ordreDate);
}

22
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/reportsalesdaytobaccostoreproduct/ReportSalesDayTobaccoStoreProductService.java

@ -1,6 +1,7 @@
package com.yxt.supervise.report.biz.reportsalesdaytobaccostoreproduct;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.util.ListUtils;
@ -9,6 +10,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.supervise.report.api.reportsalesdaystoreproduct.ReportSalesDayStoreProduct;
import com.yxt.supervise.report.api.reportsalesdaystoreproduct.ReportSalesDayStoreProductVo;
import com.yxt.supervise.report.api.reportsalesdaytobaccostore.ReportSalesDayTobaccoStore;
import com.yxt.supervise.report.api.reportsalesdaytobaccostore.ReportSalesDayTobaccoStoreDto;
@ -22,6 +24,7 @@ import org.springframework.stereotype.Service;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -53,6 +56,25 @@ public class ReportSalesDayTobaccoStoreProductService extends MybatisBaseService
return rb.success().setMsg("保存门店烟草商品信息成功");
}
public void getSalesStoreTobaccoProduct(String orderDate) {
List<ReportSalesDayTobaccoStoreProduct> list= baseMapper.getSalesStoreTobaccoProduct(orderDate);
int size=list.size();
double amount=0;
Date date=new Date();
String dfmt = DateUtil.format(date, "yyyy-MM-dd");
for(ReportSalesDayTobaccoStoreProduct store:list){
amount=amount+store.getSaleAmount();
}
for (ReportSalesDayTobaccoStoreProduct store:list){
store.setProductNumber(String.valueOf(size));
store.setCountAmount(amount);
store.setOrderDate(orderDate);
store.setSerialNumber("ycmdspxsmxb"+dfmt);
store.setReportTime(dfmt);
}
saveBatch(list);
//return null;
}
public List<ReportSalesDayTobaccoStoreProductVo> getAllReportSalesDayTobaccoStoreProduct(String orderDate) {
ReportSalesDayTobaccoStoreProductQuery reportSalesDayTobaccoStoreProductQuery=new ReportSalesDayTobaccoStoreProductQuery();
reportSalesDayTobaccoStoreProductQuery.setDate(orderDate);

68
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/thread/ReportThread.java

@ -0,0 +1,68 @@
package com.yxt.supervise.report.biz.thread;
import cn.hutool.core.thread.ThreadUtil;
import com.yxt.supervise.report.biz.reportsalesdaygather.ReportSalesDayGatherService;
import com.yxt.supervise.report.biz.reportsalesdaylog.ReportSalesDayLogRest;
import com.yxt.supervise.report.biz.reportsalesdaylog.ReportSalesDayLogService;
import com.yxt.supervise.report.biz.reportsalesdaystore.ReportSalesDayStoreService;
import com.yxt.supervise.report.biz.reportsalesdaystoreproduct.ReportSalesDayStoreProductService;
import com.yxt.supervise.report.biz.reportsalesdaytobaccostore.ReportSalesDayTobaccoStoreService;
import com.yxt.supervise.report.biz.reportsalesdaytobaccostoreproduct.ReportSalesDayTobaccoStoreProductService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.io.IOException;
/**
* @author wangpengfei
* @date 2023/4/27 9:17
*/
@Slf4j
@Service
public class ReportThread {
@Autowired
ReportSalesDayGatherService reportSalesDayGatherService;
@Autowired
ReportSalesDayStoreService reportSalesDayStoreService;
@Autowired
ReportSalesDayStoreProductService reportSalesDayStoreProductService;
@Autowired
ReportSalesDayTobaccoStoreService reportSalesDayTobaccoStoreService;
@Autowired
ReportSalesDayTobaccoStoreProductService reportSalesDayTobaccoStoreProductService;
@Autowired
ReportSalesDayLogRest reportSalesDayLogRest;
public void DoReport(String orderDate) {
log.info("开始统计报表");
long stime = System.currentTimeMillis();
reportSalesDayGatherService.clearAndInitByOrderDate(orderDate);
reportSalesDayStoreService.getSalesStore(orderDate);
reportSalesDayStoreProductService.getSalesStoreProduct(orderDate);
reportSalesDayTobaccoStoreService.getAllTobaccoReport(orderDate);
reportSalesDayTobaccoStoreProductService.getSalesStoreTobaccoProduct(orderDate);
ThreadUtil.execute(()->{ExcelThread(orderDate);});
}
public void ReportThread(String orderDate){
if(reportSalesDayLogRest.getLog(orderDate)){
ThreadUtil.execute(()->{DoReport(orderDate);});
}
}
public void ExcelThread(String orderDate) {
ThreadUtil.execute(()->{
try {
DoExcel(orderDate);
} catch (IOException e) {
throw new RuntimeException(e);
}
});
}
public void DoExcel(String orderDate) throws IOException {
log.info("开始生成excel报表");
reportSalesDayLogRest.SalesReport(orderDate);
}
}

4
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/kafka/messageconsumer/MessageConsumerRest.java

@ -8,8 +8,8 @@ import org.springframework.web.bind.annotation.RestController;
* @author wangpengfei
* @date 2023/4/26 17:57
*/
@Api("kafka消费者")
@Api("kafka消息消费者")
@RestController
@RequestMapping("v1/gdinstoragegd")
@RequestMapping("v1/messageconsumer")
public class MessageConsumerRest {
}

14
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/kafka/messageconsumer/MessageConsumerService.java

@ -1,11 +1,12 @@
package com.yxt.supervise.report.kafka.messageconsumer;
import com.yxt.supervise.report.biz.reportsalesdaylog.ReportSalesDayLogService;
import com.yxt.supervise.report.biz.reportsalesdaygather.ReportSalesDayGatherService;
import com.yxt.supervise.report.biz.thread.ReportThread;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.annotation.StreamListener;
import org.springframework.cloud.stream.messaging.Sink;
import org.springframework.cloud.stream.messaging.Source;
import org.springframework.stereotype.Service;
/**
@ -14,12 +15,15 @@ import org.springframework.stereotype.Service;
*/
@Slf4j
@Service
@EnableBinding(Source.class)
@EnableBinding(Sink.class)
public class MessageConsumerService {
@Autowired
ReportThread reportThread;
@StreamListener(Sink.INPUT)
public void recieve(String payload) {
System.out.println("report接收");
//new ReportSalesDayLogService.GdSalesThread(payload);
log.info("report接收"+payload);
reportThread.ReportThread(payload);
System.out.println(payload);
}
}

10
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/kafka/messageproducer/MessageProducerRest.java

@ -11,14 +11,8 @@ import org.springframework.web.bind.annotation.RestController;
* @author wangpengfei
* @date 2023/4/26 17:57
*/
@Api("kafka消者")
@Api("kafka消息生产者")
@RestController
@RequestMapping("v1/gdinstoragegd")
@RequestMapping("v1/messageproducer")
public class MessageProducerRest {
@Autowired
MessageProducerService messageProducerService;
@PostMapping("/sendMsg")
public void send(@RequestBody String message) {
messageProducerService.sendMsg(message);
}
}

4
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/kafka/messageproducer/MessageProducerService.java

@ -19,8 +19,4 @@ import org.springframework.stereotype.Service;
public class MessageProducerService {
@Autowired
private Source source;
public void sendMsg(String msg) {
System.out.println("customer开始执行");
source.output().send(MessageBuilder.withPayload(msg).build());
}
}

Loading…
Cancel
Save