Commit b9c3c435 by fudahua

同步通讯录 同步加锁

parent 97d2b925
......@@ -133,6 +133,7 @@ public class DealSyncOperationApiServiceImpl implements DealSyncOperationApiServ
@Override
public void reDealDepartment(String taskId, int dataType) {
logger.info("开始重新同步:{}", taskId);
TabHaobanSyncTask task = syncTaskService.getSyncTask(taskId);
if (null == task) {
logger.info("任务不存在!{}", taskId);
......@@ -143,6 +144,12 @@ public class DealSyncOperationApiServiceImpl implements DealSyncOperationApiServ
logger.info("任务不在没有在异常状态!{}", taskId);
return;
}
String lock = getTaskLock(task.getWxEnterpriseId());
if (lock != null) {
logger.info("已经上锁");
return;
}
lockTask(task.getWxEnterpriseId(), taskId);
int groupErrCount = preDealService.countExcepAndPreByTaskId(taskId, PreDealTypeEnum.group.getVal());
int storeErrCount = preDealService.countExcepAndPreByTaskId(taskId, PreDealTypeEnum.store.getVal());
List<TabHaobanPreDealLog> list = null;
......@@ -159,12 +166,14 @@ public class DealSyncOperationApiServiceImpl implements DealSyncOperationApiServ
}
}
if (CollectionUtils.isEmpty(list)) {
unlockTask(task.getWxEnterpriseId());
return;
}
Set<String> midList = list.stream().map(TabHaobanPreDealLog::getDataId).collect(Collectors.toSet());
//根据类型获取状态
SyncTaskStatusEnum syncTaskStatusEnum = (dataType == PreDealTypeEnum.group.getVal() ? SyncTaskStatusEnum.group_sync
: (dataType == PreDealTypeEnum.store.getVal() ? SyncTaskStatusEnum.store_sync : SyncTaskStatusEnum.clerk_sync));
logger.info("处理开始:类型:{}", syncTaskStatusEnum.getVal());
dealDepartmentToMq(taskId, midList, syncTaskStatusEnum);
}
......
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