package com.xzx.gc.system.controller; import com.github.pagehelper.PageInfo; import com.xzx.gc.common.Result; import com.xzx.gc.common.annotations.PassToken; import com.xzx.gc.common.constant.Constants; import com.xzx.gc.common.dto.log.OperationAppLog; import com.xzx.gc.common.request.BaseController; import com.xzx.gc.common.utils.MqUtil; import com.xzx.gc.entity.CityPartner; import com.xzx.gc.entity.CoreUser; import com.xzx.gc.model.JsonResult; import com.xzx.gc.model.admin.SysNoticeModel; import com.xzx.gc.model.system.SysNoticeReq; import com.xzx.gc.model.system.SysNoticeVo; import com.xzx.gc.system.service.CityPartnerService; import com.xzx.gc.system.service.SysNoticeService; import com.xzx.gc.system.service.UserService; import com.xzx.gc.util.SessionUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.HashMap; import java.util.List; import java.util.Map; @Api(tags = "公告") @RestController public class SysNoticeController extends BaseController { @Autowired private SysNoticeService sysNoticeService; @Autowired private CityPartnerService cityPartnerService; @Autowired private SessionUtil platformService; @Autowired private MqUtil mqUtil; @Autowired private UserService userService; private static final String MODEL = "/admin/front/sysNotice"; @ApiOperation( value = "公告查询") @PostMapping("/sysNotice/query") @PassToken public Result> querySysNotice(HttpServletRequest request, @RequestBody SysNoticeReq SysNoticeReq) { Result result = new Result(); List list = sysNoticeService.getSysNoticeByType(SysNoticeReq); result.setData(list); return result; } @ApiOperation( value = "公告详情") @PostMapping("/sysNotice/detail") @PassToken public Result> querySysNoticeDetail(HttpServletRequest request, @RequestBody SysNoticeReq sysNoticeReq) { Result result = new Result(); if(sysNoticeReq.getNoticeId()==null){ return result; } SysNoticeVo SysNotice = sysNoticeService.getSysNoticeById(sysNoticeReq); result.setData(SysNotice); return result; } @ApiOperation( value = "新增反馈") @PostMapping("/sysNotice/add") public Result addSysNotice(HttpServletRequest request, @RequestBody SysNoticeReq sysNoticeReq) { Result result = new Result(); sysNoticeService.addSysNotice(sysNoticeReq); String mobilePhone = userService.findOtherByUserId(getUserId(request),0); OperationAppLog build = OperationAppLog.builder().appPrograme(getFrontClient(request)).opreateName(mobilePhone) .methodName(Constants.SYS_MODUL_NAME).operateAction("新增反馈-"+sysNoticeReq.getNoticeId()).build(); mqUtil.sendApp(build); return result; } @PostMapping(MODEL + "/queryNoticeList.json") @ResponseBody @ApiOperation(value = "意见反馈列表", notes = "test: 仅0有正确返回") public JsonResult> queryNoticeList(@RequestBody SysNoticeModel model) { CoreUser user = platformService.getCurrentUser(); CityPartner partner = cityPartnerService.queryById(user.getId()); if(null!=partner){ model.setPartnerId(partner.getId()+""); } PageInfo pageInfo =sysNoticeService.queryNoticeList(model); Map map = new HashMap<>(); map.put("data",pageInfo.getList()); map.put("count",pageInfo.getTotal()); map.put("code",0); return JsonResult.success(map); } // @ApiOperation( value = "更新公告") // @PostMapping("/update") // @PassToken // public Result update(HttpServletRequest request, @RequestBody SysNotice sysNotice) { // Result result = new Result(); // sysNoticeService.update(sysNotice); // return result; // } }