Commit 67c791f7 by 张祺

修改填报任何审核接口,增加在下发和提交的时候增加消息生成接口引入

parent dcef69f4
......@@ -18,6 +18,8 @@ public interface IndicatorsDataMapper extends BaseMapper<IndicatorsData>{
void batchCreateIndData(@Param("datas") List<IndicatorsData> datas);
void deleteData(@Param("indId") String indId, @Param("dim1")String dim1, @Param("dim2")Integer dim2);
public IndicatorsData getIndData(@Param("indId")String indId,
@Param("date")Integer date,@Param("compareObj")String compareObj);
}
......@@ -7,6 +7,7 @@ import com.google.common.collect.Multimaps;
import com.keymobile.indicators.constant.Constants;
import com.keymobile.indicators.model.entity.AuthModel;
import com.keymobile.indicators.model.entity.ConfigInfo;
import com.keymobile.indicators.model.entity.NoticeInfo;
import com.keymobile.indicators.model.entity.RoleRefUserModel;
import com.keymobile.indicators.model.entity.dataenter.*;
import com.keymobile.indicators.model.entity.indicators.BaseIndDef;
......@@ -14,6 +15,7 @@ import com.keymobile.indicators.model.entity.indicators.IndicatorsData;
import com.keymobile.indicators.model.mapper.indicators.*;
import com.keymobile.indicators.result.Result;
import com.keymobile.indicators.service.ConfigInfoService;
import com.keymobile.indicators.service.NoticeInfoService;
import com.keymobile.indicators.service.SystemAuthService;
import com.keymobile.indicators.service.dataenter.TaskRuleService;
import com.keymobile.indicators.service.dataenter.TaskService;
......@@ -73,6 +75,9 @@ public class TaskServiceImpl implements TaskService {
@Autowired
private BaseIndDataService baseIndDataService;
@Autowired
private NoticeInfoService noticeInfoService;
@Override
@Transactional(rollbackFor = Exception.class)
public Task createTask(Task task) {
......@@ -278,10 +283,12 @@ public class TaskServiceImpl implements TaskService {
if (configInfo != null) {
String indDept = task.getRefIndDept();
List<RoleRefUserModel> users = getUserByRoleIdStr(configInfo.getCfValue());
String user = SystemUserUtil.getCurrentUser();
if (CollectionUtils.isNotEmpty(users)) {
StringBuilder userIds = new StringBuilder(Constants.SEP_COMMA);
StringBuilder userNames = new StringBuilder(Constants.SEP_COMMA);
boolean found = false;
List<NoticeInfo> noticeInfos = new ArrayList<>();
for (RoleRefUserModel userModel : users) {
if (StringUtils.equals(userModel.getRefIndDept(), indDept)) {
found = true;
......@@ -289,6 +296,19 @@ public class TaskServiceImpl implements TaskService {
userIds.append(Constants.SEP_COMMA);
userNames.append(userModel.getDisName());
userNames.append(Constants.SEP_COMMA);
NoticeInfo noticeInfo = new NoticeInfo();
noticeInfo.setCreateTime(now);
noticeInfo.setCreator(user);
noticeInfo.setDetail("您有新的数据审核任务:" +
task.getRuleName() + "-[" +task.getId()+ "]");
noticeInfo.setTitle("您有新的数据审核任务:" + task.getRuleName() );
noticeInfo.setToUserId(userModel.getId());
noticeInfo.setIsRead(false);
noticeInfo.setState(Constants.DATA_STATE_A);
noticeInfo.setUpdater(user);
noticeInfo.setUpdateTime(now);
noticeInfos.add(noticeInfo);
}
}
if (found) {
......@@ -309,6 +329,7 @@ public class TaskServiceImpl implements TaskService {
auditRecord.setUpdateTime(now);
auditRecord.setCreateTime(now);
taskAuditRecordMapper.insert(auditRecord);
noticeInfoService.createNotices(noticeInfos);
result = Result.genOkResult();
LogManager.logInfo(Constants.LOG_CONTEXT_API, "提交任务id:{},name:{}到审核",
taskId, task.getRuleName());
......@@ -568,6 +589,7 @@ public class TaskServiceImpl implements TaskService {
if (rule != null) {
String roleIdStr = rule.getToRoleIds();
if (StringUtils.isNotBlank(roleIdStr)) {
List<NoticeInfo> noticeInfos = new ArrayList<>();
List<RoleRefUserModel> users = getUserByRoleIdStr(roleIdStr);
if (users.size() > 0) {
List<TaskRuleIndicator> indicators = rule.getIndicators();
......@@ -631,6 +653,18 @@ public class TaskServiceImpl implements TaskService {
userNames.append(Constants.SEP_COMMA);
userIds.append(um.getId());
userIds.append(Constants.SEP_COMMA);
NoticeInfo noticeInfo = new NoticeInfo();
noticeInfo.setCreateTime(now);
noticeInfo.setCreator(user);
noticeInfo.setDetail("您有新的数据填报任务:" +
task.getRuleName() + "-[" +task.getId()+ "]");
noticeInfo.setTitle("您有新的数据填报任务:" + task.getRuleName() );
noticeInfo.setToUserId(um.getId());
noticeInfo.setIsRead(false);
noticeInfo.setState(Constants.DATA_STATE_A);
noticeInfo.setUpdater(user);
noticeInfo.setUpdateTime(now);
noticeInfos.add(noticeInfo);
}
task.setEnterUsers(userIds.toString());
task.setEnterUserNames(userNames.toString());
......@@ -641,6 +675,7 @@ public class TaskServiceImpl implements TaskService {
this.batchCreateTask(allTasks, valueTime, ruleId);
rule.setLastActiveTime(now);
taskRuleService.updateRuleWithInd(rule);
noticeInfoService.createNotices(noticeInfos);
result = Result.genOkResult();
} else if (result != null) {
result = Result.genFailedResult("规则配置没有生成可用的任务信息");
......
......@@ -12,6 +12,7 @@ import org.springframework.stereotype.Service;
import com.keymobile.indicators.model.entity.indicators.IndicatorsData;
import com.keymobile.indicators.model.mapper.indmapper.IndicatorsDataMapper;
import org.springframework.transaction.annotation.Transactional;
@Service
@Slf4j
......@@ -52,13 +53,17 @@ public class BaseIndDataService {
}
/**
* 步批量插入数据
* 步批量插入数据
* @param datas
*/
@Async
@Transactional(rollbackFor = Exception.class)
public void batchInsertData(List<IndicatorsData> datas) {
log.info("开始批量插入指标值数据项");
long time = System.currentTimeMillis();
for (IndicatorsData data : datas) {
indicatorsDataMapper.deleteData(data.getIndId(), data.getDim1(), data.getDim2());
}
indicatorsDataMapper.batchCreateIndData(datas);
time = (System.currentTimeMillis() - time)/1000;
log.info("结束批量插入指标值数据项, 共耗费时间:{}秒", time);
......
......@@ -26,6 +26,14 @@
</if>
</select>
<delete id="deleteData">
delete from
indi_data_def
where ind_id = #{indId}
and dim1 = #{dim1}
and dim2 = #{dim2}
</delete>
<select id="getIndData" parameterType="map" resultType="com.keymobile.indicators.model.entity.indicators.IndicatorsData" >
select *
from indi_data_def
......
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