| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202 |
- package cn.com.goldenwater.dcproj.controller.meeting;
- import cn.com.goldenwater.dcproj.constValue.SmsCodeEnum;
- import cn.com.goldenwater.dcproj.model.AttMeetingInfo;
- import cn.com.goldenwater.dcproj.model.AttMeetingList;
- import cn.com.goldenwater.dcproj.model.BisInspAllRlationPers;
- import cn.com.goldenwater.dcproj.param.AttMeetingListParam;
- import cn.com.goldenwater.dcproj.service.AttMeetingInfoService;
- import cn.com.goldenwater.dcproj.service.AttMeetingListService;
- import cn.com.goldenwater.core.web.BaseController;
- import cn.com.goldenwater.core.web.BaseResponse;
- import cn.com.goldenwater.dcproj.service.BisInspAllRlationPersService;
- import cn.com.goldenwater.id.util.UuidUtil;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import io.swagger.annotations.ApiParam;
- import org.apache.commons.lang3.StringUtils;
- import com.github.pagehelper.PageInfo;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.util.Assert;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RequestBody;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.RestController;
- import javax.servlet.http.HttpServletRequest;
- import java.util.*;
- /**
- * @author lune
- * @date 2019-7-9
- */
- @Api(value = "ATT 参会人员名单管理", tags = "ATT 参会人员名单管理")
- @RestController
- @RequestMapping("/att/meeting/list")
- public class AttMeetingListController extends BaseController {
- private Logger logger = LoggerFactory.getLogger(getClass());
- @Autowired
- private AttMeetingListService attMeetingListService;
- @Autowired
- public BisInspAllRlationPersService allRlationPersService;
- @Autowired
- public AttMeetingInfoService attMeetingInfoService;
- @ApiOperation(value = "添加/修改参会人员名单")
- @RequestMapping(value = "", method = RequestMethod.POST)
- public BaseResponse<AttMeetingList> insert(@ApiParam(name = "attMeetingList", value = "AttMeetingList", required = true) @RequestBody AttMeetingList attMeetingList) {
- if (StringUtils.isBlank(attMeetingList.getId())) {
- String uuid = UuidUtil.uuid(); // 生成uuid
- attMeetingList.setId(uuid);
- attMeetingListService.insert(attMeetingList);
- } else {
- attMeetingListService.update(attMeetingList);
- }
- return buildSuccessResponse(attMeetingList);
- }
- @ApiOperation(value = "根据ID删除参会人员名单")
- @RequestMapping(value = "/del/{id}", method = RequestMethod.GET)
- public BaseResponse delete(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) {
- int ret = attMeetingListService.delete(id);
- return buildSuccessResponse();
- }
- @ApiOperation(value = "邀请人员参加会议,选择当前系统用户")
- @RequestMapping(value = "/invite/{meetingId}", method = RequestMethod.POST)
- public BaseResponse invite(@ApiParam(name = "meetingId", value = "meetingId", required = true) @PathVariable String meetingId,
- @RequestBody List<BisInspAllRlationPers> allRlationPersList) {
- Assert.notNull(meetingId, "会议id为必填参数");
- Assert.notNull(allRlationPersList, "用户id为必填参数");
- List<AttMeetingList> notAttendList = new ArrayList<>();
- for (BisInspAllRlationPers person : allRlationPersList) {
- BisInspAllRlationPers allRlationPers = allRlationPersService.get(person.getGuid());
- if (allRlationPers == null) {
- continue;
- }
- notAttendList.add(attMeetingListService.addAttMeetingList(allRlationPers, meetingId, "2"));
- }
- return buildSuccessResponse(1003, "已邀请用户" + notAttendList.size() + "人", notAttendList);
- }
- @ApiOperation(value = "用户验证码登录")
- @RequestMapping(value = "/loginByCode", method = {RequestMethod.POST})
- public BaseResponse<Object> loginByCode(@RequestParam String phone, @RequestParam String code, @RequestParam String meetingId) {
- AttMeetingList meetingList = attMeetingListService.getAttmeetingList(phone, code, meetingId);
- if (meetingList == null) {
- return buildFailResponse(1001, "当前用户无权限参加该会议");
- }
- return buildSuccessResponse(1003, meetingList.getName() + "参加会议", meetingList);
- }
- @ApiOperation(value = "用户验证码登录并获取最新会议")
- @RequestMapping(value = "/loginByCodeNew", method = {RequestMethod.POST})
- public BaseResponse<Object> loginByCodeNew(@RequestParam String persName, @RequestParam String phone, @RequestParam String code) {
- if (!attMeetingListService.getAttmeeting(persName, phone, code)) {
- return buildFailResponse(1001, "验证失败");
- }
- //获取最新会议
- AttMeetingListParam attMeetingListParam = new AttMeetingListParam();
- attMeetingListParam.setName(persName);
- List<AttMeetingList> list = attMeetingListService.findList(attMeetingListParam);
- AttMeetingList attMeetingList = new AttMeetingList();
- if (list == null || list.size() == 0) {
- return buildFailResponse("系统中无该参会者记录,请联系管理员");
- } else {
- attMeetingList = list.get(0);
- attMeetingList.setMbleNum(phone);
- }
- AttMeetingInfo meetingInfo = attMeetingInfoService.findNearInfo();
- if (meetingInfo == null) {
- return buildFailResponse("无最新会议记录信息");
- }
- attMeetingList.setMbleNum(phone);
- attMeetingList.setSignState("1");
- attMeetingList.setSignTm(new Date());
- attMeetingListService.update(attMeetingList);
- Map<String, Object> objectMap = new HashMap<>(3);
- objectMap.put("meetingInfo", meetingInfo);
- objectMap.put("persId", attMeetingList.getId());
- objectMap.put("attMeetingList", attMeetingList);
- return buildSuccessResponse(objectMap);
- }
- @ApiOperation(value = "发送验证码")
- @RequestMapping(value = "/sendMessage", method = {RequestMethod.POST})
- public BaseResponse sendMessage(@RequestParam String phone, @RequestParam String persName) throws Exception {
- String resultCode = attMeetingListService.sendMessage(persName, phone);
- if (SmsCodeEnum.SUCCESS.getKey().equals(resultCode)) {
- return buildSuccessResponse(SmsCodeEnum.SUCCESS.getDesc());
- }
- if (SmsCodeEnum.NO_USER.getKey().equals(resultCode)) {
- return buildFailResponse(10002, SmsCodeEnum.NO_USER.getDesc());
- }
- return buildFailResponse(10001, SmsCodeEnum.ERROR.getDesc());
- }
- @ApiOperation(value = "用户扫码登录")
- @RequestMapping(value = "/{meetingId}/{persId}", method = RequestMethod.GET)
- public BaseResponse<AttMeetingList> getBy(@ApiParam(name = "meetingId", value = "meetingId", required = true) @PathVariable String meetingId,
- @ApiParam(name = "persId", value = "persId", required = true) @PathVariable String persId, HttpServletRequest request) {
- Assert.notNull(meetingId, "会议id为必填参数");
- Assert.notNull(persId, "用户id为必填参数");
- if (StringUtils.isBlank(persId)) {
- persId = request.getHeader("persId");
- if (StringUtils.isBlank(persId)) {
- return buildFailResponse(1001, "获取用户失败");
- }
- }
- BisInspAllRlationPers allRlationPers = allRlationPersService.get(persId);
- if (allRlationPers == null) {
- return buildFailResponse(1001, "未找到当前用户信息");
- }
- AttMeetingListParam attMeetingListParam = new AttMeetingListParam();
- attMeetingListParam.setMeetingId(meetingId);
- attMeetingListParam.setMbleNum(allRlationPers.getMobilenumb());
- AttMeetingList attMeetingList = attMeetingListService.getBy(attMeetingListParam);
- if (attMeetingList != null) {
- attMeetingList.setSignState("1");
- attMeetingListService.update(attMeetingList);
- return buildSuccessResponse(100, "已经参加会议", attMeetingList);
- } else {
- attMeetingListService.addAttMeetingList(allRlationPers, meetingId, "1");
- }
- return buildSuccessResponse(101, allRlationPers.getPersName() + "加入会议", attMeetingList);
- }
- @ApiOperation(value = "根据ID获取参会人员名单(单表)")
- @RequestMapping(value = "/{id}", method = RequestMethod.GET)
- public BaseResponse<AttMeetingList> get(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) {
- AttMeetingList attMeetingList = attMeetingListService.get(id);
- return buildSuccessResponse(attMeetingList);
- }
- @ApiOperation(value = "获取参会人员名单(列表所有)")
- @RequestMapping(value = "/list", method = RequestMethod.POST)
- public BaseResponse<List<AttMeetingList>> list(@ApiParam(name = "attMeetingListParam", value = "attMeetingListParam", required = true) @RequestBody AttMeetingListParam attMeetingListParam) {
- List<AttMeetingList> attMeetingListList = attMeetingListService.findList(attMeetingListParam);
- return buildSuccessResponse(attMeetingListList);
- }
- @ApiOperation(value = "获取参会人员名单(列表--分页)")
- @RequestMapping(value = "/page", method = RequestMethod.POST)
- public BaseResponse<PageInfo<AttMeetingList>> page(@ApiParam(name = "attMeetingListParam", value = "attMeetingListParam", required = true) @RequestBody AttMeetingListParam attMeetingListParam) {
- PageInfo<AttMeetingList> attMeetingListList = attMeetingListService.findPageInfo(attMeetingListParam);
- return buildSuccessResponse(attMeetingListList);
- }
- }
|