自定义发布任务
This commit is contained in:
@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdxlFgxlrwCreateDTO;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdxlFgxlrwIssueDTO;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdxlFgxlrwUpdateDTO;
|
||||
import com.mosty.base.model.dto.yjzl.ZdyxlFgxlrwDto;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.TbZdxlFgxlrw;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.TbZdxlFgzdyrw;
|
||||
import com.mosty.base.model.query.yjzl.TbZdxlFgxlrwQuery;
|
||||
@ -256,4 +257,25 @@ public class TbZdxlFgxlrwController {
|
||||
}
|
||||
}
|
||||
|
||||
@ApiOperation(value = "添加自定义巡逻任务")
|
||||
@PostMapping("addZdyxlFgxlrw")
|
||||
@JwtSysUser
|
||||
public ResponseResult<TbZdxlFgxlrw> addZdyxlFgxlrw(@RequestBody ZdyxlFgxlrwDto dto){
|
||||
return ResponseResult.success(tbZdxlFgxlrwService.addZdyxlFgxlrw(dto));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "修改自定义巡逻任务")
|
||||
@PostMapping("editZdyxlFgxlrw")
|
||||
@JwtSysUser
|
||||
public ResponseResult<TbZdxlFgxlrw> editZdyxlFgxlrw(@RequestBody ZdyxlFgxlrwDto dto){
|
||||
return ResponseResult.success(tbZdxlFgxlrwService.editZdyxlFgxlrw(dto));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "添加自定义巡逻任务")
|
||||
@PostMapping("delZdyxlFgxlrw")
|
||||
@JwtSysUser
|
||||
public ResponseResult<Boolean> delZdyxlFgxlrw(@RequestBody ZdyxlFgxlrwDto dto){
|
||||
return ResponseResult.success(tbZdxlFgxlrwService.delZdyxlFgxlrw(dto));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,77 @@
|
||||
package com.mosty.yjzl.controller;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdyFgrwDkDto;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdyFgrwDto;
|
||||
import com.mosty.base.model.query.yjzl.TbZdyFgrwQuery;
|
||||
import com.mosty.base.model.query.yjzl.TbZdyFgrwlqQuery;
|
||||
import com.mosty.base.model.vo.yjzl.TbZdyFgrwVO;
|
||||
import com.mosty.common.base.domain.ResponseResult;
|
||||
import com.mosty.common.token.JwtSysUser;
|
||||
import com.mosty.yjzl.service.TbZdyFgrwService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Api(tags = {"方格任务-自定义任务"})
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/tbZdyrw")
|
||||
public class TbZdyFgrwController {
|
||||
|
||||
private final TbZdyFgrwService tbZdyFgrwService;
|
||||
|
||||
@ApiOperation(value = "添加自定义任务")
|
||||
@PostMapping ("/addTbZdyrw")
|
||||
@JwtSysUser
|
||||
public ResponseResult<Boolean> addTbZdyrw(@RequestBody TbZdyFgrwDto dto) {
|
||||
return ResponseResult.success(tbZdyFgrwService.addTbZdyrw(dto));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "查询列表")
|
||||
@GetMapping("/selectList")
|
||||
@JwtSysUser
|
||||
public ResponseResult<IPage<TbZdyFgrwVO>> selectList(TbZdyFgrwQuery query) {
|
||||
return ResponseResult.success(tbZdyFgrwService.selectList(query));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "app查询列表")
|
||||
@GetMapping("/selectListApp")
|
||||
@JwtSysUser
|
||||
public ResponseResult<IPage<TbZdyFgrwVO>> selectListApp(TbZdyFgrwQuery query) {
|
||||
return ResponseResult.success(tbZdyFgrwService.selectListApp(query));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "任务详情")
|
||||
@GetMapping("/getFgrwXq")
|
||||
@JwtSysUser
|
||||
public ResponseResult<TbZdyFgrwVO> getFgrwXq(TbZdyFgrwQuery query) {
|
||||
return ResponseResult.success(tbZdyFgrwService.getFgrwXq(query));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "领取任务")
|
||||
@GetMapping("/getLqrw")
|
||||
@JwtSysUser
|
||||
public ResponseResult<Boolean> getLqrw(TbZdyFgrwlqQuery query) {
|
||||
return ResponseResult.success(tbZdyFgrwService.getLqrw(query));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "任务打卡详情")
|
||||
@GetMapping("/getFgrwDkXq")
|
||||
@JwtSysUser
|
||||
public ResponseResult<Map<String,Object>> getFgrwDkXq(TbZdyFgrwQuery query) {
|
||||
return ResponseResult.success(tbZdyFgrwService.getFgrwDkXq(query));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "自定义任务打卡")
|
||||
@PostMapping ("/zdyRwdk")
|
||||
@JwtSysUser
|
||||
public ResponseResult<Boolean> zdyRwdk(@RequestBody TbZdyFgrwDkDto dto) {
|
||||
return ResponseResult.success(tbZdyFgrwService.zdyRwdk(dto));
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,9 @@
|
||||
package com.mosty.yjzl.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.TbZdyFgbxd;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface TbZdyFgbxdMapper extends BaseMapper<TbZdyFgbxd> {
|
||||
}
|
||||
@ -0,0 +1,14 @@
|
||||
package com.mosty.yjzl.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.TbZdyFgrw;
|
||||
import com.mosty.base.model.query.yjzl.TbZdyFgrwQuery;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
@Mapper
|
||||
public interface TbZdyFgrwMapper extends BaseMapper<TbZdyFgrw> {
|
||||
|
||||
IPage<TbZdyFgrw> getLqfgrw(@Param("page") IPage<TbZdyFgrw> page, @Param("dto")TbZdyFgrwQuery dto);
|
||||
}
|
||||
@ -0,0 +1,10 @@
|
||||
package com.mosty.yjzl.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.TbZdyFgrwlq;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
|
||||
@Mapper
|
||||
public interface TbZdyFgrwlqMapper extends BaseMapper<TbZdyFgrwlq> {
|
||||
}
|
||||
@ -0,0 +1,9 @@
|
||||
package com.mosty.yjzl.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.TbZdyFgrwlqdk;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface TbZdyFgrwlqdkMapper extends BaseMapper<TbZdyFgrwlqdk> {
|
||||
}
|
||||
@ -1,6 +1,7 @@
|
||||
package com.mosty.yjzl.service.Impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@ -8,6 +9,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.mosty.base.feign.remote.MostyQwzxFeignServiceRemote;
|
||||
import com.mosty.base.model.dto.qwzx.TbQwXfbbVo;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdxlFgxlrwUpdateDTO;
|
||||
import com.mosty.base.model.dto.yjzl.ZdyxlFgxlrwDto;
|
||||
import com.mosty.base.model.entity.qwzx.TbQwJl;
|
||||
import com.mosty.base.model.entity.qwzx.TbQwXfbb;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.*;
|
||||
@ -66,6 +68,11 @@ public class TbZdxlFgxlrwServiceImpl extends ServiceImpl<TbZdxlFgxlrwMapper, TbZ
|
||||
*/
|
||||
private final TbZdxlFgdwBddxlrwJlService tbZdxlFgdwBddxlrwJlService;
|
||||
|
||||
private final TbZdxlFgxlrwMapper tbZdxlFgxlrwMapper;
|
||||
|
||||
private final TbZdxlFgdwBddMapper tbZdxlFgdwBddMapper;
|
||||
|
||||
private final TbZdxlFgdwBddxlrwMapper tbZdxlFgdwBddxlrwMapper;
|
||||
@Override
|
||||
public TbZdxlFgxlrw selectById(String id) {
|
||||
if(StringUtils.isBlank(id)){
|
||||
@ -377,6 +384,101 @@ public class TbZdxlFgxlrwServiceImpl extends ServiceImpl<TbZdxlFgxlrwMapper, TbZ
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TbZdxlFgxlrw addZdyxlFgxlrw(ZdyxlFgxlrwDto dto) {
|
||||
if(CollectionUtils.isNotEmpty(dto.getBddDtos())){
|
||||
List<String> bddIds = new ArrayList<>();
|
||||
dto.getBddDtos().forEach(bddDto ->{
|
||||
TbZdxlFgdwBdd bdd = new TbZdxlFgdwBdd();
|
||||
bdd.setId(UUIDGenerator.getUUID());
|
||||
bdd.setFgdwId(dto.getFgdwId());
|
||||
bdd.setBddMc(bddDto.getBddMc());
|
||||
bdd.setBddDz(bddDto.getBddDz());
|
||||
bdd.setJd(bddDto.getJd());
|
||||
bdd.setWd(bddDto.getWd());
|
||||
bdd.setDkjgsj(dto.getDkjgsj());
|
||||
this.tbZdxlFgdwBddMapper.insert(bdd);
|
||||
bddIds.add(bdd.getId());
|
||||
});
|
||||
TbZdxlFgxlrw xlrw = new TbZdxlFgxlrw();
|
||||
xlrw.setId(UUIDGenerator.getUUID());
|
||||
xlrw.setRwlx("3");
|
||||
xlrw.setFgRwbt(dto.getFgRwbt());
|
||||
xlrw.setFgId(dto.getFgdwId());
|
||||
xlrw.setFgPx(1);
|
||||
xlrw.setFgYjdj("01");
|
||||
xlrw.setFgYjys("01");
|
||||
xlrw.setRwRq(new Date());
|
||||
xlrw.setRwZt("01");
|
||||
xlrw.setRwLqZt("01");
|
||||
xlrw.setXlghXllc(2.0);
|
||||
this.tbZdxlFgxlrwMapper.insert(xlrw);
|
||||
bddIds.forEach(bddId ->{
|
||||
TbZdxlFgdwBddxlrw bddxlrw = new TbZdxlFgdwBddxlrw();
|
||||
bddxlrw.setId(UUIDGenerator.getUUID());
|
||||
bddxlrw.setFgxlrwId(xlrw.getId());
|
||||
bddxlrw.setBddId(bddId);
|
||||
bddxlrw.setXlghDkcs(1);
|
||||
bddxlrw.setXlsjDkcs(0);
|
||||
bddxlrw.setSfKs("0");
|
||||
bddxlrw.setSfJs("0");
|
||||
this.tbZdxlFgdwBddxlrwMapper.insert(bddxlrw);
|
||||
});
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TbZdxlFgxlrw editZdyxlFgxlrw(ZdyxlFgxlrwDto dto) {
|
||||
TbZdxlFgxlrw tbZdxlFgxlrw = this.tbZdxlFgxlrwMapper.selectById(dto.getId());
|
||||
tbZdxlFgxlrw.setFgId(dto.getFgdwId());
|
||||
tbZdxlFgxlrw.setFgRwbt(dto.getFgRwbt());
|
||||
tbZdxlFgxlrw.setRwRq(new Date());
|
||||
List<TbZdxlFgdwBddxlrw> fgbddrws = this.tbZdxlFgdwBddxlrwMapper.selectList(
|
||||
new LambdaQueryWrapper<TbZdxlFgdwBddxlrw>()
|
||||
.eq(TbZdxlFgdwBddxlrw::getFgxlrwId,tbZdxlFgxlrw.getId())
|
||||
);
|
||||
List<String> bddIdList = fgbddrws.stream().map(TbZdxlFgdwBddxlrw::getBddId).collect(Collectors.toList());
|
||||
this.tbZdxlFgdwBddMapper.deleteBatchIds(bddIdList);
|
||||
tbZdxlFgdwBddxlrwMapper.delete(
|
||||
new LambdaQueryWrapper<TbZdxlFgdwBddxlrw>()
|
||||
.eq(TbZdxlFgdwBddxlrw::getFgxlrwId,tbZdxlFgxlrw.getId())
|
||||
);
|
||||
if(CollectionUtils.isNotEmpty(dto.getBddDtos())){
|
||||
List<String> bddIds = new ArrayList<>();
|
||||
dto.getBddDtos().forEach(bddDto ->{
|
||||
TbZdxlFgdwBdd bdd = new TbZdxlFgdwBdd();
|
||||
bdd.setId(UUIDGenerator.getUUID());
|
||||
bdd.setFgdwId(dto.getFgdwId());
|
||||
bdd.setBddMc(bddDto.getBddMc());
|
||||
bdd.setBddDz(bddDto.getBddDz());
|
||||
bdd.setJd(bddDto.getJd());
|
||||
bdd.setWd(bddDto.getWd());
|
||||
bdd.setDkjgsj(dto.getDkjgsj());
|
||||
this.tbZdxlFgdwBddMapper.insert(bdd);
|
||||
bddIds.add(bdd.getId());
|
||||
});
|
||||
bddIds.forEach(bddId ->{
|
||||
TbZdxlFgdwBddxlrw bddxlrw = new TbZdxlFgdwBddxlrw();
|
||||
bddxlrw.setId(UUIDGenerator.getUUID());
|
||||
bddxlrw.setFgxlrwId(tbZdxlFgxlrw.getId());
|
||||
bddxlrw.setBddId(bddId);
|
||||
bddxlrw.setXlghDkcs(1);
|
||||
bddxlrw.setXlsjDkcs(0);
|
||||
bddxlrw.setSfKs("0");
|
||||
bddxlrw.setSfJs("0");
|
||||
this.tbZdxlFgdwBddxlrwMapper.insert(bddxlrw);
|
||||
});
|
||||
}
|
||||
return tbZdxlFgxlrw;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean delZdyxlFgxlrw(ZdyxlFgxlrwDto dto) {
|
||||
this.tbZdxlFgxlrwMapper.deleteById(dto.getId());
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 组装查询参数
|
||||
* @param qw QueryWrapper
|
||||
|
||||
@ -0,0 +1,329 @@
|
||||
package com.mosty.yjzl.service.Impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
||||
import com.mosty.base.model.dto.yjzl.TbZdyFgrwDkDto;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdyFgrwDto;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.*;
|
||||
import com.mosty.base.model.query.yjzl.TbZdyFgrwQuery;
|
||||
import com.mosty.base.model.query.yjzl.TbZdyFgrwlqQuery;
|
||||
import com.mosty.base.model.vo.base.DeptInfoVo;
|
||||
import com.mosty.base.model.vo.yjzl.TbZdxlFgdwVO;
|
||||
import com.mosty.base.model.vo.yjzl.TbZdyFgrwVO;
|
||||
import com.mosty.base.utils.*;
|
||||
import com.mosty.common.base.domain.ResponseResult;
|
||||
import com.mosty.common.base.exception.BusinessException;
|
||||
import com.mosty.common.token.UserInfo;
|
||||
import com.mosty.common.token.UserInfoManager;
|
||||
import com.mosty.yjzl.mapper.*;
|
||||
import com.mosty.yjzl.remote.TbBaseAdaptRemoteService;
|
||||
import com.mosty.yjzl.service.TbZdyFgrwService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class TbZdyFgrwServiceImpl extends ServiceImpl<TbZdyFgrwMapper, TbZdyFgrw> implements TbZdyFgrwService {
|
||||
|
||||
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
|
||||
private final TbZdyFgrwlqMapper tbZdyFgrwlqMapper;
|
||||
private final TbZdyFgbxdMapper tbZdyFgbxdMapper;
|
||||
private final TbZdxlFgdwMapper tbZdxlFgdwMapper;
|
||||
private final TbZdyFgrwlqdkMapper tbZdyFgrwlqdkMapper;
|
||||
@Override
|
||||
public Boolean addTbZdyrw(TbZdyFgrwDto dto) {
|
||||
UserInfo user = UserInfoManager.get();
|
||||
TbZdyFgrw fgrw = new TbZdyFgrw();
|
||||
BeanUtils.copyProperties(dto,fgrw);
|
||||
fgrw.setId(UUIDGenerator.getUUID());
|
||||
if(Objects.isNull(dto.getXfrq())){
|
||||
fgrw.setXfrq(new Date());
|
||||
}
|
||||
TbZdxlFgdw tbZdxlFgdw = this.tbZdxlFgdwMapper.selectById(dto.getFgId());
|
||||
if(Objects.nonNull(tbZdxlFgdw)){
|
||||
fgrw.setFgmc(tbZdxlFgdw.getMc1());
|
||||
fgrw.setXfbm(tbZdxlFgdw.getSsbm());
|
||||
fgrw.setXfbmdm(tbZdxlFgdw.getSsbmdm());
|
||||
}
|
||||
if(StringUtils.isEmpty(dto.getSsbmdm())){
|
||||
dto.setSsbmdm(user.getDeptCode());
|
||||
}
|
||||
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(dto.getSsbmdm());
|
||||
if(Objects.nonNull(dept)){
|
||||
fgrw.setSsbm(dept.getDeptname());
|
||||
fgrw.setSsbmdm(dept.getDeptcode());
|
||||
fgrw.setSsxgajdm(dept.getFxjcode());
|
||||
fgrw.setSsxgaj(dept.getFxjname());
|
||||
fgrw.setSssgaj(dept.getDszname());
|
||||
fgrw.setSssgajdm(dept.getDszcode());
|
||||
}
|
||||
this.baseMapper.insert(fgrw);
|
||||
if(!CollectionUtils.isEmpty(dto.getDtoList())){
|
||||
dto.getDtoList().forEach(tbZdyFgbxdDto -> {
|
||||
TbZdyFgbxd bxd = new TbZdyFgbxd();
|
||||
BeanUtils.copyProperties(tbZdyFgbxdDto,bxd);
|
||||
bxd.setId(UUIDGenerator.getUUID());
|
||||
bxd.setFgrwid(fgrw.getId());
|
||||
this.tbZdyFgbxdMapper.insert(bxd);
|
||||
});
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IPage<TbZdyFgrwVO> selectList(TbZdyFgrwQuery query) {
|
||||
UserInfo userInfo = UserInfoManager.get();
|
||||
query.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(query.getSsbmdm(), null));
|
||||
IPage<TbZdyFgrw> page = this.baseMapper.selectPage(
|
||||
new Page<>(query.getPageCurrent(),query.getPageSize()),
|
||||
new LambdaQueryWrapper<TbZdyFgrw>()
|
||||
.like(StringUtils.isNotEmpty(query.getFgRwmc()),TbZdyFgrw::getFgRwmc,query.getFgRwmc())
|
||||
.likeRight(StringUtils.isNotEmpty(query.getSsbmdm()),TbZdyFgrw::getSsbmdm,query.getSsbmdm())
|
||||
.eq(StringUtils.isNotEmpty(query.getXfbmdm()),TbZdyFgrw::getXfbmdm,query.getXfbmdm())
|
||||
.orderByDesc(TbZdyFgrw::getXfrq)
|
||||
);
|
||||
List<TbZdyFgrwVO> voList = new ArrayList<>();
|
||||
if(!CollectionUtils.isEmpty(page.getRecords())){
|
||||
page.getRecords().forEach(tbZdyFgrw -> {
|
||||
TbZdyFgrwlq rwlq = this.tbZdyFgrwlqMapper.selectOne(
|
||||
new LambdaQueryWrapper<TbZdyFgrwlq>()
|
||||
.eq(TbZdyFgrwlq::getFgrwid,tbZdyFgrw.getId())
|
||||
.eq(TbZdyFgrwlq::getFgrwlqrid,userInfo.getUserId())
|
||||
.last(" limit 1 ")
|
||||
);
|
||||
TbZdyFgrwVO vo = new TbZdyFgrwVO();
|
||||
BeanUtils.copyProperties(tbZdyFgrw,vo);
|
||||
vo.setFgrwzt("01");
|
||||
if(Objects.nonNull(rwlq)){
|
||||
vo.setFgrwlqr(rwlq.getFgrwlqr());
|
||||
vo.setFgrwlqrid(rwlq.getFgrwlqrid());
|
||||
vo.setFgrwlqrsfzh(rwlq.getFgrwlqrsfzh());
|
||||
vo.setFgrwzt(rwlq.getFgrwzt());
|
||||
}
|
||||
voList.add(vo);
|
||||
});
|
||||
}
|
||||
IPage<TbZdyFgrwVO> pageVo = new Page<>(page.getCurrent(),page.getSize());
|
||||
pageVo.setTotal(page.getTotal());
|
||||
pageVo.setRecords(voList);
|
||||
return pageVo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public IPage<TbZdyFgrwVO> selectListApp(TbZdyFgrwQuery query) {
|
||||
UserInfo userInfo = UserInfoManager.get();
|
||||
query.setFgrwlqrid(userInfo.getUserId().toString());
|
||||
query.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(query.getSsbmdm(), null));
|
||||
//今日已领取任务
|
||||
List<TbZdyFgrwlq> mylqs = this.tbZdyFgrwlqMapper.selectList(
|
||||
new LambdaQueryWrapper<TbZdyFgrwlq>()
|
||||
.eq(TbZdyFgrwlq::getFgrwlqrid,userInfo.getUserId().toString())
|
||||
.eq(TbZdyFgrwlq::getRwlqrq,DateUtils.getNowDate())
|
||||
);
|
||||
List<String> ids = mylqs.stream().map(TbZdyFgrwlq::getFgrwid).collect(Collectors.toList());
|
||||
//今日待领取任务
|
||||
IPage<TbZdyFgrw> page = this.baseMapper.selectPage(
|
||||
new Page<>(query.getPageCurrent(),query.getPageSize()),
|
||||
new LambdaQueryWrapper<TbZdyFgrw>()
|
||||
.like(StringUtils.isNotEmpty(query.getFgRwmc()),TbZdyFgrw::getFgRwmc,query.getFgRwmc())
|
||||
.likeRight(StringUtils.isNotEmpty(query.getSsbmdm()),TbZdyFgrw::getSsbmdm,query.getSsbmdm())
|
||||
.eq(StringUtils.isNotEmpty(query.getXfbmdm()),TbZdyFgrw::getXfbmdm,query.getXfbmdm())
|
||||
.eq(TbZdyFgrw::getXfrq,DateUtils.getNowDate())
|
||||
.notIn(!CollectionUtils.isEmpty(ids),TbZdyFgrw::getId,ids)
|
||||
.orderByDesc(TbZdyFgrw::getXfrq)
|
||||
);
|
||||
//历史任务(已领取任务)
|
||||
if("02".equals(query.getAppRwlx())){
|
||||
IPage<TbZdyFgrw> pageDto = PageUtils.buildPage(query.getPageSize(),query.getPageCurrent());
|
||||
page = this.baseMapper.getLqfgrw(pageDto,query);
|
||||
}
|
||||
List<TbZdyFgrwVO> voList = new ArrayList<>();
|
||||
if(!CollectionUtils.isEmpty(page.getRecords())){
|
||||
page.getRecords().forEach(tbZdyFgrw -> {
|
||||
TbZdyFgrwlq rwlq = this.tbZdyFgrwlqMapper.selectOne(
|
||||
new LambdaQueryWrapper<TbZdyFgrwlq>()
|
||||
.eq(TbZdyFgrwlq::getFgrwid,tbZdyFgrw.getId())
|
||||
.eq(TbZdyFgrwlq::getFgrwlqrid,userInfo.getUserId())
|
||||
.last(" limit 1 ")
|
||||
);
|
||||
TbZdyFgrwVO vo = new TbZdyFgrwVO();
|
||||
BeanUtils.copyProperties(tbZdyFgrw,vo);
|
||||
vo.setFgrwzt("01");
|
||||
if(Objects.nonNull(rwlq)){
|
||||
vo.setFgrwlqr(rwlq.getFgrwlqr());
|
||||
vo.setFgrwlqrid(rwlq.getFgrwlqrid());
|
||||
vo.setFgrwlqrsfzh(rwlq.getFgrwlqrsfzh());
|
||||
vo.setFgrwzt(rwlq.getFgrwzt());
|
||||
}
|
||||
voList.add(vo);
|
||||
});
|
||||
}
|
||||
IPage<TbZdyFgrwVO> pageVo = new Page<>(page.getCurrent(),page.getSize());
|
||||
pageVo.setTotal(page.getTotal());
|
||||
pageVo.setRecords(voList);
|
||||
return pageVo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TbZdyFgrwVO getFgrwXq(TbZdyFgrwQuery query) {
|
||||
TbZdyFgrwVO vo = new TbZdyFgrwVO();
|
||||
UserInfo userInfo = UserInfoManager.get();
|
||||
TbZdyFgrw tbZdyFgrw = this.baseMapper.selectById(query.getFgrwid());
|
||||
if(Objects.isNull(tbZdyFgrw)) throw new BusinessException("方格任务不存在!");
|
||||
BeanUtils.copyProperties(tbZdyFgrw,vo);
|
||||
TbZdyFgrwlq rwlq = this.tbZdyFgrwlqMapper.selectOne(
|
||||
new LambdaQueryWrapper<TbZdyFgrwlq>()
|
||||
.eq(TbZdyFgrwlq::getFgrwid,tbZdyFgrw.getId())
|
||||
.eq(TbZdyFgrwlq::getFgrwlqrid,userInfo.getUserId())
|
||||
.last(" limit 1 ")
|
||||
);
|
||||
if(Objects.nonNull(rwlq)){
|
||||
vo.setFgrwlqr(rwlq.getFgrwlqr());
|
||||
vo.setFgrwlqrid(rwlq.getFgrwlqrid());
|
||||
vo.setFgrwlqrsfzh(rwlq.getFgrwlqrsfzh());
|
||||
vo.setFgrwzt(rwlq.getFgrwzt());
|
||||
}
|
||||
List<TbZdyFgbxd> bxds = this.tbZdyFgbxdMapper.selectList(
|
||||
new LambdaQueryWrapper<TbZdyFgbxd>()
|
||||
.eq(TbZdyFgbxd::getFgrwid,query.getFgrwid())
|
||||
);
|
||||
if(!CollectionUtils.isEmpty(bxds)){
|
||||
vo.setBxds(bxds);
|
||||
}
|
||||
TbZdxlFgdw tbZdxlFgdw = this.tbZdxlFgdwMapper.selectById(tbZdyFgrw.getFgId());
|
||||
TbZdxlFgdwVO fgdwVO = buildAllInfoByEntity(tbZdxlFgdw);
|
||||
vo.setFgxx(fgdwVO);
|
||||
return vo;
|
||||
}
|
||||
|
||||
private TbZdxlFgdwVO buildAllInfoByEntity(TbZdxlFgdw entity){
|
||||
if(ObjectUtils.isEmpty(entity)){
|
||||
return null;
|
||||
}
|
||||
TbZdxlFgdwVO resultVO = BeanUtil.copyProperties(entity, TbZdxlFgdwVO.class);
|
||||
|
||||
//组装方格其他数据
|
||||
resultVO.setMc(resultVO.getMc1());
|
||||
resultVO.setX1(resultVO.getX11());
|
||||
resultVO.setY1(resultVO.getY11());
|
||||
resultVO.setX2(resultVO.getX21());
|
||||
resultVO.setY2(resultVO.getY21());
|
||||
|
||||
return resultVO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean getLqrw(TbZdyFgrwlqQuery query) {
|
||||
UserInfo userInfo = UserInfoManager.get();
|
||||
TbZdyFgrw fgrw = this.baseMapper.selectById(query.getFgrwid());
|
||||
if(Objects.isNull(fgrw)) throw new BusinessException("方格任务不存在!");
|
||||
int num = this.tbZdyFgrwlqMapper.selectCount(
|
||||
new LambdaQueryWrapper<TbZdyFgrwlq>()
|
||||
.eq(TbZdyFgrwlq::getFgrwlqrid,userInfo.getUserId().toString())
|
||||
.eq(TbZdyFgrwlq::getFgrwid,query.getFgrwid())
|
||||
);
|
||||
if(num>1) throw new BusinessException("方格任务已领取,请勿重复领取!");
|
||||
TbZdyFgrwlq rwlq = new TbZdyFgrwlq();
|
||||
rwlq.setId(UUIDGenerator.getUUID());
|
||||
rwlq.setFgrwzt("02");
|
||||
rwlq.setFgrwid(query.getFgrwid());
|
||||
rwlq.setFgrwlqrid(userInfo.getUserId().toString());
|
||||
rwlq.setFgrwlqrsfzh(userInfo.getIdEntityCard());
|
||||
rwlq.setFgrwlqr(userInfo.getUserName());
|
||||
rwlq.setRwlqrq(DateUtils.getNowDate());
|
||||
this.tbZdyFgrwlqMapper.insert(rwlq);
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getFgrwDkXq(TbZdyFgrwQuery query) {
|
||||
Map<String, Object> res = new HashMap<>();
|
||||
UserInfo user = UserInfoManager.get();
|
||||
TbZdyFgrw fgrw = this.baseMapper.selectById(query.getFgrwid());
|
||||
List<TbZdyFgbxd> bxds = this.tbZdyFgbxdMapper.selectList(
|
||||
new LambdaQueryWrapper<TbZdyFgbxd>()
|
||||
.eq(TbZdyFgbxd::getFgrwid,query.getFgrwid())
|
||||
);
|
||||
TbZdxlFgdw tbZdxlFgdw = this.tbZdxlFgdwMapper.selectById(fgrw.getFgId());
|
||||
TbZdxlFgdwVO fgdwVO = buildAllInfoByEntity(tbZdxlFgdw);
|
||||
res.put("fgdwVO",fgdwVO);
|
||||
res.put("fgrw",fgrw);
|
||||
List<Map<String,Object>> maps = new ArrayList<>();
|
||||
if(!CollectionUtils.isEmpty(bxds)){
|
||||
bxds.forEach( bxd ->{
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("bxdMc",bxd.getBxdMc());
|
||||
TbZdyFgrwlqdk dk = this.tbZdyFgrwlqdkMapper.selectOne(
|
||||
new LambdaQueryWrapper<TbZdyFgrwlqdk>()
|
||||
.eq(TbZdyFgrwlqdk::getFgbxdid,bxd.getId())
|
||||
.eq(TbZdyFgrwlqdk::getFgrwid,fgrw.getId())
|
||||
.eq(TbZdyFgrwlqdk::getDkrid,user.getUserId().toString())
|
||||
.orderByDesc(TbZdyFgrwlqdk::getDksj)
|
||||
);
|
||||
if(Objects.nonNull(dk)){
|
||||
map.put("fgrwid",bxd.getFgrwid());
|
||||
map.put("bxdid",bxd.getId());
|
||||
map.put("jw",bxd.getJd());
|
||||
map.put("wd",bxd.getWd());
|
||||
map.put("dkzt","已打卡");
|
||||
map.put("dksj",dk.getDksj());
|
||||
map.put("dktp",dk.getDktp());
|
||||
}else {
|
||||
map.put("fgrwid",bxd.getFgrwid());
|
||||
map.put("bxdid",bxd.getId());
|
||||
map.put("jw",bxd.getJd());
|
||||
map.put("wd",bxd.getWd());
|
||||
map.put("dkzt","未打卡");
|
||||
map.put("dksj","");
|
||||
map.put("dktp","");
|
||||
}
|
||||
maps.add(map);
|
||||
});
|
||||
}
|
||||
res.put("bxds",maps);
|
||||
return res;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean zdyRwdk(TbZdyFgrwDkDto dto) {
|
||||
UserInfo user = UserInfoManager.get();
|
||||
int num = this.tbZdyFgrwlqMapper.selectCount(
|
||||
new LambdaQueryWrapper<TbZdyFgrwlq>()
|
||||
.eq(TbZdyFgrwlq::getFgrwid,dto.getFgrwid())
|
||||
.eq(TbZdyFgrwlq::getFgrwlqrid,user.getUserId().toString())
|
||||
);
|
||||
if(num ==0 ) throw new BusinessException("您还没有领取该任务!");
|
||||
TbZdyFgbxd tbZdyFgbxd = this.tbZdyFgbxdMapper.selectById(dto.getBxdid());
|
||||
long jl = PositionUtil.getDistance(dto.getJd().doubleValue(), dto.getWd().doubleValue(),tbZdyFgbxd.getJd().doubleValue(),tbZdyFgbxd.getWd().doubleValue());
|
||||
if(jl > 100L) throw new BusinessException("您的位置在卡点100米以外,无法打卡");
|
||||
TbZdyFgrwlqdk tbZdyFgrwlqdk = new TbZdyFgrwlqdk();
|
||||
BeanUtils.copyProperties(dto,tbZdyFgrwlqdk);
|
||||
tbZdyFgrwlqdk.setId(UUIDGenerator.getUUID());
|
||||
tbZdyFgrwlqdk.setDksj(new Date());
|
||||
tbZdyFgrwlqdk.setDkrid(user.getUserId().toString());
|
||||
tbZdyFgrwlqdk.setDkr(user.getUserName());
|
||||
tbZdyFgrwlqdk.setDarsfzh(user.getIdEntityCard());
|
||||
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(user.getDeptCode());
|
||||
if(Objects.nonNull(dept)){
|
||||
tbZdyFgrwlqdk.setSsbm(dept.getDeptname());
|
||||
tbZdyFgrwlqdk.setSsbmdm(dept.getDeptcode());
|
||||
tbZdyFgrwlqdk.setSsxgajdm(dept.getFxjcode());
|
||||
tbZdyFgrwlqdk.setSsxgaj(dept.getFxjname());
|
||||
tbZdyFgrwlqdk.setSssgaj(dept.getDszname());
|
||||
tbZdyFgrwlqdk.setSssgajdm(dept.getDszcode());
|
||||
}
|
||||
this.tbZdyFgrwlqdkMapper.insert(tbZdyFgrwlqdk);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@ -2,10 +2,12 @@ package com.mosty.yjzl.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdxlFgxlrwUpdateDTO;
|
||||
import com.mosty.base.model.dto.yjzl.ZdyxlFgxlrwDto;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.TbZdxlFgxlrw;
|
||||
import com.mosty.base.model.entity.yjzl.zddw.TbZdxlFgzdyrw;
|
||||
import com.mosty.base.model.query.yjzl.TbZdxlFgxlrwQuery;
|
||||
import com.mosty.base.model.vo.yjzl.TbZdxlFgxlrwVO;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@ -70,27 +72,18 @@ public interface TbZdxlFgxlrwService {
|
||||
*/
|
||||
String updateEntity(TbZdxlFgxlrwUpdateDTO dto);
|
||||
|
||||
/**
|
||||
* 修改列表(修改任务状态为”已导出“)
|
||||
* @param entityList 实体列表
|
||||
* @return 操作数量
|
||||
*/
|
||||
int updateListRwZtToYdc(List<TbZdxlFgxlrw> entityList);
|
||||
|
||||
/**
|
||||
* 导入列表(根据导出的模板)
|
||||
* @param entityList 实体列表
|
||||
* @return 操作数量
|
||||
*/
|
||||
int importListByMb(List<TbZdxlFgxlrw> entityList);
|
||||
|
||||
int importListByMbZdy(List<TbZdxlFgzdyrw> entityList);
|
||||
|
||||
/**
|
||||
* 下发列表
|
||||
* @param entityList 需下发的列表
|
||||
* @return 操作条数
|
||||
*/
|
||||
int issueList(List<TbZdxlFgxlrw> entityList);
|
||||
|
||||
TbZdxlFgxlrw addZdyxlFgxlrw(ZdyxlFgxlrwDto dto);
|
||||
|
||||
TbZdxlFgxlrw editZdyxlFgxlrw(ZdyxlFgxlrwDto dto);
|
||||
|
||||
Boolean delZdyxlFgxlrw(ZdyxlFgxlrwDto dto);
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,29 @@
|
||||
package com.mosty.yjzl.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdyFgrwDkDto;
|
||||
import com.mosty.base.model.dto.yjzl.TbZdyFgrwDto;
|
||||
import com.mosty.base.model.query.yjzl.TbZdyFgrwQuery;
|
||||
import com.mosty.base.model.query.yjzl.TbZdyFgrwlqQuery;
|
||||
import com.mosty.base.model.vo.yjzl.TbZdyFgrwVO;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface TbZdyFgrwService {
|
||||
|
||||
Boolean addTbZdyrw(TbZdyFgrwDto dto);
|
||||
|
||||
IPage<TbZdyFgrwVO> selectList(TbZdyFgrwQuery query);
|
||||
|
||||
IPage<TbZdyFgrwVO> selectListApp(TbZdyFgrwQuery query);
|
||||
|
||||
TbZdyFgrwVO getFgrwXq(TbZdyFgrwQuery query);
|
||||
|
||||
Boolean getLqrw(TbZdyFgrwlqQuery query);
|
||||
|
||||
Map<String,Object> getFgrwDkXq(TbZdyFgrwQuery query);
|
||||
|
||||
Boolean zdyRwdk(TbZdyFgrwDkDto dto);
|
||||
}
|
||||
21
mosty-yjzl/src/main/resources/mapper/TbZdyFgrwMapper.xml
Normal file
21
mosty-yjzl/src/main/resources/mapper/TbZdyFgrwMapper.xml
Normal file
@ -0,0 +1,21 @@
|
||||
<?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.mosty.yjzl.mapper.TbZdyFgrwMapper">
|
||||
<select id="getLqfgrw" resultType="com.mosty.base.model.entity.yjzl.zddw.TbZdyFgrw">
|
||||
SELECT fgrw.* FROM tb_zdy_fgrwlq rwlq LEFT JOIN tb_zdy_fgrw fgrw ON rwlq.fgrwid = fgrw.id
|
||||
where fgrw.xt_scbz = '0'
|
||||
<if test="dto.fgRwmc != null and dto.fgRwmc != ''">
|
||||
and fgrw.fg_rwmc like concat('%',#{dto.fgRwmc},'%')
|
||||
</if>
|
||||
<if test="dto.ssbmdm != null and dto.ssbmdm != ''">
|
||||
and fgrw.ssbmdm like concat(#{dto.ssbmdm},'%')
|
||||
</if>
|
||||
<if test="dto.xfbmdm != null and dto.xfbmdm != ''">
|
||||
and fgrw.xfbmdm like concat(#{dto.xfbmdm},'%')
|
||||
</if>
|
||||
<if test="dto.fgrwlqrid != null and dto.fgrwlqrid != ''">
|
||||
and rwlq.fgrwlqrid = #{dto.fgrwlqrid}
|
||||
</if>
|
||||
order by fgrw.xfrq desc
|
||||
</select>
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user