海康下发修改
This commit is contained in:
parent
576f600850
commit
9677938533
@ -496,7 +496,7 @@ public class AsyncHikvision {
|
||||
* @param allDevList
|
||||
* @param workerList 下发的人员
|
||||
* @param workerAndDevSnList 构建的下发的人员和设备的关系
|
||||
* @param userId
|
||||
* @param userId 批量下发的通知的人
|
||||
* @param checkEditWorkers
|
||||
* @param sendNotice
|
||||
*/
|
||||
@ -507,11 +507,17 @@ public class AsyncHikvision {
|
||||
ProjectInfoExtVo project = projectService.getProjectInfoBySn(projectSn);
|
||||
//判断人员的图片存在isc
|
||||
Map<String, WorkerInfo> workerIdMap = workerList.stream().collect(Collectors.toMap(workerInfo -> workerInfo.getId() + "", Function.identity()));
|
||||
ArrayList<Future> futures = new ArrayList<>();
|
||||
if (checkEditWorkers) {
|
||||
ArrayList<WorkerInfo> needEditWorkers = getNeedEditWorkers(workerList, project, workerIdMap);
|
||||
if (CollUtil.isNotEmpty(needEditWorkers)) {
|
||||
for (WorkerInfo workerInfo : needEditWorkers) {
|
||||
workerInfoService.editWorkerForSendBatchAuth(workerInfo);
|
||||
Future future = workerInfoService.editWorkerAsyncForSendBatchAuth(workerInfo);
|
||||
futures.add(future);
|
||||
}
|
||||
}
|
||||
for (Future future : futures) {
|
||||
while (!future.isDone()) {
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -529,9 +535,9 @@ public class AsyncHikvision {
|
||||
o1.putAll(o2);
|
||||
return o1;
|
||||
}));
|
||||
ArrayList<Future> futures = new ArrayList<>();
|
||||
futures = new ArrayList<>();
|
||||
for (Map.Entry<String, List<JSONObject>> entry : devSnToJoMap.entrySet()) {
|
||||
Future future = asyncHikvision.sendBatchWorkersForOneDevAsync(workerIdMap, devSnMap, project, devSnToIscDevSnMap, iscDevSnToMyMap, entry, projectSn, sendNotice);
|
||||
Future future = asyncHikvision.sendBatchWorkersForOneDevAsync(workerIdMap, devSnMap, project, devSnToIscDevSnMap, entry, projectSn, sendNotice, workerList);
|
||||
futures.add(future);
|
||||
}
|
||||
for (Future future : futures) {
|
||||
@ -559,6 +565,31 @@ public class AsyncHikvision {
|
||||
log.error("批量下发权限失败:", e);
|
||||
hikvisionCall.updateAllFailStatusIfNullForAuth(projectSn, workerList, 1, 1);
|
||||
hikvisionCall.updateAllFailStatusIfNullForAuth(projectSn, workerList, 1, 3);
|
||||
sendExcNotice(e, workerList, null);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 发送异常通知
|
||||
*
|
||||
* @param e
|
||||
* @param workerList
|
||||
* @param dev
|
||||
*/
|
||||
private void sendExcNotice(Exception e, List<WorkerInfo> workerList, UfaceDev dev) {
|
||||
String exc;
|
||||
if (HttpUtils.isTimeOut(e)) {
|
||||
exc = ",网络异常";
|
||||
} else {
|
||||
exc = ",下发异常";
|
||||
}
|
||||
List<WorkerInfo> failWorkers = workerList.stream().filter(workerInfo -> !Objects.equals(workerInfo.getSendSuccessStatus(), 1)).collect(Collectors.toList());
|
||||
for (WorkerInfo workerInfo : failWorkers) {
|
||||
if (ThreadLocalUtil.getByKey(Cts.TL_AUTH_USER, UserInfo.class) != null) {
|
||||
noticeService.addUserNotice(ThreadLocalUtil.getByKey(Cts.TL_AUTH_USER, UserInfo.class).getUserId(),
|
||||
StrUtil.format("{}{}设备下发权限失败{}", workerInfo.getWorkerName(), dev != null ? dev.getDevName() : "有些", exc),
|
||||
"人员下发设备提醒", "1");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -597,12 +628,14 @@ public class AsyncHikvision {
|
||||
* @param devSnMap
|
||||
* @param project
|
||||
* @param devSnToIscDevSnMap
|
||||
* @param iscDevSnToMyMap
|
||||
* @param devSnToJoEntry
|
||||
* @param sendNotice
|
||||
* @param workerList
|
||||
*/
|
||||
@Async("workerAuthHkExecutor")
|
||||
public Future sendBatchWorkersForOneDevAsync(Map<String, WorkerInfo> workerIdMap, Map<String, UfaceDev> devSnMap, ProjectInfoExtVo project, Map<String, JSONObject> devSnToIscDevSnMap, Map<String, Map<String, JSONObject>> iscDevSnToMyMap, Map.Entry<String, List<JSONObject>> devSnToJoEntry, String projectSn, boolean sendNotice) {
|
||||
public Future sendBatchWorkersForOneDevAsync(Map<String, WorkerInfo> workerIdMap, Map<String, UfaceDev> devSnMap, ProjectInfoExtVo project, Map<String, JSONObject> devSnToIscDevSnMap, Map.Entry<String, List<JSONObject>> devSnToJoEntry, String projectSn, boolean sendNotice, List<WorkerInfo> workerList) {
|
||||
String devSn = devSnToJoEntry.getKey();
|
||||
UfaceDev dev = devSnMap.get(devSn);
|
||||
try {
|
||||
//【添加权限配置】(人员列表,设备列表),这个接口只要没报错,你就直接去下一步就行了。
|
||||
List<String> addAuthWorkerIds = devSnToJoEntry.getValue().stream().filter(jo -> jo.getBoolean(Cts.IS_ADD_AUTH)).map(jsonObject -> jsonObject.getString("workerId")).collect(Collectors.toList());
|
||||
@ -619,7 +652,6 @@ public class AsyncHikvision {
|
||||
JSONObject aaRJo = HikvisionUtil.deleteAuth(project, getAddOrDeleteAuthParam(devSnToJoEntry, deleteAuthWorkerIds, devSnToIscDevSnMap));
|
||||
HikvisionUtil.getJSONObjectData(aaRJo);
|
||||
}
|
||||
String devSn = devSnToJoEntry.getKey();
|
||||
//然后调用【根据出入权限配置快捷下载】(设备列表)(【添加权限配置】+【快捷下发】这是一个流程,你添加了几个权限,下发成功之后,就清零了)
|
||||
JSONObject daJo = HikvisionUtil.downloadAuth(project, getQueryDownloadProgressParam(devSnToJoEntry, devSnToIscDevSnMap));
|
||||
JSONObject daRtJo = HikvisionUtil.getJSONObjectData(daJo);
|
||||
@ -639,7 +671,7 @@ public class AsyncHikvision {
|
||||
Set<String> rtWorkerIdSet;
|
||||
if (CollUtil.isNotEmpty(qaiList)) {
|
||||
for (int i = 0; i < qaiList.size(); i++) {
|
||||
handlerBatchWorkersResult(workerIdMap, devSnMap, qaiList, i, devSn, projectSn, addAuthWorkerIds,sendNotice);
|
||||
handlerBatchWorkersResult(workerIdMap, qaiList, i, devSn, projectSn, addAuthWorkerIds, sendNotice, dev);
|
||||
}
|
||||
rtWorkerIdSet = qaiList.stream().map(o -> ((JSONObject) o).getString("personId")).collect(Collectors.toSet());
|
||||
} else {
|
||||
@ -671,6 +703,7 @@ public class AsyncHikvision {
|
||||
log.error("批量下发权限失败:", e);
|
||||
hikvisionCall.updateAllFailStatusIfNullForAuth(projectSn, new ArrayList<>(workerIdMap.values()), 1, 1);
|
||||
hikvisionCall.updateAllFailStatusIfNullForAuth(projectSn, new ArrayList<>(workerIdMap.values()), 1, 3);
|
||||
sendExcNotice(e, workerList, dev);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@ -679,15 +712,15 @@ public class AsyncHikvision {
|
||||
* 处理结果:一个设备批量下发人员
|
||||
*
|
||||
* @param workerIdMap
|
||||
* @param devSnMap
|
||||
* @param qaiList
|
||||
* @param i
|
||||
* @param devSn
|
||||
* @param projectSn
|
||||
* @param addAuthWorkerIds
|
||||
* @param sendNotice
|
||||
* @param dev
|
||||
*/
|
||||
public void handlerBatchWorkersResult(Map<String, WorkerInfo> workerIdMap, Map<String, UfaceDev> devSnMap, JSONArray qaiList, int i, String devSn, String projectSn, List<String> addAuthWorkerIds, boolean sendNotice) {
|
||||
public void handlerBatchWorkersResult(Map<String, WorkerInfo> workerIdMap, JSONArray qaiList, int i, String devSn, String projectSn, List<String> addAuthWorkerIds, boolean sendNotice, UfaceDev dev) {
|
||||
JSONObject jo = qaiList.getJSONObject(i);
|
||||
String personId = jo.getString("personId");
|
||||
//人脸状态
|
||||
@ -700,7 +733,6 @@ public class AsyncHikvision {
|
||||
//2. 删除以后,删除的权限状态是 4未配置
|
||||
//3. 这个人的权限都没了以后,你就查不到这个权限条目了
|
||||
Integer faceStatus = jo.getInteger("faceStatus");
|
||||
UfaceDev dev = devSnMap.get(devSn);
|
||||
if (sendNotice) {
|
||||
if (addAuthWorkerIds.contains(personId)) {
|
||||
//添加权限
|
||||
|
||||
@ -72,6 +72,10 @@ public class AsyncWorker {
|
||||
}
|
||||
}
|
||||
|
||||
public void sendBatchWokerDev(Map<String, Object> map, ProjectUfaceConfig projectUfaceConfig, List<UfaceDev> allDevList) {
|
||||
this.sendBatchWokerDevAsync(map, projectUfaceConfig, allDevList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量数据发送任务
|
||||
*
|
||||
|
||||
@ -80,7 +80,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.transaction.annotation.Propagation;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
@ -1177,18 +1176,17 @@ public class HikvisionCall {
|
||||
.isNull(XzHikvisionSync::getIsSuccess)
|
||||
.eq(XzHikvisionSync::getType, 3)
|
||||
.eq(XzHikvisionSync::getOperate, operate)
|
||||
.eq(XzHikvisionSync::getProjectSn, projectSn)
|
||||
.eq(XzHikvisionSync::getWhoId, whoId)
|
||||
.eq(XzHikvisionSync::getBigType, bigType)
|
||||
);
|
||||
this.updateTotalStatus(projectSn, whoId, bigType);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRES_NEW)
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void updateAllFailStatusIfNull(String projectSn, Long whoId, Integer bigType) {
|
||||
xzHikvisionSyncMapper.update(null, new LambdaUpdateWrapper<XzHikvisionSync>()
|
||||
.set(XzHikvisionSync::getIsSuccess, 0)
|
||||
.isNull(XzHikvisionSync::getIsSuccess)
|
||||
.eq(XzHikvisionSync::getProjectSn, projectSn)
|
||||
.eq(XzHikvisionSync::getWhoId, whoId)
|
||||
.eq(XzHikvisionSync::getBigType, bigType)
|
||||
);
|
||||
|
||||
@ -33,7 +33,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Propagation;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.*;
|
||||
@ -490,7 +489,7 @@ public class ProjectUfaceConfigServiceImpl extends ServiceImpl<ProjectUfaceConfi
|
||||
* @param devSns
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRES_NEW)
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void addHkSyncRecordsAndUpdateWorkerStatus(WorkerInfo workerInfo, String devSns) {
|
||||
//清除以前的记录
|
||||
xzHikvisionSyncMapper.delete(new LambdaQueryWrapper<XzHikvisionSync>()
|
||||
@ -512,7 +511,6 @@ public class ProjectUfaceConfigServiceImpl extends ServiceImpl<ProjectUfaceConfi
|
||||
* @param userId
|
||||
*/
|
||||
@Override
|
||||
@Transactional(propagation = Propagation.NOT_SUPPORTED)
|
||||
public void buildAndSendBatchWorkerForHk(ProjectUfaceConfig projectUfaceConfig, List<UfaceDev> allDevList, List<WorkerInfo> workerList, Long userId) {
|
||||
//构建workerAndDevSnList
|
||||
List<JSONObject> workerAndDevSnList = new ArrayList<>();
|
||||
|
||||
@ -15,6 +15,7 @@ import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.Future;
|
||||
|
||||
/**
|
||||
* @Description: 劳务人员
|
||||
@ -159,7 +160,7 @@ public interface IWorkerInfoService extends IService<WorkerInfo> {
|
||||
|
||||
void deleteWorkerForHikvision(String uniqueId, WorkerInfo workerInfo);
|
||||
|
||||
void editWorkerForSendBatchAuth(WorkerInfo workerInfo);
|
||||
Future editWorkerAsyncForSendBatchAuth(WorkerInfo workerInfo);
|
||||
|
||||
void editWorkerForHikvision(WorkerInfo workerInfo);
|
||||
|
||||
|
||||
@ -200,16 +200,20 @@ public class UfaceDevServiceImpl extends ServiceImpl<UfaceDevMapper, UfaceDev> i
|
||||
public void sendBatchWokerDev(Map<String, Object> map) {
|
||||
QueryWrapper<ProjectUfaceConfig> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.lambda().eq(ProjectUfaceConfig::getProjectSn, MapUtils.getString(map, "projectSn"));
|
||||
ProjectUfaceConfig tempProjectUfaceConfig = projectUfaceConfigService.getOne(queryWrapper);
|
||||
ProjectUfaceConfig ufaceConfig = projectUfaceConfigService.getOne(queryWrapper);
|
||||
ThreadLocalUtil.addInKey("now", new Date());
|
||||
if (tempProjectUfaceConfig != null && tempProjectUfaceConfig.getIssueDev() == 1) {
|
||||
if (ufaceConfig != null && ufaceConfig.getIssueDev() == 1) {
|
||||
QueryWrapper<UfaceDev> qw = new QueryWrapper<>();
|
||||
qw.lambda().eq(UfaceDev::getProjectSn, MapUtils.getString(map, "projectSn"));
|
||||
List<UfaceDev> list = ufaceDevMapper.selectList(qw);
|
||||
if (list == null || list.size() == 0) {
|
||||
throw new OpenAlertException("请先添加设备");
|
||||
}
|
||||
asyncWorker.sendBatchWokerDevAsync(map, tempProjectUfaceConfig, list);
|
||||
if (ufaceConfig.getSupplierType() == 9) {
|
||||
asyncWorker.sendBatchWokerDev(map, ufaceConfig, list);
|
||||
} else {
|
||||
asyncWorker.sendBatchWokerDevAsync(map, ufaceConfig, list);
|
||||
}
|
||||
} else {
|
||||
throw new OpenAlertException("项目配置不下发设备或未配置参数");
|
||||
}
|
||||
|
||||
@ -69,6 +69,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Propagation;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@ -82,6 +83,7 @@ import java.math.BigDecimal;
|
||||
import java.nio.charset.Charset;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.Future;
|
||||
import java.util.concurrent.atomic.AtomicLong;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@ -104,94 +106,135 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
|
||||
@Lazy
|
||||
@Autowired
|
||||
public CarInfoServiceImpl carInfoService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
IWorkerSafeEducationWorkerService workerSafeEducationWorkerService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
WorkerInfoServiceImpl workerInfoService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IDictionaryItemService dictionaryItemService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private InspectTaskRecordMapper inspectTaskRecordMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private XzSupplierQualificationApplyServiceImpl xzSupplierQualificationApplyService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private AiAnalyseHardWareAlarmRecordMapper aiAnalyseHardWareAlarmRecordMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private HiddenDangerInspectRecordMapper hiddenDangerInspectRecordMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private HikvisionCall hikvisionCall;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private AsyncJiLianDa asyncJiLianDa;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private NoticeServiceImpl noticeService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private UfaceDevMapper ufaceDevMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private ICompanyService companyService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private WorkerInfoMapper workerInfoMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private WorkerSafeEducationWorkerMapper workerSafeEducationWorkerMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IProjectUfaceConfigService projectUfaceConfigService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private CompanyMapper companyMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private ProjectMapper projectMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private TeamInfoMapper teamInfoMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private WorkerAttendanceMapper workerAttendanceMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private WorkerSafeEducationMapper workerSafeEducationMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IWorkerMonthAttendanceStatisticsService workerMonthAttendanceStatisticsService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IWorkerContractService workerContractService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IWorkerInsuranceService workerInsuranceService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IWorkerEvaluateService workerEvaluateService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IWorkerPhysicalsService workerPhysicalsService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IWorkerCertificateService workerCertificateService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private EnterpriseInfoMapper enterpriseInfoMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private ProjectEnterpriseMapper projectEnterpriseMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private EnterpriseTypeMapper enterpriseTypeMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private DepartmentInfoMapper departmentInfoMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private WorkerTypeMapper workerTypeMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private UploadFileService uploadFileService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private AsyncWorker asyncWorker;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private AsyncHikvision asyncHikvision;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private IWorkerPhotoFeaturesService workerPhotoFeaturesService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private GovtOpenApiService govtOpenApiService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private EnvironmentUtil environmentUtil;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private SystemUserMapper systemUserMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private WorkerInfoDeleteMapper workerInfoDeleteMapper;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private SystemUserServiceImpl systemUserService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private EnterpriseInfoServiceImpl enterpriseInfoService;
|
||||
@Value("${serverUrl}")
|
||||
private String serverUrl;
|
||||
@Value("${basePath}")
|
||||
private String basePath;
|
||||
@Value("${isGetFaceFeatureDate}")
|
||||
private boolean isGetFaceFeatureDate;
|
||||
@Autowired
|
||||
private SystemUserServiceImpl systemUserService;
|
||||
@Autowired
|
||||
private EnterpriseInfoServiceImpl enterpriseInfoService;
|
||||
|
||||
/**
|
||||
* 人员管理分页
|
||||
@ -2412,17 +2455,19 @@ public class WorkerInfoServiceImpl extends ServiceImpl<WorkerInfoMapper, WorkerI
|
||||
}
|
||||
|
||||
/**
|
||||
* 同步的,不删除同步的记录
|
||||
* 不删除同步的记录
|
||||
*
|
||||
* @param workerInfo
|
||||
*/
|
||||
@Override
|
||||
public void editWorkerForSendBatchAuth(WorkerInfo workerInfo) {
|
||||
@Async("workerHkExecutor")
|
||||
public Future editWorkerAsyncForSendBatchAuth(WorkerInfo workerInfo) {
|
||||
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(1).setOperate(2).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
|
||||
if (StrUtil.isNotBlank(workerInfo.getFieldAcquisitionUrl())) {
|
||||
xzHikvisionSyncMapper.insert(new XzHikvisionSync().setProjectSn(workerInfo.getProjectSn()).setType(2).setOperate(2).setWhoId(workerInfo.getId()).setBigType(1).setCreateDate(getSyncTimeWithInitIfAbsent(1, workerInfo.getId())));
|
||||
}
|
||||
asyncHikvision.editWorker(workerInfo, true, true);
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -20,6 +20,6 @@
|
||||
) t2 on
|
||||
t1.create_date=t2.create_date and t1.who_id=t2.who_id
|
||||
left join uface_dev ud on t1.device_sn = ud.dev_sn
|
||||
order by t1.type
|
||||
order by t1.type,t1.id
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||
<pattern>%green(%d{yyyy-MM-dd HH:mm:ss} [%X{requestId}][%thread] %-5level %logger{0}.%method:%L) - %highlight(%msg) %X{stackInfo} %n
|
||||
<pattern>%green(%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{requestId}][%thread] %-5level %logger{0}.%method:%L) - %highlight(%msg) %X{stackInfo} %n
|
||||
</pattern>
|
||||
</encoder>
|
||||
<filter class="com.zhgd.config.LogPrintFilter">
|
||||
@ -19,7 +19,7 @@
|
||||
<file>${log.path}/zhgd-debug.log</file>
|
||||
<!--日志文件输出格式-->
|
||||
<encoder>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%X{requestId}] [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{requestId}] [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset> <!-- 设置字符集 -->
|
||||
</encoder>
|
||||
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
|
||||
@ -46,7 +46,7 @@
|
||||
<file>${log.path}/zhgd-info.log</file>
|
||||
<!--日志文件输出格式-->
|
||||
<encoder>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%X{requestId}] [%thread] %-5level %logger{56}.%method:%L - %msg%n</pattern>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{requestId}] [%thread] %-5level %logger{56}.%method:%L - %msg%n</pattern>
|
||||
<charset>UTF-8</charset>
|
||||
</encoder>
|
||||
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
|
||||
@ -72,7 +72,7 @@
|
||||
<file>${log.path}/zhgd-error.log</file>
|
||||
<!--日志文件输出格式-->
|
||||
<encoder>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%X{requestId}] [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{requestId}] [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||
<charset>UTF-8</charset> <!-- 此处设置字符集 -->
|
||||
</encoder>
|
||||
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
|
||||
@ -98,7 +98,7 @@
|
||||
<file>${log.path}/zhgd-all.log</file>
|
||||
<!--日志文件输出格式-->
|
||||
<encoder>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%X{requestId}] [%thread] %highlight(%-5level) %method:%L %cyan(%logger{50}) - %highlight(%msg) %n</pattern>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{requestId}] [%thread] %highlight(%-5level) %method:%L %cyan(%logger{50}) - %highlight(%msg) %n</pattern>
|
||||
<charset>UTF-8</charset> <!-- 设置字符集 -->
|
||||
</encoder>
|
||||
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user