Commit 78256529 authored by KeYong's avatar KeYong

Merge remote-tracking branch 'origin/develop_dl_plan6' into develop_dl_plan6

parents 220b3035 6c2a12ab
......@@ -9,4 +9,21 @@
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>amos-boot-module-ccs-api</artifactId>
<dependencies>
<dependency>
<groupId>org.typroject</groupId>
<artifactId>tyboot-component-emq</artifactId>
<version>1.1.20</version>
<exclusions>
<exclusion>
<groupId>org.typroject</groupId>
<artifactId>*</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</project>
\ No newline at end of file
......@@ -129,7 +129,7 @@ public interface DutyPersonShiftMapper extends BaseMapper<DutyPersonShift> {
* @param instanceIds
* @return
*/
List<Map<String, Object>> getPositionStaffDutyForSpecifyDate(String dutyDate,String groupCode,String[] instanceIds,String duty);
List<Map<String, Object>> getPositionStaffDutyForSpecifyDate(String dutyDate,String groupCode,String[] instanceIds,String duty, String fieldCode);
/**
......
......@@ -126,5 +126,5 @@ public interface IDutyCommonService {
*/
public void insertPersonShift(Long instanceId, List<DutyPersonShiftDto> dutyShiftList);
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType);
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType, String fieldCode);
}
......@@ -343,12 +343,24 @@ FROM
cd.FIELD_VALUE
END
) AS 'userName',
MAX(
CASE
WHEN cd.FIELD_CODE = 'postTypeName' THEN
<choose>
<when test="fieldCode != null and fieldCode != ''">
MAX(
CASE
WHEN cd.FIELD_CODE = #{fieldCode} THEN
cd.FIELD_VALUE
END
) AS 'postTypeName',
END
) AS 'postTypeName',
</when>
<otherwise>
MAX(
CASE
WHEN cd.FIELD_CODE = 'postTypeName' THEN
cd.FIELD_VALUE
END
) AS 'postTypeName',
</otherwise>
</choose>
cd.instance_id
FROM
cb_dynamic_form_instance cd
......
......@@ -201,7 +201,7 @@
LEFT JOIN cb_dynamic_form_column f ON f.sequence_nbr = v.form_column_id
where u.parent_id = #{parentId}
AND u.biz_org_type = #{bizOrgType}
AND U.is_delete = 0
AND u.is_delete = 0
GROUP BY
u.sequence_nbr ,
u.biz_org_name ,
......
......@@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.yeejoin.amos.boot.module.ccs.api.dto.FireStationInfoDto;
import com.yeejoin.amos.boot.module.ccs.api.entity.FireEquipmentSignalLog;
......@@ -17,12 +18,15 @@ import com.yeejoin.amos.boot.module.ccs.api.vo.RawDataVO;
import com.yeejoin.amos.boot.module.ccs.api.vo.ReceiveDataVO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
......@@ -43,6 +47,10 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
@Autowired
private FireEquipmentSignalLogMapper fireEquipmentSignalLogMapper;
@Autowired
protected EmqKeeper emqKeeper;
public static final String EMERGENCY_ALARM_DATA_REFRESH = "emergency/alarm/data/refresh";
//TODO 逻辑待补充
@Override
......@@ -92,6 +100,15 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
fireEquipmentSignalLog.setLng(oneByCode.getLng());
fireEquipmentSignalLog.setLat(oneByCode.getLat());
fireEquipmentSignalLogMapper.insert(fireEquipmentSignalLog);
// 发送mqtt消息--刷新应急指挥屏数据
HashMap<String, String> refresh = new HashMap<>();
refresh.put("uuId", String.valueOf(System.currentTimeMillis()));
try {
emqKeeper.getMqttClient().publish(EMERGENCY_ALARM_DATA_REFRESH, JSON.toJSONString(refresh).getBytes(), 0, false);
} catch (MqttException e) {
e.printStackTrace();
}
}
} else if (ObjectUtil.isNotEmpty(receiveData) && StrUtil.isNotEmpty(receiveData.getActive()) &&
"update".equals(receiveData.getActive()) && ObjectUtil.isNotEmpty(receiveData.getRawData()) && StrUtil.isNotEmpty(receiveData.getRawData().getEquipmentSpecificCode())) {
......@@ -102,6 +119,15 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
updateWrapper.lambda().eq(FireEquipmentSignalLog::getFireEquipmentMrid, rawData.getEquipmentSpecificCode())
.eq(FireEquipmentSignalLog::getFireEquipmentIndexKey, rawData.getEquipmentIndexKey());
fireEquipmentSignalLogServiceImpl.update(fireEquipmentSignalLog, updateWrapper);
// 发送mqtt消息--刷新应急指挥屏数据
HashMap<String, String> refresh = new HashMap<>();
refresh.put("uuId", String.valueOf(System.currentTimeMillis()));
try {
emqKeeper.getMqttClient().publish(EMERGENCY_ALARM_DATA_REFRESH, JSON.toJSONString(refresh).getBytes(), 0, false);
} catch (MqttException e) {
e.printStackTrace();
}
}
log.info(String.format("收到mqtt(警情)消息并处理完成:%s", message));
}
......
......@@ -176,8 +176,9 @@ public class DutyCarController extends BaseController {
@GetMapping("/person/{dutyDay}/list")
public ResponseModel listDutyPerson(@ApiParam(value = "值班日期",required = true) @PathVariable String dutyDay,
@ApiParam(value = "班次id") @RequestParam(required = false) Long shiftId,
@ApiParam(value = "岗位") @RequestParam(required = false) String postType){
return ResponseHelper.buildResponse(iDutyCarService.getSchedulingDutyForSpecifyDate(dutyDay,shiftId,postType));
@ApiParam(value = "岗位") @RequestParam(required = false) String postType,
@ApiParam(value = "属性编码") @RequestParam(required = false) String fieldCode){
return ResponseHelper.buildResponse(iDutyCarService.getSchedulingDutyForSpecifyDate(dutyDay,shiftId,postType, fieldCode));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation("查询指定車輛值班人信息列表")
......
......@@ -169,8 +169,9 @@ public class DutyFireFightingController extends BaseController{
@GetMapping("/person/{dutyDay}/list")
public ResponseModel listDutyPerson(@ApiParam(value = "值班日期",required = true) @PathVariable String dutyDay,
@ApiParam(value = "班次id") @RequestParam(required = false) Long shiftId,
@ApiParam(value = "岗位") @RequestParam(required = false) String postType){
return ResponseHelper.buildResponse(iDutyFireFightingService.getSchedulingDutyForSpecifyDate(dutyDay,shiftId,postType));
@ApiParam(value = "岗位") @RequestParam(required = false) String postType,
@ApiParam(value = "属性编码") @RequestParam(required = false) String fieldCode){
return ResponseHelper.buildResponse(iDutyFireFightingService.getSchedulingDutyForSpecifyDate(dutyDay,shiftId,postType, fieldCode));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
......
......@@ -161,7 +161,8 @@ public class DutyFirstAidController extends BaseController{
@GetMapping("/person/{dutyDay}/list")
public ResponseModel listDutyPerson(@ApiParam(value = "值班日期",required = true) @PathVariable String dutyDay,
@ApiParam(value = "班次id") @RequestParam(required = false) Long shiftId,
@ApiParam(value = "岗位") @RequestParam(required = false) String postType){
return ResponseHelper.buildResponse(iDutyFirstAidService.getSchedulingDutyForSpecifyDate(dutyDay,shiftId,postType));
@ApiParam(value = "岗位") @RequestParam(required = false) String postType,
@ApiParam(value = "属性编码") @RequestParam(required = false) String fieldCode){
return ResponseHelper.buildResponse(iDutyFirstAidService.getSchedulingDutyForSpecifyDate(dutyDay,shiftId,postType, fieldCode));
}
}
package com.yeejoin.amos.boot.module.common.biz.controller;
import java.text.ParseException;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.dto.DutyPersonDto;
import com.yeejoin.amos.boot.module.common.api.service.IDutyPersonService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
......@@ -23,15 +16,10 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.common.api.dto.DutyPersonDto;
import com.yeejoin.amos.boot.module.common.api.service.IDutyPersonService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import javax.servlet.http.HttpServletResponse;
import java.text.ParseException;
import java.util.List;
import java.util.Map;
/**
......@@ -187,8 +175,9 @@ public class DutyPersonController extends BaseController {
@GetMapping("/new-person/{dutyDay}/list")
public ResponseModel newListDutyPerson(@ApiParam(value = "值班日期", required = true) @PathVariable String dutyDay,
@ApiParam(value = "班次id") @RequestParam(required = false) Long shiftId,
@ApiParam(value = "岗位") @RequestParam(required = false) String postType) {
return ResponseHelper.buildResponse(iDutyPersonService.getSchedulingDutyForSpecifyDate(dutyDay, shiftId, postType));
@ApiParam(value = "岗位") @RequestParam(required = false) String postType,
@ApiParam(value = "属性编码") @RequestParam(required = false) String fieldCode) {
return ResponseHelper.buildResponse(iDutyPersonService.getSchedulingDutyForSpecifyDate(dutyDay, shiftId, postType, fieldCode));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation("查询当前值班人信息列表")
......
package com.yeejoin.amos.boot.module.common.biz.enums;
public enum DynamicGroupCode {
JCS_PERSON("机场人员", "246");
private String name;
private String code;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
DynamicGroupCode(String name, String code) {
this.name = name;
this.code = code;
}
}
......@@ -142,7 +142,7 @@ public class DutyCarServiceImpl extends DutyCommonServiceImpl implements IDutyCa
return result;
}
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType) {
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType, String fieldCode) {
List<Map<String, Object>> equipmentList = dutyPersonShiftMapper.getEquipmentForSpecifyDate(dutyDay,
this.getGroupCode(), "carId", "carName", "teamName","result.carId");
if(equipmentList==null || equipmentList.size()<1 || equipmentList.get(0)==null) {
......@@ -181,7 +181,7 @@ public class DutyCarServiceImpl extends DutyCommonServiceImpl implements IDutyCa
// }
// 获取当前装备ID下的排版数据
List<Map<String, Object>> specifyDateList = dutyPersonShiftMapper.getPositionStaffDutyForSpecifyDate(dutyDay,
this.getGroupCode(), instanceIds,null);
this.getGroupCode(), instanceIds,null, fieldCode);
/*if(specifyDateList==null || specifyDateList.size() < 1 || specifyDateList.get(0)==null) {
continue;
}*/
......@@ -246,7 +246,7 @@ public class DutyCarServiceImpl extends DutyCommonServiceImpl implements IDutyCa
if (StringUtils.isNotBlank(instanceId)) {
String[] instanceIds = instanceId.split(",");
specifyDateList = dutyPersonShiftMapper.getPositionStaffDutyForSpecifyDate(dutyDay,
this.getGroupCode(), instanceIds,null);
this.getGroupCode(), instanceIds,null, null);
}
return specifyDateList;
}
......
......@@ -19,6 +19,8 @@ import java.util.stream.Stream;
import javax.servlet.http.HttpServletRequest;
import com.yeejoin.amos.boot.module.common.biz.enums.DynamicGroupCode;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -449,6 +451,7 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
Long instanceId = null;
List<DynamicFormColumn> columns = dynamicFormColumnService.list(new LambdaQueryWrapper<DynamicFormColumn>()
.eq(DynamicFormColumn::getGroupCode, this.getGroupCode()));
Map<String, Object> dataMap = buildDataMap(d, userId);
// 1.组装动态表单数据
if (!instances.isEmpty()) {
// 0.定位instanceId,准备进行更新操作
......@@ -461,7 +464,7 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
Map<Object, DynamicFormInstance> instanceMap = Bean.listToMap(instancesInDb, "fieldCode",
DynamicFormInstance.class);
// 3.待更新数据组装,待批量入库
this.updateFormValue(formInstanceList, d, instanceId, columns, instanceMap);
this.updateFormValue(formInstanceList, dataMap, instanceId, columns, instanceMap);
} else {
// 0.新数据,生成id
instanceId = sequence.nextId();
......@@ -469,14 +472,14 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
// 1.组装数据
List<DynamicFormInstance> newInstances = columns.stream().map(column -> {
DynamicFormInstance instance = new DynamicFormInstance();
buildFormInstanceData(finalInstanceId1, d, column, instance);
buildFormInstanceData(finalInstanceId1, dataMap, column, instance);
return instance;
}).collect(Collectors.toList());
// 2.待更新数据组装,待批量入库
formInstanceList.addAll(newInstances);
}
// 2.组装值班数据
List<DutyPersonShiftDto> shiftDtos = (List<DutyPersonShiftDto>) d.get("dutyShift");
List<DutyPersonShiftDto> shiftDtos = (List<DutyPersonShiftDto>) dataMap.get("dutyShift");
Long finalInstanceId = instanceId;
// 按照业务唯一索引查询主键
List<DutyPersonShift> dutyPersonShiftsDb = dutyPersonShiftService
......@@ -520,6 +523,20 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
}
}
private Map<String, Object> buildDataMap(Map<String, Object> d, String userId) {
// 表单存在人员类型,获取用户ID,查询人员类型赋值
if (!ObjectUtils.isEmpty(userId)) {
List<DynamicFormInstance> instances = dynamicFormInstanceService
.list(new LambdaQueryWrapper<DynamicFormInstance>().eq(DynamicFormInstance::getFieldCode, "peopleType")
.eq(DynamicFormInstance::getInstanceId, userId)
.eq(DynamicFormInstance::getGroupCode, DynamicGroupCode.JCS_PERSON.getCode()));
if (!CollectionUtils.isEmpty(instances)) {
d.put("personType", instances.get(0).getFieldValue());
}
}
return d;
}
private void buildFormInstanceData(Long instanceId, Map<String, Object> map, DynamicFormColumn column,
DynamicFormInstance formInstance) {
fillFormInstanceData(instanceId, map, column, formInstance, sequence.nextId());
......@@ -724,7 +741,7 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
}
@Override
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType) {
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType, String fieldCode) {
// TODO Auto-generated method stub
return null;
}
......
......@@ -55,7 +55,7 @@ public class DutyFireFightingServiceImpl extends DutyCommonServiceImpl implement
insertPersonShift(instanceId, dto.getDutyShift());
return dto;
}
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType) {
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType, String fieldCode) {
List<Map<String, Object>> equipmentList = dutyPersonShiftMapper.getEquipmentForSpecifyDate(dutyDay,
this.getGroupCode(), "fireFightingId", "fireFighting", "teamName","result.fireFightingId");
if(equipmentList==null || equipmentList.size()<1 || equipmentList.get(0)==null) {
......@@ -90,7 +90,7 @@ public class DutyFireFightingServiceImpl extends DutyCommonServiceImpl implement
// }
// 获取当前装备ID下的排版数据
List<Map<String, Object>> specifyDateList = dutyPersonShiftMapper.getPositionStaffDutyForSpecifyDate(dutyDay,
this.getGroupCode(), instanceIds,null);
this.getGroupCode(), instanceIds,null, fieldCode);
if(specifyDateList==null || specifyDateList.size() < 1 || specifyDateList.get(0)==null) {
continue;
}
......
......@@ -7,7 +7,6 @@ import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import org.apache.velocity.runtime.directive.Break;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.utils.Bean;
......@@ -58,7 +57,7 @@ public class DutyFirstAidServiceImpl extends DutyCommonServiceImpl implements ID
}
@Override
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType) {
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType, String fieldCode) {
List<Map<String, Object>> equipmentList = dutyPersonShiftMapper.getEquipmentForSpecifyDate(dutyDay,
this.getGroupCode(), "firstAidId", "firstAid", "teamName", "result.firstAidId");
if (equipmentList == null || equipmentList.size() < 1 || equipmentList.get(0) == null) {
......@@ -94,7 +93,7 @@ public class DutyFirstAidServiceImpl extends DutyCommonServiceImpl implements ID
// 获取当前装备ID下的排版数据
List<Map<String, Object>> specifyDateList = dutyPersonShiftMapper
.getPositionStaffDutyForSpecifyDate(dutyDay, this.getGroupCode(), instanceIds,
null);
null, fieldCode);
if (specifyDateList == null || specifyDateList.size() < 1 || specifyDateList.get(0) == null) {
continue;
}
......
......@@ -304,7 +304,7 @@ public Object BuildScheduleDetails(String dutyDay, Long shiftId, String postType
}
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType) {
public Object getSchedulingDutyForSpecifyDate(String dutyDay, Long shiftId, String postType, String fieldCode) {
List<Map<String, Object>> equipmentList = dutyPersonShiftMapper.getNewEquipmentForSpecifyDate(dutyDay,
this.getGroupCode(), "deptId", "deptName", "result.deptId");
if (equipmentList == null || equipmentList.size() < 1 || equipmentList.get(0) == null) {
......@@ -330,7 +330,7 @@ public Object BuildScheduleDetails(String dutyDay, Long shiftId, String postType
// 获取当前装备ID下的排版数据
List<Map<String, Object>> specifyDateList = dutyPersonShiftMapper
.getPositionStaffDutyForSpecifyDate(dutyDay, this.getGroupCode(), instanceIds,
null);
null, fieldCode);
if (specifyDateList == null || specifyDateList.size() < 1 || specifyDateList.get(0) == null) {
continue;
}
......
......@@ -306,7 +306,7 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto, Powe
}
// 获取当前装备ID下的排版数据
List<Map<String, Object>> specifyDateList = dutyPersonShiftMapper.getPositionStaffDutyForSpecifyDate(dutyDay,
"dutyCar", instanceIds, dutyDetail.get("name").toString());
"dutyCar", instanceIds, dutyDetail.get("name").toString(), null);
if (specifyDateList == null || specifyDateList.size() < 1 || specifyDateList.get(0) == null) {
continue;
}
......
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yeejoin.amos.boot.module.tdc.api.dto.CheckModelDto;
import com.yeejoin.amos.boot.module.tdc.api.entity.CheckModel;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import org.springframework.stereotype.Service;
import java.util.List;
......@@ -34,13 +35,13 @@ public interface CheckModelService extends IService<CheckModel> {
* 校验机构下全部模型
* @param amosOrgCode 机构code
*/
void checkAllMode(String amosOrgCode);
void checkAllMode(String amosOrgCode, AgencyUserModel userInfo);
/**
* 校验单个模型
* @param modelId 模型id
*/
void checkSingleMode(String modelId);
void checkSingleMode(String modelId, AgencyUserModel userInfo);
/**
* 根据机构code和模型名称查询模型对象
......
......@@ -48,4 +48,11 @@ public interface CheckResultService extends IService<CheckResult> {
*/
Integer selectItemCount(String batchNo);
/**
* 查询不合格项
* @param batchNo 批次号
* @return 属性个数
*/
Integer selectItemNo(String batchNo,Long modelId);
}
......@@ -6,7 +6,7 @@
select `*`,'●' as circle from tdc_model
<where>
<if test = "amosOrgCode != null and amosOrgCode != ''">
and amosOrgCode=#{amosOrgCode}
and amos_org_code=#{amosOrgCode}
</if>
</where>
</select>
......
......@@ -73,6 +73,7 @@ public class CheckModelAction {
String batchNo = String.valueOf(propertyValues.get("batch_no"));
Integer checkType = Integer.valueOf(String.valueOf(propertyValues.get("checkType")));
String orgCode = String.valueOf(propertyValues.get("org_code"));
String checkPeopleName = String.valueOf(propertyValues.get("checkPeopleName"));
String itemName = idxProjectModel.getItemName();
// 获取模型
......@@ -105,12 +106,12 @@ public class CheckModelAction {
if (ObjectUtils.isNotEmpty(checkType)) {
if (checkType == 1) {
// 2.2 单独模型校验,根据批次号查询已经入库的属性
sendWebMessage(batchNo, checkModel.getCheckItemAmount());
sendWebMessage(batchNo, checkModel.getCheckItemAmount(), orgCode, checkPeopleName, checkType, itemName);
} else if (checkType == 0) {
// 2.1 全站校验
List<CheckModel> checkModels = checkModelService.selectByOrgCode(orgCode);
int sum = checkModels.stream().mapToInt(CheckModel::getCheckItemAmount).sum();
sendWebMessage(batchNo, sum);
sendWebMessage(batchNo, sum, orgCode, checkPeopleName, checkType, itemName);
}
}
// else {
......@@ -124,7 +125,7 @@ public class CheckModelAction {
// }
}
private void sendWebMessage(String batchNo, Integer itemSize) {
private void sendWebMessage(String batchNo, Integer itemSize, String orgCode, String checkPeopleName, Integer checkType, String itemName) {
Integer itemCount = checkResultService.selectItemCount(batchNo);
if (itemCount.equals(itemSize)) {
// 所有属性已全部入库,给前端发送消息
......@@ -139,8 +140,29 @@ public class CheckModelAction {
e.printStackTrace();
}
// 全站校验生成报告
if (checkType == 0) {
// 全站校验生成报告
checkResultService.saveSql(orgCode, checkPeopleName);
List<CheckModel> checkModels = checkModelService.selectByOrgCode(orgCode);
checkModels.forEach(checkModel -> {
saveCheckModel(checkModel, batchNo);
});
} else {
// 更改校验结果
CheckModel checkModel = checkModelService.selectCheckModelByNameCode(itemName, orgCode);
saveCheckModel(checkModel, batchNo);
}
}
}
private void saveCheckModel (CheckModel checkModel, String batchNo) {
Integer integer = checkResultService.selectItemNo(batchNo, checkModel.getSequenceNbr());
if (0 == integer) {
checkModel.setCheckStatus(1);
} else {
checkModel.setCheckStatus(2);
}
checkModel.setCheckDate(new Date());
checkModelService.updateById(checkModel);
}
}
package com.yeejoin.amos.boot.module.tdc.biz.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.tdc.api.dto.CheckModelDto;
import com.yeejoin.amos.boot.module.tdc.api.entity.CheckModel;
import com.yeejoin.amos.boot.module.tdc.api.service.CheckModelService;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -21,7 +23,7 @@ import java.util.List;
@RestController
@Api(tags = "校验模型api")
@RequestMapping(value = "/model")
public class CheckModelController {
public class CheckModelController extends BaseController {
@Autowired
CheckModelService checkModelService;
......@@ -55,7 +57,8 @@ public class CheckModelController {
@GetMapping(value = "/CheckAllModel/{amosOrgCode}")
@ApiOperation(httpMethod = "GET",value = "点击全站校验", notes = "根据机构code校验模型")
public void CheckAllModel(@PathVariable(value = "amosOrgCode") String amosOrgCode) {
checkModelService.checkAllMode(amosOrgCode);
AgencyUserModel userInfo = getUserInfo();
checkModelService.checkAllMode(amosOrgCode, userInfo);
}
/**
......@@ -65,6 +68,7 @@ public class CheckModelController {
@GetMapping(value = "/checkSingleMode/{modelId}")
@ApiOperation(httpMethod = "GET",value = "点击单独模型校验", notes = "根据modelId校验模型")
public void checkSingleMode(@PathVariable(value = "modelId") String modelId) {
checkModelService.checkSingleMode(modelId);
AgencyUserModel userInfo = getUserInfo();
checkModelService.checkSingleMode(modelId, userInfo);
}
}
......@@ -20,6 +20,7 @@ import com.yeejoin.amos.boot.module.tdc.api.vo.SubjectTreeVo;
import com.yeejoin.amos.boot.module.tdc.api.vo.TableColumnsVo;
import com.yeejoin.amos.boot.module.tdc.biz.action.model.IdxProjectModel;
import com.yeejoin.amos.component.rule.RuleTrigger;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -70,35 +71,39 @@ public class CheckModelImpl extends ServiceImpl<CheckModelMapper, CheckModel> im
public CheckModel selectOneByDate(String amosOrgCode) {
LambdaQueryWrapper<CheckModel> wrapper = new LambdaQueryWrapper<>();
wrapper
.eq(CheckModel::getAmosOrgCode, amosOrgCode)
.isNotNull(CheckModel::getCheckDate)
.orderByDesc(CheckModel::getCheckDate)
.last("limit 1");
if(!ValidationUtil.isEmpty(amosOrgCode)){
wrapper.eq(CheckModel::getAmosOrgCode, amosOrgCode);
}
return baseMapper.selectOne(wrapper);
}
@Override
public void checkAllMode(String amosOrgCode) {
public void checkAllMode(String amosOrgCode, AgencyUserModel userInfo) {
String userName = userInfo.getUserName();
LambdaQueryWrapper<CheckModel> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(CheckModel::getAmosOrgCode, amosOrgCode);
List<CheckModel> checkModels = this.baseMapper.selectList(wrapper);
String batchNo = UUID.randomUUID().toString();
if (!CollectionUtils.isEmpty(checkModels)) {
checkModels.forEach(checkModel -> {
checkModelRule(checkModel, 0, batchNo, amosOrgCode);
checkModelRule(checkModel, 0, batchNo, amosOrgCode, userName);
});
}
}
@Override
public void checkSingleMode(String modelId) {
public void checkSingleMode(String modelId, AgencyUserModel userInfo) {
String userName = userInfo.getUserName();
LambdaQueryWrapper<CheckModel> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(CheckModel::getSequenceNbr, modelId);
CheckModel checkModel = this.baseMapper.selectOne(wrapper);
if (!ObjectUtils.isEmpty(checkModel)) {
// 调用规则校验模型
String batchNo = UUID.randomUUID().toString();
checkModelRule(checkModel, 1, batchNo, checkModel.getAmosOrgCode());
checkModelRule(checkModel, 1, batchNo, checkModel.getAmosOrgCode(), userName);
}
}
......@@ -110,7 +115,7 @@ public class CheckModelImpl extends ServiceImpl<CheckModelMapper, CheckModel> im
return this.baseMapper.selectOne(wrapper);
}
private void checkModelRule(CheckModel checkModel, int checkType, String batchNo, String amosOrgCode) {
private void checkModelRule(CheckModel checkModel, int checkType, String batchNo, String amosOrgCode, String userName) {
IdxProjectModel idxProjectModel = new IdxProjectModel();
// 查询表最新一条数据
String idxTableName = checkModel.getIdxTableName();
......@@ -121,6 +126,7 @@ public class CheckModelImpl extends ServiceImpl<CheckModelMapper, CheckModel> im
}
map.put("batch_no", batchNo);
map.put("checkType", checkType);
map.put("checkPeopleName", userName);
// 查询表所有字段
ResponseModel<JSONObject> model = idxFeignService.queryByTableId(checkModel.getTableId());
......
......@@ -28,7 +28,7 @@ public class CheckReportImpl extends ServiceImpl<CheckReportMapper, CheckReport>
return this.page(page);
}else{
LambdaQueryWrapper<CheckReport> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(CheckReport::getAmosOrgCode, amosOrgCode);
wrapper.likeRight(CheckReport::getAmosOrgCode, amosOrgCode);
return this.page(page,wrapper);
}
......
......@@ -165,6 +165,15 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult>
return this.baseMapper.selectCount(wrapper);
}
@Override
public Integer selectItemNo(String batchNo, Long modelId) {
LambdaQueryWrapper<CheckResult> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(CheckResult::getBatchNo, batchNo);
wrapper.eq(CheckResult::getModelId, modelId);
wrapper.eq(CheckResult::getCheckItemResult, 1);
return this.baseMapper.selectCount(wrapper);
}
/**
* 获取报告数据
......
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