仓库导出修改

liweidong
wusiyu 1 day ago
parent 1c1a866f24
commit 6f559a23db
  1. 29
      blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StRequisitionController.java
  2. 166
      blade-service/blade-wms/src/main/java/org/springblade/wms/excel/StRequisitionExcel.java
  3. 7
      blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StRequisitionMapper.java
  4. 23
      blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StRequisitionMapper.xml
  5. 5
      blade-service/blade-wms/src/main/java/org/springblade/wms/service/IStRequisitionService.java
  6. 48
      blade-service/blade-wms/src/main/java/org/springblade/wms/service/impl/StRequisitionServiceImpl.java

@ -11,6 +11,7 @@ import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Valid; import jakarta.validation.Valid;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.log.annotation.ApiLog; import org.springblade.core.log.annotation.ApiLog;
import org.springblade.core.log.exception.ServiceException; import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Condition;
@ -19,7 +20,9 @@ import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.annotation.IsAdmin; import org.springblade.core.secure.annotation.IsAdmin;
import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R; import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.Func;
import org.springblade.wms.excel.StRequisitionExcel;
import org.springblade.wms.pojo.dto.StRequisitionDTO; import org.springblade.wms.pojo.dto.StRequisitionDTO;
import org.springblade.wms.pojo.entity.StRequisition; import org.springblade.wms.pojo.entity.StRequisition;
import org.springblade.wms.pojo.entity.StStorageLocation; import org.springblade.wms.pojo.entity.StStorageLocation;
@ -246,19 +249,19 @@ public class StRequisitionController extends BladeController {
/** /**
* 导出数据 * 导出数据
*/ */
// @IsAdmin @IsAdmin
//// @GetMapping("/export-stRequisition") @GetMapping("/export-stRequisition")
//// @ApiOperationSupport(order = 9) @ApiOperationSupport(order = 9)
//// @Operation(summary = "导出数据", description = "传入stRequisition") @Operation(summary = "导出数据", description = "传入stRequisition")
//// public void exportStRequisition(@Parameter(hidden = true) @RequestParam Map<String, Object> stRequisition, BladeUser bladeUser, HttpServletResponse response) { public void exportStRequisition(@Parameter(hidden = true) @RequestParam Map<String, Object> stRequisition, BladeUser bladeUser, HttpServletResponse response) {
//// QueryWrapper<StRequisition> queryWrapper = Condition.getQueryWrapper(stRequisition, StRequisition.class); // QueryWrapper<StRequisition> queryWrapper = Condition.getQueryWrapper(stRequisition, StRequisition.class);
//// //if (!AuthUtil.isAdministrator()) { //if (!AuthUtil.isAdministrator()) {
//// // queryWrapper.lambda().eq(StRequisition::getTenantId, bladeUser.getTenantId()); // queryWrapper.lambda().eq(StRequisition::getTenantId, bladeUser.getTenantId());
//// //} //}
// //queryWrapper.lambda().eq(StRequisitionEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED); //queryWrapper.lambda().eq(StRequisitionEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
// List<StRequisitionExcel> list = stRequisitionService.exportStRequisition(queryWrapper); List<StRequisitionExcel> list = stRequisitionService.exportStRequisition(stRequisition);
// ExcelUtil.export(response, "领料单打印数据" + DateUtil.time(), "领料单打印数据表", list, StRequisitionExcel.class); ExcelUtil.export(response, "领料单打印数据" + DateUtil.time(), "领料单打印数据表", list, StRequisitionExcel.class);
// } }
} }

@ -28,47 +28,23 @@ public class StRequisitionExcel implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** /**
* 主键 * 物料编号
*/ */
@ColumnWidth(20) @ColumnWidth(20)
@ExcelProperty("主键") @ExcelProperty("物料编号")
private Long id; private String prtno;
/**
* 租户ID
*/
@ColumnWidth(20)
@ExcelProperty("租户ID")
private String tenantId;
/**
* 是否已删除
*/
@ColumnWidth(20)
@ExcelProperty("是否已删除")
private Long isDeleted;
/**
* 采购单号
*/
@ColumnWidth(20)
@ExcelProperty("采购单号")
private String buyCode;
/**
* 出库单号
*/
@ColumnWidth(20)
@ExcelProperty("出库单号")
private String invadjCode;
/** /**
* 到期日期 * 材料名称
*/ */
@ColumnWidth(20) @ColumnWidth(20)
@ExcelProperty("到期日期") @ExcelProperty("材料名称")
private String validdat; private String prtdesc;
/** /**
* 领用单位/需求部门 * 规格
*/ */
@ColumnWidth(20) @ColumnWidth(20)
@ExcelProperty("领用单位/需求部门") @ExcelProperty("规格")
private String splyName; private String prtinfo;
/** /**
* 生产标识 * 生产标识
*/ */
@ -76,29 +52,23 @@ public class StRequisitionExcel implements Serializable {
@ExcelProperty("生产标识") @ExcelProperty("生产标识")
private String prtlotno; private String prtlotno;
/** /**
* 请领日期 * 出库单号
*/
@ColumnWidth(20)
@ExcelProperty("请领日期")
private String enrtydate;
/**
* 材料编号;1新建3已提交5采购中7已跟踪9已到料
*/ */
@ColumnWidth(20) @ColumnWidth(20)
@ExcelProperty("材料编号;1、新建;3、已提交,5、采购中;7、已跟踪;9、已到料") @ExcelProperty("出库单号")
private String prtno; private String invadjCode;
/** /**
* 材料名称 * 出库数量
*/ */
@ColumnWidth(20) @ColumnWidth(20)
@ExcelProperty("材料名称") @ExcelProperty("出库数量")
private String prtdesc; private String invysqty;
/** /**
* 牌号/规格/状态 * 单价
*/ */
@ColumnWidth(20) @ColumnWidth(20)
@ExcelProperty("牌号/规格/状态") @ExcelProperty("单价")
private String prtinfo; private Double invadjMoney;
/** /**
* 单位 * 单位
*/ */
@ -106,107 +76,17 @@ public class StRequisitionExcel implements Serializable {
@ExcelProperty("单位") @ExcelProperty("单位")
private String prtum; private String prtum;
/** /**
* 总数量;外键人员 * 到期日期
*/
@ColumnWidth(20)
@ExcelProperty("总数量;外键(人员)")
private String invysqty;
/**
* 代料单号
*/ */
@ColumnWidth(20) @ColumnWidth(20)
@ExcelProperty("代料单号") @ExcelProperty("到期日期")
private String prtrepno; private String validdat;
/** /**
* 检验编号;外键部门 * 检验编号
*/ */
@ColumnWidth(20) @ColumnWidth(20)
@ExcelProperty("检验编号;外键(部门)") @ExcelProperty("检验编号")
private String qutno; private String qutno;
/**
* 计划区域
*/
@ColumnWidth(20)
@ExcelProperty("计划区域")
private String plnarea;
/**
* 保管员
*/
@ColumnWidth(20)
@ExcelProperty("保管员")
private String warctlr;
/**
* 库房区域
*/
@ColumnWidth(20)
@ExcelProperty("库房区域")
private String storarea;
/**
* 发货仓库
*/
@ColumnWidth(20)
@ExcelProperty("发货仓库")
private String warno;
/**
* 库位号
*/
@ColumnWidth(20)
@ExcelProperty("库位号")
private String warlocno;
/**
* 路线卡号
*/
@ColumnWidth(20)
@ExcelProperty("路线卡号")
private String rouclp;
/**
* 备注
*/
@ColumnWidth(20)
@ExcelProperty("备注")
private String remark;
/**
* 领料到期日期
*/
@ColumnWidth(20)
@ExcelProperty("领料到期日期")
private String inviefdat;
/**
* 当前状态待打印-1已打印待入库0已入库10
*/
@ColumnWidth(20)
@ExcelProperty("当前状态,待打印-1,已打印待入库0,已入库10")
private Long curStatus;
/**
* 金额
*/
@ColumnWidth(20)
@ExcelProperty("金额")
private Double invadjMoney;
/**
* 计划申报人
*/
@ColumnWidth(20)
@ExcelProperty("计划申报人")
private String planDeclareMan;
/**
* 采购部计划员
*/
@ColumnWidth(20)
@ExcelProperty("采购部计划员")
private String planBuyMan;
/**
* 炉批号
*/
@ColumnWidth(20)
@ExcelProperty("炉批号")
private String stovePiNo;
/**
* 批号
*/
@ColumnWidth(20)
@ExcelProperty("批号")
private String piNo;
public void setBrCode(String invadjCode) { public void setBrCode(String invadjCode) {
} }

@ -1,14 +1,13 @@
package org.springblade.wms.mapper; package org.springblade.wms.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.springblade.wms.excel.StRequisitionExcel; import org.springblade.wms.excel.StRequisitionExcel;
import org.springblade.wms.pojo.entity.StRequisition; import org.springblade.wms.pojo.entity.StRequisition;
import org.springblade.wms.pojo.vo.StRequisitionVO; import org.springblade.wms.pojo.vo.StRequisitionVO;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @version 1.0 * @version 1.0
@ -37,7 +36,9 @@ public interface StRequisitionMapper extends BaseMapper<StRequisition> {
* @param queryWrapper 查询条件 * @param queryWrapper 查询条件
* @return List<StRequisitionExcel> * @return List<StRequisitionExcel>
*/ */
List<StRequisitionExcel> exportStRequisition(@Param("ew") Wrapper<StRequisition> queryWrapper); // List<StRequisitionExcel> exportStRequisition(@Param("ew") Wrapper<StRequisition> queryWrapper);
List<StRequisitionVO> selectWaitPushPage(IPage<StRequisitionVO> page, StRequisitionVO stRequisition); List<StRequisitionVO> selectWaitPushPage(IPage<StRequisitionVO> page, StRequisitionVO stRequisition);
List<StRequisitionExcel> exportStRequisition(Map<String, Object> stRequisition);
} }

@ -136,7 +136,28 @@
</select> </select>
<select id="exportStRequisition" resultType="org.springblade.wms.excel.StRequisitionExcel"> <select id="exportStRequisition" resultType="org.springblade.wms.excel.StRequisitionExcel">
SELECT * FROM ST_REQUISITION ${ew.customSqlSegment} SELECT
r.*, -- 采购申请单所有字段
g.id AS goodsId, -- 关联物料表,查询goodsId(物料表主键)
g.goods_name
FROM st_requisition r
-- 左关联物料表:采购申请单prtno = 物料表goodsCode,过滤未删除物料
LEFT JOIN st_goods g
ON r.prtno = g.goods_code
AND g.is_deleted = 0
WHERE 1=1
<!-- 固定过滤:curStatus = 已打印待入库(使用实体常量) -->
AND r.cur_status = ${@org.springblade.wms.pojo.entity.StRequisition@CUR_STATUS_PRINT}
<if test="stRequisition.prtno != null and stRequisition.prtno != ''">
AND r.prtno LIKE '%' || #{stRequisition.prtno} || '%'
</if>
<if test="stRequisition.prtdesc != null and stRequisition.prtdesc != ''">
AND r.prtdesc LIKE '%' || #{stRequisition.prtdesc} || '%'
</if>
<!-- 采购申请单自身逻辑删除过滤 -->
AND r.is_deleted = 0
<!-- 排序:默认按录入时间降序 -->
ORDER BY r.enrtydate DESC
</select> </select>
</mapper> </mapper>

@ -1,6 +1,5 @@
package org.springblade.wms.service; package org.springblade.wms.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;
@ -41,7 +40,7 @@ public interface IStRequisitionService extends BaseService<StRequisition> {
* @param queryWrapper 查询条件 * @param queryWrapper 查询条件
* @return List<StRequisitionExcel> * @return List<StRequisitionExcel>
*/ */
List<StRequisitionExcel> exportStRequisition(Wrapper<StRequisition> queryWrapper); // List<StRequisitionExcel> exportStRequisition(Wrapper<StRequisition> queryWrapper);
List<StRequisitionExcel> assembleExportData(QueryWrapper<StRequisition> queryWrapper, String printType); List<StRequisitionExcel> assembleExportData(QueryWrapper<StRequisition> queryWrapper, String printType);
@ -52,5 +51,7 @@ public interface IStRequisitionService extends BaseService<StRequisition> {
void pushWarehose(List<StRequisitionDTO> list, BladeUser user); void pushWarehose(List<StRequisitionDTO> list, BladeUser user);
Map<String, Object> getBarCode(Long srId); Map<String, Object> getBarCode(Long srId);
List<StRequisitionExcel> exportStRequisition(Map<String, Object> stRequisition);
} }

@ -4,7 +4,6 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@ -122,26 +121,26 @@ public class StRequisitionServiceImpl extends BaseServiceImpl<StRequisitionMappe
for (StRequisition rbStRequisition : requisitionList) { for (StRequisition rbStRequisition : requisitionList) {
StRequisitionExcel excelVO = new StRequisitionExcel(); StRequisitionExcel excelVO = new StRequisitionExcel();
// 基础字段映射(原逻辑保留) // 基础字段映射(原逻辑保留)
excelVO.setBrCode(rbStRequisition.getInvadjCode()); // excelVO.setBrCode(rbStRequisition.getInvadjCode());
excelVO.setInviefdat(rbStRequisition.getInviefdat()); // excelVO.setInviefdat(rbStRequisition.getInviefdat());
excelVO.setPrtno(rbStRequisition.getPrtno()); // excelVO.setPrtno(rbStRequisition.getPrtno());
excelVO.setWarno(rbStRequisition.getWarno()); // excelVO.setWarno(rbStRequisition.getWarno());
excelVO.setWarlocno(rbStRequisition.getWarlocno()); // excelVO.setWarlocno(rbStRequisition.getWarlocno());
excelVO.setRemark(rbStRequisition.getRemark()); // excelVO.setRemark(rbStRequisition.getRemark());
excelVO.setWarctlr(rbStRequisition.getWarctlr()); // excelVO.setWarctlr(rbStRequisition.getWarctlr());
excelVO.setEnrtydate(rbStRequisition.getEnrtydate()); // excelVO.setEnrtydate(rbStRequisition.getEnrtydate());
excelVO.setPrintDate(DateUtil.format(new Date(), "yyyy-MM-dd")); // excelVO.setPrintDate(DateUtil.format(new Date(), "yyyy-MM-dd"));
excelVO.setSplyName(rbStRequisition.getSplyName()); // excelVO.setSplyName(rbStRequisition.getSplyName());
excelVO.setPrtlotno(rbStRequisition.getPrtno()); // excelVO.setPrtlotno(rbStRequisition.getPrtno());
excelVO.setValiddat(rbStRequisition.getValiddat()); // excelVO.setValiddat(rbStRequisition.getValiddat());
excelVO.setPrtdesc(rbStRequisition.getPrtdesc()); // excelVO.setPrtdesc(rbStRequisition.getPrtdesc());
excelVO.setPrtinfo(rbStRequisition.getPrtinfo()); // excelVO.setPrtinfo(rbStRequisition.getPrtinfo());
excelVO.setPrtum(rbStRequisition.getPrtum()); // excelVO.setPrtum(rbStRequisition.getPrtum());
excelVO.setInvysqty(rbStRequisition.getInvysqty()); // excelVO.setInvysqty(rbStRequisition.getInvysqty());
excelVO.setQutno(rbStRequisition.getQutno()); // excelVO.setQutno(rbStRequisition.getQutno());
excelVO.setGoodsName(rbStRequisition.getPrtdesc()); // excelVO.setGoodsName(rbStRequisition.getPrtdesc());
excelVO.setPrtrepno(rbStRequisition.getPrtrepno()); // excelVO.setPrtrepno(rbStRequisition.getPrtrepno());
excelVO.setExtraBill(rbStRequisition.getBuyCode()); // excelVO.setExtraBill(rbStRequisition.getBuyCode());
// ========== 替换StringUtil.isNotBlank(纯JDK实现) ========== // ========== 替换StringUtil.isNotBlank(纯JDK实现) ==========
// JSONArray detailList = new JSONArray(); // JSONArray detailList = new JSONArray();
@ -316,11 +315,8 @@ public class StRequisitionServiceImpl extends BaseServiceImpl<StRequisitionMappe
} }
@Override @Override
public List<StRequisitionExcel> exportStRequisition(Wrapper<StRequisition> queryWrapper) { public List<StRequisitionExcel> exportStRequisition(Map<String, Object> stRequisition) {
List<StRequisitionExcel> stRequisitionList = baseMapper.exportStRequisition(queryWrapper); List<StRequisitionExcel> stRequisitionList = baseMapper.exportStRequisition(stRequisition);
//stRequisitionList.forEach(stRequisition -> {
// stRequisition.setTypeName(DictCache.getValue(DictEnum.YES_NO, StRequisition.getType()));
//});
return stRequisitionList; return stRequisitionList;
} }

Loading…
Cancel
Save