Przeglądaj źródła

异常任务

master
zhaodengke 1 rok temu
rodzic
commit
33521695ef
15 zmienionych plików z 359 dodań i 19 usunięć
  1. +52
    -0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/AccountingAbnormalTaskController.java
  2. +0
    -1
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/AccountingAgentTaskController.java
  3. +0
    -10
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/AgentTaskUserController.java
  4. +66
    -0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/ManagerAbnormalTaskController.java
  5. +3
    -4
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/ManagerAgentTaskController.java
  6. +36
    -0
      ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/dto/AbnormalTask.java
  7. +0
    -1
      ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/dto/AgentTaskNumGroup.java
  8. +0
    -2
      ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/dto/AgentTaskVillageGroup.java
  9. +4
    -0
      ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/mapper/TAgentContractionMapper.java
  10. +13
    -0
      ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/service/IAbnormalTaskService.java
  11. +89
    -0
      ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/service/impl/AbnormalTaskServiceImpl.java
  12. +0
    -1
      ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/service/impl/TAgentTaskServiceImpl.java
  13. +14
    -0
      ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/vo/AbnormalTaskSummary.java
  14. +58
    -0
      ruoyi-agentcenter/src/main/resources/mapper/agentcenter/TAgentContractionMapper.xml
  15. +24
    -0
      ruoyi-common/src/main/java/com/ruoyi/common/utils/DeptUtils.java

+ 52
- 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/AccountingAbnormalTaskController.java Wyświetl plik

@@ -0,0 +1,52 @@
package com.ruoyi.web.controller.agentcenter;

import com.ruoyi.agentcenter.dto.AbnormalTask;
import com.ruoyi.agentcenter.service.IAbnormalTaskService;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
* 会计异常任务Controller
*
* @author zhao
* @date 2023-05-06
*/
@RestController
@RequestMapping("/accounting/task")
public class AccountingAbnormalTaskController extends BaseController
{
@Autowired
private IAbnormalTaskService abnormalTaskService;

/**
* 异常任务列表
*/
@PreAuthorize("@ss.hasPermi('agentcenter:task:list')")
@GetMapping(value = "/abnormalTaskList")
public TableDataInfo abnormalTaskList(AbnormalTask task)
{
startPage();
task.setAgentCenter(getUserAgentCenter());
task.setHandleUser(getUsername());
return getDataTable(abnormalTaskService.getAbnormalTaskList(task));
}

/**
* 异常任务统计
*/
@PreAuthorize("@ss.hasPermi('agentcenter:task:query')")
@GetMapping(value = "/abnormalTaskSummary")
public AjaxResult abnormalTaskSummary(AbnormalTask task)
{
task.setAgentCenter(getUserAgentCenter());
task.setHandleUser(getUsername());
return AjaxResult.success(abnormalTaskService.abnormalTaskSummary(task));
}

}

+ 0
- 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/AccountingAgentTaskController.java Wyświetl plik

@@ -3,7 +3,6 @@ package com.ruoyi.web.controller.agentcenter;
import com.ruoyi.agentcenter.domain.TAgentTask;
import com.ruoyi.agentcenter.service.ITAgentTaskService;
import com.ruoyi.agentcenter.dto.AgentTaskVillageGroup;
import com.ruoyi.agentcenter.vo.TaskDistrib;
import com.ruoyi.agentcenter.vo.TaskFinish;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;


+ 0
- 10
ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/AgentTaskUserController.java Wyświetl plik

@@ -1,25 +1,15 @@
package com.ruoyi.web.controller.agentcenter;

import com.ruoyi.agentcenter.domain.TAgentTask;
import com.ruoyi.agentcenter.dto.AgentTaskVillageGroup;
import com.ruoyi.agentcenter.service.ITAgentTaskService;
import com.ruoyi.agentcenter.vo.AgentTaskUser;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.system.service.ISysDeptService;
import com.ruoyi.system.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
* 会计任务用户Controller
*


+ 66
- 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/ManagerAbnormalTaskController.java Wyświetl plik

@@ -0,0 +1,66 @@
package com.ruoyi.web.controller.agentcenter;

import com.ruoyi.agentcenter.dto.AbnormalTask;
import com.ruoyi.agentcenter.service.IAbnormalTaskService;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
* 主管异常任务Controller
*
* @author zhao
* @date 2023-05-06
*/
@RestController
@RequestMapping("/manager/task")
public class ManagerAbnormalTaskController extends BaseController
{
@Autowired
private IAbnormalTaskService abnormalTaskService;

/**
* 异常任务列表
*/
@PreAuthorize("@ss.hasPermi('agentcenter:task:list')")
@GetMapping(value = "/abnormalTaskList")
public TableDataInfo abnormalTaskList(AbnormalTask task)
{
startPage();
task.setAgentCenter(getUserAgentCenter());
return getDataTable(abnormalTaskService.getAbnormalTaskList(task));
}

/**
* 异常任务统计
*/
@PreAuthorize("@ss.hasPermi('agentcenter:task:query')")
@GetMapping(value = "/abnormalTaskSummary")
public AjaxResult abnormalTaskSummary(AbnormalTask task)
{
task.setAgentCenter(getUserAgentCenter());
return AjaxResult.success(abnormalTaskService.abnormalTaskSummary(task));
}

/**
* 异常任务统计
*/
@PreAuthorize("@ss.hasPermi('agentcenter:task:remove')")
@PostMapping(value = "/removeAbnormalTask/{type}/{id}")
public AjaxResult removeAbnormalTask(@PathVariable String type, @PathVariable Long id)
{
AbnormalTask task = new AbnormalTask();
task.setType(type)
.setId(id);
task.setAgentCenter(getUserAgentCenter());
return AjaxResult.success(abnormalTaskService.removeAbnormalTask(task));
}

}

+ 3
- 4
ruoyi-admin/src/main/java/com/ruoyi/web/controller/agentcenter/ManagerAgentTaskController.java Wyświetl plik

@@ -10,7 +10,6 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -38,7 +37,7 @@ public class ManagerAgentTaskController extends BaseController
/**
* 县级全部任务统计
*/
@PreAuthorize("@ss.hasPermi('agentcenter:task:list')")
@PreAuthorize("@ss.hasPermi('agentcenter:task:query')")
@GetMapping(value = "/countyTaskSummary")
public AjaxResult countyTaskSummary(TAgentTask task)
{
@@ -142,7 +141,7 @@ public class ManagerAgentTaskController extends BaseController
/**
* 县级处理中统计
*/
@PreAuthorize("@ss.hasPermi('agentcenter:task:list')")
@PreAuthorize("@ss.hasPermi('agentcenter:task:query')")
@GetMapping(value = "/countyProcessingTaskSummary")
public AjaxResult countyProcessingTaskSummary(TAgentTask task)
{
@@ -166,7 +165,7 @@ public class ManagerAgentTaskController extends BaseController
/**
* 镇级待审核统计
*/
@PreAuthorize("@ss.hasPermi('agentcenter:task:list')")
@PreAuthorize("@ss.hasPermi('agentcenter:task:query')")
@GetMapping(value = "/auditTaskSummary")
public AjaxResult auditTaskSummary(TAgentTask task)
{


+ 36
- 0
ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/dto/AbnormalTask.java Wyświetl plik

@@ -0,0 +1,36 @@
package com.ruoyi.agentcenter.dto;

import lombok.Data;
import lombok.experimental.Accessors;

@Data
@Accessors(chain = true)
public class AbnormalTask
{
public static final String TYPE_CONTRACTION = "contraction";
public static final String TYPE_VOUCHER = "voucher";

private String agentCenter;
private String countyCode;
private String townCode;
private String orgCode;
private String type;
private String orderYear;
private String orderMonth;
private String countyName;
private String townName;
private String orgName;

private String bookName;
private String handleNick;
private String handleUser;
private String orderAt;
private String remark;
private Long id;
private Long taskId;
private String name;
private String region;
private String address;
private String tel;
private String applyUser;
}

+ 0
- 1
ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/dto/AgentTaskNumGroup.java Wyświetl plik

@@ -1,6 +1,5 @@
package com.ruoyi.agentcenter.dto;

import cn.hutool.core.date.DateUtil;
import com.ruoyi.agentcenter.domain.TAgentTask;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;


+ 0
- 2
ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/dto/AgentTaskVillageGroup.java Wyświetl plik

@@ -1,11 +1,9 @@
package com.ruoyi.agentcenter.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.agentcenter.domain.TAgentTask;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.List;

@Data


+ 4
- 0
ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/mapper/TAgentContractionMapper.java Wyświetl plik

@@ -2,6 +2,7 @@ package com.ruoyi.agentcenter.mapper;

import java.util.List;
import com.ruoyi.agentcenter.domain.TAgentContraction;
import com.ruoyi.agentcenter.dto.AbnormalTask;

/**
* 合同任务Mapper接口
@@ -101,4 +102,7 @@ public interface TAgentContractionMapper
public int selectTAgentContractionExists(TAgentContraction tAgentContraction);

public List<TAgentContraction> getAgentContractionGroupByDept(TAgentContraction tAgentContraction);

public List<AbnormalTask> getAbnormalContractionList(AbnormalTask cond);
public Long getAbnormalContractionCount(AbnormalTask cond);
}

+ 13
- 0
ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/service/IAbnormalTaskService.java Wyświetl plik

@@ -0,0 +1,13 @@
package com.ruoyi.agentcenter.service;

import com.ruoyi.agentcenter.dto.AbnormalTask;
import com.ruoyi.agentcenter.vo.AbnormalTaskSummary;

import java.util.List;

public interface IAbnormalTaskService
{
public List<AbnormalTask> getAbnormalTaskList(AbnormalTask query);
public AbnormalTaskSummary abnormalTaskSummary(AbnormalTask query);
public int removeAbnormalTask(AbnormalTask query);
}

+ 89
- 0
ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/service/impl/AbnormalTaskServiceImpl.java Wyświetl plik

@@ -0,0 +1,89 @@
package com.ruoyi.agentcenter.service.impl;

import cn.hutool.core.collection.CollectionUtil;
import com.ruoyi.agentcenter.domain.TAgentContraction;
import com.ruoyi.agentcenter.dto.AbnormalTask;
import com.ruoyi.agentcenter.mapper.TAgentContractionMapper;
import com.ruoyi.agentcenter.service.IAbnormalTaskService;
import com.ruoyi.agentcenter.vo.AbnormalTaskSummary;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DeptUtils;
import com.ruoyi.system.mapper.SysDeptMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Service
public class AbnormalTaskServiceImpl implements IAbnormalTaskService
{
@Autowired
private TAgentContractionMapper tAgentContractionMapper;
@Autowired
private SysDeptMapper sysDeptMapper;

@Override
public List<AbnormalTask> getAbnormalTaskList(AbnormalTask query)
{
switch(query.getType())
{
case AbnormalTask.TYPE_CONTRACTION:
return getAbnormalContractionTaskList(query);
default:
return new ArrayList<>();
}
}

private List<AbnormalTask> getAbnormalContractionTaskList(AbnormalTask query)
{
List<AbnormalTask> abnormalContractionList = tAgentContractionMapper.getAbnormalContractionList(query);
if(CollectionUtil.isNotEmpty(abnormalContractionList))
{
List<SysDept> deptList = sysDeptMapper.getDeptList(new SysDept());
Map<String, String> fullNameCache = new HashMap<>();
abnormalContractionList.forEach((x) -> {
String fullName = fullNameCache.computeIfAbsent(x.getOrgCode(), k -> DeptUtils.getFullNameByOrgCode(x.getOrgCode(), deptList, "/", false));
x.setRegion(fullName);
x.setAddress(fullName);
x.setApplyUser("申请人XXX")
.setTel("联系电话1xxxxxxxxxxx")
;
x.setOrderAt(DateUtils.stdRemoveTime(x.getOrderAt()));
});
}
return abnormalContractionList;
}

@Override
public AbnormalTaskSummary abnormalTaskSummary(AbnormalTask query)
{
AbnormalTaskSummary res = new AbnormalTaskSummary();
res.setNumAbnormalContraction(getAbnormalContractionTaskCount(query));
res.setNumAbnormalOther(0L)
.setNumAbnormalVoucher(0L)
;
res.setNum(res.getNumAbnormalContraction());
return res;
}

private Long getAbnormalContractionTaskCount(AbnormalTask query)
{
return tAgentContractionMapper.getAbnormalContractionCount(query);
}

@Override
public int removeAbnormalTask(AbnormalTask query)
{
switch(query.getType())
{
case AbnormalTask.TYPE_CONTRACTION:
return tAgentContractionMapper.deleteTAgentContractionById(query.getId());
default:
return 0;
}
}
}

+ 0
- 1
ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/service/impl/TAgentTaskServiceImpl.java Wyświetl plik

@@ -30,7 +30,6 @@ import com.ruoyi.common.utils.ContainerUtils;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DeptUtils;
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.mapper.SysDeptMapper;
import com.ruoyi.system.mapper.SysUserMapper;
import org.springframework.beans.factory.annotation.Autowired;


+ 14
- 0
ruoyi-agentcenter/src/main/java/com/ruoyi/agentcenter/vo/AbnormalTaskSummary.java Wyświetl plik

@@ -0,0 +1,14 @@
package com.ruoyi.agentcenter.vo;

import lombok.Data;
import lombok.experimental.Accessors;

@Data
@Accessors(chain = true)
public class AbnormalTaskSummary
{
private Long numAbnormalContraction;
private Long numAbnormalVoucher;
private Long numAbnormalOther;
private Long num;
}

+ 58
- 0
ruoyi-agentcenter/src/main/resources/mapper/agentcenter/TAgentContractionMapper.xml Wyświetl plik

@@ -305,4 +305,62 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</where>
GROUP BY org_code
</select>

<resultMap id="AbnormalTaskResultMap" type="com.ruoyi.agentcenter.dto.AbnormalTask">
<result property="agentCenter" column="agent_center"/>
<result property="countyCode" column="county_code"/>
<result property="orgCode" column="org_code"/>
<result property="townCode" column="town_code"/>
<result property="type" column="type"/>
<result property="orderYear" column="order_year"/>
<result property="orderMonth" column="order_month"/>
<result property="bookName" column="book_name"/>
<result property="handleNick" column="handle_nick"/>
<result property="orderAt" column="order_at"/>
<result property="remark" column="remark"/>
<result property="id" column="id"/>
<result property="taskId" column="task_id"/>
<result property="name" column="name"/>
<result property="countyName" column="county_name"/>
<result property="townName" column="town_name"/>
<result property="orgName" column="org_name"/>
<result property="handleUser" column="handle_user"/>
</resultMap>

<select id="getAbnormalContractionList" parameterType="com.ruoyi.agentcenter.dto.AbnormalTask" resultMap="AbnormalTaskResultMap">
select
c.id, c.task_id, c.name, c.remark, c.order_at, c.order_year, c.order_month, c.order_at,
t.org_code, t.town_code, t.county_code, t.book_name, t.handle_nick, t.agent_center, t.county_name, t.town_name, t.org_name, t.handle_user,
'contraction' as type
from t_agent_contraction c
INNER JOIN t_agent_task t ON c.task_id = t.id
<where>
<if test="agentCenter != null and agentCenter != ''"> and t.agent_center = #{agentCenter}</if>
<if test="countyCode != null and countyCode != ''"> and t.county_code = #{countyCode}</if>
<if test="townCode != null and townCode != ''"> and t.town_code = #{townCode}</if>
<if test="orgCode != null and orgCode != ''"> and t.org_code = #{orgCode}</if>
<if test="orderYear != null and orderYear != ''"> and c.order_year = #{orderYear}</if>
<if test="orderMonth != null and orderMonth != ''"> and c.order_month = #{orderMonth}</if>
<if test="handleUser != null and handleUser != ''"> and t.handle_user = #{handleUser}</if>
and order_status = '4'
</where>
</select>


<select id="getAbnormalContractionCount" parameterType="com.ruoyi.agentcenter.dto.AbnormalTask" resultType="Long">
select
COUNT(*)
from t_agent_contraction c
INNER JOIN t_agent_task t ON c.task_id = t.id
<where>
<if test="agentCenter != null and agentCenter != ''"> and t.agent_center = #{agentCenter}</if>
<if test="countyCode != null and countyCode != ''"> and t.county_code = #{countyCode}</if>
<if test="townCode != null and townCode != ''"> and t.town_code = #{townCode}</if>
<if test="orgCode != null and orgCode != ''"> and t.org_code = #{orgCode}</if>
<if test="orderYear != null and orderYear != ''"> and c.order_year = #{orderYear}</if>
<if test="orderMonth != null and orderMonth != ''"> and c.order_month = #{orderMonth}</if>
<if test="handleUser != null and handleUser != ''"> and t.handle_user = #{handleUser}</if>
and order_status = '4'
</where>
</select>
</mapper>

+ 24
- 0
ruoyi-common/src/main/java/com/ruoyi/common/utils/DeptUtils.java Wyświetl plik

@@ -8,9 +8,11 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.function.Function;
import java.util.stream.Collector;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public final class DeptUtils
{
@@ -209,5 +211,27 @@ public final class DeptUtils
return collect;
}

public static String getFullNameByOrgCode(String orgCode, List<SysDept> depts, String splitChar, boolean all)
{
Optional<SysDept> first = depts.stream().filter((x) -> orgCode.equals(x.getOrgCode())).findFirst();
if(!first.isPresent())
return "";
List<String> names = getDeptNameList(first.get(), depts, all);
return String.join(splitChar, names);
}

private static List<String> getDeptNameList(SysDept dept, List<SysDept> depts, boolean all)
{
List<String> names = new ArrayList<>();
Map<Long, SysDept> deptMap = ContainerUtils.toMap(depts, SysDept::getDeptId);
while(null != dept && (all || dept.getDeptId() != SysDept.ROOT_DEPT_ID))
{
names.add(0, dept.getDeptName());
Long parentId = dept.getParentId();
dept = deptMap.get(parentId);
}
return names;
}

private DeptUtils() {}
}

Ładowanie…
Anuluj
Zapisz