From b79d17d163a1f162190cb46d881ab1fd5957c602 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 06 三月 2024 17:02:07 +0800 Subject: [PATCH] Merge branch '2.0' of http://120.76.84.145:10101/gitblit/r/java/PlayPai into 2.0 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java | 162 +++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 130 insertions(+), 32 deletions(-) diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java index 0f4ba14..904f26c 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java @@ -20,6 +20,7 @@ import com.dsh.course.feignClient.other.SiteClient; import com.dsh.course.feignClient.other.model.Site; import com.dsh.course.service.TGameConfigService; +import com.dsh.course.util.UUIDUtil; import com.dsh.guns.config.UserExt; import com.dsh.guns.core.base.controller.BaseController; import com.dsh.guns.core.util.ToolUtil; @@ -27,20 +28,38 @@ import com.dsh.guns.modular.system.model.*; import com.dsh.guns.modular.system.model.dto.*; import com.dsh.guns.modular.system.service.*; -import com.dsh.guns.modular.system.util.DateComparisonExample; -import com.dsh.guns.modular.system.util.HttpRequestUtil; -import com.dsh.guns.modular.system.util.ResultUtil; +import com.dsh.guns.modular.system.util.*; import com.dsh.course.entity.SiteLock; +import com.google.gson.Gson; +import com.google.zxing.BarcodeFormat; +import com.google.zxing.EncodeHintType; +import com.google.zxing.WriterException; +import com.google.zxing.client.j2se.MatrixToImageWriter; +import com.google.zxing.common.BitMatrix; +import com.google.zxing.qrcode.QRCodeWriter; +import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; +import org.apache.commons.fileupload.FileItem; +import org.apache.tomcat.util.http.fileupload.ByteArrayOutputStream; import org.json.JSONObject; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.io.ByteArrayResource; +import org.springframework.mock.web.MockMultipartFile; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.commons.CommonsMultipartFile; import javax.annotation.Resource; +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; import java.math.BigDecimal; +import java.nio.file.FileSystems; +import java.nio.file.Path; import java.text.ParseException; import java.text.SimpleDateFormat; import java.time.LocalDate; @@ -215,7 +234,47 @@ return ResultUtil.success(); } +// public static void main(String[] args) { +// // 添加sutu编号 +// HashMap<String, String> map3 = new HashMap<>(); +// // 添加sutu编号 +// // 添加门禁 红蓝方 +// TSite si = siteService.getById(site); +// TStore st = storeService.getById(store); +// map3.put("sign", "0DB011836143EEE2C2E072967C9F4E4B"); +// map3.put("space_id", si.getId() + ""); +// map3.put("name", ToolUtil.isEmpty(sutuName) ? "" : sutuName); +// map3.put("city_code", ""); +// String s3 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addDevice", map3); +// System.out.println("---------------------------"+s3); +// JSONObject jsonObject = new JSONObject(s3); +// // 获取 data 字段的值 +// JSONObject dataObject = jsonObject.getJSONObject("data"); +// // 获取 sutu_id 字段的值 +// String sutuIdValue = dataObject.getString("sutu_id"); +// Integer sutuId = Integer.valueOf(sutuIdValue); +// game.setSutuId(sutuId); +// } + public static MultipartFile convert(BufferedImage bufferedImage, String fileName) throws IOException { + // 将 BufferedImage 转换为字节数组 + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ImageIO.write(bufferedImage, "png", baos); + byte[] bytes = baos.toByteArray(); + + // 创建 ByteArrayResource + ByteArrayResource resource = new ByteArrayResource(bytes); + + // 创建 MockMultipartFile + MockMultipartFile multipartFile = new MockMultipartFile( + "file", + fileName, + "image/png", + resource.getInputStream() + ); + + return multipartFile; + } @RequestMapping("/save") @ResponseBody public ResultUtil save(Integer id, String operationId, String red, String blue, String province, String city, Integer site, Integer store @@ -231,12 +290,12 @@ , String ly, BigDecimal lyCoin, BigDecimal lyCash, String lyImage, BigDecimal lyInt, Integer lyId,Integer lyIId ,String sutuName - ) { + ) throws Exception { Game game = new Game(); - game.setRed(red); + game.setRedName(red); game.setState(0); - game.setBlue(blue); + game.setBlueName(blue); Integer objectType = UserExt.getUser().getObjectType(); @@ -269,23 +328,62 @@ // 添加sutu编号 HashMap<String, String> map3 = new HashMap<>(); + HashMap<String, String> map4 = new HashMap<>(); // 添加sutu编号 - // 添加门禁 红蓝方 + // 调用两次 创建sutu TSite si = siteService.getById(site); TStore st = storeService.getById(store); -// map3.put("sign", "0DB011836143EEE2C2E072967C9F4E4B"); -// map3.put("space_id", si.getId() + ""); -// map3.put("name", ToolUtil.isEmpty(sutuName) ? "" : sutuName); -// map3.put("city_code", ""); -// String s3 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addDevice", map3); -// System.out.println("---------------------------"+s3); -// JSONObject jsonObject = new JSONObject(s3); -// // 获取 data 字段的值 -// JSONObject dataObject = jsonObject.getJSONObject("data"); -// // 获取 sutu_id 字段的值 -// String sutuIdValue = dataObject.getString("sutu_id"); -// Integer sutuId = Integer.valueOf(sutuIdValue); -// game.setSutuId(sutuId); + map3.put("sign", "0DB011836143EEE2C2E072967C9F4E4B"); + map4.put("sign", "0DB011836143EEE2C2E072967C9F4E4B"); + map3.put("space_id", st.getId() + ""); + map4.put("space_id", st.getId() + ""); + map3.put("name", blue); + map4.put("name", red); + map3.put("city_code", city); + map4.put("city_code", city); + String s3 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addSpaceSutu", map3); + String s4 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addSpaceSutu", map4); + System.out.println("---------------------------"+s3); + JSONObject jsonObject = new JSONObject(s3); + JSONObject jsonObject1 = new JSONObject(s4); + // 获取 data 字段的值 + JSONObject dataObject = jsonObject.getJSONObject("data"); + JSONObject dataObject1 = jsonObject1.getJSONObject("data"); + // 获取 sutu_id 字段的值 + String sutuIdValue = dataObject.getString("sutu_id"); + String sutuIdValue1 = dataObject1.getString("sutu_id"); + Integer sutuId = Integer.valueOf(sutuIdValue); + Integer sutuId1 = Integer.valueOf(sutuIdValue1); + game.setBlue(""+sutuId); + game.setRed(""+sutuId1); + + // 生成设备二维码 + HashMap<String, String> blueCode = new HashMap<>(); + blueCode.put("scan_type", "1000"); + blueCode.put("sutu_id", ""+sutuId); + blueCode.put("space_id", st.getId() + ""); + + HashMap<String, String> redCode = new HashMap<>(); + redCode.put("scan_type", "1000"); + redCode.put("sutu_id", sutuId1+""); + redCode.put("space_id", st.getId() + ""); + String blueS= "{\"scan_type\": 1000, \"space_id\": "+st.getId()+", \"sutu_id\": "+sutuId+"}"; + String redS= "{\"scan_type\": 1000, \"space_id\": "+st.getId()+", \"sutu_id\": "+sutuId1+"}"; + MyQrCodeUtil.createCodeToFile(blueS); + MyQrCodeUtil.createCodeToFile(redS); + BufferedImage blueImage = QRCodeUtil.createImage(blueS); + BufferedImage redImage = QRCodeUtil.createImage(redS); + MultipartFile blueFile = convert(blueImage, new Date().getTime()+UUIDUtil.getRandomCode(3)+".PNG"); + MultipartFile redFile = convert(redImage, new Date().getTime()+UUIDUtil.getRandomCode(3)+".PNG"); + String s = OssUploadUtil.ossUpload("img/", blueFile); + String s1 = OssUploadUtil.ossUpload("img/", redFile); +// MultipartFile multipartFile = convert(blueImage); +// MultipartFile multipartFile1 = convert(redImage); +// +// String s = OssUploadUtil.ossUpload("img/", multipartFile); +// String s1 = OssUploadUtil.ossUpload("img/", multipartFile1); + game.setBlueCode(s); + game.setRedCode(s1); Integer gameId = ballClient.save(game); List<TGameConfig> gameConfigList = new ArrayList<>(); @@ -419,18 +517,18 @@ HashMap<String, String> map2 = new HashMap<>(); - map1.put("sign", "0DB011836143EEE2C2E072967C9F4E4B"); - map1.put("space_id", si.getId() + ""); - map1.put("device_id", red); - map1.put("region_id", st.getId() + ""); - // 添加门禁 - String s1 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addDevice", map1); - map2.put("sign", "0DB011836143EEE2C2E072967C9F4E4B"); - map2.put("space_id", si.getId() + ""); - map2.put("device_id", blue); - map2.put("region_id", st.getId() + ""); - // 添加门禁 - String s2 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addDevice", map2); +// map1.put("sign", "0DB011836143EEE2C2E072967C9F4E4B"); +// map1.put("space_id", si.getId() + ""); +// map1.put("device_id", red); +// map1.put("region_id", st.getId() + ""); +// // 添加门禁 +// String s1 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addDevice", map1); +// map2.put("sign", "0DB011836143EEE2C2E072967C9F4E4B"); +// map2.put("space_id", si.getId() + ""); +// map2.put("device_id", blue); +// map2.put("region_id", st.getId() + ""); +// // 添加门禁 +// String s2 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addDevice", map2); -- Gitblit v1.7.1