增加修改客户重新同步功能
This commit is contained in:
+29
@@ -18,6 +18,8 @@ import com.bms.common.core.domain.AjaxResult;
|
||||
import com.bms.common.core.page.TableDataInfo;
|
||||
import com.bms.common.enums.BusinessType;
|
||||
import com.bms.price.domain.PrcBillingTask;
|
||||
import com.bms.price.domain.PrcBillingTaskRetryTask;
|
||||
import com.bms.price.domain.vo.BillingTaskRetryByFilterRequest;
|
||||
import com.bms.price.enums.BillTaskSuccessStatus;
|
||||
import com.bms.price.service.IPrcBillingTaskService;
|
||||
|
||||
@@ -112,4 +114,31 @@ public class BillingTaskMonitorController extends BaseController
|
||||
data.put("details", details);
|
||||
return success(data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Async resync by customer + bill_time (batched ID pages to avoid OOM).
|
||||
* Returns asyncTaskId; poll {@code GET /retryTask/{asyncTaskId}}.
|
||||
*/
|
||||
@PreAuthorize("@ss.hasPermi('monitor:billingTask:retry')")
|
||||
@Log(title = "billing task filter retry", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/retryByFilter")
|
||||
public AjaxResult retryByFilter(@RequestBody BillingTaskRetryByFilterRequest request)
|
||||
{
|
||||
String asyncTaskId = billingTaskService.startRetryByFilter(request);
|
||||
Map<String, Object> data = new HashMap<String, Object>();
|
||||
data.put("asyncTaskId", asyncTaskId);
|
||||
return success(data);
|
||||
}
|
||||
|
||||
@PreAuthorize("@ss.hasPermi('monitor:billingTask:retry') or @ss.hasPermi('monitor:billingTask:list')")
|
||||
@GetMapping("/retryTask/{asyncTaskId}")
|
||||
public AjaxResult retryTaskProgress(@PathVariable("asyncTaskId") String asyncTaskId)
|
||||
{
|
||||
PrcBillingTaskRetryTask task = billingTaskService.getRetryByFilterTask(asyncTaskId);
|
||||
if (task == null)
|
||||
{
|
||||
return error("retry task not found or expired");
|
||||
}
|
||||
return success(task);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user