Commit 4f8a85e4 by hzc

Merge branch 'hy-tobacco' of http://132.232.112.242:7090/zhangkb/indicators into hy-tobacco

parents c7f52d1a cb862375
...@@ -70,6 +70,7 @@ public class DataEnterCtrl { ...@@ -70,6 +70,7 @@ public class DataEnterCtrl {
List<JSONObject> orgs = systemAuthService.getOrgByNos(idList); List<JSONObject> orgs = systemAuthService.getOrgByNos(idList);
for (JSONObject jo : orgs) { for (JSONObject jo : orgs) {
AuthModel authModel = new AuthModel(); AuthModel authModel = new AuthModel();
authModel.setObjType(Constants.OBJ_TYPE_ORG);
authModel.setName(jo.getString("name")); authModel.setName(jo.getString("name"));
authModel.setId(jo.getString("no")); authModel.setId(jo.getString("no"));
objs.add(authModel); objs.add(authModel);
...@@ -226,7 +227,7 @@ public class DataEnterCtrl { ...@@ -226,7 +227,7 @@ public class DataEnterCtrl {
} }
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
List<TaskIndValue> taskIndValues = new ArrayList<>(); List<TaskIndValue> taskIndValues = new ArrayList<>();
if (template.getCType() == 1) { if (template.getCtype() == 1) {
// 指标是列值 // 指标是列值
if (hasSameTerm) { if (hasSameTerm) {
startRow = 2; startRow = 2;
......
...@@ -4,13 +4,16 @@ import com.alibaba.excel.EasyExcel; ...@@ -4,13 +4,16 @@ import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.support.ExcelTypeEnum; import com.alibaba.excel.support.ExcelTypeEnum;
import com.alibaba.excel.write.builder.ExcelWriterBuilder; import com.alibaba.excel.write.builder.ExcelWriterBuilder;
import com.alibaba.excel.write.merge.OnceAbsoluteMergeStrategy; import com.alibaba.excel.write.merge.OnceAbsoluteMergeStrategy;
import com.alibaba.fastjson.JSONObject;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.keymobile.indicators.model.entity.dataenter.ExcelIndicator; import com.keymobile.indicators.constant.Constants;
import com.keymobile.indicators.model.entity.dataenter.ExcelObj; import com.keymobile.indicators.model.entity.AuthModel;
import com.keymobile.indicators.model.entity.dataenter.ExcelTemplate; import com.keymobile.indicators.model.entity.RoleRefUserModel;
import com.keymobile.indicators.model.entity.dataenter.Task; import com.keymobile.indicators.model.entity.dataenter.*;
import com.keymobile.indicators.result.Result; import com.keymobile.indicators.result.Result;
import com.keymobile.indicators.service.SystemAuthService;
import com.keymobile.indicators.service.dataenter.ExcelTemplateService; import com.keymobile.indicators.service.dataenter.ExcelTemplateService;
import com.keymobile.indicators.service.dataenter.TaskRuleGroupObjService;
import com.keymobile.indicators.service.dataenter.TaskService; import com.keymobile.indicators.service.dataenter.TaskService;
import com.keymobile.indicators.utils.SystemUserUtil; import com.keymobile.indicators.utils.SystemUserUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -24,10 +27,7 @@ import org.springframework.web.bind.annotation.*; ...@@ -24,10 +27,7 @@ import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.util.ArrayList; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Api(tags={"数据填报-填报excel模板管理"}) @Api(tags={"数据填报-填报excel模板管理"})
@RestController @RestController
...@@ -41,6 +41,67 @@ public class ExcelTempCtrl { ...@@ -41,6 +41,67 @@ public class ExcelTempCtrl {
@Autowired @Autowired
private TaskService taskService; private TaskService taskService;
@Autowired
private SystemAuthService systemAuthService;
@Autowired
private TaskRuleGroupObjService taskRuleGroupObjService;
@ApiOperation("根据任务id获取需要填报的数据项(配置excel模板用)")
@GetMapping("findTaskDataInds")
public List<TaskIndicator> findTaskDataInds(@ApiParam("任务id")
@RequestParam(value = "taskId") String taskId
) {
return taskService.findTaskInds(taskId, true);
}
@ApiOperation("根据任务id或者填报单位id获取单位明细(配置excel模板用)")
@GetMapping("findTaskObjs")
public List<AuthModel> findTaskObjs(@ApiParam("任务id,(填报单位id和任务id必填一个)")
@RequestParam(value = "taskId", required = false) String taskId,
@ApiParam("单位id,(填报单位id和任务id必填一个)")
@RequestParam(value = "objId", required = false)Integer objId) {
List<AuthModel> list = new ArrayList<>();
TaskRuleGroupObj obj = null;
List<String> objIds = new ArrayList<>();
if (objId == null || objId == 0 ) {
Task task = taskService.getById(taskId, false, false);
objId = task.getGroupId();
}
obj = taskRuleGroupObjService.getById(objId);
int objType = obj.getObjType();
if (obj != null && obj.getDetail() != null) {
objIds = Arrays.asList(StringUtils.split(obj.getDetail(), Constants.SEP_COMMA));
switch (objType) {
case 1:
//组织
List<RoleRefUserModel> users = new ArrayList<>();
List<JSONObject> orgs =
systemAuthService.getOrgByNos(objIds);
for (JSONObject jo : orgs) {
AuthModel authModel = new AuthModel();
authModel.setObjType(Constants.OBJ_TYPE_ORG);
authModel.setName(jo.getString("name"));
authModel.setId(jo.getString("no"));
list.add(authModel);
}
break;
case 2:
//人员
break;
case 3:
//角色
break;
default:
break;
}
}
return list;
}
@ApiOperation("根据规则id任务id获取excel模板") @ApiOperation("根据规则id任务id获取excel模板")
@GetMapping("findByTaskRule") @GetMapping("findByTaskRule")
public List<ExcelTemplate> findByTaskRule(@ApiParam(name = "ruleId", required = false) @RequestParam("ruleId")Integer ruleId, public List<ExcelTemplate> findByTaskRule(@ApiParam(name = "ruleId", required = false) @RequestParam("ruleId")Integer ruleId,
...@@ -66,12 +127,12 @@ public class ExcelTempCtrl { ...@@ -66,12 +127,12 @@ public class ExcelTempCtrl {
@ApiOperation("保存excel模板") @ApiOperation("保存excel模板")
@PostMapping("save") @PostMapping("save")
public Result save(@RequestBody ExcelTemplate template) { public Result save(@RequestBody ExcelTemplate template) {
if (StringUtils.isNotBlank(template.getTaskId())) { // if (StringUtils.isNotBlank(template.getTaskId())) {
ExcelTemplate temp = excelTemplateService.getByTaskId(template.getTaskId()); // ExcelTemplate temp = excelTemplateService.getByTaskId(template.getTaskId());
if (temp != null && !temp.getId().equals(template.getId())) { // if (temp != null && !temp.getId().equals(template.getId())) {
return Result.genFailedResult("该任务已经存在设置好的模板!"); // return Result.genFailedResult("该任务已经存在设置好的模板!");
} // }
} // }
Task task = taskService.getById(template.getTaskId(), false, false); Task task = taskService.getById(template.getTaskId(), false, false);
template.setRuleId(task.getRuleId()); template.setRuleId(task.getRuleId());
template.setRuleLevel(task.getRuleLevel()); template.setRuleLevel(task.getRuleLevel());
...@@ -116,7 +177,7 @@ public class ExcelTempCtrl { ...@@ -116,7 +177,7 @@ public class ExcelTempCtrl {
} }
List<OnceAbsoluteMergeStrategy> merges = new ArrayList<>(); List<OnceAbsoluteMergeStrategy> merges = new ArrayList<>();
List<List<String>> headers = new ArrayList<>(); List<List<String>> headers = new ArrayList<>();
if (template.getCType() == 1) { if (template.getCtype() == 1) {
// 列类型:1、指标 2 考核对象 // 列类型:1、指标 2 考核对象
List<String> column1 = new ArrayList<>(); List<String> column1 = new ArrayList<>();
column1.add(""); column1.add("");
......
...@@ -13,17 +13,20 @@ public class AuthModel { ...@@ -13,17 +13,20 @@ public class AuthModel {
private String name; private String name;
private int objType;
@Override @Override
public boolean equals(Object o) { public boolean equals(Object o) {
if (this == o) return true; if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false; if (o == null || getClass() != o.getClass()) return false;
AuthModel authModel = (AuthModel) o; AuthModel model = (AuthModel) o;
return Objects.equals(id, authModel.id) && return objType == model.objType &&
Objects.equals(name, authModel.name); Objects.equals(id, model.id) &&
Objects.equals(name, model.name);
} }
@Override @Override
public int hashCode() { public int hashCode() {
return Objects.hash(id, name); return Objects.hash(id, name, objType);
} }
} }
...@@ -4,6 +4,7 @@ import com.keymobile.indicators.model.entity.BaseModel; ...@@ -4,6 +4,7 @@ import com.keymobile.indicators.model.entity.BaseModel;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.Setter;
import javax.persistence.*; import javax.persistence.*;
import java.util.List; import java.util.List;
...@@ -26,8 +27,8 @@ public class ExcelTemplate extends BaseModel { ...@@ -26,8 +27,8 @@ public class ExcelTemplate extends BaseModel {
/** /**
* 列类型 * 列类型
*/ */
@ApiModelProperty("列类型:1、指标 2 考核对象") @ApiModelProperty("列类型:1、指标 2 考核对象" )
private Integer cType; private Integer ctype;
/** /**
* 是否需要同期值 * 是否需要同期值
......
...@@ -29,4 +29,5 @@ public interface TaskIndicatorMapper extends BaseMapper<TaskIndicator> { ...@@ -29,4 +29,5 @@ public interface TaskIndicatorMapper extends BaseMapper<TaskIndicator> {
* @return * @return
*/ */
List<TaskIndicator> getByTaskId(String taskId); List<TaskIndicator> getByTaskId(String taskId);
} }
...@@ -49,6 +49,14 @@ public interface TaskService { ...@@ -49,6 +49,14 @@ public interface TaskService {
*/ */
Task getById(String taskId, boolean needTaskInd, boolean needRuleInd); Task getById(String taskId, boolean needTaskInd, boolean needRuleInd);
/**
* 根据任务id查找关联的数据项
* @param taskId
* @param onlyChild 是否只取子数据项
* @return
*/
List<TaskIndicator> findTaskInds(String taskId, boolean onlyChild);
/** /**
* 根据规则id和取数时间删除任务(物理删除) * 根据规则id和取数时间删除任务(物理删除)
......
...@@ -50,6 +50,7 @@ public class ExcelTemplateServiceImpl implements ExcelTemplateService { ...@@ -50,6 +50,7 @@ public class ExcelTemplateServiceImpl implements ExcelTemplateService {
} }
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void createTemplateFromOld(Integer templateId, String taskId, String userId) { public void createTemplateFromOld(Integer templateId, String taskId, String userId) {
Date now = new Date(); Date now = new Date();
......
...@@ -143,6 +143,22 @@ public class TaskServiceImpl implements TaskService { ...@@ -143,6 +143,22 @@ public class TaskServiceImpl implements TaskService {
} }
@Override @Override
public List<TaskIndicator> findTaskInds(String taskId, boolean onlyChild) {
List<TaskIndicator> list = taskIndicatorMapper.getByTaskId(taskId);
List<TaskIndicator> result = new ArrayList<>();
if (onlyChild) {
for (TaskIndicator ind : list) {
if (ind.getHasChildren() != null && !ind.getHasChildren()) {
result.add(ind);
}
}
} else {
result = list;
}
return result;
}
@Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void deleteByRuleIdAndValueTime(Integer ruleId, String valueTime) { public void deleteByRuleIdAndValueTime(Integer ruleId, String valueTime) {
taskMapper.deleteByRuleIdAndValueTime(ruleId, valueTime); taskMapper.deleteByRuleIdAndValueTime(ruleId, valueTime);
...@@ -426,6 +442,7 @@ public class TaskServiceImpl implements TaskService { ...@@ -426,6 +442,7 @@ public class TaskServiceImpl implements TaskService {
List<JSONObject> list = systemAuthService.getOrgByNos(ids); List<JSONObject> list = systemAuthService.getOrgByNos(ids);
for (JSONObject jo : list) { for (JSONObject jo : list) {
AuthModel model = new AuthModel(); AuthModel model = new AuthModel();
model.setObjType(Constants.OBJ_TYPE_ORG);
model.setId(jo.getString("no")); model.setId(jo.getString("no"));
model.setName(jo.getString("name")); model.setName(jo.getString("name"));
models.add(model); models.add(model);
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
select * select *
from data_enter_excel_temp from data_enter_excel_temp
where state = 1 and task_id = #{taskId} where state = 1 and task_id = #{taskId}
order by update_time desc
limit 1 limit 1
</select> </select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment