Commit f18285fc by xmh

1. 重构 pack ,一个 pack 只能关联一个 task

2. 部分接口做查询限制
3. 菜单以及权限
4. subTask 分组查询
1 parent f162bb3b
Showing 37 changed files with 781 additions and 1578 deletions
......@@ -16,7 +16,10 @@ public enum SubTaskStatus {
/** todo标注 */
TODO(4),
/** 已回收 */
recycled(-1);
recycled(-1),
/** 驳回 */
reject(5),
;
public int val;
SubTaskStatus(int val) {
......
package com.viontech.label.platform.config;
import cn.dev33.satoken.stp.StpInterface;
import com.viontech.label.platform.model.User;
import com.viontech.label.platform.service.adapter.UserService;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
/**
* .
*
* @author 谢明辉
* @date 2021/9/13
*/
@Component
public class MainStpInterface implements StpInterface {
@Resource
private UserService userService;
@Override
public List<String> getPermissionList(Object loginId, String loginType) {
User user = userService.selectByPrimaryKey(Long.parseLong((String) loginId));
if (user.getType().equals(0)) {
return Collections.singletonList("super");
} else {
return Collections.emptyList();
}
}
@Override
public List<String> getRoleList(Object loginId, String loginType) {
User user = userService.selectByPrimaryKey(Long.parseLong((String) loginId));
if (user.getType().equals(0)) {
return Collections.singletonList("super");
} else {
return Collections.emptyList();
}
}
}
package com.viontech.label.platform.config;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import java.util.List;
import java.util.Map;
/**
* .
*
* @author 谢明辉
* @date 2021/9/10
*/
@Configuration
@ConfigurationProperties(prefix = "vion")
public class MenuConfig {
private Map<Integer, List<String>> menuMap;
public Map<Integer, List<String>> getMenuMap() {
return menuMap;
}
public MenuConfig setMenuMap(Map<Integer, List<String>> menuMap) {
this.menuMap = menuMap;
return this;
}
}
package com.viontech.label.platform.config;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* .
*
* @author 谢明辉
* @date 2021/9/10
*/
@Configuration
@ConfigurationProperties(prefix = "vion")
public class VionConfig {
private Map<Integer, HashMap<String, List<String>>> menuMap;
public Map<Integer, HashMap<String, List<String>>> getMenuMap() {
return menuMap;
}
public VionConfig setMenuMap(Map<Integer, HashMap<String, List<String>>> map) {
menuMap = new HashMap<>();
for (Map.Entry<Integer, HashMap<String, List<String>>> entry : map.entrySet()) {
Integer userType = entry.getKey();
HashMap<String, List<String>> value = entry.getValue();
for (Map.Entry<String, List<String>> ee : value.entrySet()) {
HashMap<String, List<String>> mpp = menuMap.computeIfAbsent(userType, x -> new HashMap<>());
String key1 = ee.getKey();
List<String> value1 = ee.getValue();
switch (key1) {
case "label":
mpp.put("数据标注", value1);
break;
case "inspection":
mpp.put("质检", value1);
break;
case "project":
mpp.put("项目", value1);
break;
case "management":
mpp.put("后台管理", value1);
break;
default:
break;
}
}
}
return this;
}
}
......@@ -2,13 +2,12 @@ package com.viontech.label.platform.controller.base;
import com.viontech.label.platform.base.BaseController;
import com.viontech.label.platform.base.BaseExample;
import com.viontech.label.platform.base.BaseMapper;
import com.viontech.label.platform.base.BaseService;
import com.viontech.label.platform.mapper.PackMapper;
import com.viontech.label.platform.model.Pack;
import com.viontech.label.platform.model.PackExample;
import com.viontech.label.platform.service.adapter.PackService;
import com.viontech.label.platform.vo.PackVo;
import javax.annotation.Resource;
public abstract class PackBaseController extends BaseController<Pack, PackVo> {
......@@ -19,138 +18,163 @@ public abstract class PackBaseController extends BaseController<Pack, PackVo> {
protected BaseExample getExample(PackVo packVo, int type) {
PackExample packExample = new PackExample();
PackExample.Criteria criteria = packExample.createCriteria();
if(packVo.getId() != null) {
if (packVo.getId() != null) {
criteria.andIdEqualTo(packVo.getId());
}
if(packVo.getId_arr() != null) {
if (packVo.getId_arr() != null) {
criteria.andIdIn(packVo.getId_arr());
}
if(packVo.getId_gt() != null) {
if (packVo.getId_gt() != null) {
criteria.andIdGreaterThan(packVo.getId_gt());
}
if(packVo.getId_lt() != null) {
if (packVo.getId_lt() != null) {
criteria.andIdLessThan(packVo.getId_lt());
}
if(packVo.getId_gte() != null) {
if (packVo.getId_gte() != null) {
criteria.andIdGreaterThanOrEqualTo(packVo.getId_gte());
}
if(packVo.getId_lte() != null) {
if (packVo.getId_lte() != null) {
criteria.andIdLessThanOrEqualTo(packVo.getId_lte());
}
if(packVo.getUnid() != null) {
if (packVo.getUnid() != null) {
criteria.andUnidEqualTo(packVo.getUnid());
}
if(packVo.getUnid_arr() != null) {
if (packVo.getUnid_arr() != null) {
criteria.andUnidIn(packVo.getUnid_arr());
}
if(packVo.getUnid_like() != null) {
if (packVo.getUnid_like() != null) {
criteria.andUnidLike(packVo.getUnid_like());
}
if(packVo.getCreateTime() != null) {
if (packVo.getCreateTime() != null) {
criteria.andCreateTimeEqualTo(packVo.getCreateTime());
}
if(packVo.getCreateTime_arr() != null) {
if (packVo.getCreateTime_arr() != null) {
criteria.andCreateTimeIn(packVo.getCreateTime_arr());
}
if(packVo.getCreateTime_gt() != null) {
if (packVo.getCreateTime_gt() != null) {
criteria.andCreateTimeGreaterThan(packVo.getCreateTime_gt());
}
if(packVo.getCreateTime_lt() != null) {
if (packVo.getCreateTime_lt() != null) {
criteria.andCreateTimeLessThan(packVo.getCreateTime_lt());
}
if(packVo.getCreateTime_gte() != null) {
if (packVo.getCreateTime_gte() != null) {
criteria.andCreateTimeGreaterThanOrEqualTo(packVo.getCreateTime_gte());
}
if(packVo.getCreateTime_lte() != null) {
if (packVo.getCreateTime_lte() != null) {
criteria.andCreateTimeLessThanOrEqualTo(packVo.getCreateTime_lte());
}
if(packVo.getCreateUser() != null) {
if (packVo.getCreateUser() != null) {
criteria.andCreateUserEqualTo(packVo.getCreateUser());
}
if(packVo.getCreateUser_null() != null) {
if(packVo.getCreateUser_null().booleanValue()) {
if (packVo.getCreateUser_null() != null) {
if (packVo.getCreateUser_null().booleanValue()) {
criteria.andCreateUserIsNull();
} else {
criteria.andCreateUserIsNotNull();
}
}
if(packVo.getCreateUser_arr() != null) {
if (packVo.getCreateUser_arr() != null) {
criteria.andCreateUserIn(packVo.getCreateUser_arr());
}
if(packVo.getCreateUser_gt() != null) {
if (packVo.getCreateUser_gt() != null) {
criteria.andCreateUserGreaterThan(packVo.getCreateUser_gt());
}
if(packVo.getCreateUser_lt() != null) {
if (packVo.getCreateUser_lt() != null) {
criteria.andCreateUserLessThan(packVo.getCreateUser_lt());
}
if(packVo.getCreateUser_gte() != null) {
if (packVo.getCreateUser_gte() != null) {
criteria.andCreateUserGreaterThanOrEqualTo(packVo.getCreateUser_gte());
}
if(packVo.getCreateUser_lte() != null) {
if (packVo.getCreateUser_lte() != null) {
criteria.andCreateUserLessThanOrEqualTo(packVo.getCreateUser_lte());
}
if(packVo.getStorageId() != null) {
if (packVo.getStorageId() != null) {
criteria.andStorageIdEqualTo(packVo.getStorageId());
}
if(packVo.getStorageId_arr() != null) {
if (packVo.getStorageId_arr() != null) {
criteria.andStorageIdIn(packVo.getStorageId_arr());
}
if(packVo.getStorageId_gt() != null) {
if (packVo.getStorageId_gt() != null) {
criteria.andStorageIdGreaterThan(packVo.getStorageId_gt());
}
if(packVo.getStorageId_lt() != null) {
if (packVo.getStorageId_lt() != null) {
criteria.andStorageIdLessThan(packVo.getStorageId_lt());
}
if(packVo.getStorageId_gte() != null) {
if (packVo.getStorageId_gte() != null) {
criteria.andStorageIdGreaterThanOrEqualTo(packVo.getStorageId_gte());
}
if(packVo.getStorageId_lte() != null) {
if (packVo.getStorageId_lte() != null) {
criteria.andStorageIdLessThanOrEqualTo(packVo.getStorageId_lte());
}
if(packVo.getName() != null) {
if (packVo.getName() != null) {
criteria.andNameEqualTo(packVo.getName());
}
if(packVo.getName_arr() != null) {
if (packVo.getName_arr() != null) {
criteria.andNameIn(packVo.getName_arr());
}
if(packVo.getName_like() != null) {
if (packVo.getName_like() != null) {
criteria.andNameLike(packVo.getName_like());
}
if(packVo.getStatus() != null) {
if (packVo.getType() != null) {
criteria.andTypeEqualTo(packVo.getType());
}
if (packVo.getType_arr() != null) {
criteria.andTypeIn(packVo.getType_arr());
}
if (packVo.getType_gt() != null) {
criteria.andTypeGreaterThan(packVo.getType_gt());
}
if (packVo.getType_lt() != null) {
criteria.andTypeLessThan(packVo.getType_lt());
}
if (packVo.getType_gte() != null) {
criteria.andTypeGreaterThanOrEqualTo(packVo.getType_gte());
}
if (packVo.getType_lte() != null) {
criteria.andTypeLessThanOrEqualTo(packVo.getType_lte());
}
if (packVo.getStatus() != null) {
criteria.andStatusEqualTo(packVo.getStatus());
}
if(packVo.getStatus_arr() != null) {
if (packVo.getStatus_arr() != null) {
criteria.andStatusIn(packVo.getStatus_arr());
}
if(packVo.getStatus_gt() != null) {
if (packVo.getStatus_gt() != null) {
criteria.andStatusGreaterThan(packVo.getStatus_gt());
}
if(packVo.getStatus_lt() != null) {
if (packVo.getStatus_lt() != null) {
criteria.andStatusLessThan(packVo.getStatus_lt());
}
if(packVo.getStatus_gte() != null) {
if (packVo.getStatus_gte() != null) {
criteria.andStatusGreaterThanOrEqualTo(packVo.getStatus_gte());
}
if(packVo.getStatus_lte() != null) {
if (packVo.getStatus_lte() != null) {
criteria.andStatusLessThanOrEqualTo(packVo.getStatus_lte());
}
if(packVo.getType() != null) {
criteria.andTypeEqualTo(packVo.getType());
if (packVo.getTaskId() != null) {
criteria.andTaskIdEqualTo(packVo.getTaskId());
}
if(packVo.getType_arr() != null) {
criteria.andTypeIn(packVo.getType_arr());
if (packVo.getTaskId_null() != null) {
if (packVo.getTaskId_null().booleanValue()) {
criteria.andTaskIdIsNull();
} else {
criteria.andTaskIdIsNotNull();
}
}
if(packVo.getType_gt() != null) {
criteria.andTypeGreaterThan(packVo.getType_gt());
if (packVo.getTaskId_arr() != null) {
criteria.andTaskIdIn(packVo.getTaskId_arr());
}
if(packVo.getType_lt() != null) {
criteria.andTypeLessThan(packVo.getType_lt());
if (packVo.getTaskId_gt() != null) {
criteria.andTaskIdGreaterThan(packVo.getTaskId_gt());
}
if(packVo.getType_gte() != null) {
criteria.andTypeGreaterThanOrEqualTo(packVo.getType_gte());
if (packVo.getTaskId_lt() != null) {
criteria.andTaskIdLessThan(packVo.getTaskId_lt());
}
if(packVo.getType_lte() != null) {
criteria.andTypeLessThanOrEqualTo(packVo.getType_lte());
if (packVo.getTaskId_gte() != null) {
criteria.andTaskIdGreaterThanOrEqualTo(packVo.getTaskId_gte());
}
if (packVo.getTaskId_lte() != null) {
criteria.andTaskIdLessThanOrEqualTo(packVo.getTaskId_lte());
}
return packExample;
}
......
package com.viontech.label.platform.controller.base;
import com.viontech.label.platform.base.BaseController;
import com.viontech.label.platform.base.BaseExample;
import com.viontech.label.platform.base.BaseService;
import com.viontech.label.platform.model.TaskPack;
import com.viontech.label.platform.model.TaskPackExample;
import com.viontech.label.platform.service.adapter.TaskPackService;
import com.viontech.label.platform.vo.TaskPackVo;
import javax.annotation.Resource;
public abstract class TaskPackBaseController extends BaseController<TaskPack, TaskPackVo> {
@Resource
protected TaskPackService taskPackService;
@Override
protected BaseExample getExample(TaskPackVo taskPackVo, int type) {
TaskPackExample taskPackExample = new TaskPackExample();
TaskPackExample.Criteria criteria = taskPackExample.createCriteria();
if(taskPackVo.getId() != null) {
criteria.andIdEqualTo(taskPackVo.getId());
}
if(taskPackVo.getId_arr() != null) {
criteria.andIdIn(taskPackVo.getId_arr());
}
if(taskPackVo.getId_gt() != null) {
criteria.andIdGreaterThan(taskPackVo.getId_gt());
}
if(taskPackVo.getId_lt() != null) {
criteria.andIdLessThan(taskPackVo.getId_lt());
}
if(taskPackVo.getId_gte() != null) {
criteria.andIdGreaterThanOrEqualTo(taskPackVo.getId_gte());
}
if(taskPackVo.getId_lte() != null) {
criteria.andIdLessThanOrEqualTo(taskPackVo.getId_lte());
}
if(taskPackVo.getCreateTime() != null) {
criteria.andCreateTimeEqualTo(taskPackVo.getCreateTime());
}
if(taskPackVo.getCreateTime_arr() != null) {
criteria.andCreateTimeIn(taskPackVo.getCreateTime_arr());
}
if(taskPackVo.getCreateTime_gt() != null) {
criteria.andCreateTimeGreaterThan(taskPackVo.getCreateTime_gt());
}
if(taskPackVo.getCreateTime_lt() != null) {
criteria.andCreateTimeLessThan(taskPackVo.getCreateTime_lt());
}
if(taskPackVo.getCreateTime_gte() != null) {
criteria.andCreateTimeGreaterThanOrEqualTo(taskPackVo.getCreateTime_gte());
}
if(taskPackVo.getCreateTime_lte() != null) {
criteria.andCreateTimeLessThanOrEqualTo(taskPackVo.getCreateTime_lte());
}
if(taskPackVo.getTaskId() != null) {
criteria.andTaskIdEqualTo(taskPackVo.getTaskId());
}
if(taskPackVo.getTaskId_arr() != null) {
criteria.andTaskIdIn(taskPackVo.getTaskId_arr());
}
if(taskPackVo.getTaskId_gt() != null) {
criteria.andTaskIdGreaterThan(taskPackVo.getTaskId_gt());
}
if(taskPackVo.getTaskId_lt() != null) {
criteria.andTaskIdLessThan(taskPackVo.getTaskId_lt());
}
if(taskPackVo.getTaskId_gte() != null) {
criteria.andTaskIdGreaterThanOrEqualTo(taskPackVo.getTaskId_gte());
}
if(taskPackVo.getTaskId_lte() != null) {
criteria.andTaskIdLessThanOrEqualTo(taskPackVo.getTaskId_lte());
}
if(taskPackVo.getPackId() != null) {
criteria.andPackIdEqualTo(taskPackVo.getPackId());
}
if(taskPackVo.getPackId_arr() != null) {
criteria.andPackIdIn(taskPackVo.getPackId_arr());
}
if(taskPackVo.getPackId_gt() != null) {
criteria.andPackIdGreaterThan(taskPackVo.getPackId_gt());
}
if(taskPackVo.getPackId_lt() != null) {
criteria.andPackIdLessThan(taskPackVo.getPackId_lt());
}
if(taskPackVo.getPackId_gte() != null) {
criteria.andPackIdGreaterThanOrEqualTo(taskPackVo.getPackId_gte());
}
if(taskPackVo.getPackId_lte() != null) {
criteria.andPackIdLessThanOrEqualTo(taskPackVo.getPackId_lte());
}
return taskPackExample;
}
@Override
protected BaseService<TaskPack> getService() {
return taskPackService;
}
}
\ No newline at end of file
......@@ -3,16 +3,28 @@ package com.viontech.label.platform.controller.web;
import com.viontech.label.platform.base.BaseExample;
import com.viontech.label.platform.controller.base.AccountBaseController;
import com.viontech.label.platform.model.AccountExample;
import com.viontech.label.platform.model.User;
import com.viontech.label.platform.service.adapter.UserService;
import com.viontech.label.platform.vo.AccountVo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.annotation.Resource;
@Controller
@RequestMapping("/accounts")
public class AccountController extends AccountBaseController {
@Resource
private UserService userService;
@Override
protected BaseExample getExample(AccountVo accountVo, int type) {
User currentUser = userService.getCurrentUser();
Long accountId = currentUser.getAccountId();
if (!currentUser.getType().equals(0)) {
accountVo.setId(accountId);
}
AccountExample accountExample = (AccountExample)super.getExample(accountVo,type);
return accountExample;
}
......
package com.viontech.label.platform.controller.web;
import com.viontech.keliu.util.JsonMessageUtil;
import com.viontech.label.platform.base.BaseExample;
import com.viontech.label.platform.controller.base.PackBaseController;
import com.viontech.label.platform.model.PackExample;
import com.viontech.label.platform.model.User;
import com.viontech.label.platform.model.entity.PackInfo;
import com.viontech.label.platform.service.adapter.UserService;
import com.viontech.label.platform.vo.PackVo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import java.util.List;
@Controller
@RequestMapping("/packs")
public class PackController extends PackBaseController {
@Resource
private UserService userService;
@Override
protected BaseExample getExample(PackVo packVo, int type) {
PackExample packExample = (PackExample)super.getExample(packVo,type);
PackExample packExample = (PackExample) super.getExample(packVo, type);
packExample.createColumns();
packExample.createStorageColumns();
packExample.createTaskColumns();
User currentUser = userService.getCurrentUser();
if (!currentUser.getType().equals(0)) {
packExample.andTaskCriteria().andAccountIdEqualTo(currentUser.getAccountId());
}
return packExample;
}
@GetMapping("/info")
@ResponseBody
public Object info(PackVo packVo) {
List<PackInfo> info = packService.info(packVo);
return JsonMessageUtil.getSuccessJsonMsg(info);
}
}
\ No newline at end of file
package com.viontech.label.platform.controller.web;
import cn.dev33.satoken.stp.StpUtil;
import com.alibaba.excel.EasyExcel;
import com.github.pagehelper.PageInfo;
import com.viontech.keliu.util.DateUtil;
......@@ -225,6 +226,8 @@ public class ReidController {
@GetMapping("downloadLabeledPicAsZip")
public void downloadLabeledPicAsZip(@RequestParam Long packId, HttpServletResponse response) throws Exception {
StpUtil.checkRole("super");
File file = reidService.downloadLabeledPicAsZip(packId);
response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
......@@ -240,6 +243,8 @@ public class ReidController {
@GetMapping("export")
public void exportLabelResult(@RequestParam Long packId, @RequestParam Date start, @RequestParam Date end, HttpServletResponse response) throws IOException {
StpUtil.checkRole("super");
LogMapper mapper = (LogMapper) reidService.getLogService().getMapper();
List<LogVo> logs = mapper.exportLogByDateAndPack(packId, start, end);
HashSet<String> includeColumn = new HashSet<>();
......
......@@ -2,10 +2,20 @@ package com.viontech.label.platform.controller.web;
import com.viontech.label.platform.base.BaseExample;
import com.viontech.label.platform.controller.base.SubTaskBaseController;
import com.viontech.label.platform.model.SubTask;
import com.viontech.label.platform.model.SubTaskExample;
import com.viontech.label.platform.vo.SubTaskVo;
import org.springframework.stereotype.Controller;
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.ResponseBody;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import static com.viontech.keliu.util.JsonMessageUtil.getSuccessJsonMsg;
@Controller
@RequestMapping("/subTasks")
......@@ -16,4 +26,26 @@ public class SubTaskController extends SubTaskBaseController {
SubTaskExample subTaskExample = (SubTaskExample) super.getExample(subTaskVo, type);
return subTaskExample;
}
@Override
@GetMapping
@ResponseBody
public Object page(SubTaskVo subTaskVo, @RequestParam(value = "page", defaultValue = "-1") int page,
@RequestParam(value = "pageSize", defaultValue = "100") int pageSize,
String sortName, String sortOrder) {
if (subTaskVo.isGroup()) {
BaseExample baseExample = getExample(subTaskVo, EXAMPLE_TYPE_PAGE);
if (isNotNull(sortOrder) && isNotNull(sortName)) {
baseExample.setOrderByClause(baseExample.getTableAlias() + "." + sortName + " " + sortOrder);
} else if (isNotNull(sortName) && !isNotNull(sortOrder)) {
baseExample.setOrderByClause(sortName);
}
List<SubTask> result = getService().selectByExample(baseExample);
Map<String, List<SubTask>> collect = result.stream().collect(Collectors.groupingBy(SubTask::getPersonUnid, Collectors.toList()));
return getSuccessJsonMsg(MESSAGE_SELECT_SUCCESS, collect);
} else {
return super.page(subTaskVo, page, pageSize, sortName, sortOrder);
}
}
}
\ No newline at end of file
......@@ -29,8 +29,7 @@ public class TaskController extends TaskBaseController {
private SubTaskService subTaskService;
@Resource
private UserService userService;
@Resource
private TaskPackService taskPackService;
@Override
protected BaseExample getExample(TaskVo taskVo, int type) {
......@@ -40,53 +39,6 @@ public class TaskController extends TaskBaseController {
return taskExample;
}
@Override
@RequestMapping(value = "", method = RequestMethod.POST)
@ResponseBody
public Object add(@RequestBody TaskVo taskVo) {
long loginId = StpUtil.getLoginIdAsLong();
taskVo.setCreateUser(loginId);
List<Long> packIds = taskVo.getPackIds();
TaskService service = (TaskService) getService();
Task task = service.addTaskWithPack(taskVo, packIds);
return JsonMessageUtil.getSuccessJsonMsg(task);
}
@Override
@RequestMapping(value = "", method = RequestMethod.GET)
@ResponseBody
public Object page(TaskVo taskVo, @RequestParam(value = "page", defaultValue = "-1") int page, @RequestParam(value = "pageSize", defaultValue = "100") int pageSize, String sortName, String sortOrder) {
BaseExample baseExample = getExample(taskVo, EXAMPLE_TYPE_PAGE);
if (isNotNull(sortOrder) && isNotNull(sortName)) {
baseExample.setOrderByClause(baseExample.getTableAlias() + "." + sortName + " " + sortOrder);
} else if (isNotNull(sortName) && !isNotNull(sortOrder)) {
baseExample.setOrderByClause(sortName);
}
List<Task> result;
PageInfo<Task> pageInfo = null;
if (page <= 0) {
result = taskService.selectByExample(baseExample);
} else {
pageInfo = taskService.pagedQuery(baseExample, page, pageSize);
result = pageInfo.getList();
}
List<Long> taskIds = result.stream().map(Task::getId).collect(Collectors.toList());
TaskPackExample taskPackExample = new TaskPackExample();
taskPackExample.createPackColumns();
taskPackExample.createColumns();
taskPackExample.createCriteria().andTaskIdIn(taskIds);
List<TaskPack> taskPacks = taskPackService.selectByExample(taskPackExample);
Map<Long, List<Pack>> task_packs_map = taskPacks.stream().collect(Collectors.groupingBy(TaskPack::getTaskId, Collectors.mapping(TaskPack::getPack, Collectors.toList())));
for (Task task : result) {
List<Pack> packs = task_packs_map.get(task.getId());
task.setPacks(packs);
}
if (page <= 0) {
return getSuccessJsonMsg(MESSAGE_SELECT_SUCCESS, result);
} else {
return getSuccessJsonMsg(MESSAGE_PAGE_SUCCESS, pageInfo);
}
}
@GetMapping("/equallyAssign")
@ResponseBody
......
package com.viontech.label.platform.controller.web;
import com.viontech.label.platform.base.BaseExample;
import com.viontech.label.platform.controller.base.TaskPackBaseController;
import com.viontech.label.platform.model.TaskPackExample;
import com.viontech.label.platform.vo.TaskPackVo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/taskPacks")
public class TaskPackController extends TaskPackBaseController {
@Override
protected BaseExample getExample(TaskPackVo taskPackVo, int type) {
TaskPackExample taskPackExample = (TaskPackExample)super.getExample(taskPackVo,type);
return taskPackExample;
}
}
\ No newline at end of file
......@@ -5,6 +5,7 @@ import cn.dev33.satoken.stp.StpUtil;
import com.viontech.keliu.util.JsonMessageUtil;
import com.viontech.keliu.util.JsonMessageUtil.JsonMessage;
import com.viontech.label.platform.base.BaseExample;
import com.viontech.label.platform.config.VionConfig;
import com.viontech.label.platform.controller.base.UserBaseController;
import com.viontech.label.platform.model.User;
import com.viontech.label.platform.model.UserExample;
......@@ -12,7 +13,9 @@ import com.viontech.label.platform.vo.UserVo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import static com.viontech.keliu.util.JsonMessageUtil.getSuccessJsonMsg;
......@@ -21,8 +24,16 @@ import static com.viontech.keliu.util.JsonMessageUtil.getSuccessJsonMsg;
@RequestMapping("/users")
public class UserController extends UserBaseController {
@Resource
private VionConfig vionConfig;
@Override
protected BaseExample getExample(UserVo userVo, int type) {
User currentUser = userService.getCurrentUser();
if (!currentUser.getType().equals(0)) {
Long accountId = currentUser.getAccountId();
userVo.setAccountId(accountId);
}
UserExample example = (UserExample) super.getExample(userVo, type);
example.createColumns().hasCreateTimeColumn().hasCreateUserColumn().hasIdColumn().hasAccountIdColumn().hasLastLoginTimeColumn().hasNameColumn()
.hasUsernameColumn().hasTelColumn().hasMailColumn().hasTypeColumn().hasUnidColumn();
......@@ -43,12 +54,15 @@ public class UserController extends UserBaseController {
user.setPassword(null);
if (password.equals(passwordInDb)) {
StpUtil.setLoginId(user.getId());
Integer type = user.getType();
HashMap<String, List<String>> menu = vionConfig.getMenuMap().get(type);
UserVo userVo = new UserVo();
userVo.setLastLoginTime(new Date());
SaTokenInfo tokenInfo = StpUtil.getTokenInfo();
update(user.getId(), userVo);
userVo.setModel(user);
userVo.setTokenInfo(tokenInfo);
userVo.setMenu(menu);
return JsonMessageUtil.getSuccessJsonMsg("success", userVo);
} else {
return JsonMessageUtil.getErrorJsonMsg("error password");
......
......@@ -3,9 +3,11 @@ package com.viontech.label.platform.mapper;
import com.viontech.label.platform.base.BaseMapper;
import com.viontech.label.platform.model.Pack;
import com.viontech.label.platform.model.PackExample;
import java.util.List;
import com.viontech.label.platform.model.SubTask;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
public interface PackMapper extends BaseMapper {
int countByExample(PackExample example);
......@@ -29,4 +31,7 @@ public interface PackMapper extends BaseMapper {
int updateByPrimaryKeySelective(Pack record);
int updateByPrimaryKey(Pack record);
@Select("select count(*),status from (select status from d_sub_task where pack_id = #{packId} group by person_unid,status) as n group by status ")
List<SubTask> countPersonStatus(Long packId);
}
\ No newline at end of file
package com.viontech.label.platform.mapper;
import com.viontech.label.platform.base.BaseMapper;
import com.viontech.label.platform.model.TaskPack;
import com.viontech.label.platform.model.TaskPackExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface TaskPackMapper extends BaseMapper {
int countByExample(TaskPackExample example);
int deleteByExample(TaskPackExample example);
int deleteByPrimaryKey(Long id);
int insert(TaskPack record);
int insertSelective(TaskPack record);
List<TaskPack> selectByExample(TaskPackExample example);
TaskPack selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") TaskPack record, @Param("example") TaskPackExample example);
int updateByExample(@Param("record") TaskPack record, @Param("example") TaskPackExample example);
int updateByPrimaryKeySelective(TaskPack record);
int updateByPrimaryKey(TaskPack record);
}
\ No newline at end of file
......@@ -8,8 +8,9 @@
<result column="pack_create_user" property="createUser" />
<result column="pack_storage_id" property="storageId" />
<result column="pack_name" property="name" />
<result column="pack_status" property="status" />
<result column="pack_type" property="type" />
<result column="pack_status" property="status" />
<result column="pack_task_id" property="taskId" />
</resultMap>
<resultMap id="BaseResultMap" type="com.viontech.label.platform.model.Pack" extends="BaseResultMapRoot" >
<result column="storage_id" property="storage.id" />
......@@ -19,6 +20,21 @@
<result column="storage_name" property="storage.name" />
<result column="storage_type" property="storage.type" />
<result column="storage_path" property="storage.path" />
<result column="task_id" property="task.id" />
<result column="task_unid" property="task.unid" />
<result column="task_create_time" property="task.createTime" />
<result column="task_create_user" property="task.createUser" />
<result column="task_name" property="task.name" />
<result column="task_type" property="task.type" />
<result column="task_label_type" property="task.labelType" />
<result column="task_account_id" property="task.accountId" />
<result column="task_contractor_manager_id" property="task.contractorManagerId" />
<result column="task_manager_id" property="task.managerId" />
<result column="task_assign_time" property="task.assignTime" />
<result column="task_finish_time" property="task.finishTime" />
<result column="task_in_inspector_id" property="task.inInspectorId" />
<result column="task_description" property="task.description" />
<result column="task_status" property="task.status" />
</resultMap>
<sql id="Left_Join_List" >
<foreach collection="leftJoinTableSet" item="leftJoinTable" >
......@@ -26,6 +42,9 @@
<when test="leftJoinTable == 'd_storage'.toString()" >
left join "d_storage" "storage" on "storage".id = "pack".storage_id
</when>
<when test="leftJoinTable == 'd_task'.toString()" >
left join "d_task" "task" on "task".id = "pack".task_id
</when>
</choose>
</foreach>
</sql>
......@@ -90,7 +109,7 @@
<sql id="Base_Column_List_Root" >
"pack".id as pack_id, "pack".unid as pack_unid, "pack".create_time as pack_create_time,
"pack".create_user as pack_create_user, "pack".storage_id as pack_storage_id, "pack"."name" as "pack_name",
"pack"."status" as "pack_status", "pack"."type" as "pack_type"
"pack"."type" as "pack_type", "pack"."status" as "pack_status", "pack".task_id as pack_task_id
</sql>
<sql id="Base_Column_List" >
<if test="!(_parameter.getClass().getSimpleName() == 'PackExample')" >
......@@ -115,6 +134,14 @@
<include refid="com.viontech.label.platform.mapper.StorageMapper.Base_Column_List_Root" />
</if>
</when>
<when test="columns.tableName == 'd_task'.toString()" >
<if test="columns.valid" >
${columns.columnContainerStr}
</if>
<if test="!columns.valid" >
<include refid="com.viontech.label.platform.mapper.TaskMapper.Base_Column_List_Root" />
</if>
</when>
</choose>
</foreach>
</if>
......@@ -155,11 +182,11 @@
</delete>
<insert id="insert" parameterType="com.viontech.label.platform.model.Pack" useGeneratedKeys="true" keyProperty="id" keyColumn="id" >
insert into "d_pack" (unid, create_time, create_user,
storage_id, "name", "status",
"type")
storage_id, "name", "type",
"status", task_id)
values (#{unid,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{createUser,jdbcType=BIGINT},
#{storageId,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{status,jdbcType=INTEGER},
#{type,jdbcType=INTEGER})
#{storageId,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=INTEGER},
#{status,jdbcType=INTEGER}, #{taskId,jdbcType=BIGINT})
</insert>
<insert id="insertSelective" parameterType="com.viontech.label.platform.model.Pack" useGeneratedKeys="true" keyProperty="id" keyColumn="id" >
insert into "d_pack"
......@@ -179,11 +206,14 @@
<if test="name != null" >
"name",
</if>
<if test="type != null" >
"type",
</if>
<if test="status != null" >
"status",
</if>
<if test="type != null" >
"type",
<if test="taskId != null" >
task_id,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
......@@ -202,11 +232,14 @@
<if test="name != null" >
#{name,jdbcType=VARCHAR},
</if>
<if test="type != null" >
#{type,jdbcType=INTEGER},
</if>
<if test="status != null" >
#{status,jdbcType=INTEGER},
</if>
<if test="type != null" >
#{type,jdbcType=INTEGER},
<if test="taskId != null" >
#{taskId,jdbcType=BIGINT},
</if>
</trim>
</insert>
......@@ -238,11 +271,14 @@
<if test="record.name != null" >
"name" = #{record.name,jdbcType=VARCHAR},
</if>
<if test="record.type != null" >
"type" = #{record.type,jdbcType=INTEGER},
</if>
<if test="record.status != null" >
"status" = #{record.status,jdbcType=INTEGER},
</if>
<if test="record.type != null" >
"type" = #{record.type,jdbcType=INTEGER},
<if test="record.taskId != null" >
task_id = #{record.taskId,jdbcType=BIGINT},
</if>
</set>
<if test="_parameter != null" >
......@@ -257,8 +293,9 @@
create_user = #{record.createUser,jdbcType=BIGINT},
storage_id = #{record.storageId,jdbcType=BIGINT},
"name" = #{record.name,jdbcType=VARCHAR},
"type" = #{record.type,jdbcType=INTEGER},
"status" = #{record.status,jdbcType=INTEGER},
"type" = #{record.type,jdbcType=INTEGER}
task_id = #{record.taskId,jdbcType=BIGINT}
<if test="_parameter != null" >
<include refid="Update_By_Example_Where_Clause" />
</if>
......@@ -281,11 +318,14 @@
<if test="name != null" >
"name" = #{name,jdbcType=VARCHAR},
</if>
<if test="type != null" >
"type" = #{type,jdbcType=INTEGER},
</if>
<if test="status != null" >
"status" = #{status,jdbcType=INTEGER},
</if>
<if test="type != null" >
"type" = #{type,jdbcType=INTEGER},
<if test="taskId != null" >
task_id = #{taskId,jdbcType=BIGINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
......@@ -297,8 +337,9 @@
create_user = #{createUser,jdbcType=BIGINT},
storage_id = #{storageId,jdbcType=BIGINT},
"name" = #{name,jdbcType=VARCHAR},
"type" = #{type,jdbcType=INTEGER},
"status" = #{status,jdbcType=INTEGER},
"type" = #{type,jdbcType=INTEGER}
task_id = #{taskId,jdbcType=BIGINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>
\ No newline at end of file
<?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.viontech.label.platform.mapper.TaskPackMapper" >
<resultMap id="BaseResultMapRoot" type="com.viontech.label.platform.model.TaskPack" >
<id column="taskPack_id" property="id" />
<result column="taskPack_create_time" property="createTime" />
<result column="taskPack_task_id" property="taskId" />
<result column="taskPack_pack_id" property="packId" />
</resultMap>
<resultMap id="BaseResultMap" type="com.viontech.label.platform.model.TaskPack" extends="BaseResultMapRoot" >
<result column="task_id" property="task.id" />
<result column="task_unid" property="task.unid" />
<result column="task_create_time" property="task.createTime" />
<result column="task_create_user" property="task.createUser" />
<result column="task_name" property="task.name" />
<result column="task_type" property="task.type" />
<result column="task_label_type" property="task.labelType" />
<result column="task_account_id" property="task.accountId" />
<result column="task_contractor_manager_id" property="task.contractorManagerId" />
<result column="task_manager_id" property="task.managerId" />
<result column="task_in_inspector_id" property="task.inInspectorId" />
<result column="task_description" property="task.description" />
<result column="task_status" property="task.status" />
<result column="pack_id" property="pack.id" />
<result column="pack_unid" property="pack.unid" />
<result column="pack_create_time" property="pack.createTime" />
<result column="pack_create_user" property="pack.createUser" />
<result column="pack_storage_id" property="pack.storageId" />
<result column="pack_name" property="pack.name" />
<result column="pack_status" property="pack.status" />
</resultMap>
<sql id="Left_Join_List" >
<foreach collection="leftJoinTableSet" item="leftJoinTable" >
<choose >
<when test="leftJoinTable == 'd_task'.toString()" >
left join "d_task" "task" on "task".id = "taskPack".task_id
</when>
<when test="leftJoinTable == 'd_pack'.toString()" >
left join "d_pack" "pack" on "pack".id = "taskPack".pack_id
</when>
</choose>
</foreach>
</sql>
<sql id="Example_Where_Clause" >
<where >
<foreach collection="oredCriteria" item="criteria" separator="or" >
<if test="criteria.valid" >
<trim prefix="(" suffix=")" prefixOverrides="and" >
<foreach collection="criteria.criteria" item="criterion" >
<choose >
<when test="criterion.noValue" >
and ${criterion.condition}
</when>
<when test="criterion.singleValue" >
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue" >
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue" >
and ${criterion.condition}
<foreach collection="criterion.value" item="listItem" open="(" close=")" separator="," >
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause" >
<where >
<foreach collection="example.oredCriteria" item="criteria" separator="or" >
<if test="criteria.valid" >
<trim prefix="(" suffix=")" prefixOverrides="and" >
<foreach collection="criteria.criteria" item="criterion" >
<choose >
<when test="criterion.noValue" >
and ${criterion.condition}
</when>
<when test="criterion.singleValue" >
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue" >
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue" >
and ${criterion.condition}
<foreach collection="criterion.value" item="listItem" open="(" close=")" separator="," >
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List_Root" >
"taskPack".id as taskPack_id, "taskPack".create_time as taskPack_create_time, "taskPack".task_id as taskPack_task_id,
"taskPack".pack_id as taskPack_pack_id
</sql>
<sql id="Base_Column_List" >
<if test="!(_parameter.getClass().getSimpleName() == 'TaskPackExample')" >
<include refid="com.viontech.label.platform.mapper.TaskPackMapper.Base_Column_List_Root" />
</if>
<if test="_parameter.getClass().getSimpleName() == 'TaskPackExample'" >
<foreach collection="columnContainerSet" item="columns" separator="," >
<choose >
<when test="columns.tableName == 'r_task_pack'.toString()" >
<if test="columns.valid" >
${columns.columnContainerStr}
</if>
<if test="!columns.valid" >
<include refid="com.viontech.label.platform.mapper.TaskPackMapper.Base_Column_List_Root" />
</if>
</when>
<when test="columns.tableName == 'd_task'.toString()" >
<if test="columns.valid" >
${columns.columnContainerStr}
</if>
<if test="!columns.valid" >
<include refid="com.viontech.label.platform.mapper.TaskMapper.Base_Column_List_Root" />
</if>
</when>
<when test="columns.tableName == 'd_pack'.toString()" >
<if test="columns.valid" >
${columns.columnContainerStr}
</if>
<if test="!columns.valid" >
<include refid="com.viontech.label.platform.mapper.PackMapper.Base_Column_List_Root" />
</if>
</when>
</choose>
</foreach>
</if>
</sql>
<select id="selectByExample" resultMap="BaseResultMap" parameterType="com.viontech.label.platform.model.TaskPackExample" >
select
<if test="distinct" >
distinct
</if>
<include refid="Base_Column_List" />
from "r_task_pack" "taskPack"
<include refid="Left_Join_List" />
<if test="_parameter != null" >
<include refid="Example_Where_Clause" />
</if>
<if test="groupByClause != null" >
group by ${groupByClause}
</if>
<if test="orderByClause != null" >
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Long" >
select
<include refid="Base_Column_List" />
from "r_task_pack" "taskPack"
where "taskPack".id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long" >
delete from "r_task_pack" "taskPack"
where id = #{id,jdbcType=BIGINT}
</delete>
<delete id="deleteByExample" parameterType="com.viontech.label.platform.model.TaskPackExample" >
delete from "r_task_pack" "taskPack"
<if test="_parameter != null" >
<include refid="Example_Where_Clause" />
</if>
</delete>
<insert id="insert" parameterType="com.viontech.label.platform.model.TaskPack" useGeneratedKeys="true" keyProperty="id" keyColumn="id" >
insert into "r_task_pack" (create_time, task_id, pack_id
)
values (#{createTime,jdbcType=TIMESTAMP}, #{taskId,jdbcType=BIGINT}, #{packId,jdbcType=BIGINT}
)
</insert>
<insert id="insertSelective" parameterType="com.viontech.label.platform.model.TaskPack" useGeneratedKeys="true" keyProperty="id" keyColumn="id" >
insert into "r_task_pack"
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="createTime != null" >
create_time,
</if>
<if test="taskId != null" >
task_id,
</if>
<if test="packId != null" >
pack_id,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="createTime != null" >
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="taskId != null" >
#{taskId,jdbcType=BIGINT},
</if>
<if test="packId != null" >
#{packId,jdbcType=BIGINT},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.viontech.label.platform.model.TaskPackExample" resultType="java.lang.Integer" >
select count(*) from "r_task_pack" "taskPack"
<include refid="Left_Join_List" />
<if test="_parameter != null" >
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map" >
update "r_task_pack" "taskPack"
<set >
<if test="record.id != null" >
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.createTime != null" >
create_time = #{record.createTime,jdbcType=TIMESTAMP},
</if>
<if test="record.taskId != null" >
task_id = #{record.taskId,jdbcType=BIGINT},
</if>
<if test="record.packId != null" >
pack_id = #{record.packId,jdbcType=BIGINT},
</if>
</set>
<if test="_parameter != null" >
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map" >
update "r_task_pack" "taskPack"
set id = #{record.id,jdbcType=BIGINT},
create_time = #{record.createTime,jdbcType=TIMESTAMP},
task_id = #{record.taskId,jdbcType=BIGINT},
pack_id = #{record.packId,jdbcType=BIGINT}
<if test="_parameter != null" >
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.viontech.label.platform.model.TaskPack" >
update "r_task_pack"
<set >
<if test="createTime != null" >
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="taskId != null" >
task_id = #{taskId,jdbcType=BIGINT},
</if>
<if test="packId != null" >
pack_id = #{packId,jdbcType=BIGINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.viontech.label.platform.model.TaskPack" >
update "r_task_pack"
set create_time = #{createTime,jdbcType=TIMESTAMP},
task_id = #{taskId,jdbcType=BIGINT},
pack_id = #{packId,jdbcType=BIGINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>
\ No newline at end of file
......@@ -16,12 +16,16 @@ public class Pack extends BaseModel {
private String name;
private Integer type;
private Integer status;
private Integer type;
private Long taskId;
private Storage storage;
private Task task;
public Long getId() {
return id;
}
......@@ -70,6 +74,14 @@ public class Pack extends BaseModel {
this.name = name == null ? null : name.trim();
}
public Integer getType() {
return type;
}
public void setType(Integer type) {
this.type = type;
}
public Integer getStatus() {
return status;
}
......@@ -78,12 +90,12 @@ public class Pack extends BaseModel {
this.status = status;
}
public Integer getType() {
return type;
public Long getTaskId() {
return taskId;
}
public void setType(Integer type) {
this.type = type;
public void setTaskId(Long taskId) {
this.taskId = taskId;
}
public Storage getStorage() {
......@@ -93,4 +105,12 @@ public class Pack extends BaseModel {
public void setStorage(Storage storage) {
this.storage = storage;
}
public Task getTask() {
return task;
}
public void setTask(Task task) {
this.task = task;
}
}
\ No newline at end of file
......@@ -58,6 +58,48 @@ public class PackExample extends BaseExample {
return newCriteria;
}
public TaskExample.ColumnContainer createTaskColumns() {
TaskExample taskExample = new TaskExample();
TaskExample.ColumnContainer columnContainer = (TaskExample.ColumnContainer) columnContainerMap.get(taskExample.getTableName());
if(columnContainer == null){
columnContainer = taskExample.createColumns();
columnContainerMap.put(taskExample.getTableName(),columnContainer);
}
leftJoinTableSet.add(columnContainer.getTableName());
return columnContainer;
}
public TaskExample.Criteria andTaskCriteria() {
TaskExample taskExample = new TaskExample();
TaskExample.Criteria criteria = taskExample.createCriteria();
Criteria myCriteria = null;
if (oredCriteria.size() == 0) {
myCriteria = createCriteriaInternal();
oredCriteria.add(myCriteria);
}else{
myCriteria = (Criteria)oredCriteria.get(0);
}
leftJoinTableSet.add(criteria.getTableName());
criteria.setAllCriteria(myCriteria.getAllCriteria());
return criteria;
}
public TaskExample.Criteria orTaskCriteria() {
TaskExample taskExample = new TaskExample();
TaskExample.Criteria criteria = taskExample.createCriteria();
leftJoinTableSet.add(criteria.getTableName());
oredCriteria.add(criteria);
return criteria;
}
public TaskExample.Criteria andTaskCriteria(Criteria criteria) {
TaskExample taskExample = new TaskExample();
TaskExample.Criteria newCriteria = taskExample.createCriteria();
leftJoinTableSet.add(newCriteria.getTableName());
newCriteria.setAllCriteria(criteria.getAllCriteria());
return newCriteria;
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
......@@ -511,6 +553,66 @@ public class PackExample extends BaseExample {
return (Criteria) this;
}
public Criteria andTypeIsNull() {
addCriterion("\"pack\".\"type\" is null");
return (Criteria) this;
}
public Criteria andTypeIsNotNull() {
addCriterion("\"pack\".\"type\" is not null");
return (Criteria) this;
}
public Criteria andTypeEqualTo(Integer value) {
addCriterion("\"pack\".\"type\" =", value, "type");
return (Criteria) this;
}
public Criteria andTypeNotEqualTo(Integer value) {
addCriterion("\"pack\".\"type\" <>", value, "type");
return (Criteria) this;
}
public Criteria andTypeGreaterThan(Integer value) {
addCriterion("\"pack\".\"type\" >", value, "type");
return (Criteria) this;
}
public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
addCriterion("\"pack\".\"type\" >=", value, "type");
return (Criteria) this;
}
public Criteria andTypeLessThan(Integer value) {
addCriterion("\"pack\".\"type\" <", value, "type");
return (Criteria) this;
}
public Criteria andTypeLessThanOrEqualTo(Integer value) {
addCriterion("\"pack\".\"type\" <=", value, "type");
return (Criteria) this;
}
public Criteria andTypeIn(List<Integer> values) {
addCriterion("\"pack\".\"type\" in", values, "type");
return (Criteria) this;
}
public Criteria andTypeNotIn(List<Integer> values) {
addCriterion("\"pack\".\"type\" not in", values, "type");
return (Criteria) this;
}
public Criteria andTypeBetween(Integer value1, Integer value2) {
addCriterion("\"pack\".\"type\" between", value1, value2, "type");
return (Criteria) this;
}
public Criteria andTypeNotBetween(Integer value1, Integer value2) {
addCriterion("\"pack\".\"type\" not between", value1, value2, "type");
return (Criteria) this;
}
public Criteria andStatusIsNull() {
addCriterion("\"pack\".\"status\" is null");
return (Criteria) this;
......@@ -571,63 +673,63 @@ public class PackExample extends BaseExample {
return (Criteria) this;
}
public Criteria andTypeIsNull() {
addCriterion("\"pack\".\"type\" is null");
public Criteria andTaskIdIsNull() {
addCriterion("\"pack\".task_id is null");
return (Criteria) this;
}
public Criteria andTypeIsNotNull() {
addCriterion("\"pack\".\"type\" is not null");
public Criteria andTaskIdIsNotNull() {
addCriterion("\"pack\".task_id is not null");
return (Criteria) this;
}
public Criteria andTypeEqualTo(Integer value) {
addCriterion("\"pack\".\"type\" =", value, "type");
public Criteria andTaskIdEqualTo(Long value) {
addCriterion("\"pack\".task_id =", value, "taskId");
return (Criteria) this;
}
public Criteria andTypeNotEqualTo(Integer value) {
addCriterion("\"pack\".\"type\" <>", value, "type");
public Criteria andTaskIdNotEqualTo(Long value) {
addCriterion("\"pack\".task_id <>", value, "taskId");
return (Criteria) this;
}
public Criteria andTypeGreaterThan(Integer value) {
addCriterion("\"pack\".\"type\" >", value, "type");
public Criteria andTaskIdGreaterThan(Long value) {
addCriterion("\"pack\".task_id >", value, "taskId");
return (Criteria) this;
}
public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
addCriterion("\"pack\".\"type\" >=", value, "type");
public Criteria andTaskIdGreaterThanOrEqualTo(Long value) {
addCriterion("\"pack\".task_id >=", value, "taskId");
return (Criteria) this;
}
public Criteria andTypeLessThan(Integer value) {
addCriterion("\"pack\".\"type\" <", value, "type");
public Criteria andTaskIdLessThan(Long value) {
addCriterion("\"pack\".task_id <", value, "taskId");
return (Criteria) this;
}
public Criteria andTypeLessThanOrEqualTo(Integer value) {
addCriterion("\"pack\".\"type\" <=", value, "type");
public Criteria andTaskIdLessThanOrEqualTo(Long value) {
addCriterion("\"pack\".task_id <=", value, "taskId");
return (Criteria) this;
}
public Criteria andTypeIn(List<Integer> values) {
addCriterion("\"pack\".\"type\" in", values, "type");
public Criteria andTaskIdIn(List<Long> values) {
addCriterion("\"pack\".task_id in", values, "taskId");
return (Criteria) this;
}
public Criteria andTypeNotIn(List<Integer> values) {
addCriterion("\"pack\".\"type\" not in", values, "type");
public Criteria andTaskIdNotIn(List<Long> values) {
addCriterion("\"pack\".task_id not in", values, "taskId");
return (Criteria) this;
}
public Criteria andTypeBetween(Integer value1, Integer value2) {
addCriterion("\"pack\".\"type\" between", value1, value2, "type");
public Criteria andTaskIdBetween(Long value1, Long value2) {
addCriterion("\"pack\".task_id between", value1, value2, "taskId");
return (Criteria) this;
}
public Criteria andTypeNotBetween(Integer value1, Integer value2) {
addCriterion("\"pack\".\"type\" not between", value1, value2, "type");
public Criteria andTaskIdNotBetween(Long value1, Long value2) {
addCriterion("\"pack\".task_id not between", value1, value2, "taskId");
return (Criteria) this;
}
}
......@@ -668,13 +770,18 @@ public class PackExample extends BaseExample {
return (ColumnContainer) this;
}
public ColumnContainer hasTypeColumn() {
addColumnStr("\"pack\".\"type\" as \"pack_type\" ");
return (ColumnContainer) this;
}
public ColumnContainer hasStatusColumn() {
addColumnStr("\"pack\".\"status\" as \"pack_status\" ");
return (ColumnContainer) this;
}
public ColumnContainer hasTypeColumn() {
addColumnStr("\"pack\".\"type\" as \"pack_type\" ");
public ColumnContainer hasTaskIdColumn() {
addColumnStr("\"pack\".task_id as pack_task_id ");
return (ColumnContainer) this;
}
}
......
package com.viontech.label.platform.model;
import com.viontech.label.platform.base.BaseModel;
import java.util.Date;
public class TaskPack extends BaseModel {
private Long id;
private Date createTime;
private Long taskId;
private Long packId;
private Task task;
private Pack pack;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Long getTaskId() {
return taskId;
}
public void setTaskId(Long taskId) {
this.taskId = taskId;
}
public Long getPackId() {
return packId;
}
public void setPackId(Long packId) {
this.packId = packId;
}
public Task getTask() {
return task;
}
public void setTask(Task task) {
this.task = task;
}
public Pack getPack() {
return pack;
}
public void setPack(Pack pack) {
this.pack = pack;
}
}
\ No newline at end of file
package com.viontech.label.platform.model;
import com.viontech.label.platform.base.BaseExample;
import java.util.Date;
import java.util.List;
public class TaskPackExample extends BaseExample {
public TaskPackExample() {
super();
tableName = "r_task_pack";
tableAlias = "taskPack";
ignoreCase = false;
}
public TaskExample.ColumnContainer createTaskColumns() {
TaskExample taskExample = new TaskExample();
TaskExample.ColumnContainer columnContainer = (TaskExample.ColumnContainer) columnContainerMap.get(taskExample.getTableName());
if(columnContainer == null){
columnContainer = taskExample.createColumns();
columnContainerMap.put(taskExample.getTableName(),columnContainer);
}
leftJoinTableSet.add(columnContainer.getTableName());
return columnContainer;
}
public TaskExample.Criteria andTaskCriteria() {
TaskExample taskExample = new TaskExample();
TaskExample.Criteria criteria = taskExample.createCriteria();
Criteria myCriteria = null;
if (oredCriteria.size() == 0) {
myCriteria = createCriteriaInternal();
oredCriteria.add(myCriteria);
}else{
myCriteria = (Criteria)oredCriteria.get(0);
}
leftJoinTableSet.add(criteria.getTableName());
criteria.setAllCriteria(myCriteria.getAllCriteria());
return criteria;
}
public TaskExample.Criteria orTaskCriteria() {
TaskExample taskExample = new TaskExample();
TaskExample.Criteria criteria = taskExample.createCriteria();
leftJoinTableSet.add(criteria.getTableName());
oredCriteria.add(criteria);
return criteria;
}
public TaskExample.Criteria andTaskCriteria(Criteria criteria) {
TaskExample taskExample = new TaskExample();
TaskExample.Criteria newCriteria = taskExample.createCriteria();
leftJoinTableSet.add(newCriteria.getTableName());
newCriteria.setAllCriteria(criteria.getAllCriteria());
return newCriteria;
}
public PackExample.ColumnContainer createPackColumns() {
PackExample packExample = new PackExample();
PackExample.ColumnContainer columnContainer = (PackExample.ColumnContainer) columnContainerMap.get(packExample.getTableName());
if(columnContainer == null){
columnContainer = packExample.createColumns();
columnContainerMap.put(packExample.getTableName(),columnContainer);
}
leftJoinTableSet.add(columnContainer.getTableName());
return columnContainer;
}
public PackExample.Criteria andPackCriteria() {
PackExample packExample = new PackExample();
PackExample.Criteria criteria = packExample.createCriteria();
Criteria myCriteria = null;
if (oredCriteria.size() == 0) {
myCriteria = createCriteriaInternal();
oredCriteria.add(myCriteria);
}else{
myCriteria = (Criteria)oredCriteria.get(0);
}
leftJoinTableSet.add(criteria.getTableName());
criteria.setAllCriteria(myCriteria.getAllCriteria());
return criteria;
}
public PackExample.Criteria orPackCriteria() {
PackExample packExample = new PackExample();
PackExample.Criteria criteria = packExample.createCriteria();
leftJoinTableSet.add(criteria.getTableName());
oredCriteria.add(criteria);
return criteria;
}
public PackExample.Criteria andPackCriteria(Criteria criteria) {
PackExample packExample = new PackExample();
PackExample.Criteria newCriteria = packExample.createCriteria();
leftJoinTableSet.add(newCriteria.getTableName());
newCriteria.setAllCriteria(criteria.getAllCriteria());
return newCriteria;
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria(this.tableName,this.ignoreCase);
return criteria;
}
public ColumnContainer createColumns() {
ColumnContainer columnContainer = (ColumnContainer) columnContainerMap.get(this.tableName);
if(columnContainer == null){
columnContainer = new ColumnContainer(this.tableName);
columnContainerMap.put(this.tableName,columnContainer);
}
return (ColumnContainer)columnContainer;
}
public static class Criteria extends GeneratedCriteria {
protected Criteria(String tableName) {
super(tableName);
tableName = "r_task_pack";
}
protected Criteria(String tableName, boolean ignoreCase) {
this(tableName);
this.ignoreCase = ignoreCase;
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public void setAllCriteria(List<Criterion> criteria) {
this.criteria = criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value,ignoreCase));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andIdIsNull() {
addCriterion("\"taskPack\".id is null");
return (Criteria) this;
}
public Criteria andIdIsNotNull() {
addCriterion("\"taskPack\".id is not null");
return (Criteria) this;
}
public Criteria andIdEqualTo(Long value) {
addCriterion("\"taskPack\".id =", value, "id");
return (Criteria) this;
}
public Criteria andIdNotEqualTo(Long value) {
addCriterion("\"taskPack\".id <>", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThan(Long value) {
addCriterion("\"taskPack\".id >", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThanOrEqualTo(Long value) {
addCriterion("\"taskPack\".id >=", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThan(Long value) {
addCriterion("\"taskPack\".id <", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThanOrEqualTo(Long value) {
addCriterion("\"taskPack\".id <=", value, "id");
return (Criteria) this;
}
public Criteria andIdIn(List<Long> values) {
addCriterion("\"taskPack\".id in", values, "id");
return (Criteria) this;
}
public Criteria andIdNotIn(List<Long> values) {
addCriterion("\"taskPack\".id not in", values, "id");
return (Criteria) this;
}
public Criteria andIdBetween(Long value1, Long value2) {
addCriterion("\"taskPack\".id between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andIdNotBetween(Long value1, Long value2) {
addCriterion("\"taskPack\".id not between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andCreateTimeIsNull() {
addCriterion("\"taskPack\".create_time is null");
return (Criteria) this;
}
public Criteria andCreateTimeIsNotNull() {
addCriterion("\"taskPack\".create_time is not null");
return (Criteria) this;
}
public Criteria andCreateTimeEqualTo(Date value) {
addCriterion("\"taskPack\".create_time =", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotEqualTo(Date value) {
addCriterion("\"taskPack\".create_time <>", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeGreaterThan(Date value) {
addCriterion("\"taskPack\".create_time >", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
addCriterion("\"taskPack\".create_time >=", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeLessThan(Date value) {
addCriterion("\"taskPack\".create_time <", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
addCriterion("\"taskPack\".create_time <=", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeIn(List<Date> values) {
addCriterion("\"taskPack\".create_time in", values, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotIn(List<Date> values) {
addCriterion("\"taskPack\".create_time not in", values, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeBetween(Date value1, Date value2) {
addCriterion("\"taskPack\".create_time between", value1, value2, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
addCriterion("\"taskPack\".create_time not between", value1, value2, "createTime");
return (Criteria) this;
}
public Criteria andTaskIdIsNull() {
addCriterion("\"taskPack\".task_id is null");
return (Criteria) this;
}
public Criteria andTaskIdIsNotNull() {
addCriterion("\"taskPack\".task_id is not null");
return (Criteria) this;
}
public Criteria andTaskIdEqualTo(Long value) {
addCriterion("\"taskPack\".task_id =", value, "taskId");
return (Criteria) this;
}
public Criteria andTaskIdNotEqualTo(Long value) {
addCriterion("\"taskPack\".task_id <>", value, "taskId");
return (Criteria) this;
}
public Criteria andTaskIdGreaterThan(Long value) {
addCriterion("\"taskPack\".task_id >", value, "taskId");
return (Criteria) this;
}
public Criteria andTaskIdGreaterThanOrEqualTo(Long value) {
addCriterion("\"taskPack\".task_id >=", value, "taskId");
return (Criteria) this;
}
public Criteria andTaskIdLessThan(Long value) {
addCriterion("\"taskPack\".task_id <", value, "taskId");
return (Criteria) this;
}
public Criteria andTaskIdLessThanOrEqualTo(Long value) {
addCriterion("\"taskPack\".task_id <=", value, "taskId");
return (Criteria) this;
}
public Criteria andTaskIdIn(List<Long> values) {
addCriterion("\"taskPack\".task_id in", values, "taskId");
return (Criteria) this;
}
public Criteria andTaskIdNotIn(List<Long> values) {
addCriterion("\"taskPack\".task_id not in", values, "taskId");
return (Criteria) this;
}
public Criteria andTaskIdBetween(Long value1, Long value2) {
addCriterion("\"taskPack\".task_id between", value1, value2, "taskId");
return (Criteria) this;
}
public Criteria andTaskIdNotBetween(Long value1, Long value2) {
addCriterion("\"taskPack\".task_id not between", value1, value2, "taskId");
return (Criteria) this;
}
public Criteria andPackIdIsNull() {
addCriterion("\"taskPack\".pack_id is null");
return (Criteria) this;
}
public Criteria andPackIdIsNotNull() {
addCriterion("\"taskPack\".pack_id is not null");
return (Criteria) this;
}
public Criteria andPackIdEqualTo(Long value) {
addCriterion("\"taskPack\".pack_id =", value, "packId");
return (Criteria) this;
}
public Criteria andPackIdNotEqualTo(Long value) {
addCriterion("\"taskPack\".pack_id <>", value, "packId");
return (Criteria) this;
}
public Criteria andPackIdGreaterThan(Long value) {
addCriterion("\"taskPack\".pack_id >", value, "packId");
return (Criteria) this;
}
public Criteria andPackIdGreaterThanOrEqualTo(Long value) {
addCriterion("\"taskPack\".pack_id >=", value, "packId");
return (Criteria) this;
}
public Criteria andPackIdLessThan(Long value) {
addCriterion("\"taskPack\".pack_id <", value, "packId");
return (Criteria) this;
}
public Criteria andPackIdLessThanOrEqualTo(Long value) {
addCriterion("\"taskPack\".pack_id <=", value, "packId");
return (Criteria) this;
}
public Criteria andPackIdIn(List<Long> values) {
addCriterion("\"taskPack\".pack_id in", values, "packId");
return (Criteria) this;
}
public Criteria andPackIdNotIn(List<Long> values) {
addCriterion("\"taskPack\".pack_id not in", values, "packId");
return (Criteria) this;
}
public Criteria andPackIdBetween(Long value1, Long value2) {
addCriterion("\"taskPack\".pack_id between", value1, value2, "packId");
return (Criteria) this;
}
public Criteria andPackIdNotBetween(Long value1, Long value2) {
addCriterion("\"taskPack\".pack_id not between", value1, value2, "packId");
return (Criteria) this;
}
}
public static class ColumnContainer extends ColumnContainerBase {
protected ColumnContainer(String tableName) {
super(tableName);
}
public ColumnContainer hasIdColumn() {
addColumnStr("\"taskPack\".id as taskPack_id ");
return (ColumnContainer) this;
}
public ColumnContainer hasCreateTimeColumn() {
addColumnStr("\"taskPack\".create_time as taskPack_create_time ");
return (ColumnContainer) this;
}
public ColumnContainer hasTaskIdColumn() {
addColumnStr("\"taskPack\".task_id as taskPack_task_id ");
return (ColumnContainer) this;
}
public ColumnContainer hasPackIdColumn() {
addColumnStr("\"taskPack\".pack_id as taskPack_pack_id ");
return (ColumnContainer) this;
}
}
}
\ No newline at end of file
package com.viontech.label.platform.model.entity;
import com.viontech.label.platform.base.BaseModel;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* .
*
* @author 谢明辉
* @date 2021/9/14
*/
@Getter
@Setter
@Accessors(chain = true)
public class PackInfo extends BaseModel {
private Long packId;
private Long taskId;
private String packName;
private String taskName;
private Long accountId;
private Date assignTime;
private Long finishCount;
private Long rejectCount;
private Long toBeLabeledCount;
}
......@@ -2,6 +2,12 @@ package com.viontech.label.platform.service.adapter;
import com.viontech.label.platform.base.BaseService;
import com.viontech.label.platform.model.Pack;
import com.viontech.label.platform.model.entity.PackInfo;
import com.viontech.label.platform.vo.PackVo;
import java.util.List;
public interface PackService extends BaseService<Pack> {
List<PackInfo> info(PackVo packVo);
}
\ No newline at end of file
package com.viontech.label.platform.service.adapter;
import com.viontech.label.platform.base.BaseService;
import com.viontech.label.platform.model.TaskPack;
public interface TaskPackService extends BaseService<TaskPack> {
}
\ No newline at end of file
......@@ -6,6 +6,4 @@ import com.viontech.label.platform.model.Task;
import java.util.List;
public interface TaskService extends BaseService<Task> {
Task addTaskWithPack(Task task, List<Long> packIds);
}
\ No newline at end of file
package com.viontech.label.platform.service.impl;
import com.viontech.label.core.constant.SubTaskStatus;
import com.viontech.label.platform.base.BaseMapper;
import com.viontech.label.platform.base.BaseServiceImpl;
import com.viontech.label.platform.mapper.PackMapper;
import com.viontech.label.platform.model.Pack;
import com.viontech.label.platform.model.PackExample;
import com.viontech.label.platform.model.SubTask;
import com.viontech.label.platform.model.Task;
import com.viontech.label.platform.model.entity.PackInfo;
import com.viontech.label.platform.service.adapter.PackService;
import com.viontech.label.platform.vo.PackVo;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
public class PackServiceImpl extends BaseServiceImpl<Pack> implements PackService {
......@@ -18,4 +26,39 @@ public class PackServiceImpl extends BaseServiceImpl<Pack> implements PackServic
public BaseMapper<Pack> getMapper() {
return packMapper;
}
@Override
public List<PackInfo> info(PackVo packVo) {
List<PackInfo> packInfos = new ArrayList<>();
Integer status = packVo.getStatus();
PackExample packExample = new PackExample();
packExample.createTaskColumns();
packExample.createColumns();
packExample.createCriteria().andStatusEqualTo(status);
packExample.andTaskCriteria().andAccountIdEqualTo(packVo.getAccountId());
List<Pack> packs = this.selectByExample(packExample);
for (Pack pack : packs) {
Task task = pack.getTask();
PackInfo packInfo = new PackInfo().setPackId(pack.getId()).setPackName(pack.getName())
.setAccountId(task.getAccountId()).setTaskId(task.getId()).setTaskName(task.getName()).setAssignTime(task.getAssignTime());
List<SubTask> personStatus = packMapper.countPersonStatus(pack.getId());
long count = 0;
for (SubTask item : personStatus) {
Long c = item.getCount();
Integer s = item.getStatus();
count += c;
if (s.equals(SubTaskStatus.TO_BE_LABELED.val)) {
packInfo.setToBeLabeledCount(c);
} else if (s.equals(SubTaskStatus.FINISH_LABELING.val)) {
packInfo.setFinishCount(c);
} else if (s.equals(SubTaskStatus.reject.val)) {
packInfo.setRejectCount(c);
}
}
packInfo.setCount(count);
packInfos.add(packInfo);
}
return packInfos;
}
}
\ No newline at end of file
package com.viontech.label.platform.service.impl;
import com.viontech.label.platform.base.BaseMapper;
import com.viontech.label.platform.base.BaseServiceImpl;
import com.viontech.label.platform.mapper.TaskPackMapper;
import com.viontech.label.platform.model.TaskPack;
import com.viontech.label.platform.service.adapter.TaskPackService;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
@Service
public class TaskPackServiceImpl extends BaseServiceImpl<TaskPack> implements TaskPackService {
@Resource
private TaskPackMapper taskPackMapper;
@Override
public BaseMapper<TaskPack> getMapper() {
return taskPackMapper;
}
}
\ No newline at end of file
......@@ -4,47 +4,21 @@ import com.viontech.label.platform.base.BaseMapper;
import com.viontech.label.platform.base.BaseServiceImpl;
import com.viontech.label.platform.mapper.TaskMapper;
import com.viontech.label.platform.model.Task;
import com.viontech.label.platform.model.TaskPack;
import com.viontech.label.platform.service.adapter.PicService;
import com.viontech.label.platform.service.adapter.TaskPackService;
import com.viontech.label.platform.service.adapter.TaskService;
import javax.annotation.Resource;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import javax.annotation.Resource;
@Service
public class TaskServiceImpl extends BaseServiceImpl<Task> implements TaskService {
@Resource
private TaskMapper taskMapper;
@Resource
private TaskPackService taskPackService;
@Resource
private PicService picService;
@Override
public BaseMapper<Task> getMapper() {
return taskMapper;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Task addTaskWithPack(Task task, List<Long> packIds) {
task = insertSelective(task);
Long taskId = task.getId();
if (CollectionUtils.isNotEmpty(packIds)) {
for (Long packId : packIds) {
TaskPack taskPack = new TaskPack();
taskPack.setTaskId(taskId);
taskPack.setPackId(packId);
taskPackService.insertSelective(taskPack);
picService.createTasks(task.getCreateUser(), task.getId(), packId, task.getInInspectorId());
}
}
return task;
}
}
\ No newline at end of file
......@@ -79,6 +79,7 @@ public class ReidService {
public void savePicAndFeature(ReidUploadData data) throws Exception {
Long packId = data.getPackId();
Pack pack = storageUtils.getPack(packId);
Long taskId = pack.getTaskId();
String poolName = Constants.getReidPoolName(packId);
// 存储图片文件
......@@ -103,7 +104,7 @@ public class ReidService {
subTask.setPicId(pic.getId());
subTask.setPackId(packId);
subTask.setCreateTime(data.getCountTime());
subTask.setTaskId(data.getTaskId());
subTask.setTaskId(taskId == null ? data.getTaskId() : taskId);
subTask.setStatus(SubTaskStatus.TO_BE_LABELED.val);
subTaskService.insertSelective(subTask);
......@@ -828,4 +829,13 @@ public class ReidService {
public LogService getLogService() {
return logService;
}
public UserService getUserService() {
return userService;
}
public ReidService setUserService(UserService userService) {
this.userService = userService;
return this;
}
}
......@@ -5,6 +5,8 @@ import com.viontech.label.platform.vobase.PackVoBase;
public class PackVo extends PackVoBase {
private Long accountId;
public PackVo() {
super();
}
......@@ -12,4 +14,13 @@ public class PackVo extends PackVoBase {
public PackVo(Pack pack) {
super(pack);
}
public Long getAccountId() {
return accountId;
}
public PackVo setAccountId(Long accountId) {
this.accountId = accountId;
return this;
}
}
\ No newline at end of file
......@@ -5,6 +5,8 @@ import com.viontech.label.platform.vobase.SubTaskVoBase;
public class SubTaskVo extends SubTaskVoBase {
private boolean group;
public SubTaskVo() {
super();
}
......@@ -12,4 +14,13 @@ public class SubTaskVo extends SubTaskVoBase {
public SubTaskVo(SubTask subTask) {
super(subTask);
}
public boolean isGroup() {
return group;
}
public SubTaskVo setGroup(boolean group) {
this.group = group;
return this;
}
}
\ No newline at end of file
package com.viontech.label.platform.vo;
import com.viontech.label.platform.model.TaskPack;
import com.viontech.label.platform.vobase.TaskPackVoBase;
public class TaskPackVo extends TaskPackVoBase {
public TaskPackVo() {
super();
}
public TaskPackVo(TaskPack taskPack) {
super(taskPack);
}
}
\ No newline at end of file
......@@ -7,8 +7,6 @@ import java.util.List;
public class TaskVo extends TaskVoBase {
private List<Long> packIds;
public TaskVo() {
super();
}
......@@ -17,11 +15,4 @@ public class TaskVo extends TaskVoBase {
super(task);
}
public List<Long> getPackIds() {
return packIds;
}
public void setPackIds(List<Long> packIds) {
this.packIds = packIds;
}
}
\ No newline at end of file
......@@ -4,9 +4,13 @@ import cn.dev33.satoken.stp.SaTokenInfo;
import com.viontech.label.platform.model.User;
import com.viontech.label.platform.vobase.UserVoBase;
import java.util.HashMap;
import java.util.List;
public class UserVo extends UserVoBase {
private SaTokenInfo tokenInfo;
private HashMap<String, List<String>> menu;
public UserVo() {
super();
......@@ -16,6 +20,15 @@ public class UserVo extends UserVoBase {
super(user);
}
public HashMap<String, List<String>> getMenu() {
return menu;
}
public UserVo setMenu(HashMap<String, List<String>> menu) {
this.menu = menu;
return this;
}
public SaTokenInfo getTokenInfo() {
return tokenInfo;
}
......
......@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore;
import com.viontech.label.platform.base.VoInterface;
import com.viontech.label.platform.model.Pack;
import com.viontech.label.platform.model.Storage;
import com.viontech.label.platform.model.Task;
import java.util.ArrayList;
import java.util.Date;
......@@ -86,6 +87,21 @@ public class PackVoBase extends Pack implements VoInterface<Pack> {
private String name_like;
@JsonIgnore
private ArrayList<Integer> type_arr;
@JsonIgnore
private Integer type_gt;
@JsonIgnore
private Integer type_lt;
@JsonIgnore
private Integer type_gte;
@JsonIgnore
private Integer type_lte;
@JsonIgnore
private ArrayList<Integer> status_arr;
@JsonIgnore
......@@ -101,19 +117,22 @@ public class PackVoBase extends Pack implements VoInterface<Pack> {
private Integer status_lte;
@JsonIgnore
private ArrayList<Integer> type_arr;
private Boolean taskId_null;
@JsonIgnore
private Integer type_gt;
private ArrayList<Long> taskId_arr;
@JsonIgnore
private Integer type_lt;
private Long taskId_gt;
@JsonIgnore
private Integer type_gte;
private Long taskId_lt;
@JsonIgnore
private Integer type_lte;
private Long taskId_gte;
@JsonIgnore
private Long taskId_lte;
public PackVoBase() {
this(null);
......@@ -419,6 +438,60 @@ public class PackVoBase extends Pack implements VoInterface<Pack> {
this.getModel().setName(name);
}
public ArrayList<Integer> getType_arr() {
return type_arr;
}
public void setType_arr(ArrayList<Integer> type_arr) {
this.type_arr = type_arr;
}
public Integer getType_gt() {
return type_gt;
}
public void setType_gt(Integer type_gt) {
this.type_gt = type_gt;
}
public Integer getType_lt() {
return type_lt;
}
public void setType_lt(Integer type_lt) {
this.type_lt = type_lt;
}
public Integer getType_gte() {
return type_gte;
}
public void setType_gte(Integer type_gte) {
this.type_gte = type_gte;
}
public Integer getType_lte() {
return type_lte;
}
public void setType_lte(Integer type_lte) {
this.type_lte = type_lte;
}
public Integer getType() {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
return this.getModel().getType();
}
public void setType(Integer type) {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
this.getModel().setType(type);
}
public ArrayList<Integer> getStatus_arr() {
return status_arr;
}
......@@ -473,58 +546,66 @@ public class PackVoBase extends Pack implements VoInterface<Pack> {
this.getModel().setStatus(status);
}
public ArrayList<Integer> getType_arr() {
return type_arr;
public Boolean getTaskId_null() {
return taskId_null;
}
public void setType_arr(ArrayList<Integer> type_arr) {
this.type_arr = type_arr;
public void setTaskId_null(Boolean taskId_null) {
this.taskId_null = taskId_null;
}
public Integer getType_gt() {
return type_gt;
public ArrayList<Long> getTaskId_arr() {
return taskId_arr;
}
public void setType_gt(Integer type_gt) {
this.type_gt = type_gt;
public void setTaskId_arr(ArrayList<Long> taskId_arr) {
this.taskId_arr = taskId_arr;
}
public Integer getType_lt() {
return type_lt;
public Long getTaskId_gt() {
return taskId_gt;
}
public void setType_lt(Integer type_lt) {
this.type_lt = type_lt;
public void setTaskId_gt(Long taskId_gt) {
this.taskId_gt = taskId_gt;
}
public Integer getType_gte() {
return type_gte;
public Long getTaskId_lt() {
return taskId_lt;
}
public void setType_gte(Integer type_gte) {
this.type_gte = type_gte;
public void setTaskId_lt(Long taskId_lt) {
this.taskId_lt = taskId_lt;
}
public Integer getType_lte() {
return type_lte;
public Long getTaskId_gte() {
return taskId_gte;
}
public void setType_lte(Integer type_lte) {
this.type_lte = type_lte;
public void setTaskId_gte(Long taskId_gte) {
this.taskId_gte = taskId_gte;
}
public Integer getType() {
public Long getTaskId_lte() {
return taskId_lte;
}
public void setTaskId_lte(Long taskId_lte) {
this.taskId_lte = taskId_lte;
}
public Long getTaskId() {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
return this.getModel().getType();
return this.getModel().getTaskId();
}
public void setType(Integer type) {
public void setTaskId(Long taskId) {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
this.getModel().setType(type);
this.getModel().setTaskId(taskId);
}
public Storage getStorage() {
......@@ -540,4 +621,18 @@ public class PackVoBase extends Pack implements VoInterface<Pack> {
}
this.getModel().setStorage(storage);
}
public Task getTask() {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
return this.getModel().getTask();
}
public void setTask(Task task) {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
this.getModel().setTask(task);
}
}
\ No newline at end of file
package com.viontech.label.platform.vobase;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.viontech.label.platform.base.VoInterface;
import com.viontech.label.platform.model.Pack;
import com.viontech.label.platform.model.Task;
import com.viontech.label.platform.model.TaskPack;
import java.util.ArrayList;
import java.util.Date;
public class TaskPackVoBase extends TaskPack implements VoInterface<TaskPack> {
private TaskPack taskPack;
@JsonIgnore
private ArrayList<Long> id_arr;
@JsonIgnore
private Long id_gt;
@JsonIgnore
private Long id_lt;
@JsonIgnore
private Long id_gte;
@JsonIgnore
private Long id_lte;
@JsonIgnore
private ArrayList<Date> createTime_arr;
@JsonIgnore
private Date createTime_gt;
@JsonIgnore
private Date createTime_lt;
@JsonIgnore
private Date createTime_gte;
@JsonIgnore
private Date createTime_lte;
@JsonIgnore
private ArrayList<Long> taskId_arr;
@JsonIgnore
private Long taskId_gt;
@JsonIgnore
private Long taskId_lt;
@JsonIgnore
private Long taskId_gte;
@JsonIgnore
private Long taskId_lte;
@JsonIgnore
private ArrayList<Long> packId_arr;
@JsonIgnore
private Long packId_gt;
@JsonIgnore
private Long packId_lt;
@JsonIgnore
private Long packId_gte;
@JsonIgnore
private Long packId_lte;
public TaskPackVoBase() {
this(null);
}
public TaskPackVoBase(TaskPack taskPack) {
if(taskPack == null) {
taskPack = new TaskPack();
}
this.taskPack = taskPack;
}
@JsonIgnore
public TaskPack getModel() {
return taskPack;
}
public void setModel(TaskPack taskPack) {
this.taskPack = taskPack;
}
public ArrayList<Long> getId_arr() {
return id_arr;
}
public void setId_arr(ArrayList<Long> id_arr) {
this.id_arr = id_arr;
}
public Long getId_gt() {
return id_gt;
}
public void setId_gt(Long id_gt) {
this.id_gt = id_gt;
}
public Long getId_lt() {
return id_lt;
}
public void setId_lt(Long id_lt) {
this.id_lt = id_lt;
}
public Long getId_gte() {
return id_gte;
}
public void setId_gte(Long id_gte) {
this.id_gte = id_gte;
}
public Long getId_lte() {
return id_lte;
}
public void setId_lte(Long id_lte) {
this.id_lte = id_lte;
}
public Long getId() {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
return this.getModel().getId();
}
public void setId(Long id) {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
this.getModel().setId(id);
}
public ArrayList<Date> getCreateTime_arr() {
return createTime_arr;
}
public void setCreateTime_arr(ArrayList<Date> createTime_arr) {
this.createTime_arr = createTime_arr;
}
public Date getCreateTime_gt() {
return createTime_gt;
}
public void setCreateTime_gt(Date createTime_gt) {
this.createTime_gt = createTime_gt;
}
public Date getCreateTime_lt() {
return createTime_lt;
}
public void setCreateTime_lt(Date createTime_lt) {
this.createTime_lt = createTime_lt;
}
public Date getCreateTime_gte() {
return createTime_gte;
}
public void setCreateTime_gte(Date createTime_gte) {
this.createTime_gte = createTime_gte;
}
public Date getCreateTime_lte() {
return createTime_lte;
}
public void setCreateTime_lte(Date createTime_lte) {
this.createTime_lte = createTime_lte;
}
public Date getCreateTime() {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
return this.getModel().getCreateTime();
}
public void setCreateTime(Date createTime) {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
this.getModel().setCreateTime(createTime);
}
public ArrayList<Long> getTaskId_arr() {
return taskId_arr;
}
public void setTaskId_arr(ArrayList<Long> taskId_arr) {
this.taskId_arr = taskId_arr;
}
public Long getTaskId_gt() {
return taskId_gt;
}
public void setTaskId_gt(Long taskId_gt) {
this.taskId_gt = taskId_gt;
}
public Long getTaskId_lt() {
return taskId_lt;
}
public void setTaskId_lt(Long taskId_lt) {
this.taskId_lt = taskId_lt;
}
public Long getTaskId_gte() {
return taskId_gte;
}
public void setTaskId_gte(Long taskId_gte) {
this.taskId_gte = taskId_gte;
}
public Long getTaskId_lte() {
return taskId_lte;
}
public void setTaskId_lte(Long taskId_lte) {
this.taskId_lte = taskId_lte;
}
public Long getTaskId() {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
return this.getModel().getTaskId();
}
public void setTaskId(Long taskId) {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
this.getModel().setTaskId(taskId);
}
public ArrayList<Long> getPackId_arr() {
return packId_arr;
}
public void setPackId_arr(ArrayList<Long> packId_arr) {
this.packId_arr = packId_arr;
}
public Long getPackId_gt() {
return packId_gt;
}
public void setPackId_gt(Long packId_gt) {
this.packId_gt = packId_gt;
}
public Long getPackId_lt() {
return packId_lt;
}
public void setPackId_lt(Long packId_lt) {
this.packId_lt = packId_lt;
}
public Long getPackId_gte() {
return packId_gte;
}
public void setPackId_gte(Long packId_gte) {
this.packId_gte = packId_gte;
}
public Long getPackId_lte() {
return packId_lte;
}
public void setPackId_lte(Long packId_lte) {
this.packId_lte = packId_lte;
}
public Long getPackId() {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
return this.getModel().getPackId();
}
public void setPackId(Long packId) {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
this.getModel().setPackId(packId);
}
public Task getTask() {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
return this.getModel().getTask();
}
public void setTask(Task task) {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
this.getModel().setTask(task);
}
public Pack getPack() {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
return this.getModel().getPack();
}
public void setPack(Pack pack) {
if(getModel() == null ){
throw new RuntimeException("model is null");
}
this.getModel().setPack(pack);
}
}
\ No newline at end of file
......@@ -23,33 +23,45 @@ pagehelper:
vion:
menu-map:
0:
- "标注"
- "提交质检"
- "标注工作薄"
- "质检审核"
- "项目管理"
- "外包公司"
- "账号管理-外包"
- "账号管理-内部"
label:
- "标注"
- "提交质检"
- "标注工作薄"
inspection:
- "质检审核"
project:
- "项目管理"
management:
- "外包公司"
- "用户管理"
1:
- "标注"
- "提交质检"
- "标注工作薄"
- "质检审核"
- "项目管理"
- "外包公司"
- "账号管理-外包"
- "账号管理-内部"
label:
- "标注"
- "提交质检"
- "标注工作薄"
inspection:
- "质检审核"
project:
- "项目管理"
management:
- "外包公司"
- "用户管理"
2:
- "质检审核"
inspection:
- "质检审核"
3:
- "标注"
- "提交质检"
- "标注工作薄"
- "账号管理-外包"
label:
- "标注"
- "提交质检"
- "标注工作薄"
management:
- "用户管理"
4:
- "质检审核"
inspection:
- "质检审核"
5:
- "标注"
label:
- "标注"
6:
- "标注"
\ No newline at end of file
label:
- "标注"
\ No newline at end of file
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!