|
@@ -1,13 +1,17 @@
|
|
|
package org.springblade.manager.feign;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
+import com.mixsmart.utils.FormulaUtils;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.springblade.core.tool.utils.BeanUtil;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
import org.springblade.core.tool.utils.StringPool;
|
|
|
import org.springblade.manager.entity.Formula;
|
|
|
+import org.springblade.manager.entity.WbsTreeContract;
|
|
|
import org.springblade.manager.formula.KeyMapper;
|
|
|
import org.springblade.manager.service.IExcelTabService;
|
|
|
import org.springblade.manager.service.IFormulaService;
|
|
|
+import org.springblade.manager.service.IWbsTreeContractService;
|
|
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
@@ -25,6 +29,7 @@ public class FormulaClientImpl implements FormulaClient {
|
|
|
private final IFormulaService service;
|
|
|
private final JdbcTemplate jdbcTemplate;
|
|
|
private final IExcelTabService excelTabService;
|
|
|
+ private final IWbsTreeContractService wbsTreeContractService;
|
|
|
|
|
|
@Override
|
|
|
public void formulaExecute() {
|
|
@@ -33,21 +38,20 @@ public class FormulaClientImpl implements FormulaClient {
|
|
|
@Override
|
|
|
public String dPoint(Long pkId, String key) {
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
- try {
|
|
|
- Map<String, String> keysMap = this.excelTabService.getTablbCols(String.valueOf(pkId), null);
|
|
|
- Long id = this.jdbcTemplate.queryForObject("select d.formula_id from m_wbs_tree_contract a join m_table_info b on a.init_table_name=b.tab_en_name join m_wbs_form_element c on c.f_id=b.id join m_element_formula_mapping d on c.id=d.element_id where a.p_key_id=" + pkId + " and c.e_key='" + key + "' ORDER BY d.scope desc limit 1", Long.class);
|
|
|
- if (Func.isNotEmpty(id)) {
|
|
|
- Formula formula = this.service.getById(id);
|
|
|
- if (Func.isNotEmpty(formula)) {
|
|
|
- formula.getRelyList().forEach(e -> {
|
|
|
- String heard = e.split(StringPool.COLON)[1];
|
|
|
- sb.append(heard).append("__").append(keysMap.get(heard)).append(StringPool.COMMA);
|
|
|
- });
|
|
|
- }
|
|
|
+ WbsTreeContract wtc= this.wbsTreeContractService.getOne(Wrappers.<WbsTreeContract>lambdaQuery().eq(WbsTreeContract::getPKeyId,pkId));
|
|
|
+ if(wtc==null){
|
|
|
+ return "表id有误";
|
|
|
+ }
|
|
|
+ Map<String, String> keysMap = FormulaUtils.getElementCell(wtc.getHtmlUrl());
|
|
|
+ Long id = this.jdbcTemplate.queryForObject("select d.formula_id from m_wbs_tree_contract a join m_table_info b on a.init_table_name=b.tab_en_name join m_wbs_form_element c on c.f_id=b.id join m_element_formula_mapping d on c.id=d.element_id where a.p_key_id=" + pkId + " and c.e_key='" + key + "' ORDER BY d.scope desc limit 1", Long.class);
|
|
|
+ if (Func.isNotEmpty(id)) {
|
|
|
+ Formula formula = this.service.getById(id);
|
|
|
+ if (Func.isNotEmpty(formula)) {
|
|
|
+ formula.getRelyList().forEach(e -> {
|
|
|
+ String heard = e.split(StringPool.COLON)[1];
|
|
|
+ sb.append(heard).append("__").append(keysMap.get(heard)).append(StringPool.COMMA);
|
|
|
+ });
|
|
|
}
|
|
|
- } catch (FileNotFoundException e) {
|
|
|
- e.printStackTrace();
|
|
|
- sb.append("无法获取定位信息");
|
|
|
}
|
|
|
return sb.toString();
|
|
|
}
|