Browse Source

城管系统接口

zhj 2 years ago
parent
commit
28e5dce8ff
23 changed files with 646 additions and 12 deletions
  1. 160 10
      src/main/java/com/welampiot/controller/CityAdminCaseController.java
  2. 19 0
      src/main/java/com/welampiot/dao/CityAdminCaseImageDao.java
  3. 11 0
      src/main/java/com/welampiot/dao/CityAdminCaseInfoDao.java
  4. 21 0
      src/main/java/com/welampiot/dao/CityAdminCaseLogDao.java
  5. 1 0
      src/main/java/com/welampiot/dao/UserDao.java
  6. 32 0
      src/main/java/com/welampiot/dto/CityAdminCaseImageDTO.java
  7. 6 1
      src/main/java/com/welampiot/dto/CityAdminCaseInfoDTO.java
  8. 46 0
      src/main/java/com/welampiot/dto/CityAdminCaseLogDTO.java
  9. 18 0
      src/main/java/com/welampiot/service/CityAdminCaseImageService.java
  10. 10 0
      src/main/java/com/welampiot/service/CityAdminCaseInfoService.java
  11. 20 0
      src/main/java/com/welampiot/service/CityAdminCaseLogService.java
  12. 1 0
      src/main/java/com/welampiot/service/UserService.java
  13. 30 0
      src/main/java/com/welampiot/service/impl/CityAdminCaseImageServiceImpl.java
  14. 22 0
      src/main/java/com/welampiot/service/impl/CityAdminCaseInfoServiceImpl.java
  15. 58 0
      src/main/java/com/welampiot/service/impl/CityAdminCaseLogServiceImpl.java
  16. 5 0
      src/main/java/com/welampiot/service/impl/UserServiceImpl.java
  17. 23 0
      src/main/java/com/welampiot/vo/CityAdminCaseImageVO.java
  18. 8 1
      src/main/java/com/welampiot/vo/CityAdminCaseInfoVO.java
  19. 23 0
      src/main/java/com/welampiot/vo/CityAdminCaseLogVO.java
  20. 12 0
      src/main/resources/mapper/CityAdminCaseImageMapper.xml
  21. 52 0
      src/main/resources/mapper/CityAdminCaseInfoMapper.xml
  22. 62 0
      src/main/resources/mapper/CityAdminCaseLogMapper.xml
  23. 6 0
      src/main/resources/mapper/UserMapper.xml

+ 160 - 10
src/main/java/com/welampiot/controller/CityAdminCaseController.java

@@ -2,16 +2,10 @@ package com.welampiot.controller;
 
 import com.welampiot.common.BaseResult;
 import com.welampiot.common.InterfaceResultEnum;
-import com.welampiot.dto.CityAdminAreaDTO;
-import com.welampiot.dto.CityAdminCaseInfoDTO;
-import com.welampiot.dto.CityAdminCaseItemDTO;
-import com.welampiot.service.CityAdminAreaService;
-import com.welampiot.service.CityAdminCaseInfoService;
-import com.welampiot.service.CityAdminCaseItemService;
+import com.welampiot.dto.*;
+import com.welampiot.service.*;
 import com.welampiot.utils.ToolUtils;
-import com.welampiot.vo.CityAdminAreaVO;
-import com.welampiot.vo.CityAdminCaseInfoVO;
-import com.welampiot.vo.CityAdminCaseItemVO;
+import com.welampiot.vo.*;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.CrossOrigin;
@@ -19,6 +13,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.text.SimpleDateFormat;
 import java.util.List;
 
 /**
@@ -42,6 +37,12 @@ public class CityAdminCaseController {
     private CityAdminCaseItemService cityAdminCaseItemService;
     @Autowired
     private CityAdminAreaService cityAdminAreaService;
+    @Autowired
+    private UserService userService;
+    @Autowired
+    private CityAdminCaseLogService cityAdminCaseLogService;
+    @Autowired
+    private CityAdminCaseImageService cityAdminCaseImageService;
 
     /**
      * 城管系统添加编辑案件
@@ -140,10 +141,159 @@ public class CityAdminCaseController {
         if (vo.getVersion() == null) vo.setVersion(0);
         Integer version = vo.getVersion();
         if (vo.getAreaId() == null || vo.getAreaId() == 0)
-            return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR, vo.getVersion());
+            return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR, version);
         List<CityAdminAreaDTO> list = cityAdminAreaService.getCityAdminStreetNavList(vo.getAreaId());
         CityAdminAreaVO cityAdminAreaVO = new CityAdminAreaVO();
         cityAdminAreaVO.setList(list);
         return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,cityAdminAreaVO);
     }
+
+    /**
+     * 城管系统案件详情
+     * @param vo id
+     * @return 案件详情
+     */
+    @RequestMapping(value = "/caseInfo", method = RequestMethod.POST)
+    public BaseResult<?> caseInfo(CityAdminCaseInfoVO vo) {
+        if (vo.getVersion() == null) vo.setVersion(0);
+        Integer version = vo.getVersion();
+        Integer id = vo.getId();
+        if (id == null || id == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR, version);
+        CityAdminCaseInfoDTO dto = cityAdminCaseInfoService.getCityAdminCaseInfoDetailsById(id);
+        if (dto == null) return toolUtils.response(InterfaceResultEnum.PARAM_FAIL,version);
+        CityAdminCaseInfoVO cityAdminCaseInfoVO = new CityAdminCaseInfoVO();
+        BeanUtils.copyProperties(dto,cityAdminCaseInfoVO);
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,cityAdminCaseInfoVO);
+    }
+
+    /**
+     * 城管系统案件信息列表
+     * @param vo 案件状态(0 新建,1 立案,2 处置中,3 处置结束,4 待复核,5 已复核,6 结案)
+     * @return 案件信息列表
+     */
+    @RequestMapping(value = "/caseList", method = RequestMethod.POST)
+    public BaseResult<?> caseList(CityAdminCaseInfoVO vo) {
+        if (vo.getVersion() == null) vo.setVersion(0);
+        Integer version = vo.getVersion();
+        Integer status = vo.getStatus();
+        List<CityAdminCaseInfoDTO> list = cityAdminCaseInfoService.getCityAdminCaseInfoList(status);
+        CityAdminCaseInfoVO cityAdminCaseInfoVO = new CityAdminCaseInfoVO();
+        cityAdminCaseInfoVO.setList(list);
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,cityAdminCaseInfoVO);
+    }
+
+    /**
+     * 城管系统设置案件状态
+     * @param vo status
+     * @return 设置案件状态
+     */
+    @RequestMapping(value = "/setStatus", method = RequestMethod.POST)
+    public BaseResult<?> setStatus(CityAdminCaseInfoVO vo) {
+        if (vo.getVersion() == null) vo.setVersion(0);
+        Integer version = vo.getVersion();
+        String username = vo.getUsername();
+        if (username == null || username.isEmpty()) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR, version);
+        Integer status = vo.getStatus();
+        String caseId = vo.getCaseId();
+        if (status == null || caseId == null || caseId.isEmpty()) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+
+        Integer cityAdminId = vo.getCityAdminId();
+        Integer seatsId1 = vo.getSeatsId1();
+        Integer inspectorId = vo.getInspectorId();
+        Integer seatsId2 = vo.getSeatsId2();
+        if (status == 2 && (cityAdminId == null || cityAdminId == 0)) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        if (status == 3 && (seatsId1 == null || seatsId1 == 0)) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        if (status == 4 && (inspectorId == null || inspectorId == 0)) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        if (status == 5 && (seatsId2 == null || seatsId2 == 0)) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+
+        CityAdminCaseInfoDTO dto = new CityAdminCaseInfoDTO();
+        BeanUtils.copyProperties(vo,dto);
+        String[] ids = caseId.split(",");
+        UserDTO userDTO = userService.queryUserIdByUsername(username);
+        if (userDTO == null) return toolUtils.response(InterfaceResultEnum.PARAM_FAIL,version);
+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        CityAdminCaseLogDTO logDTO = new CityAdminCaseLogDTO();
+        BeanUtils.copyProperties(vo,logDTO);
+        logDTO.setUserid(userDTO.getId());
+        for (String s : ids) {
+            Integer id = Integer.valueOf(s);
+            dto.setId(id);
+            cityAdminCaseInfoService.updateCityAdminCaseStatus(dto);
+            long timeMillis = System.currentTimeMillis();
+            String createTime = format.format(timeMillis);
+            logDTO.setCaseId(id);
+            logDTO.setCreateTime(createTime);
+            cityAdminCaseLogService.addCityAdminCaseLogData(logDTO);
+        }
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
+    }
+
+    /**
+     * 城管系统取消案件受理
+     * @param vo id
+     * @return 取消案件受理
+     */
+    @RequestMapping(value = "/cancelCase", method = RequestMethod.POST)
+    public BaseResult<?> cancelCase(CityAdminCaseInfoVO vo) {
+        if (vo.getVersion() == null) vo.setVersion(0);
+        Integer version = vo.getVersion();
+        Integer id = vo.getId();
+        if (id == null || id == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        CityAdminCaseInfoDTO dto = new CityAdminCaseInfoDTO();
+        dto.setId(id);
+        dto.setVoild(1);
+        cityAdminCaseInfoService.updateCaseIsCancel(dto);
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
+    }
+
+    /**
+     * 城管系统账户下拉
+     * @param vo 账户类型(1 巡查员,2 坐席,3 城管或相关单位,4 网络巡查员)
+     * @return 账户下拉
+     */
+    @RequestMapping(value = "/userNav", method = RequestMethod.POST)
+    public BaseResult<?> userNav(CityAdminCaseInfoVO vo) {
+        if (vo.getVersion() == null) vo.setVersion(0);
+        Integer version = vo.getVersion();
+        Integer type = vo.getType();
+        if (type == null) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        List<UserDTO> cityAdminUserNavList = userService.getCityAdminUserNavList(type);
+        UserVO userVO = new UserVO();
+        userVO.setList(cityAdminUserNavList);
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,userVO);
+    }
+
+    /**
+     * 城管系统案件处理日志
+     * @param vo 账户类型(1 巡查员,2 坐席,3 城管或相关单位,4 网络巡查员)
+     * @return 案件处理日志
+     */
+    @RequestMapping(value = "/caseLog", method = RequestMethod.POST)
+    public BaseResult<?> caseLog(CityAdminCaseInfoVO vo) {
+        if (vo.getVersion() == null) vo.setVersion(0);
+        Integer version = vo.getVersion();
+        Integer id = vo.getId();
+        if (id == null || id == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        List<CityAdminCaseLogDTO> list = cityAdminCaseLogService.getCaseLogListByCaseId(id);
+        CityAdminCaseLogVO cityAdminCaseLogVO = new CityAdminCaseLogVO();
+        cityAdminCaseLogVO.setList(list);
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,cityAdminCaseLogVO);
+    }
+
+    /**
+     * 城管系统图片信息列表
+     * @param vo 案件id
+     * @return 图片信息列表
+     */
+    @RequestMapping(value = "/caseImageList", method = RequestMethod.POST)
+    public BaseResult<?> caseImageList(CityAdminCaseInfoVO vo) {
+        if (vo.getVersion() == null) vo.setVersion(0);
+        Integer version = vo.getVersion();
+        Integer id = vo.getId();
+        if (id == null || id == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
+        List<CityAdminCaseImageDTO> list = cityAdminCaseImageService.getCityAdminCaseImageByCaseId(id);
+        CityAdminCaseImageVO cityAdminCaseImageVO = new CityAdminCaseImageVO();
+        cityAdminCaseImageVO.setList(list);
+        return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,cityAdminCaseImageVO);
+    }
 }

+ 19 - 0
src/main/java/com/welampiot/dao/CityAdminCaseImageDao.java

@@ -0,0 +1,19 @@
+package com.welampiot.dao;
+
+import com.welampiot.dto.CityAdminCaseImageDTO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * ClassName: CityAdminCaseImageDao
+ * Package: com.welampiot.dao
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 19:02
+ * @Version: v1.0
+ */
+public interface CityAdminCaseImageDao {
+    List<CityAdminCaseImageDTO> getCityAdminCaseImageByCaseId(@Param("caseId") Integer caseId);
+}

+ 11 - 0
src/main/java/com/welampiot/dao/CityAdminCaseInfoDao.java

@@ -1,6 +1,9 @@
 package com.welampiot.dao;
 
 import com.welampiot.dto.CityAdminCaseInfoDTO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * ClassName: CityAdminCaseInfoDao
@@ -15,4 +18,12 @@ public interface CityAdminCaseInfoDao {
     void addCityAdminCaseInfoData(CityAdminCaseInfoDTO dto);
 
     void updateCityAdminCaseInfoData(CityAdminCaseInfoDTO dto);
+
+    CityAdminCaseInfoDTO getCityAdminCaseInfoDetailsById(@Param("id") Integer id);
+
+    List<CityAdminCaseInfoDTO> getCityAdminCaseInfoList(@Param("status") Integer status);
+
+    void updateCityAdminCaseStatus(CityAdminCaseInfoDTO dto);
+
+    void updateCaseIsCancel(CityAdminCaseInfoDTO dto);
 }

+ 21 - 0
src/main/java/com/welampiot/dao/CityAdminCaseLogDao.java

@@ -0,0 +1,21 @@
+package com.welampiot.dao;
+
+import com.welampiot.dto.CityAdminCaseLogDTO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * ClassName: CityAdminCaseLogDao
+ * Package: com.welampiot.dao
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 16:04
+ * @Version: v1.0
+ */
+public interface CityAdminCaseLogDao {
+    void addCityAdminCaseLogData(CityAdminCaseLogDTO dto);
+
+    List<CityAdminCaseLogDTO> getCaseLogListByCaseId(@Param("caseId") Integer caseId);
+}

+ 1 - 0
src/main/java/com/welampiot/dao/UserDao.java

@@ -39,4 +39,5 @@ public interface UserDao {
     UserDTO getZoneListByUserid(@Param("id") Integer id);
     List<UserDTO> getReviewerList();
     Integer getUserOnlineCount();
+    List<UserDTO> getCityAdminUserNavList(@Param("cityRole") Integer cityRole);
 }

+ 32 - 0
src/main/java/com/welampiot/dto/CityAdminCaseImageDTO.java

@@ -0,0 +1,32 @@
+package com.welampiot.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * ClassName: CityAdminCaseImageDTO
+ * Package: com.welampiot.dto
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 18:56
+ * @Version: v1.0
+ */
+@Data
+public class CityAdminCaseImageDTO implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private Integer id;
+
+    private Integer caseId; // 案件id
+
+    private String image; // 图片地址
+
+    private Integer userid; // 上传人员id
+
+    private String createTime; // 创建时间
+
+    private String name;
+    private String username;
+}

+ 6 - 1
src/main/java/com/welampiot/dto/CityAdminCaseInfoDTO.java

@@ -64,7 +64,7 @@ public class CityAdminCaseInfoDTO implements Serializable {
     private Integer status;
 
     /** 0 正常,1 取消 **/
-    private Integer voiId;
+    private Integer voild;
 
     private Integer cityAdminId; // 转批的城管账号id
 
@@ -79,4 +79,9 @@ public class CityAdminCaseInfoDTO implements Serializable {
     private Integer sax; // 举报人性别(0 女,1 男)
 
     private String startDate; // 案件发生时间
+
+    private String area;
+    private String street;
+    private String caseBigName;
+    private String caseSmallName;
 }

+ 46 - 0
src/main/java/com/welampiot/dto/CityAdminCaseLogDTO.java

@@ -0,0 +1,46 @@
+package com.welampiot.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * ClassName: CityAdminCaseLogDTO
+ * Package: com.welampiot.dto
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 15:51
+ * @Version: v1.0
+ */
+@Data
+public class CityAdminCaseLogDTO implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private Integer id;
+
+    private String name;
+    private String inspector;
+    private String seats1;
+    private String seats2;
+    private String cityAdmin;
+    private String content;
+
+    private Integer caseId;
+
+    private Integer status;
+
+    private Integer cityAdminId; // 转批的城管账号id
+
+    private Integer seatsId1; // 处置完转坐席id
+
+    private Integer seatsId2; // 复核完转坐席id
+
+    private Integer inspectorId; // 转批巡查员id
+
+    private Integer supervisorId; // 监督员id
+
+    private Integer userid; // 用户id
+
+    private String createTime; // 创建时间
+}

+ 18 - 0
src/main/java/com/welampiot/service/CityAdminCaseImageService.java

@@ -0,0 +1,18 @@
+package com.welampiot.service;
+
+import com.welampiot.dto.CityAdminCaseImageDTO;
+
+import java.util.List;
+
+/**
+ * ClassName: CityAdminCaseImageService
+ * Package: com.welampiot.service
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 19:03
+ * @Version: v1.0
+ */
+public interface CityAdminCaseImageService {
+    List<CityAdminCaseImageDTO> getCityAdminCaseImageByCaseId(Integer caseId);
+}

+ 10 - 0
src/main/java/com/welampiot/service/CityAdminCaseInfoService.java

@@ -2,6 +2,8 @@ package com.welampiot.service;
 
 import com.welampiot.dto.CityAdminCaseInfoDTO;
 
+import java.util.List;
+
 /**
  * ClassName: CityAdminCaseInfoService
  * Package: com.welampiot.service
@@ -15,4 +17,12 @@ public interface CityAdminCaseInfoService {
     void addCityAdminCaseInfoData(CityAdminCaseInfoDTO dto);
 
     void updateCityAdminCaseInfoData(CityAdminCaseInfoDTO dto);
+
+    CityAdminCaseInfoDTO getCityAdminCaseInfoDetailsById(Integer id);
+
+    List<CityAdminCaseInfoDTO> getCityAdminCaseInfoList(Integer status);
+
+    void updateCityAdminCaseStatus(CityAdminCaseInfoDTO dto);
+
+    void updateCaseIsCancel(CityAdminCaseInfoDTO dto);
 }

+ 20 - 0
src/main/java/com/welampiot/service/CityAdminCaseLogService.java

@@ -0,0 +1,20 @@
+package com.welampiot.service;
+
+import com.welampiot.dto.CityAdminCaseLogDTO;
+
+import java.util.List;
+
+/**
+ * ClassName: CityAdminCaseLogService
+ * Package: com.welampiot.service
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 16:04
+ * @Version: v1.0
+ */
+public interface CityAdminCaseLogService {
+    void addCityAdminCaseLogData(CityAdminCaseLogDTO dto);
+
+    List<CityAdminCaseLogDTO> getCaseLogListByCaseId(Integer caseId);
+}

+ 1 - 0
src/main/java/com/welampiot/service/UserService.java

@@ -38,4 +38,5 @@ public interface UserService {
     UserDTO getZoneListByUserid(Integer id);
     List<UserDTO> getReviewerList();
     Integer getUserOnlineCount();
+    List<UserDTO> getCityAdminUserNavList(Integer cityRole);
 }

+ 30 - 0
src/main/java/com/welampiot/service/impl/CityAdminCaseImageServiceImpl.java

@@ -0,0 +1,30 @@
+package com.welampiot.service.impl;
+
+import com.welampiot.dao.CityAdminCaseImageDao;
+import com.welampiot.dto.CityAdminCaseImageDTO;
+import com.welampiot.service.CityAdminCaseImageService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * ClassName: CityAdminCaseImageServiceImpl
+ * Package: com.welampiot.service.impl
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 19:04
+ * @Version: v1.0
+ */
+@Service
+public class CityAdminCaseImageServiceImpl implements CityAdminCaseImageService {
+
+    @Autowired
+    private CityAdminCaseImageDao cityAdminCaseImageDao;
+
+    @Override
+    public List<CityAdminCaseImageDTO> getCityAdminCaseImageByCaseId(Integer caseId) {
+        return cityAdminCaseImageDao.getCityAdminCaseImageByCaseId(caseId);
+    }
+}

+ 22 - 0
src/main/java/com/welampiot/service/impl/CityAdminCaseInfoServiceImpl.java

@@ -6,6 +6,8 @@ import com.welampiot.service.CityAdminCaseInfoService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * ClassName: CityAdminCaseInfoServiceImpl
  * Package: com.welampiot.service.impl
@@ -29,4 +31,24 @@ public class CityAdminCaseInfoServiceImpl implements CityAdminCaseInfoService {
     public void updateCityAdminCaseInfoData(CityAdminCaseInfoDTO dto) {
         cityAdminCaseInfoDao.updateCityAdminCaseInfoData(dto);
     }
+
+    @Override
+    public CityAdminCaseInfoDTO getCityAdminCaseInfoDetailsById(Integer id) {
+        return cityAdminCaseInfoDao.getCityAdminCaseInfoDetailsById(id);
+    }
+
+    @Override
+    public List<CityAdminCaseInfoDTO> getCityAdminCaseInfoList(Integer status) {
+        return cityAdminCaseInfoDao.getCityAdminCaseInfoList(status);
+    }
+
+    @Override
+    public void updateCityAdminCaseStatus(CityAdminCaseInfoDTO dto) {
+        cityAdminCaseInfoDao.updateCityAdminCaseStatus(dto);
+    }
+
+    @Override
+    public void updateCaseIsCancel(CityAdminCaseInfoDTO dto) {
+        cityAdminCaseInfoDao.updateCaseIsCancel(dto);
+    }
 }

+ 58 - 0
src/main/java/com/welampiot/service/impl/CityAdminCaseLogServiceImpl.java

@@ -0,0 +1,58 @@
+package com.welampiot.service.impl;
+
+import com.welampiot.dao.CityAdminCaseLogDao;
+import com.welampiot.dto.CityAdminCaseLogDTO;
+import com.welampiot.service.CityAdminCaseLogService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * ClassName: CityAdminCaseLogServiceImpl
+ * Package: com.welampiot.service.impl
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 16:05
+ * @Version: v1.0
+ */
+@Service
+public class CityAdminCaseLogServiceImpl implements CityAdminCaseLogService {
+
+    @Autowired
+    private CityAdminCaseLogDao cityAdminCaseLogDao;
+
+    @Override
+    public void addCityAdminCaseLogData(CityAdminCaseLogDTO dto) {
+        cityAdminCaseLogDao.addCityAdminCaseLogData(dto);
+    }
+
+    @Override
+    public List<CityAdminCaseLogDTO> getCaseLogListByCaseId(Integer caseId) {
+        List<CityAdminCaseLogDTO> list = cityAdminCaseLogDao.getCaseLogListByCaseId(caseId);
+        for (CityAdminCaseLogDTO dto : list) {
+            Integer status = dto.getStatus();
+            String createTime = dto.getCreateTime();
+            String name = dto.getName();
+            String content = "";
+            if (status == 0) {
+                content = createTime + "    " + name + " 在登记平台上报案件";
+            } else if (status == 1) {
+                content = createTime + "    " + name + " 在受理平台成立案件";
+            } else if (status == 2) {
+                content = createTime + "    " + name + " 在受理平台转批案件处置: " + dto.getCityAdmin();
+            } else if (status == 3) {
+                content = createTime + "    " + name + " 在协同平台处置结束转批坐席: " + dto.getSeats1();
+            } else if (status == 4) {
+                content = createTime + "    " + name + " 在协同平台转批网络巡查员复核: " + dto.getInspector();
+            } else if (status == 5) {
+                content = createTime + "    " + name + " 在协同平台复核结束转批坐席: " + dto.getSeats2();
+            } else if (status == 6) {
+                content = createTime + "    " + name + " 在协同平台结束案件";
+            }
+            dto.setContent(content);
+        }
+        return list;
+    }
+}

+ 5 - 0
src/main/java/com/welampiot/service/impl/UserServiceImpl.java

@@ -174,4 +174,9 @@ public class UserServiceImpl implements UserService {
     public Integer getUserOnlineCount() {
         return userDao.getUserOnlineCount();
     }
+
+    @Override
+    public List<UserDTO> getCityAdminUserNavList(Integer cityRole) {
+        return userDao.getCityAdminUserNavList(cityRole);
+    }
 }

+ 23 - 0
src/main/java/com/welampiot/vo/CityAdminCaseImageVO.java

@@ -0,0 +1,23 @@
+package com.welampiot.vo;
+
+import com.welampiot.dto.CityAdminCaseImageDTO;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * ClassName: CityAdminCaseImageVO
+ * Package: com.welampiot.vo
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 19:06
+ * @Version: v1.0
+ */
+@Data
+public class CityAdminCaseImageVO implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private List<CityAdminCaseImageDTO> list;
+}

+ 8 - 1
src/main/java/com/welampiot/vo/CityAdminCaseInfoVO.java

@@ -1,8 +1,10 @@
 package com.welampiot.vo;
 
+import com.welampiot.dto.CityAdminCaseInfoDTO;
 import lombok.Data;
 
 import java.io.Serializable;
+import java.util.List;
 
 /**
  * ClassName: CityAdminCaseInfoVO
@@ -18,9 +20,12 @@ public class CityAdminCaseInfoVO implements Serializable {
     private static final long serialVersionUID = 1L;
 
     private Integer id;
+    private String caseId;
+    private Integer type;
 
     /** 任务号 **/
     private String number;
+    private String username;
 
     private String phone; // 接入电话
 
@@ -64,7 +69,7 @@ public class CityAdminCaseInfoVO implements Serializable {
     private Integer status;
 
     /** 0 正常,1 取消 **/
-    private Integer voiId;
+    private Integer voild;
 
     private Integer cityAdminId; // 转批的城管账号id
 
@@ -81,4 +86,6 @@ public class CityAdminCaseInfoVO implements Serializable {
     private String startDate; // 案件发生时间
 
     private Integer version;
+
+    private List<CityAdminCaseInfoDTO> list;
 }

+ 23 - 0
src/main/java/com/welampiot/vo/CityAdminCaseLogVO.java

@@ -0,0 +1,23 @@
+package com.welampiot.vo;
+
+import com.welampiot.dto.CityAdminCaseLogDTO;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * ClassName: CityAdminCaseLogVO
+ * Package: com.welampiot.vo
+ * Description:
+ *
+ * @Author: zhj_Start
+ * @Create: 2023/9/15 - 18:23
+ * @Version: v1.0
+ */
+@Data
+public class CityAdminCaseLogVO implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    private List<CityAdminCaseLogDTO> list;
+}

+ 12 - 0
src/main/resources/mapper/CityAdminCaseImageMapper.xml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.welampiot.dao.CityAdminCaseImageDao">
+    
+    <select id="getCityAdminCaseImageByCaseId" resultType="CityAdminCaseImageDTO">
+        select c.image,c.createTime,u.name,u.username
+        from city_admin_case_image c
+        left join user u on u.id = c.user_id
+        where c.case_id = #{caseId}
+    </select>
+
+</mapper>

+ 52 - 0
src/main/resources/mapper/CityAdminCaseInfoMapper.xml

@@ -147,4 +147,56 @@
             c.id = #{id};
     </update>
 
+    <select id="getCityAdminCaseInfoDetailsById" resultType="CityAdminCaseInfoDTO">
+        select c.id,c.location,c.longitude,c.latitude,c.remark,c.problem_source as problemSource,
+               c.problem_level as problemLevel,c.case_big_id as caseBigId,c.case_samll_id as caseSmallId,
+               c.area_id as areaId,c.street_id as streetId,c.community,c.grid,c.supervisor_id as supervisorId,
+               c.phone,c.name,c.is_back as isBack,c.back_phone as backPhone,c.image
+        from city_admin_case_info c
+        where c.id = #{id}
+    </select>
+
+    <select id="getCityAdminCaseInfoList" resultType="CityAdminCaseInfoDTO">
+        select c.id,c.remark,c.startdate as startDate,c.createTime,c.community,
+               c.grid,c.problem_source as problemSource,c.problem_level as problemLevel,
+               c.location,c1.name as street,c2.name as area,t1.name as caseSmallName,
+               t2.name as caseBigName
+        from city_admin_case_info c
+        left join city_admin_area c1 on c1.id = c.street_id
+        left join city_admin_area c2 on c2.id = c1.pid
+        left join city_admin_case_item t1 on t1.id = c.case_samll_id
+        left join city_admin_case_item t2 on t2.id = t1.pid
+        where c.status = #{status}
+    </select>
+
+    <update id="updateCityAdminCaseStatus" parameterType="CityAdminCaseInfoDTO">
+        update
+            city_admin_case_info c
+        set
+            <if test="status == 2">
+                c.city_admin_id = #{cityAdminId},
+            </if>
+            <if test="status == 3">
+                c.seats_id1 = #{seatsId1},
+            </if>
+            <if test="status == 4">
+                c.inspector_id = #{inspectorId},
+            </if>
+            <if test="status == 5">
+                c.seats_id2 = #{seatsId2},
+            </if>
+            c.status = #{status}
+        where
+            c.id = #{id}
+    </update>
+    
+    <update id="updateCaseIsCancel" parameterType="CityAdminCaseInfoDTO">
+        update
+            city_admin_case_info c
+        set
+            c.voild = #{voild}
+        where
+            c.id = #{id}
+    </update>
+
 </mapper>

+ 62 - 0
src/main/resources/mapper/CityAdminCaseLogMapper.xml

@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.welampiot.dao.CityAdminCaseLogDao">
+
+    <insert id="addCityAdminCaseLogData" parameterType="CityAdminCaseLogDTO" useGeneratedKeys="true" keyProperty="id">
+        insert into city_admin_case_log(
+        <if test="caseId != null and caseId != 0">
+            case_id,
+        </if>
+        <if test="cityAdminId != null and cityAdminId != 0">
+            city_admin_id,
+        </if>
+        <if test="seatsId1 != null and seatsId1 != 0">
+            seats_id1,
+        </if>
+        <if test="seatsId2 != null and seatsId2 != 0">
+            seats_id2,
+        </if>
+        <if test="inspectorId != null and inspectorId != 0">
+            inspector_id,
+        </if>
+        user_id,
+        `status`,
+        createTime
+        )
+        values (
+        <if test="caseId != null and caseId != 0">
+            #{caseId},
+        </if>
+        <if test="cityAdminId != null and cityAdminId != 0">
+            #{cityAdminId},
+        </if>
+        <if test="seatsId1 != null and seatsId1 != 0">
+            #{seatsId1},
+        </if>
+        <if test="seatsId2 != null and seatsId2 != 0">
+            #{seatsId2},
+        </if>
+        <if test="inspectorId != null and inspectorId != 0">
+            #{inspectorId},
+        </if>
+        #{userid},
+        #{status},
+        #{createTime}
+        )
+    </insert>
+
+    <select id="getCaseLogListByCaseId" resultType="CityAdminCaseLogDTO">
+        select
+               c.status,c.createTime,u.name,
+               u1.name as inspector,u2.name as seats1,
+               u3.name as seats2,u4.name as cityAdmin
+        from city_admin_case_log c
+        left join user u on c.user_id = u.id
+        left join user u1 on c.inspector_id = u1.id
+        left join user u2 on c.seats_id1 = u2.id
+        left join user u3 on c.seats_id2 = u3.id
+        left join user u4 on c.city_admin_id = u4.id
+        where c.case_id = #{caseId}
+    </select>
+
+</mapper>

+ 6 - 0
src/main/resources/mapper/UserMapper.xml

@@ -363,5 +363,11 @@
         from `user` u
         where u.online = 1
     </select>
+
+    <select id="getCityAdminUserNavList" resultType="UserDTO">
+        select u.id,u.username,u.name,u.privilege_list as privilegeList
+        from `user` u
+        where u.type = 1 and u.cityRole = #{cityRole}
+    </select>
     
 </mapper>