修改导出 及明细

This commit is contained in:
haozq 2024-11-11 15:56:01 +08:00
parent 16687b67b3
commit 127b0bc0bc
4 changed files with 308 additions and 9 deletions

View File

@ -54,14 +54,21 @@ public class ExportController {
public void export(HttpServletRequest request, HttpServletResponse response,@RequestBody PlanApplyBean o) {
try {
List<PlanApplyBean> list = service.getProPlanListByProId(o);
List<PlanApplyBeanPlanExport> export=new ArrayList<>();
if(StringUtils.isEmpty(list)){
list=new ArrayList<>();
}
final int[] num = {1};
list.forEach(vo->{
vo.setStatusName(getStatus(o.getStatusType(),o.getStatus()));
vo.setXh(num[0]);
num[0]++;
PlanApplyBeanPlanExport voo=new PlanApplyBeanPlanExport();
BeanUtils.copyProperties(vo, voo);
voo.setStatusName(getStatus(voo.getStatusType(),voo.getStatus()));
export.add(voo);
});
ExportParams exportParams = new ExportParams("需求计划申请", "需求计划申请", ExcelType.XSSF);
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, PlanApplyBean.class, list);
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, PlanApplyBeanPlanExport.class, export);
response.setContentType("application/vnd.ms-excel");
response.setHeader("content-disposition", "attachment;fileName=" + URLEncoder.encode("需求计划申请" + ".xlsx", "UTF-8"));
ServletOutputStream outputStream = response.getOutputStream();
@ -171,16 +178,25 @@ public class ExportController {
public void exportDataInfo(HttpServletRequest request, HttpServletResponse response,@RequestBody ProNeedInfo o) {
try {
List<ProNeedInfo> list = service.getDataInfoByPage(o);
String title="发货统计";
if("1".equals(o.getTypeSource())){
title="待发货";
}else if("2".equals(o.getTypeSource())){
title="已发货";
}
List<ProNeedEXportInfo> exports=new ArrayList<>();
final int[] num = {1};
list.forEach(vo->{
vo.setXh(num[0]);
num[0]++;
ProNeedEXportInfo voo=new ProNeedEXportInfo();
BeanUtils.copyProperties(vo, voo);
exports.add(voo);
});
ExportParams exportParams = new ExportParams("发货统计", "发货统计", ExcelType.XSSF);
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, PlanApplyBean.class, exports);
ExportParams exportParams = new ExportParams(title, title, ExcelType.XSSF);
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, ProNeedEXportInfo.class, exports);
response.setContentType("application/vnd.ms-excel");
response.setHeader("content-disposition", "attachment;fileName=" + URLEncoder.encode("发货统计" + ".xlsx", "UTF-8"));
response.setHeader("content-disposition", "attachment;fileName=" + URLEncoder.encode(title + ".xlsx", "UTF-8"));
ServletOutputStream outputStream = response.getOutputStream();
workbook.write(outputStream);
outputStream.close();
@ -290,8 +306,8 @@ public class ExportController {
* @param response
* @param o
*/
@PostMapping("exportWarn")
public void exportWarn(HttpServletRequest request, HttpServletResponse response,@RequestBody ProNeedInfo o) {
@PostMapping("exportWarnExcel")
public void exportWarnExcel(HttpServletRequest request, HttpServletResponse response,@RequestBody ProNeedInfo o) {
try {
List<ProNeedInfo> list = service.getWarnInfoPage(o);
List<ProNeedInfoWarnExport> exports=new ArrayList<>();

View File

@ -0,0 +1,284 @@
package com.bonus.gzgqj.business.plan.entity;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.List;
/**
*计划申请实体类
* @author xj
*/
@Data
public class PlanApplyBeanPlanExport {
@Excel(name = "序号", width = 10.0, orderNum = "0")
private int xh;
private String id;
/**
* 计划编号
*/
@Excel(name = "计划编号", width = 10.0,height = 20.0, orderNum = "1")
private String code;
/**
* 工程名称
*/
@Excel(name = "工程名称", width = 10.0,height = 20.0, orderNum = "2")
private String proName;
/**
* 需要时间
*/
@Excel(name = "需用日期", width = 10.0,height = 20.0, orderNum = "3")
private String needTime;
/**
* 创建人
*/
@Excel(name = "申请人", width = 10.0,height = 20.0, orderNum = "4")
private String creator;
/**
* 创建时间
*/
@Excel(name = "申请时间", width = 10.0,height = 20.0, orderNum = "5")
private String createTime;
/**
* 工程id
*/
private String proId;
/**
* 工程id
*/
private String projectId;
/**
* 工程id
*/
private String needNum;
/**
* 项目部分
*/
private String projectPart;
/**
* 施工地点
*/
private String projectContent;
/**
* 施工地点
*/
@Excel(name = "计划说明", width = 10.0,height = 20.0, orderNum = "8")
private String remark;
private String statusName;
/**
* 状态
*/
private String status;
/**
* 更新人
*/
private String updater;
/**
* 更新时间
*/
private String updateTime;
private String keyWord;
private String statusType;
private String moduleId;
private String jsonData;
private List<PlanDataDetailBean> details;
private List<AuditBean> auditList;
/**
* 审核状态
*/
private String auditStatus;
public String getProId() {
return proId;
}
public void setProId(String proId) {
this.proId = proId;
}
public String getAuditStatus() {
return auditStatus;
}
public void setAuditStatus(String auditStatus) {
this.auditStatus = auditStatus;
}
public List<AuditBean> getAuditList() {
return auditList;
}
public void setAuditList(List<AuditBean> auditList) {
this.auditList = auditList;
}
public List<PlanDataDetailBean> getDetails() {
return details;
}
public void setDetails(List<PlanDataDetailBean> details) {
this.details = details;
}
public String getJsonData() {
return jsonData;
}
public void setJsonData(String jsonData) {
this.jsonData = jsonData;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getProjectId() {
return projectId;
}
public void setProjectId(String projectId) {
this.projectId = projectId;
}
public String getProjectPart() {
return projectPart;
}
public void setProjectPart(String projectPart) {
this.projectPart = projectPart;
}
public String getProjectContent() {
return projectContent;
}
public void setProjectContent(String projectContent) {
this.projectContent = projectContent;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public String getNeedTime() {
return needTime;
}
public void setNeedTime(String needTime) {
this.needTime = needTime;
}
public String getCreator() {
return creator;
}
public void setCreator(String creator) {
this.creator = creator;
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getUpdater() {
return updater;
}
public void setUpdater(String updater) {
this.updater = updater;
}
public String getUpdateTime() {
return updateTime;
}
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime;
}
public String getKeyWord() {
return keyWord;
}
public void setKeyWord(String keyWord) {
this.keyWord = keyWord;
}
public String getStatusType() {
return statusType;
}
public void setStatusType(String statusType) {
this.statusType = statusType;
}
public String getProName() {
return proName;
}
public void setProName(String proName) {
this.proName = proName;
}
}

View File

@ -119,7 +119,6 @@ public class ProNeedEXportInfo extends PageInfo {
/**
* 备注
*/
@Excel(name = "备注", width = 10.0,height = 20.0, orderNum = "13")
private String remarks;

View File

@ -242,7 +242,7 @@
<select id="getDataInfoByPage" resultType="com.bonus.gzgqj.business.plan.entity.ProNeedInfo">
select pni.id,pni.type,pni.name,pni.module,pni.module_id moduleId,pni.need_num needNum,pni.fh_num fhNum,pni.tz_num tzNum,
IF(pni.need_num-pni.fh_num-pni.tz_num >0,pni.need_num-pni.fh_num-pni.tz_num,0) diff,
pro.num proNum,plan.num planNum,pni.unit,pro2.name proName
pro.num proNum,IFNULL(plan.num,0) planNum,pni.unit,pro2.name proName
from t_pro_need_info pni
LEFT JOIN(
select count(pro_id) num ,module_id