|
|
|
@ -140,8 +140,10 @@ public class WorkerController { |
|
|
|
if(u.getRegion().equals(worker.getRegion())){ |
|
|
|
return new ResultUtil<Worker>().setData(worker); |
|
|
|
}else{ |
|
|
|
String oldRegion = worker.getRegion(); |
|
|
|
worker.setRegion(u.getRegion()); |
|
|
|
workerService.update(worker); |
|
|
|
syncWorkerRegionCache(oldRegion, worker); |
|
|
|
return new ResultUtil<Worker>().setData(worker); |
|
|
|
} |
|
|
|
}else{ |
|
|
|
@ -161,6 +163,31 @@ public class WorkerController { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void syncWorkerRegionCache(String oldRegion, Worker worker) { |
|
|
|
if (worker == null || StrUtil.isBlank(worker.getWorkerId())) { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
WorkerRedisVo workerRedisVo = StrUtil.isNotBlank(oldRegion) ? workerRedisCacheUtil.get(oldRegion, worker.getWorkerId()) : null; |
|
|
|
if (workerRedisVo == null) { |
|
|
|
if (CommonConstant.ON_LINE.equals(worker.getIsOnLine()) && StrUtil.isNotBlank(worker.getRegion())) { |
|
|
|
workerRedisVo = new WorkerRedisVo(); |
|
|
|
workerRedisVo.setWorkerId(worker.getWorkerId()); |
|
|
|
} else { |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
workerRedisVo.setWorker(worker); |
|
|
|
workerRedisVo.setWorkerRelaPriceList(workerRelaPriceService.selectByWorkerIdAndRegionId(worker.getWorkerId(), worker.getRegion())); |
|
|
|
if (StrUtil.isNotBlank(oldRegion) && !Objects.equals(oldRegion, worker.getRegion())) { |
|
|
|
workerRedisCacheUtil.remove(oldRegion, worker.getWorkerId()); |
|
|
|
} |
|
|
|
if (StrUtil.isNotBlank(worker.getRegion())) { |
|
|
|
workerRedisCacheUtil.put(worker.getRegion(), workerRedisVo); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@RequestMapping(value = "/admin/edit", method = RequestMethod.POST) |
|
|
|
@ApiOperation(value = "修改配送员信息", notes = "需要通过下单编号获取订单信息") |
|
|
|
public Result edit(@RequestBody Worker u) { |
|
|
|
|