This commit is contained in:
zt
2025-02-28 10:29:12 +08:00
parent 575eb5747e
commit 31200b4a8a
6 changed files with 168 additions and 27 deletions

View File

@ -36,6 +36,9 @@ public class AppTaskVO {
/** 任务地址 */
@ApiModelProperty("任务地址")
private String taskAddress;
@ApiModelProperty("任务描述")
private String taskDescribe;
/** 任务金额 */
@ApiModelProperty("任务金额")
private Integer taskAmount;

View File

@ -5,22 +5,35 @@ import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
import com.ruoyi.bgt.domain.BgtMessage;
import com.ruoyi.bgt.service.IBgtMessageService;
import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.exception.BaseException;
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.fbs.bo.FbsProjectTaskApplyQueryBo;
import com.ruoyi.fbs.domain.FbsProjectTask;
import com.ruoyi.fbs.domain.FbsProjectTaskApply;
import com.ruoyi.fbs.domain.dto.TaskApplyDTO;
import com.ruoyi.fbs.mapper.FbsProjectTaskApplyMapper;
import com.ruoyi.fbs.service.IFbsProjectTaskApplyService;
import com.ruoyi.fbs.service.IFbsProjectTaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import static com.ruoyi.common.constants.BgtMessageConstant.*;
import static com.ruoyi.common.constants.WgzAndBgtMessageConstant.USERTYPE_BGT;
import static com.ruoyi.common.constants.WgzAndBgtMessageConstant.USERTYPE_SYSTEM;
/**
* 分包商项目任务申请Service业务层处理
*
@ -30,6 +43,11 @@ import java.util.stream.Collectors;
@Service
public class FbsProjectTaskApplyServiceImpl extends ServicePlusImpl<FbsProjectTaskApplyMapper, FbsProjectTaskApply> implements IFbsProjectTaskApplyService {
@Autowired
private IBgtMessageService bgtMessageService;
@Autowired
private IFbsProjectTaskService taskService;
@Override
public FbsProjectTaskApply queryById(Long id){
return getById(id);
@ -92,9 +110,27 @@ public class FbsProjectTaskApplyServiceImpl extends ServicePlusImpl<FbsProjectTa
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean appTaskApply(TaskApplyDTO dto) {
FbsProjectTaskApply fbsProjectTaskApply = BeanUtil.copyProperties(dto, FbsProjectTaskApply.class);
validEntityBeforeSave(fbsProjectTaskApply);
//发消息
FbsProjectTask task = taskService.getById(dto.getTaskId());
HashMap<String, String> mp = new HashMap<>();
mp.put("projectName", task.getTaskName());
mp.put("auditor", SecurityUtils.getUsername());
Map<String, String> map = bgtMessage(mp, BGT_TYPE_TASK, true);
BgtMessage bgtMessage = new BgtMessage()
.setSenderType(USERTYPE_SYSTEM)
.setRecipientType(USERTYPE_BGT)
.setRecipientId(dto.getUserId())
.setHeadline(map.get(HEADLINE))
.setSubheading(map.get(SUBHEADING))
.setTableId(task.getId())
.setTableName(SqlHelper.table(FbsProjectTask.class).getTableName())
.setMessageLargeType(BGT_LARGE_TASK);
bgtMessageService.sendAMessage(bgtMessage);
return save(fbsProjectTaskApply);
}
@ -108,6 +144,22 @@ public class FbsProjectTaskApplyServiceImpl extends ServicePlusImpl<FbsProjectTa
public Boolean cancelApply(TaskApplyDTO dto) {
int delete = baseMapper.delete(Wrappers.<FbsProjectTaskApply>lambdaQuery().eq(FbsProjectTaskApply::getTaskId, dto.getTaskId())
.eq(FbsProjectTaskApply::getUserId, dto.getUserId()));
//发消息
FbsProjectTask task = taskService.getById(dto.getTaskId());
HashMap<String, String> mp = new HashMap<>();
mp.put("projectName", task.getTaskName());
mp.put("auditor", SecurityUtils.getUsername());
Map<String, String> map = bgtMessage(mp, BGT_TYPE_TASK_CANCEL, true);
BgtMessage bgtMessage = new BgtMessage()
.setSenderType(USERTYPE_SYSTEM)
.setRecipientType(USERTYPE_BGT)
.setRecipientId(dto.getUserId())
.setHeadline(map.get(HEADLINE))
.setSubheading(map.get(SUBHEADING))
.setTableId(task.getId())
.setTableName(SqlHelper.table(FbsProjectTask.class).getTableName())
.setMessageLargeType(BGT_LARGE_TASK);
bgtMessageService.sendAMessage(bgtMessage);
return delete>0;
}
}