Administrator
2023-08-18 ac2ab42d45dd7fba0fcc3506c40cea34039f6e9a
ard-work/src/main/java/com/ruoyi/app/patrolplan/controller/ArdAppPatrolplanController.java
@@ -1,16 +1,28 @@
package com.ruoyi.app.patrolplan.controller;
import java.text.ParseException;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.ruoyi.alarmpoints.well.domain.ArdAlarmpointsWell;
import com.ruoyi.alarmpoints.well.service.IArdAlarmpointsWellService;
import com.ruoyi.app.patrolplan.domain.ArdAppPatrolpoint;
import com.ruoyi.app.patrolplan.domain.ArdAppPatrolpointRecord;
import com.ruoyi.app.patrolplan.domain.param.*;
import com.ruoyi.app.patrolplan.service.IArdAppPatrolpointRecordService;
import com.ruoyi.app.patrolplan.service.IArdAppPatrolpointService;
import com.ruoyi.app.patrolplan.service.IArdAppPatroluserService;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.system.service.ISysDeptService;
import com.ruoyi.system.service.ISysUserService;
import com.ruoyi.utils.result.Results;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -54,26 +66,46 @@
    @Resource
    IArdAppPatroluserService ardAppPatroluserService;
    @Resource
    ISysUserService sysUserService;
    @Resource
    ISysDeptService sysDeptService;
    @Resource
    IArdAlarmpointsWellService wellService;
    @Resource
    IArdAppPatrolpointRecordService recordService;
    /**
     * 查询app巡检计划列表
     * 管理端--查询app巡检计划列表
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:list')")
    @GetMapping("/list")
    @ApiOperation("查询全部巡检列表及搜索筛选")
    @ApiOperation("管理端--查询全部巡检列表及搜索筛选")
    public Results list(ArdAppPatrolplan ardAppPatrolplan)
    {
        String userId = SecurityUtils.getUserId();
        ardAppPatrolplan.setUserId(userId);
        if(ardAppPatrolplan.getPageNum()==null || ardAppPatrolplan.getPageNum() == 0){
            ardAppPatrolplan.setPageNum(1);
        }
        if(ardAppPatrolplan.getPageSize()==null || ardAppPatrolplan.getPageSize() == 0){
            ardAppPatrolplan.setPageSize(10);
        }
        PageHelper.startPage(ardAppPatrolplan.getPageNum(),ardAppPatrolplan.getPageSize());
        List<ArdAppPatrolplan> list = ardAppPatrolplanService.selectArdAppPatrolplanList(ardAppPatrolplan);
        return Results.succeed(new PageInfo<>(list));
    }
    /**
     * 导出app巡检计划列表
     * 管理端--导出app巡检计划列表
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:export')")
    @Log(title = "app巡检计划", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    @ApiOperation("导出全部巡检列表")
    @ApiOperation("管理端--导出全部巡检列表")
    public void export(HttpServletResponse response, ArdAppPatrolplan ardAppPatrolplan)
    {
        List<ArdAppPatrolplan> list = ardAppPatrolplanService.selectArdAppPatrolplanList(ardAppPatrolplan);
@@ -95,21 +127,21 @@
    /**
     * 根据巡检ID查询巡检人
     */
    /*@PreAuthorize("@ss.hasPermi('app:appPatrolplan:userByPlanId')")
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:userByPlanId')")
    @GetMapping(value = "userByPlanId/{id}")
    @ApiOperation("根据巡检ID查询巡检人")
    @ApiOperation("根据巡检ID查询巡检人员")
    public Results userByPlanId(@PathVariable String id)
    {
        return ardAppPatroluserService.userByPlanId(id);
    }*/
    }
    /**
     * 删除app巡检计划
     * 管理端--删除app巡检计划
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:remove')")
    @Log(title = "app巡检计划", businessType = BusinessType.DELETE)
    @DeleteMapping("/{id}")
    @ApiOperation("删除app巡检计划")
    @ApiOperation("管理端--删除app巡检计划")
    //public Results remove(@PathVariable String id)
    public AjaxResult remove(@PathVariable String id)
    {
@@ -117,38 +149,171 @@
        return toAjax(ardAppPatrolplanService.deleteArdApp(id));
    }
    /**
     * 新增app巡检计划
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:add')")
    @Log(title = "app巡检计划", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ArdAppPatrolplan ardAppPatrolplan)
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:allPlanUser')")
    @PostMapping("allPlanUser")
    @ApiOperation("查询权限下全部人员和兴趣点")
    public Results allPlanUser()
    {
        return toAjax(ardAppPatrolplanService.insertArdAppPatrolplan(ardAppPatrolplan));
        JSONObject jsonObject = new JSONObject();
        String userId = SecurityUtils.getUserId();
        //根据userId查询部门Id
        SysUser sysUser = sysUserService.selectUserById(userId);
        //根据当前deptId或者当前及所属下级的所有deptId
        List<Long> deptList = sysDeptService.deptIdBySub(sysUser.getDeptId());
        //根据deptId列表获取到所有用户
        List<SysUser> sysUserList = sysUserService.userByDeptList(deptList);
        jsonObject.put("user",sysUserList);
        //根据deptId列表获取到所有兴趣点
        List<ArdAlarmpointsWell> wellList = wellService.wellByDeptList(deptList);
        jsonObject.put("well",wellList);
        return Results.succeed(jsonObject);
    }
    /**
     * 修改app巡检计划
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:edit')")
    @Log(title = "app巡检计划", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody ArdAppPatrolplan ardAppPatrolplan)
    {
        return toAjax(ardAppPatrolplanService.updateArdAppPatrolplan(ardAppPatrolplan));
    }
    /**
     * 新增app巡检计划及人员点位
     * 管理端--新增app巡检计划及人员点位
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:insertArdAppPatrolplan')")
    @Log(title = "app巡检计划", businessType = BusinessType.INSERT)
    @PostMapping("/insertArdAppPatrolplan")
    @ApiOperation("新增app巡检计划及人员点位")
    @ApiOperation("管理端--新增app巡检计划及人员点位")
    public AjaxResult addArdAppPatrolplan(@RequestBody Map<String,Object> para)
    {
        return toAjax(ardAppPatrolplanService.insertArdAppPatrolplan(para));
    }
    /**
     *  管理端--查询单条数据
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:oneById')")
    @PostMapping("/oneById/{id}")
    @ApiOperation("管理端--查询单条数据")
    public Results oneById(@PathVariable String id)
    {
        return ardAppPatrolplanService.oneById(id);
    }
    /**
     * 管理端--修改app巡检计划
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:edit')")
    @Log(title = "app巡检计划", businessType = BusinessType.UPDATE)
    @ApiOperation("管理端--修改单条数据")
    @PutMapping("upd")
    public Results edit(@RequestBody Map<String,Object> para)
    {
        return ardAppPatrolplanService.updateArdAppPatrolplan(para);
    }
    /**
     * 巡检打卡
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:record')")
    @ApiOperation("巡检打卡")
    @PostMapping("record")
    public Results edit(@RequestBody ArdAppPatrolpointRecord ardAppPatrolpointRecord) {
        return recordService.record(ardAppPatrolpointRecord);
    }
    /**
     * 管理端--巡检日历
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:recordMonth')")
    @ApiOperation("管理端--巡检日历")
    @PostMapping("recordMonth")
    public Results recordMonth(@RequestBody RecordMonthParam recordMonthParam) throws ParseException {
        return recordService.recordMonth(recordMonthParam);
    }
    /**
     * 管理端--点击日历获取该记录下人员打卡记录
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:recordDetails')")
    @ApiOperation("管理端--点击日历获取该记录下人员打卡记录")
    @PostMapping("recordDetails")
    public Results recordDetails(@RequestBody RecordDetailsParam recordDetailsParam) throws ParseException {
        return recordService.recordDetails(recordDetailsParam);
    }
    /**
     * 单人详情
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:recordSolo')")
    @ApiOperation("单人详情")
    @PostMapping("recordSolo")
    public Results recordSolo(@RequestBody RecordSoloParam recordSoloParam) throws ParseException {
        return recordService.recordSolo(recordSoloParam);
    }
    /**
     * 单兵端--查询app巡检计划列表
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:executeList')")
    @GetMapping("/executeList")
    @ApiOperation("单兵端--查询该用户下所有执行计划及搜索筛选")
    public Results executeList(ArdAppPatrolplan ardAppPatrolplan)
    {
        String userId = SecurityUtils.getUserId();
        ardAppPatrolplan.setUserId(userId);
        if(ardAppPatrolplan.getPageNum()==null || ardAppPatrolplan.getPageNum() == 0){
            ardAppPatrolplan.setPageNum(1);
        }
        if(ardAppPatrolplan.getPageSize()==null || ardAppPatrolplan.getPageSize() == 0){
            ardAppPatrolplan.setPageSize(10);
        }
        PageHelper.startPage(ardAppPatrolplan.getPageNum(),ardAppPatrolplan.getPageSize());
        List<ArdAppPatrolplan> list = ardAppPatrolplanService.executeList(ardAppPatrolplan);
        return Results.succeed(new PageInfo<>(list));
    }
    /**
     *  单兵端--查询单条数据
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:executeOneById')")
    @PostMapping("/executeOneById/{id}")
    @ApiOperation("单兵端--查询单条数据")
    public Results executeOneById(@PathVariable String id)
    {
        return ardAppPatrolplanService.executeOneById(id);
    }
    /**
     * 单兵端--巡检日历
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:executeMonth')")
    @ApiOperation("单兵端--巡检日历")
    @PostMapping("executeMonth")
    public Results executeMonth(@RequestBody RecordMonthExParam recordMonthExParam) throws ParseException {
        return recordService.executeMonth(recordMonthExParam);
    }
    /**
     * 单兵端--点击日历获取该记录下人员打卡记录
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:executeDetails')")
    @ApiOperation("单兵端--点击日历获取该人员下所有地点打卡记录")
    @PostMapping("executeDetails")
    public Results executeDetails(@RequestBody RecordDetailsExParam recordDetailsExParam) throws ParseException {
        return recordService.executeDetails(recordDetailsExParam);
    }
    /**
     * 单兵端--单人详情
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:executeSolo')")
//    @ApiOperation("单兵端--单人详情")
    @PostMapping("executeSolo")
    public Results executeSolo(@RequestBody RecordSoloExParam recordSoloExParam) throws ParseException {
        return recordService.executeSolo(recordSoloExParam);
    }
    /**
     * 单兵端--打卡前
     */
    @PreAuthorize("@ss.hasPermi('app:appPatrolplan:recordBefore')")
    @ApiOperation("单兵端--打卡前")
    @PostMapping("recordBefore")
    public Results recordBefore(@RequestBody RecordBeforeParam recordBeforeParam) throws ParseException {
        return recordService.recordBefore(recordBeforeParam);
    }
}