diff --git a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/api/inventory/InventoryQuery.java b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/api/inventory/InventoryQuery.java index 34780df..03b1219 100644 --- a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/api/inventory/InventoryQuery.java +++ b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/api/inventory/InventoryQuery.java @@ -12,4 +12,8 @@ import lombok.Data; @ApiModel(value = "库存列表 分页查询字段") public class InventoryQuery implements Query { private String storehouse_name; + private String endDate; + private String startDate; + private String brand_name; + private String materiel_group; } diff --git a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/api/inventory/InventoryVo.java b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/api/inventory/InventoryVo.java index 6420c8d..5657bc2 100644 --- a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/api/inventory/InventoryVo.java +++ b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/api/inventory/InventoryVo.java @@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.math.BigDecimal; + /** * @author feikefei * @create 2023-07-12-15:41 @@ -37,4 +39,5 @@ public class InventoryVo { @ApiModelProperty("最后更新时间明文") private String update_time_text;//"2023-05-22 10:45:25" private String time; + private BigDecimal amount_money=new BigDecimal(0);//金额 } diff --git a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryMapper.java b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryMapper.java index 0fa0caf..bdb5d32 100644 --- a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryMapper.java +++ b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryMapper.java @@ -22,4 +22,7 @@ public interface InventoryMapper extends BaseMapper { @Select("select * from inventory where storehouse_name = #{storehouse_name}") List selectInventoryByStorehouseName(@Param("storehouse_name") String storehouse_name); + List getInventoryByTime(@Param(Constants.WRAPPER) Wrapper qw); + List getDayReportSh(@Param(Constants.WRAPPER) Wrapper qw); + } diff --git a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryMapper.xml b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryMapper.xml index fef043d..bdc269b 100644 --- a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryMapper.xml +++ b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryMapper.xml @@ -10,5 +10,24 @@ ${ew.sqlSegment} - + + \ No newline at end of file diff --git a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryRest.java b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryRest.java index 0f1ccf6..a4f10ef 100644 --- a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryRest.java +++ b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryRest.java @@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; +import java.util.List; import java.util.Map; /** @@ -32,13 +33,13 @@ public class InventoryRest { @PostMapping("/save") @ApiOperation("添加入库数据") - public ResultBean save(@RequestBody InventoryIndex inventoryIndex){ + public ResultBean save(@RequestBody InventoryIndex inventoryIndex) { return inventoryService.save(inventoryIndex); } @PostMapping("/listPage") @ApiOperation("分页查询") - public ResultBean listPage(@RequestBody PagerQuery pq){ + public ResultBean listPage(@RequestBody PagerQuery pq) { ResultBean rb = ResultBean.fireFail(); PagerVo pagerVo = inventoryService.listPage(pq); return rb.success().setData(pagerVo); @@ -46,15 +47,46 @@ public class InventoryRest { @PostMapping("/export/{storehouse_name}") @ApiOperation("导出数据") - public void export(@PathVariable String storehouse_name, HttpServletResponse response) throws Exception{ + public void export(@PathVariable String storehouse_name, HttpServletResponse response) throws Exception { inventoryService.export(storehouse_name, response); } @PostMapping("/getInventoryList") @ApiOperation(value = "查询库存管理列表") - public ResultBean getInventoryList(@RequestBody InventoryIndex map){ + public ResultBean getInventoryList(@RequestBody InventoryIndex map) { ResultBean rb = ResultBean.fireFail(); BaseResponse> api$system$inventory$index = ShRequester.getApi$system$inventory$index(map); return rb.success().setData(api$system$inventory$index); } -} + + @PostMapping("/getDayReport") + @ApiOperation(value = "库存日报表") + public ResultBean getDayReport(@RequestBody InventoryQuery pq) { + ResultBean rb = ResultBean.fireFail(); + List inventoryVos = inventoryService.getDayReport(pq); + return rb.success().setData(inventoryVos); + } + + @PostMapping("/getDayReportMap") + @ApiOperation(value = "库存日报表柱状图map数据结构") + public ResultBean getDayReportMap(@RequestBody InventoryQuery pq) { + ResultBean rb = ResultBean.fireFail(); + Map inventoryVos = inventoryService.getDayReportMap(pq); + return rb.success().setData(inventoryVos); + } + + @PostMapping("/getDayReportSh") + @ApiOperation(value = "库存日报表按仓库查询") + public ResultBean getDayReportSh(@RequestBody InventoryQuery pq) { + ResultBean rb = ResultBean.fireFail(); + List inventoryVos = inventoryService.getDayReportSh(pq); + return rb.success().setData(inventoryVos); + } + @PostMapping("/getDayReportShMap") + @ApiOperation(value = "库存日报表按仓库查询柱状图map结构") + public ResultBean getDayReportShMap(@RequestBody InventoryQuery pq) { + ResultBean rb = ResultBean.fireFail(); + Map inventoryVos = inventoryService.getDayReportShMap(pq); + return rb.success().setData(inventoryVos); + } +} \ No newline at end of file diff --git a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryService.java b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryService.java index 268f288..8d89e06 100644 --- a/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryService.java +++ b/yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryService.java @@ -1,6 +1,8 @@ package com.yxt.supervise.gf.biz.inventory; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUnit; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.thread.ThreadUtil; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; @@ -9,6 +11,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.base.utils.StringUtils; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -493,4 +496,212 @@ public class InventoryService extends ServiceImpl { out.close(); } } + public List getDayReport(InventoryQuery pq){ + InventoryQuery params = pq; + QueryWrapper wq = new QueryWrapper<>(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + if (params != null){ + if (StringUtils.isNotBlank(params.getStorehouse_name())) + wq.eq("storehouse_name",params.getStorehouse_name()); + + + if (StringUtils.isNotBlank(params.getStartDate())){ + wq.le("STR_TO_DATE(time,'%Y-%m-%d')", params.getStartDate()); + + }else{ + params.setStartDate(sdf.format(DateUtil.yesterday())); + wq.le("STR_TO_DATE(time,'%Y-%m-%d')",params.getStartDate()); + } + + if (StringUtils.isNotBlank(params.getEndDate())){ + wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",params.getEndDate()); + }else { + params.setEndDate(sdf.format(DateUtil.offsetDay(DateUtil.yesterday(),-6))); ; + wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",params.getEndDate()); + } + if(StringUtils.isNotBlank(params.getBrand_name())){ + wq.eq("brand_name",params.getBrand_name()); + } + if(StringUtils.isNotBlank(params.getMateriel_group())){ + wq.in("materiel_group",params.getMateriel_group()); + }else{ + wq.in("materiel_group","1","2"); + } + } + List inventoryVos = baseMapper.getInventoryByTime(wq); + + List b=new ArrayList<>(); + //6 + long i=DateUtil.between(DateUtil.parse(params.getStartDate()),DateUtil.parse(params.getEndDate()), DateUnit.DAY); + for(int k=0;k getDayReportMap(InventoryQuery pq){ + InventoryQuery params = pq; + Map m=new HashMap<>(); + QueryWrapper wq = new QueryWrapper<>(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + if (params != null){ + if (StringUtils.isNotBlank(params.getStorehouse_name())) + wq.eq("storehouse_name",params.getStorehouse_name()); + + + if (StringUtils.isNotBlank(params.getStartDate())){ + wq.le("STR_TO_DATE(time,'%Y-%m-%d')", params.getStartDate()); + + }else{ + params.setStartDate(sdf.format(DateUtil.yesterday())); + wq.le("STR_TO_DATE(time,'%Y-%m-%d')",params.getStartDate()); + } + + if (StringUtils.isNotBlank(params.getEndDate())){ + wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",params.getEndDate()); + }else { + params.setEndDate(sdf.format(DateUtil.offsetDay(DateUtil.yesterday(),-6))); ; + wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",params.getEndDate()); + } + if(StringUtils.isNotBlank(params.getBrand_name())){ + wq.eq("brand_name",params.getBrand_name()); + } + if(StringUtils.isNotBlank(params.getMateriel_group())){ + wq.in("materiel_group",params.getMateriel_group()); + }else{ + wq.in("materiel_group","1","2"); + } + } + List inventoryVos = baseMapper.getInventoryByTime(wq); + List a=new ArrayList<>(); + List b=new ArrayList<>(); + //6 + long i=DateUtil.between(DateUtil.parse(params.getStartDate()),DateUtil.parse(params.getEndDate()), DateUnit.DAY); + for(int k=0;k getDayReportSh(InventoryQuery pq){ + InventoryQuery params = pq; + QueryWrapper wq = new QueryWrapper<>(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + if (params != null){ + +// if (StringUtils.isNotBlank(params.getStartDate())){ +// wq.le("STR_TO_DATE(time,'%Y-%m-%d')", params.getStartDate()); +// +// }else{ +// wq.le("STR_TO_DATE(time,'%Y-%m-%d')", sdf.format(DateUtil.yesterday())); +// } +// if (StringUtils.isNotBlank(params.getStartDate())){ +// wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",params.getEndDate()); +// }else { +// wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",sdf.format(DateUtil.offsetDay(DateUtil.yesterday(),-6))); +// } + if (StringUtils.isNotBlank(params.getStartDate())){ + wq.le("STR_TO_DATE(time,'%Y-%m-%d')", params.getStartDate()); + + }else{ + params.setStartDate(sdf.format(DateUtil.yesterday())); + wq.le("STR_TO_DATE(time,'%Y-%m-%d')",params.getStartDate()); + } + + if (StringUtils.isNotBlank(params.getEndDate())){ + wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",params.getEndDate()); + }else { + params.setEndDate(sdf.format(DateUtil.offsetDay(DateUtil.yesterday(),-6))); ; + wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",params.getEndDate()); + } + if(StringUtils.isNotBlank(params.getBrand_name())){ + wq.eq("brand_name",params.getBrand_name()); + } + if(StringUtils.isNotBlank(params.getMateriel_group())){ + wq.in("materiel_group",params.getMateriel_group()); + }else{ + wq.in("materiel_group","1","2"); + } + } + wq.in("storehouse_code","07300003","07300006","07300008","07300002"); + List inventoryVos = baseMapper.getDayReportSh(wq); + List b=new ArrayList<>(); + //6 + long i=DateUtil.between(DateUtil.parse(params.getStartDate()),DateUtil.parse(params.getEndDate()), DateUnit.DAY); + for(int k=0;k getDayReportShMap(InventoryQuery pq){ + InventoryQuery params = pq; + QueryWrapper wq = new QueryWrapper<>(); + Map m=new HashMap<>(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + if (params != null){ + + if (StringUtils.isNotBlank(params.getStartDate())){ + wq.le("STR_TO_DATE(time,'%Y-%m-%d')", params.getStartDate()); + + }else{ + params.setStartDate(sdf.format(DateUtil.yesterday())); + wq.le("STR_TO_DATE(time,'%Y-%m-%d')",params.getStartDate()); + } + + if (StringUtils.isNotBlank(params.getEndDate())){ + wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",params.getEndDate()); + }else { + params.setEndDate(sdf.format(DateUtil.offsetDay(DateUtil.yesterday(),-6))); ; + wq.ge("STR_TO_DATE(time,'%Y-%m-%d')",params.getEndDate()); + } + if(StringUtils.isNotBlank(params.getBrand_name())){ + wq.eq("brand_name",params.getBrand_name()); + } + if(StringUtils.isNotBlank(params.getMateriel_group())){ + wq.in("materiel_group",params.getMateriel_group()); + }else{ + wq.in("materiel_group","1","2"); + } + } + wq.in("storehouse_code","07300003","07300006","07300008","07300002"); + List inventoryVos = baseMapper.getDayReportSh(wq); + List a=new ArrayList<>(); + List b=new ArrayList<>(); + //6 + long i=DateUtil.between(DateUtil.parse(params.getStartDate()),DateUtil.parse(params.getEndDate()), DateUnit.DAY); + for(int k=0;k StpUtil.checkLogin())) - .addPathPatterns("/**") - .excludePathPatterns("/gf/sys/doLogin"); - } +// @Override +// public void addInterceptors(InterceptorRegistry registry) { +// // 注册 Sa-Token 拦截器,校验规则为 StpUtil.checkLogin() 登录校验。 +// registry.addInterceptor(new SaInterceptor(handle -> StpUtil.checkLogin())) +// .addPathPatterns("/**") +// .excludePathPatterns("/gf/sys/doLogin"); +// } }