puzhibing
2023-07-03 84620b593b9034bb28ba23c730392991cdf37a8b
driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/DriverServiceImpl.java
@@ -41,6 +41,8 @@
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.net.InetAddress;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -149,7 +151,7 @@
        //新账号
        if(null == driver){
            driver = new Driver();
            driver.setCode(UUIDUtil.getNumberRandom(16));
            driver.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(5));
            try {
                driver = setDriverParamete(driver, driverRegisterWarpper);
            }catch (Exception e){
@@ -166,7 +168,7 @@
                    Integer num7 = JSON.parseObject(systemConfig.getContent()).getInteger("num7");
                    if(num7 > 0){
                        AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
                        accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
                        accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(5));
                        accountChangeDetail.setUserType(2);
                        accountChangeDetail.setUserId(driver1.getId());
                        accountChangeDetail.setType(2);
@@ -584,7 +586,7 @@
            if(h > 0 && h > time){
                Driver driver = this.selectById(driverId);
                AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
                accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
                accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(5));
                accountChangeDetail.setUserType(2);
                accountChangeDetail.setUserId(driverId);
                accountChangeDetail.setType(2);
@@ -613,8 +615,8 @@
        DriverInfoWarpper driverInfo = new DriverInfoWarpper();
        BeanUtils.copyProperties(driver, driverInfo);
        driverInfo.setWithdrawBalance(driver.getBalance());
        driverInfo.setBalance(driver.getBalance() + driver.getBackgroundBalance());//司机充值+平台充值
        driverInfo.setCommission(driver.getCommission() + driver.getCouponBalance());//司机订单收入+司机佣金收入+司机优惠券收入+司机折扣收入
        driverInfo.setBalance(new BigDecimal(driver.getBalance()).add(new BigDecimal(driver.getBackgroundBalance())).setScale(2, RoundingMode.HALF_EVEN).doubleValue());//司机充值+平台充值
        driverInfo.setCommission(new BigDecimal(driver.getCommission()).add(new BigDecimal(driver.getCouponBalance())).setScale(2, RoundingMode.HALF_EVEN).doubleValue());//司机订单收入+司机佣金收入+司机优惠券收入+司机折扣收入
        YouTuiDriver youTuiDriver = youTuiDriverService.selectOne(new EntityWrapper<YouTuiDriver>().eq("driverId", uid)
                .eq("state", 2).last(" and failureTime > now() order by failureTime limit 0, 1"));
        if(null != youTuiDriver){
@@ -693,7 +695,7 @@
        List<AccountChangeDetail> list = new ArrayList<>();
        for (Driver driver : drivers) {
            AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
            accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
            accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(5));
            accountChangeDetail.setUserType(2);
            accountChangeDetail.setUserId(driver.getId());
            accountChangeDetail.setCreateTime(new Date());
@@ -717,7 +719,7 @@
        Driver driver = this.selectById(uid);
        //调起微信
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
        String out_trade_no = sdf.format(new Date()) + UUIDUtil.getNumberRandom(3);
        String out_trade_no = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
        RechargeRecord rechargeRecord = new RechargeRecord();
        rechargeRecord.setType(2);
        rechargeRecord.setUserId(uid);
@@ -731,7 +733,7 @@
        PaymentOrder paymentOrder = new PaymentOrder();
        paymentOrder.setBizOrderId(out_trade_no);
        paymentOrder.setAmount(String.valueOf(Double.valueOf(amount * 100).intValue()));
        paymentOrder.setAmount(new BigDecimal(amount).multiply(new BigDecimal(100)).setScale(0, RoundingMode.HALF_EVEN).longValue() + "");
        paymentOrder.setOrderName("账户充值");
        paymentOrder.setPayType("WX_MINI");
        paymentOrder.setTransferType("0");
@@ -792,14 +794,14 @@
                                    AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
                                    accountChangeDetail.setUserType(2);
                                    accountChangeDetail.setUserId(driver1.getId());
                                    accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
                                    accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(5));
                                    accountChangeDetail.setChangeType(3);
                                    accountChangeDetail.setType(1);
                                    accountChangeDetail.setCreateTime(new Date());
                                    accountChangeDetail.setExplain("账户充值");
                                    accountChangeDetail.setOldData(driver1.getBalance() + driver1.getBackgroundBalance());
                                    driver1.setBalance(driver1.getBalance() + rechargeRecord1.getAmount());
                                    accountChangeDetail.setNewData(driver1.getBalance() + driver1.getBackgroundBalance());
                                    accountChangeDetail.setOldData(new BigDecimal(driver1.getBalance()).add(new BigDecimal(driver1.getBackgroundBalance())).setScale(2, RoundingMode.HALF_EVEN).doubleValue());
                                    driver1.setBalance(new BigDecimal(driver1.getBalance()).add(new BigDecimal(rechargeRecord1.getAmount())).setScale(2, RoundingMode.HALF_EVEN).doubleValue());
                                    accountChangeDetail.setNewData(new BigDecimal(driver1.getBalance()).add(new BigDecimal(driver1.getBackgroundBalance())).setScale(2, RoundingMode.HALF_EVEN).doubleValue());
                                    DriverServiceImpl.this.updateById(driver1);
                                    accountChangeDetailService.saveData(accountChangeDetail);
@@ -865,14 +867,14 @@
        AccountChangeDetail accountChangeDetail = new AccountChangeDetail();
        accountChangeDetail.setUserType(2);
        accountChangeDetail.setUserId(rechargeRecord1.getUserId());
        accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(3));
        accountChangeDetail.setCode(System.currentTimeMillis() + UUIDUtil.getNumberRandom(5));
        accountChangeDetail.setChangeType(3);
        accountChangeDetail.setType(1);
        accountChangeDetail.setCreateTime(new Date());
        accountChangeDetail.setExplain("账户充值");
        accountChangeDetail.setOldData(driver1.getBalance() + driver1.getBackgroundBalance());
        driver1.setBalance(driver1.getBalance() + rechargeRecord1.getAmount());
        accountChangeDetail.setNewData(driver1.getBalance() + driver1.getBackgroundBalance());
        accountChangeDetail.setOldData(new BigDecimal(driver1.getBalance()).add(new BigDecimal(driver1.getBackgroundBalance())).setScale(2, RoundingMode.HALF_EVEN).doubleValue());
        driver1.setBalance(new BigDecimal(driver1.getBalance()).add(new BigDecimal(rechargeRecord1.getAmount())).setScale(2, RoundingMode.HALF_EVEN).doubleValue());
        accountChangeDetail.setNewData(new BigDecimal(driver1.getBalance()).add(new BigDecimal(driver1.getBackgroundBalance())).setScale(2, RoundingMode.HALF_EVEN).doubleValue());
        this.updateById(driver1);
        accountChangeDetailService.saveData(accountChangeDetail);
@@ -971,7 +973,7 @@
    public ResultUtil microenterprise(Integer uid, String name, String number, String phone, String notifyUrl) throws Exception {
        Driver driver = this.selectById(uid);
        Register registerVO = new Register();
        registerVO.setMerUserId("driver_" + uid);
        registerVO.setMerUserId(driver.getCode());//"driver_" + uid
        registerVO.setPhone(phone);
        registerVO.setUserType("0");
        registerVO.setUserName(name);