diff --git a/src/main/java/com/ccsens/ptccsens/service/TallService.java b/src/main/java/com/ccsens/ptccsens/service/TallService.java index e659150..80f246b 100644 --- a/src/main/java/com/ccsens/ptccsens/service/TallService.java +++ b/src/main/java/com/ccsens/ptccsens/service/TallService.java @@ -9,8 +9,10 @@ import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; import com.ccsens.ptccsens.bean.dto.FinanceDto; import com.ccsens.ptccsens.bean.po.ProRole; +import com.ccsens.ptccsens.bean.po.ProTaskDetail; import com.ccsens.ptccsens.bean.po.ProTaskSub; import com.ccsens.ptccsens.bean.po.ProUser; +import com.ccsens.ptccsens.bean.vo.ClockingInVo; import com.ccsens.ptccsens.bean.vo.DeliverVo; import com.ccsens.ptccsens.bean.vo.FinanceVo; import com.ccsens.ptccsens.persist.dao.*; @@ -80,6 +82,8 @@ public class TallService implements ITallService { private FinanceService financeService; @Resource private IExportService exportService; + @Resource + private PowerService powerService; @SneakyThrows @Override @@ -736,4 +740,31 @@ public class TallService implements ITallService { return queryTaskList; } + + @Override + public void deleteProject(String token, TallProjectDto.ProjectById params) { + //根据token获取用户信息 + TallTokenVo.UserIdByToken userByToken = TokenUtil.getUserByToken(new TallTokenDto.GetUserByToken(token, Constant.APP_ID, Constant.APP_SECRET)); + if(ObjectUtil.isNull(userByToken)){ + throw new BaseException(CodeEnum.NOT_LOGIN); + } + //通过手机号获取用户在服务内的userId + ProUser user = null; + if(ObjectUtil.isNotNull(userByToken) && StrUtil.isNotBlank(userByToken.getPhone())){ + user = userDao.getUserIdByPhone(userByToken.getPhone()); + } + if(ObjectUtil.isNull(user)){ + throw new BaseException(BasicsCodeError.NOT_USER_SERVER); + } + //判断用户是否是项目经理 + Integer power = powerService.queryUserPower(params.getProjectId(), user.getId()); + if (power < 1) { + throw new BaseException(BasicsCodeError.NO_POWER); + } + //TODO 删除项目 暂时只删除项目 + ProTaskDetail project = new ProTaskDetail(); + project.setId(params.getProjectId()); + project.setRecStatus((byte) 2); + taskDetailDao.updateByPrimaryKeySelective(project); + } }