Browse Source

出库、定时任务、库存信息excel

master
fkf 2 years ago
parent
commit
417f20978b
  1. 26
      yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryService.java
  2. 6
      yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/outstock/OutStockMapper.java
  3. 14
      yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/outstock/OutStockMapper.xml
  4. 11
      yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/outstock/OutStockRest.java
  5. 20
      yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/outstock/OutStockService.java
  6. 23
      yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/shanhai/timedtask/ShanHaiTimedTask.java
  7. 4
      yxt-supervise-gf-biz/src/test/java/demo/tool/SecurTest.java

26
yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/inventory/InventoryService.java

@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil;
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.sun.org.apache.bcel.internal.generic.NEW;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
@ -19,7 +18,6 @@ import com.yxt.supervise.gf.shanhai.resp.BaseResponseListObj;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
@ -27,7 +25,6 @@ import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
@ -43,8 +40,6 @@ public class InventoryService extends ServiceImpl<InventoryMapper, Inventory> {
@Value("${import.filePath}")
private String filePath;
@Autowired
private HttpServletResponse response;
public ResultBean save(InventoryIndex inventoryIndex){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
@ -52,17 +47,17 @@ public class InventoryService extends ServiceImpl<InventoryMapper, Inventory> {
ResultBean rb = ResultBean.fireFail();
BaseResponse<BaseResponseListObj<com.yxt.supervise.gf.shanhai.resp.Inventory>> api$system$inventory$index = ShRequester.getApi$system$inventory$index(inventoryIndex);
List<com.yxt.supervise.gf.shanhai.resp.Inventory> list = api$system$inventory$index.getData().getList();
try {
exportExcel(response,list);
}catch (Exception e){
e.printStackTrace();
}
for (com.yxt.supervise.gf.shanhai.resp.Inventory inventory : list) {
Inventory inventory1 = new Inventory();
BeanUtil.copyProperties(inventory,inventory1);
inventory1.setTime(sdf.format(date));
baseMapper.insert(inventory1);
}
try {
exportExcel(list);
}catch (Exception e){
e.printStackTrace();
}
return rb.success().setMsg("添加成功");
}
@ -71,13 +66,22 @@ public class InventoryService extends ServiceImpl<InventoryMapper, Inventory> {
* @param list 导出数据
* @throws Exception
*/
public void exportExcel(HttpServletResponse response, List<com.yxt.supervise.gf.shanhai.resp.Inventory> list) throws Exception {
public void exportExcel(List<com.yxt.supervise.gf.shanhai.resp.Inventory> list) throws Exception {
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date();
XSSFWorkbook wb = new XSSFWorkbook();
Map<String, List<com.yxt.supervise.gf.shanhai.resp.Inventory>> listMap = list.stream().collect(Collectors.groupingBy(it -> it.getStorehouse_name()));
List<Map<String, Object>> listMap1 = new ArrayList<>();//存储汇总数据
Map<String, List<com.yxt.supervise.gf.shanhai.resp.Inventory>> map1 = new HashMap<>();
for (Map.Entry<String, List<com.yxt.supervise.gf.shanhai.resp.Inventory>> stringListEntry : listMap.entrySet()) {
List<com.yxt.supervise.gf.shanhai.resp.Inventory> value = stringListEntry.getValue();
List<com.yxt.supervise.gf.shanhai.resp.Inventory> filterValue = null;
filterValue = value.stream().filter(t -> t.getMateriel_group_text().equals("组件") || t.getMateriel_group_text().equals("逆变器")).collect(Collectors.toList());
if (filterValue.size() != 0){
map1.put(stringListEntry.getKey(),filterValue);
}
}
for (Map.Entry<String, List<com.yxt.supervise.gf.shanhai.resp.Inventory>> stringListEntry : map1.entrySet()) {
Map<String, Object> map = new HashMap<>();
//标题行抽出字段
String[] head = {"序号","库存数量","仓库编码", "物料id", "物料编码", "物料组id", "物料品牌", "物料名称", "物料单价(成本价)", "最后更新时间", "物料组明文", "最后更新时间明文", "仓库名称","货值"};

6
yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/outstock/OutStockMapper.java

@ -1,8 +1,13 @@
package com.yxt.supervise.gf.biz.outstock;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.supervise.gf.api.outstock.OutStock;
import com.yxt.supervise.gf.api.outstock.OutStockVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* @author feikefei
@ -10,4 +15,5 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface OutStockMapper extends BaseMapper<OutStock> {
IPage<OutStockVo> selectPageVo(IPage<OutStock> page, @Param(Constants.WRAPPER) Wrapper<OutStock> qw);
}

14
yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/outstock/OutStockMapper.xml

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.supervise.gf.biz.outstock.OutStockMapper">
<select id="selectPageVo" resultType="com.yxt.supervise.gf.api.outstock.OutStockVo">
SELECT
*
FROM
out_stock
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

11
yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/outstock/OutStockRest.java

@ -1,6 +1,10 @@
package com.yxt.supervise.gf.biz.outstock;
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.gf.api.outstock.OutStockQuery;
import com.yxt.supervise.gf.api.outstock.OutStockVo;
import com.yxt.supervise.gf.shanhai.req.Out_stockGetRecordMaterielList;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
@ -25,4 +29,11 @@ public class OutStockRest {
public ResultBean save(@RequestBody Out_stockGetRecordMaterielList reqParams){
return outStockService.save(reqParams);
}
@PostMapping("/listPage")
public ResultBean listPage(@RequestBody PagerQuery<OutStockQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<OutStockVo> pagerVo = outStockService.listPage(pq);
return rb.success().setData(pagerVo);
}
}

20
yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/biz/outstock/OutStockService.java

@ -1,14 +1,20 @@
package com.yxt.supervise.gf.biz.outstock;
import cn.hutool.core.bean.BeanUtil;
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.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.gf.api.outstock.OutStock;
import com.yxt.supervise.gf.api.outstock.OutStockQuery;
import com.yxt.supervise.gf.api.outstock.OutStockVo;
import com.yxt.supervise.gf.shanhai.ShRequester;
import com.yxt.supervise.gf.shanhai.req.Out_stockGetRecordMaterielList;
import com.yxt.supervise.gf.shanhai.resp.BaseResponse;
import com.yxt.supervise.gf.shanhai.resp.BaseResponseListObj;
import com.yxt.supervise.gf.shanhai.resp.InStockGetRecordMaterielList;
import com.yxt.supervise.gf.shanhai.resp.RecordMaterielList;
import org.springframework.stereotype.Service;
@ -32,4 +38,16 @@ public class OutStockService extends ServiceImpl<OutStockMapper, OutStock> {
}
return rb.success().setMsg("添加成功");
}
public PagerVo<OutStockVo> listPage(PagerQuery<OutStockQuery> pq){
OutStockQuery params = pq.getParams();
QueryWrapper<OutStock> wq = new QueryWrapper<>();
if (params!=null){
}
IPage<OutStock> page = PagerUtil.queryToPage(pq);
IPage<OutStockVo> outStockVoIPage = baseMapper.selectPageVo(page, wq);
PagerVo<OutStockVo> vo = PagerUtil.pageToVo(outStockVoIPage, null);
return vo;
}
}

23
yxt-supervise-gf-biz/src/main/java/com/yxt/supervise/gf/shanhai/timedtask/ShanHaiTimedTask.java

@ -1,11 +1,12 @@
package com.yxt.supervise.gf.shanhai.timedtask;
import com.yxt.common.core.result.ResultBean;
import com.yxt.supervise.gf.biz.instock.InStockService;
import com.yxt.supervise.gf.biz.inventory.InventoryService;
import com.yxt.supervise.gf.shanhai.req.In_stockGetRecordMaterielList;
import com.yxt.supervise.gf.shanhai.req.InventoryIndex;
import io.swagger.annotations.ApiModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@ -19,10 +20,28 @@ public class ShanHaiTimedTask {
@Autowired
private InventoryService inventoryService;
@Autowired
private InStockService inStockService;
/**
* @Description //描述: 定时抓取并添加到本地库存管理信息并生成Excel文件到指定位置
* @Param []
* @return void
**/
// @Scheduled(cron = "0 0 3 * * ?")
public void timedTask(){
public void inventoryTimedTask(){
InventoryIndex inventoryIndex = new InventoryIndex();
inventoryService.save(inventoryIndex);
}
/**
* @Description //描述: 定时抓取并添加到本地入库记录信息
* @Param []
* @return void
**/
// @Scheduled(cron = "0 1 3 * * ?")
public void inStockTimedTask(){
In_stockGetRecordMaterielList list = new In_stockGetRecordMaterielList();
inStockService.save(list);
}
}

4
yxt-supervise-gf-biz/src/test/java/demo/tool/SecurTest.java

@ -146,8 +146,8 @@ public class SecurTest {
// BaseResponse<BaseResponseListObj<StorehouseIndex>> api$system$storehouse$index = ShRequester.getApi$system$storehouse$index(null, null);
// System.out.println(api$system$storehouse$index);
BaseResponse<BaseResponseListObj<StorehouseIndex>> api$system$storehouse$index = ShRequester.getApi$system$storehouse$index(null, null);
System.out.println(api$system$storehouse$index);
// BaseResponse<BaseResponseListObj<SupplierIndex>> api$system$supplier$index = ShRequester.getApi$system$supplier$index();
// System.out.println(api$system$supplier$index);

Loading…
Cancel
Save