Commit 62c9cc05 authored by 高宇's avatar 高宇

1.导入

parent 6ad18ff3
...@@ -8,6 +8,7 @@ import io.swagger.annotations.ApiImplicitParams; ...@@ -8,6 +8,7 @@ import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.rcisoft.bus.jnsp7xtmdqsj.dto.Jnsp7xtmDqsjPageHandleDto; import org.rcisoft.bus.jnsp7xtmdqsj.dto.Jnsp7xtmDqsjPageHandleDto;
import org.rcisoft.bus.taskinfo.entity.TaskInfo; import org.rcisoft.bus.taskinfo.entity.TaskInfo;
import org.rcisoft.core.anno.CyEncryptSm4Anno;
import org.rcisoft.core.anno.CyOpeLogAnno; import org.rcisoft.core.anno.CyOpeLogAnno;
import org.rcisoft.core.operlog.enums.CyLogTypeEnum; import org.rcisoft.core.operlog.enums.CyLogTypeEnum;
import org.rcisoft.core.util.CyEpExcelUtil; import org.rcisoft.core.util.CyEpExcelUtil;
...@@ -30,6 +31,7 @@ import javax.validation.Valid; ...@@ -30,6 +31,7 @@ import javax.validation.Valid;
import org.rcisoft.bus.jnsp7xtmdqsj.entity.Jnsp7xtmDqsj; import org.rcisoft.bus.jnsp7xtmdqsj.entity.Jnsp7xtmDqsj;
import org.rcisoft.bus.jnsp7xtmdqsj.service.Jnsp7xtmDqsjService; import org.rcisoft.bus.jnsp7xtmdqsj.service.Jnsp7xtmDqsjService;
import org.springframework.web.multipart.MultipartFile;
import java.util.List; import java.util.List;
import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.Lock;
...@@ -186,5 +188,25 @@ public class Jnsp7xtmDqsjController extends CyPaginationController<Jnsp7xtmDqsj> ...@@ -186,5 +188,25 @@ public class Jnsp7xtmDqsjController extends CyPaginationController<Jnsp7xtmDqsj>
CyMessCons.MESSAGE_ALERT_ERROR, CyMessCons.MESSAGE_ALERT_ERROR,
null); null);
} }
@CyOpeLogAnno(title = "system-Jnsp7xtmDqsj管理-下载空模板", businessType = CyLogTypeEnum.QUERY)
@ApiOperation(value = "下载空模板", notes = "下载空模板")
@GetMapping(value = "/jnsp7xtmDqsjDownEmptyTemplate")
public void jnsp7xtmDqsjDownEmptyTemplate(Jnsp7xtmDqsjPageHandleDto jnsp7xtmDqsjPageHandleDto,HttpServletResponse response) {
jnsp7xtmDqsjServiceImpl.jnsp7xtmDqsjDownEmptyTemplate(jnsp7xtmDqsjPageHandleDto,response);
}
/**
* 导入模板
* **/
@CyOpeLogAnno(title = "system-检查申请管理-jnsp7xtmdqsj导入", businessType = CyLogTypeEnum.IMPORT)
@ApiOperation(value = "jnsp7xtmdqsj导入", notes = "jnsp7xtmdqsj导入")
@PostMapping(value = "/Jnsp7xtmDqsjImportDtoExcel")
@CyEncryptSm4Anno
public CyResult Jnsp7xtmDqsjImportDtoExcel(MultipartFile file) {
return CyResultGenUtil.builder(new CyPersistModel(1),
CyMessCons.MESSAGE_ALERT_SUCCESS,
CyMessCons.MESSAGE_ALERT_ERROR,
jnsp7xtmDqsjServiceImpl.jnsp7xtmDqsjImportDtoExcel(file));
}
} }
...@@ -4,6 +4,7 @@ import org.apache.ibatis.annotations.*; ...@@ -4,6 +4,7 @@ import org.apache.ibatis.annotations.*;
import org.apache.ibatis.mapping.ResultSetType; import org.apache.ibatis.mapping.ResultSetType;
import org.apache.ibatis.session.ResultHandler; import org.apache.ibatis.session.ResultHandler;
import org.rcisoft.bus.jnsp7xtm.vo.Jnsp7xtmVo; import org.rcisoft.bus.jnsp7xtm.vo.Jnsp7xtmVo;
import org.rcisoft.bus.jnsp7xtmdqsj.dto.Jnsp7xtmDqsjExportTemplateDto;
import org.rcisoft.bus.jnsp7xtmdqsj.dto.Jnsp7xtmDqsjPageHandleDto; import org.rcisoft.bus.jnsp7xtmdqsj.dto.Jnsp7xtmDqsjPageHandleDto;
import org.rcisoft.core.mapper.CyBaseMapper; import org.rcisoft.core.mapper.CyBaseMapper;
import org.rcisoft.bus.jnsp7xtmdqsj.entity.Jnsp7xtmDqsj; import org.rcisoft.bus.jnsp7xtmdqsj.entity.Jnsp7xtmDqsj;
...@@ -60,5 +61,15 @@ public interface Jnsp7xtmDqsjRepository extends CyBaseMapper<Jnsp7xtmDqsj> { ...@@ -60,5 +61,15 @@ public interface Jnsp7xtmDqsjRepository extends CyBaseMapper<Jnsp7xtmDqsj> {
* **/ * **/
int deleteJnsp7xtmDqs(@Param("entity") Jnsp7xtmDqsjPageHandleDto jnsp7xtmDqsjPageHandleDto); int deleteJnsp7xtmDqs(@Param("entity") Jnsp7xtmDqsjPageHandleDto jnsp7xtmDqsjPageHandleDto);
/**
* 根据cc 查询客户有关的信息
* **/
List<Jnsp7xtmDqsj> queryCustomer(@Param("cc") String cc);
/**
* 根据pn 查询sypn的值
* **/
List<String> querySypnByPn(@Param("pn") String pn);
} }
package org.rcisoft.bus.jnsp7xtmdqsj.dto;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.math.BigDecimal;
/**
* @Author: gy
* @Date: 2024/5/20 13:15
* @Description:
*/
@Data
public class Jnsp7xtmDqsjExportTemplateDto {
/**
* term
* **/
@Excel(name = "term", orderNum = "0", width = 20)
private String term;
/**
* month
* **/
@Excel(name = "month", orderNum = "1", width = 20)
private String month;
/**
* cc
* **/
@Excel(name = "cc", orderNum = "2", width = 20)
private String cc;
@Excel(name = "route", orderNum = "4", width = 20)
private String route;
@Excel(name = "pc", orderNum = "5", width = 20)
private String pc;
@Excel(name = "factory", orderNum = "6", width = 20)
private String factory;
@Excel(name = "size", orderNum = "7", width = 20)
private String size;
@Excel(name = "pn", orderNum = "8", width = 20)
private String pn;
@Excel(name = "po", orderNum = "9", width = 20)
private String po;
@Excel(name = "fc", orderNum = "10", width = 20)
private String fc;
@Excel(name = "qty", orderNum = "11", width = 20)
private String qty;
@Excel(name = "currency", orderNum = "12", width = 20)
private String currency;
@Excel(name = "rate", orderNum = "13", width = 20)
private String rate;
@Excel(name = "amt", orderNum = "14", width = 20)
private String amt;
@Excel(name = "up", orderNum = "15", width = 20)
private String up;
}
package org.rcisoft.bus.jnsp7xtmdqsj.dto;
import lombok.Data;
import java.util.List;
/**
* @Author: gy
* @Date: 2024/5/21 13:23
* @Description: jnsp7xtmDqsj 导入类
*/
@Data
public class Jnsp7xtmDqsjImportDto {
private String filename;
/**
* 文件导入之后插入文件的数据
*/
private List<Jnsp7xtmDqsjExportTemplateDto> insert;
/**
* 成功之后返回的条数
* **/
private Integer rows;
/**
* 总共多少条数据
* **/
private Integer total;
}
...@@ -9,6 +9,7 @@ import lombok.*; ...@@ -9,6 +9,7 @@ import lombok.*;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.type.JdbcType; import org.apache.ibatis.type.JdbcType;
import org.rcisoft.bus.jnsp7xtm.vo.Jnsp7xtmVo; import org.rcisoft.bus.jnsp7xtm.vo.Jnsp7xtmVo;
import org.rcisoft.bus.jnsp7xtmdqsj.dto.Jnsp7xtmDqsjExportTemplateDto;
import org.rcisoft.core.entity.CyIdEntity; import org.rcisoft.core.entity.CyIdEntity;
import org.rcisoft.core.entity.CyIdIncreEntity; import org.rcisoft.core.entity.CyIdIncreEntity;
import org.rcisoft.core.entity.CyIdNotDataEntity; import org.rcisoft.core.entity.CyIdNotDataEntity;
...@@ -394,7 +395,7 @@ public class Jnsp7xtmDqsj extends CyIdIncreEntity { ...@@ -394,7 +395,7 @@ public class Jnsp7xtmDqsj extends CyIdIncreEntity {
if (jnsp7xtmVo.getXslj().equals("W0")) if (jnsp7xtmVo.getXslj().equals("W0"))
jnsp7xtmDqsj.setIo("I"); jnsp7xtmDqsj.setIo("I");
else else
jnsp7xtmDqsj.setIo("O"); jnsp7xtmDqsj.setIo("o");
} }
jnsp7xtmDqsj.setRoute(jnsp7xtmVo.getXslj()); jnsp7xtmDqsj.setRoute(jnsp7xtmVo.getXslj());
jnsp7xtmDqsj.setPc(jnsp7xtmVo.getZd()); jnsp7xtmDqsj.setPc(jnsp7xtmVo.getZd());
...@@ -420,5 +421,66 @@ public class Jnsp7xtmDqsj extends CyIdIncreEntity { ...@@ -420,5 +421,66 @@ public class Jnsp7xtmDqsj extends CyIdIncreEntity {
return jnsp7xtmDqsj; return jnsp7xtmDqsj;
} }
public static Jnsp7xtmDqsj generateJnsp7xtmDqsj(Jnsp7xtmDqsjExportTemplateDto jnsp7xtmDqsjExportTemplateDto,Jnsp7xtmDqsj jnsp7xtmDqsj) {
BeanUtil.copyProperties(jnsp7xtmDqsjExportTemplateDto,jnsp7xtmDqsj);
if (StringUtils.isEmpty(jnsp7xtmDqsjExportTemplateDto.getTerm()))
jnsp7xtmDqsj.setTerm(TERM_L);
String lastTwoNqy = "";
if (StringUtils.isNotEmpty(jnsp7xtmDqsjExportTemplateDto.getMonth()) &&jnsp7xtmDqsjExportTemplateDto.getMonth().length() > 2 ) {
lastTwoNqy = jnsp7xtmDqsjExportTemplateDto.getMonth().substring(jnsp7xtmDqsjExportTemplateDto.getMonth().length() - 2);
if (lastTwoNqy.equals("04") || lastTwoNqy.equals("05") || lastTwoNqy.equals("06") || lastTwoNqy.equals("07") || lastTwoNqy.equals("08") || lastTwoNqy.equals("09")) {
jnsp7xtmDqsj.setHalf("1H");
} else {
jnsp7xtmDqsj.setHalf("2H");
}
if (lastTwoNqy.equals("01") || lastTwoNqy.equals("02") || lastTwoNqy.equals("03")) {
jnsp7xtmDqsj.setQuarter("Q4");
} else if (lastTwoNqy.equals("04") || lastTwoNqy.equals("05") || lastTwoNqy.equals("06")) {
jnsp7xtmDqsj.setQuarter("Q1");
} else if (lastTwoNqy.equals("07") || lastTwoNqy.equals("08") || lastTwoNqy.equals("09")) {
jnsp7xtmDqsj.setQuarter("Q2");
} else if (lastTwoNqy.equals("10") || lastTwoNqy.equals("11") || lastTwoNqy.equals("12")) {
jnsp7xtmDqsj.setQuarter("Q3");
}
if (StringUtils.isNotBlank(jnsp7xtmDqsjExportTemplateDto.getRoute())) {
if (jnsp7xtmDqsjExportTemplateDto.getRoute().equals("W0"))
jnsp7xtmDqsj.setIo("I");
else
jnsp7xtmDqsj.setIo("o");
}
if (StringUtils.isNotBlank(jnsp7xtmDqsjExportTemplateDto.getPc())) {
if (jnsp7xtmDqsjExportTemplateDto.getPc().equals("CR") || jnsp7xtmDqsjExportTemplateDto.getPc().equals("WR") || jnsp7xtmDqsjExportTemplateDto.getPc().equals("MP"))
jnsp7xtmDqsj.setFactory("CC1");
else
jnsp7xtmDqsj.setFactory("CC2");
}
/**
* 将string 转换成 BigDecimal类型
* **/
if (StringUtils.isNotEmpty(jnsp7xtmDqsjExportTemplateDto.getAmt())) {
jnsp7xtmDqsj.setAmt(new BigDecimal(jnsp7xtmDqsjExportTemplateDto.getAmt()));
}
if (StringUtils.isNotEmpty(jnsp7xtmDqsjExportTemplateDto.getRate())) {
jnsp7xtmDqsj.setRate(new BigDecimal(jnsp7xtmDqsjExportTemplateDto.getRate()));
}
if (StringUtils.isNotEmpty(jnsp7xtmDqsjExportTemplateDto.getUp())) {
jnsp7xtmDqsj.setUp(new BigDecimal(jnsp7xtmDqsjExportTemplateDto.getUp()));
}
if (StringUtils.isNotEmpty(jnsp7xtmDqsjExportTemplateDto.getFc())) {
jnsp7xtmDqsj.setFc(new BigDecimal(jnsp7xtmDqsjExportTemplateDto.getFc()));
jnsp7xtmDqsj.setQty(jnsp7xtmDqsj.getFc());
}
if (StringUtils.isNotEmpty(jnsp7xtmDqsjExportTemplateDto.getPo())) {
jnsp7xtmDqsj.setPo(new BigDecimal(jnsp7xtmDqsjExportTemplateDto.getPo()));
jnsp7xtmDqsj.setQty(jnsp7xtmDqsj.getPo());
}
// y.qty = y.po + y.fc (BigDecimal)
if (StringUtils.isNotEmpty(jnsp7xtmDqsjExportTemplateDto.getPo()) && StringUtils.isNotEmpty(jnsp7xtmDqsjExportTemplateDto.getFc())) {
jnsp7xtmDqsj.setQty(new BigDecimal(jnsp7xtmDqsjExportTemplateDto.getPo()).add(new BigDecimal(jnsp7xtmDqsjExportTemplateDto.getFc())));
}
}
return jnsp7xtmDqsj;
}
} }
...@@ -3,6 +3,7 @@ package org.rcisoft.bus.jnsp7xtmdqsj.service; ...@@ -3,6 +3,7 @@ package org.rcisoft.bus.jnsp7xtmdqsj.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.rcisoft.bus.jnsp7xtm.dto.Jnsp7xtmOptionDto; import org.rcisoft.bus.jnsp7xtm.dto.Jnsp7xtmOptionDto;
import org.rcisoft.bus.jnsp7xtmdqsj.dto.Jnsp7xtmDqsjImportDto;
import org.rcisoft.bus.jnsp7xtmdqsj.dto.Jnsp7xtmDqsjPageHandleDto; import org.rcisoft.bus.jnsp7xtmdqsj.dto.Jnsp7xtmDqsjPageHandleDto;
import org.rcisoft.bus.jnsp7xtmdqsj.entity.Jnsp7xtmDqsj; import org.rcisoft.bus.jnsp7xtmdqsj.entity.Jnsp7xtmDqsj;
import org.rcisoft.bus.taskinfo.entity.TaskInfo; import org.rcisoft.bus.taskinfo.entity.TaskInfo;
...@@ -10,7 +11,9 @@ import org.rcisoft.core.model.CyPersistModel; ...@@ -10,7 +11,9 @@ import org.rcisoft.core.model.CyPersistModel;
import org.rcisoft.core.aop.CyPageUtilAsp; import org.rcisoft.core.aop.CyPageUtilAsp;
import org.rcisoft.core.model.CyPageInfo; import org.rcisoft.core.model.CyPageInfo;
import org.rcisoft.core.result.enums.CyResSvcExcEnum; import org.rcisoft.core.result.enums.CyResSvcExcEnum;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.util.List; import java.util.List;
/** /**
...@@ -96,4 +99,13 @@ public interface Jnsp7xtmDqsjService { ...@@ -96,4 +99,13 @@ public interface Jnsp7xtmDqsjService {
* 客户表重置 * 客户表重置
* **/ * **/
CyPersistModel clientReset(Jnsp7xtmDqsjPageHandleDto jnsp7xtmDqsjPageHandleDto); CyPersistModel clientReset(Jnsp7xtmDqsjPageHandleDto jnsp7xtmDqsjPageHandleDto);
/**下载空模板**/
void jnsp7xtmDqsjDownEmptyTemplate(Jnsp7xtmDqsjPageHandleDto jnsp7xtmDqsjPageHandleDto, HttpServletResponse response);
/**
* 导入月度度表数据
* **/
Jnsp7xtmDqsjImportDto jnsp7xtmDqsjImportDtoExcel(MultipartFile file);
} }
package org.rcisoft.enums;
public enum CyImportErrCodeEnum {
IMPORT_ERR(7000);
private Integer code;
public Integer getCode() {
return code;
}
CyImportErrCodeEnum(Integer code) {
this.code = code;
}
public void setCode(Integer code) {
this.code = code;
}
}
package org.rcisoft.util; package org.rcisoft.util;
import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.ExportParams;
import cn.afterturn.easypoi.excel.entity.ImportParams;
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import cn.afterturn.easypoi.excel.export.ExcelExportService; import cn.afterturn.easypoi.excel.export.ExcelExportService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddressList;
import org.apache.poi.xssf.usermodel.XSSFDataValidation;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.rcisoft.core.exception.CyServiceException; import org.rcisoft.core.exception.CyServiceException;
import org.rcisoft.core.util.CyEpExcelUtil; import org.rcisoft.core.util.CyEpExcelUtil;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.ServletOutputStream; import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -25,6 +32,109 @@ import java.util.Map; ...@@ -25,6 +32,109 @@ import java.util.Map;
*/ */
@Slf4j @Slf4j
public class ExportToExcelUtil extends CyEpExcelUtil { public class ExportToExcelUtil extends CyEpExcelUtil {
public static <T> List<T> importExcelNotTitle(MultipartFile file, Integer titleRows, Integer headerRows, Class<T> pojoClass) {
if (file == null) {
return null;
} else {
ImportParams params = new ImportParams();
List list = null;
try {
list = ExcelImportUtil.importExcel(file.getInputStream(), pojoClass, params);
return list;
} catch (Exception var7) {
throw new CyServiceException(502, "模板格式错误");
}
}
}
/**
* 为Excel表格添加下拉选项
* 解决单元格在某个时间点只能访问有限数据量而导致无法显示下拉选项的问题
* 适用于下拉选项总字节数大于 255 个字节的情况
* 缺点:会创建一个隐藏的sheet用于存放下拉选项
*
* @param formulaString 下拉选项数据
* @param workbook Excel工作簿
* @param sheet 设置下拉选项的工作表
* @param firstRow 起始行
* @param lastRow 终止行
* @param firstCol 起始列
* @param lastCol 终止列
*/
public static void XSSFSetDropDownAndHidden(String[] formulaString, Workbook workbook, Sheet sheet, int firstRow, int lastRow, int firstCol, int lastCol) {
// 计算下拉选项全部字节数
int totalBytes = Arrays.stream(formulaString)
.mapToInt(str -> str.getBytes(StandardCharsets.UTF_8).length)
.sum();
// 创建一个数据验证助手
DataValidationHelper dvHelper = sheet.getDataValidationHelper();
if (totalBytes > 255) {
// 当总选项字节数大于 255 时创建隐藏工作表用于存放下拉选项
// 创建sheet,写入枚举项
//判断当前sheet不存在则创建
Sheet hideSheet = workbook.getSheet("hiddenSheet");
if (workbook.getSheet("hiddenSheet") == null) {
hideSheet = workbook.createSheet("hiddenSheet");
}
for (int i = 0; i < formulaString.length; i++) {
// 将下拉选项值存放在目标工作表下拉项目相同列
hideSheet.createRow(i).createCell(firstCol).setCellValue(formulaString[i]);
}
// 创建名称,可被其他单元格引用
//判断当前名称不存在则创建
Name hiddenSheetName = workbook.getName("hidden");
if (workbook.getName("hidden") == null) {
hiddenSheetName = workbook.createName();
hiddenSheetName.setNameName("hidden");
}
// 设置名称引用的公式
// 使用像'A1:B1'这样的相对值会导致在Microsoft Excel中使用工作簿时名称所指向的单元格的意外移动,
// 通常使用绝对引用,例如'$A$1:$B$1'可以避免这种情况。
// 根据 firstCol 计算引用索引字母
StringBuilder columnLetter = new StringBuilder();
int columnIndex = firstCol;
while (columnIndex >= 0) {
int rem = columnIndex % 26;
columnLetter.append((char) ('A' + rem));
columnIndex = (columnIndex / 26) - 1;
}
columnLetter.reverse();
hiddenSheetName.setRefersToFormula("hiddenSheet!$" + columnLetter + "$1:$" + columnLetter + "$" + formulaString.length);
// 获取上文名称内数据
DataValidationConstraint constraint = dvHelper.createFormulaListConstraint("hidden");
// 设置下拉框位置
CellRangeAddressList addressList = new CellRangeAddressList(firstRow, lastRow, firstCol, lastCol);
DataValidation dataValidation = dvHelper.createValidation(constraint, addressList);
// 处理Excel兼容性问题
if (dataValidation instanceof XSSFDataValidation) {
// 数据校验
dataValidation.setSuppressDropDownArrow(true);
dataValidation.setShowErrorBox(true);
} else {
dataValidation.setSuppressDropDownArrow(false);
}
// 作用在目标sheet上
sheet.addValidationData(dataValidation);
// 设置hiddenSheet隐藏
int hideSheetIndex = workbook.getSheetIndex(hideSheet);
workbook.setSheetHidden(hideSheetIndex, true);
} else {
// 当总选项字节数不大于 255 时使用传统方式创建下拉选项
// 创建下拉列表约束
DataValidationConstraint dvConstraint = dvHelper.createExplicitListConstraint(formulaString);
// 设置数据验证的单元格区域(从firstRow行firstCol列到lastRow行lastCol列)
CellRangeAddressList addressList = new CellRangeAddressList(firstRow, lastRow, firstCol, lastCol);
// 创建数据验证对象并添加到工作表
DataValidation validation = dvHelper.createValidation(dvConstraint, addressList);
sheet.addValidationData(validation);
}
}
// 导出动态列 // 导出动态列
/** /**
* entityList 表头 * entityList 表头
......
...@@ -134,5 +134,7 @@ jnsp7xtmDqsj: ...@@ -134,5 +134,7 @@ jnsp7xtmDqsj:
pageQuestSize: 5000 pageQuestSize: 5000
# 每次添加到数据库的长度 # 每次添加到数据库的长度
batchAddPagesize: 30 batchAddPagesize: 30
# 导出时添加带数据库的数据长度
importBatchAddSize: 30
# service 要重置的数据库 # service 要重置的数据库
shema: 'demo.dbo' shema: 'demo.dbo'
...@@ -447,5 +447,44 @@ ...@@ -447,5 +447,44 @@
jnsp.khdm is not null jnsp.khdm is not null
and jnsp.pn is not null and jnsp.pn is not null
</select> </select>
<select id="queryCustomer" resultMap="BaseResultMap">
SELECT
cust_code AS cc,
cust_name AS cn,
cust_group,
cust_group2,
cust_rt1,
cust_io,
cust_newpic,
cust_group1,
cust_rout,
cust_rt2,
cust_addr,
cust_g0,
cust_g20,
cust_g30,
cust_g201,
cust_save,
cust_stype,
cust_g1,
cust_yj,
cust_yj2,
cust_yj3,
cust_gc
FROM
b_customer
WHERE
del_flag = '0'
AND cust_code = #{cc}
</select>
<select id="querySypnByPn" resultType="java.lang.String">
SELECT
sypn
FROM
b_pn_sypn
WHERE
del_flag = '0'
and pn = #{pn}
</select>
</mapper> </mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment