update 车型项目库-法规清单

This commit is contained in:
lijiarao
2023-11-22 17:20:36 +08:00
parent e802bbc2f9
commit 27a9c5a616
3 changed files with 104 additions and 115 deletions
@@ -1,20 +1,15 @@
package com.jero.modules.projectLibrary.controller;
import java.io.OutputStream;
import java.util.*;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.hutool.core.io.IoUtil;
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jero.common.api.vo.Result;
import com.jero.common.constant.CommonConstant;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.util.MessageUtils;
import com.jero.common.api.vo.ResultCommon;
import com.jero.modules.laws.standard.entity.LawsDomesticStandard;
import com.jero.modules.laws.standard.entity.LawsOverseasStandard;
@@ -24,7 +19,8 @@ import com.jero.modules.projectLibrary.entity.LawsAssess;
import com.jero.modules.projectLibrary.service.ILawsAssessService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.modules.projectLibrary.vo.LawsAssessAddVo;
import java.net.URLEncoder;
import com.jero.modules.system.vo.IdMapBody;
import lombok.extern.slf4j.Slf4j;
import com.jero.common.system.base.controller.JeroController;
import org.springframework.beans.factory.annotation.Autowired;
@@ -39,12 +35,12 @@ import org.apache.poi.ss.formula.functions.T;
/**
* @Description: 项目-标准评估
* @Description: 车型项目库-法规清单
* @Author: jero-boot
* @Date: 2023-09-11
* @Version: V1.0
*/
@Api(tags="项目-标准评估")
@Api(tags="车型项目库-法规清单")
@RestController
@RequestMapping("/projectLibrary/lawsAssess")
@Slf4j
@@ -61,8 +57,8 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
/**
* 分页列表查询
*/
@AutoLog(value = "项目-标准评估-分页列表查询")
@ApiOperation(value="项目-标准评估-分页列表查询", notes="项目-标准评估-分页列表查询")
@AutoLog(value = "车型项目库-法规清单-分页列表查询")
@ApiOperation(value="车型项目库-法规清单-分页列表查询", notes="车型项目库-法规清单-分页列表查询")
@GetMapping(value = "/page")
public Result<IPage<LawsAssess>> queryPageList(LawsAssess lawsAssess,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@@ -89,7 +85,8 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
assess.setApplicableVehicle(standard.getApplicableVehicle());
assess.setOnTheProductionDate(standard.getOnTheProductionDate());
assess.setNewModelImplementationDate(standard.getNewModelImplementationDate());
assess.setEvaluationResults("这里要用额外方法查询");
//TODO "这里要用额外方法查询"
assess.setEvaluationResults("-");
assess.setResponsibleDepartment(standard.getResponsibleDepartment());
}
if (CommonConstant.STANDARD_SOURCE_2.equals(source)){
@@ -100,7 +97,8 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
assess.setApplicableVehicle(standard.getApplicableVehicle());
assess.setOnTheProductionDate(standard.getOnTheProductionDate());
assess.setNewModelImplementationDate(standard.getNewModelImplementationDate());
assess.setEvaluationResults("这里要用额外方法查询");
//TODO "这里要用额外方法查询"
assess.setEvaluationResults("-");
assess.setResponsibleDepartment(standard.getResponsibleDepartment());
}
}
@@ -109,8 +107,8 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
/**
* 调取
*/
@AutoLog(value = "项目-标准评估-调取")
@ApiOperation(value="项目-标准评估-调取", notes="项目-标准评估-调取")
@AutoLog(value = "车型项目库-法规清单-调取")
@ApiOperation(value="车型项目库-法规清单-调取", notes="车型项目库-法规清单-调取")
@PostMapping(value = "/retrieval")
public Result<T> retrieval(@Validated @RequestBody LawsAssessAddVo lawsAssessAddVo) {
String domesticStandardId = lawsAssessAddVo.getDomesticStandardId();
@@ -139,8 +137,6 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
//如果已删除则恢复未删除状态
LawsAssess lawsAssess = lawsAssessService.getById(id);
lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString());
lawsAssess.setCreateTime(now);
lawsAssess.setUpdateTime(now);
lawsAssessService.updateById(lawsAssess);
continue;
}
@@ -152,8 +148,6 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
lawsAssess.setStandardNumber(standard.getStandardNumber());
lawsAssess.setStandardName(standard.getStandardName());
lawsAssess.setProcessStatus("1");
lawsAssess.setCreateTime(now);
lawsAssess.setUpdateTime(now);
lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString());
lawsAssesses.add(lawsAssess);
}
@@ -169,8 +163,6 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
//如果已删除则恢复未删除状态
LawsAssess lawsAssess = lawsAssessService.getById(id);
lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString());
lawsAssess.setCreateTime(now);
lawsAssess.setUpdateTime(now);
lawsAssessService.updateById(lawsAssess);
continue;
}
@@ -182,8 +174,6 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
lawsAssess.setStandardNumber(standard.getStandardNumber());
lawsAssess.setStandardName(standard.getStandardName());
lawsAssess.setProcessStatus("1");
lawsAssess.setCreateTime(now);
lawsAssess.setUpdateTime(now);
lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString());
lawsAssesses.add(lawsAssess);
}
@@ -195,8 +185,8 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
/**
* 复制
*/
@AutoLog(value = "项目-标准评估-复制")
@ApiOperation(value="项目-标准评估-复制", notes="项目-标准评估-复制")
@AutoLog(value = "车型项目库-法规清单-复制")
@ApiOperation(value="车型项目库-法规清单-复制", notes="车型项目库-法规清单-复制")
@PostMapping(value = "/copy")
public Result<T> copy(@Validated @RequestBody LawsAssessAddVo lawsAssessAddVo) {
String copyProjectId = lawsAssessAddVo.getCopyProjectId();
@@ -221,8 +211,6 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
//如果已删除则恢复未删除状态
LawsAssess assess = lawsAssessService.getById(standardId);
assess.setDelFlag(CommonConstant.DEL_FLAG_0.toString());
assess.setCreateTime(now);
assess.setUpdateTime(now);
lawsAssessService.updateById(assess);
continue;
}
@@ -233,8 +221,6 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
assess.setStandardNumber(lawsAssess.getStandardNumber());
assess.setStandardName(lawsAssess.getStandardName());
assess.setProcessStatus("1");
assess.setCreateTime(now);
assess.setUpdateTime(now);
lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString());
lawsAssesses.add(assess);
}
@@ -247,79 +233,42 @@ public class LawsAssessController extends JeroController<LawsAssess, ILawsAssess
* 通过id删除
* 同步删除未符合项、专项项目库;
*/
@AutoLog(value = "项目-标准评估-通过id删除")
@ApiOperation(value="项目-标准评估-通过id删除", notes="项目-标准评估-通过id删除")
@AutoLog(value = "车型项目库-法规清单-通过id删除")
@ApiOperation(value="车型项目库-法规清单-通过id删除", notes="车型项目库-法规清单-通过id删除")
@PostMapping(value = "/delete")
public Result<T> delete(@RequestBody Map<String, String> map) {
if(!map.containsKey("id") || StringUtils.isEmpty(map.get("id"))){
public Result<T> delete(@RequestBody IdMapBody map) {
String id = map.getId();
if(StringUtils.isEmpty(id)){
throw new JeroBootException(ResultCommon.PLEASE_SELECT_DATA);
}
lawsAssessService.deleteById(map.get("id"));
return Result.OK(MessageUtils.getMessage(ResultCommon.OK));
lawsAssessService.deleteById(id);
return Result.OK(ResultCommon.OK);
}
/**
* 导出excel
*/
@AutoLog(value = "项目-标准评估-导出excel")
@ApiOperation(value="项目-标准评估-导出excel", notes="项目-标准评估-导出excel")
@AutoLog(value = "车型项目库-法规清单-导出excel")
@ApiOperation(value="车型项目库-法规清单-导出excel", notes="车型项目库-法规清单-导出excel")
@GetMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, LawsAssess lawsAssess, HttpServletResponse response) {
String outFileName = "项目-标准评估" + System.currentTimeMillis() + ".xlsx";
String ENCODING = "UTF-8";
ExcelWriter writer = ExcelUtil.getWriter(true);
// 通过工具类创建writer并且进行别名
assembleWriter(writer);
//获取数据
List<LawsAssess> dos = null;
String selections = request.getParameter("selections");
if (StringUtils.isNotBlank(selections)){
if (StringUtils.isNotBlank(selections)) {
dos = lawsAssessService.listByIds(Arrays.asList(selections.split(",")));
}else {
} else {
lawsAssess.setDelFlag(CommonConstant.DEL_FLAG_0.toString());
QueryWrapper<LawsAssess> queryWrapper = QueryGenerator.initQueryWrapper(lawsAssess, request.getParameterMap());
dos = lawsAssessService.list(queryWrapper);
}
if (dos.isEmpty()){
if (dos.isEmpty()) {
throw new JeroBootException(ResultCommon.PLEASE_SELECT_DATA);
}
this.assignment(dos);
String title = "法规清单";
return super.exportListXls(dos, LawsAssess.class, title);
}
//导出表头只保留别名中的字段
writer.setOnlyAlias(true);
//表格高度
writer.setDefaultRowHeight(18);
//表格宽度
writer.setColumnWidth(-1, 20);
//放入数据
writer.write(dos, true);
try {
// 获取我们的输出流
final OutputStream output = response.getOutputStream();
response.setContentType("application/vnd.ms-excel;charset=utf-8");
response.setHeader("Content-Disposition", "attachment;filename=" + outFileName + ";filename*=utf-8"
+ URLEncoder.encode(outFileName, ENCODING));
writer.flush(output, true);
writer.close();
// 这里可以自行关闭资源或者写一个关闭资源的工具类
IoUtil.close(output);
} catch (Exception e) {
log.error("导出失败:", e);
}
return null;
}
private void assembleWriter(ExcelWriter writer) {
writer.addHeaderAlias("standardNumber", "标准号");
writer.addHeaderAlias("standardName", "标准名称");
writer.addHeaderAlias("standardState", "标准状态");
writer.addHeaderAlias("applicableVehicle", "适用车型");
writer.addHeaderAlias("onTheProductionDate", "在产车实施日期");
writer.addHeaderAlias("newModelImplementationDate", "新车型实施日期");
writer.addHeaderAlias("processStatus", "流程状态");
writer.addHeaderAlias("evaluationResults", "评估结果");
writer.addHeaderAlias("responsibleDepartment", "责任部门");
}
}
@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
import com.jero.common.aspect.annotation.Dict;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.StringUtils;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
@@ -41,18 +42,15 @@ public class LawsAssess implements Serializable {
/**项目ID*/
@NotBlank(message = "projectId not null")
@Excel(name = "项目ID", width = 15)
@ApiModelProperty(value = "项目ID")
private String projectId;
/**标准ID*/
@NotBlank(message = "standardId not null")
@Excel(name = "标准ID", width = 15)
@ApiModelProperty(value = "标准ID")
private String standardId;
/**标准来源*/
@Excel(name = "标准来源(1国内、2海外、3企标)", width = 15)
@ApiModelProperty(value = "标准来源(1国内、2海外、3企标)")
private String source;
@@ -66,12 +64,49 @@ public class LawsAssess implements Serializable {
@ApiModelProperty(value = "标准名称")
private String standardName;
/**流程状态(1-未评估、2-评估中、3-已评估)*/
@TableField(exist = false)
@Excel(name = "英文名称", width = 15, exportConvert = true)
@ApiModelProperty(value = "英文名称")
private String standardEnglishName;
@TableField(exist = false)
@Excel(name = "标准状态", width = 15, dicCode = "standard_state")
@ApiModelProperty(value = "标准状态")
@Dict(dicCode = "standard_state")
private String standardState;
@TableField(exist = false)
@Excel(name = "适用车型", width = 15, exportConvert = true)
@ApiModelProperty(value = "适用车型")
private String applicableVehicle;
@TableField(exist = false)
@Excel(name = "在产车实施日期", width = 15, exportConvert = true)
@ApiModelProperty(value = "在产车实施日期")
private String onTheProductionDate;
@TableField(exist = false)
@Excel(name = "新车型实施日期", width = 15, exportConvert = true)
@ApiModelProperty(value = "新车型实施日期")
private String newModelImplementationDate;
/**流程状态(1-未评估、2-评估中、3-已评估)*/
@Dict(dicCode = "process_status")
@Excel(name = "流程状态(1-未评估、2-评估中、3-已评估)", width = 15)
@Excel(name = "流程状态", width = 15, dicCode = "process_status")
@ApiModelProperty(value = "流程状态(1-未评估、2-评估中、3-已评估)")
private String processStatus;
@TableField(exist = false)
@Excel(name = "评估结果", width = 15)
@ApiModelProperty(value = "评估结果")
private String evaluationResults;
@TableField(exist = false)
@Excel(name = "责任部门", width = 15, dictTable = "sys_depart", dicText = "depart_name", dicCode = "id", exportConvert = true)
@ApiModelProperty(value = "责任部门")
@Dict(dictTable = "sys_depart", dicText = "depart_name", dicCode = "id")
private String responsibleDepartment;
/**创建人*/
@ApiModelProperty(value = "创建人")
private String createBy;
@@ -93,7 +128,6 @@ public class LawsAssess implements Serializable {
private Date updateTime;
/**所属部门*/
@Excel(name = "所属部门", width = 15)
@ApiModelProperty(value = "所属部门")
private String orgCode;
@@ -101,33 +135,19 @@ public class LawsAssess implements Serializable {
@ApiModelProperty(value = "删除状态(0-正常,1-删除)")
private String delFlag;
@TableField(exist = false)
@ApiModelProperty(value = "英文名称")
private String standardEnglishName;
@TableField(exist = false)
@ApiModelProperty(value = "标准状态")
private String standardState;
@TableField(exist = false)
@ApiModelProperty(value = "适用车型")
private String applicableVehicle;
@TableField(exist = false)
@ApiModelProperty(value = "在产车实施日期")
private String onTheProductionDate;
@TableField(exist = false)
@ApiModelProperty(value = "新车型实施日期")
private String newModelImplementationDate;
@TableField(exist = false)
@ApiModelProperty(value = "评估结果")
private String evaluationResults;
@TableField(exist = false)
@ApiModelProperty(value = "责任部门")
private String responsibleDepartment;
public String convertgetStandardEnglishName(){
return StringUtils.isNotBlank(this.standardEnglishName) ? this.standardEnglishName : "-";
}
public String convertgetApplicableVehicle(){
return StringUtils.isNotBlank(this.applicableVehicle) ? this.applicableVehicle : "-";
}
public String convertgetOnTheProductionDate(){
return StringUtils.isNotBlank(this.onTheProductionDate) ? this.onTheProductionDate : "-";
}
public String convertgetNewModelImplementationDate(){
return StringUtils.isNotBlank(this.newModelImplementationDate) ? this.newModelImplementationDate : "-";
}
public String convertgetResponsibleDepartment(){
return StringUtils.isNotBlank(this.responsibleDepartment) ? this.responsibleDepartment : "-";
}
}