Newer
Older
casic-metering / casic-metering-api / src / main / java / com / casic / missiles / controller / SystemController.java
wangpeng on 29 Nov 2022 2 KB xxljob
package com.casic.missiles.controller;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.casic.missiles.core.base.controller.ExportController;
import com.casic.missiles.core.page.PageFactory;
import com.casic.missiles.core.page.PageInfoBT;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.system.NoticeListRequest;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.model.SystemNotice;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.ISystemNoticeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.validation.Valid;

/**
 * @Description: 系统管理-常用工具、通知公告
 * @Author: wangpeng
 * @Date: 2022/11/21 20:31
 */
@Api(tags = "系统管理接口")
@Controller
@RequestMapping("/system")
public class SystemController extends ExportController {
    @Autowired
    private ISystemNoticeService noticeService;

    /**
     * 签章列表
     */

    /**
     * 签章新建、编辑、删除
     */

    /**
     * 签章详情
     */


    /**
     * 签名列表
     */

    /**
     * 签名新建、编辑、删除
     */

    /**
     * 签名详情
     */


    /**
     * 原始记录模板列表
     */

    /**
     * 原始记录模板新建、编辑、删除
     */

    /**
     * 原始记录模板下载
     */

    /**
     * 原始记录模板详情
     */


    /**
     * 证书报告模板列表
     */

    /**
     * 证书报告模板新建、编辑、删除
     */

    /**
     * 证书报告模板下载
     */

    /**
     * 证书报告模板详情
     */

    /**
     * 通知公告
     */
    @ApiOperation("通知公告列表/详情")
    @PostMapping("/notice/listPage")
    @ResponseBody
    public ReturnDTO<PageInfoBT<SystemNotice>> supplierListPage(@RequestBody NoticeListRequest request) {
        Page<SystemNotice> page = PageFactory.defaultPage();
        return ReturnUtil.success(super.packForBT(noticeService.listPage(page, request)));
    }

    @ApiOperation("通知公告新建")
    @PostMapping("/notice/add")
    @ResponseBody
    public ReturnDTO supplierAdd(@RequestBody @Valid SystemNotice systemNotice, BindingResult bindingResult) {
        if(bindingResult.hasErrors()){
            throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
        }
        return noticeService.addNotice(systemNotice);
    }

}