基础数据导出

liweidong
maxiangong 4 days ago
parent a986a4c91b
commit d2c878cc26
  1. 25
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/PlanAssignSteerController.java
  2. 129
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/excel/PlanAssignSteerExcel.java
  3. 98
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/excel/PlanAssignSteerImportExcel.java
  4. 16
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/mapper/PlanAssignSteerMapper.xml
  5. 29
      blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/controller/QualityGradeController.java
  6. 62
      blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/excel/QualityGradeExcel.java
  7. 2
      blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/QualityGradeMapper.java
  8. 11
      blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/mapper/QualityGradeMapper.xml
  9. 2
      blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/IQualityGradeService.java
  10. 4
      blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/QualityGradeServiceImpl.java

@ -5,6 +5,7 @@ package org.springblade.desk.basic.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
@ -29,6 +30,7 @@ import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.constant.BAModuleConst;
import org.springblade.desk.basic.excel.MaterialQuotaExcel;
import org.springblade.desk.basic.excel.PlanAssignSteerExcel;
import org.springblade.desk.basic.excel.PlanAssignSteerImportExcel;
import org.springblade.desk.basic.pojo.entity.*;
import org.springblade.desk.basic.pojo.vo.PlanAssignSteerVO;
import org.springblade.desk.basic.service.ICraftAbilityService;
@ -221,13 +223,22 @@ public class PlanAssignSteerController extends BladeController {
public void exportExcel(@Parameter(hidden = true) @RequestParam Map<String, Object> planAssignSteer,
BladeUser bladeUser, HttpServletResponse response) {
QueryWrapper<PlanAssignSteer> qw = Condition.getQueryWrapper(planAssignSteer, PlanAssignSteer.class);
//if (!AuthUtil.isAdministrator()) {
// queryWrapper.lambda().eq(PlanAssignSteer::getTenantId, bladeUser.getTenantId());
//}
//queryWrapper.lambda().eq(PlanAssignSteerEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
qw.eq(planAssignSteer.containsKey("platingId"), PlanAssignSteer.COL_PLATING_ID, Func.toInt(planAssignSteer.get("platingId")));
qw.eq("is_deleted", 0);
List<PlanAssignSteerExcel> list = service.exportPlanAssignSteer(qw);
ExcelUtil.export(response, "[外协分派]数据" + DateUtil.time(),
"[外协分派]数据表", list, PlanAssignSteerExcel.class);
for(PlanAssignSteerExcel excel : list){
if(StringUtils.isEmpty(excel.getOemName()) && excel.getOemId() != null){
excel.setOemName(excel.getOemId().toString());
}
if(StringUtils.isEmpty(excel.getDsPartName()) && excel.getDsPart() != null){
excel.setDsPartName(excel.getDsPart().toString());
}
if(StringUtils.isEmpty(excel.getPlatingName()) && excel.getPlatingId() != null){
excel.setPlatingName(excel.getPlatingId().toString());
}
}
ExcelUtil.export(response, "外协分派" + DateUtil.time(),
"外协分派", list, PlanAssignSteerExcel.class);
}
/**
@ -260,7 +271,7 @@ public class PlanAssignSteerController extends BladeController {
List<PlanAssignSteer> noticeList = new ArrayList<>();
List<PlanAssignSteerExcel> list = ExcelUtil.read(file, PlanAssignSteerExcel.class);
List<PlanAssignSteerImportExcel> list = ExcelUtil.read(file, PlanAssignSteerImportExcel.class);
list.forEach(noticeExcel -> {
PlanAssignSteer notice = BeanUtil.copy(noticeExcel, PlanAssignSteer.class);

@ -4,6 +4,7 @@
package org.springblade.desk.basic.excel;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
@ -13,7 +14,6 @@ import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
@ -28,71 +28,66 @@ import java.time.LocalDateTime;
@ContentRowHeight(18)
public class PlanAssignSteerExcel implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
@Serial
private static final long serialVersionUID = 1L;
/**
* 供应商
*/
@ColumnWidth(20)
@ExcelProperty("供应商")
private String oemName;
/**
* 工艺能力
*/
@ColumnWidth(20)
@ExcelProperty("工艺能力")
private String platingName;
/**
* 零件
*/
@ColumnWidth(20)
@ExcelProperty("零件")
private String dsPartName;
/**
* 分派比例(%)
*/
@ColumnWidth(20)
@ExcelProperty("分派比例(%)")
private BigDecimal assignScale;
/**
* 日分派量
*/
@ColumnWidth(20)
@ExcelProperty("日分派量")
private String assign;
/**
* 厂家周累计分派量
*/
@ColumnWidth(20)
@ExcelProperty("厂家周累计分派量")
private BigDecimal weekAssign;
/**
* 分类周累计分派量
*/
@ColumnWidth(20)
@ExcelProperty("分类周累计分派量")
private BigDecimal classifyAssign;
/**
* 比例偏差因子
*/
@ColumnWidth(20)
@ExcelProperty("比例偏差因子")
private BigDecimal factor;
@ExcelIgnore
private Long oemId;
@ExcelIgnore
private Long dsPart;
@ExcelIgnore
private Long platingId;
/**
* [供应商]id
*/
@ColumnWidth(20)
@ExcelProperty("供应商")
// private Long oemId;
private String oemName;
/**
* [工艺能力]id
*/
@ColumnWidth(20)
@ExcelProperty("工艺能力")
// private Long platingId;
private String platingName;
/**
* 零件;外键(dsPart)
*/
@ColumnWidth(20)
@ExcelProperty("零件")
// private Long dsPart;
private String dsPartName;
/**
* 分派比例
*/
@ColumnWidth(20)
@ExcelProperty("分派比例")
private BigDecimal assignScale;
/**
* 厂家周累计分派量
*/
@ColumnWidth(20)
@ExcelProperty("厂家周累计分派量")
private BigDecimal weekAssign;
/**
* 分类周累计分派量
*/
@ColumnWidth(20)
@ExcelProperty("分类周累计分派量")
private BigDecimal classifyAssign;
/**
* 比例偏差因子
*/
@ColumnWidth(20)
@ExcelProperty("比例偏差因子")
private BigDecimal factor;
/**
* 维护人
*/
@ColumnWidth(20)
@ExcelProperty("维护人")
// private Long maintainMan;
private String maintainManName;
/**
* 维护时间
*/
@ColumnWidth(20)
@ExcelProperty("维护时间-示例[1998-08-09 16:33:11]")
private LocalDateTime maintainTime;
/**
* 日分派量
*/
@ColumnWidth(20)
@ExcelProperty("日分派量")
private String assign;
}

@ -0,0 +1,98 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* [外协分派] Excel实体类
*
* @author Tom Shuo
* @since 2026-01-05
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class PlanAssignSteerImportExcel implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* [供应商]id
*/
@ColumnWidth(20)
@ExcelProperty("供应商")
// private Long oemId;
private String oemName;
/**
* [工艺能力]id
*/
@ColumnWidth(20)
@ExcelProperty("工艺能力")
// private Long platingId;
private String platingName;
/**
* 零件;外键(dsPart)
*/
@ColumnWidth(20)
@ExcelProperty("零件")
// private Long dsPart;
private String dsPartName;
/**
* 分派比例
*/
@ColumnWidth(20)
@ExcelProperty("分派比例")
private BigDecimal assignScale;
/**
* 厂家周累计分派量
*/
@ColumnWidth(20)
@ExcelProperty("厂家周累计分派量")
private BigDecimal weekAssign;
/**
* 分类周累计分派量
*/
@ColumnWidth(20)
@ExcelProperty("分类周累计分派量")
private BigDecimal classifyAssign;
/**
* 比例偏差因子
*/
@ColumnWidth(20)
@ExcelProperty("比例偏差因子")
private BigDecimal factor;
/**
* 维护人
*/
@ColumnWidth(20)
@ExcelProperty("维护人")
// private Long maintainMan;
private String maintainManName;
/**
* 维护时间
*/
@ColumnWidth(20)
@ExcelProperty("维护时间-示例[1998-08-09 16:33:11]")
private LocalDateTime maintainTime;
/**
* 日分派量
*/
@ColumnWidth(20)
@ExcelProperty("日分派量")
private String assign;
}

@ -17,11 +17,23 @@
</resultMap>
<select id="selectPlanAssignSteerPage" resultMap="planAssignSteerResultMap">
SELECT * FROM BA_PLAN_ASSIGN_STEER WHERE is_deleted = 0
SELECT * FROM BS_PLAN_ASSIGN_STEER WHERE is_deleted = 0
</select>
<select id="exportPlanAssignSteer" resultType="org.springblade.desk.basic.excel.PlanAssignSteerExcel">
SELECT * FROM BA_PLAN_ASSIGN_STEER ${ew.customSqlSegment}
SELECT *
FROM
(
SELECT a.*,
b.oc_name as oem_name,
c.part_name as ds_part_name,
d.ca_name as plating_name
FROM BS_PLAN_ASSIGN_STEER a
LEFT JOIN BS_OEM b on a.oem_id = b.id
LEFT JOIN DS_PART c on a.DS_PART = c.id
LEFT JOIN BS_CRAFT_ABILITY d on a.PLATING_ID = d.id
)
${ew.customSqlSegment}
</select>
<select id="findParams" resultType="org.springblade.desk.basic.pojo.vo.PlanAssignSteerVO">

@ -44,6 +44,7 @@ import org.springblade.core.mp.support.Query;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.annotation.IsAdmin;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.constant.ExcelConst;
@ -279,14 +280,26 @@ public class QualityGradeController extends BladeController {
@GetMapping("/export")
@ApiOperationSupport(order = 9)
@Operation(summary = "导出数据", description = "传入QualityGrade")
public void exportQualityGrade(@Parameter(hidden = true) @RequestParam Map<String, Object> QualityGrade, BladeUser bladeUser, HttpServletResponse response) {
QueryWrapper<QualityGradeEntity> queryWrapper = Condition.getQueryWrapper(QualityGrade, QualityGradeEntity.class);
//if (!AuthUtil.isAdministrator()) {
// queryWrapper.lambda().eq(QualityGrade::getTenantId, bladeUser.getTenantId());
//}
//queryWrapper.lambda().eq(QualityGradeEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
List<QualityGradeExcel> list = qualityGradeService.export(queryWrapper);
ExcelUtil.export(response, "质量等级表数据" + DateUtil.time(), "质量等级表数据表", list, QualityGradeExcel.class);
public void exportQualityGrade(QualityGradeVO qualityGrade, BladeUser bladeUser, HttpServletResponse response) {
List<QualityGradeVO> list = qualityGradeService.selectQualityGrade(qualityGrade);
List<QualityGradeExcel> excels = new ArrayList<>();
for(QualityGradeVO vo: list){
QualityGradeExcel excel = new QualityGradeExcel();
vo.setTypes(vo.getType());
BeanUtil.copyProperties(vo, excel);
if("1".equals(vo.getIsLocal())){
excel.setIsLocal("是");
} else {
excel.setIsLocal("否");
}
if("1".equals(vo.getIsThickness())){
excel.setIsThickness("是");
} else {
excel.setIsThickness("否");
}
excels.add(excel);
}
ExcelUtil.export(response, "质量等级表数据" + DateUtil.time(), "质量等级表数据表", excels, QualityGradeExcel.class);
}
/**

@ -26,16 +26,14 @@
package org.springblade.scheduling.scheduling.excel;
import lombok.Data;
import java.math.BigDecimal;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import java.io.Serializable;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
@ -50,32 +48,34 @@ import java.io.Serial;
@ContentRowHeight(18)
public class QualityGradeExcel implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
@Serial
private static final long serialVersionUID = 1L;
/**
* 质量等级
*/
@ColumnWidth(20)
@ExcelProperty("质量等级")
private String qualityGrade;
/**
* 类型
*/
@ColumnWidth(20)
@ExcelProperty("类型")
private String typeNames;
/**
* 局部镀
*/
@ColumnWidth(20)
@ExcelProperty("局部镀")
private String isLocal;
/**
* ID
*/
@ColumnWidth(20)
@ExcelProperty("ID")
private BigDecimal id;
/**
* 质量等级
*/
@ColumnWidth(20)
@ExcelProperty("质量等级")
private String qualityGrade;
/**
* 类型 1-军品 2-商飞 3-宇航
*/
@ColumnWidth(20)
@ExcelProperty("类型 1-军品 2-商飞 3-宇航")
private String type;
/**
* 是否已删除
*/
@ColumnWidth(20)
@ExcelProperty("是否已删除")
private Long isDeleted;
/**
* 厚金区固定厚度
*/
@ColumnWidth(20)
@ExcelProperty("厚金区固定厚度")
private String isThickness;
}

@ -53,6 +53,8 @@ public interface QualityGradeMapper extends BaseMapper<QualityGradeEntity> {
List<QualityGradeVO> selectQualityGradePage(IPage page, QualityGradeVO QualityGrade);
List<QualityGradeVO> selectQualityGrade(@Param("param2") QualityGradeVO QualityGrade);
/**
* 获取导出数据
*

@ -16,8 +16,7 @@
<result column="IS_DELETED" property="isDeleted"/>
</resultMap>
<select id="selectQualityGradePage" resultType="org.springblade.scheduling.scheduling.vo.QualityGradeVO">
<sql id="selectQualityGradeSql">
select * from MES_QUALITY_GRADE
<where>
is_deleted = 0
@ -28,6 +27,14 @@
and QUALITY_GRADE LIKE '%' || #{param2.qualityGrade} || '%';
</if>
</where>
</sql>
<select id="selectQualityGradePage" resultType="org.springblade.scheduling.scheduling.vo.QualityGradeVO">
<include refid="selectQualityGradeSql"></include>
</select>
<select id="selectQualityGrade" resultType="org.springblade.scheduling.scheduling.vo.QualityGradeVO">
<include refid="selectQualityGradeSql"></include>
</select>

@ -50,6 +50,8 @@ public interface IQualityGradeService extends BaseService<QualityGradeEntity> {
*/
IPage<QualityGradeVO> selectQualityGradePage(IPage<QualityGradeVO> page, QualityGradeVO QualityGrade);
List<QualityGradeVO> selectQualityGrade(QualityGradeVO QualityGrade);
/**
* 导出数据

@ -51,6 +51,10 @@ public class QualityGradeServiceImpl extends BaseServiceImpl<QualityGradeMapper,
return page.setRecords(baseMapper.selectQualityGradePage(page, QualityGrade));
}
@Override
public List<QualityGradeVO> selectQualityGrade(QualityGradeVO QualityGrade) {
return baseMapper.selectQualityGrade(QualityGrade);
}
@Override
public List<QualityGradeExcel> export(Wrapper<QualityGradeEntity> queryWrapper) {

Loading…
Cancel
Save