Pu Zhibing
3 天以前 50350c428347d68ea1c8fa4fcc7633e4dc2550bc
driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/api/DriverController.java
@@ -4,36 +4,35 @@
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.supersavedriving.driver.core.util.ToolUtil;
import com.supersavedriving.driver.modular.system.dao.MonthOrderMapper;
import com.supersavedriving.driver.modular.system.dao.TCompanyMapper;
import com.supersavedriving.driver.modular.system.model.*;
import com.supersavedriving.driver.modular.system.service.*;
import com.supersavedriving.driver.modular.system.util.ALiSendSms;
import com.supersavedriving.driver.modular.system.util.MallBook.model.InterfaceResponse;
import com.supersavedriving.driver.modular.system.util.MiniPay.MiniAppPay;
import com.supersavedriving.driver.modular.system.util.RedisUtil;
import com.supersavedriving.driver.modular.system.util.ResultUtil;
import com.supersavedriving.driver.modular.system.util.UUIDUtil;
import com.supersavedriving.driver.modular.system.util.juhe.OCRUtil;
import com.supersavedriving.driver.modular.system.util.qianyuntong.EmployeeUtil;
import com.supersavedriving.driver.modular.system.util.qianyuntong.SMSUtil;
import com.supersavedriving.driver.modular.system.util.qianyuntong.UserUtil;
import com.supersavedriving.driver.modular.system.util.qianyuntong.model.AddAccountInfoRequest;
import com.supersavedriving.driver.modular.system.util.qianyuntong.model.QYTUserInfo;
import com.supersavedriving.driver.modular.system.util.qianyuntong.model.SendSmsRequest;
import com.supersavedriving.driver.modular.system.util.separateAccounts.StrUtil;
import com.supersavedriving.driver.modular.system.util.separateAccounts.TransferUtil;
import com.supersavedriving.driver.modular.system.util.zhenglian.TokenUtil;
import com.supersavedriving.driver.modular.system.util.zhenglian.ZhengLianUtil;
import com.supersavedriving.driver.modular.system.util.zhenglian.model.TokenRequest;
import com.supersavedriving.driver.modular.system.util.zhenglian.model.TradeTerminalInfo;
import com.supersavedriving.driver.modular.system.util.zhenglian.model.ZLUserInfo;
import com.supersavedriving.driver.modular.system.warpper.*;
import com.supersavedriving.driver.core.util.ToolUtil;
import com.supersavedriving.driver.modular.system.util.RedisUtil;
import com.supersavedriving.driver.modular.system.util.ResultUtil;
import com.supersavedriving.driver.modular.system.util.UUIDUtil;
import com.supersavedriving.driver.modular.system.warpper.DriverPositionWarpper;
import com.supersavedriving.driver.modular.system.warpper.DriverRegisterWarpper;
import com.supersavedriving.driver.modular.system.warpper.PromotionWarpper;
import com.supersavedriving.driver.modular.system.warpper.TokenWarpper;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -43,12 +42,13 @@
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.InputStream;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.List;
@@ -111,9 +111,6 @@
    @Value("${qyt.admin_url}")
    private String adminUrl;
    @Autowired
    private TCompanyMapper companyMapper;
@@ -1086,8 +1083,8 @@
                return ResponseWarpper.tokenErr();
            }
            Driver driver1 = driverService.selectById(uid);
            TCompany company = companyMapper.selectById(driver1.getBranchOfficeId());
            List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(driver1.getPhone(), company.getEnterCode());
            BranchOffice branchOffice = branchOfficeService.selectById(driver1.getBranchOfficeId());
            List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(driver1.getPhone(), branchOffice.getEnterCode());
            if (null == userInfoByPhone || userInfoByPhone.size() == 0) {
                return new ResponseWarpper(500, "账号未注册");
            }
@@ -1119,8 +1116,8 @@
                return ResponseWarpper.tokenErr();
            }
            Driver driver1 = driverService.selectById(uid);
            TCompany company = companyMapper.selectById(driver1.getBranchOfficeId());
            List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(driver1.getPhone(), company.getEnterCode());
            BranchOffice branchOffice = branchOfficeService.selectById(driver1.getBranchOfficeId());
            List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(driver1.getPhone(), branchOffice.getEnterCode());
            if (null == userInfoByPhone || userInfoByPhone.size() == 0) {
                return new ResponseWarpper(500, "账号未注册");
            }
@@ -1439,13 +1436,48 @@
                    "\t 09 开通支付账户\n" +
                    "\t 10 打开付款码", name = "type", required = true, dataType = "String"),
    })
    public ResponseWarpper<String> getZLToken(String ip, String mac, String type, HttpServletRequest request){
    public ResponseWarpper<String> getZLToken(String ip, String mac, String type){
        try {
            Integer uid = driverService.getUserByRequest();
            if(null == uid){
                return ResponseWarpper.tokenErr();
            }
            Driver driver = driverService.selectById(uid);
            //获取证联数据
            if(null == driver.getCustId() || 0 == driver.getAccOpenFlag()){
                TradeTerminalInfo tradeTerminalInfo = new TradeTerminalInfo();
                tradeTerminalInfo.setTerminal("1");
                InetAddress inetAddress = InetAddress.getLocalHost();
                tradeTerminalInfo.setIp(inetAddress.getHostAddress());
                NetworkInterface networkInterface = NetworkInterface.getByInetAddress(inetAddress);
                byte[] mac1 = networkInterface.getHardwareAddress();
                StringBuilder macAddress = new StringBuilder();
                for (int i = 0; i < mac1.length; i++) {
                    macAddress.append(String.format("%02X%s", mac1[i], (i < mac1.length - 1) ? "-" : ""));
                }
                tradeTerminalInfo.setMac(macAddress.toString());
                ZLUserInfo userInfo = ZhengLianUtil.getUserInfo(driver.getEmpId().toString(), tradeTerminalInfo);
                if(null != userInfo){
                    driver.setCustId(userInfo.getCustId());
                    driver.setAccOpenFlag(userInfo.getAccOpenFlag());
                    driverService.updateById(driver);
                }
            }
            //同步到中台
            if(null != driver.getAccOpenFlag() && 1 == driver.getAccOpenFlag() && 0 == driver.getIsSynchronous()){
                AddAccountInfoRequest request = new AddAccountInfoRequest();
                request.setCustId(driver.getCustId());
                request.setAccountNo(driver.getEmpId().toString());
                request.setAccountName(driver.getName());
                request.setMobile(driver.getPhone());
                Integer status = EmployeeUtil.addAccountInfo(request);
                if(0 == status){
                    driver.setIsSynchronous(1);
                    driverService.updateById(driver);
                }
            }
            TokenRequest tokenRequest = new TokenRequest();
            tokenRequest.setAppUserId(driver.getEmpId().toString());
            tokenRequest.setUserName(driver.getName());