add: 内外部会议模块增删改查

This commit is contained in:
wxyclub
2023-10-13 15:34:17 +08:00
parent 85ca3d86b2
commit 5cb5921142
9 changed files with 539 additions and 0 deletions
@@ -0,0 +1,61 @@
package com.adc.da.slrs.InsideOntSideMeeting.controller;
import com.adc.da.base.web.BaseController;
import com.adc.da.http.ResponseMessage;
import com.adc.da.http.Result;
import com.adc.da.slrs.InsideOntSideMeeting.entity.InsideOutSideMeeting;
import com.adc.da.slrs.InsideOntSideMeeting.entity.InsideOutsideMeetingVO;
import com.adc.da.slrs.InsideOntSideMeeting.service.InsideOutsideMeetingService;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/**
* @author tjzdw
* @description
* @date 2023/10/10
*/
@RestController
@RequestMapping("/${restPath}/lawss/insideOutsideMeeting")
public class InsideOutSideMeetingController extends BaseController<InsideOutSideMeeting> {
@Resource
private InsideOutsideMeetingService meetingService;
@ApiOperation(value = "根据会议ID查询会议信息")
@GetMapping("/getMeetingInfo")
public ResponseMessage<InsideOutSideMeeting> getMeetingInfo(String meetingId){
if (StringUtils.isBlank(meetingId)) {
return Result.error("会议ID为空!");
}
InsideOutSideMeeting meetingInfo = meetingService.getMeetingInfo(meetingId);
return Result.success(meetingInfo);
}
@ApiOperation(value = "分页查询")
@GetMapping("/page")
public ResponseMessage<List<InsideOutSideMeeting>> page(InsideOutsideMeetingVO insideOutsideMeetingVO) {
List<InsideOutSideMeeting> rows = meetingService.queryByPage(insideOutsideMeetingVO);
return Result.success(rows);
}
@ApiOperation(value = "新增内外部会议")
@PostMapping(value = "/addMeetingInfo", consumes = "application/json;charset=UTF-8")
public ResponseMessage<?> create(@RequestBody InsideOutSideMeeting insideOutSideMeeting) throws Exception {
meetingService.addMeetingInfo(insideOutSideMeeting);
return Result.success();
}
@ApiOperation("根据会议ID删除会议")
@DeleteMapping("/deleteMeetingInfo")
public ResponseMessage<?> deleteMeeting(String meetingId) {
if (StringUtils.isBlank(meetingId)) {
return Result.error("删除失败,会议ID为空");
}
meetingService.deleteMeetingById(meetingId);
return Result.success();
}
}
@@ -0,0 +1,24 @@
package com.adc.da.slrs.InsideOntSideMeeting.dao;
import com.adc.da.slrs.InsideOntSideMeeting.entity.InsideOutSideMeeting;
import com.adc.da.slrs.InsideOntSideMeeting.entity.InsideOutsideMeetingVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* @author tjzdw
* @description
* @date 2023/10/10
*/
@Mapper
public interface InsideOutsideMeetingDao extends BaseMapper<InsideOutSideMeeting> {
Integer queryByPageCount(InsideOutsideMeetingVO page);
List<InsideOutSideMeeting> queryByPage(InsideOutsideMeetingVO page);
}
@@ -0,0 +1,16 @@
package com.adc.da.slrs.InsideOntSideMeeting.dao;
import com.adc.da.slrs.InsideOntSideMeeting.entity.MeetingTopic;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* @author tjzdw
* @description
* @date 2023/10/13
*/
@Mapper
public interface MeetingTopicDao extends BaseMapper<MeetingTopic> {
}
@@ -0,0 +1,90 @@
package com.adc.da.slrs.InsideOntSideMeeting.entity;
import com.adc.da.base.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
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 java.util.Date;
import java.util.List;
/**
* @author tjzdw
* @description
* @date 2023/10/10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="inside_outside_meeting表对象", description="内外部会议")
public class InsideOutSideMeeting extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键")
@TableId("ID")
private String id;
@ApiModelProperty(value = "会议名称")
@TableField("MEETING_NAME")
private String meetingName;
@ApiModelProperty(value = "课题名称,可通过调取功能从政策课题模块中获取")
@TableField("TOPIC_NAME")
private String topicName;
@ApiModelProperty(value = "会议主办单位")
@TableField("MEETING_ORGANIZER")
private String meetingOrganizer;
@ApiModelProperty(value = "会议时间")
@TableField("MEETING_TIME")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
private Date meetingTime;
@ApiModelProperty(value = "会议地点")
@TableField("MEETING_ADDRESS")
private String meetingAddress;
@ApiModelProperty(value = "参会人员")
@TableField("PARTICIPANTS")
private String participants;
@ApiModelProperty(value = "会议纪要")
@TableField("MEETING_MINUTES")
private String meetingMinutes;
@ApiModelProperty(value = "会议主要内容")
@TableField("MEETING_CONTENT")
private String meetingContent;
@ApiModelProperty(value = "1级会议类别")
@TableField("FIRST_MEETING_TYPE")
private String firstMeetingType;
@ApiModelProperty(value = "2级会议类别")
@TableField("SECOND_MEETING_TYPE")
private String secondMeetingType;
@ApiModelProperty(value = "会议议题")
private List<MeetingTopic> meetingTopicList;
@ApiModelProperty(value = "逻辑删除,0可用,1不可用")
@TableField("VALID_FLAG")
private Integer validFlag;
@ApiModelProperty(value = "创建时间")
@TableField("CREATE_TIME")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty(value = "修改时间")
@TableField("MODIFY_TIME")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date modifyTime;
}
@@ -0,0 +1,69 @@
package com.adc.da.slrs.InsideOntSideMeeting.entity;
import com.adc.da.base.page.BasePage;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.util.List;
/**
* @author tjzdw
* @description
* @date 2023/10/12
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class InsideOutsideMeetingVO extends BasePage {
private String id;
private String meetingName;
private String topicName;
private String meetingOrganizer;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
private Date meetingTime;
private String meetingAddress;
private String participants;
private List<String> participantsList;
private String meetingMinutes;
private String meetingContent;
private String firstMeetingType;
private String secondMeetingType;
private List<MeetingTopic> meetingTopicList;
private String agendaName;
private String agendaMaterials;
private String reporter;
private String reportingUnit;
private String agendaContent;
private Integer validFlag;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date creationTime;
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date modifyTime;
private String sortField;
private String sortMode;
private String meetingTimeOperator = "=";
}
@@ -0,0 +1,67 @@
package com.adc.da.slrs.InsideOntSideMeeting.entity;
import com.adc.da.base.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
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 java.util.Date;
/**
* @author tjzdw
* @description
* @date 2023/10/12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="meeting_topic表对象", description="会议议题表")
public class MeetingTopic extends BaseEntity {
@ApiModelProperty(value = "主键")
@TableId("ID")
private String id;
@ApiModelProperty(value = "内外部会议ID")
@TableField("MEETING_ID")
private String meetingId;
@ApiModelProperty(value = "议题名称")
@TableField("AGENDA_NAME")
private String agendaName;
@ApiModelProperty(value = "议题材料")
@TableField("AGENDA_MATERIALS")
private String agendaMaterials;
@ApiModelProperty(value = "汇报人")
@TableField("REPORTER")
private String reporter;
@ApiModelProperty(value = "汇报单位")
@TableField("REPORTING_UNIT")
private String reportingUnit;
@ApiModelProperty(value = "议题主要内容")
@TableField("AGENDA_CONTENT")
private String agendaContent;
@ApiModelProperty(value = "逻辑删除,0可用,1不可用")
@TableField("VALID_FLAG")
private Integer validFlag;
@ApiModelProperty(value = "创建时间")
@TableField("CREATE_TIME")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty(value = "修改时间")
@TableField("MODIFY_TIME")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date modifyTime;
}
@@ -0,0 +1,23 @@
package com.adc.da.slrs.InsideOntSideMeeting.service;
import com.adc.da.slrs.InsideOntSideMeeting.entity.InsideOutSideMeeting;
import com.adc.da.slrs.InsideOntSideMeeting.entity.InsideOutsideMeetingVO;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @author tjzdw
* @description
* @date 2023/10/10
*/
public interface InsideOutsideMeetingService extends IService<InsideOutSideMeeting> {
Integer addMeetingInfo(InsideOutSideMeeting insideOutSideMeeting);
List<InsideOutSideMeeting> queryByPage(InsideOutsideMeetingVO page);
InsideOutSideMeeting getMeetingInfo(String meetingId);
Integer deleteMeetingById(String meetingId);
}
@@ -0,0 +1,80 @@
package com.adc.da.slrs.InsideOntSideMeeting.service.impl;
import com.adc.da.slrs.InsideOntSideMeeting.dao.InsideOutsideMeetingDao;
import com.adc.da.slrs.InsideOntSideMeeting.dao.MeetingTopicDao;
import com.adc.da.slrs.InsideOntSideMeeting.entity.InsideOutSideMeeting;
import com.adc.da.slrs.InsideOntSideMeeting.entity.InsideOutsideMeetingVO;
import com.adc.da.slrs.InsideOntSideMeeting.entity.MeetingTopic;
import com.adc.da.slrs.InsideOntSideMeeting.service.InsideOutsideMeetingService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
/**
* @author tjzdw
* @description
* @date 2023/10/10
*/
@Service
public class InsideOutsideMeetingServiceImpl extends ServiceImpl<InsideOutsideMeetingDao, InsideOutSideMeeting> implements InsideOutsideMeetingService {
@Resource
private MeetingTopicDao meetingTopicDao;
@Override
public InsideOutSideMeeting getMeetingInfo(String meetingId){
InsideOutSideMeeting insideOutSideMeeting = this.baseMapper.selectById(meetingId);
if (insideOutSideMeeting != null) {
LambdaQueryWrapper<MeetingTopic> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(MeetingTopic::getMeetingId, meetingId);
List<MeetingTopic> meetingTopicList = meetingTopicDao.selectList(wrapper);
insideOutSideMeeting.setMeetingTopicList(meetingTopicList);
}
return insideOutSideMeeting;
}
@Transactional
@Override
public Integer deleteMeetingById(String meetingId) {
int deleteById = this.baseMapper.deleteById(meetingId);
if (deleteById > 0) {
meetingTopicDao.deleteById(meetingId);
}
return deleteById;
}
@Transactional
@Override
public Integer addMeetingInfo(InsideOutSideMeeting insideOutSideMeeting) {
insideOutSideMeeting.setCreateTime(new Date());
insideOutSideMeeting.setModifyTime(new Date());
insideOutSideMeeting.setValidFlag(0);
int insert = this.baseMapper.insert(insideOutSideMeeting);
if (!insideOutSideMeeting.getMeetingTopicList().isEmpty()) {
for (MeetingTopic meetingTopic : insideOutSideMeeting.getMeetingTopicList()) {
meetingTopic.setCreateTime(new Date());
meetingTopic.setModifyTime(new Date());
meetingTopic.setValidFlag(0);
meetingTopicDao.insert(meetingTopic);
}
}
return insert;
}
@Override
public List<InsideOutSideMeeting> queryByPage(InsideOutsideMeetingVO page){
if (StringUtils.isNotBlank(page.getParticipants())) {
page.setParticipantsList(Arrays.asList(page.getParticipants().split(",")));
}
Integer rowCount = this.baseMapper.queryByPageCount(page);
page.getPager().setRowCount(rowCount);
return this.baseMapper.queryByPage(page);
}
}