update:完善公司参与统计模块

This commit is contained in:
sunzheng
2024-09-11 17:09:50 +08:00
parent 787534b5c7
commit a8bf4a69b3
7 changed files with 118 additions and 69 deletions
@@ -1,20 +1,19 @@
package com.jero.modules.laws.club.controller;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jero.common.api.vo.Result;
import com.jero.common.api.vo.ResultCommon;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.modules.laws.club.entity.LawsCompanyStandardStatistics;
import com.jero.modules.laws.club.service.ILawsCompanyStandardStatisticsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* <p>
@@ -24,8 +23,10 @@ import java.util.List;
* @author sz
* @since 2024-08-28
*/
@Api(tags="公司参与标准统计表")
@RestController
@RequestMapping("/companyStatistics")
@Slf4j
public class LawsCompanyStandardStatisticsController {
@Resource
@@ -39,6 +40,7 @@ public class LawsCompanyStandardStatisticsController {
@AutoLog(value = "公司参与标准统计表-分页列表查询")
@ApiOperation(value="公司参与标准统计表-分页列表查询", notes="公司参与标准统计表-分页列表查询")
@GetMapping(value = "/page")
@RequiresPermissions("companyStandardStatistics:search")
public Result<?> queryPageList(LawsCompanyStandardStatistics lawsCompanyStandardStatistics,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
@@ -48,20 +50,7 @@ public class LawsCompanyStandardStatisticsController {
}
/**
* 列表查询
*
* @return
*/
@AutoLog(value = "公司参与标准统计表-列表查询")
@ApiOperation(value="公司参与标准统计表-列表查询", notes="公司参与标准统计表-列表查询")
@GetMapping(value = "/list")
public Result<?> queryList() {
List<LawsCompanyStandardStatistics> list = lawsCompanyStandardStatisticsService.list();
return Result.OK(list);
}
/**
* 添加
* 添加
*
* @param lawsCompanyStandardStatistics
* @return
@@ -69,6 +58,7 @@ public class LawsCompanyStandardStatisticsController {
@AutoLog(value = "公司参与标准统计表-添加")
@ApiOperation(value="公司参与标准统计表-添加", notes="公司参与标准统计表-添加")
@PostMapping(value = "/add")
@RequiresPermissions("companyStandardStatistics:add")
public Result<?> add(@RequestBody LawsCompanyStandardStatistics lawsCompanyStandardStatistics) {
return lawsCompanyStandardStatisticsService.add(lawsCompanyStandardStatistics);
}
@@ -82,24 +72,20 @@ public class LawsCompanyStandardStatisticsController {
@AutoLog(value = "公司参与标准统计表-编辑")
@ApiOperation(value="公司参与标准统计表-编辑", notes="公司参与标准统计表-编辑")
@PostMapping(value = "/edit")
@RequiresPermissions("companyStandardStatistics:edit")
public Result<?> edit(@RequestBody LawsCompanyStandardStatistics lawsCompanyStandardStatistics) {
lawsCompanyStandardStatisticsService.updateById(lawsCompanyStandardStatistics);
return Result.OK(ResultCommon.EDIT_OK);
return lawsCompanyStandardStatisticsService.edit(lawsCompanyStandardStatistics);
}
/**
* 通过id删除
* 删除
*/
@AutoLog(value = "公司参与标准统计表-通过id删除")
@ApiOperation(value="公司参与标准统计表-通过id删除", notes="公司参与标准统计表-通过id删除")
@AutoLog(value = "公司参与标准统计表-删除")
@ApiOperation(value="公司参与标准统计表-删除", notes="公司参与标准统计表-删除")
@PostMapping(value = "/delete")
@RequiresPermissions("companyStandardStatistics:delete")
public Result<?> delete(@RequestBody JSONObject jsonObject) {
String id = jsonObject.getString("id");
if(StringUtils.isBlank(id)){
return Result.error(ResultCommon.PLEASE_SELECT_DATA);
}
lawsCompanyStandardStatisticsService.removeById(id);
return Result.OK(ResultCommon.OK);
return lawsCompanyStandardStatisticsService.delete(jsonObject);
}
/**
@@ -107,7 +93,8 @@ public class LawsCompanyStandardStatisticsController {
*/
@AutoLog(value = "公司参与标准统计表-导出")
@ApiOperation(value="公司参与标准统计表-导出", notes="公司参与标准统计表-导出")
@RequestMapping(value = "/exportXls")
@GetMapping(value = "/exportXls")
@RequiresPermissions("companyStandardStatistics:export")
public ModelAndView export(LawsCompanyStandardStatistics lawsCompanyStandardStatistics, HttpServletRequest request) {
return lawsCompanyStandardStatisticsService.export(lawsCompanyStandardStatistics, request);
}
@@ -2,12 +2,9 @@ package com.jero.modules.laws.club.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -78,8 +78,8 @@ public class LawsClubResearchInformation implements Serializable {
@ApiModelProperty(value = "反馈情况")
private String feedbackSituation;
@ApiModelProperty(value = "任务来源")
@Dict(dicCode = "task_source")
@ApiModelProperty(value = "任务来源 1:邮件 2:汽车标志数字化平台 3:其他")
@Dict(dicCode = "club_task_source")
private String taskSource;
@ApiModelProperty(value = "盖章流程完成情况")
@@ -42,8 +42,8 @@ public class LawsClubWorkingGroupFile implements Serializable {
@Dict(dictTable = "oss_file", dicCode = "id", dicText = "file_name")
private String fileId;
@ApiModelProperty(value = "文件类型")
@Dict(dicCode = "file_type")
@ApiModelProperty(value = "文件类型 1:报批稿 2:送审稿 3:征求意见稿 4:月报 5:咨询月报 6:会议资料 7:通知 8:其他")
@Dict(dicCode = "club_file_type")
private String fileType;
@ApiModelProperty(value = "创建人")
@@ -1,13 +1,8 @@
package com.jero.modules.laws.club.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jero.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
@@ -18,9 +13,6 @@ import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* <p>
* 公司参与标准统计表
@@ -54,22 +46,34 @@ public class LawsCompanyStandardStatistics implements Serializable {
@Excel(name = "标准起草人", width = 15)
private String standardDrafter;
@ApiModelProperty(value = "是否主导 0-主导 1-参与")
@Excel(name = "主导/参与", width = 15)
@ApiModelProperty(value = "部门")
@Excel(name = "部门", width = 20, dicText = "depart_name", dicCode = "id", dictTable = "sys_depart")
@Dict(dictTable = "sys_depart", dicCode = "id", dicText = "depart_name")
private String depart;
@ApiModelProperty(value = "专业模块")
@Dict(dicCode = "professional_module")
@Excel(name = "专业模块", width = 15, dicCode = "professional_module")
private String specializedModule;
@ApiModelProperty(value = "主导/参与 1-主导 2-参与")
@Excel(name = "主导/参与", width = 15, dicCode = "css_is_lead")
@Dict(dicCode = "css_is_lead")
private String isLead;
@ApiModelProperty(value = "公司排名/个人排名")
@Excel(name = "公司排名/个人排名", width = 15)
private String ranking;
@ApiModelProperty(value = "阶段(数据字典)")
@Excel(name = "阶段", width = 15)
@ApiModelProperty(value = "阶段 1:立项 2:起草 3:征求意见 4:送审 5:报批 6:发布")
@Excel(name = "阶段", width = 15, dicCode = "css_stage")
@Dict(dicCode = "css_stage")
private String stage;
@ApiModelProperty(value = "领奖时间")
@ApiModelProperty(value = "领奖(领奖时间)")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@Excel(name = "领奖时间", width = 15, format = "yyyy-MM-dd")
@Excel(name = "领奖(领奖时间)", width = 15, format = "yyyy-MM-dd")
private Date awardTime;
@ApiModelProperty(value = "所属工作组")
@@ -80,6 +84,10 @@ public class LawsCompanyStandardStatistics implements Serializable {
@Excel(name = "备注", width = 15)
private String remark;
@ApiModelProperty(value = "0表示未删除,1表示删除")
@TableLogic(value = "0", delval = "1")
private Integer delFlag;
@ApiModelProperty(value = "创建人")
private String createBy;
@@ -95,4 +103,8 @@ public class LawsCompanyStandardStatistics implements Serializable {
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date updateTime;
@ApiModelProperty(value = "标准编号/标准名称")
@TableField(exist = false)
private String standardNumberOrName;
}
@@ -1,12 +1,11 @@
package com.jero.modules.laws.club.service;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.common.api.vo.Result;
import com.jero.modules.laws.club.entity.LawsCompanyStandardStatistics;
import com.jero.modules.tag.entity.LawsArea;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
/**
@@ -25,4 +24,7 @@ public interface ILawsCompanyStandardStatisticsService extends IService<LawsComp
Result<?> add(LawsCompanyStandardStatistics lawsCompanyStandardStatistics);
Result<?> edit(LawsCompanyStandardStatistics lawsCompanyStandardStatistics);
Result<?> delete(JSONObject jsonObject);
}
@@ -1,6 +1,7 @@
package com.jero.modules.laws.club.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -8,8 +9,6 @@ import com.jero.common.api.vo.Result;
import com.jero.common.api.vo.ResultCommon;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.util.oConvertUtils;
import com.jero.modules.laws.club.entity.LawsCompanyStandardStatistics;
import com.jero.modules.laws.club.mapper.LawsCompanyStandardStatisticsMapper;
import com.jero.modules.laws.club.service.ILawsCompanyStandardStatisticsService;
@@ -20,7 +19,6 @@ import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.springframework.stereotype.Service;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
@@ -37,44 +35,97 @@ public class LawsCompanyStandardStatisticsServiceImpl extends ServiceImpl<LawsCo
@Override
public IPage<LawsCompanyStandardStatistics> queryPageList(LawsCompanyStandardStatistics lawsCompanyStandardStatistics, Integer pageNo, Integer pageSize, HttpServletRequest req) {
QueryWrapper<LawsCompanyStandardStatistics> queryWrapper = QueryGenerator.initQueryWrapper(lawsCompanyStandardStatistics, req.getParameterMap());
LambdaQueryWrapper<LawsCompanyStandardStatistics> lambdaQueryWrapper = new LambdaQueryWrapper<>();
String standardNumberOrName = lawsCompanyStandardStatistics.getStandardNumberOrName();
String stage = lawsCompanyStandardStatistics.getStage();
String standardDrafter = lawsCompanyStandardStatistics.getStandardDrafter();
if (StringUtils.isNotBlank(standardNumberOrName)) {
lambdaQueryWrapper.and(wrapper -> wrapper.like(LawsCompanyStandardStatistics::getStandardNumber, standardNumberOrName).or()
.like(LawsCompanyStandardStatistics::getStandardName, standardNumberOrName));
}
if (StringUtils.isNotBlank(stage)) {
lambdaQueryWrapper.eq(LawsCompanyStandardStatistics::getStage, stage);
}
if (StringUtils.isNotBlank(standardDrafter)) {
lambdaQueryWrapper.like(LawsCompanyStandardStatistics::getStandardDrafter, standardDrafter);
}
Page<LawsCompanyStandardStatistics> page = new Page<>(pageNo, pageSize);
Page<LawsCompanyStandardStatistics> result = page(page, queryWrapper);
Page<LawsCompanyStandardStatistics> result = page(page, lambdaQueryWrapper);
return result;
}
@Override
public Result<?> add(LawsCompanyStandardStatistics lawsCompanyStandardStatistics) {
validateRequiredField(lawsCompanyStandardStatistics);
save(lawsCompanyStandardStatistics);
return Result.OK(ResultCommon.OK);
}
@Override
public Result<?> edit(LawsCompanyStandardStatistics lawsCompanyStandardStatistics) {
validateRequiredField(lawsCompanyStandardStatistics);
updateById(lawsCompanyStandardStatistics);
return Result.OK(ResultCommon.EDIT_OK);
}
@Override
public Result<?> delete(JSONObject jsonObject) {
String id = jsonObject.getString("id");
if(StringUtils.isBlank(id)){
return Result.error(ResultCommon.PLEASE_SELECT_DATA);
}
removeById(id);
return Result.OK(ResultCommon.OK);
}
private void validateRequiredField(LawsCompanyStandardStatistics lawsCompanyStandardStatistics) {
if (Objects.isNull(lawsCompanyStandardStatistics)) {
throw new JeroBootException(ResultCommon.PARAMETERS_CANNOT_BE_NULL);
}
if (StringUtils.isBlank(lawsCompanyStandardStatistics.getStandardNumber())) {
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "standardNumber");
}
if (StringUtils.isBlank(lawsCompanyStandardStatistics.getStandardNumber())) {
if (StringUtils.isBlank(lawsCompanyStandardStatistics.getStandardName())) {
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "standardName");
}
if (StringUtils.isBlank(lawsCompanyStandardStatistics.getStandardDrafter())) {
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "standardDrafter");
}
if (StringUtils.isBlank(lawsCompanyStandardStatistics.getDepart())) {
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "depart");
}
if (StringUtils.isBlank(lawsCompanyStandardStatistics.getSpecializedModule())) {
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "specializedModule");
}
if (Objects.isNull(lawsCompanyStandardStatistics.getIsLead())) {
throw new JeroBootException(ResultCommon.EMPTY_COMMON, "isLead");
}
save(lawsCompanyStandardStatistics);
return Result.OK(ResultCommon.OK);
}
@Override
public ModelAndView export(LawsCompanyStandardStatistics lawsCompanyStandardStatistics, HttpServletRequest request) {
// Step.1 组装查询条件
QueryWrapper<LawsCompanyStandardStatistics> queryWrapper = QueryGenerator.initQueryWrapper(lawsCompanyStandardStatistics, request.getParameterMap());
LambdaQueryWrapper<LawsCompanyStandardStatistics> lambdaQueryWrapper = new LambdaQueryWrapper<>();
String standardNumberOrName = lawsCompanyStandardStatistics.getStandardNumberOrName();
String stage = lawsCompanyStandardStatistics.getStage();
String standardDrafter = lawsCompanyStandardStatistics.getStandardDrafter();
if (StringUtils.isNotBlank(standardNumberOrName)) {
lambdaQueryWrapper.and(wrapper -> wrapper.like(LawsCompanyStandardStatistics::getStandardNumber, standardNumberOrName).or()
.like(LawsCompanyStandardStatistics::getStandardName, standardNumberOrName));
}
if (StringUtils.isNotBlank(stage)) {
lambdaQueryWrapper.eq(LawsCompanyStandardStatistics::getStage, stage);
}
if (StringUtils.isNotBlank(standardDrafter)) {
lambdaQueryWrapper.like(LawsCompanyStandardStatistics::getStandardDrafter, standardDrafter);
}
//Step.2 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
String selections = request.getParameter("selections");
if(!oConvertUtils.isEmpty(selections)){
queryWrapper.in("id", Arrays.asList(selections.split(",")));
}
List<LawsCompanyStandardStatistics> excelList = list(queryWrapper);
// String selections = request.getParameter("selections");
// if(!oConvertUtils.isEmpty(selections)){
// queryWrapper.in("id", Arrays.asList(selections.split(",")));
// }
List<LawsCompanyStandardStatistics> excelList = list(lambdaQueryWrapper);
//导出文件名称
mv.addObject(JeroController.FILE_NAME, "公司参与标准统计");
mv.addObject(JeroController.CLASS, LawsCompanyStandardStatistics.class);