Browse Source

添加交付物信息

ptos
zy_Java 4 years ago
parent
commit
ff01acfe66
  1. 7
      src/main/java/com/ccsens/ptccsens/persist/dao/PluginDao.java
  2. 54
      src/main/java/com/ccsens/ptccsens/service/ProjectFinanceService.java
  3. 2
      src/main/java/com/ccsens/ptccsens/util/Constant.java
  4. 5
      src/main/resources/mapper_dao/PluginDao.xml

7
src/main/java/com/ccsens/ptccsens/persist/dao/PluginDao.java

@ -21,4 +21,11 @@ public interface PluginDao extends ProTaskPluginMapper {
Long getPluginIdByName(@Param("pluginName") String pluginName);
void updateParamById(@Param("param") String param, @Param("taskPluginId") Long taskPluginId);
/**
* 查找任务关联的插件的最大行数
* @param taskId 任务id
* @return 返回最大的一个行数
*/
Integer getTaskPluginMaxRow(@Param("taskId")Long taskId);
}

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

@ -17,7 +17,10 @@ import com.ccsens.ptccsens.persist.dao.PluginDao;
import com.ccsens.ptccsens.persist.dao.ProTaskDetailDao;
import com.ccsens.ptccsens.persist.mapper.PluFinanceAppendBudgetMapper;
import com.ccsens.ptccsens.util.BasicsCodeError;
import com.ccsens.ptccsens.util.Constant;
import com.ccsens.util.exception.BaseException;
import com.ccsensptos.tallsdk.bean.vo.TallPluginVo;
import com.ccsensptos.tallsdk.util.PluginUtil;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
@ -81,21 +84,22 @@ public class ProjectFinanceService implements IProjectFinanceService{
}
//如果任务没有关联财务条插件,则自动关联财务条插件
//TODO 根据插件code查询是否存在, code暂时写死
Integer num = pluginDao.queryFinancePlugin(param.getTaskDetailId(), "MP-TALL财务条");
Integer num = pluginDao.queryFinancePlugin(param.getTaskDetailId(), Constant.PLUGIN_FINANCE);
if (num < 1) {
taskSaveFinancePlugin(param.getTaskDetailId());
//不存在则关联插件
ProTaskPlugin proTaskPlugin = new ProTaskPlugin();
proTaskPlugin.setId(snowflake.nextId());
proTaskPlugin.setCode("MP-TALL财务条");
proTaskPlugin.setPlginCol(1);
proTaskPlugin.setPlginRow(1);
proTaskPlugin.setColspan(1);
proTaskPlugin.setRowspan(1);
proTaskPlugin.setTaskDetailId(param.getTaskDetailId());
//TODO 插件id
proTaskPlugin.setPluginId(123456L);
proTaskPlugin.setCode("MP-TALL财务条");
pluginDao.insertSelective(proTaskPlugin);
// ProTaskPlugin proTaskPlugin = new ProTaskPlugin();
// proTaskPlugin.setId(snowflake.nextId());
// proTaskPlugin.setCode("MP-TALL财务条");
// proTaskPlugin.setPlginCol(1);
// proTaskPlugin.setPlginRow(1);
// proTaskPlugin.setColspan(1);
// proTaskPlugin.setRowspan(1);
// proTaskPlugin.setTaskDetailId(param.getTaskDetailId());
// //TODO 插件id
// proTaskPlugin.setPluginId(18L);
// proTaskPlugin.setCode("MP-TALL财务条");
// pluginDao.insertSelective(proTaskPlugin);
}
//根据任务财务信息id查找财务表
PluFinance pluFinance = pluFinanceDao.selectByPrimaryKey(param.getTaskFinanceId());
@ -128,6 +132,30 @@ public class ProjectFinanceService implements IProjectFinanceService{
pluFinanceDao.insertSelective(newPluFinance);
}
/**
* 关联财务条插件
*/
public void taskSaveFinancePlugin(Long taskId){
TallPluginVo.BusinessPluginInfo pluginByCodeAndName = PluginUtil.getPluginByCodeAndName(Constant.BUSINESS_CODE, Constant.PLUGIN_FINANCE);
if(ObjectUtil.isNotNull(pluginByCodeAndName)){
//TODO 查找本任务上一个插件的行数,插件摆放位置暂时依次往下排
Integer row = pluginDao.getTaskPluginMaxRow(taskId);
//添加任务插件关联关系
ProTaskPlugin proTaskPlugin = new ProTaskPlugin();
proTaskPlugin.setId(snowflake.nextId());
proTaskPlugin.setPluginId(pluginByCodeAndName.getPluginId());
proTaskPlugin.setBusinessPluginId(pluginByCodeAndName.getBusinessPluginId());
proTaskPlugin.setCode(Constant.PLUGIN_FINANCE);
proTaskPlugin.setPluginInner(pluginByCodeAndName.getInner());
proTaskPlugin.setPlginCol(1);
proTaskPlugin.setPlginRow((row == null || row == 0) ? 1 : row);
proTaskPlugin.setColspan(1);
proTaskPlugin.setRowspan(1);
proTaskPlugin.setTaskDetailId(taskId);
pluginDao.insertSelective(proTaskPlugin);
}
}
@Override
public PageInfo<ProjectFinanceVo.NeedCheckByMe> queryNeedCheckByMe(ProjectFinanceDto.QueryNeedCheckByMe param, Long userId) {

2
src/main/java/com/ccsens/ptccsens/util/Constant.java

@ -14,6 +14,8 @@ public class Constant {
public static String APP_SECRET = "UzCCJfmKfVueCPw8w7ymbIc9vxZaRih4ndPmH38TnM9Wz54C";
/**服务code*/
public static String BUSINESS_CODE = "PT";
/**财务条插件名称*/
public static String PLUGIN_FINANCE = "MP-TALL财务条";
public static Map<Integer, String> timeUnit = new HashMap<>();
public static Map<Integer, String> timeFormat = new HashMap<>();

5
src/main/resources/mapper_dao/PluginDao.xml

@ -24,6 +24,11 @@
and rec_status = 0
limit 1
</select>
<select id="getTaskPluginMaxRow" resultType="java.lang.Integer">
SELECT
max(plgin_row)
FROM `t_pro_task_plugin` WHERE task_detail_id = #{taskId}
</select>
<update id="updateParamById">
update

Loading…
Cancel
Save