11/7 打印功能

dev_unify
wangwei 8 months ago
parent 25a0b9b9a4
commit cc6f9109fa

@ -1,28 +1,40 @@
package com.glxp.api.controller.auth;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.pagehelper.PageInfo;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.auth.SysWorkplace;
import com.glxp.api.entity.basic.SysWorkplaceFreight;
import com.glxp.api.entity.basic.SysWorkplaceQueue;
import com.glxp.api.entity.system.SysPdfTemplateRelevanceLabelEntity;
import com.glxp.api.entity.system.SystemPDFTemplateEntity;
import com.glxp.api.req.basic.SysWorkplaceFreightRequest;
import com.glxp.api.req.basic.SysWorkplaceQueueRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.SysWorkplaceFreightPrintResponse;
import com.glxp.api.res.basic.SysWorkplaceFreightResponse;
import com.glxp.api.res.basic.SysWorkplaceQueueResponse;
import com.glxp.api.res.basic.SysWorkplaceResponse;
import com.glxp.api.service.basic.SysWorkplaceFreightService;
import com.glxp.api.service.basic.SysWorkplaceQueueService;
import com.glxp.api.service.system.SystemPDFModuleService;
import com.glxp.api.service.system.SystemPDFTemplateService;
import com.glxp.api.util.JasperUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
/**
* @author : zhuzhu
@ -38,6 +50,14 @@ public class SysWorkplaceFreightController extends BaseController {
@Resource
SysWorkplaceFreightService sysWorkplaceFreightService;
@Resource
private SystemPDFModuleService systemPDFModuleService;
@Resource
private SystemPDFTemplateService systemPDFTemplateService;
@Value("${file_path}")
private String filePath;
@GetMapping("/udiwms/WorkplaceFreight/createFreightCode")
public BaseResponse createFreightCode() {
@ -89,6 +109,44 @@ public class SysWorkplaceFreightController extends BaseController {
return ResultVOUtils.success("更新成功");
}
//打印全部 去货架的全部走这个接口了
@PostMapping("/udiwms/WorkplaceFreight/printAllFreight")
public BaseResponse printFreight(@RequestBody SysWorkplaceFreightRequest sysWorkplaceFreightRequest,HttpServletRequest request, HttpServletResponse response) throws Exception {
SysPdfTemplateRelevanceLabelEntity sysPdfTemplateRelevanceLabelEntity = systemPDFModuleService.selectByLabelId(sysWorkplaceFreightRequest.getLabelId() + "");
if (null == sysPdfTemplateRelevanceLabelEntity) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "所属模块错误");
}
SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(String.valueOf(sysPdfTemplateRelevanceLabelEntity.getTemplateId()));
if (null == systemPDFTemplateEntity) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "模板错误");
}
// List<SysWorkplaceQueue> sysWorkplaceQueues = sysWorkplaceQueueService.list(new LambdaQueryWrapper<SysWorkplaceQueue>().eq(SysWorkplaceQueue::getWorkPlaceIdFk, sysWorkplaceFreightRequest.getWorkplaceId()));
List<SysWorkplaceFreightPrintResponse> responses = sysWorkplaceFreightService.getList(sysWorkplaceFreightRequest);
Map<String, Object> data = new HashMap<>(1);
List<Object> list = new ArrayList<>();
int i = 1;
if (responses != null && responses.size() > 0) {
for (SysWorkplaceFreightPrintResponse obj : responses) {
if (obj.getQueueCode() != null && obj.getQueueCode()!= ""){
Map<String, Object> supData = new HashMap<>();
supData.put("name", obj.getRemark() + "");
supData.put("code", obj.getQueueCode());
supData.put("workplaceName", obj.getWorkPlaceName());
list.add(supData);
i++;
}
}
}
data.put("data",list);
String param = JSON.toJSONString(data);
JasperUtils.jasperReport(request, response, param, filePath + "pdf/template/" + systemPDFTemplateEntity.getPath(), "pdf");
return ResultVOUtils.error(ResultEnum.DATA_NOT, "模板错误");
}
}

@ -3,6 +3,7 @@ package com.glxp.api.dao.basic;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.basic.SysWorkplaceFreight;
import com.glxp.api.req.basic.SysWorkplaceFreightRequest;
import com.glxp.api.res.basic.SysWorkplaceFreightPrintResponse;
import com.glxp.api.res.basic.SysWorkplaceFreightResponse;
import org.apache.ibatis.annotations.Mapper;
@ -14,4 +15,6 @@ public interface SysWorkplaceFreightMapper extends BaseMapper<SysWorkplaceFreigh
List<SysWorkplaceFreightResponse> filterList(SysWorkplaceFreightRequest request);
List<SysWorkplaceFreightPrintResponse> getList(SysWorkplaceFreightRequest sysWorkplaceFreightRequest);
}

@ -16,6 +16,22 @@ public class SysWorkplaceFreightRequest extends ListPageRequest {
// private String name;
private Long workPlaceIdFk;
private String LabelId;
/**
* code
*/
private String queueCode;
/**
* code
*/
private String layerCode;
/**
* 1: 2:Code 3:code
*/
private Integer printType;

@ -3,6 +3,8 @@ package com.glxp.api.req.basic;
import com.glxp.api.util.page.ListPageRequest;
import lombok.Data;
import java.util.List;
/**
* @author : zhangsan
* @date : 2024/10/30 10:42
@ -29,5 +31,7 @@ public class SysWorkplaceLayerRequest extends ListPageRequest {
private String remark;
private List<String> freightCodes;
}

@ -36,6 +36,8 @@ public class SysWorkplaceQueueRequest extends ListPageRequest {
*/
private String layerCode;
private List<String> layerCodes;

@ -0,0 +1,79 @@
package com.glxp.api.res.basic;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author : zhuzhu
* @date : 2024/11/4 11:08
* @modyified By :
*/
@Data
public class SysWorkplaceFreightPrintResponse {
private Integer id;
/**
*
*/
private String code;
/**
*
*/
private String name;
/**
* ID
*/
private Long workPlaceIdFk;
/**
*
*/
private String remark;
private Date createTime;
private Date updateTime;
private String createUser;
private String updateUser;
/**
*
*/
private String workPlaceName;
/**
*
*/
@TableField(value = "code")
@ApiModelProperty(value = "货位编码")
private String queueCode;
/**
* code
*/
@TableField(value = "code")
@ApiModelProperty(value = "货位编码")
private String layerCode;
/**
*
*/
@TableField(value = "queueNum")
@ApiModelProperty(value = "")
private Integer queueNum;
}

@ -9,6 +9,7 @@ import com.glxp.api.entity.basic.SysWorkplaceLayer;
import com.glxp.api.entity.basic.SysWorkplaceQueue;
import com.glxp.api.exception.JsonException;
import com.glxp.api.req.basic.SysWorkplaceFreightRequest;
import com.glxp.api.res.basic.SysWorkplaceFreightPrintResponse;
import com.glxp.api.res.basic.SysWorkplaceFreightResponse;
import org.springframework.stereotype.Service;
@ -82,4 +83,8 @@ public class SysWorkplaceFreightService extends ServiceImpl<SysWorkplaceFreightM
}
return code;
}
public List<SysWorkplaceFreightPrintResponse> getList(SysWorkplaceFreightRequest sysWorkplaceFreightRequest) {
return sysWorkplaceFreightMapper.getList(sysWorkplaceFreightRequest);
}
}

@ -24,4 +24,25 @@
GROUP BY
swf.id
</select>
<select id="getList" resultType="com.glxp.api.res.basic.SysWorkplaceFreightPrintResponse">
select swf.*,
sw.workplaceName workPlaceName,
swq.code queueCode,
swl.code layerCode,
swl.queueNum
from sys_workplace_freight swf
left join sys_workplace sw on sw.workplaceId = swf.workPlaceIdFk
left join sys_workplace_layer swl on swl.freightCode = swf.code
left join sys_workplace_queue swq on swq.layerCode = swl.code
<where>
<if test=" layerCode != null and layerCode != ''">
AND swl.code = #{layerCode}
</if>
<if test=" queueCode != null and queueCode != ''">
AND swq.code = #{queueCode}
</if>
</where>
order by swf.code,swl.code, swq.code
</select>
</mapper>

@ -18,6 +18,12 @@
<if test=" freightCode != null and freightCode != ''">
AND freightCode = #{freightCode}
</if>
<if test="freightCodes != null and freightCodes.size() > 0">
and swl.freightCode in
<foreach collection="freightCodes" item="item" index="index" separator="," open="(" close=")">
#{item}
</foreach>
</if>
</where>
</select>
</mapper>

@ -63,6 +63,12 @@
<if test=" layerCode != null and layerCode != ''">
AND layerCode = #{layerCode}
</if>
<if test="layerCodes != null and layerCodes.size() > 0">
and swq.layerCode in
<foreach collection="layerCodes" item="item" index="index" separator="," open="(" close=")">
#{item}
</foreach>
</if>
</where>
</select>
<select id="selectMaxGrid" resultType="java.lang.Integer">

Loading…
Cancel
Save