ZQN
2024-08-15 2562d6ce39aa405514c9e22ff0237f3f145040b6
project-admin/src/main/java/com/project/admin/controller/enforce/EnforceOrderController.java
@@ -4,17 +4,28 @@
import com.project.common.annotation.RepeatSubmit;
import com.project.common.core.controller.BaseController;
import com.project.common.core.domain.AjaxResult;
import com.project.common.core.domain.entity.SysDept;
import com.project.common.core.domain.entity.SysUser;
import com.project.common.core.page.TableDataInfo;
import com.project.common.enums.BusinessType;
import com.project.common.utils.SecurityUtils;
import com.project.common.utils.StringUtils;
import com.project.common.utils.poi.ExcelUtil;
import com.project.enforce.domain.bo.editBo.EnforceOrderBo;
import com.project.enforce.domain.bo.editBo.OrderComplaintBo;
import com.project.enforce.domain.bo.editBo.OrderResultBo;
import com.project.enforce.domain.bo.queryBo.EnforceOrderQueryBo;
import com.project.enforce.domain.bo.queryBo.OrderCheckedQueryBo;
import com.project.enforce.domain.vo.EnforceOrderVo;
import com.project.enforce.domain.vo.OrderNodeVo;
import com.project.enforce.service.IEnforceOrderService;
import com.project.system.service.ISysDeptService;
import com.project.system.service.ISysUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
@@ -32,18 +43,48 @@
public class EnforceOrderController extends BaseController {
    private final IEnforceOrderService iEnforceOrderService;
    private final ISysUserService userService;
    private final ISysDeptService deptService;
    @ApiOperation("获取同行人")
    @GetMapping("/peerList")
    @Cacheable(value = "sysUser:peerList")
    public AjaxResult peerList(String nickName, String deptId)
    {
        List<SysUser> list = userService.list(userService.lq()
                .ne(SysUser::getUserType,"02")
                .ne(SysUser::getUserName,"admin")
                .ne(SysUser::getUserId, SecurityUtils.getUserId())
                .like(StringUtils.isNotEmpty(nickName), SysUser::getNickName,nickName)
                .eq(deptId!=null, SysUser::getDeptId, deptId)
        );
        list.forEach(user->{
            SysDept sysDept = deptService.selectDeptById(user.getDeptId());
            sysDept.setDeptName(deptService.getDeptAllName(sysDept.getDeptId()));
            user.setDept(sysDept);
        });
        return AjaxResult.success(list);
    }
    @ApiOperation("信息公式列表")
    @GetMapping("/showList")
    public TableDataInfo showList()
    @ApiOperation("列表——无特殊查询")
    @GetMapping("/commonList")
    public TableDataInfo commonList(EnforceOrderQueryBo bo)
    {
        startPage();
        List<EnforceOrderVo> list = iEnforceOrderService.showList();
        List<EnforceOrderVo> list = iEnforceOrderService.queryCommonList(bo);
        return getDataTable(list);
    }
    @ApiOperation("执法单列表")
    @ApiOperation("列表——企业执法记录")
    @GetMapping("/companyList")
    public TableDataInfo companyList(EnforceOrderQueryBo bo)
    {
        startPage();
        List<EnforceOrderVo> list = iEnforceOrderService.queryCompanyList(bo);
        return getDataTable(list);
    }
    @ApiOperation("列表——执法申请单")
    @GetMapping("/list")
    public TableDataInfo list(EnforceOrderQueryBo bo)
    {
@@ -52,8 +93,26 @@
        return getDataTable(list);
    }
    @ApiOperation("列表——执法执行单")
    @GetMapping("/execute/list")
    public TableDataInfo executeList(EnforceOrderQueryBo bo)
    {
        startPage();
        List<EnforceOrderVo> list = iEnforceOrderService.getExecuteList(bo);
        return getDataTable(list);
    }
    @ApiOperation("审批人列表")
    @ApiOperation("列表——信息公式")
    @GetMapping("/showList")
    public TableDataInfo showList()
    {
        startPage();
        List<EnforceOrderVo> list = iEnforceOrderService.showList();
        return getDataTable(list);
    }
    @ApiOperation("列表——审批人待审批")
    @GetMapping("/checkList")
    public TableDataInfo checkList(EnforceOrderQueryBo bo)
    {
@@ -62,6 +121,63 @@
        return getDataTable(list);
    }
    @ApiOperation("列表——审批记录")
    @GetMapping("/checkedList")
    public TableDataInfo checkedList(OrderCheckedQueryBo bo)
    {
        startPage();
        List<EnforceOrderVo> list = iEnforceOrderService.queryCheckedList(bo);
        return getDataTable(list);
    }
    @ApiOperation("执法人扫码")
    @GetMapping("/getScanList")
    public AjaxResult scan(@RequestParam("companyCode") String companyCode)
    {
        List<EnforceOrderVo> list = iEnforceOrderService.getScanList(companyCode);
        return AjaxResult.success(list);
    }
    @ApiOperation("确认执法")
    @Log(title = "执法队员确认执法", businessType = BusinessType.UPDATE)
    @PostMapping("/doScanOrder/{orderId}")
    public AjaxResult doScanOrder(@PathVariable("orderId") Long orderId)
    {
        return toAjax(iEnforceOrderService.doScanOrder(orderId));
    }
    @ApiOperation("上报结果")
    @Log(title = "执法队员上报结果", businessType = BusinessType.UPDATE)
    @PostMapping("/doResultOrder")
    public AjaxResult doResultOrder(@RequestBody OrderResultBo resultBo)
    {
        return AjaxResult.success(iEnforceOrderService.doResultOrder(resultBo));
    }
    @ApiOperation("执法单节点")
    @GetMapping("/orderNodeList")
    public AjaxResult orderNodeList(@RequestParam("orderId") Long orderId)
    {
        List<OrderNodeVo> list = iEnforceOrderService.orderNodeList(orderId);
        return AjaxResult.success(list);
    }
    @ApiOperation("执法单投诉")
    @Log(title = "执法单投诉", businessType = BusinessType.UPDATE)
    @PostMapping("/orderComplaint")
    public AjaxResult orderComplaint(@RequestBody OrderComplaintBo bo)
    {
        return toAjax(iEnforceOrderService.orderComplaint(bo));
    }
    @ApiOperation("执法单投诉节点")
    @GetMapping("/orderComplaintNodeList")
    public AjaxResult orderComplaintNodeList(@RequestParam("orderId") Long orderId)
    {
        List<OrderNodeVo> list = iEnforceOrderService.orderComplaintNodeList(orderId);
        return AjaxResult.success(list);
    }
    @ApiOperation("导出执法单列表")
    //@PreAuthorize("@ss.hasPermi('enforce:order:export')")
@@ -82,6 +198,7 @@
    {
        return AjaxResult.success(iEnforceOrderService.queryById(orderId));
    }
    @ApiOperation("新增执法单")
@@ -115,4 +232,15 @@
    {
        return toAjax(iEnforceOrderService.deleteByIds(Arrays.asList(orderIds)) ? 1 : 0);
    }
    @ApiOperation("企业确认——执法单")
    //@PreAuthorize("@ss.hasPermi('enforce:order:remove')")
    @Log(title = "企业确认执法单" , businessType = BusinessType.UPDATE)
    @PostMapping("/confirm/{orderId}")
    @RepeatSubmit
    public AjaxResult remove(@PathVariable Long orderId)
    {
        return toAjax(iEnforceOrderService.confirm(orderId) ? 1 : 0);
    }
}