|
@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
import cn.hutool.core.date.DateField;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
+import cn.hutool.core.util.NumberUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import cn.hutool.http.HttpUtil;
|
|
@@ -27,6 +28,7 @@ import com.fjhx.tenant.entity.dict.dto.DictTenantDataSelectDto;
|
|
|
import com.fjhx.tenant.entity.dict.po.DictTenantData;
|
|
|
import com.fjhx.tenant.entity.dict.vo.DictTenantDataVo;
|
|
|
import com.fjhx.tenant.service.dict.DictTenantDataService;
|
|
|
+import com.ruoyi.common.core.redis.RedisCache;
|
|
|
import com.ruoyi.common.utils.SecurityUtils;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
@@ -49,24 +51,29 @@ public class XiaomanApiServiceImpl implements XiaomanApiService {
|
|
|
XiaomanCustomerService xiaomanCustomerService;
|
|
|
@Resource
|
|
|
DictTenantDataService dictTenantDataService;
|
|
|
+ @Resource
|
|
|
+ RedisCache redisCache;
|
|
|
|
|
|
// @DSTransactional
|
|
|
@Override
|
|
|
@Async
|
|
|
public void initAllList() {
|
|
|
- boolean result = setNxWithExpiration(XiaomanContant.TASK_STATUS_KEY, XiaomanContant.TASK_STATUS_VALUE, XiaomanContant.DELAY_DELETE_KEY_TIME);
|
|
|
- if (!result) {
|
|
|
- String mes = stringRedisTemplate.opsForValue().get(XiaomanContant.TASK_STATUS_DESC_KEY);
|
|
|
- throw new RuntimeException(StrUtil.isBlank(mes)? "全量更新正在进行中" : mes);
|
|
|
- }
|
|
|
- stringRedisTemplate.opsForValue().set(XiaomanContant.TASK_STATUS_DESC_KEY, "全量更新正在进行中");
|
|
|
+// boolean result = setNxWithExpiration(XiaomanContant.TASK_STATUS_KEY, XiaomanContant.TASK_STATUS_VALUE, XiaomanContant.DELAY_DELETE_KEY_TIME);
|
|
|
+// if (!result) {
|
|
|
+// String mes = stringRedisTemplate.opsForValue().get(XiaomanContant.TASK_STATUS_DESC_KEY);
|
|
|
+// throw new RuntimeException(StrUtil.isBlank(mes)? "全量更新正在进行中" : mes);
|
|
|
+// }
|
|
|
+// stringRedisTemplate.opsForValue().set(XiaomanContant.TASK_STATUS_DESC_KEY, "全量更新正在进行中");
|
|
|
try {
|
|
|
getSelectorData();
|
|
|
|
|
|
|
|
|
List<XiaomanCustomerVo> list = xiaomanCustomerService.getList(new XiaomanCustomerSelectDto());
|
|
|
Set<Long> collect = list.stream().map(XiaomanCustomerVo::getCompanyId).collect(Collectors.toSet());
|
|
|
- int pageIndex = 1;
|
|
|
+ int pageIndex = redisCache.getCacheObject(XiaomanContant.ALL_CUSTOMER_PAGE_INDEX_KEY);
|
|
|
+ if (!NumberUtil.isValidNumber(pageIndex)) {
|
|
|
+ pageIndex = 1;
|
|
|
+ }
|
|
|
int totalPage;
|
|
|
do {
|
|
|
XiaomanConfig config = xiaomanConfigService.getCache();
|
|
@@ -77,15 +84,16 @@ public class XiaomanApiServiceImpl implements XiaomanApiService {
|
|
|
int totalItem = customerListApiVo.getTotalItem();
|
|
|
totalPage = (totalItem / XiaomanContant.PAGE_SIZE) + (totalItem % XiaomanContant.PAGE_SIZE > 0 ? 1 : 0);
|
|
|
pageIndex++;
|
|
|
+ redisCache.setCacheObject(XiaomanContant.ALL_CUSTOMER_PAGE_INDEX_KEY, pageIndex);
|
|
|
} while (pageIndex <= totalPage);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
- stringRedisTemplate.delete(XiaomanContant.TASK_STATUS_KEY);
|
|
|
- stringRedisTemplate.opsForValue().set(XiaomanContant.TASK_STATUS_DESC_KEY, "全量更新出现异常,已停止");
|
|
|
- return;
|
|
|
+// stringRedisTemplate.delete(XiaomanContant.TASK_STATUS_KEY);
|
|
|
+// stringRedisTemplate.opsForValue().set(XiaomanContant.TASK_STATUS_DESC_KEY, "全量更新出现异常,已停止");
|
|
|
+// return;
|
|
|
}
|
|
|
- stringRedisTemplate.delete(XiaomanContant.TASK_STATUS_KEY);
|
|
|
- stringRedisTemplate.opsForValue().set(XiaomanContant.TASK_STATUS_DESC_KEY, "全量更新完成,完成时间:" + DateUtil.now());
|
|
|
+// stringRedisTemplate.delete(XiaomanContant.TASK_STATUS_KEY);
|
|
|
+// stringRedisTemplate.opsForValue().set(XiaomanContant.TASK_STATUS_DESC_KEY, "全量更新完成,完成时间:" + DateUtil.now());
|
|
|
}
|
|
|
|
|
|
/**
|