You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
3.1 KiB

  1. package com.example.demo.config.cash;
  2. import com.example.demo.domain.vo.cash.Market;
  3. import com.example.demo.service.cash.MarketService;
  4. import com.example.demo.service.cash.RefundApprovalService;
  5. import lombok.RequiredArgsConstructor;
  6. import org.springframework.boot.CommandLineRunner;
  7. import org.springframework.stereotype.Component;
  8. import java.util.Arrays;
  9. import java.util.List;
  10. @Component
  11. @RequiredArgsConstructor
  12. public class DataInitializer implements CommandLineRunner {
  13. private final MarketService marketService;
  14. private final RefundApprovalService refundApprovalService;
  15. @Override
  16. public void run(String... args) throws Exception {
  17. // 初始化地区数据
  18. initializeMarketData();
  19. }
  20. private void initializeMarketData() {
  21. List<Market> markets = Arrays.asList(
  22. createMarket(1, "Capt", -1, "Capt-Capt-Capt-Capt", 0),
  23. createMarket(2, "公司", 1, "Capt-公司-公司-公司", 1),
  24. createMarket(3, "市场", 1, "Capt-市场部-市场部-市场部", 1),
  25. createMarket(4, "新加坡", 3, "Capt-市场部-新加坡-新加坡", 2),
  26. createMarket(5, "马来西亚", 3, "Capt-市场部-马来西亚-马来西亚", 2),
  27. createMarket(9, "研发部", 2, "Capt-公司-研发部-研发部", 2),
  28. createMarket(13, "香港", 3, "Capt-市场部-香港-香港", 2),
  29. createMarket(9999, "总部", 2, "Capt-公司-总部-总部", 2),
  30. createMarket(24016, "加拿大", 3, "Capt-市场部-加拿大-加拿大", 2),
  31. createMarket(24018, "泰国", 3, "Capt-市场部-泰国-泰国", 2),
  32. createMarket(24022, "越南HCM", 3, "Capt-市场部-越南HCM-越南HCM", 2),
  33. createMarket(24027, "韩国", 3, "Capt-市场部-韩国-韩国", 2),
  34. createMarket(24028, "深圳运营", 3, "Capt-市场部-深圳运营-深圳运营", 2),
  35. createMarket(24030, "未知", 3, "Capt-市场部-未知", 2),
  36. createMarket(24031, "其他", 3, "Capt-市场部-其他", 2),
  37. createMarket(24032, "市场部", 3, "Capt-市场部-市场部", 2)
  38. );
  39. marketService.initializeMarkets(markets);
  40. // 为特定市场初始化审批流程
  41. refundApprovalService.initializeFlowForMarketName("新加坡");
  42. refundApprovalService.initializeFlowForMarketName("马来西亚");
  43. refundApprovalService.initializeFlowForMarketName("香港");
  44. refundApprovalService.initializeFlowForMarketName("加拿大");
  45. refundApprovalService.initializeFlowForMarketName("泰国");
  46. refundApprovalService.initializeFlowForMarketName("越南HCM");
  47. refundApprovalService.initializeFlowForMarketName("韩国");
  48. refundApprovalService.initializeFlowForMarketName("深圳运营");
  49. }
  50. private Market createMarket(Integer id, String name, Integer parentId, String treelist, Integer type) {
  51. Market market = new Market();
  52. market.setId(id);
  53. market.setName(name);
  54. market.setParentId(parentId);
  55. market.setTreelist(treelist);
  56. market.setType(type);
  57. return market;
  58. }
  59. }