import cn.hutool.core.date.DateUtil; import cn.hutool.core.io.FileUtil; import cn.hutool.extra.pinyin.PinyinUtil; import com.ltkj.LtkjApplication; import com.ltkj.hosp.domain.TjProject; import com.ltkj.hosp.service.*; import lombok.extern.slf4j.Slf4j; import org.joda.money.CurrencyUnit; import org.joda.money.Money; import org.junit.Test; import org.junit.runner.RunWith; import org.openqa.selenium.By; import org.openqa.selenium.Dimension; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.WebDriverWait; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import java.math.BigDecimal; import java.math.RoundingMode; import java.net.HttpURLConnection; import java.net.URL; import java.time.LocalTime; import java.time.ZonedDateTime; import java.util.Arrays; import java.util.List; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.openqa.selenium.*; import org.springframework.core.io.ClassPathResource; import java.io.File; import java.io.IOException; import java.time.Duration; import static javafx.scene.input.ScrollEvent.VerticalTextScrollUnits.PAGES; /** * @Author: 西安路泰科技有限公司/赵佳豪 * @Date: 2022/12/12 9:05 */ @RunWith(SpringRunner.class) @SpringBootTest(classes = LtkjApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Slf4j @EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class}) public class zjhTest { // // @Autowired // private ITjGroupingProService groupingProService; @Autowired private ITjProjectService projectService; // @Resource // private ITjCustomerService tjCustomerService; // @Resource // private ITjPackageService tjPackageService; // // @Resource // private ITjOrderService tjOrderService; // @Resource // private ITjOrderDetailService tjOrderDetailService; // @Resource // private ITjOrderRemarkService remarkService; // // @Resource // private RedisCache redisCache; //// // @Autowired // public RedisTemplate redisTemplate; //// @Resource // private StringRedisTemplate stringRedisTemplate; //@Resource //private IDictHospService dictHospService; @Value("${token.secret_key}") private String secret; @Test public void test() { List list = projectService.list(); for (TjProject project : list) { project.setProEngName(PinyinUtil.getFirstLetter(project.getProName(),"")); projectService.updateById(project); } /* // 生成指定url对应的二维码到文件,宽和高都是300像素 QrCodeUtil.generate("https://ltpeis.xaltjdkj.cn:5516/1000110001240327094056%E7%8E%89%E5%BF%A0_%E4%BD%93%E6%A3%80%E6%8A%A5%E5%91%8A.pdf", 300, 300, FileUtil.file("D:\\Users\\w\\Desktop\\qrcode.jpg")); */ // List list = projectService.list(); // for (TjProject tjProject : list) { // tjProject.setProEngName(PinyinUtil.getFirstLetter(tjProject.getProName(),"")); // projectService.updateById(tjProject); // } // // List list1 = tjCustomerService.list(); // for (TjCustomer customer : list1) { // customer.setPym(PinyinUtil.getFirstLetter(customer.getCusName(),"")); // tjCustomerService.updateById(customer); // } // // List list2 = tjPackageService.list(); // for (TjPackage tjPackage : list2) { // tjPackage.setPym(PinyinUtil.getFirstLetter(tjPackage.getPacName(),"")); // tjPackageService.updateById(tjPackage); // } // PinyinUtil.getFirstLetter(); } public static void main(String[] args) { // BigDecimal ordPrice =new BigDecimal("13.05"); // BigDecimal multiply = ordPrice.multiply((new BigDecimal("6.5").divide(BigDecimal.valueOf(10)))); // System.out.println(multiply); String a="1,4"; String[] split = a.split(",|,|。|:|:"); List list = Arrays.asList(split); log.info("参数配置里面的值为 list :"+list); System.out.println( list.contains("1")); } /** * 执行生成 * @param filePath 图片生成路径 * @return 是否成功 */ private void chrome(String filePath) throws IOException { System.setProperty("webdriver.chrome.driver", "D:\\tools\\chromedriver.exe"); ChromeOptions options = new ChromeOptions(); options.setBinary("D:\\tools\\124063440\\chrome.exe"); options.addArguments("--headless"); // 启用无头模式 options.addArguments("--disable-gpu"); // 禁用GPU加速 options.addArguments("--no-sandbox"); // 禁用沙盒模式(可选,适用于某些Linux环境) System.setProperty("webdriver.chrome.verboseLogging", "true"); WebDriver driver = null; try { driver = new ChromeDriver(options); driver.manage().window().setSize(new Dimension(600, 730)); driver.get("www.baidu.com"); WebDriverWait wait = new WebDriverWait(driver,10); File screenshot = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE); FileUtil.copyFile(screenshot, new File("D:\\"+filePath)); }catch (Exception e){ log.error("玩家信息异常 ->{}",String.valueOf(e)); }finally { if (driver != null) driver.quit(); } } /** * 将科学计数法文本转换成字符文本 * @param number * @return */ public static String translateToPlainStr(String number) { return getString(number); } private static String getString(String number) { if (null == number || number.trim().length() == 0) { return number; } String regEx="^([\\+|-]?\\d+(.{0}|.\\d+))[Ee]{1}([\\+|-]?\\d+)$"; // 编译正则表达式 Pattern pattern = Pattern.compile(regEx); // 忽略大小写的写法 // Pattern pat = Pattern.compile(regEx, Pattern.CASE_INSENSITIVE); Matcher matcher = pattern.matcher(number); // 字符串是否与正则表达式相匹配 boolean rs = matcher.matches(); // 判断是否为字符串的科学计数法 if(rs){ // 科学计数法转数字 BigDecimal originValue = new BigDecimal(number); System.out.println("手机号为 ==> " + originValue.toPlainString()); // 数字转字符串 return originValue.toPlainString(); } return number; } public static void forwardUrl(String targetUrl, String forwardUrl) throws Exception { // 创建URL对象 URL url = new URL(forwardUrl); // 打开连接 HttpURLConnection connection = (HttpURLConnection) url.openConnection(); // 设置请求方法 connection.setRequestMethod("GET"); // 设置请求头,例如Referer或其他你需要转发的头信息 connection.setRequestProperty("Referer", targetUrl); // 连接 connection.connect(); // 检查响应代码 int responseCode = connection.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { // 读取服务器响应 BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream())); String inputLine; StringBuilder response = new StringBuilder(); while ((inputLine = in.readLine()) != null) { response.append(inputLine); } in.close(); // 打印服务器响应 System.out.println(response.toString()); } else { System.out.println("GET request not worked"); } // 关闭连接 connection.disconnect(); } // // public static String getAdd(String log, String lat ){ // //lat 小 log 大 // //参数解释: 纬度,经度 type 001 (100代表道路,010代表POI,001代表门址,111可以同时显示前三项) // String urlString = "http://gc.ditu.aliyun.com/regeocoding?l="+lat+","+log+"&type=010"; // JSONObject salerJson=JSONObject.parseObject(getUrl(urlString)); // JSONObject jsonData=JSONObject.parseObject(String.valueOf(salerJson)); // /* JSONArray fileItemsjson = JSONArray.fromObject(jsonData.get("addrList").toString()); // System.out.println("地区"+fileItemsjson); // JSONObject job = fileItemsjson.getJSONObject(0);*/ // return jsonData.toString(); // } // // public static String getUrl(String url) // { // String resData = null; // StringBuffer s = new StringBuffer(); // BufferedReader bReader = null; // try { // //114.55.248.182 // URL urlWeb = new URL(url); // URLConnection connection = urlWeb.openConnection(); // bReader = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8")); // while (null != (resData = bReader.readLine())) { // s.append(resData); // } // bReader.close(); // } catch (MalformedURLException e) { // e.printStackTrace(); // } catch (IOException e) { // e.printStackTrace(); // } // System.out.println(s); // return s.toString(); // } }