From 3c62621bca38204b192d898bbc3efb146d807036 Mon Sep 17 00:00:00 2001 From: 77 <270260644@qq.com> Date: Thu, 7 Nov 2024 12:58:08 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=88=9D=E6=AD=A5=E5=AE=8C=E6=88=90?= =?UTF-8?q?=E9=AD=94=E6=96=B9=E4=B8=8E=E5=B0=8F=E7=A8=8B=E5=BA=8F=E7=9A=84?= =?UTF-8?q?=E4=BA=92=E9=80=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DiyEditor/components/mobile/MenuGridTow/index.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yudao-admin-vue3/src/components/DiyEditor/components/mobile/MenuGridTow/index.vue b/yudao-admin-vue3/src/components/DiyEditor/components/mobile/MenuGridTow/index.vue index b7cf31d..68f7b1e 100644 --- a/yudao-admin-vue3/src/components/DiyEditor/components/mobile/MenuGridTow/index.vue +++ b/yudao-admin-vue3/src/components/DiyEditor/components/mobile/MenuGridTow/index.vue @@ -112,7 +112,7 @@ defineProps<{ property: MenuGridProperty }>() border-radius: 5px; margin: 0 auto; padding: 5px 0; - margin-top: 10px; + // margin-top: 10px; padding-bottom: 10px; padding-top: 10px; &>.t { -- 2.45.2 From b2a10eb187cf74c5bbc984ffda0bcfe9b4150ce0 Mon Sep 17 00:00:00 2001 From: 77 <270260644@qq.com> Date: Thu, 7 Nov 2024 16:01:15 +0800 Subject: [PATCH 2/4] =?UTF-8?q?1=E3=80=81=E6=B7=BB=E5=8A=A0=E4=B8=BB?= =?UTF-8?q?=E9=A2=98=E9=A3=8E=E6=A0=BC=E7=9A=84=E6=A0=B7=E5=BC=8F2?= =?UTF-8?q?=E3=80=81=E6=B7=BB=E5=8A=A0=E5=95=86=E5=93=81=E5=88=86=E7=B1=BB?= =?UTF-8?q?=E7=9A=84=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../diy/template/ProductCategory.vue | 109 ++++++++++++ .../promotion/diy/template/ThemeStyle.vue | 162 ++++++++++++++++++ 2 files changed, 271 insertions(+) create mode 100644 yudao-admin-vue3/src/views/mall/promotion/diy/template/ProductCategory.vue create mode 100644 yudao-admin-vue3/src/views/mall/promotion/diy/template/ThemeStyle.vue diff --git a/yudao-admin-vue3/src/views/mall/promotion/diy/template/ProductCategory.vue b/yudao-admin-vue3/src/views/mall/promotion/diy/template/ProductCategory.vue new file mode 100644 index 0000000..c2e4808 --- /dev/null +++ b/yudao-admin-vue3/src/views/mall/promotion/diy/template/ProductCategory.vue @@ -0,0 +1,109 @@ + + + + \ No newline at end of file diff --git a/yudao-admin-vue3/src/views/mall/promotion/diy/template/ThemeStyle.vue b/yudao-admin-vue3/src/views/mall/promotion/diy/template/ThemeStyle.vue new file mode 100644 index 0000000..5682c39 --- /dev/null +++ b/yudao-admin-vue3/src/views/mall/promotion/diy/template/ThemeStyle.vue @@ -0,0 +1,162 @@ + + + + \ No newline at end of file -- 2.45.2 From 04decd7050573a0b0560d9e7a016a5aa309fac3a Mon Sep 17 00:00:00 2001 From: 77 <270260644@qq.com> Date: Thu, 7 Nov 2024 17:54:06 +0800 Subject: [PATCH 3/4] =?UTF-8?q?1=E3=80=81=E8=A7=A3=E5=86=B3=E9=80=89?= =?UTF-8?q?=E4=B8=AD=E8=87=AA=E5=AE=9A=E4=B9=89=E9=A1=B5=E9=9D=A2=E7=9A=84?= =?UTF-8?q?=E6=8C=89=E9=92=AE=E5=AF=BC=E8=87=B4=E5=85=A8=E9=83=A8=E9=80=89?= =?UTF-8?q?=E4=B8=AD=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/AppLinkInput/AppLinkSelectDialog.vue | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/yudao-admin-vue3/src/components/AppLinkInput/AppLinkSelectDialog.vue b/yudao-admin-vue3/src/components/AppLinkInput/AppLinkSelectDialog.vue index 762ee96..683a013 100644 --- a/yudao-admin-vue3/src/components/AppLinkInput/AppLinkSelectDialog.vue +++ b/yudao-admin-vue3/src/components/AppLinkInput/AppLinkSelectDialog.vue @@ -24,7 +24,7 @@ :content="appLink.path" placement="bottom" :show-after="300"> {{ appLink.name }} @@ -109,9 +109,14 @@ // 处理 APP 链接选中 const handleAppLinkSelected = (appLink : AppLink) => { - if (!isSameLink(appLink.path, activeAppLink.value.path)) { - activeAppLink.value = appLink - console.log(activeAppLink.value,activeAppLink.value.path,"activeAppLink.value") + if(!appLink.path.includes('/pages/index/page')){ + if (!isSameLink(appLink.path, activeAppLink.value.path)) { + activeAppLink.value = appLink + // console.log(activeAppLink.value,activeAppLink.value.path,"activeAppLink.value") + } + }else{ + activeAppLink.value.path = appLink.path + console.log(activeAppLink.value.path,"activeAppLink.value.path") } switch (appLink.type) { case APP_LINK_TYPE_ENUM.PRODUCT_CATEGORY_LIST: -- 2.45.2 From 0c8dd4cbe9f471b8208addd703088a93e758e4de Mon Sep 17 00:00:00 2001 From: sonjinyon <2476687577@qq.com> Date: Fri, 8 Nov 2024 17:37:37 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E7=B4=A0=E6=9D=90=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E6=B7=BB=E5=8A=A0=E5=9B=BE=E5=BD=A2=E8=A1=A8?= =?UTF-8?q?=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yudao-admin-vue3/src/assets/imgs/liebiao.png | Bin 0 -> 2873 bytes yudao-admin-vue3/src/assets/imgs/tubiao.png | Bin 0 -> 3746 bytes .../src/views/infra/file/index.vue | 92 +++++++++++++----- .../src/views/infra/file/updateForm.vue | 2 - .../redis/RedisWebSocketMessageConsumer.java | 2 + .../service/kefu/KeFuMessageServiceImpl.java | 4 +- 6 files changed, 72 insertions(+), 28 deletions(-) create mode 100644 yudao-admin-vue3/src/assets/imgs/liebiao.png create mode 100644 yudao-admin-vue3/src/assets/imgs/tubiao.png diff --git a/yudao-admin-vue3/src/assets/imgs/liebiao.png b/yudao-admin-vue3/src/assets/imgs/liebiao.png new file mode 100644 index 0000000000000000000000000000000000000000..49c5948616f7dbb58f6e95c778fa052e8780e8dd GIT binary patch literal 2873 zcmds3`#aO^AD>Ud2g#5_Av0{!BIU3Ww%HtWK8+-olv0^P4ok8Pg(<^R4pS5i!P73b}UhdknI&p;sZB4+~5Hz{Pk)Gg<5fEu;uJ5+h6 zv4YA-&$+(hMM#D;T>LD}wPQLdAvgELkbexrV}diYWuBB0AQZ?yKVuLL*V5AL=*8el8fV`Kwg2EIb%Ij-NbS9f(6lSCwh7hP5Mc zL)M)Oae@?ARuKk7XHyf!jKl3W$fuX8p@C;D>#wQ3SI=uNspMiq+n^>M$T~}-?1SdD zF3hN=m2?cn$b8$Z9_$LW5Vck@KGwT_09SW{@`I%4_ToH9FxWFK>B;^XfzN-e4!p#*e(dk*{G?QE7|e7RDK9Q1 zIjIccLwAB0N~In8CRlAqVt#iQ?dg$*`Ft>ma7 zZy|7!j9B`kH(gR56iEFl>=?124ARg1o}2Q@dfCU#I}HBV3E;2gE<0G;^-uaLcq0$@ zlqg~H3QD+=msN(cd1;3!w=SZ+oSAiPR}w^eUk#>bCK0X7O#uI8JI8A=TutSgbR)uf zh~3Zl&CY4YcjqM%I6w%UCM?W;?uheSen4c_WhOMGOv(tqE|1%x5ajA0%|)0e?B`w8 zWljJ)`Mmk|Bi`H=WThqUk$_UuzwX(-rj+?~$x46S)L*9{EO!HBqsL`^gctv`L0|N- zs%iwi6Z7U|X(TAjK%KIL#6fWRnySPX2rB#uufR$U0Q0#;MtjwzpjpJ5Y-bpjY4C!O z_XLDHp_eAz=n%Sr88SPE2*HKrp~xx{kt{Q>a5Mm_Fb+}*;8eJCP8Q;rGL}i2>|#Ns zpw3~3wr*oU=v;({z(69Ra_lzmf8gpO7ToGn(nQ~{L%%p**dIoTQ`b>)-COr-0Pfsm zR4x0~;)^zhDd$|w4(CXl=ugA@SFctlvO+#M-r&6!85P;+MehbeCW$DqP*Ldd>sZoa zZM@fgB6DzXuzgpdX^IcQeZWt14O5rT{>xf9irh4 zNq>e1#u*og+{4{ir5NxPi>mrwJ+Sdkp)dnk7{YX)y)0O3vT)9#wc_P4%V$zC{yGng zaYG~XBc&{H>@Bza&43!1^yz8JY4cUTX?0`Vvp|s}A~xdW-XVK9f+k$0ELQifx6$VW zZ#V{sE4|?ocMyR7t}%T_Jb6P#p-y0Xo)xFq96~HLua1YZ%LL69&osYT>>@F*JY1oe z#<~O`ykMD*ty!hhpF0xmjY0KFRztJNc#FzEp4|d0EMBw~M>_2WRq%|4EL9Q}exbu< zUDGUBjBgH$$&304y0X7#1XsqftQIS{Q7eqb*N2xr<8FPdK#%b?MCFg6+y_WGU8IBS z(dh@s06yZzP~f82q=J3QS`Xki)^o;w_Lt@3^F6>(`C_y4z%dmxS``_0ER4gdXjd z5Tx+{KzksEiOKa_>As^5-H(B(>UoB=k|Rw=2PIi^f-;4<2^w_&?iSkH!>~{UuEB#7 zPkO4V7PnSS-9EAljL7BnBUAR!;x^b%EzDhZWh%LG&x2f~{wz=ufdIqSik?W4jSmkHG>y+RHrUUGezQ)+ zbqBl;2(L@olhl`C2&e`IYE4pB5EHM;Mr%o*`3H$*#ij~{nXULJ(SrPQEw-z9k_#mT zC{g$p8!)&neEGCLMd!IvMM$dULlOX#)L#yQ@e!_jVqA)fsZ&y8f~ouacp-aw2q$hT zD@-V3`g<5|XIEY5a~u29GU?c7TSjGmLK_D&3tNpjXZ@`t_@{0rZaQ zeqY&*$*Rd~ZOnRj=92B#cc!Ul>2rqfIPHGoH-EJ^B{n|o_nY|k{)+{)TQ>Exu6gji zr4dnv+;fOtG!q=SD6`)wdRiI)pPNBwvyxeDixLP2J0Z|>P)yqNQ|0675W40z^Rr(- rc;;0tF9!+a;rgqtLg@b@xvufogst$4!ZFDx41qWk-3gEIq4fU%0F&ud literal 0 HcmV?d00001 diff --git a/yudao-admin-vue3/src/assets/imgs/tubiao.png b/yudao-admin-vue3/src/assets/imgs/tubiao.png new file mode 100644 index 0000000000000000000000000000000000000000..7b76ca448e1f59ae42c3f84ae2ba35503e7229ad GIT binary patch literal 3746 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 b0sG?Ho9C{p-B<}cHk~N^RWnSPp(FA?IRDn@ literal 0 HcmV?d00001 diff --git a/yudao-admin-vue3/src/views/infra/file/index.vue b/yudao-admin-vue3/src/views/infra/file/index.vue index f2c18c9..16ef83c 100644 --- a/yudao-admin-vue3/src/views/infra/file/index.vue +++ b/yudao-admin-vue3/src/views/infra/file/index.vue @@ -34,14 +34,6 @@
- @@ -63,12 +55,15 @@ 上传文件 + + + - - - + + + - + +
+ +
+
+ 图表 +
+
+
+ + + @@ -169,6 +167,8 @@ const dialogVisibles = ref(false) // 弹窗的是否展示 const dialogTitles = ref('') // 弹窗的标题 const formLoading = ref(false) // 表单的加载中:1)修改时的数据加载;2)提交的按钮禁用 + const panduan = ref('1') + const tubiaoData = ref([]); const formData = ref({ id: undefined, sort: undefined, @@ -210,17 +210,37 @@ try { const data = await FileApi.getFilePage(queryParams) list.value = data.list + tubiaoData.value = data.list + console.log('111111',tubiaoData) total.value = data.total } finally { loading.value = false } } + interface FileDataVO { + id: string + configId: string + path: string + name: string + url: string + type: string + picType: string + size: string + createTime: Date + } + + const tubiao = () => { + panduan.value = '2' + } + + const liebiao = () => { + panduan.value = '1' + } //新增分类 const createType = () => { dialogVisibles.value = true dialogTitles.value = '新增分类' - } /** 添加分类菜单 */ @@ -291,7 +311,6 @@ const getTypeList = async () => { const data = await DictDataApi.getTypeList() typeMenu.value = data - console.log('1111111111', typeMenu) } @@ -373,4 +392,29 @@ overflow-y: auto; /* 允许内容区域滚动 */ } - \ No newline at end of file + + + /* 图片容器样式 */ + .image-container { + display: flex; + flex-wrap: wrap; + gap: 10px; /* 设置图片之间的间距 */ + justify-content: flex-start; /* 如果图片少于5张,会平均分布 */ + max-width: 1000px; /* 设置外部容器的最大宽度 */ + margin: 0 auto; /* 居中显示 */ + } + + /* 每张图片占用的宽度,使每行显示5张 */ + .image-item { + width: calc(20% - 8px); /* 宽度设为容器的20%,减去间距 */ + } + + /* 设置图片的最大宽度 */ + .image-item img { + width: 100%; + height: auto; + border-radius: 8px; /* 图片边缘圆角(可选) */ + } + + + diff --git a/yudao-admin-vue3/src/views/infra/file/updateForm.vue b/yudao-admin-vue3/src/views/infra/file/updateForm.vue index eb3d1a7..b434df8 100644 --- a/yudao-admin-vue3/src/views/infra/file/updateForm.vue +++ b/yudao-admin-vue3/src/views/infra/file/updateForm.vue @@ -92,8 +92,6 @@ const open = async (type: string, ids: number, picTypes: number) => { formLoading.value = true id.value = ids picType.value = picTypes - console.log('11111',ids) - console.log('2222',picType.value) formLoading.value = false } } diff --git a/yudao-framework/yudao-spring-boot-starter-websocket/src/main/java/cn/iocoder/yudao/framework/websocket/core/sender/redis/RedisWebSocketMessageConsumer.java b/yudao-framework/yudao-spring-boot-starter-websocket/src/main/java/cn/iocoder/yudao/framework/websocket/core/sender/redis/RedisWebSocketMessageConsumer.java index abce006..6323423 100644 --- a/yudao-framework/yudao-spring-boot-starter-websocket/src/main/java/cn/iocoder/yudao/framework/websocket/core/sender/redis/RedisWebSocketMessageConsumer.java +++ b/yudao-framework/yudao-spring-boot-starter-websocket/src/main/java/cn/iocoder/yudao/framework/websocket/core/sender/redis/RedisWebSocketMessageConsumer.java @@ -18,6 +18,8 @@ public class RedisWebSocketMessageConsumer extends AbstractRedisChannelMessageLi redisWebSocketMessageSender.send(message.getSessionId(), message.getUserType(), message.getUserId(), message.getMessageType(), message.getMessageContent()); + System.out.println("11111111111111111111 : " + message.toString()); + } } diff --git a/yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/kefu/KeFuMessageServiceImpl.java b/yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/kefu/KeFuMessageServiceImpl.java index 52f930c..0f60f06 100644 --- a/yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/kefu/KeFuMessageServiceImpl.java +++ b/yudao-module-mall/yudao-module-promotion-biz/src/main/java/cn/iocoder/yudao/module/promotion/service/kefu/KeFuMessageServiceImpl.java @@ -165,7 +165,7 @@ public class KeFuMessageServiceImpl implements KeFuMessageService { @Async public void sendAsyncMessageToMembers(Long userId, String messageType, Object content) { - webSocketSenderApi.sendObject(UserTypeEnum.MEMBER.getValue(), userId, messageType, content); + webSocketSenderApi.sendObject(UserTypeEnum.ADMIN.getValue(), userId, messageType, content); } @Async @@ -175,7 +175,7 @@ public class KeFuMessageServiceImpl implements KeFuMessageService { @Async public void sendAsyncMessageToAdmins(String messageType, Object content) { - webSocketSenderApi.sendObject(UserTypeEnum.MEMBER.getValue(), messageType, content); + webSocketSenderApi.sendObject(UserTypeEnum.ADMIN.getValue(), messageType, content); } @Override -- 2.45.2