Commit 94abfe2c by 邹磊浩

修改代码

parent 43e4cc59
...@@ -23,6 +23,9 @@ import org.springframework.stereotype.Component; ...@@ -23,6 +23,9 @@ import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct; import javax.annotation.PostConstruct;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.*; import java.util.*;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
/** /**
* 每天12点新增订单数据 * 每天12点新增订单数据
...@@ -63,118 +66,109 @@ public class InsertTestOrderTask { ...@@ -63,118 +66,109 @@ public class InsertTestOrderTask {
private final EmployeesDivideMapper employeesDivideMapper; private final EmployeesDivideMapper employeesDivideMapper;
public static List<Integer> businessIds = Arrays.asList(0, 1, 2, 3, 4, 5, 6); public static List<Integer> businessIds = Arrays.asList(0, 1, 2, 3, 4, 5, 6);
@Scheduled(cron = "0 0 0 * * ?") // 凌晨12点执行
@Scheduled(cron = "0 0 0 * * ?") // 每5秒执行一次 public void insertOrder() throws InterruptedException {
public void insertOrder() { // 就诊人员
//每日单量 List<UserVsitor> userVsitors = userVsitorMapper.selectList(Wrappers.<UserVsitor>lambdaQuery().last("limit 20"));
Integer num = RandomUtil.randomInt(30, 50);
//就诊人员
List<UserVsitor> userVsitors = userVsitorMapper.selectList(null);
UserVsitor randomElement = getRandomElement(userVsitors); UserVsitor randomElement = getRandomElement(userVsitors);
for (int i = 0; i <= num; i++) { // 查询固定机构
//遍历固定机构 List<Company> companies = companyMapper.selectList(Wrappers.<Company>lambdaQuery().in(Company::getId, 5, 14, 15, 16, 17));
List<Company> companies = companyMapper.selectList(Wrappers.<Company>lambdaQuery().in(Company::getId, 5, 14, 15, 16, 17)); // 加入线程池并发执行
for (Company company : companies) { ExecutorService executorService = Executors.newFixedThreadPool(10);
//获取机构下的陪诊员 for (Company company : companies) {
Employees employees = employeesMapper.selectOne(Wrappers.<Employees>lambdaQuery().eq(Employees::getCompanyId, company.getId()).last("limit 1")); Employees employees = employeesMapper.selectOne(Wrappers.<Employees>lambdaQuery().eq(Employees::getCompanyId, company.getId()).last("limit 1"));
//随机获取陪诊员所在城市的随机医院 executorService.submit(() -> {
List<Hospital> hospitals = hospitalMapper.selectList(Wrappers.<Hospital>lambdaQuery().eq(Hospital::getCityId, employees.getCityId()).last("limit 10")); List<Hospital> hospitals = hospitalMapper.selectList(Wrappers.<Hospital>lambdaQuery().eq(Hospital::getCityId, employees.getCityId()).last("limit 10"));
//随机获取城市中某个医院
Hospital hospital = getRandomElement(hospitals); Hospital hospital = getRandomElement(hospitals);
//遍历所有业务 for (Integer businessId : businessIds) {
for (Integer businessId : businessIds) { // 每日单量
//主订单编号 Integer num = RandomUtil.randomInt(30, 50);
Long orderId = saveTotalOrder(businessId, employees.getId(), employees.getCityId().intValue(), company.getId()); for (int i = 0; i <= num; i++) {
switch (businessId) { Long orderId = saveTotalOrder(businessId, employees.getId(), employees.getCityId().intValue(), company.getId());
//商城订单 switch (businessId) {
case 0: case 0:
StoreOrder storeOrder = new StoreOrder(); StoreOrder storeOrder = new StoreOrder();
storeOrder.setOrderId(orderId.intValue()); storeOrder.setOrderId(orderId.intValue());
Integer storeId = RandomUtil.randomInt(1, 5); Integer storeId = RandomUtil.randomInt(1, 5);
storeOrder.setGoodsId(storeId); storeOrder.setGoodsId(storeId);
//随机地址id Integer addressId = RandomUtil.randomInt(1, 9);
Integer addressId = RandomUtil.randomInt(1, 9); storeOrder.setAddressId(addressId);
storeOrder.setAddressId(addressId); storeOrder.setStatus(2);
storeOrder.setStatus(2); storeOrder.setLogistics("顺丰速运");
storeOrder.setLogistics("顺丰速运"); storeOrder.setLogisticsCode("SF" + RandomUtil.randomNumbers(16));
storeOrder.setLogisticsCode("SF" + RandomUtil.randomNumbers(16)); storeOrderMapper.insert(storeOrder);
storeOrderMapper.insert(storeOrder); break;
break; case 1:
//预约陪诊 YypzOrder yypzOrder = new YypzOrder();
case 1: yypzOrder.setOrderId(orderId.intValue());
YypzOrder yypzOrder = new YypzOrder(); yypzOrder.setPhone(generateRandomPhoneNumber());
yypzOrder.setOrderId(orderId.intValue()); yypzOrder.setStatus(2);
yypzOrder.setPhone(generateRandomPhoneNumber()); yypzOrder.setVisitTime(new Date());
yypzOrder.setStatus(2); yypzOrder.setHid(hospital.getId());
yypzOrder.setVisitTime(new Date()); yypzOrder.setVisitor(randomElement.getId());
yypzOrder.setHid(hospital.getId()); yypzOrderMapper.insert(yypzOrder);
yypzOrder.setVisitor(randomElement.getId()); break;
yypzOrderMapper.insert(yypzOrder); case 2:
break; DbghOrder dbghOrder = new DbghOrder();
//代办挂号 dbghOrder.setOrderId(orderId.intValue());
case 2: dbghOrder.setHid(hospital.getId());
DbghOrder dbghOrder = new DbghOrder(); dbghOrder.setStatus(2);
dbghOrder.setOrderId(orderId.intValue()); dbghOrder.setVisitTime(new Date());
dbghOrder.setHid(hospital.getId()); dbghOrder.setVisitor(randomElement.getId());
dbghOrder.setStatus(2); dbghOrderMapper.insert(dbghOrder);
dbghOrder.setVisitTime(new Date()); break;
dbghOrder.setVisitor(randomElement.getId()); case 3:
dbghOrderMapper.insert(dbghOrder); DbwzOrder dbwzOrder = new DbwzOrder();
break; dbwzOrder.setOrderId(orderId.intValue());
//代办问诊 dbwzOrder.setStatus(2);
case 3: dbwzOrder.setVisitTime(new Date());
DbwzOrder dbwzOrder = new DbwzOrder(); dbwzOrder.setChiefComplaint("电话沟通");
dbwzOrder.setOrderId(orderId.intValue()); dbwzOrder.setHistoryOfPresentIllness("电话沟通");
dbwzOrder.setStatus(2); dbwzOrder.setLastMedicalTreatmentSituation("电话沟通");
dbwzOrder.setVisitTime(new Date()); dbwzOrder.setPastHistory("电话沟通");
dbwzOrder.setChiefComplaint("电话沟通"); dbwzOrder.setPostTreatmentCondition("电话沟通");
dbwzOrder.setHistoryOfPresentIllness("电话沟通"); dbwzOrder.setRelatedReports("电话沟通");
dbwzOrder.setLastMedicalTreatmentSituation("电话沟通"); dbwzOrder.setServiceRequirements("电话沟通");
dbwzOrder.setPastHistory("电话沟通"); dbwzOrder.setVisitor(randomElement.getId());
dbwzOrder.setPostTreatmentCondition("电话沟通"); dbwzOrderMapper.insert(dbwzOrder);
dbwzOrder.setRelatedReports("电话沟通"); break;
dbwzOrder.setServiceRequirements("电话沟通"); case 4:
dbwzOrder.setVisitor(randomElement.getId()); ZyphOrder zyphOrder = new ZyphOrder();
dbwzOrderMapper.insert(dbwzOrder); zyphOrder.setOrderId(orderId.intValue());
break; zyphOrder.setHid(hospital.getId());
//住院陪护 zyphOrder.setStatus(2);
case 4: zyphOrder.setVisitor(randomElement.getId());
ZyphOrder zyphOrder = new ZyphOrder(); zyphOrder.setOverTime(new Date());
zyphOrder.setOrderId(orderId.intValue()); zyphOrderMapper.insert(zyphOrder);
zyphOrder.setHid(hospital.getId()); break;
zyphOrder.setStatus(2); case 5:
zyphOrder.setVisitor(randomElement.getId()); DbmyOrder dbmyOrder = new DbmyOrder();
zyphOrder.setOverTime(new Date()); dbmyOrder.setOrderId(orderId.intValue());
zyphOrderMapper.insert(zyphOrder); dbmyOrder.setPhone(generateRandomPhoneNumber());
break; dbmyOrder.setAddress("***");
//代办买药 dbmyOrder.setAddressInfo("***");
case 5: dbmyOrder.setPzShr(employees.getName());
DbmyOrder dbmyOrder = new DbmyOrder(); dbmyOrder.setPzShPhone(employees.getPhone());
dbmyOrder.setOrderId(orderId.intValue()); dbmyOrderMapper.insert(dbmyOrder);
dbmyOrder.setPhone(generateRandomPhoneNumber()); break;
dbmyOrder.setAddress("***"); case 6:
dbmyOrder.setAddressInfo("***"); ZqghOrder zqghOrder = new ZqghOrder();
dbmyOrder.setPzShr(employees.getName()); zqghOrder.setOrderId(orderId.intValue());
dbmyOrder.setPzShPhone(employees.getPhone()); zqghOrder.setHid(hospital.getId());
dbmyOrderMapper.insert(dbmyOrder); zqghOrder.setStatus(2);
break; zqghOrder.setOverTime(new Date());
//诊前挂号 zqghOrder.setDoctorId(1);
case 6: zqghOrderMapper.insert(zqghOrder);
ZqghOrder zqghOrder = new ZqghOrder(); break;
zqghOrder.setOrderId(orderId.intValue()); default:
zqghOrder.setHid(hospital.getId()); break;
zqghOrder.setStatus(2); }
zqghOrder.setOverTime(new Date());
zqghOrder.setDoctorId(1);
zqghOrderMapper.insert(zqghOrder);
break;
default:
} }
} }
} });
} }
executorService.shutdown();
executorService.awaitTermination(Long.MAX_VALUE, TimeUnit.NANOSECONDS);
} }
public Long saveTotalOrder(Integer businessId, Integer emId, Integer cityId, Integer companyId) { public Long saveTotalOrder(Integer businessId, Integer emId, Integer cityId, Integer companyId) {
......
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