goupan
2024-04-26 bc8bc25d9cc04168d52e3110d12e9c36b9e0cd27
rest/src/main/java/cn/stylefeng/rest/modular/order/controller/MentalTestOrderController.java
@@ -1,6 +1,5 @@
package cn.stylefeng.rest.modular.order.controller;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.StrUtil;
import cn.stylefeng.guns.modular.business.dto.request.CreateOrderConsultOneRequest;
@@ -9,15 +8,8 @@
import cn.stylefeng.guns.modular.business.entity.MentalAppointment;
import cn.stylefeng.guns.modular.business.entity.OrderConsultOne;
import cn.stylefeng.guns.modular.business.entity.OrderMentalTest;
import cn.stylefeng.guns.modular.business.service.IMentalAnalysisTimeService;
import cn.stylefeng.guns.modular.business.service.IMentalAppointmentService;
import cn.stylefeng.guns.modular.business.service.IOrderConsultOneService;
import cn.stylefeng.guns.modular.business.service.IOrderMentalTestService;
import cn.stylefeng.guns.modular.business.service.*;
import cn.stylefeng.rest.modular.order.service.MentalTestOrderBizService;
import cn.stylefeng.roses.kernel.auth.api.context.LoginContext;
import cn.stylefeng.roses.kernel.auth.api.pojo.login.LoginUser;
import cn.stylefeng.roses.kernel.customer.modular.entity.Customer;
import cn.stylefeng.roses.kernel.customer.modular.service.CustomerService;
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseIdRequest;
import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
@@ -57,6 +49,9 @@
    @Resource
    private IMentalAnalysisTimeService mentalAnalysisTimeService;
    @Resource
    private IMentalAnalysisTimeConfigService mentalAnalysisTimeConfigService;
    @ApiOperation(value = "心理测试下单", notes = "订单状态,为0需支付(为1无需支付),开始心理测试答题")
    @PostResource(name = "心理测试下单", path = "/createOrderMentalTest")
    public ResponseData<OrderMentalTest> createOrderMentalTest(@RequestBody CreateOrderMentalTestRequest req) {
@@ -67,31 +62,33 @@
    @ApiOperation(value = "1V1咨询可预约时间")
    @GetResource(name = "1V1咨询可预约时间", path = "/mentalAnalysisTime")
    public ResponseData<List<MentalAnalysisTime>> mentalAnalysisTime() {
        List<MentalAnalysisTime> list = mentalAnalysisTimeService.list(
                Wrappers.<MentalAnalysisTime>lambdaQuery()
                        .orderByAsc(MentalAnalysisTime::getModuleNo, MentalAnalysisTime::getWeekDay, MentalAnalysisTime::getBeginTimePoint, MentalAnalysisTime::getEndTimePoint)
        );
        return new SuccessResponseData(list);
    }
//        List<Customer> filteredCustomers = customerService.list(Wrappers.lambdaQuery(Customer.class).eq(Customer::getMentalAnalysisStatus,1)
//                .like(Customer::getPostIds, "31"));
    @Resource
    private CustomerService customerService;
//        if (filteredCustomers.isEmpty()) {
            List<MentalAnalysisTime> list = mentalAnalysisTimeService.list(
                    Wrappers.<MentalAnalysisTime>lambdaQuery()
                            .orderByAsc(MentalAnalysisTime::getModuleNo, MentalAnalysisTime::getWeekDay, MentalAnalysisTime::getBeginTimePoint, MentalAnalysisTime::getEndTimePoint)
            );
            return new SuccessResponseData(list);
//        }else {
//            List<Long> collect = filteredCustomers.stream().map(Customer::getCustomerId).collect(Collectors.toList());
//            List<MentalAnalysisTimeConfig> list = mentalAnalysisTimeConfigService.list(Wrappers.lambdaQuery(MentalAnalysisTimeConfig.class).in(MentalAnalysisTimeConfig::getCounsellingInfoId, collect));
//            HashMap<String,MentalAnalysisTimeConfig> hashMap =new HashMap<>();
//            for (MentalAnalysisTimeConfig mentalAnalysisTimeConfig : list) {
//                hashMap.put(mentalAnalysisTimeConfig.getWeekDay()+mentalAnalysisTimeConfig.getBeginTimePoint()+mentalAnalysisTimeConfig.getEndTimePoint(),mentalAnalysisTimeConfig);
//            }
//            Collection<MentalAnalysisTimeConfig> values = hashMap.values();
//            return new SuccessResponseData(values);
//        }
    }
    @ApiOperation(value = "1V1咨询预约性格分析下单")
    @PostResource(name = "1V1咨询预约性格分析下单", path = "/createOrderConsultOne")
    public ResponseData<OrderConsultOne> createOrderConsultOne(@RequestBody CreateOrderConsultOneRequest req) {
    public synchronized ResponseData<OrderConsultOne> createOrderConsultOne(@RequestBody CreateOrderConsultOneRequest req) {
        Assert.isTrue(StrUtil.isNotBlank(req.getRealName()), "姓名不能为空");
        Assert.isTrue(StrUtil.isNotBlank(req.getLinkPhone()), "联系电话不能为空");
        OrderConsultOne o = mentalTestOrderBizService.createOrderConsultOne(req);
        try {
            Customer customer =new Customer();
            BeanUtil.copyProperties(req,customer);
            LoginUser loginUser = LoginContext.me().getLoginUser();
            customer.setCustomerId(loginUser.getUserId());
            customerService.updateById(customer);
        }catch (Exception e){
            log.info("修改用户信息报错");
        }
        return new SuccessResponseData(o);
    }