From 4f912f23e61912cb3195ca168f23bb521bf8b309 Mon Sep 17 00:00:00 2001
From: Mr.Shi <1878285526@qq.com>
Date: 星期四, 21 九月 2023 13:37:16 +0800
Subject: [PATCH] 企业端
---
h5/pages/index/index.vue | 56 +++++++++++
server/service/src/main/java/com/doumee/core/utils/ImageUtil.java | 172 ++++++++++++++++++++++++++++++++++
server/zhubo/src/main/resources/application.yml | 2
server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java | 4
output.jpg | 0
h5/utils/request.js | 2
server/zhubo/src/main/java/com/doumee/api/business/WebParamController.java | 1
h5/package-lock.json | 7 +
h5/apis/index.js | 2
server/platform/src/main/resources/application.yml | 2
10 files changed, 240 insertions(+), 8 deletions(-)
diff --git a/h5/apis/index.js b/h5/apis/index.js
index c98a957..a0a8c4c 100644
--- a/h5/apis/index.js
+++ b/h5/apis/index.js
@@ -31,7 +31,7 @@
}
// 鐧诲綍
-export function loginH5(data) {
+export function loginH5(data){
return post('system/loginH5', data)
}
diff --git a/h5/package-lock.json b/h5/package-lock.json
index f54d67b..839857b 100644
--- a/h5/package-lock.json
+++ b/h5/package-lock.json
@@ -1,4 +1,5 @@
{
+<<<<<<< HEAD
"requires": true,
"lockfileVersion": 1,
"dependencies": {
@@ -22,4 +23,10 @@
"integrity": "sha512-TlhdSp2oEOLFXvEp4psKaeTjR5zBjTRcM/sHUN8PkV1UWuY8HKC8n7GaVdW5Xqnwdr/F1OmzLik1QwDjI4w/nw=="
}
}
+=======
+ "name": "h5",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {}
+>>>>>>> 1ee5043af9ee5e53acb52a70fd93c4656e8bbb44
}
diff --git a/h5/pages/index/index.vue b/h5/pages/index/index.vue
index 2df63d8..3a3651d 100644
--- a/h5/pages/index/index.vue
+++ b/h5/pages/index/index.vue
@@ -230,7 +230,12 @@
</view>
</view>
<view class="productPage_parameter_item_content_nr">
- <view class="item" v-for="(child, i) in item.goodsParamList" :key="i">
+ <view class="item" v-if="item.param1" v-for="(child, i) in item.param1" :key="child.index">
+ <view class="label">{{child.name}}锛�</view>
+ <view class="value">{{child.val}}</view>
+ </view>
+ <view v-if="item.param2" class="paramline"></view>
+ <view class="item" v-if="item.param2" v-for="(child, j) in item.param2" :key="child.index">
<view class="label">{{child.name}}锛�</view>
<view class="value">{{child.val}}</view>
</view>
@@ -858,6 +863,51 @@
this.leftShop = JSON.parse(JSON.stringify(val))
} else if (this.$refs.search.typeName === 'right') {
this.rightShop = JSON.parse(JSON.stringify(val))
+ let leftParamList = this.leftShop.goodsParamList;
+ let rightParamList = this.rightShop.goodsParamList;
+ let leftList1 = new Array();
+ let leftList2 = new Array();
+ let rightList1 = new Array();
+ let rightList2 = new Array();
+ if(leftParamList && leftParamList.length>0){
+ leftParamList.forEach(item => {
+ let flag =0;
+ let rightTemp = null;
+ if(rightParamList && rightParamList.length>0){
+ rightParamList.forEach(item1 => {
+ if (item.name === item1.name ) {
+ flag =1;
+ rightTemp = item1;
+ return;
+ }
+ })
+ }
+ if(flag === 1){
+ leftList1.push(item);
+ rightList1.push(rightTemp);
+ }else{
+ leftList2.push(item);
+ }
+ })
+ }
+ if(rightParamList && rightParamList.length>0){
+ rightParamList.forEach(item=> {
+ let flag1 = 0;
+ rightList1.forEach(item1 => {
+ if (item.name === item1.name ) {
+ flag1 =1;
+ //return;
+ }
+ })
+ if(flag1 === 0){
+ rightList2.push(item);
+ }
+ })
+ }
+ Reflect.set(this.leftShop, "param1",leftList1);
+ Reflect.set(this.leftShop, "param2",leftList2);
+ Reflect.set(this.rightShop, "param1",rightList1);
+ Reflect.set(this.rightShop, "param2",rightList2);
} else {
this.shopList.push(JSON.parse(JSON.stringify(val)))
}
@@ -1805,6 +1855,10 @@
margin-top: 12px;
display: flex;
flex-direction: column;
+ .paramline{
+ border-bottom: #c7c9ce 2px dashed;
+ margin-bottom: 15px;
+ }
.item {
display: flex;
align-items: flex-start;
diff --git a/h5/utils/request.js b/h5/utils/request.js
index 1f27e12..c0e9ba0 100644
--- a/h5/utils/request.js
+++ b/h5/utils/request.js
@@ -16,7 +16,7 @@
// http://127.0.0.1/interface/ http://192.168.0.15:10024/ preselect_web_interface
// https://dmtest.ahapp.net/preselect_web_interface/${url} http://127.0.0.1:10022/ http://192.168.0.35:10024/
uni.request({
- url: `http://192.168.0.15:10024/${url}`,
+ url: `http://192.168.0.35:10024/${url}`,
method,
data,
header: {
diff --git a/output.jpg b/output.jpg
new file mode 100644
index 0000000..29f702b
--- /dev/null
+++ b/output.jpg
Binary files differ
diff --git a/server/platform/src/main/resources/application.yml b/server/platform/src/main/resources/application.yml
index 91e823b..bf924e8 100644
--- a/server/platform/src/main/resources/application.yml
+++ b/server/platform/src/main/resources/application.yml
@@ -11,7 +11,7 @@
# application:
# name: doumeemes
profiles:
- active: pro
+ active: dev
# JSON杩斿洖閰嶇疆
jackson:
diff --git a/server/service/src/main/java/com/doumee/core/utils/ImageUtil.java b/server/service/src/main/java/com/doumee/core/utils/ImageUtil.java
new file mode 100644
index 0000000..be93da1
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/core/utils/ImageUtil.java
@@ -0,0 +1,172 @@
+package com.doumee.core.utils;
+import java.awt.*;
+import java.awt.image.BufferedImage;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.HttpURLConnection;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import javax.imageio.ImageIO;
+import javax.imageio.ImageWriter;
+import javax.imageio.stream.ImageOutputStream;
+import javax.net.ssl.HttpsURLConnection;
+
+public class ImageUtil {
+ private static List<File> fileList = new ArrayList<>();
+
+ public static void main(String[] args) {
+ //convertAllImages("F:\\before.png", "F:\\after.png");
+ fileList.add(new File("C:\\Users\\T14\\Desktop\\1\\1.jpg"));
+ convertAllImages(fileList);
+ }
+
+ /**
+ * 鍘婚櫎鏂囦欢鍒楄〃閲屽浘鐗囩殑姘村嵃骞舵浛鎹�
+ *
+ * @Param fileList 鏂囦欢鍒楄〃
+ */
+ public static void convertAllImages(List<File> fileList) {
+ try {
+ for (File file : fileList) {
+ if (!file.getName().endsWith("png") && !file.getName().endsWith("jpg")) {
+ continue;
+ }
+ BufferedImage bi = ImageIO.read(file); //鐢↖mageIO娴佽鍙栧儚绱犲潡
+ if (bi != null) {
+ removeWatermark(bi);
+ String formatName = file.getName().substring(file.getName().lastIndexOf(".") + 1);//鐢熸垚鐨勫浘鐗囨牸寮�
+ ImageIO.write(bi, formatName, file);//鐢↖mageIO娴佺敓鎴愮殑澶勭悊鍥炬浛鎹㈠師鍥剧墖
+ }
+ }
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * 浠庢簮鐩綍鑾峰彇鍥剧墖澶勭悊鍚庡鍑哄埌鐩爣鐩綍
+ *
+ * @param dir 婧愮洰褰�
+ * @param saveDir 鐩爣鐩綍
+ */
+ private static void convertAllImages(String dir, String saveDir) {
+ File dirFile = new File(dir);
+ File saveDirFile = new File(saveDir);
+ dir = dirFile.getAbsolutePath();
+ saveDir = saveDirFile.getAbsolutePath();
+ loadImages(new File(dir));
+ for (File file : fileList) {
+ String filePath = file.getAbsolutePath();
+ String dstPath = saveDir + filePath.substring(filePath.indexOf(dir) + dir.length());
+ replace(file.getAbsolutePath(), dstPath);
+ }
+ }
+
+ /**
+ * 鍔犺浇鍥剧墖
+ */
+ private static void loadImages(File f) {
+ if (f != null) {
+ if (f.isDirectory()) {
+ File[] fileArray = f.listFiles();
+ if (fileArray != null) {
+ for (File file : fileArray) {
+ loadImages(file); //閫掑綊璋冪敤
+ }
+ }
+ } else {
+ String name = f.getName();
+ if (name.endsWith("png") || name.endsWith("jpg")) {
+ fileList.add(f);
+ }
+ }
+ }
+ }
+
+ /**
+ * 鐢熸垚婧愬浘鐗囩殑澶勭悊鍥�
+ *
+ * @param srcFile 婧愬浘鐗囪矾寰�
+ * @param dstFile 鐩爣鍥剧墖璺緞
+ */
+ private static void replace(String srcFile, String dstFile) {
+ try {
+ URL http;
+ if (srcFile.trim().startsWith("https")) {
+ http = new URL(srcFile);
+ HttpsURLConnection conn = (HttpsURLConnection) http.openConnection();
+ conn.setRequestMethod("GET");
+ } else if (srcFile.trim().startsWith("http")) {
+ http = new URL(srcFile);
+ HttpURLConnection conn = (HttpURLConnection) http.openConnection();
+ conn.setRequestMethod("GET");
+ } else {
+ http = new File(srcFile).toURI().toURL();
+ }
+ BufferedImage bi = ImageIO.read(http.openStream());
+ if (bi != null) {
+ removeWatermark(bi);
+ exportImage(bi, srcFile, dstFile);
+ }
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * 鐢盜mageIO娴佺敓鎴愭簮鍥剧墖鐨勫鐞嗗浘
+ *
+ * @param bi ImageIO
+ * @param fileName 婧愬浘鐗囧甫鍚庣紑鐨勬枃浠跺悕
+ * @param dstFile 鐩爣鍥剧墖璺緞
+ */
+ private static void exportImage(BufferedImage bi, String fileName, String dstFile) {
+ try {
+ String type = fileName.substring(fileName.lastIndexOf(".") + 1);
+ Iterator<ImageWriter> it = ImageIO.getImageWritersByFormatName(type);
+ ImageWriter writer = it.next();
+ File f = new File(dstFile);
+ ImageOutputStream ios = ImageIO.createImageOutputStream(f);
+ writer.setOutput(ios);
+ writer.write(bi);
+ bi.flush();
+ ios.flush();
+ ios.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * 鍘婚櫎姘村嵃
+ */
+ private static void removeWatermark(BufferedImage bi) {
+ Color wColor = new Color(197, 196, 191);
+ Color hColor = new Color(140, 88, 100);
+// Color wColor = new Color(254, 254, 254);
+// Color hColor = new Color(197, 196, 191);
+ //鐧藉簳姘村嵃
+ for (int i = 0; i < bi.getWidth(); i++) {
+ for (int j = 0; j < bi.getHeight(); j++) {
+ int color = bi.getRGB(i, j);
+ Color oriColor = new Color(color);
+ int red = oriColor.getRed();
+ int greed = oriColor.getGreen();
+ int blue = oriColor.getBlue();
+ if (red == 254 && greed == 254 && blue == 254) {
+ continue;
+ }
+ if (red > 220 && greed > 180 && blue > 80) {
+ bi.setRGB(i, j, wColor.getRGB());
+ }
+ if (red <= 240 && greed >= 200 && blue >= 150) {
+ bi.setRGB(i, j, wColor.getRGB());
+ }
+ }
+ }
+ }
+}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
index 118f433..f6890ba 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
@@ -300,7 +300,7 @@
for(BaseData data :result.getRecords()){
//澶氬浘锛岃嫳鏂囬�楀彿闅斿紑
if(StringUtils.isNotBlank(data.getBgImg())){
- String tImg = data.getBgImg().replace("锛�", ",").replace(".avif", "").replace("/n1/jfs/", "/n0/jfs/");
+ String tImg = data.getBgImg().replace("锛�", ",").replace(".avif", "").replace("/n1/jfs/", "/imgzone/jfs/");
String[] imgs =tImg.split(",");
data.setBgImgs(imgs);
@@ -462,7 +462,7 @@
private int addImg(int i,OssModel ossModel, Integer id,String bgImg,List<Multifile> fileList,List<FileRecord> fileRecords) {
if(StringUtils.isNotBlank(bgImg)){
- bgImg = bgImg.replace("/n1/jfs/", "/n0/jfs/");
+ bgImg = bgImg.replace("/n1/jfs/", "/imgzone/jfs/");
// String img =getOssImgurl(ossModel, ossModel.getGoodsFolder() ,bgImg);
String img = getOssImgurlFile(ossModel.getGoodsFolder(), bgImg, null,Constants.TWO,fileRecords);
if(StringUtils.isNotBlank(img)){
diff --git a/server/zhubo/src/main/java/com/doumee/api/business/WebParamController.java b/server/zhubo/src/main/java/com/doumee/api/business/WebParamController.java
index 47ef372..7e7bb5a 100644
--- a/server/zhubo/src/main/java/com/doumee/api/business/WebParamController.java
+++ b/server/zhubo/src/main/java/com/doumee/api/business/WebParamController.java
@@ -31,7 +31,6 @@
@Autowired
private WebParamService webParamService;
-
@ApiOperation("鑾峰彇褰撳墠鐧诲綍浼佷笟閰嶇疆淇℃伅")
@GetMapping("/getByLogin")
public ApiResponse<WebParam> getByLogin() {
diff --git a/server/zhubo/src/main/resources/application.yml b/server/zhubo/src/main/resources/application.yml
index 4fb560e..cfb19a6 100644
--- a/server/zhubo/src/main/resources/application.yml
+++ b/server/zhubo/src/main/resources/application.yml
@@ -11,7 +11,7 @@
# application:
# name: doumeemes
profiles:
- active: pro
+ active: dev
# JSON杩斿洖閰嶇疆
jackson:
--
Gitblit v1.9.3