diff --git a/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java b/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java index 50d2a9c1..af7ee6e8 100644 --- a/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java +++ b/laws-base/laws-base-core/src/main/java/com/jero/common/api/vo/ResultCommon.java @@ -219,4 +219,7 @@ public class ResultCommon { public static final String TREE_NODE_EXISTS = "tree.node.exists"; + // 当前节点下存在子集 + public static final String NODE_EXIST_SUBSETS = "node.exist.subsets"; + } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/controller/LawsClubController.java b/laws-modules/src/main/java/com/jero/modules/laws/club/controller/LawsClubController.java new file mode 100644 index 00000000..78d932a2 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/controller/LawsClubController.java @@ -0,0 +1,186 @@ +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.aspect.annotation.AutoLog; +import com.jero.common.aspect.annotation.DictPoint; +import com.jero.common.system.base.controller.JeroController; +import com.jero.modules.laws.club.entity.LawsClub; +import com.jero.modules.laws.club.service.ILawsClubService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +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; + +/** + *

+ * 社团管理表 前端控制器 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Api(tags="社团管理表") +@RestController +@RequestMapping("/club") +@Slf4j +public class LawsClubController extends JeroController { + + @Resource + private ILawsClubService lawsClubService; + + /** + * 树形查询 + */ +// @AutoLog(value = "社团管理-树形查询") +// @ApiOperation(value="社团管理-树形查询", notes="社团管理-树形查询") +// @GetMapping(value = "/queryTree") + public Result queryTree(@RequestParam(name = "nodeType", required = false, defaultValue = "") String nodeType) { + List list = lawsClubService.getTree("Part", nodeType); + return Result.OK(list); + } + + /** + * 获取子集 + * @param parentId + * @param nodeType + * @return + */ +// @AutoLog(value = "社团管理-获取子集") +// @ApiOperation(value = "社团管理-获取子集", notes = "社团管理-获取子集") +// @GetMapping("/getChild") + public Result getChild(@RequestParam("parentId") String parentId, + @RequestParam("nodeType") String nodeType) { + return Result.OK(lawsClubService.getTree(parentId, nodeType)); + } + + /** + * 树形查询所有 + * @param nodeType + * @return + */ + @AutoLog(value = "社团管理-树形查询所有") + @ApiOperation(value="社团管理-树形查询所有", notes="社团管理-树形查询所有") + @GetMapping(value = "/queryTreeAll") + public Result queryTreeAll(@RequestParam(name = "nodeType", required = false, defaultValue = "") String nodeType) { + List tree = lawsClubService.getTreeStructure("Part", nodeType); + return Result.OK(tree); + } + + /** + * 分页列表查询 + * + * @return + */ + @AutoLog(value = "社团管理-分页列表查询") + @ApiOperation(value="社团管理-分页列表查询", notes="社团管理-分页列表查询") + @GetMapping(value = "/page") + public Result queryPageList(LawsClub lawsClub, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + IPage pageList= lawsClubService.queryPageList(lawsClub, pageNo, pageSize, req); + return Result.OK(pageList); + } + + /** + * 添加/修改 + * + * @param lawsClub + * @return + */ + @AutoLog(value = "社团管理-添加/修改") + @ApiOperation(value="社团管理-添加/修改", notes="社团管理-添加/修改") + @PostMapping(value = "/addOrEdit") + public Result addOrEdit(@RequestBody LawsClub lawsClub) { + return lawsClubService.addOrEdit(lawsClub); + } + + /** + * 查看 + */ + @AutoLog(value = "社团管理-查看") + @ApiOperation(value="社团管理-查看", notes="社团管理-查看") + @PostMapping(value = "/queryOne") + @DictPoint + public Result queryOne(@RequestBody JSONObject jsonObject) { + String id = jsonObject.getString("id"); + return lawsClubService.queryOne(id); + } + + /** + * 通过id删除 + */ + @AutoLog(value = "社团管理-通过id删除") + @ApiOperation(value="社团管理-通过id删除", notes="社团管理-通过id删除") + @PostMapping(value = "/delete") + public Result delete(@RequestBody JSONObject jsonObject) { + String id = jsonObject.getString("id"); + return lawsClubService.delete(id); + } + + /** + * 导出全部 + */ + @AutoLog(value = "社团管理-导出") + @ApiOperation(value="社团管理-导出", notes="社团管理-导出") + @RequestMapping(value = "/exportXls") + public ModelAndView exportAll(LawsClub lawsClub, HttpServletRequest request) { + return lawsClubService.exportAll(lawsClub,request); + } + + /** + * 导出入团信息 + */ + @AutoLog(value = "社团管理-导出入团信息") + @ApiOperation(value="社团管理-导出入团信息", notes="社团管理-导出入团信息") + @RequestMapping(value = "/exportTeamXls") + public ModelAndView exportTeamXls(LawsClub lawsClub, HttpServletRequest request) { + return lawsClubService.exportTeamXls(lawsClub,request); + } + + /** + * 导出参会信息 + */ + @AutoLog(value = "社团管理-导出参会信息") + @ApiOperation(value="社团管理-导出参会信息", notes="社团管理-导出参会信息") + @RequestMapping(value = "/exportMeetingXls") + public ModelAndView exportMeetingXls(LawsClub lawsClub, HttpServletRequest request) { + return lawsClubService.exportMeetingXls(lawsClub,request); + } + + /** + * 导出征集调研意见 + */ + @AutoLog(value = "社团管理-导出征集调研意见") + @ApiOperation(value="社团管理-导出征集调研意见", notes="社团管理-导出征集调研意见") + @RequestMapping(value = "/exportresearchXls") + public ModelAndView exportresearchXls(LawsClub lawsClub, HttpServletRequest request) { + return lawsClubService.exportresearchXls(lawsClub,request); + } + + /** + * 模板下载 + */ + @AutoLog(value = "社团管理-导出征集调研意见") + @ApiOperation(value="社团管理-导出征集调研意见", notes="社团管理-导出征集调研意见") + @RequestMapping(value = "/exportTemplate") + public ModelAndView exportTemplate(HttpServletRequest request) { + return lawsClubService.exportTemplate(request); + } + + /** + * 导入 + */ + @AutoLog(value = "社团管理-导入") + @ApiOperation(value="社团管理-导入", notes="社团管理-导入") + @RequestMapping(value = "/importExcel") + public Result excelimport(HttpServletRequest request) { + return lawsClubService.importExcel(request); + } +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/controller/LawsCompanyStandardStatisticsController.java b/laws-modules/src/main/java/com/jero/modules/laws/club/controller/LawsCompanyStandardStatisticsController.java new file mode 100644 index 00000000..b858ff39 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/controller/LawsCompanyStandardStatisticsController.java @@ -0,0 +1,114 @@ +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.ApiOperation; +import org.apache.commons.lang3.StringUtils; +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; + +/** + *

+ * 公司参与标准统计表 前端控制器 + *

+ * + * @author sz + * @since 2024-08-28 + */ +@RestController +@RequestMapping("/companyStatistics") +public class LawsCompanyStandardStatisticsController { + + @Resource + private ILawsCompanyStandardStatisticsService lawsCompanyStandardStatisticsService; + + /** + * 分页列表查询 + * + * @return + */ + @AutoLog(value = "公司参与标准统计表-分页列表查询") + @ApiOperation(value="公司参与标准统计表-分页列表查询", notes="公司参与标准统计表-分页列表查询") + @GetMapping(value = "/page") + public Result queryPageList(LawsCompanyStandardStatistics lawsCompanyStandardStatistics, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + IPage pageList= lawsCompanyStandardStatisticsService.queryPageList(lawsCompanyStandardStatistics, pageNo, pageSize, req); + return Result.OK(pageList); + } + + /** + * 列表查询 + * + * @return + */ + @AutoLog(value = "公司参与标准统计表-列表查询") + @ApiOperation(value="公司参与标准统计表-列表查询", notes="公司参与标准统计表-列表查询") + @GetMapping(value = "/list") + public Result queryList() { + List list = lawsCompanyStandardStatisticsService.list(); + return Result.OK(list); + } + + /** + * 添加 + * + * @param lawsCompanyStandardStatistics + * @return + */ + @AutoLog(value = "公司参与标准统计表-添加") + @ApiOperation(value="公司参与标准统计表-添加", notes="公司参与标准统计表-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody LawsCompanyStandardStatistics lawsCompanyStandardStatistics) { + return lawsCompanyStandardStatisticsService.add(lawsCompanyStandardStatistics); + } + + /** + * 编辑 + * + * @param lawsCompanyStandardStatistics + * @return + */ + @AutoLog(value = "公司参与标准统计表-编辑") + @ApiOperation(value="公司参与标准统计表-编辑", notes="公司参与标准统计表-编辑") + @PostMapping(value = "/edit") + public Result edit(@RequestBody LawsCompanyStandardStatistics lawsCompanyStandardStatistics) { + lawsCompanyStandardStatisticsService.updateById(lawsCompanyStandardStatistics); + return Result.OK(ResultCommon.EDIT_OK); + } + + /** + * 通过id删除 + */ + @AutoLog(value = "公司参与标准统计表-通过id删除") + @ApiOperation(value="公司参与标准统计表-通过id删除", notes="公司参与标准统计表-通过id删除") + @PostMapping(value = "/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); + } + + /** + * 导出 + */ + @AutoLog(value = "公司参与标准统计表-导出") + @ApiOperation(value="公司参与标准统计表-导出", notes="公司参与标准统计表-导出") + @RequestMapping(value = "/exportXls") + public ModelAndView export(LawsCompanyStandardStatistics lawsCompanyStandardStatistics, HttpServletRequest request) { + return lawsCompanyStandardStatisticsService.export(lawsCompanyStandardStatistics, request); + } +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClub.java b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClub.java new file mode 100644 index 00000000..df40695d --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClub.java @@ -0,0 +1,122 @@ +package com.jero.modules.laws.club.entity; + +import com.baomidou.mybatisplus.annotation.*; + +import java.time.LocalDateTime; +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecgframework.poi.excel.annotation.ExcelCollection; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * 社团管理表 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("laws_club") +@ApiModel(value="LawsClub对象", description="社团管理表") +public class LawsClub implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private String id; + + @ApiModelProperty(value = "上级节点id") + @Dict(dictTable = "laws_club", dicCode = "id", dicText = "node_type") + @Excel(name = "上级节点", width = 20, dicText = "node_type", dicCode = "id", dictTable = "laws_club") + private String parentId; + + @ApiModelProperty(value = "节点类型") + @Excel(name = "节点类型", width = 20) + private String nodeType; + + @ApiModelProperty(value = "社团名称") + @Excel(name = "社团名称", width = 20) + private String clubName; + + @ApiModelProperty(value = "社团地址") + @Excel(name = "社团地址", width = 20) + private String clubAddress; + + @ApiModelProperty(value = "社团联系人") + @Excel(name = "社团联系人", width = 20) + private String clubContact; + + @ApiModelProperty(value = "联系电话") + @Excel(name = "联系电话", width = 20) + private String contactNumber; + + @ApiModelProperty(value = "0表示未删除,1表示删除") + @TableLogic(value = "0", delval = "1") + private Integer delFlag; + + @ApiModelProperty(value = "创建人") + private String createBy; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "更新人") + private String updateBy; + + @ApiModelProperty(value = "更新时间") + @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 boolean leafFlag; + + @TableField(exist = false) + @ApiModelProperty(value = "入团信息列表数据") + @ExcelCollection(name = "入团信息") + private List lawsClubJoinTeamList; + + @TableField(exist = false) + @ApiModelProperty(value = "支付信息列表数据") + private List lawsClubPayments; + + @TableField(exist = false) + @ApiModelProperty(value = "参会信息列表数据") + @ExcelCollection(name = "参会信息") + private List lawsClubMeetings; + + @TableField(exist = false) + @ApiModelProperty(value = "工作组资料列表数据") + private List lawsClubWorkingGroupFiles; + + @TableField(exist = false) + @ApiModelProperty(value = "征集调研信息列表数据") + @ExcelCollection(name = "征集调研信息") + private List lawsClubResearchInformations; + + @TableField(exist = false) + @ApiModelProperty(value = "子节点") + private List children; + + @TableField(exist = false) + @ApiModelProperty(value = "公钥") + private String rsaPublicKey; +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubJoinTeam.java b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubJoinTeam.java new file mode 100644 index 00000000..33cff0f8 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubJoinTeam.java @@ -0,0 +1,116 @@ +package com.jero.modules.laws.club.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +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 com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * 社团管理-入团信息表 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("laws_club_join_team") +@ApiModel(value="LawsClubJoinTeam对象", description="社团管理-入团信息表") +public class LawsClubJoinTeam implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private String id; + + @ApiModelProperty(value = "社团id") + private String clubId; + + @ApiModelProperty(value = "入团日期") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @Excel(name = "入团日期", width = 20, format = "yyyy-MM-dd") + private Date joinDate; + + @ApiModelProperty(value = "社团职务担任者id") + @Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname") +// @Excel(name = "社团职务担任者", width = 20, dicText = "realname", dicCode = "id", dictTable = "sys_user") + private String leadId; + + @ApiModelProperty(value = "入团经费") +// @Excel(name = "入团经费", width = 20) + private String joinCast; + + @ApiModelProperty(value = "社团简介") +// @Excel(name = "社团简介", width = 20) + private String clubProfile; + + @ApiModelProperty(value = "部门id") + @Excel(name = "部门名称", width = 20, dicText = "depart_name", dicCode = "id", dictTable = "sys_depart") + private String departId; + + @ApiModelProperty(value = "专业模块") + private String specializedModule; + + @ApiModelProperty(value = "申请人的id") + @Excel(name = "申请人", width = 20, dicText = "realname", dicCode = "id", dictTable = "sys_user") + private String proposerId; + + @ApiModelProperty(value = "秘书处") +// @Excel(name = "秘书处", width = 20) + private String secretariat; + + @ApiModelProperty(value = "联系人") +// @Excel(name = "联系人", width = 20) + private String contacts; + + @ApiModelProperty(value = "备注") + private String remark; + + @ApiModelProperty(value = "创建人") + private String createBy; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "更新人") + private String updateBy; + + @ApiModelProperty(value = "更新时间") + @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 leadIdText; + + @ApiModelProperty(value = "部门名称") + @TableField(exist = false) + private String departText; + + @ApiModelProperty(value = "申请人名称") + @TableField(exist = false) + private String proposerText; + + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubMeeting.java b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubMeeting.java new file mode 100644 index 00000000..9ad920e3 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubMeeting.java @@ -0,0 +1,117 @@ +package com.jero.modules.laws.club.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +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 java.util.List; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecgframework.poi.excel.annotation.ExcelCollection; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * 社团管理-参会信息 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("laws_club_meeting") +@ApiModel(value="LawsClubMeeting对象", description="社团管理-参会信息") +public class LawsClubMeeting implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private String id; + + @ApiModelProperty(value = "社团id") + private String clubId; + + @ApiModelProperty(value = "会议名称") + @Excel(name = "会议名称", width = 20) + private String meetingName; + + @ApiModelProperty(value = "会议日期") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @Excel(name = "会议日期", width = 20, format = "yyyy-MM-dd") + private Date meetingDate; + + @ApiModelProperty(value = "会议费用") + @Excel(name = "会议费用", width = 20) + private String meetingCost; + + @ApiModelProperty(value = "线下/线上地点") + @Excel(name = "线下/线上地点", width = 20) + private String meetingPlace; + + @ApiModelProperty(value = "计划完成日期") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") +// @Excel(name = "计划完成日期", width = 20, format = "yyyy-MM-dd") + private Date planCompletionDate; + + @ApiModelProperty(value = "通知人id") +// @Excel(name = "通知人", width = 20, dicText = "realname", dicCode = "id", dictTable = "sys_user") + private String notifierId; + + @ApiModelProperty(value = "通知部门id") +// @Excel(name = "部门名称", width = 20, dicText = "depart_name", dicCode = "id", dictTable = "sys_depart") + private String notifyDepartId; + + @ApiModelProperty(value = "通知部门专业模块") +// @Excel(name = "参会部门专业模块", width = 20, dicCode = "professional_module") + private String informSpecializedModule; + + @ApiModelProperty(value = "是否宣贯 0-否 1-是") +// @Excel(name = "参会部门专业模块", width = 20, dicCode = "yn") + private String isPublicize; + + @ApiModelProperty(value = "会议组织人") +// @Excel(name = "会议组织人", width = 20) + private String meetingOrganizer; + + @ApiModelProperty(value = "会议内容") +// @Excel(name = "会议内容", width = 20) + private String meetingContent; + + @ApiModelProperty(value = "创建人") + private String createBy; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "更新人") + private String updateBy; + + @ApiModelProperty(value = "更新时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; + + @TableField(exist = false) + @ApiModelProperty(value = "会议成员列表") +// @ExcelCollection(name = "会议成员列表") + private List meetingMemberList; + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubMeetingMember.java b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubMeetingMember.java new file mode 100644 index 00000000..2a32f202 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubMeetingMember.java @@ -0,0 +1,78 @@ +package com.jero.modules.laws.club.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +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; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * 社团管理-参会信息-人员 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("laws_club_meeting_member") +@ApiModel(value="LawsClubMeetingMember对象", description="社团管理-参会信息-人员") +public class LawsClubMeetingMember implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private String id; + + @ApiModelProperty(value = "关联会议的id") + private String meetingId; + + @ApiModelProperty(value = "参会人员的id") + @Excel(name = "参会人员", width = 20, dicText = "realname", dicCode = "id", dictTable = "sys_user") + private String memberId; + + @ApiModelProperty(value = "参会部门专业模块") + @Excel(name = "参会部门专业模块", dicCode = "professional_module") + private String meetingSpecializedModule; + + @ApiModelProperty(value = "参会部门的id") + @Excel(name = "参会部门", width = 20, dicText = "depart_name", dicCode = "id", dictTable = "sys_depart") + private String departId; + + @ApiModelProperty(value = "参会报告文件id") + @Excel(name = "参会报告文件", width = 20) + private String meetingFileId; + + @ApiModelProperty(value = "备注") + @Excel(name = "备注", width = 20) + private String remark; + + @ApiModelProperty(value = "创建人") + private String createBy; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "更新人") + private String updateBy; + + @ApiModelProperty(value = "更新时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubPayment.java b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubPayment.java new file mode 100644 index 00000000..987889a3 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubPayment.java @@ -0,0 +1,71 @@ +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; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * 社团管理-支付信息 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("laws_club_payment") +@ApiModel(value="LawsClubPayment对象", description="社团管理-支付信息") +public class LawsClubPayment implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private String id; + + @ApiModelProperty(value = "社团id") + private String clubId; + + @ApiModelProperty(value = "缴费金额") + private String paymentAmount; + + @ApiModelProperty(value = "缴费时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date paymentTime; + + @ApiModelProperty(value = "备注") + private String remark; + + @ApiModelProperty(value = "创建人") + private String createBy; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "更新人") + private String updateBy; + + @ApiModelProperty(value = "更新时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; + + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubResearchInformation.java b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubResearchInformation.java new file mode 100644 index 00000000..bc67c499 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubResearchInformation.java @@ -0,0 +1,108 @@ +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; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * 征集调研信息表 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("laws_club_research_information") +@ApiModel(value="LawsClubResearchInformation对象", description="征集调研信息表") +public class LawsClubResearchInformation implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private String id; + + @ApiModelProperty(value = "社团id") + private String clubId; + + @ApiModelProperty(value = "名称") + @Excel(name = "名称", width = 20) + private String researchName; + + @ApiModelProperty(value = "内容") + @Excel(name = "内容", width = 20) + private String researchContent; + + @ApiModelProperty(value = "接收日期") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @Excel(name = "接收日期", width = 20, format = "yyyy-MM-dd") + private Date receiveDate; + + @ApiModelProperty(value = "截止日期") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @Excel(name = "截止日期", width = 20, format = "yyyy-MM-dd") + private Date deadlineDate; + + @ApiModelProperty(value = "专业接口人") + private String specializedInterfacePerson; + + @ApiModelProperty(value = "专业模块") + private String specializedModule; + + @ApiModelProperty(value = "反馈人") + private String feedbackPerson; + + @ApiModelProperty(value = "反馈部门") + private String feedbackDepart; + + @ApiModelProperty(value = "反馈部门专业模块") + private String feedbackSpecializedModule; + + @ApiModelProperty(value = "反馈情况") + private String feedbackSituation; + + @ApiModelProperty(value = "任务来源") + private String taskSource; + + @ApiModelProperty(value = "盖章流程完成情况") + private String sealSituation; + + @ApiModelProperty(value = "所属社团") + private String clubName; + + @ApiModelProperty(value = "创建人") + private String createBy; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "更新人") + private String updateBy; + + @ApiModelProperty(value = "更新时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; + + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubWorkingGroupFile.java b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubWorkingGroupFile.java new file mode 100644 index 00000000..3d320496 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsClubWorkingGroupFile.java @@ -0,0 +1,68 @@ +package com.jero.modules.laws.club.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +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; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * 社团管理-工作组管理 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("laws_club_working_group_file") +@ApiModel(value="LawsClubWorkingGroupFile对象", description="社团管理-工作组管理") +public class LawsClubWorkingGroupFile implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private String id; + + @ApiModelProperty(value = "社团id") + private String clubId; + + @ApiModelProperty(value = "文件id") + private String fileId; + + @ApiModelProperty(value = "文件名称") + private String fileName; + + @ApiModelProperty(value = "文件类型") + private String fileType; + + @ApiModelProperty(value = "创建人") + private String createBy; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "更新人") + private String updateBy; + + @ApiModelProperty(value = "更新时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; + + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsCompanyStandardStatistics.java b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsCompanyStandardStatistics.java new file mode 100644 index 00000000..2a160c41 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/entity/LawsCompanyStandardStatistics.java @@ -0,0 +1,98 @@ +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 com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +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; + +/** + *

+ * 公司参与标准统计表 + *

+ * + * @author sz + * @since 2024-08-28 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("laws_company_standard_statistics") +@ApiModel(value="LawsCompanyStandardStatistics对象", description="公司参与标准统计表") +public class LawsCompanyStandardStatistics implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.ASSIGN_ID) + private String id; + + @ApiModelProperty(value = "标准编号") + @Excel(name = "标准编号", width = 15) + private String standardNumber; + + @ApiModelProperty(value = "标准名称") + @Excel(name = "标准名称", width = 15) + private String standardName; + + @ApiModelProperty(value = "标准起草人") + @Excel(name = "标准起草人", width = 15) + private String standardDrafter; + + @ApiModelProperty(value = "是否主导 0-主导 1-参与") + @Excel(name = "主导/参与", width = 15) + private String isLead; + + @ApiModelProperty(value = "公司排名/个人排名") + @Excel(name = "公司排名/个人排名", width = 15) + private String ranking; + + @ApiModelProperty(value = "阶段(数据字典)") + @Excel(name = "阶段", width = 15) + private String stage; + + @ApiModelProperty(value = "领奖时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @Excel(name = "领奖时间", width = 15, format = "yyyy-MM-dd") + private Date awardTime; + + @ApiModelProperty(value = "所属工作组") + @Excel(name = "所属工作组", width = 15) + private String workingGroup; + + @ApiModelProperty(value = "备注") + @Excel(name = "备注", width = 15) + private String remark; + + @ApiModelProperty(value = "创建人") + private String createBy; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value = "更新人") + private String updateBy; + + @ApiModelProperty(value = "更新时间") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubJoinTeamMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubJoinTeamMapper.java new file mode 100644 index 00000000..66438c91 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubJoinTeamMapper.java @@ -0,0 +1,15 @@ +package com.jero.modules.laws.club.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.laws.club.entity.LawsClubJoinTeam; + +/** + *

+ * 社团管理-入团信息表 Mapper 接口 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface LawsClubJoinTeamMapper extends BaseMapper { +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubMapper.java new file mode 100644 index 00000000..627c320a --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubMapper.java @@ -0,0 +1,17 @@ +package com.jero.modules.laws.club.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.laws.club.entity.LawsClub; + +/** + *

+ * 社团管理表 Mapper 接口 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface LawsClubMapper extends BaseMapper { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubMeetingMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubMeetingMapper.java new file mode 100644 index 00000000..9e12a26f --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubMeetingMapper.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.laws.club.entity.LawsClubMeeting; + +/** + *

+ * 社团管理-参会信息 Mapper 接口 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface LawsClubMeetingMapper extends BaseMapper { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubMeetingMemberMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubMeetingMemberMapper.java new file mode 100644 index 00000000..ea5ef343 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubMeetingMemberMapper.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.laws.club.entity.LawsClubMeetingMember; + +/** + *

+ * 社团管理-参会信息-人员 Mapper 接口 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface LawsClubMeetingMemberMapper extends BaseMapper { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubPaymentMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubPaymentMapper.java new file mode 100644 index 00000000..b4506df0 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubPaymentMapper.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.laws.club.entity.LawsClubPayment; + +/** + *

+ * 社团管理-支付信息 Mapper 接口 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface LawsClubPaymentMapper extends BaseMapper { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubResearchInformationMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubResearchInformationMapper.java new file mode 100644 index 00000000..3ddc8e31 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubResearchInformationMapper.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.laws.club.entity.LawsClubResearchInformation; + +/** + *

+ * 征集调研信息表 Mapper 接口 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface LawsClubResearchInformationMapper extends BaseMapper { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubWorkingGroupFileMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubWorkingGroupFileMapper.java new file mode 100644 index 00000000..b65e4c8a --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsClubWorkingGroupFileMapper.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.laws.club.entity.LawsClubWorkingGroupFile; + +/** + *

+ * 社团管理-工作组管理 Mapper 接口 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface LawsClubWorkingGroupFileMapper extends BaseMapper { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsCompanyStandardStatisticsMapper.java b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsCompanyStandardStatisticsMapper.java new file mode 100644 index 00000000..e4782a16 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/LawsCompanyStandardStatisticsMapper.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.modules.laws.club.entity.LawsCompanyStandardStatistics; + +/** + *

+ * 公司参与标准统计表 Mapper 接口 + *

+ * + * @author sz + * @since 2024-08-28 + */ +public interface LawsCompanyStandardStatisticsMapper extends BaseMapper { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubJoinTeamMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubJoinTeamMapper.xml new file mode 100644 index 00000000..00b7ce11 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubJoinTeamMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubMapper.xml new file mode 100644 index 00000000..c4f3a86e --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubMeetingMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubMeetingMapper.xml new file mode 100644 index 00000000..7f7f9b50 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubMeetingMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubMeetingMemberMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubMeetingMemberMapper.xml new file mode 100644 index 00000000..452d4b90 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubMeetingMemberMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubPaymentMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubPaymentMapper.xml new file mode 100644 index 00000000..86378323 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubPaymentMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubResearchInformationMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubResearchInformationMapper.xml new file mode 100644 index 00000000..326bf727 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubResearchInformationMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubWorkingGroupFileMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubWorkingGroupFileMapper.xml new file mode 100644 index 00000000..b4c37147 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsClubWorkingGroupFileMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsCompanyStandardStatisticsMapper.xml b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsCompanyStandardStatisticsMapper.xml new file mode 100644 index 00000000..8b6c12e7 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/mapper/xml/LawsCompanyStandardStatisticsMapper.xml @@ -0,0 +1,4 @@ + + + + diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubJoinTeamService.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubJoinTeamService.java new file mode 100644 index 00000000..0f7de0a1 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubJoinTeamService.java @@ -0,0 +1,15 @@ +package com.jero.modules.laws.club.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.laws.club.entity.LawsClubJoinTeam; + +/** + *

+ * 社团管理-入团信息表 服务类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface ILawsClubJoinTeamService extends IService { +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubMeetingMemberService.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubMeetingMemberService.java new file mode 100644 index 00000000..41702b6e --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubMeetingMemberService.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.laws.club.entity.LawsClubMeetingMember; + +/** + *

+ * 社团管理-参会信息-人员 服务类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface ILawsClubMeetingMemberService extends IService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubMeetingService.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubMeetingService.java new file mode 100644 index 00000000..979ec5a1 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubMeetingService.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.laws.club.entity.LawsClubMeeting; + +/** + *

+ * 社团管理-参会信息 服务类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface ILawsClubMeetingService extends IService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubPaymentService.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubPaymentService.java new file mode 100644 index 00000000..2d7e755e --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubPaymentService.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.laws.club.entity.LawsClubPayment; + +/** + *

+ * 社团管理-支付信息 服务类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface ILawsClubPaymentService extends IService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubResearchInformationService.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubResearchInformationService.java new file mode 100644 index 00000000..e6badd2e --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubResearchInformationService.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.laws.club.entity.LawsClubResearchInformation; + +/** + *

+ * 征集调研信息表 服务类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface ILawsClubResearchInformationService extends IService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubService.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubService.java new file mode 100644 index 00000000..3f9964aa --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubService.java @@ -0,0 +1,44 @@ +package com.jero.modules.laws.club.service; + +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.LawsClub; +import org.springframework.web.servlet.ModelAndView; +import javax.servlet.http.HttpServletRequest; +import java.util.List; + +/** + *

+ * 社团管理表 服务类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface ILawsClubService extends IService { + + List getTree(String parentId, String nodeType); + + Result addOrEdit(LawsClub lawsClub); + + Result queryOne(String id); + + Result delete(String id); + + ModelAndView exportTeamXls(LawsClub lawsClub, HttpServletRequest request); + + IPage queryPageList(LawsClub lawsClub, Integer pageNo, Integer pageSize, HttpServletRequest req); + + ModelAndView exportAll(LawsClub lawsClub, HttpServletRequest request); + + ModelAndView exportMeetingXls(LawsClub lawsClub, HttpServletRequest request); + + ModelAndView exportresearchXls(LawsClub lawsClub, HttpServletRequest request); + + ModelAndView exportTemplate(HttpServletRequest request); + + Result importExcel(HttpServletRequest request); + + List getTreeStructure(String part, String nodeType); +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubWorkingGroupFileService.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubWorkingGroupFileService.java new file mode 100644 index 00000000..c1d66a91 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsClubWorkingGroupFileService.java @@ -0,0 +1,16 @@ +package com.jero.modules.laws.club.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.laws.club.entity.LawsClubWorkingGroupFile; + +/** + *

+ * 社团管理-工作组管理 服务类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +public interface ILawsClubWorkingGroupFileService extends IService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsCompanyStandardStatisticsService.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsCompanyStandardStatisticsService.java new file mode 100644 index 00000000..6f3d6033 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/ILawsCompanyStandardStatisticsService.java @@ -0,0 +1,28 @@ +package com.jero.modules.laws.club.service; + +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; + +/** + *

+ * 公司参与标准统计表 服务类 + *

+ * + * @author sz + * @since 2024-08-28 + */ +public interface ILawsCompanyStandardStatisticsService extends IService { + + IPage queryPageList(LawsCompanyStandardStatistics lawsCompanyStandardStatistics, Integer pageNo, Integer pageSize, HttpServletRequest req); + + ModelAndView export(LawsCompanyStandardStatistics lawsCompanyStandardStatistics, HttpServletRequest request); + + Result add(LawsCompanyStandardStatistics lawsCompanyStandardStatistics); + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubJoinTeamServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubJoinTeamServiceImpl.java new file mode 100644 index 00000000..a5d44a33 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubJoinTeamServiceImpl.java @@ -0,0 +1,21 @@ +package com.jero.modules.laws.club.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.laws.club.entity.LawsClubJoinTeam; +import com.jero.modules.laws.club.mapper.LawsClubJoinTeamMapper; +import com.jero.modules.laws.club.service.ILawsClubJoinTeamService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + *

+ * 社团管理-入团信息表 服务实现类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Service +public class LawsClubJoinTeamServiceImpl extends ServiceImpl implements ILawsClubJoinTeamService { +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubMeetingMemberServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubMeetingMemberServiceImpl.java new file mode 100644 index 00000000..f57a5389 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubMeetingMemberServiceImpl.java @@ -0,0 +1,20 @@ +package com.jero.modules.laws.club.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.laws.club.entity.LawsClubMeetingMember; +import com.jero.modules.laws.club.mapper.LawsClubMeetingMemberMapper; +import com.jero.modules.laws.club.service.ILawsClubMeetingMemberService; +import org.springframework.stereotype.Service; + +/** + *

+ * 社团管理-参会信息-人员 服务实现类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Service +public class LawsClubMeetingMemberServiceImpl extends ServiceImpl implements ILawsClubMeetingMemberService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubMeetingServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubMeetingServiceImpl.java new file mode 100644 index 00000000..cd66fa7b --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubMeetingServiceImpl.java @@ -0,0 +1,20 @@ +package com.jero.modules.laws.club.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.laws.club.entity.LawsClubMeeting; +import com.jero.modules.laws.club.mapper.LawsClubMeetingMapper; +import com.jero.modules.laws.club.service.ILawsClubMeetingService; +import org.springframework.stereotype.Service; + +/** + *

+ * 社团管理-参会信息 服务实现类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Service +public class LawsClubMeetingServiceImpl extends ServiceImpl implements ILawsClubMeetingService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubPaymentServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubPaymentServiceImpl.java new file mode 100644 index 00000000..e72e4142 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubPaymentServiceImpl.java @@ -0,0 +1,20 @@ +package com.jero.modules.laws.club.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.laws.club.entity.LawsClubPayment; +import com.jero.modules.laws.club.mapper.LawsClubPaymentMapper; +import com.jero.modules.laws.club.service.ILawsClubPaymentService; +import org.springframework.stereotype.Service; + +/** + *

+ * 社团管理-支付信息 服务实现类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Service +public class LawsClubPaymentServiceImpl extends ServiceImpl implements ILawsClubPaymentService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubResearchInformationServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubResearchInformationServiceImpl.java new file mode 100644 index 00000000..95cd1c92 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubResearchInformationServiceImpl.java @@ -0,0 +1,20 @@ +package com.jero.modules.laws.club.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.laws.club.entity.LawsClubResearchInformation; +import com.jero.modules.laws.club.mapper.LawsClubResearchInformationMapper; +import com.jero.modules.laws.club.service.ILawsClubResearchInformationService; +import org.springframework.stereotype.Service; + +/** + *

+ * 征集调研信息表 服务实现类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Service +public class LawsClubResearchInformationServiceImpl extends ServiceImpl implements ILawsClubResearchInformationService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubServiceImpl.java new file mode 100644 index 00000000..b5643f3b --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubServiceImpl.java @@ -0,0 +1,572 @@ +package com.jero.modules.laws.club.service.impl; + +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +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.CommonUtils; +import com.jero.common.util.PasswordUtil; +import com.jero.common.util.RedisUtil; +import com.jero.common.util.oConvertUtils; +import com.jero.modules.laws.club.entity.*; +import com.jero.modules.laws.club.mapper.LawsClubMapper; +import com.jero.modules.laws.club.service.*; +import com.jero.modules.laws.vo.LawsClubMeetingExcel; +import com.jero.modules.system.entity.SysDepart; +import com.jero.modules.system.entity.SysUser; +import com.jero.modules.system.service.ISysDepartService; +import com.jero.modules.system.service.ISysUserService; +import org.apache.commons.lang3.StringUtils; +import org.apache.lucene.search.similarities.LambdaDF; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; +import org.springframework.web.servlet.ModelAndView; +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Function; +import java.util.stream.Collectors; + +/** + *

+ * 社团管理表 服务实现类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Service +@Transactional(rollbackFor = JeroBootException.class) +public class LawsClubServiceImpl extends ServiceImpl implements ILawsClubService { + + @Resource + private ILawsClubJoinTeamService lawsClubJoinTeamService; + @Resource + private ILawsClubMeetingService lawsClubMeetingService; + @Resource + private ILawsClubMeetingMemberService lawsClubMeetingMemberService; + @Resource + private ILawsClubPaymentService lawsClubPaymentService; + @Resource + private ILawsClubWorkingGroupFileService lawsClubWorkingGroupFileService; + @Resource + private ILawsClubResearchInformationService lawsClubResearchInformationService; + @Resource + private ISysUserService sysUserService; + @Resource + private ISysDepartService sysDepartService; + @Resource + private RedisUtil redisUtil; + + @Override + public List getTree(String parentId, String nodeType) { + // 查询所有节点 + List allNodes = list(); + + // 过滤符合条件的节点 + List matchedNodes = allNodes.parallelStream() + .filter(node -> node.getNodeType() != null && node.getNodeType().contains(nodeType)) + .collect(Collectors.toList()); + + // 构建节点映射,以及父子关系映射 + Map nodeMap = allNodes.parallelStream() + .collect(Collectors.toConcurrentMap(LawsClub::getId, Function.identity())); + Map> parentChildMap = matchedNodes.parallelStream() + .collect(Collectors.groupingByConcurrent(LawsClub::getParentId)); + + if (matchedNodes.isEmpty()) { + return Collections.emptyList(); + } + + // 查找每个匹配节点的一级父节点 + Set rootNodes = ConcurrentHashMap.newKeySet(); + Set allParentNodeCodes = ConcurrentHashMap.newKeySet(); + matchedNodes.parallelStream().forEach(matchedNode -> { + LawsClub currentNode = matchedNode; + while (currentNode != null && !currentNode.getParentId().equals(parentId)) { + currentNode = nodeMap.get(currentNode.getParentId()); + if (currentNode != null) { + allParentNodeCodes.add(currentNode.getId()); + } + } + if (currentNode != null) { + rootNodes.add(currentNode); + } + }); + + // 设置叶子标志 + rootNodes.parallelStream().forEach(rootNode -> { + List children = parentChildMap.get(rootNode.getId()); + boolean hasNoChildren = (children == null || children.isEmpty()); + + if (StringUtils.isBlank(nodeType)) { + rootNode.setLeafFlag(hasNoChildren); + } else { + boolean isNotInAllParents = !allParentNodeCodes.contains(rootNode.getId()); + rootNode.setLeafFlag(hasNoChildren && isNotInAllParents); + } + }); + + // 按名字排序 + return rootNodes.stream() + .sorted(Comparator.comparing(LawsClub::getNodeType)) + .collect(Collectors.toList()); + } + + @Override + public List getTreeStructure(String parentId, String nodeType) { + // 查询所有节点 + List allNodes = list(); + + // 构建节点映射 + Map nodeMap = allNodes.parallelStream() + .collect(Collectors.toConcurrentMap(LawsClub::getId, Function.identity())); + + // 构建父子关系映射 + Map> parentChildMap = allNodes.parallelStream() + .collect(Collectors.groupingBy(LawsClub::getParentId)); + + // 如果 nodeType 为空,则返回完整树结构 + if (StringUtils.isBlank(nodeType)) { + return buildTreeStructure(parentId, parentChildMap, nodeMap); // 构建并返回完整的树形结构 + } + + // 查找 nodeType 对应的目标节点 + List targetNodes = allNodes.stream() + .filter(node -> node.getNodeType() != null && node.getNodeType().contains(nodeType)) + .collect(Collectors.toList()); + if (targetNodes.isEmpty()) { + // 如果没有找到与 nodeType 模糊匹配的节点,返回空列表 + return Collections.emptyList(); + } + +// // 目标节点ID集合 +// Set targetNodeIds = targetNodes.stream() +// .map(LawsClub::getId) +// .collect(Collectors.toSet()); +// // 筛选目标节点,排除那些 parentId 在 targetNodeIds 中的节点 +// List filteredTargetNodes = targetNodes.stream() +// .filter(node -> !targetNodeIds.contains(node.getParentId())) +// .collect(Collectors.toList()); + + // 创建结果列表 + List result = new ArrayList<>(); + + // 处理每个匹配到的目标节点 + for (LawsClub targetNode : targetNodes) { + // 查找目标节点的直接上级节点 + LawsClub parentNode = nodeMap.get(targetNode.getParentId()); + + if (parentNode != null) { + // 如果上级节点未添加到结果中,添加上级节点 + if (!result.contains(parentNode)) { + // 初始化上级节点的children列表 + parentNode.setChildren(new ArrayList<>()); + result.add(parentNode); + } + // 将目标节点添加到上级节点的children列表中 + if (parentNode.getChildren() == null) { + parentNode.setChildren(new ArrayList<>()); + } + if (!parentNode.getChildren().contains(targetNode)) { + parentNode.getChildren().add(targetNode); + } + } + } + // 返回结果 + return result; + } + + /** + * 递归构建树结构 + * @param parentId 父节点ID + * @param parentChildMap 父子关系映射 + * @param nodeMap 节点映射 + * @return 树结构的根节点列表 + */ + private List buildTreeStructure(String parentId, Map> parentChildMap, Map nodeMap) { + // 获取当前父节点下的所有子节点 + List children = parentChildMap.get(parentId); + + if (children == null || children.isEmpty()) { + return Collections.emptyList(); // 没有子节点,返回空列表 + } + + // 遍历所有子节点,递归设置其子节点 + children.parallelStream().forEach(child -> { + List grandChildren = buildTreeStructure(child.getId(), parentChildMap, nodeMap); + child.setChildren(grandChildren); // 设置当前节点的子节点列表 + child.setLeafFlag(grandChildren.isEmpty()); // 如果没有子节点则设置为叶子节点 + }); + + return children; + } + + @Override + public IPage queryPageList(LawsClub lawsClub, Integer pageNo, Integer pageSize, HttpServletRequest req) { + String parentId = req.getParameter("parentId"); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.and(wrapper -> + wrapper.eq(LawsClub::getParentId, parentId) + .or().eq(LawsClub::getId, parentId)); + if (StringUtils.isNotBlank(lawsClub.getClubName())) { + lambdaQueryWrapper.like(LawsClub::getClubName, lawsClub.getClubName()); + } + if (StringUtils.isNotBlank(lawsClub.getNodeType())) { + lambdaQueryWrapper.like(LawsClub::getNodeType, lawsClub.getNodeType()); + } + lambdaQueryWrapper.orderByDesc(LawsClub::getCreateTime); + // 查找 parentId 对应的所有子孙节点的 ID 列表 + Page page = new Page<>(pageNo, pageSize); + Page pageResult = page(page, lambdaQueryWrapper); + List records = pageResult.getRecords(); + for (LawsClub record : records) { + // 解密联系方式 + String contactNumber = record.getContactNumber(); + String encryptNumber = PasswordUtil.decrypt(contactNumber); + record.setContactNumber(encryptNumber); + } + pageResult.setRecords(records); + return pageResult; + } + + @Override + public Result addOrEdit(LawsClub lawsClub) { + if (Objects.isNull(lawsClub)) { + throw new JeroBootException(ResultCommon.PARAMETERS_CANNOT_BE_NULL); + } + if (StringUtils.isBlank(lawsClub.getNodeType())) { + throw new JeroBootException(ResultCommon.EMPTY_COMMON, "nodeType"); + } + if (StringUtils.isBlank(lawsClub.getClubName())) { + throw new JeroBootException(ResultCommon.EMPTY_COMMON, "clubName"); + } + List lawsClubJoinTeamList = lawsClub.getLawsClubJoinTeamList(); + List lawsClubPayments = lawsClub.getLawsClubPayments(); + List lawsClubMeetings = lawsClub.getLawsClubMeetings(); + List lawsClubResearchInformations = lawsClub.getLawsClubResearchInformations(); + List lawsClubWorkingGroupFiles = lawsClub.getLawsClubWorkingGroupFiles(); + String rsaPublicKey = lawsClub.getRsaPublicKey(); // 公钥 + String rsaPrivateKey = String.valueOf(redisUtil.get(rsaPublicKey)); + if (StringUtils.isNotBlank(lawsClub.getContactNumber())){ + String contactNumber = CommonUtils.decryptBtRsaPriKey(lawsClub.getContactNumber(), rsaPrivateKey); // 解密 + String encrypt = PasswordUtil.encrypt(contactNumber); + lawsClub.setContactNumber(encrypt); + } + if (StringUtils.isNotBlank(lawsClub.getId())) { + // 修改社团管理表 + updateById(lawsClub); + // 清空关联表的相关数据 + clearAssociationTable(lawsClub.getId()); + } else { + // 新增 + save(lawsClub); + } + saveAssociationTable(lawsClub,lawsClubJoinTeamList,lawsClubPayments,lawsClubMeetings,lawsClubResearchInformations,lawsClubWorkingGroupFiles); + return Result.OK(ResultCommon.OK); + } + + private void saveAssociationTable(LawsClub lawsClub, List lawsClubJoinTeamList, + List lawsClubPayments, List lawsClubMeetings, + List lawsClubResearchInformations, + List lawsClubWorkingGroupFiles) { + // 将数据新增到相关的关联表 + if (!CollectionUtils.isEmpty(lawsClubJoinTeamList)) { + for (LawsClubJoinTeam lawsClubJoinTeam : lawsClubJoinTeamList) { + lawsClubJoinTeam.setClubId(lawsClub.getId()); + } + lawsClubJoinTeamService.saveBatch(lawsClubJoinTeamList); + } + if (!CollectionUtils.isEmpty(lawsClubPayments)) { + for (LawsClubPayment lawsClubPayment : lawsClubPayments) { + lawsClubPayment.setClubId(lawsClub.getId()); + } + lawsClubPaymentService.saveBatch(lawsClubPayments); + } + if (!CollectionUtils.isEmpty(lawsClubMeetings)) { + for (LawsClubMeeting lawsClubMeeting : lawsClubMeetings) { + lawsClubMeeting.setClubId(lawsClub.getId()); + lawsClubMeetingService.saveBatch(lawsClubMeetings); + // 会议成员 + List meetingMemberList = lawsClubMeeting.getMeetingMemberList(); + if (!CollectionUtils.isEmpty(meetingMemberList)) { + for (LawsClubMeetingMember lawsClubMeetingMember : meetingMemberList) { + lawsClubMeetingMember.setMeetingId(lawsClubMeeting.getId()); + } + lawsClubMeetingMemberService.saveBatch(meetingMemberList); + } + } + } + if (!CollectionUtils.isEmpty(lawsClubResearchInformations)) { + for (LawsClubResearchInformation lawsClubResearchInformation : lawsClubResearchInformations) { + lawsClubResearchInformation.setClubId(lawsClub.getId()); + } + lawsClubResearchInformationService.saveBatch(lawsClubResearchInformations); + } + if (!CollectionUtils.isEmpty(lawsClubWorkingGroupFiles)) { + for (LawsClubWorkingGroupFile lawsClubWorkingGroupFile : lawsClubWorkingGroupFiles) { + lawsClubWorkingGroupFile.setClubId(lawsClub.getId()); + } + lawsClubWorkingGroupFileService.saveBatch(lawsClubWorkingGroupFiles); + } + } + + private void clearAssociationTable(String clubId) { + // 入团信息表 + LambdaQueryWrapper teamWrapper = new LambdaQueryWrapper<>(); + teamWrapper.eq(LawsClubJoinTeam::getClubId, clubId); + lawsClubJoinTeamService.remove(teamWrapper); + // 支付信息表 + LambdaQueryWrapper paymentWrapper = new LambdaQueryWrapper<>(); + paymentWrapper.eq(LawsClubPayment::getClubId, clubId); + lawsClubPaymentService.remove(paymentWrapper); + // 参会信息表 + LambdaQueryWrapper meetingWrapper = new LambdaQueryWrapper<>(); + meetingWrapper.eq(LawsClubMeeting::getClubId, clubId); + List list = lawsClubMeetingService.list(meetingWrapper); + lawsClubMeetingService.remove(meetingWrapper); + List ids = list.stream().map(LawsClubMeeting::getId).collect(Collectors.toList()); + // 参会人员信息 + if (!CollectionUtils.isEmpty(ids)) { + LambdaQueryWrapper meetingMemberWrapper = new LambdaQueryWrapper<>(); + meetingMemberWrapper.in(LawsClubMeetingMember::getMeetingId, ids); + lawsClubMeetingMemberService.remove(meetingMemberWrapper); + } + // 工作组资料表 + LambdaQueryWrapper fileWrapper = new LambdaQueryWrapper<>(); + fileWrapper.eq(LawsClubWorkingGroupFile::getClubId, clubId); + lawsClubWorkingGroupFileService.remove(fileWrapper); + // 征集调研信息表 + LambdaQueryWrapper reSearchWrapper = new LambdaQueryWrapper<>(); + reSearchWrapper.eq(LawsClubResearchInformation::getClubId, clubId); + lawsClubResearchInformationService.remove(reSearchWrapper); + } + + @Override + public Result queryOne(String id) { + // 先根据id查出社团管理的相关数据 + LawsClub lawsClub = getById(id); + if (StringUtils.isNotBlank(lawsClub.getContactNumber())) { + String contactNumber = lawsClub.getContactNumber(); + String encryptNumber = PasswordUtil.decrypt(contactNumber); + lawsClub.setContactNumber(encryptNumber); + } + if (Objects.isNull(lawsClub)) { + throw new JeroBootException(ResultCommon.PARAMETERS_CANNOT_BE_NULL); + } + String clubId = lawsClub.getId(); + // 查出几张关联表的数据 + List joinTeamList = lawsClubJoinTeamService.list(new LambdaQueryWrapper().eq(LawsClubJoinTeam::getClubId, clubId)); + for (LawsClubJoinTeam lawsClubJoinTeam : joinTeamList) { + SysUser user1 = sysUserService.getById(lawsClubJoinTeam.getLeadId()); + SysUser user2 = sysUserService.getById(lawsClubJoinTeam.getProposerId()); + SysDepart depart = sysDepartService.getById(lawsClubJoinTeam.getDepartId()); + lawsClubJoinTeam.setLeadIdText(user1!= null ? user1.getRealname() : null); + lawsClubJoinTeam.setDepartText(depart!= null ? depart.getDepartName() : null); + lawsClubJoinTeam.setProposerText(user2 != null ? user2.getRealname() : null); + } + List paymentList = lawsClubPaymentService.list(new LambdaQueryWrapper().eq(LawsClubPayment::getClubId, clubId)); + List meetingList = lawsClubMeetingService.list(new LambdaQueryWrapper().eq(LawsClubMeeting::getClubId, clubId)); + for (LawsClubMeeting lawsClubMeeting : meetingList) { + List memberList = lawsClubMeetingMemberService.list(new LambdaQueryWrapper().eq(LawsClubMeetingMember::getMeetingId, lawsClubMeeting.getId())); + lawsClubMeeting.setMeetingMemberList(memberList); + } + List workingGroupFileList = lawsClubWorkingGroupFileService.list(new LambdaQueryWrapper().eq(LawsClubWorkingGroupFile::getClubId, clubId)); + List researchInformationList = lawsClubResearchInformationService.list(new LambdaQueryWrapper().eq(LawsClubResearchInformation::getClubId, clubId)); + lawsClub.setLawsClubJoinTeamList(joinTeamList); + lawsClub.setLawsClubPayments(paymentList); + lawsClub.setLawsClubMeetings(meetingList); + lawsClub.setLawsClubWorkingGroupFiles(workingGroupFileList); + lawsClub.setLawsClubResearchInformations(researchInformationList); + return Result.OK(lawsClub); + } + + @Override + public Result delete(String id) { + if(StringUtils.isBlank(id)){ + return Result.error(ResultCommon.PLEASE_SELECT_DATA); + } + List list = list(new LambdaQueryWrapper().eq(LawsClub::getParentId, id)); + if (!CollectionUtils.isEmpty(list)) { + return Result.error(ResultCommon.NODE_EXIST_SUBSETS); + } + removeById(id); + clearAssociationTable(id); + return Result.OK(ResultCommon.OK); + } + + @Override + public ModelAndView exportAll(LawsClub lawsClub, HttpServletRequest request) { + // Step.1 组装查询条件 + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(lawsClub, request.getParameterMap()); + //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 excelList = list(queryWrapper); + for (LawsClub club : excelList) { + // 如果是根节点那么上级节点为空 + if ("Part".equals(club.getParentId())) { + club.setParentId("无"); + } + // 解密联系方式 + if (StringUtils.isNotBlank(club.getContactNumber())) { + String contactNumber = club.getContactNumber(); + String encryptNumber = PasswordUtil.decrypt(contactNumber); + club.setContactNumber(encryptNumber); + } + List lawsClubJoinTeams = lawsClubJoinTeamService.list(new LambdaQueryWrapper().eq(LawsClubJoinTeam::getClubId, club.getId())); + List lawsClubMeetings = lawsClubMeetingService.list(new LambdaQueryWrapper().eq(LawsClubMeeting::getClubId, club.getId())); + List lawsClubResearchInformations = lawsClubResearchInformationService.list(new LambdaQueryWrapper().eq(LawsClubResearchInformation::getClubId, club.getId())); + club.setLawsClubMeetings(lawsClubMeetings); + club.setLawsClubJoinTeamList(lawsClubJoinTeams); + club.setLawsClubResearchInformations(lawsClubResearchInformations); + } + //导出文件名称 + mv.addObject(JeroController.FILE_NAME, "社团管理信息"); + mv.addObject(JeroController.CLASS, LawsClub.class); + ExportParams exportParams = new ExportParams("社团管理信息", "导出信息"); + mv.addObject(JeroController.PARAMS, exportParams); + mv.addObject(NormalExcelConstants.DATA_LIST, excelList); + return mv; + } + + @Override + public ModelAndView exportTeamXls(LawsClub lawsClub, HttpServletRequest request) { + // Step.1 组装查询条件 + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(lawsClub, request.getParameterMap()); + //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 list = list(queryWrapper); + List ids = list.stream().map(LawsClub::getId).collect(Collectors.toList()); + List excelList = new ArrayList<>(); + if (!CollectionUtils.isEmpty(ids)) { + excelList = lawsClubJoinTeamService.list(new LambdaQueryWrapper().in(LawsClubJoinTeam::getClubId, ids)); + } + //导出文件名称 + mv.addObject(JeroController.FILE_NAME, "入团信息"); + mv.addObject(JeroController.CLASS, LawsClubJoinTeam.class); + ExportParams exportParams = new ExportParams("入团信息", "导出信息"); + mv.addObject(JeroController.PARAMS, exportParams); + mv.addObject(NormalExcelConstants.DATA_LIST, excelList); + return mv; + } + + @Override + public ModelAndView exportMeetingXls(LawsClub lawsClub, HttpServletRequest request) { + // Step.1 组装查询条件 + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(lawsClub, request.getParameterMap()); + //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 list = list(queryWrapper); + List ids = list.stream().map(LawsClub::getId).collect(Collectors.toList()); + List recordList = new ArrayList<>(); + List excelList = new ArrayList<>(); + if (!CollectionUtils.isEmpty(ids)) { + recordList = lawsClubMeetingService.list(new LambdaQueryWrapper().in(LawsClubMeeting::getClubId, ids)); + for (LawsClubMeeting lawsClubMeeting : recordList) { + List memberList = lawsClubMeetingMemberService.list(new LambdaQueryWrapper().eq(LawsClubMeetingMember::getMeetingId, lawsClubMeeting.getId())); + lawsClubMeeting.setMeetingMemberList(memberList); + LawsClubMeetingExcel lawsClubMeetingExcel = new LawsClubMeetingExcel(); + BeanUtils.copyProperties(lawsClubMeeting, lawsClubMeetingExcel); + excelList.add(lawsClubMeetingExcel); + } + } + //导出文件名称 + mv.addObject(JeroController.FILE_NAME, "参会信息"); + mv.addObject(JeroController.CLASS, LawsClubMeetingExcel.class); + ExportParams exportParams = new ExportParams("参会信息", "导出信息"); + mv.addObject(JeroController.PARAMS, exportParams); + mv.addObject(NormalExcelConstants.DATA_LIST, excelList); + return mv; + } + + @Override + public ModelAndView exportresearchXls(LawsClub lawsClub, HttpServletRequest request) { + // Step.1 组装查询条件 + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(lawsClub, request.getParameterMap()); + //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 list = list(queryWrapper); + List ids = list.stream().map(LawsClub::getId).collect(Collectors.toList()); + List excelList = new ArrayList<>(); + if (!CollectionUtils.isEmpty(ids)) { + excelList = lawsClubResearchInformationService.list(new LambdaQueryWrapper().in(LawsClubResearchInformation::getClubId, ids)); + } + //导出文件名称 + mv.addObject(JeroController.FILE_NAME, "征集调研信息"); + mv.addObject(JeroController.CLASS, LawsClubResearchInformation.class); + ExportParams exportParams = new ExportParams("征集调研信息", "征集调研信息"); + mv.addObject(JeroController.PARAMS, exportParams); + mv.addObject(NormalExcelConstants.DATA_LIST, excelList); + return mv; + } + + + @Override + public ModelAndView exportTemplate(HttpServletRequest request) { + List excelList = new ArrayList<>(); + ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + mv.addObject(JeroController.FILE_NAME, "社团管理"); + mv.addObject(JeroController.CLASS, LawsClub.class); + ExportParams exportParams = new ExportParams("社团管理", "社团管理"); + mv.addObject(JeroController.PARAMS, exportParams); + mv.addObject(NormalExcelConstants.DATA_LIST, excelList); + return mv; + } + + @Override + public Result importExcel(HttpServletRequest request) { + return null; +// MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; +// List errorMessageList = new ArrayList<>(); +// List listSysDeparts = null; +// Map fileMap = multipartRequest.getFileMap(); +// for (Map.Entry entity : fileMap.entrySet()) { +// MultipartFile file = entity.getValue();// 获取上传文件对象 +// ImportParams params = new ImportParams(); +// params.setTitleRows(2); +// params.setHeadRows(1); +// params.setNeedSave(true); +// try { +// +// }catch (Exception e) { +// log.error(e.getMessage(),e); +// return Result.error("文件导入失败:"+e.getMessage()); +// } finally { +// try { +// file.getInputStream().close(); +// } catch (IOException e) { +// e.printStackTrace(); +// } +// } +// } + } +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubWorkingGroupFileServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubWorkingGroupFileServiceImpl.java new file mode 100644 index 00000000..3d0dfd1d --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsClubWorkingGroupFileServiceImpl.java @@ -0,0 +1,20 @@ +package com.jero.modules.laws.club.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.modules.laws.club.entity.LawsClubWorkingGroupFile; +import com.jero.modules.laws.club.mapper.LawsClubWorkingGroupFileMapper; +import com.jero.modules.laws.club.service.ILawsClubWorkingGroupFileService; +import org.springframework.stereotype.Service; + +/** + *

+ * 社团管理-工作组管理 服务实现类 + *

+ * + * @author sz + * @since 2024-08-29 + */ +@Service +public class LawsClubWorkingGroupFileServiceImpl extends ServiceImpl implements ILawsClubWorkingGroupFileService { + +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsCompanyStandardStatisticsServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsCompanyStandardStatisticsServiceImpl.java new file mode 100644 index 00000000..d5e478ea --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/club/service/impl/LawsCompanyStandardStatisticsServiceImpl.java @@ -0,0 +1,86 @@ +package com.jero.modules.laws.club.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +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; +import org.apache.commons.lang3.StringUtils; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +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; + +/** + *

+ * 公司参与标准统计表 服务实现类 + *

+ * + * @author sz + * @since 2024-08-28 + */ +@Service +public class LawsCompanyStandardStatisticsServiceImpl extends ServiceImpl implements ILawsCompanyStandardStatisticsService { + + @Override + public IPage queryPageList(LawsCompanyStandardStatistics lawsCompanyStandardStatistics, Integer pageNo, Integer pageSize, HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(lawsCompanyStandardStatistics, req.getParameterMap()); + Page page = new Page<>(pageNo, pageSize); + Page result = page(page, queryWrapper); + return result; + } + + @Override + public Result add(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())) { + throw new JeroBootException(ResultCommon.EMPTY_COMMON, "standardName"); + } + if (StringUtils.isBlank(lawsCompanyStandardStatistics.getStandardDrafter())) { + throw new JeroBootException(ResultCommon.EMPTY_COMMON, "standardDrafter"); + } + 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 queryWrapper = QueryGenerator.initQueryWrapper(lawsCompanyStandardStatistics, request.getParameterMap()); + //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 excelList = list(queryWrapper); + //导出文件名称 + mv.addObject(JeroController.FILE_NAME, "公司参与标准统计"); + mv.addObject(JeroController.CLASS, LawsCompanyStandardStatistics.class); + ExportParams exportParams = new ExportParams("公司参与标准统计", "导出信息"); + mv.addObject(JeroController.PARAMS, exportParams); + mv.addObject(NormalExcelConstants.DATA_LIST, excelList); + return mv; + } +} diff --git a/laws-modules/src/main/java/com/jero/modules/laws/vo/LawsClubMeetingExcel.java b/laws-modules/src/main/java/com/jero/modules/laws/vo/LawsClubMeetingExcel.java new file mode 100644 index 00000000..b6a91393 --- /dev/null +++ b/laws-modules/src/main/java/com/jero/modules/laws/vo/LawsClubMeetingExcel.java @@ -0,0 +1,67 @@ +package com.jero.modules.laws.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jero.modules.laws.club.entity.LawsClubMeetingMember; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecgframework.poi.excel.annotation.ExcelCollection; +import org.springframework.format.annotation.DateTimeFormat; +import java.util.Date; +import java.util.List; + +@Data +public class LawsClubMeetingExcel { + + @ApiModelProperty(value = "会议名称") + @Excel(name = "会议名称", width = 20) + private String meetingName; + + @ApiModelProperty(value = "会议日期") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @Excel(name = "会议日期", width = 20, format = "yyyy-MM-dd") + private Date meetingDate; + + @ApiModelProperty(value = "会议费用") + @Excel(name = "会议费用", width = 20) + private String meetingCost; + + @ApiModelProperty(value = "线下/线上地点") + @Excel(name = "线下/线上地点", width = 20) + private String meetingPlace; + + @ApiModelProperty(value = "计划完成日期") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") +// @Excel(name = "计划完成日期", width = 20, format = "yyyy-MM-dd") + private Date planCompletionDate; + + @ApiModelProperty(value = "通知人id") +// @Excel(name = "通知人", width = 20, dicText = "realname", dicCode = "id", dictTable = "sys_user") + private String notifierId; + + @ApiModelProperty(value = "通知部门id") +// @Excel(name = "部门名称", width = 20, dicText = "depart_name", dicCode = "id", dictTable = "sys_depart") + private String notifyDepartId; + + @ApiModelProperty(value = "通知部门专业模块") +// @Excel(name = "参会部门专业模块", width = 20, dicCode = "professional_module") + private String informSpecializedModule; + + @ApiModelProperty(value = "是否宣贯 0-否 1-是") +// @Excel(name = "参会部门专业模块", width = 20, dicCode = "yn") + private String isPublicize; + + @ApiModelProperty(value = "会议组织人") +// @Excel(name = "会议组织人", width = 20) + private String meetingOrganizer; + + @ApiModelProperty(value = "会议内容") +// @Excel(name = "会议内容", width = 20) + private String meetingContent; + + @ApiModelProperty(value = "会议成员列表") + @ExcelCollection(name = "会议成员列表") + private List meetingMemberList; +} diff --git a/laws-single-startup/src/main/resources/i18n/messages.properties b/laws-single-startup/src/main/resources/i18n/messages.properties index 95f0b7e5..46ee1ad6 100644 --- a/laws-single-startup/src/main/resources/i18n/messages.properties +++ b/laws-single-startup/src/main/resources/i18n/messages.properties @@ -88,4 +88,5 @@ split.import.data.error=\u5206\u89E3\u5355\u6587\u4EF6\u4E0A\u4F20\u6570\u636E\u file.empty.import.error=\u6587\u4EF6\u4E3A\u7A7A\uFF0C\u8BF7\u68C0\u67E5\u540E\u91CD\u8BD5 can_not_find_template_file=\u627E\u4E0D\u5230\u540D\u4E3A{0}\u7684\u6A21\u677F\u6587\u4EF6 can_not_find_field=\u627E\u4E0D\u5230\u540D\u4E3A{0}\u7684\u5B57\u6BB5 -tree.node.exists=\u5DF2\u5B58\u5728\u540D\u4E3A"{0}"\u7684\u8282\u70B9" \ No newline at end of file +tree.node.exists=\u5DF2\u5B58\u5728\u540D\u4E3A"{0}"\u7684\u8282\u70B9" +node.exist.subsets=\u5f53\u524d\u8282\u70b9\u4e0b\u5b58\u5728\u5b50\u96c6 \ No newline at end of file diff --git a/laws-single-startup/src/main/resources/i18n/messages_en.properties b/laws-single-startup/src/main/resources/i18n/messages_en.properties index be794411..f5910915 100644 --- a/laws-single-startup/src/main/resources/i18n/messages_en.properties +++ b/laws-single-startup/src/main/resources/i18n/messages_en.properties @@ -108,3 +108,4 @@ can_not_find_field=Can not find field {0} tag.add.error.1=The attribute name is too long tree.node.exists=Name {0} tree node exists data.mismatch={0} Data mismatch +node.exist.subsets=Node exist subsets diff --git a/laws-single-startup/src/main/resources/i18n/messages_zh.properties b/laws-single-startup/src/main/resources/i18n/messages_zh.properties index e55cb37a..53229af9 100644 --- a/laws-single-startup/src/main/resources/i18n/messages_zh.properties +++ b/laws-single-startup/src/main/resources/i18n/messages_zh.properties @@ -107,3 +107,4 @@ can_not_find_field=\u627E\u4E0D\u5230\u540D\u4E3A{0}\u7684\u5B57\u6BB5 tag.add.error.1=\u5C5E\u6027\u540D\u79F0\u592A\u957F tree.node.exists=\u5DF2\u5B58\u5728\u540D\u4E3A"{0}"\u7684\u8282\u70B9" data.mismatch={0}\u6570\u636E\u4E0D\u5339\u914D +node.exist.subsets=\u5f53\u524d\u8282\u70b9\u4e0b\u5b58\u5728\u5b50\u96c6