Browse Source

Merge branch 'master' of ssh://101.201.226.163:50022/ccsens_wiki/pt_ccsens

ptos
zhizhi wu 4 years ago
parent
commit
1fa25a95a2
  1. 4
      src/main/java/com/ccsens/ptccsens/bean/vo/ProjectFinanceVo.java
  2. 3
      src/main/java/com/ccsens/ptccsens/persist/dao/ProTaskDetailDao.java
  3. 25
      src/main/java/com/ccsens/ptccsens/service/ProjectFinanceService.java
  4. 1
      src/main/java/com/ccsens/ptccsens/util/BasicsCodeError.java
  5. 4
      src/main/resources/application.yml
  6. 6
      src/main/resources/mapper_dao/PluFinanceDao.xml

4
src/main/java/com/ccsens/ptccsens/bean/vo/ProjectFinanceVo.java

@ -53,12 +53,12 @@ public class ProjectFinanceVo {
private Long submitTime;
@ApiModelProperty("审查人和当前记录的关联id")
private Long financeCheckId;
@ApiModelProperty("当前状态")
@ApiModelProperty("当前状态(0未审核 1已通过 2驳回)")
private Byte applyType;
}
@Data
@ApiModel("查看自己需要审批的申请-返参")
@ApiModel("查看项目下的财务信息-返参")
public static class FinanceOfProject {
@ApiModelProperty("任务id")
private Long taskDetailId;

3
src/main/java/com/ccsens/ptccsens/persist/dao/ProTaskDetailDao.java

@ -1,8 +1,9 @@
package com.ccsens.ptccsens.persist.dao;
import com.ccsens.ptccsens.persist.mapper.ProTaskDetailMapper;
import org.apache.ibatis.annotations.Param;
public interface ProTaskDetailDao {
public interface ProTaskDetailDao extends ProTaskDetailMapper {
/**
* 根据任务详情id查找项目id
* @param taskDetailId 任务ID

25
src/main/java/com/ccsens/ptccsens/service/ProjectFinanceService.java

@ -7,6 +7,7 @@ import cn.hutool.core.util.ObjectUtil;
import com.ccsens.ptccsens.bean.dto.ProjectFinanceDto;
import com.ccsens.ptccsens.bean.po.PluFinance;
import com.ccsens.ptccsens.bean.po.PluFinanceAppendBudget;
import com.ccsens.ptccsens.bean.po.ProTaskDetail;
import com.ccsens.ptccsens.bean.po.ProTaskPlugin;
import com.ccsens.ptccsens.bean.vo.ProjectFinanceVo;
import com.ccsens.ptccsens.persist.dao.ProMemberDao;
@ -59,9 +60,14 @@ public class ProjectFinanceService implements IProjectFinanceService{
List<ProjectFinanceVo.TaskFinance> taskFinanceList = pluFinanceDao.queryAllByTaskId(param.getProjectId());
log.info("项目下的所有任务财务信息:{}",taskFinanceList);
//查询项目下的总计
projectFinanceInfo = pluFinanceDao.queryOfProjectTotal(param.getProjectId());
log.info("项目的总计预算与奖金:{}",projectFinanceInfo);
// projectFinanceInfo = pluFinanceDao.queryOfProjectTotal(param.getProjectId());
// log.info("项目的总计预算与奖金:{}",projectFinanceInfo);
if (CollectionUtil.isNotEmpty(taskFinanceList)) {
//计算预算与奖金总计
long budgetSum = taskFinanceList.stream().mapToLong(ProjectFinanceVo.TaskFinance::getBudget).sum();
projectFinanceInfo.setBudget(budgetSum);
long bonusSum = taskFinanceList.stream().mapToLong(ProjectFinanceVo.TaskFinance::getBonus).sum();
projectFinanceInfo.setBonus(bonusSum);
projectFinanceInfo.setTaskFinanceList(new PageInfo<ProjectFinanceVo.TaskFinance>(taskFinanceList));
}
return projectFinanceInfo;
@ -69,6 +75,10 @@ public class ProjectFinanceService implements IProjectFinanceService{
@Override
public void updateFinance(ProjectFinanceDto.UpdateFinance param, Long userId) {
ProTaskDetail proTaskDetail = proTaskDetailDao.selectByPrimaryKey(param.getTaskDetailId());
if (ObjectUtil.isNull(proTaskDetail)) {
throw new BaseException(BasicsCodeError.TASK_DONT_EXIT);
}
//如果任务没有关联财务条插件,则自动关联财务条插件
//TODO 根据插件code查询是否存在, code暂时写死
Integer num = pluginDao.queryFinancePlugin(param.getTaskDetailId(), "MP-TALL财务条");
@ -92,14 +102,15 @@ public class ProjectFinanceService implements IProjectFinanceService{
//a.如果存在,直接修改预算或奖金
if (ObjectUtil.isNotNull(pluFinance)) {
PluFinance updatePluFinance = new PluFinance();
updatePluFinance.setId(param.getTaskDetailId());
updatePluFinance.setId(param.getTaskFinanceId());
if (ObjectUtil.isNotNull(param.getBonus()) && 0 != param.getBonus()) {
updatePluFinance.setBonus(param.getBonus());
pluFinanceDao.updateByPrimaryKeySelective(updatePluFinance);
}
if (ObjectUtil.isNotNull(param.getBudget()) && 0!= param.getBudget()) {
updatePluFinance.setBudget(param.getBudget());
pluFinanceDao.updateByPrimaryKeySelective(updatePluFinance);
}
pluFinanceDao.updateByPrimaryKeySelective(updatePluFinance);
return;
}
//b.如果不存在,根据任务id新建一个财务信息
@ -133,7 +144,10 @@ public class ProjectFinanceService implements IProjectFinanceService{
List<ProjectFinanceVo.NeedCheckByMe> needCheckByMeList = pluFinanceApplyDao.queryNeedCheckByMeOfTask(param.getTaskDetailId(),userId,projectId);
return new PageInfo<>(needCheckByMeList);
}
return null;
List<ProjectFinanceVo.NeedCheckByMe> needCheckByMeList = new ArrayList<>();
ProjectFinanceVo.NeedCheckByMe needCheckByMe = new ProjectFinanceVo.NeedCheckByMe();
needCheckByMeList.add(needCheckByMe);
return new PageInfo<ProjectFinanceVo.NeedCheckByMe>(needCheckByMeList);
}
@ -178,6 +192,7 @@ public class ProjectFinanceService implements IProjectFinanceService{
Long userOfMemberId = memberDao.findUserOfMemberId(param.getProjectId(), userId);
appendBudget.setMemberId(userOfMemberId);
appendBudget.setOperator(userId);
appendBudget.setAddBudget(param.getAppendBudget());
appendBudgetMapper.insertSelective(appendBudget);
}
}

1
src/main/java/com/ccsens/ptccsens/util/BasicsCodeError.java

@ -38,6 +38,7 @@ public class BasicsCodeError extends CodeError {
public static final Code TOTAL_MONEY_ERROR = new Code(526,"申请总金额和发票总金额不一致,请检查修改后重新提交。", true);
public static final Code CHECK_NOT_FOUND = new Code(527,"没有找到对应的审核记录,请确认后重新提交。", true);
public static final Code CHECK_EXISTED = new Code(528,"您已经提交过审核结果了,无需重复提交。", true);
public static final Code TASK_DONT_EXIT = new Code(530,"任务不存在请检查后重试", true);
public static final Code FINANCE_NOT_FOUND = new Code(529,"没有找到任务对应的财务预算信息,请修改后重新提交申请。", true);

4
src/main/resources/application.yml

@ -1,4 +1,4 @@
spring:
profiles:
active: dev
include: common, util-dev
active: test
include: common, util-test

6
src/main/resources/mapper_dao/PluFinanceDao.xml

@ -84,7 +84,7 @@
<id column="fabId" property="fabId"/>
<result column="addBudget" property="appendBudget"/>
</collection>
<collection property="doctors" ofType="com.ccsens.ptccsens.bean.vo.ProjectFinanceVo$PassMoney">
<collection property="passMoneyList" ofType="com.ccsens.ptccsens.bean.vo.ProjectFinanceVo$PassMoney">
<id column="faId" property="faId"/>
<result column="money" property="passMoney"/>
</collection>
@ -94,10 +94,10 @@
pf.id AS fid,
pf.budget,
pf.bonus,
pf.task_id,
pf.task_id AS taskId,
td.`name`,
fab.id AS fabId,
fab.add_budget,
fab.add_budget AS addBudget,
fa.money,
fa.finance_id AS faId
FROM

Loading…
Cancel
Save