package com.ghsc.partybuild.controller; import com.github.pagehelper.PageInfo; import com.ghsc.partybuild.controller.jsonmodel.RequsetData; import com.ghsc.partybuild.model.*; import com.ghsc.partybuild.service.*; import com.ghsc.partybuild.util.MapUtils; import com.ghsc.partybuild.vo.FqtgVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.List; import java.util.Map; import java.util.UUID; @RestController @RequestMapping(value = "/api/Fqtg") public class FqtgController { @Autowired ZgygService zgygService; @Autowired FqtgService fqtgService; @Autowired private UserService userService; @Autowired private MapUtils mapUtils; @Autowired private DictionaryService dictionaryService; @Autowired private DzzglyService dzzglyService; @Resource private RoleService roleService; @Autowired private MessageService messageService; @ResponseBody @GetMapping("/gettgList") public RequsetData>> gettgList(@RequestParam(required = false) String dzzdm, @RequestParam(required = false) String title, @RequestParam(required = false) Short topicValue, @RequestParam(required = false) String author, @RequestParam(required = false) String createUserId, @RequestParam(required = false) Short status, @RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false)String zzfbType) { RequsetData>> res = new RequsetData<>(); PageInfo> list = fqtgService.selectList(dzzdm,title, topicValue, author, userService.getLoginUser().getUserid(),status, pageIndex, pageSize,zzfbType); res.setItem(list); return res; } @ResponseBody @GetMapping("/getDwYgqkList") public RequsetData>> getDwYgqkList(@RequestParam(required = false) String leader, @RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize) { RequsetData>> res = new RequsetData<>(); PageInfo> list = fqtgService.selectDwYgqkList(leader, pageIndex, pageSize); res.setItem(list); return res; } @ResponseBody @RequestMapping("/getFormModel") public RequsetData> getFormModel(@RequestBody FqtgVo model,String zzfbType) { RequsetData> res = new RequsetData<>(); if (model.getFqtgid() == null) { model.setFqtgid(UUID.randomUUID().toString()); Map map = mapUtils.objectToMap(model); ZzDzzgly gly = dzzglyService.selectDzzglyByLoader(model.getCreateuserid()); if (gly != null) { map.put("dzzdm", gly.getDzzdm()); // map.put("dwName", gly.getDwName()); } res.setItem(map); } else { FqtgVo vo = fqtgService.selectFqtg(model.getFqtgid(),zzfbType); Map map = mapUtils.objectToMap(vo); res.setItem(map); } return res; } @ResponseBody @RequestMapping("/save") public RequsetData save(@RequestBody TgFqtg model) { RequsetData res = fqtgService.save(model); if (res.getSuccess()) { //1.如果是选择的是具体约稿,需要消除待办信息 if (model.getYgqkid() != null) { fqtgService.removeJsdwMessage(model.getYgqkid(), model.getCreateuserid()); } //3.如果是退回,需要消除退回待办{ if (model.getStatus() == 2) { messageService.deleteMessageByBusinessId(model.getFqtgid(), 7); } //2.发送待办信息给集团负责人 List users = roleService.getRoleUsersByRoleName("学院投稿负责人"); for (CfUserrolesKey it : users) { String title = "您有<" + model.getTitle() + ">投稿需要您审核"; messageService.iSendMessage(title, title, 7, "fqtgapprove", model.getFqtgid(), model.getCreateuserid(), it.getUserid()); } } return res; } @ResponseBody @GetMapping("/approve") public RequsetData approve(@RequestParam("fqtgid") String fqtgid, @RequestParam("formUser") String formUser, @RequestParam("topicvalue") Short topicvalue, @RequestParam("status") int status,@RequestParam(required = false) String zzfbType) { TgFqtg fqtg = new TgFqtg(); fqtg.setFqtgid(fqtgid); fqtg.setStatus(status); fqtg.setTopicvalue(topicvalue.intValue()); RequsetData res = fqtgService.update(fqtg); if (res.getSuccess()) { //1.需要消除待办信息 messageService.deleteMessageByBusinessId(fqtgid, 7); //2.如果是退回,则需要发送待办给发起投稿人 if (status == 2) { FqtgVo fqtgVo = fqtgService.selectFqtg(fqtgid,zzfbType); String title = "您有<" + fqtgVo.getTitle() + ">投稿被退回,请重新提交"; messageService.iSendMessage(title, title, 7, "fqtgedit", fqtgVo.getFqtgid(), formUser, fqtgVo.getCreateuserid()); } } return res; } }