130 Commits
v1.3.4 ... 1.4

Author SHA1 Message Date
daZongZi
f3a0963599 reset H5 pwd 2025-08-04 16:48:17 +08:00
daZongZi
e649a912de success readme done 2025-07-31 17:29:20 +08:00
daZongZi
f7014466ab Merge branch 'master' into 1.4 2025-07-31 16:50:33 +08:00
daZongZi
8fdd9a3bbe success readme 2025-07-31 16:50:14 +08:00
daZongZi
b65741320c Merge branch 'master' into 1.4
# Conflicts:
#	crmeb/crmeb-common/src/main/java/com/zbkj/common/utils/CrmebUtil.java
#	crmeb/sql/Crmeb_1.3.4.sql
2025-07-31 16:47:46 +08:00
daZongZi
61f61b66b5 success Pwd 2025-07-31 16:29:40 +08:00
zzp
15c340fd4d 后端代码提交 2025-06-24 16:36:16 +08:00
zzp
9c139cb43f 后端代码提交 2025-06-24 16:23:52 +08:00
超凡
35fec82e4a feat:v1.4前端更新 2025-06-24 14:43:09 +08:00
daZongZi
0268aa5033 马上放五一假了,程序员是在加班还是出去玩了? 2025-04-15 09:34:00 +08:00
guaishoudemao
e6e4327fdf fix:修改版本号 2025-03-11 10:49:25 +08:00
daZongZi
b0678e772f 修复 XML 有可能出现的注入风险 2025-01-17 18:15:00 +08:00
daZongZi
451c9587c0 祝看到的程序员 2025 写代码没bug 2025-01-08 16:39:05 +08:00
daZongZi
f4c9462bc8 2025 祝愿看到的老板赚大钱,看到的程序员0 bug 2025-01-07 17:57:55 +08:00
daZongZi
cd42e4d119 欢迎体验Java多商户版本
平台端 http://admimplat.merchant.java.crmeb.net/
demo / crmeb.com

商户端 http://adminmer.merchant.java.crmeb.net/
18292417675 / 000000

H5商城 https://h5.merchant.java.crmeb.net/
2024-11-14 14:48:06 +08:00
daZongZi
ab6457d0f0 多商户演示站点
平台端 http://admimplat.merchant.java.crmeb.net/
demo / crmeb.com

商户端 http://adminmer.merchant.java.crmeb.net/
18292417675 / 000000

H5商城 https://h5.merchant.java.crmeb.net/
2024-11-14 11:36:18 +08:00
daZongZi
b7ad7da4a8 CRMEB 双十一狂欢购
巅峰钜惠,正式开玩

11月7日-12日

狂欢大抽奖火热进行中

AppleiPad mini🍎山地自行车🚲️

人体工学护腰坐垫...多种劲爆大奖等着你!

还有秒杀折扣+抽奖优惠券,双重优惠

快来拼运气,双十一省出新高度!
2024-11-08 15:42:40 +08:00
聆听
99dedfb36e update README.md.
Signed-off-by: 聆听 <sugar1569@vip.qq.com>
2024-09-27 01:14:47 +00:00
聆听
80cd315b44 update README.md.
Signed-off-by: 聆听 <sugar1569@vip.qq.com>
2024-09-27 01:06:52 +00:00
聆听
f898ada8f1 update README.md.
Signed-off-by: 聆听 <sugar1569@vip.qq.com>
2024-09-27 01:04:00 +00:00
聆听
fe66f46321 update README.md.
Signed-off-by: 聆听 <sugar1569@vip.qq.com>
2024-09-27 01:01:54 +00:00
聆听
c42831c122 update README.md.
Signed-off-by: 聆听 <sugar1569@vip.qq.com>
2024-09-27 01:00:20 +00:00
聆听
3a2892af9b update README.md.
Signed-off-by: 聆听 <sugar1569@vip.qq.com>
2024-09-27 00:58:46 +00:00
18292417675
005e992d41 环境使用CRMEB java 开源商城 2024-09-19 16:51:43 +08:00
18292417675
cb2d80306b 欢迎使用Crmeb Java 2024-09-19 16:48:07 +08:00
大粽子
35c819ad85 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2024-09-19 08:42:21 +00:00
大粽子
f3efed1c8a update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2024-09-19 08:42:07 +00:00
18292417675
05f2e07c09 Merge branch 'master' of https://gitee.com/ZhongBangKeJi/crmeb_java
* 'master' of https://gitee.com/ZhongBangKeJi/crmeb_java:
  update README.md.
  update LICENSE.
2024-09-19 16:36:34 +08:00
18292417675
d24dbded15 欢迎使用 Crmeb Java 开源商城 2024-09-19 16:36:22 +08:00
聆听
42861506f1 update README.md.
Signed-off-by: 聆听 <sugar1569@vip.qq.com>
2024-09-07 06:51:44 +00:00
聆听
7b23b704a7 update LICENSE.
Signed-off-by: 聆听 <sugar1569@vip.qq.com>
2024-09-07 06:49:15 +00:00
18292417675
0b7acb5aeb 最新的系统介绍和安装前必读 2024-08-26 09:41:35 +08:00
18292417675
da7af2c483 Java 多商户 v1.6 版本正式发布 https://www.crmeb.com/ask/thread/46123 2024-06-26 14:40:20 +08:00
18292417675
b4df491c34 多商户 1.6 版本准备正式发布 2024-06-20 14:12:12 +08:00
18292417675
6bb5a52361 多商户 1.6 版本准备正式发布 2024-06-20 14:11:27 +08:00
18292417675
f40497cf97 多商户 1.6 版本准备发布 2024-06-20 14:07:41 +08:00
18292417675
6f54fc97de 多商户 1.6 版本 准备正式发布 https://crmeb.com/ask/thread/45797 2024-06-20 12:20:23 +08:00
18292417675
5bc0280b56 1.6 正式版准备发布,详情查看 https://crmeb.com/ask/thread/45797 2024-06-20 12:14:19 +08:00
18292417675
8ca7e4cc3b java 多商户 1.6 版本更新 2024-06-19 14:37:44 +08:00
18292417675
f24d6b0deb CRMEB JAVA 618 活动莫错过年度最低 2024-06-13 15:11:49 +08:00
18292417675
b88871f6c3 修复NVDB 检测漏洞 2024-04-23 10:43:35 +08:00
18292417675
f56870bc5d 验证ios 和 android app 后 clear code 和 没有匹配到的平台匹配 2024-04-19 17:01:44 +08:00
hetian
1e3d2da804 v1.0 2024-03-29 09:26:47 +08:00
hetian
4c01405fdf nh 2024-03-12 16:43:27 +08:00
hetian
b941f3feeb Merge branch '20230906_hdq' of https://gitee.com/xazbkj/javaopensource 2024-03-12 14:18:34 +08:00
stivepeim
481a08e01d 1. 删除压缩包代码
2. 替换当前hdq 分支app 的代码为 压缩包中的文件
2024-03-12 10:23:35 +08:00
stivepeim
ef4b5b165c Merge branch 'master' of https://gitee.com/xazbkj/javaopensource
* 'master' of https://gitee.com/xazbkj/javaopensource:
  删除文件 app1
  app
  Create /app1
2024-03-11 17:49:10 +08:00
stivepeim
533ec84d35 修复 国家信息安全漏洞共享平台(CNVD) 测试出的可能出现Sql 注入的问题 2024-03-11 17:48:50 +08:00
何天
e4ba375901 app 2024-03-11 02:49:37 +00:00
何天
2af823b34a 删除文件 app1 2024-03-11 02:48:41 +00:00
何天
a4adc9b2e4 app 2024-03-11 02:48:06 +00:00
何天
8818fbcf85 Create /app1 2024-03-11 02:44:38 +00:00
stivepeim
1bab07a1fb clear QQ Channel 2024-02-29 11:14:23 +08:00
stivepeim
72d03d5cd7 感谢开发团队 2023-12-28 17:53:53 +08:00
stivepeim
1718108ee4 CRMEB开源技术交流群
扫码进群可领取开源版接口文档、产品功能清单、高清UI设计图、思维脑图!
2023-12-28 17:44:15 +08:00
stivepeim
58c527bd93 欢迎加入Java群讨论有趣的话题 2023-12-28 17:39:15 +08:00
stivepeim
b689d74472 修复切片 2023-10-07 15:32:06 +08:00
stivepeim
6c6ccce625 Merge branch 'master' of https://gitee.com/ZhongBangKeJi/crmeb_java
* 'master' of https://gitee.com/ZhongBangKeJi/crmeb_java:
  fix: 优品推荐请求不登录可以访问修改。
  fix:修改商品添加中商品的价格校验,最小值为0.01,库存正整数。
  fix:修改商品添加中商品的价格校验,最小值为0.01,库存正整数。
  update README.md.
2023-09-11 10:07:26 +08:00
stivepeim
d8968eb05d 感谢热情网友指出 2023-09-11 09:47:50 +08:00
guaishoudemao
04129529bc fix: 优品推荐请求不登录可以访问修改。 2023-08-24 09:16:09 +08:00
guaishoudemao
44dedf3e89 fix:修改商品添加中商品的价格校验,最小值为0.01,库存正整数。 2023-08-22 18:12:38 +08:00
guaishoudemao
de2c57e6bc fix:修改商品添加中商品的价格校验,最小值为0.01,库存正整数。 2023-08-21 15:01:50 +08:00
大粽子
61d4065be8 !28 update README.md.
Merge pull request !28 from Handson/N/A
2023-07-15 09:02:47 +00:00
Handson
f70424921d update README.md.
Signed-off-by: Handson <7420044+handson1107@user.noreply.gitee.com>
2023-07-15 08:58:38 +00:00
stivepeim
4e08a5d24b readme 格式优化 2023-07-15 16:40:44 +08:00
stivepeim
1fd1c99d1d Merge branch 'master' of https://gitee.com/ZhongBangKeJi/crmeb_java
* 'master' of https://gitee.com/ZhongBangKeJi/crmeb_java:
  update README.md.
  update README.md.

# Conflicts:
#	README.md
2023-07-15 16:10:20 +08:00
stivepeim
1e7457a682 更新联系我们 2023-07-15 16:08:14 +08:00
大粽子
140f0c0f3f !26 update README.md.
Merge pull request !26 from Handson/N/A
2023-07-15 08:02:16 +00:00
大粽子
87d88420e4 !25 update README.md.
Merge pull request !25 from Handson/N/A
2023-07-15 08:02:00 +00:00
Handson
e7824928bc update README.md.
Signed-off-by: Handson <7420044+handson1107@user.noreply.gitee.com>
2023-07-15 06:19:43 +00:00
Handson
ed8cb43baf update README.md.
Signed-off-by: Handson <7420044+handson1107@user.noreply.gitee.com>
2023-07-15 04:32:28 +00:00
stivepeim
29a4dad980 更新联系我们 2023-07-15 11:52:09 +08:00
stivepeim
29d2820160 update 2023-07-15 09:48:38 +08:00
stivepeim
24fba07e8a 详情更新 2023-07-15 09:41:13 +08:00
stivepeim
c7484de2a4 更新关键链接 2023-06-25 18:13:10 +08:00
stivepeim
d6d2a145f0 gif 弱网优化 2023-06-25 17:37:05 +08:00
大粽子
0ae71d2d06 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2023-06-25 09:16:43 +00:00
大粽子
3e091bb462 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2023-06-25 09:14:20 +00:00
大粽子
d123c793f2 删除文件 15webPCadmin.gif 2023-06-25 09:10:56 +00:00
大粽子
579bb29dfd 删除文件 14yijianhuanse.gif 2023-06-25 09:10:48 +00:00
大粽子
bf6d53a2cb 删除文件 13yemiandesiner.gif 2023-06-25 09:10:39 +00:00
大粽子
7b210ba147 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2023-06-25 08:58:11 +00:00
大粽子
116ac9dfa1 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2023-06-25 08:57:09 +00:00
大粽子
34cc74d4c9 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2023-06-25 08:54:43 +00:00
大粽子
4423f08c71 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2023-06-25 08:52:44 +00:00
大粽子
52d23093b9 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2023-06-25 08:50:57 +00:00
大粽子
9c6828a817 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2023-06-25 08:49:58 +00:00
stivepeim
5426b1b32c 2023 618 活动圆满结束 2023-06-25 16:15:45 +08:00
stivepeim
198cf19d57 useUnicode=true 数据库链接 避免出现em 无法存储的问题 2023-06-15 12:07:51 +08:00
大粽子
38ffe7e823 !20 🐛 修复在JDK 17的环境下无sun相关的包
Merge pull request !20 from 徐晓伟/master-sun
2023-06-15 03:21:56 +00:00
大粽子
abae259a32 !21 🐛 Object的equals方法容易抛空指针异常,应使用常量或确定有值的对象来调用equals。
Merge pull request !21 from 徐晓伟/master-equals
2023-06-15 03:19:42 +00:00
大粽子
185b7ec757 !23 删除重复依赖io.swagger:swagger-models
Merge pull request !23 from 徐晓伟/swagger-models
2023-06-15 03:16:48 +00:00
大粽子
24bf644a71 !24 🐛 防止循环依赖引用错误
Merge pull request !24 from 徐晓伟/ApplicationContext
2023-06-15 03:16:09 +00:00
stivepeim
b46a4d3a5d 修复Stream 1.4.17 出现的漏洞 2023-06-14 17:47:29 +08:00
stivepeim
e7ce8a8e01 欢庆20230618官方活动 2023-06-12 16:23:40 +08:00
stivepeim
cffc59f46a 感谢各位同学,新开QQ3群欢迎加入拍砖讨论 2023-06-01 11:39:18 +08:00
stivepeim
0003d68828 update tel service 2023-04-18 18:03:16 +08:00
stivepeim
6f8a245801 update version desc 2023-04-06 18:28:56 +08:00
stivepeim
d9a47d1b54 update install info 2023-04-06 18:26:56 +08:00
徐晓伟
b7fe6fb1d2 🐛 防止循环依赖引用错误
使用 ApplicationContext 获取 Bean 来进行注入
2023-03-30 10:56:40 +08:00
徐晓伟
647b5a3a21 删除重复依赖io.swagger:swagger-models
防止使用 io.fabric8:docker-maven-plugin 打包为docker时异常
2023-03-29 10:20:33 +08:00
徐晓伟
a25c771991 💡 加解密补充说明 2023-03-29 10:16:14 +08:00
徐晓伟
e36deee626 Merge branch 'master' of https://gitee.com/xuxiaowei-com-cn/crmeb_java into master-sun
# Conflicts:
#	crmeb/crmeb-common/src/main/java/com/zbkj/common/utils/CrmebUtil.java
2023-03-29 10:12:53 +08:00
大粽子
1983d002b4 !18 update crmeb/pom.xml.
Merge pull request !18 from mingtian00081/N/A
2023-03-21 07:37:28 +00:00
stivepeim
3a6191a721 更新代码包演示账号 2023-03-15 18:07:28 +08:00
stivepeim
da26405550 规整演示数据 管理端 admin / 123456 移动端 18292417675 / crmeb@123456 2023-03-15 18:02:30 +08:00
徐晓伟
270db3b53e 🐛 Object的equals方法容易抛空指针异常,应使用常量或确定有值的对象来调用equals。 2023-03-15 08:35:52 +08:00
徐晓伟
f2acafda7a 🐛 修复在JDK 17的环境下无sun相关的包
1. 使用hutool替换sun
2. 删除未使用的包导入
2023-03-14 16:50:15 +08:00
mingtian00081
5666011e5d update crmeb/pom.xml.
升级fastjson版本到1.2.83,1.2.83版本之前存在代码执行漏洞风险,CVE-2022-25845

Signed-off-by: mingtian00081 <12513234+mingtian00081@user.noreply.gitee.com>
2023-02-26 12:20:09 +00:00
大粽子
68d9148fa7 update README.md.
遇到问题不要怕,问题提交到issue或者直接论坛发帖,大佬会尽快回复和处理哦!
认准官方论坛 https://www.crmeb.com/ask/thread/list/152

Signed-off-by: 大粽子 <stivepeim@outlook.com>
2023-02-23 10:06:48 +00:00
stivepeim
90b377a6e7 update license 2023-02-06 10:28:18 +08:00
stivepeim
95505dd146 更新 readme 2023-01-04 12:20:28 +08:00
stivepeim
cd5d31cfcc 更新readme 2023-01-04 12:17:07 +08:00
stivepeim
cf6071a396 更新客服链接 2023-01-04 12:03:49 +08:00
stivepeim
1321a2b0e5 宽屏预览 2022-12-30 16:08:02 +08:00
stivepeim
12c548c062 素材格式调整 2022-12-30 15:55:57 +08:00
stivepeim
7851ea10bb 素材更新 2022-12-30 15:50:08 +08:00
stivepeim
c949c86a99 update md 2022-12-30 15:38:29 +08:00
大粽子
ba72b18dad update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2022-12-30 07:36:37 +00:00
大粽子
25670d5af9 update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2022-12-30 07:30:58 +00:00
stivepeim
02f4e595cc 调整图片 2022-12-30 15:22:08 +08:00
stivepeim
295b58c9de readme 更新 2022-12-30 15:16:39 +08:00
大粽子
a183ced5ef update README.md.
Signed-off-by: 大粽子 <stivepeim@outlook.com>
2022-12-30 07:04:02 +00:00
stivepeim
1010a22c7e 更新素材路径 2022-12-30 14:24:04 +08:00
stivepeim
cd96dbf7e6 readme 图片路径更新 2022-12-30 14:20:32 +08:00
stivepeim
4d70bab54b update readme 2022-12-29 17:52:42 +08:00
stivepeim
33dd341669 更新描述文件 2022-12-26 19:05:53 +08:00
stivepeim
c9773b2b69 修正客服更新和新论坛地址 2022-12-12 10:52:05 +08:00
stivepeim
96cf53257d 新论坛地址指向对应tab 2022-11-08 12:02:06 +08:00
stivepeim
8f43328b60 更新新的论坛地址 2022-11-08 11:46:34 +08:00
2795 changed files with 147298 additions and 72729 deletions

3
.gitignore vendored
View File

@@ -3,3 +3,6 @@ app/unpackage
Crmeb-2022-01-04.log
crmeb_front_log
crmeb/LOG_HOME_IS_UNDEFINED
*.
*.
.DS_Store

View File

Binary file not shown.

225
LICENSE
View File

@@ -1,34 +1,201 @@
版权所有 (c)2017-2027西安众邦网络科技有限公司 保留所有权利。
感谢您选择CrmEb开源客户管理+电商系统简称CRMEBCRMEB是国内最稳定、最强大、最先进的互联网电商平台解决方案之一
CRMEB java版本基于 jdk1.8 + SptingBoot + MySQL + 的技术框架开发。
为了使你正确并合法的使用本软件,请你在使用前务必阅读清楚下面的协议条款:
本授权协议适用且仅适用于CRMEB java 版本CRMEB官方对本授权协议的最终解释权和修改权。
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
一、协议许可的权利
1、您可以在完全遵守本最终用户授权协议的基础上将本软件应用于非商业用途而不必支付软件版权授权费用。
2、您可以在协议规定的约束和限制范围内修改 CRMEB java 源代码或界面风格以适应您的网站要求。
3、您拥有使用本软件构建的网站全部内容所有权并独立承担与这些内容的相关法律义务。
4、获得商业授权之后您可以将本软件应用于商业用途同时依据所购买的授权类型中确定的技术支持内容。商业授权用户享有反映和提出意见的权力相关意见将被作为首要考虑但没有一定被采纳的承诺或保证。
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
二、协议许可的权利和限制
1、未获商业授权之前不得删除网站底部及相应的官方版权信息和链接。购买商业授权请联系西安众邦网络科技有限公司了解最新说明。CRMEB java著作权已在中华人民共和国国家版权局注册(中国国家版权局著作权登记号 2018SR024463),著作权受到法律和国际公约保护。
2、未经官方许可不得对本软件或与之关联的商业授权进行出租、出售、抵押或发放子许可证。
3、不管你的网站是否整体使用 CRMEB java ,还是部份栏目使用 CRMEB java在你使用了 CRMEB java 的网站主页上必须加上 CRMEB 官方网址(www.crmeb.com)的链接。
4、未经官方许可禁止在 CRMEB java 的整体或任何部分基础上以发展任何派生版本、修改版本或第三方版本用于重新分发。
5、如果您未能遵守本协议的条款您的授权将被终止所被许可的权利将被收回并承担相应法律责任。
1. Definitions.
三、有限担保和免责声明
1、本软件及所附带的文件是作为不提供任何明确的或隐含的赔偿或担保的形式提供的。
2、用户出于自愿而使用本软件您必须了解使用本软件的风险在尚未购买产品技术服务之前我们不承诺对免费用户提供任何形式的技术支持、使用担保也不承担任何因使用本软件而产生问题的相关责任。
3、电子文本形式的授权协议如同双方书面签署的协议一样具有完全的和等同的法律效力。您一旦开始确认本协议并安装 CRMEB即被视为完全理解并接受本协议的各项条款在享有上述条款授予的权力的同时受到相关的约束和限制。协议许可范围以外的行为将直接违反本授权协议并构成侵权我们有权随时终止授权责令停止损害并保留追究相关责任的权力。
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
协议发布时间: 2017年8月01日
版本最新更新: 2020年12月23日 By CRMEB
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
CRMEB官方网站http://www.crmeb.com
CRMEB java 版本演示站https://admin.java.crmeb.net
-----------------------------------------------------
运营团队: 众邦科技
电 话: 400-8888-794
箱: admin@xazbkj.com
址: http://www.xazbkj.com
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

369
README.md
View File

@@ -1,196 +1,209 @@
<h1 align="center"> CRMEB客户管理+电商营销系统Java版</h1>
<p align="center">
<div align="center" >
<img src="https://images.gitee.com/uploads/images/2021/1109/164354_0aafe3d2_892944.gif" />
</div>
<div align="center">
CRMEB开源商城系统Java版
</div>
<div align="center" >
<a href="http://www.crmeb.com">
</p>
<p align="center">
<b>如果对您有帮助,您可以点右上角 "Star" ❤️ 支持一下 谢谢!</b>
</p>
<img src="https://img.shields.io/badge/License-apache2.0-green.svg?style=flat" />
</a>
<a href='https://gitee.com/ZhongBangKeJi/crmeb_java/members'>
<img src='https://gitee.com/ZhongBangKeJi/crmeb_java/badge/fork.svg?theme=dark' alt='fork'></img>
</a>
<a href='https://gitee.com/ZhongBangKeJi/crmeb_java/stargazers'>
<img src='https://gitee.com/ZhongBangKeJi/crmeb_java/badge/star.svg?theme=dark' alt='star'></img>
</a>
</div>
## 项目介绍
####
<div align="center">
[官网](https://www.crmeb.com/) |
[在线体验](https://admin.java.crmeb.net) |
[帮助文档](https://doc.crmeb.com/java/crmeb_java) |
[技术社区](https://www.crmeb.com/ask/)
[comment]: <> ([宽屏预览]&#40;https://gitee.com/ZhongBangKeJi/crmeb_java/blob/master/README.md&#41;)
</div>
<div align="center" >
<a href="https://gitee.com/ZhongBangKeJi/crmeb_java/blob/master/README.md">宽 屏 预 览</a>
</div>
<div align="center">
如果对您有帮助,您可以点右上角 "Star" ❤️ 支持一下 谢谢!
</div>
---
### 📖 简介:
CRMEB 开源商城系统Java版基于Java+Vue+Uni-app开发在微信公众号、小程序、H5移动端都能使用代码全开源无加密独立部署二开很方便还支持免费商用能满足企业新零售、分销推广、拼团、砍价、秒杀等多种经营需求自用、做二开项目都很合适。
CRMEB开源商城PHPhttps://gitee.com/ZhongBangKeJi/CRMEB
系统代码全开源无加密,独立部署、二开方便,适用于企业新零售、分销、拼团、砍价,秒杀等各种业务需求。
---
### 💡 系统亮点:
>1.SpringBoot 框架开发业界主流。 </br>
>2.【前端】Web PC 管理端 Vue + Element UI。<br>
>3.【前端】移动端使用 Uni-app 框架,前后端分离开发。<br>
>4.标准RESTful 接口、标准数据传输逻辑层次更明确更多的提高api复用。<br>
>5.支持Redis队列降低流量高峰解除耦合高可用。<br>
>6.数据导出,方便个性化分析。<br>
>7.数据统计分析,使用ECharts图表统计实现用户、产品、订单、资金等统计分析。<br>
>8.Spring Security 权限管理,后台多种角色,多重身份权限管理,权限可以控制到按钮级别的操作。<br>
>9.Vue表单生成控件拖拽配置表单减少前端重复表单工作量提高前端开发效率。<br>
---
### 💻 运行环境及框架:
~~~
1. 移动端uniapp开发框架 可生成H5 公众号 微信小程序
2. WEB Pc 管理后台使用Vue + Element UI 开发 兼容主流浏览器 ie11+
3. 后台服务 Java SpringBoot + Mybatis-plus + Mysql + redis
4. 运行环境 linux和windows等都支持,只要有Java环境和对应的数据库 redis
5. 运行条件 Java 1.8 Mysql5.7
~~~
---
### 🔧 Java项目框架 和 WEB PC 项目运行环境
~~~
1. SpringBoot 2.2.6.RELEASE
2. Maven 3.6.1
3. swagger-bootstrap-ui 1.0
4. Mybatis Plus 3.3.1
5. npm 6
6. node 14
7. vue 2.x
8. element ui 2.13
~~~
CRMEB 是西安众邦网络科技有限公司旗下品牌众邦科技8年专注电商的技术沉淀和行业积累
专业打造行业领先功能强大易用性强扩展性强产品CRMEB现有CRMEB单商户系统(Java版本)、
CRMEB Pro系统、CRMEB 多商户系统、知识付费系统等系统产品。
---
JAVA版商城系统是基于Java(SpringBoot) + Vue(Element UI) + UniApp开发的
一套新零售移动电商系统CRMEB系统就是集客户关系管理 + 营销电商系统,
能够快速积累客户、会员数据分析、智能转化客户、有效提高销售、会员维护、
网络营销的一款企业应用,更适合企业二次开发。
~~~~
![](/crmeb/crmebimage/crmebimage/demoimage/01qiyejiangxiang.webp)
## 预览
![二维码预览](/crmeb/crmebimage/crmebimage/demoimage/02yulan.jpg)
帮助手册:[https://doc.crmeb.com/web/java/crmeb_java](https://doc.crmeb.com/web/java/crmeb_java)
论坛地址:[https://q.crmeb.net](https://q.crmeb.net)
官网地址:[https://www.crmeb.com](https://www.crmeb.com)
授权价格:[http://crmeb.com/web/auth/apply](http://crmeb.com/web/auth/apply)
GitHub地址[https://github.com/crmeb/crmeb_java](https://github.com/crmeb/crmeb_java)
码云地址: [https://gitee.com/ZhongBangKeJi/crmeb_java](https://gitee.com/ZhongBangKeJi/crmeb_java)
移动端:[https://java.crmeb.net](https://java.crmeb.net)
WEBPC管理端[https://admin.java.crmeb.net](https://admin.java.crmeb.net)
账号密码:后台账号 demo 密码 crmeb.com
购买商业版: [http://crmeb.com/web/index/java](http://crmeb.com/web/index/java)
自己搭建后admin / 123456
## 反馈交流
技术交流社区https://q.crmeb.net
CRMEB JAVA 技术交流QQ群 1群 🈵️
[CRMEB JAVA 技术交流QQ群 2群 482685880 🔥](<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=Ss382XU1MITXy9B-qx15GC3G7WVaImIG&jump_from=webapi"><img border="0" src="//pub.idqqimg.com/wpa/images/group.png" alt="CRMEB Java技术交流2群" title="CRMEB Java技术交流2群"> 点击添加群 482685880</a>)
使用中遇到bug 或者问题可以在gitee 上提 [Issues](https://gitee.com/ZhongBangKeJi/crmeb_java/issues)
如果直接点击加群无反应可复制QQ号码手动加入
## 主要特点
### 🧭 项目代码包介绍
~~~
1:有详细的代码注释,有完整系统手册。
2:基于 SpringBoot 框架开发业界主流。
3:【前端】Web PC 管理端 vue + element UI。
4:【前端】移动端使用 UniApp 框架,前后端分离开发。
5:标准RESTful 接口、标准数据传输逻辑层次更明确更多的提高api复用。
6:支持Redis队列降低流量高峰解除耦合高可用。
7:无缝事件机制,行为扩展更方便,方便二次开发。
8:数据导出,方便个性化分析。
9:数据统计分析,使用ECharts图表统计实现用户、产品、订单、资金等统计分析。
10:权限管理,后台多种角色,多重身份权限管理,权限可以控制到按钮级别的操作。
11:Vue表单生成控件拖拽配置表单减少前端重复表单工作量提高前端开发效率。
1. admin WEB程序 PC端管理端 VUE + ElementUi
2. app 移动商城 UniApp标准开发(H5 + 微信小程序)
3. crmeb Api Java SpringBoot + mybatisPlus
4. 接口文档 Api对应的接口文档也可以部署项目后查看
~~~
## 移动端预览
![](/crmeb/crmebimage/crmebimage/demoimage/03-mobile-01.png)
![](/crmeb/crmebimage/crmebimage/demoimage/04-mobile-02.png)
![](/crmeb/crmebimage/crmebimage/demoimage/05-mobile-03.png)
## 功能图预览
![项目基本功能介绍](/crmeb/crmebimage/crmebimage/demoimage/06-optionList.jpg)
## WEB PC 管理端预览
![控制台](/crmeb/crmebimage/crmebimage/demoimage/07-pc-01.png)
![商品管理](/crmeb/crmebimage/crmebimage/demoimage/08-pc-02.png)
![订单管理](/crmeb/crmebimage/crmebimage/demoimage/09-pc-03.png)
![复制第三方平台商品](/crmeb/crmebimage/crmebimage/demoimage/10-pc-04.png)
![营销功能](/crmeb/crmebimage/crmebimage/demoimage/11-pc-05.png)
![自定义表单组件](/crmeb/crmebimage/crmebimage/demoimage/12-pc-06.png)
# 商业版特色小功能
## 页面设计
![页面设计](https://api.java.crmeb.net/crmebimage/fordemo/13yemiandesiner.gif)
## 一键换色
![一键换色](https://api.java.crmeb.net/crmebimage/fordemo/14yijianhuanse.gif)
## WEB PC 更多便捷操作方式
![](https://api.java.crmeb.net/crmebimage/fordemo/15webPCadmin.gif)
## 项目源码
| 平台| 源码地址|
|--- |--- |
|gitHub| https://github.com/crmeb/crmeb_java|
|gitee|https://gitee.com/ZhongBangKeJi/crmeb_java|
## 运行环境及框架
~~~
Java项目运行环境
1.Java Jdk1.8
2.Redis 5+
3.Mysql 5.7+
4.Nginx
Java项目框架
1.SpringBoot 2.2.6.RELEASE
2.Maven 3.6.1
3.swagger-bootstrap-ui 1.0
4.Mybatis Plus 3.3.1
WEB PC 项目运行环境
1.npm 6
2.node 14
3.vue 2.x
4.element ui 2.13
移动端 uniapp 开发 使用 HbuilderX 开发
~~~
## 项目代码包介绍
~~~
---
1:admin WEB程序 PC端管理端 VUE + ElementUi
2:app 移动商城 UniApp标准开发(H5 + 微信小程序)
3:crmeb Api Java SpringBoot + mybatisPlus ...
4:接口文档 Api对应的接口文档也可以部署项目后查看
~~~
## 素材说明
建议使用自己的素材文件,我们提供基础浏览素材 链接
https://help.crmeb.net/crmeb_java/2312166
## 版本更新日志
http://bbs.crmeb.net/thread-5725-1-1.html
## 内推荐项目
~~~
CRMEB知识付费项目https://gitee.com/ZhongBangKeJi/crmeb_zzff_class
CRMEB打通版https://gitee.com/ZhongBangKeJi/CRMEB
~~~
## 反馈交流
技术交流社区https://q.crmeb.net
[CRMEB JAVA 技术交流QQ群 2群 482685880 🔥](<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=Ss382XU1MITXy9B-qx15GC3G7WVaImIG&jump_from=webapi"><img border="0" src="//pub.idqqimg.com/wpa/images/group.png" alt="CRMEB Java技术交流2群" title="CRMEB Java技术交流2群"> 点击添加群 482685880</a>)
CRMEB JAVA 技术交流QQ群 1群 🈵️
使用中遇到bug 或者问题可以在gitee 上提 [Issues](https://gitee.com/ZhongBangKeJi/crmeb_java/issues)
如果直接点击加群无反应可复制QQ号码手动加入
视频教程
[B站视频教程 持续更新中](https://space.bilibili.com/388666686)
[![](https://z3.ax1x.com/2021/05/19/g4J9W6.jpg)](https://space.bilibili.com/388666686)
[![](crmeb/crmebimage/demoimage/gitee-广告_java多商户.jpg)](https://www.crmeb.com/index/java_merchant)
## 开源版使用须知
~~~
1.允许用于个人学习、毕业设计、教学案例、公益事业;
2.如果商用必须保留版权信息,如果需要去版权请联系客服;
3.禁止将本项目的代码和资源进行任何形式的出售,产生的一切任何后果责任由侵权者自负。
~~~
### 🎬 系统演示:
![](crmeb/crmebimage/demoimage/c1.jpg)
移动端https://java.crmeb.net<br>
WEBPC管理端https://admin.java.crmeb.net<br>
账号密码: demo/crmeb.com<br>
## 联系客服
自己搭建演示账号
移动端 18292417675 / Crmeb_123456
管理端 admin / 123456
![联系客服](/crmeb/crmebimage/crmebimage/demoimage/17lianxikefu.png)
[想了解CRMEB开源商城系统Java版整体框架你可以戳这里快速掌握](https://doc.crmeb.com/java/crmeb_java/2049)
## 版权信息
本项目包含的第三方源码和二进制文件之版权信息另行标注。
版权所有Copyright © 2017-2021 by CRMEB (http://www.crmeb.com)
---
All rights reserved。
### 📃 系统资料
需要系统文档的朋友看过来,安装文档、产品介绍、技术文档...你想要的我都有!
[https://doc.crmeb.com/java/crmeb_java](https://doc.crmeb.com/java/crmeb_java)
CRMEB® 商标和著作权所有者为西安众邦网络科技有限公司。
要安装系统跟着视频更顺畅CRMEB开源商城系统Java版安装视频给你奉上
视频教程 B站视频教程 持续更新中 [点击观看 💻🖥️](https://www.bilibili.com/video/BV1bP4y1n76P/?vd_source=40854aeda5bba4b8766afd5a99623b16)
---
### 💟 UI界面
#### 核心功能
![](crmeb/crmebimage/demoimage/javaop2.jpg)
### 📱 移动端预览
<!-- ![](crmeb/crmebimage/demoimage/03-mobile-01.png)
![](crmeb/crmebimage/demoimage/04-mobile-02.png)
![](crmeb/crmebimage/demoimage/05-mobile-03.png) -->
![](crmeb/crmebimage/demoimage/001front.jpg)
### WEB PC管理端预览
<!-- ![](crmeb/crmebimage/demoimage/07-pc-01.png)
![](crmeb/crmebimage/demoimage/08-pc-02.png)
![](crmeb/crmebimage/demoimage/09-pc-03.png)
![](crmeb/crmebimage/demoimage/10-pc-04.png)
![](crmeb/crmebimage/demoimage/11-pc-05.png)
![](crmeb/crmebimage/demoimage/12-pc-06.png) -->
![](crmeb/crmebimage/demoimage/001admin.jpg)
![](crmeb/crmebimage/demoimage/13yemiandesiner-min.gif)
![](crmeb/crmebimage/demoimage/14yijianhuanse-min.gif)
![](crmeb/crmebimage/demoimage/15webPCadmin-min.gif)
---
### 📲 CRMEB开源技术交流群
扫码进群可领取开源版接口文档、产品功能清单、高清UI设计图、思维脑图
![](crmeb/crmebimage/demoimage/wellcomJavaGroup.jpg)
#### 📈 技术社区
找方法、提bug、看官方消息、拿活跃大奖
https://www.crmeb.com/ask/thread/list/152
#### 📞 技术交流
跟着官方不迷路欢迎扫码加入CRMEB 开源项目群,一手消息及资源,尽在掌握!<br>
CRMEB JAVA 技术交流QQ群 1群 🈵️<br>
CRMEB JAVA 技术交流QQ群 2群 🈵️<br>
CRMEB JAVA 技术交流QQ群 3群 640230510 🈵️ 群已满<br>
<!-- [CRMEB开源商城系统开发QQ频道已开启点击加入一起交流学习](https://pd.qq.com/s/1v2yb4e0p)<br>
![](crmeb/crmebimage/crmebimage/demoimage/qqcus.jpg) -->
使用中遇到bug 或者问题可以在gitee 上提 Issues
<!-- ---
### 💌 特别鸣谢
核心开发团队
产品: 木子刀客
技术: ❄指缝de阳光, 怪兽的猫, 乡关何处
团队打杂: 大粽子
UI: 被子横盖显得高🐰
测试: 请叫我绵绵🐏, 夏天
--- -->
### 🔔 使用须知
1.允许用于个人学习、毕业设计、教学案例、公益事业、商业使用;<br>
2.如果商用必须保留版权信息,请自觉遵守;<br>
3.禁止将本项目的代码和资源进行任何形式的出售,产生的一切任何后果责任由侵权者自负。<br>
---
### 🪪 版权信息
本项目包含的第三方源码和二进制文件之版权信息另行标注。<br>
版权所有Copyright © 2017-2024 by CRMEB (https://www.crmeb.com)<br>
All rights reserved。<br>
CRMEB® 商标和著作权所有者为西安众邦网络科技有限公司。<br>
---

View File

@@ -2,7 +2,9 @@
ENV = 'development'
# base api
VUE_APP_BASE_API = 'http://127.0.0.1:8080'
# VUE_APP_BASE_API = '/dev-api'
# VUE_APP_BASE_API = 'https://api.java.crmeb.net'
VUE_APP_BASE_API = 'http://192.168.31.35:2500'
# vue-cli uses the VUE_CLI_BABEL_TRANSPILE_MODULES environment variable,
# to control whether the babel-plugin-dynamic-import-node plugin is enabled.

View File

@@ -2,5 +2,6 @@
ENV = 'production'
# base api
VUE_APP_BASE_API = 'http://api.xxx'
# VUE_APP_BASE_API = '/prod-api'
# VUE_APP_BASE_API = 'https://api.java.crmeb.net'
VUE_APP_BASE_API = 'http://192.168.31.35:2500'

View File

@@ -1,5 +1,7 @@
ENV = 'production'
# base api
VUE_APP_BASE_API = 'http://api.xxx'
# VUE_APP_BASE_API = '/prod-api'
# VUE_APP_BASE_API = 'https://api.java.crmeb.net'
VUE_APP_BASE_API = 'http://192.168.31.35:2500'

24
admin/.prettierignore Normal file
View File

@@ -0,0 +1,24 @@
.DS_Store
node_modules/
dist/
public/
plop-templates/
tests/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
**/*.log
tests/**/coverage/
tests/e2e/reports
selenium-debug.log
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.local
*.md

35
admin/.prettierrc.js Normal file
View File

@@ -0,0 +1,35 @@
module.exports = {
// 一行最多 120 字符
printWidth: 120,
// 使用 2 个空格缩进
tabWidth: 2,
// 不使用 tab 缩进,而使用空格
useTabs: false,
// 行尾需要有分号
semi: true,
// 使用单引号代替双引号
singleQuote: true,
// 对象的 key 仅在必要时用引号
quoteProps: 'as-needed',
// jsx 不使用单引号,而使用双引号
jsxSingleQuote: false,
// 末尾使用逗号
trailingComma: 'all',
// 大括号内的首尾需要空格 { foo: bar }
bracketSpacing: true,
// 箭头函数,只有一个参数的时候,也需要括号
arrowParens: 'always',
// 每个文件格式化的范围是文件的全部内容
rangeStart: 0,
rangeEnd: Infinity,
// 不需要写文件开头的 @prettier
requirePragma: false,
// 不需要自动在文件开头插入 @prettier
insertPragma: false,
// 使用默认的折行标准
proseWrap: 'preserve',
// 根据显示样式决定 html 要不要折行
htmlWhitespaceSensitivity: 'css',
// 换行符使用 lf
endOfLine: 'lf',
};

View File

@@ -1,4 +1,4 @@
{
{
"compilerOptions": {
"baseUrl": "./",
"paths": {
@@ -6,4 +6,4 @@
}
},
"exclude": ["node_modules", "dist"]
}
}

View File

@@ -9,6 +9,8 @@
"build:prod": "vue-cli-service build",
"build:stage": "vue-cli-service build --mode staging",
"preview": "node build/index.js --preview",
"prettier:comment": "自动格式化当前目录下的所有文件",
"prettier": "prettier --write .",
"lint": "eslint --fix --ext .js,.vue src",
"test:unit": "jest --clearCache && vue-cli-service test:unit",
"test:ci": "npm run lint && npm run test:unit",
@@ -44,27 +46,29 @@
"babel-polyfill": "^6.26.0",
"clipboard": "^2.0.4",
"core-js": "^2.6.11",
"crypto-js": "^4.1.1",
"crypto-js": "^4.2.0",
"echarts": "4.2.1",
"element-ui": "2.13.0",
"element-ui": "2.15.6",
"file-saver": "2.0.1",
"fuse.js": "3.4.4",
"js-cookie": "2.2.0",
"jsonlint": "1.6.3",
"jszip": "3.2.1",
"mpvue-calendar": "^2.3.7",
"sass": "1.26.2",
"sass-loader": "^7.2.0",
"normalize.css": "7.0.0",
"nprogress": "0.2.0",
"path-to-regexp": "2.4.0",
"print-js": "^1.6.0",
"printjs": "^1.1.0",
"qrcodejs2": "^0.0.2",
"screenfull": "4.2.0",
"sass": "1.26.2",
"sass-loader": "^7.2.0",
"screenfull": "5.0.2",
"script-loader": "0.7.2",
"throttle-debounce": "^2.1.0",
"vconsole": "^3.3.2",
"vue": "2.6.10",
"vue-awesome-swiper": "^3.1.3",
"vue-cropper": "^0.5.8",
"vue-echarts": "^4.0.3",
"vue-router": "3.0.2",
"vue-ydui": "^1.2.6",
@@ -74,28 +78,25 @@
"xlsx": "0.14.1"
},
"devDependencies": {
"@babel/core": "7.0.0",
"@babel/register": "7.0.0",
"@vue/cli-plugin-babel": "3.5.3",
"@vue/cli-plugin-eslint": "^3.9.1",
"@vue/cli-plugin-unit-jest": "3.5.3",
"@vue/cli-service": "3.5.3",
"@vue/cli-service": "4.0.0",
"@vue/test-utils": "1.0.0-beta.29",
"babel-core": "7.0.0-bridge.0",
"babel-jest": "23.6.0",
"chalk": "2.4.2",
"chokidar": "^3.1.1",
"connect": "3.6.6",
"eslint": "5.15.3",
"eslint-plugin-vue": "5.2.2",
"html-webpack-plugin": "3.2.0",
"husky": "1.3.1",
"lint-staged": "8.1.5",
"mockjs": "1.0.1-beta3",
"plop": "2.3.0",
"prettier": "^2.5.1",
"runjs": "^4.3.2",
"script-loader": "^0.7.2",
"script-ext-html-webpack-plugin": "2.1.3",
"script-loader": "^0.7.2",
"serve-static": "^1.13.2",
"svg-sprite-loader": "4.1.3",
"svgo": "1.2.0",

View File

File diff suppressed because one or more lines are too long

View File

@@ -1,11 +1,93 @@
<template>
<div id="app">
<router-view />
<router-view v-if="isRouterAlive" />
<Setings ref="setingsRef" />
</div>
</template>
<script>
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2023 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import { Local } from '@/utils/storage.js';
import Setings from '@/layout/navBars/breadcrumb/setings.vue';
export default {
name: 'App'
}
name: 'App',
components: { Setings },
provide() {
return {
reload: this.reload,
};
},
data() {
return {
isRouterAlive: true,
};
},
watch: {
// 监听路由 控制侧边栏显示 标记当前顶栏菜单(如需要)
$route(to, from) {
const onRoutes = to.meta.activeMenu ? to.meta.activeMenu : to.meta.path;
this.$store.commit('menu/setActivePath', onRoutes);
if (to.name == 'crud_crud') {
this.$store.state.user.oneLvRoutes.map((e) => {
if (e.path === to.path) {
to.meta.title = e.title;
}
});
}
//优惠券、秒杀活动
if (['creatProduct', 'CreatCoupon', 'CreatSeckill', 'CreatTag', 'border', 'articleCreat'].includes(to.name)) {
let route = to.matched[1].path.split(':')[0];
this.$store.state.user.oneLvRoutes.map((e) => {
if (route.indexOf(e.path) != -1) {
to.meta.title = `${e.title} ${to.params.id ? 'ID:' + to.params.id : ''}`;
}
});
}
//个人中心、修改密码
if (['MaintainUser', 'MaintainUpdate'].includes(to.name)) {
this.bus.$emit('oneCatName', '控制台');
}
},
},
mounted() {
this.openSetingsDrawer();
this.getLayoutThemeConfig();
},
methods: {
reload() {
this.isRouterAlive = false;
this.$nextTick(function () {
this.isRouterAlive = true;
});
},
// 布局配置弹窗打开
openSetingsDrawer() {
this.bus.$on('openSetingsDrawer', () => {
this.$refs.setingsRef.openDrawer();
});
},
// 获取缓存中的布局配置
getLayoutThemeConfig() {
if (Local.get('JavaPlatThemeConfigPrev')) {
this.$store.dispatch('themeConfig/setThemeConfig', Local.get('JavaPlatThemeConfigPrev'));
document.documentElement.style.cssText = Local.get('JavaPlatThemeConfigStyle');
} else {
Local.set('JavaPlatThemeConfigPrev', this.$store.state.themeConfig.themeConfig);
}
},
},
destroyed() {
this.bus.$off('openSetingsDrawer');
},
};
</script>

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 绑定产品
@@ -17,13 +17,13 @@ import request from '@/utils/request'
export function bindProduct(pram) {
const data = {
id: pram.id,
productId: pram.productId
}
productId: pram.productId,
};
return request({
url: '/admin/article/bind/product',
method: 'POST',
params: data
})
params: data,
});
}
/**
@@ -33,13 +33,13 @@ export function bindProduct(pram) {
*/
export function DelArticle(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/article/delete',
method: 'GET',
params: data
})
params: data,
});
}
/**
@@ -49,13 +49,13 @@ export function DelArticle(pram) {
*/
export function InfoArticle(id) {
const data = {
id: id
}
id: id,
};
return request({
url: '/admin/article/info',
method: 'get',
params: data
})
params: data,
});
}
/**
@@ -68,13 +68,13 @@ export function ListArticle(pram) {
keywords: pram.keywords,
cid: pram.cid,
page: pram.page,
limit: pram.limit
}
limit: pram.limit,
};
return request({
url: '/admin/article/list',
method: 'GET',
params: data
})
params: data,
});
}
/**
@@ -95,13 +95,13 @@ export function AddArticle(pram) {
sort: pram.sort,
synopsis: pram.synopsis,
title: pram.title,
url: pram.url
}
url: pram.url,
};
return request({
url: '/admin/article/save',
method: 'post',
data: data
})
data: data,
});
}
/**
@@ -122,12 +122,12 @@ export function UpdateArticle(pram) {
sort: pram.sort,
synopsis: pram.synopsis,
title: pram.title,
url: pram.url
}
url: pram.url,
};
return request({
url: '/admin/article/update',
method: 'post',
params: { id: pram.id },
data: data
})
data: data,
});
}

View File

@@ -1,41 +1,32 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import req from './req'
import request from '@/utils/request';
/**
* 查询授权
* @param pram
* 获取版权信息
*/
export function authCertQuery(prams) {
const data = {
domain_name:prams.host,
label:22,
version:'2.0'
}
return req({
url: document.location.protocol + '//authorize.crmeb.net/api/auth_cert_query',
// url: 'https://authorize.crmeb.net/api/auth_cert_query',
method: 'POST',
data
})
export function copyrightInfoApi() {
return request({
url: '/admin/copyright/get/info',
method: 'get',
});
}
/**
* 授权表单提交
* @description 账号登录检测
*/
export function authCertSubmit(data) {
return req({
url: document.location.protocol + '//authorize.crmeb.net/api/auth_apply',
// url: 'https://authorize.crmeb.net/api/auth_apply',
method: 'POST',
data
})
}
export function accountDetectionApi(data) {
return request({
url: '/admin/login/account/detection',
method: 'post',
data,
});
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 新增分类
@@ -22,13 +22,13 @@ export function addCategroy(pram) {
sort: pram.sort,
status: pram.status,
type: pram.type,
url: pram.url
}
url: pram.url,
};
return request({
url: '/admin/category/save',
method: 'POST',
params: data
})
params: data,
});
}
/**
@@ -37,13 +37,13 @@ export function addCategroy(pram) {
*/
export function infoCategroy(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/category/info',
method: 'GET',
params: data
})
params: data,
});
}
/**
@@ -52,13 +52,13 @@ export function infoCategroy(pram) {
*/
export function deleteCategroy(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/category/delete',
method: 'GET',
params: data
})
params: data,
});
}
/**
@@ -72,14 +72,13 @@ export function listCategroy(pram) {
page: pram.page,
pid: pram.pid,
status: pram.status,
type: pram.type
}
type: pram.type,
};
return request({
url: '/admin/category/list',
method: 'GET',
params: data
})
params: data,
});
}
/**
@@ -90,13 +89,13 @@ export function treeCategroy(pram) {
const data = {
type: pram.type,
status: pram.status,
name: pram.name
}
name: pram.name,
};
return request({
url: '/admin/category/list/tree',
method: 'GET',
params: data
})
params: data,
});
}
/**
@@ -112,13 +111,13 @@ export function updateCategroy(pram) {
status: pram.status,
type: pram.type,
url: pram.url,
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/category/update',
method: 'POST',
params: data
})
params: data,
});
}
/**
@@ -127,13 +126,13 @@ export function updateCategroy(pram) {
*/
export function categroyByIds(pram) {
const data = {
ids: pram.ids
}
ids: pram.ids,
};
return request({
url: '/admin/category/list/ids',
method: 'GET',
params: data
})
params: data,
});
}
/**
@@ -143,8 +142,8 @@ export function categroyByIds(pram) {
export function categroyUpdateStatus(id) {
return request({
url: `/admin/category/updateStatus/${id}`,
method: 'GET'
})
method: 'GET',
});
}
/**
@@ -155,6 +154,6 @@ export function articleInfoApi(params) {
return request({
url: `/admin/article/info`,
method: 'GET',
params
})
params,
});
}

View File

@@ -1,37 +1,37 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
// 配置管理
export function configDelete(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: 'admin/system/config/delete',
method: 'GET',
params: data
})
params: data,
});
}
export function configInfo(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: 'admin/system/config/info',
method: 'GET',
params: data
})
params: data,
});
}
export function configList(pram) {
const data = {
@@ -51,13 +51,13 @@ export function configList(pram) {
value: pram.value,
width: pram.width,
page: pram.page,
limit: pram.limit
}
limit: pram.limit,
};
return request({
url: 'admin/system/config/list',
method: 'POST',
params: data
})
params: data,
});
}
export function configSave(pram) {
@@ -76,13 +76,13 @@ export function configSave(pram) {
type: pram.type,
updateType: pram.updateType,
value: pram.value,
width: pram.width
}
width: pram.width,
};
return request({
url: 'admin/system/config/save',
method: 'POST',
params: data
})
params: data,
});
}
export function configUpdate(pram) {
@@ -101,11 +101,11 @@ export function configUpdate(pram) {
type: pram.type,
updateType: pram.updateType,
value: pram.value,
width: pram.width
}
width: pram.width,
};
return request({
url: 'admin/system/config/update',
method: 'POST',
params: data
})
params: data,
});
}

View File

@@ -1,38 +1,38 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
// 配置分类管理
// 注意暂时没用到,使用无限极分类实现
export function configTabDelete(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: 'admin/system/config/tab/delete',
method: 'GET',
params: data
})
params: data,
});
}
export function configTabInfo(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: 'admin/system/config/tab/info',
method: 'GET',
params: data
})
params: data,
});
}
export function configTabList(pram) {
@@ -45,13 +45,13 @@ export function configTabList(pram) {
parameter: pram.parameter,
status: pram.status,
page: pram.page,
limit: pram.limit
}
limit: pram.limit,
};
return request({
url: 'admin/system/config/tab/list',
method: 'POST',
params: data
})
params: data,
});
}
export function configSave(pram) {
@@ -70,13 +70,13 @@ export function configSave(pram) {
type: pram.type,
updateType: pram.updateType,
value: pram.value,
width: pram.width
}
width: pram.width,
};
return request({
url: 'admin/system/config/save',
method: 'POST',
params: data
})
params: data,
});
}
export function configUpdate(pram) {
@@ -95,11 +95,11 @@ export function configUpdate(pram) {
type: pram.type,
updateType: pram.updateType,
value: pram.value,
width: pram.width
}
width: pram.width,
};
return request({
url: 'admin/system/config/update',
method: 'POST',
params: data
})
params: data,
});
}

View File

@@ -1,69 +1,69 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
// 首页数据概览
export function viewModelApi() {
return request({
url: '/admin/statistics/home/index',
method: 'GET',
})
});
}
// 用户曲线图
export function chartUserApi() {
return request({
url: '/admin/statistics/home/chart/user',
method: 'get'
})
method: 'get',
});
}
// 用户购买统计
export function chartBuyApi() {
return request({
url: '/admin/statistics/home/chart/user/buy',
method: 'get'
})
method: 'get',
});
}
// 订单量趋势 30天
export function chartOrder30Api() {
return request({
url: '/admin/statistics/home/chart/order',
method: 'get'
})
method: 'get',
});
}
// 订单量趋势 月
export function chartOrderMonthApi() {
return request({
url: '/admin/statistics/home/chart/order/month',
method: 'get'
})
method: 'get',
});
}
// 订单量趋势 周
export function chartOrderWeekApi() {
return request({
url: '/admin/statistics/home/chart/order/week',
method: 'get'
})
method: 'get',
});
}
// 订单量趋势 年
export function chartOrderYearApi() {
return request({
url: '/admin/statistics/home/chart/order/year',
method: 'get'
})
method: 'get',
});
}
// 首页经营数据
@@ -71,5 +71,5 @@ export function businessData() {
return request({
url: '/admin/statistics/home/operating/data',
method: 'get',
})
});
}

13
admin/src/api/devise.js Normal file
View File

@@ -0,0 +1,13 @@
import request from '@/utils/request';
/**
* 提现申请 列表
* @param pram
*/
export function diyListApi(params) {
return request({
url: '/admin/pagediy/list',
method: 'get',
params,
});
}

View File

@@ -1,15 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* @description 分销设置 -- 详情
@@ -17,8 +16,8 @@ import request from '@/utils/request'
export function configApi() {
return request({
url: '/admin/store/retail/spread/manage/get',
method: 'get'
})
method: 'get',
});
}
/**
@@ -28,8 +27,8 @@ export function configUpdateApi(data) {
return request({
url: '/admin/store/retail/spread/manage/set',
method: 'post',
data
})
data,
});
}
/**
@@ -39,20 +38,20 @@ export function promoterListApi(params) {
return request({
url: '/admin/store/retail/list',
method: 'get',
params
})
params,
});
}
/**
* @description 推广人 -- 列表
*/
export function spreadListApi( params, data) {
export function spreadListApi(params, data) {
return request({
url: '/admin/store/retail/spread/userlist',
method: 'post',
params,
data
})
data,
});
}
/**
@@ -63,8 +62,8 @@ export function spreadOrderListApi(params, data) {
url: '/admin/store/retail/spread/orderlist',
method: 'post',
params,
data
})
data,
});
}
/**
@@ -73,8 +72,8 @@ export function spreadOrderListApi(params, data) {
export function spreadClearApi(id) {
return request({
url: `/admin/store/retail/spread/clean/${id}`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -84,6 +83,6 @@ export function spreadStatisticsApi(params) {
return request({
url: `/admin/store/retail/statistics`,
method: 'get',
params
})
params,
});
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 提现申请 列表
@@ -18,8 +18,8 @@ export function applyListApi(params) {
return request({
url: '/admin/finance/apply/list',
method: 'get',
params
})
params,
});
}
/**
@@ -30,8 +30,8 @@ export function applyBalanceApi(params) {
return request({
url: '/admin/finance/apply/balance',
method: 'post',
params
})
params,
});
}
/**
@@ -42,8 +42,8 @@ export function applyUpdateApi(params) {
return request({
url: '/admin/finance/apply/update',
method: 'post',
params
})
params,
});
}
/**
@@ -55,8 +55,8 @@ export function applyStatusApi(params, data) {
url: '/admin/finance/apply/apply',
method: 'post',
params,
data
})
data,
});
}
/**
@@ -67,8 +67,8 @@ export function topUpLogListApi(params) {
return request({
url: '/admin/user/topUpLog/list',
method: 'get',
params
})
params,
});
}
/**
@@ -78,8 +78,8 @@ export function topUpLogListApi(params) {
export function balanceApi() {
return request({
url: '/admin/user/topUpLog/balance',
method: 'post'
})
method: 'post',
});
}
/**
@@ -90,8 +90,8 @@ export function topUpLogDeleteApi(params) {
return request({
url: '/admin/user/topUpLog/delete',
method: 'get',
params
})
params,
});
}
/**
@@ -102,8 +102,8 @@ export function refundApi(data) {
return request({
url: '/admin/user/topUpLog/refund',
method: 'post',
data
})
data,
});
}
/**
@@ -114,8 +114,8 @@ export function monitorListApi(params) {
return request({
url: '/admin/finance/founds/monitor/list',
method: 'get',
params
})
params,
});
}
/**
@@ -125,8 +125,8 @@ export function monitorListApi(params) {
export function monitorListOptionApi() {
return request({
url: `/admin/finance/founds/monitor/list/option`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -137,7 +137,6 @@ export function brokerageListApi(params) {
return request({
url: '/admin/finance/founds/monitor/brokerage/record',
method: 'get',
params
})
params,
});
}

View File

@@ -1,30 +1,30 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
// 城市列表
export function cityList(data) {
return request({
url: '/admin/system/city/list',
method: 'get',
params: { ...data }
})
params: { ...data },
});
}
// 城市列表
export function cityListTree() {
return request({
url: '/admin/system/city/list/tree',
method: 'get'
})
method: 'get',
});
}
// 城市修改状态
@@ -32,8 +32,8 @@ export function updateStatus(data) {
return request({
url: '/admin/system/city/update/status',
method: 'post',
params: { ...data }
})
params: { ...data },
});
}
// 城市修改
@@ -41,8 +41,8 @@ export function cityUpdate(data) {
return request({
url: '/admin/system/city/update',
method: 'post',
params: { ...data }
})
params: { ...data },
});
}
// 城市详情
@@ -50,8 +50,8 @@ export function cityInfo(data) {
return request({
url: '/admin/system/city/info',
method: 'get',
params: { ...data }
})
params: { ...data },
});
}
// 物流公司列表
@@ -59,16 +59,16 @@ export function expressList(data) {
return request({
url: '/admin/express/list',
method: 'get',
params: { ...data }
})
params: { ...data },
});
}
// 同步物流公司
export function expressSyncApi() {
return request({
url: '/admin/express/sync/express',
method: 'post'
})
method: 'post',
});
}
// 物流公司修改状态
@@ -76,8 +76,8 @@ export function expressUpdateShow(data) {
return request({
url: '/admin/express/update/show',
method: 'post',
data
})
data,
});
}
// 物流公司 编辑
@@ -85,8 +85,8 @@ export function expressUpdate(data) {
return request({
url: '/admin/express/update',
method: 'post',
data
})
data,
});
}
// 新增物流公司
@@ -94,8 +94,8 @@ export function expressSave(data) {
return request({
url: '/admin/express/save',
method: 'post',
params: { ...data }
})
params: { ...data },
});
}
// 删除物流公司
@@ -103,8 +103,8 @@ export function expressDelete(data) {
return request({
url: '/admin/express/delete',
method: 'GET',
params: { ...data }
})
params: { ...data },
});
}
// 物流运费模板列表
@@ -112,8 +112,8 @@ export function shippingTemplatesList(data) {
return request({
url: '/admin/express/shipping/templates/list',
method: 'get',
params: { ...data }
})
params: { ...data },
});
}
// 物流运费模板详情
@@ -121,8 +121,8 @@ export function templateDetailApi(data) {
return request({
url: '/admin/express/shipping/templates/info',
method: 'get',
params: { ...data }
})
params: { ...data },
});
}
// 物流运费模板包邮
@@ -130,8 +130,8 @@ export function shippingFree(data) {
return request({
url: '/admin/express/shipping/free/list',
method: 'get',
params: { ...data }
})
params: { ...data },
});
}
// 物流运费模板不包邮
@@ -139,8 +139,8 @@ export function shippingRegion(data) {
return request({
url: 'admin/express/shipping/region/list',
method: 'get',
params: { ...data }
})
params: { ...data },
});
}
// 物流运费模板新增
@@ -148,8 +148,8 @@ export function shippingSave(data) {
return request({
url: 'admin/express/shipping/templates/save',
method: 'post',
data: data
})
data: data,
});
}
// 物流运费模板更新
@@ -158,8 +158,8 @@ export function shippingUpdate(data, id) {
url: 'admin/express/shipping/templates/update',
method: 'post',
data: data,
params: { ...id }
})
params: { ...id },
});
}
// 物流运费模板删除
@@ -167,8 +167,8 @@ export function shippingDetete(data) {
return request({
url: 'admin/express/shipping/templates/delete',
method: 'get',
params: data
})
params: data,
});
}
// 物流公司详情
@@ -176,6 +176,6 @@ export function expressInfo(data) {
return request({
url: 'admin/express/info',
method: 'get',
params: { ...data }
})
}
params: { ...data },
});
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 优惠券 列表
@@ -18,8 +18,8 @@ export function marketingListApi(params) {
return request({
url: '/admin/marketing/coupon/list',
method: 'get',
params
})
params,
});
}
/**
@@ -30,8 +30,8 @@ export function marketingSendApi(params) {
return request({
url: '/admin/marketing/coupon/send/list',
method: 'get',
params
})
params,
});
}
/**
@@ -42,8 +42,8 @@ export function couponInfoApi(params) {
return request({
url: '/admin/marketing/coupon/info',
method: 'post',
params
})
params,
});
}
/**
@@ -54,8 +54,8 @@ export function couponUserApi(params) {
return request({
url: '/admin/marketing/coupon/user/receive',
method: 'post',
params
})
params,
});
}
/**
@@ -66,8 +66,8 @@ export function couponSaveApi(data) {
return request({
url: '/admin/marketing/coupon/save',
method: 'post',
data
})
data,
});
}
/**
@@ -78,8 +78,8 @@ export function couponIssueStatusApi(params) {
return request({
url: '/admin/marketing/coupon/update/status',
method: 'post',
params
})
params,
});
}
/**
@@ -90,8 +90,8 @@ export function couponDeleteApi(params) {
return request({
url: '/admin/marketing/coupon/delete',
method: 'post',
params
})
params,
});
}
/**
@@ -102,8 +102,8 @@ export function couponUserListApi(params) {
return request({
url: '/admin/marketing/coupon/user/list',
method: 'get',
params
})
params,
});
}
/**
@@ -115,8 +115,8 @@ export function integralListApi(params, data) {
url: '/admin/user/integral/list',
method: 'post',
params,
data
})
data,
});
}
/**
@@ -127,8 +127,8 @@ export function seckillListApi(params) {
return request({
url: '/admin/store/seckill/manger/list',
method: 'get',
params
})
params,
});
}
/**
@@ -139,8 +139,8 @@ export function seckillInfoApi(params) {
return request({
url: '/admin/store/seckill/manger/info',
method: 'get',
params
})
params,
});
}
/**
@@ -151,8 +151,8 @@ export function seckillSaveApi(data) {
return request({
url: '/admin/store/seckill/manger/save',
method: 'post',
data
})
data,
});
}
/**
@@ -164,8 +164,8 @@ export function seckillUpdateApi(params, data) {
url: '/admin/store/seckill/manger/update',
method: 'post',
params,
data
})
data,
});
}
/**
@@ -176,11 +176,10 @@ export function seckillDeleteApi(params) {
return request({
url: '/admin/store/seckill/manger/delete',
method: 'get',
params
})
params,
});
}
/**
* 秒杀商品 列表
* @param pram
@@ -189,8 +188,8 @@ export function seckillStoreListApi(params) {
return request({
url: '/admin/store/seckill/list',
method: 'get',
params
})
params,
});
}
/**
@@ -201,8 +200,8 @@ export function seckillStoreInfoApi(params) {
return request({
url: '/admin/store/seckill/info',
method: 'get',
params
})
params,
});
}
/**
@@ -213,8 +212,8 @@ export function seckillStoreSaveApi(data) {
return request({
url: '/admin/store/seckill/save',
method: 'post',
data
})
data,
});
}
/**
@@ -226,8 +225,8 @@ export function seckillStoreUpdateApi(params, data) {
url: '/admin/store/seckill/update',
method: 'post',
params,
data
})
data,
});
}
/**
@@ -238,8 +237,8 @@ export function seckillStoreDeleteApi(params) {
return request({
url: '/admin/store/seckill/delete',
method: 'get',
params
})
params,
});
}
/**
@@ -249,19 +248,19 @@ export function seckillStoreStatusApi(params) {
return request({
url: '/admin/store/seckill/update/status',
method: 'post',
params
})
params,
});
}
/**
* 秒杀配置 修改状态
*/
export function seckillConfigStatusApi(id,params) {
export function seckillConfigStatusApi(id, params) {
return request({
url: `/admin/store/seckill/manger/update/status/${id}`,
method: 'post',
params
})
params,
});
}
/**
@@ -271,8 +270,8 @@ export function bargainListApi(params) {
return request({
url: `/admin/store/bargain/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -282,8 +281,8 @@ export function bargainSaveApi(data) {
return request({
url: `/admin/store/bargain/save`,
method: 'POST',
data
})
data,
});
}
/**
@@ -293,8 +292,8 @@ export function bargainInfoApi(params) {
return request({
url: `/admin/store/bargain/info`,
method: 'get',
params
})
params,
});
}
/**
@@ -305,8 +304,8 @@ export function bargainUpdateApi(params, data) {
url: `/admin/store/bargain/update`,
method: 'post',
params,
data
})
data,
});
}
/**
@@ -316,8 +315,8 @@ export function bargainDeleteApi(params) {
return request({
url: `/admin/store/bargain/delete`,
method: 'get',
params
})
params,
});
}
/**
@@ -326,8 +325,8 @@ export function bargainDeleteApi(params) {
export function bargainOrderPinkApi(id) {
return request({
url: `/admin/store/bargain/bargain_list/${id}`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -337,8 +336,8 @@ export function bargainListListApi(params) {
return request({
url: `/admin/store/bargain/bargain_list`,
method: 'get',
params
})
params,
});
}
/**
@@ -348,8 +347,8 @@ export function bargainStatusApi(params) {
return request({
url: `/admin/store/bargain/update/status`,
method: 'post',
params
})
params,
});
}
/**
@@ -359,8 +358,8 @@ export function combinationListApi(params) {
return request({
url: `/admin/store/combination/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -370,8 +369,8 @@ export function combinationDeleteApi(params) {
return request({
url: `/admin/store/combination/delete`,
method: 'get',
params
})
params,
});
}
/**
@@ -381,20 +380,20 @@ export function combinationSaveApi(data) {
return request({
url: `/admin/store/combination/save`,
method: 'post',
data
})
data,
});
}
/**
* 拼团商品 修改
*/
export function combinationUpdateApi(params,data) {
export function combinationUpdateApi(params, data) {
return request({
url: `/admin/store/combination/update`,
method: 'post',
params,
data
})
data,
});
}
/**
@@ -404,8 +403,8 @@ export function combinationInfoApi(params) {
return request({
url: `/admin/store/combination/info`,
method: 'get',
params
})
params,
});
}
/**
@@ -415,8 +414,8 @@ export function combinationStatusApi(params) {
return request({
url: `/admin/store/combination/update/status`,
method: 'post',
params
})
params,
});
}
/**
@@ -426,8 +425,8 @@ export function combineListApi(params) {
return request({
url: `/admin/store/combination/combine/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -437,8 +436,8 @@ export function combineStatisticsApi(params) {
return request({
url: `/admin/store/combination/statistics`,
method: 'get',
params
})
params,
});
}
/**
@@ -447,8 +446,8 @@ export function combineStatisticsApi(params) {
export function combineOrderPinkApi(id) {
return request({
url: `/admin/store/combination/order_pink/${id}`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -458,8 +457,8 @@ export function exportBargainApi(params) {
return request({
url: `/admin/export/excel/bargain/product`,
method: 'get',
params
})
params,
});
}
/**
@@ -469,112 +468,55 @@ export function exportcombiantionApi(params) {
return request({
url: `/admin/export/excel/combiantion/product`,
method: 'get',
params
})
params,
});
}
/**
* 视频号 草稿列表
* @description 活动样式
*/
export function draftListApi(params) {
export function atuosphereList(params) {
return request({
url: `/admin/pay/component/product/draft/list`,
url: `/admin/activitystyle/list`,
method: 'get',
params
})
params,
});
}
/**
* 视频号 商品列表
* @description 活动样式
*/
export function videoProductListApi(params) {
export function atmosphereStatusApi(data) {
return request({
url: `/admin/pay/component/product/list`,
url: `/admin/activitystyle/status`,
method: 'post',
data,
});
}
/**
* @description 活动样式
*/
export function atmosphereDelete(params) {
return request({
url: `/admin/activitystyle/delete`,
method: 'get',
params
})
params,
});
}
/**
* 视频号 类目
* @description 氛围图 -- 选择商品列表 氛围图、活动边框公用同一接口type传值判断
*/
export function catListApi(params) {
return request({
url: `/admin/pay/component/cat/get/list`,
method: 'get'
})
export function selectProductList(data) {
return request.get(`marketing/spu/lst`, data);
}
/**
* 视频号 添加
* @description 氛围图 -- 创建氛围图
*/
export function videoAddApi(data) {
return request({
url: `/admin/pay/component/product/add`,
method: 'post',
data
})
export function createAtuosphere(data) {
return request.post(`admin/activitystyle/save`, data);
}
/**
* 视频号 编辑
* @description 氛围图 -- 编辑氛围图
*/
export function videoUpdateApi(data) {
return request({
url: `/admin/pay/component/product/update`,
method: 'post',
data
})
}
/**
* 视频号 上架
*/
export function videoUpApi(proId) {
return request({
url: `/admin/pay/component/product/listing/${proId}`,
method: 'post'
})
}
/**
* 视频号 下架
*/
export function videoDownApi(proId) {
return request({
url: `/admin/pay/component/product/delisting/${proId}`,
method: 'post'
})
}
/**
* 视频号 删除
*/
export function videoDelApi(proId) {
return request({
url: `/admin/pay/component/product/delete/${proId}`,
method: 'post'
})
}
/**
* 视频号 草稿商品详情
*/
export function draftInfoApi(id) {
return request({
url: `/admin/pay/component/product/draft/get/${id}`,
method: 'get'
})
}
/**
* 视频号 草稿商品编辑
*/
export function draftUpdateApi(data) {
return request({
url: `/admin/pay/component/product/update`,
method: 'post',
data
})
export function atuosphereUpdateApi(data) {
return request.post(`admin/activitystyle/update`, data);
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 订单 列表
@@ -18,8 +18,8 @@ export function orderListApi(params) {
return request({
url: '/admin/store/order/list',
method: 'get',
params
})
params,
});
}
/**
@@ -30,8 +30,8 @@ export function orderStatusNumApi(params) {
return request({
url: '/admin/store/order/status/num',
method: 'get',
params
})
params,
});
}
/**
@@ -42,8 +42,8 @@ export function orderListDataApi(params) {
return request({
url: '/admin/store/order/list/data',
method: 'get',
params
})
params,
});
}
/**
* 订单 删除
@@ -53,8 +53,8 @@ export function orderDeleteApi(params) {
return request({
url: '/admin/store/order/delete',
method: 'get',
params
})
params,
});
}
/**
@@ -66,8 +66,8 @@ export function orderUpdateApi(data, params) {
url: '/admin/store/order/update',
method: 'post',
data,
params
})
params,
});
}
/**
@@ -78,8 +78,8 @@ export function orderLogApi(params) {
return request({
url: '/admin/store/order/status/list',
method: 'get',
params
})
params,
});
}
/**
@@ -90,8 +90,8 @@ export function orderDetailApi(params) {
return request({
url: '/admin/store/order/info',
method: 'get',
params
})
params,
});
}
/**
@@ -102,8 +102,8 @@ export function orderMarkApi(params) {
return request({
url: '/admin/store/order/mark',
method: 'post',
params
})
params,
});
}
/**
@@ -114,8 +114,8 @@ export function orderSendApi(data) {
return request({
url: '/admin/store/order/send',
method: 'post',
data
})
data,
});
}
/**
@@ -126,8 +126,8 @@ export function orderRefuseApi(params) {
return request({
url: '/admin/store/order/refund/refuse',
method: 'get',
params
})
params,
});
}
/**
@@ -138,8 +138,8 @@ export function orderRefundApi(params) {
return request({
url: '/admin/store/order/refund',
method: 'get',
params
})
params,
});
}
/**
@@ -149,8 +149,8 @@ export function orderRefundApi(params) {
export function writeUpdateApi(vCode) {
return request({
url: `/admin/store/order/writeUpdate/${vCode}`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -160,8 +160,8 @@ export function writeUpdateApi(vCode) {
export function writeConfirmApi(vCode) {
return request({
url: `/admin/store/order/writeConfirm/${vCode}`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -170,8 +170,8 @@ export function writeConfirmApi(vCode) {
export function orderStatisticsApi() {
return request({
url: `/admin/store/order/statistics`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -181,8 +181,8 @@ export function statisticsDataApi(params) {
return request({
url: `/admin/store/order/statisticsData`,
method: 'get',
params
})
params,
});
}
/**
@@ -192,8 +192,8 @@ export function updatePriceApi(data) {
return request({
url: `admin/store/order/update/price`,
method: 'post',
data
})
data,
});
}
/**
@@ -203,8 +203,8 @@ export function orderTimeApi(params) {
return request({
url: `/admin/store/order/time`,
method: 'get',
params
})
params,
});
}
/**
@@ -213,8 +213,8 @@ export function orderTimeApi(params) {
export function sheetInfoApi() {
return request({
url: `/admin/store/order/sheet/info`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -224,8 +224,8 @@ export function getLogisticsInfoApi(params) {
return request({
url: `/admin/store/order/getLogisticsInfo`,
method: 'get',
params
})
params,
});
}
/**
@@ -234,8 +234,8 @@ export function getLogisticsInfoApi(params) {
export function companyGetListApi() {
return request({
url: `/admin/pay/component/delivery/company/get/list`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -245,16 +245,27 @@ export function videoSendApi(data) {
return request({
url: `/admin/store/order/video/send`,
method: 'post',
data
})
data,
});
}
/**
*打印小票
*/
export function orderPrint(id) {
export function orderPrint(id) {
return request({
url: `/admin/yly/print/${id}`,
method: 'get',
})
});
}
/**
*更改订单运单号
*/
export function updateTrackingNumberApi(data) {
return request({
url: `/admin/store/order/update/tracking/number`,
method: 'post',
data,
});
}

90
admin/src/api/pagediy.js Normal file
View File

@@ -0,0 +1,90 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request';
/**
* 列表
*/
export function pagediyListApi(params) {
return request({
url: '/admin/pagediy/list',
method: 'get',
params,
});
}
/**
* 新增
*/
export function pagediySaveApi(data) {
return request({
url: '/admin/pagediy/save',
method: 'post',
data,
});
}
/**
* 更新
*/
export function pagediyUpdateApi(data) {
return request({
url: '/admin/pagediy/update',
method: 'post',
data,
});
}
/**
*详情
*/
export function pagediyInfoApi(id) {
return request({
url: `/admin/pagediy/info/${id}`,
method: 'get',
});
}
/**
*删除
*/
export function pagediyDeleteApi(params) {
return request({
url: `/admin/pagediy/delete`,
method: 'get',
params,
});
}
/**
*设为首页
*/
export function pagediySetdefaultApi(id) {
return request({
url: `/admin/pagediy/setdefault/${id}`,
method: 'get',
});
}
/**
*获取首页
*/
export function pagediyGetSetHome(id) {
return request({
url: `/admin/pagediy/getdefault`,
method: 'get',
});
}
/**
* 获取小程序二维码
* @returns {*}
*/
export function wechatQrcodeApi(data) {
return request({
url: `/public/wechat/mini/get/qrcode`,
method: 'post',
data,
});
}

View File

@@ -1,33 +1,32 @@
import axios from 'axios'
import axios from 'axios';
const service = axios.create({
timeout: 40000,
})
});
service.interceptors.request.use(
config => {
return config
(config) => {
return config;
},
error => {
Promise.reject(error)
}
)
(error) => {
Promise.reject(error);
},
);
// response interceptor
service.interceptors.response.use(
response => {
const res = response
if (res.status !== 200 && res.status !== 401) {
(response) => {
const res = response;
if (res.status !== 200 && res.status !== 401) {
Message({
message: res.data.msg || 'Error',
type: 'error',
duration: 5 * 1000
})
return Promise.reject()
}else {
return res.data
duration: 5 * 1000,
});
return Promise.reject();
} else {
return res.data;
}
},
error => {
}
)
export default service
(error) => {},
);
export default service;

View File

@@ -1,63 +1,63 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 新增
* @param
* @param
*/
export function addRole(pram) {
const data = {
level: pram.level,
roleName: pram.roleName,
status: pram.status,
rules: pram.rules
}
rules: pram.rules,
};
// data.rules = pram.rules.join(',')
return request({
url: '/admin/system/role/save',
method: 'POST',
data: data
})
data: data,
});
}
/**
* 删除
* @param
* @param
*/
export function delRole(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/role/delete',
method: 'GET',
params: data
})
params: data,
});
}
/**
* 详情
* @param
* @param
*/
export function getInfo(pram) {
return request({
url: `/admin/system/role/info/${pram}`,
method: 'GET',
})
});
}
/**
* 分页列表
* @param
* @param
*/
export function getRoleList(pram) {
const data = {
@@ -68,53 +68,53 @@ export function getRoleList(pram) {
limit: pram.limit,
roleName: pram.roleName,
rules: pram.rules,
status: pram.status
}
status: pram.status,
};
return request({
url: '/admin/system/role/list',
method: 'get',
params: data
})
params: data,
});
}
/**
* 修改
* @param
* @param
*/
export function updateRole(pram) {
const data = {
id: pram.id,
roleName: pram.roleName,
rules: pram.rules,
status: pram.status
}
status: pram.status,
};
return request({
url: '/admin/system/role/update',
method: 'post',
params: {id: pram.id},
data: data
})
params: { id: pram.id },
data: data,
});
}
/**
* 修改身份状态
* @param
* @param
*/
export function updateRoleStatus(pram) {
return request({
url: '/admin/system/role/updateStatus',
method: 'get',
params: {id: pram.id,status:pram.status},
})
params: { id: pram.id, status: pram.status },
});
}
/**
* 缓存菜单
* @param
* @param
*/
export function menuCacheList(pram) {
export function menuCacheList(pram) {
return request({
url: '/admin/system/menu/cache/tree',
method: 'get',
})
}
});
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 角色详情
@@ -17,7 +17,7 @@ export function getRoleById(pram) {
return request({
url: `/admin/system/role/info/${pram.roles}`,
method: 'GET',
})
});
}
/**
@@ -27,6 +27,6 @@ export function getRoleById(pram) {
export function menuListApi() {
return request({
url: '/admin/getMenus',
method: 'GET'
})
method: 'GET',
});
}

94
admin/src/api/schedule.js Normal file
View File

@@ -0,0 +1,94 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request';
// 定时任务列表
export function jobList() {
return request({
url: '/admin/schedule/job/list',
method: 'get',
});
}
// 定时任务日志分页列表
export function jobLogList(data) {
return request({
url: '/admin/schedule/job/log/list',
method: 'get',
params: { ...data },
});
}
// 添加定时任务
export function scheduleJobAdd(pram) {
const data = {
jobId: pram.jobId,
beanName: pram.beanName,
cronExpression: pram.cronExpression,
methodName: pram.methodName,
params: pram.params,
remark: pram.remark,
};
return request({
url: '/admin/schedule/job/add',
method: 'post',
data: data,
});
}
// 删除定时任务
export function scheduleJobDelete(id) {
return request({
url: `/admin/schedule/job/delete/${id}`,
method: 'post',
});
}
// 启动定时任务
export function scheduleJobStart(id) {
return request({
url: `/admin/schedule/job/start/${id}`,
method: 'post',
});
}
// 暂停定时任务
export function scheduleJobSuspend(id) {
return request({
url: `/admin/schedule/job/suspend/${id}`,
method: 'post',
});
}
// 立即执行定时任务(一次)暂停定时任务
export function scheduleJobTrig(id) {
return request({
url: `/admin/schedule/job/trig/${id}`,
method: 'post',
});
}
// 定时任务编辑
export function scheduleJobUpdate(pram) {
const data = {
jobId: pram.jobId,
beanName: pram.beanName,
cronExpression: pram.cronExpression,
methodName: pram.methodName,
params: pram.params,
remark: pram.remark,
};
return request({
url: '/admin/schedule/job/update',
method: 'post',
data: { ...data },
});
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* @description 短信发送记录 -- 列表
*/
@@ -16,8 +16,8 @@ export function smsLstApi(params) {
return request({
url: '/admin/pass/user/record',
method: 'get',
params
})
params,
});
}
/**
* @description 短信账户 -- 登录
@@ -26,8 +26,8 @@ export function configApi(data) {
return request({
url: '/admin/pass/login',
method: 'post',
data
})
data,
});
}
/**
* @description 短信账户 -- 获取验证码
@@ -36,8 +36,8 @@ export function captchaApi(params) {
return request({
url: `/admin/pass/sendUserCode`,
method: 'get',
params
})
params,
});
}
/**
* @description 短信账户 -- 注册
@@ -46,8 +46,8 @@ export function registerApi(data) {
return request({
url: '/admin/pass/register',
method: 'post',
data
})
data,
});
}
/**
* @description 短信账户 -- 是否登录
@@ -55,8 +55,8 @@ export function registerApi(data) {
export function isLoginApi() {
return request({
url: '/admin/pass/isLogin',
method: 'get'
})
method: 'get',
});
}
/**
* @description 短信账户 -- 退出登录
@@ -64,8 +64,8 @@ export function isLoginApi() {
export function logoutApi() {
return request({
url: '/admin/pass/logout',
method: 'get'
})
method: 'get',
});
}
/**
* @description 短信账户 -- 剩余条数
@@ -73,8 +73,8 @@ export function logoutApi() {
export function smsNumberApi() {
return request({
url: '/admin/sms/logout',
method: 'get'
})
method: 'get',
});
}
/**
* @description 短信模板 -- 列表
@@ -83,8 +83,8 @@ export function smsTempLstApi(params) {
return request({
url: '/admin/sms/temps',
method: 'get',
params
})
params,
});
}
/**
* @description 短信购买 -- 支付套餐
@@ -93,8 +93,8 @@ export function smsPriceApi(params) {
return request({
url: '/admin/pass/meal/list',
method: 'get',
params
})
params,
});
}
/**
* @description 短信购买 -- 支付码
@@ -103,8 +103,8 @@ export function payCodeApi(data) {
return request({
url: '/admin/pass/meal/code',
method: 'post',
data
})
data,
});
}
/**
* @description 短信模板 -- 添加表单
@@ -113,8 +113,8 @@ export function tempCreateApi(data) {
return request({
url: '/admin/sms/temp/apply',
method: 'post',
data
})
data,
});
}
/**
* @description 短信 -- 用户信息
@@ -122,8 +122,8 @@ export function tempCreateApi(data) {
export function smsInfoApi() {
return request({
url: '/admin/pass/info',
method: 'get'
})
method: 'get',
});
}
/**
@@ -133,8 +133,8 @@ export function smsSaveApi(params) {
return request({
url: '/admin/sms/config/save',
method: 'post',
params
})
params,
});
}
/**
@@ -144,8 +144,8 @@ export function updatePasswordApi(data) {
return request({
url: '/admin/pass/update/password',
method: 'post',
data
})
data,
});
}
/**
@@ -155,8 +155,8 @@ export function updateHoneApi(data) {
return request({
url: '/admin/pass/update/phone',
method: 'post',
data
})
data,
});
}
/**
@@ -166,8 +166,8 @@ export function serviceOpenApi(data) {
return request({
url: '/admin/pass/service/open',
method: 'post',
data
})
data,
});
}
/**
@@ -177,8 +177,8 @@ export function exportTempApi(params) {
return request({
url: '/admin/express/template',
method: 'get',
params
})
params,
});
}
/**
@@ -188,8 +188,8 @@ export function expressAllApi(params) {
return request({
url: 'admin/express/all',
method: 'get',
params
})
params,
});
}
/**
@@ -199,8 +199,8 @@ export function smsSignApi(data) {
return request({
url: 'admin/sms/modify/sign',
method: 'post',
data
})
data,
});
}
/**
@@ -210,6 +210,16 @@ export function phoneValidatorApi(data) {
return request({
url: 'admin/pass/update/phone/validator',
method: 'post',
data
})
data,
});
}
/**
* @description 一号通 商家寄件 快递列表
*/
export function shipmentExpressApi() {
return request({
url: '/admin/pass/shipment/express',
method: 'get',
});
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 商品统计数据
@@ -18,133 +18,133 @@ export function productDataApi(params) {
return request({
url: `/admin/statistics/product/data`,
method: 'GET',
params
})
params,
});
}
/**
* 商品排行数据
* @param pram
*/
export function productRankApi(params) {
export function productRankApi(params) {
return request({
url: `/admin/statistics/product/ranking`,
method: 'GET',
params
})
params,
});
}
/**
* 商品趋势数据
* @param pram
*/
export function productTrendApi(params) {
export function productTrendApi(params) {
return request({
url: `/admin/statistics/product/trend`,
method: 'GET',
params
})
params,
});
}
/**
* 交易统计数据
* @param pram
*/
export function tradeDataApi() {
export function tradeDataApi() {
return request({
url: `/admin/statistics/trade/data`,
method: 'GET',
})
});
}
/**
* 交易概览
* @param pram
*/
export function tradeOverviewApi(params) {
export function tradeOverviewApi(params) {
return request({
url: `/admin/statistics/trade/overview`,
method: 'GET',
params
})
params,
});
}
/**
* 交易趋势
* @param pram
*/
export function tradeTrendApi(params) {
export function tradeTrendApi(params) {
return request({
url: `/admin/statistics/trade/trend`,
method: 'GET',
params
})
params,
});
}
/**
* 用户总数据
* @param pram
*/
export function userTotalData() {
export function userTotalData() {
return request({
url: `/admin/statistics/user/total/data`,
method: 'GET'
})
method: 'GET',
});
}
/**
* 用户区域数据
* @param pram
*/
export function userAreaData() {
export function userAreaData() {
return request({
url: `/admin/statistics/user/area`,
method: 'GET'
})
method: 'GET',
});
}
/**
* 用户渠道数据
* @param pram
*/
export function userChannelData() {
export function userChannelData() {
return request({
url: `/admin/statistics/user/channel`,
method: 'GET'
})
method: 'GET',
});
}
/**
* 用户概览
* @param pram
*/
export function userOverviewData(params) {
export function userOverviewData(params) {
return request({
url: `/admin/statistics/user/overview`,
method: 'GET',
params
})
params,
});
}
/**
* 用户性别数据
* @param pram
*/
export function userSexData() {
export function userSexData() {
return request({
url: `/admin/statistics/user/sex`,
method: 'GET',
})
});
}
/**
* 用户概览列表
* @param pram
*/
export function userOverviewListApi(params) {
export function userOverviewListApi(params) {
return request({
url: `/admin/statistics/user/overview/list`,
method: 'GET',
params
})
params,
});
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 新增商品
@@ -18,8 +18,8 @@ export function productCreateApi(data) {
return request({
url: '/admin/store/product/save',
method: 'POST',
data
})
data,
});
}
/**
@@ -30,8 +30,8 @@ export function productUpdateApi(data) {
return request({
url: '/admin/store/product/update',
method: 'POST',
data
})
data,
});
}
/**
@@ -41,8 +41,8 @@ export function productUpdateApi(data) {
export function productDetailApi(id) {
return request({
url: `/admin/store/product/info/${id}`,
method: 'GET'
})
method: 'GET',
});
}
/**
@@ -53,18 +53,19 @@ export function productDeleteApi(id, type) {
return request({
url: `/admin/store/product/delete/${id}`,
method: 'get',
params:{type:type}
})
params: { type: type },
});
}
/**
* 商品列表 表头数量
*/
export function productHeadersApi() {
export function productHeadersApi(params) {
return request({
url: '/admin/store/product/tabs/headers',
method: 'GET'
})
method: 'GET',
params,
});
}
/**
@@ -75,8 +76,8 @@ export function productLstApi(params) {
return request({
url: '/admin/store/product/list',
method: 'GET',
params
})
params,
});
}
/**
* 商品分类
@@ -86,8 +87,8 @@ export function categoryApi(params) {
return request({
url: '/admin/category/list/tree',
method: 'GET',
params
})
params,
});
}
/**
* 商品上架
@@ -96,8 +97,8 @@ export function categoryApi(params) {
export function putOnShellApi(id) {
return request({
url: `/admin/store/product/putOnShell/${id}`,
method: 'GET'
})
method: 'GET',
});
}
/**
* 商品下架
@@ -106,8 +107,8 @@ export function putOnShellApi(id) {
export function offShellApi(id) {
return request({
url: `/admin/store/product/offShell/${id}`,
method: 'GET'
})
method: 'GET',
});
}
/**
* 商品规格 列表
@@ -117,8 +118,19 @@ export function templateListApi(params) {
return request({
url: '/admin/store/product/rule/list',
method: 'GET',
params
})
params,
});
}
/**
* 增加库存
* @param pram
*/
export function stockAddApi(data) {
return request({
url: '/admin/store/product/quick/stock/add',
method: 'POST',
data,
});
}
/**
* 商品规格 删除
@@ -127,8 +139,8 @@ export function templateListApi(params) {
export function attrDeleteApi(id) {
return request({
url: `/admin/store/product/rule/delete/${id}`,
method: 'get'
})
method: 'get',
});
}
/**
* 商品规格 新增
@@ -138,8 +150,8 @@ export function attrCreatApi(data) {
return request({
url: '/admin/store/product/rule/save',
method: 'POST',
data
})
data,
});
}
/**
* 商品规格 编辑
@@ -149,8 +161,8 @@ export function attrEditApi(data) {
return request({
url: '/admin/store/product/rule/update',
method: 'POST',
data
})
data,
});
}
/**
* 商品规格 详情
@@ -159,8 +171,8 @@ export function attrEditApi(data) {
export function attrInfoApi(id) {
return request({
url: `admin/store/product/rule/info/${id}`,
method: 'GET'
})
method: 'GET',
});
}
/**
* 商品评论 列表
@@ -170,8 +182,8 @@ export function replyListApi(params) {
return request({
url: '/admin/store/product/reply/list',
method: 'GET',
params
})
params,
});
}
/**
* 商品评论 新增
@@ -181,8 +193,8 @@ export function replyCreatApi(data) {
return request({
url: '/admin/store/product/reply/save',
method: 'POST',
data
})
data,
});
}
/**
* 商品评论 编辑
@@ -192,8 +204,8 @@ export function replyEditApi(data) {
return request({
url: '/admin/store/product/reply/update',
method: 'POST',
data
})
data,
});
}
/**
* 商品评论 详情
@@ -202,8 +214,8 @@ export function replyEditApi(data) {
export function replyInfoApi(id) {
return request({
url: `/admin/store/product/reply/info/${id}`,
method: 'GET'
})
method: 'GET',
});
}
/**
* 商品评论 删除
@@ -212,8 +224,8 @@ export function replyInfoApi(id) {
export function replyDeleteApi(id) {
return request({
url: `/admin/store/product/reply/delete/${id}`,
method: 'GET'
})
method: 'GET',
});
}
/**
@@ -224,8 +236,8 @@ export function replyCommentApi(data) {
return request({
url: `/admin/store/product/reply/comment`,
method: 'post',
data
})
data,
});
}
/**
@@ -236,8 +248,8 @@ export function productExportApi(params) {
return request({
url: `/admin/export/excel/product`,
method: 'get',
params
})
params,
});
}
/**
@@ -248,11 +260,10 @@ export function importProductApi(params) {
return request({
url: `/admin/store/product/importProduct`,
method: 'post',
params
})
params,
});
}
/**
* 商品复制 一号通
* @param pram
@@ -261,8 +272,8 @@ export function copyProductApi(data) {
return request({
url: `/admin/store/product/copy/product`,
method: 'post',
data
})
data,
});
}
/**
@@ -272,8 +283,8 @@ export function copyProductApi(data) {
export function restoreApi(id) {
return request({
url: `/admin/store/product/restore/${id}`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -284,8 +295,8 @@ export function productExcelApi(params) {
return request({
url: `/admin/export/excel/product`,
method: 'get',
params
})
params,
});
}
/**
@@ -295,18 +306,28 @@ export function productExcelApi(params) {
export function copyConfigApi() {
return request({
url: `/admin/store/product/copy/config`,
method: 'post'
})
method: 'post',
});
}
/**
* 订单数据 导出
* @param pram
*/
export function orderExcelApi(params) {
export function orderExcelApi(params) {
return request({
url: `/admin/export/excel/order`,
method: 'get',
params
})
}
params,
});
}
/**
* 根据商品id集合查询商品列表
* @param pram
*/
export function productListbyidsApi(ids) {
return request({
url: `/admin/store/product/listids/${ids}`,
method: 'get',
});
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* 提货点分页列表
@@ -18,19 +18,20 @@ export function storeListApi(data) {
return request({
url: '/admin/system/store/list',
method: 'get',
params: data
})
params: data,
});
}
/**
* 提货点数量
* @param pram
*/
export function storeGetCountApi() {
export function storeGetCountApi(params) {
return request({
url: '/admin/system/store/getCount',
method: 'get'
})
method: 'get',
params,
});
}
/**
@@ -41,8 +42,8 @@ export function storeUpdateStatusApi(data) {
return request({
url: '/admin/system/store/update/status',
method: 'get',
params: data
})
params: data,
});
}
/**
@@ -53,8 +54,8 @@ export function storeDeleteApi(data) {
return request({
url: '/admin/system/store/delete',
method: 'get',
params: data
})
params: data,
});
}
/**
@@ -65,8 +66,8 @@ export function allDeleteApi(params) {
return request({
url: '/admin/system/store/completely/delete',
method: 'get',
params
})
params,
});
}
/**
@@ -77,8 +78,8 @@ export function storeSaveApi(data) {
return request({
url: '/admin/system/store/save',
method: 'post',
data
})
data,
});
}
/**
@@ -89,22 +90,22 @@ export function storeInfoApi(data) {
return request({
url: '/admin/system/store/info',
method: 'get',
params: data
})
params: data,
});
}
/**
* 提货点修改
* @param pram
*/
export function storeUpdateApi(data,id) {
export function storeUpdateApi(data, id) {
// const param = ;
return request({
url: '/admin/system/store/update',
method: 'post',
params: {id: id},
data
})
params: { id: id },
data,
});
}
/**
@@ -115,8 +116,8 @@ export function storeRecoveryApi(params) {
return request({
url: '/admin/system/store/recovery',
method: 'get',
params
})
params,
});
}
/**
@@ -127,8 +128,8 @@ export function storeStaffListApi(data) {
return request({
url: '/admin/system/store/staff/list',
method: 'get',
params: data
})
params: data,
});
}
/**
@@ -139,8 +140,8 @@ export function storeStaffSaveApi(data) {
return request({
url: '/admin/system/store/staff/save',
method: 'POST',
params: data
})
params: data,
});
}
/**
@@ -151,11 +152,10 @@ export function storeStaffDeleteApi(data) {
return request({
url: '/admin/system/store/staff/delete',
method: 'get',
params: data
})
params: data,
});
}
/**
* 核销员编辑
* @param pram
@@ -164,8 +164,8 @@ export function storeStaffUpdateApi(data) {
return request({
url: '/admin/system/store/staff/update',
method: 'POST',
params: data
})
params: data,
});
}
/**
@@ -176,8 +176,8 @@ export function storeStaffInfoApi(id) {
return request({
url: '/admin/system/store/staff/info',
method: 'get',
params: id
})
params: id,
});
}
/**
@@ -188,8 +188,8 @@ export function storeStaffUpdateStatusApi(data) {
return request({
url: '/admin/system/store/staff/update/status',
method: 'get',
params: data
})
params: data,
});
}
/**
@@ -200,8 +200,8 @@ export function userListApi(data) {
return request({
url: '/admin/wechat/user/list',
method: 'get',
params: data
})
params: data,
});
}
/**
@@ -212,16 +212,6 @@ export function orderListApi(params) {
return request({
url: '/admin/system/store/order/list',
method: 'post',
params
})
params,
});
}

View File

@@ -1,14 +1,14 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
/**
* @description 附件分类 -- 所有分类
*/
@@ -16,42 +16,42 @@ export function formatLstApi(data) {
return request.get({
url: '/admin/product/save',
method: 'POST',
data
})
data,
});
}
/**
* @description 附件分类 -- 添加分类
*/
export function attachmentCreateApi() {
return request.get(`system/attachment/category/create/form`)
return request.get(`system/attachment/category/create/form`);
}
/**
* @description 附件分类 -- 编辑分类
*/
export function attachmentUpdateApi(id) {
return request.get(`system/attachment/category/update/form/${id}`)
return request.get(`system/attachment/category/update/form/${id}`);
}
/**
* @description 附件分类 -- 删除分类
*/
export function attachmentDeleteApi(id) {
return request.delete(`system/attachment/category/delete/${id}`)
return request.delete(`system/attachment/category/delete/${id}`);
}
/**
* @description 图片列表
*/
export function attachmentListApi(data) {
return request.get(`system/attachment/lst`, data)
return request.get(`system/attachment/lst`, data);
}
/**
* @description 图片列表 -- 删除
*/
export function picDeleteApi(id) {
return request.delete(`system/attachment/delete`, id)
return request.delete(`system/attachment/delete`, id);
}
/**
* @description 图片列表 -- 修改附件分类
*/
export function categoryApi(ids, attachment_category_id) {
return request.post(`system/attachment/category`, { ids, attachment_category_id })
return request.post(`system/attachment/category`, { ids, attachment_category_id });
}

View File

@@ -1,58 +1,58 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
export function configCheckUnique(pram) {
const data = {
name: pram.name
}
name: pram.name,
};
return request({
url: '/admin/system/config/check',
method: 'GET',
params: data
})
params: data,
});
}
export function configDelete(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/config/delete',
method: 'GET',
params: data
})
params: data,
});
}
export function configInfo(pram) {
const data = {
formId: pram.id
}
formId: pram.id,
};
return request({
url: '/admin/system/config/info',
method: 'GET',
params: data
})
params: data,
});
}
export function configList(pram) {
const data = {
page: pram.page,
limit: pram.limit
}
limit: pram.limit,
};
return request({
url: '/admin/system/config/list',
method: 'GET',
params: data
})
params: data,
});
}
export function configSave(pram) {
@@ -65,57 +65,194 @@ export function configSave(pram) {
pid: pram.pid,
status: pram.status,
type: pram.type,
value: pram.value // value 存储表单配置数据,其他的参数来自于父级数据 justForAPI
}
}
value: pram.value, // value 存储表单配置数据,其他的参数来自于父级数据 justForAPI
},
};
return request({
url: '/admin/system/config/save',
method: 'POST',
params: data
})
params: data,
});
}
export function configSaveForm(pram) {
return request({
url: '/admin/system/config/save/form',
method: 'POST',
data: pram
})
data: pram,
});
}
export function configUpdate(pram) {
const data = {
id: pram.id,
systemConfigRequest: pram.systemConfigRequest
}
systemConfigRequest: pram.systemConfigRequest,
};
return request({
url: '/admin/system/config/update',
method: 'POST',
params: data
})
params: data,
});
}
export function configSaveUniq(pram) {
const data = {
key: pram.key,
value: pram.value
}
value: pram.value,
};
return request({
url: '/admin/system/config/saveuniq',
method: 'POST',
params: data
})
params: data,
});
}
export function configGetUniq(pram) {
const data = {
key: pram.key
}
/**
* @description 获取管理端logo
*/
export function getSiteLogoApi() {
return request({
url: '/admin/system/config/getuniq',
url: '/admin/system/config/get/site/logo',
method: 'GET',
params: data
})
});
}
/**
* @description 获取文件存储类型
*/
export function getUploadTypeApi() {
return request({
url: '/admin/system/config/get/upload/type',
method: 'GET',
});
}
/**
* @description 获取小程序下载地址
*/
export function getMiniDownloadUrlApi() {
return request({
url: '/admin/system/config/get/mini/download/url',
method: 'GET',
});
}
/**
* @description 获取腾讯地图key
*/
export function getTxMapKeyApi() {
return request({
url: '/admin/system/config/get/tx/map/key',
method: 'GET',
});
}
/**
* @description 获取移动端首页列表样式
*/
export function getHomeStyleApi() {
return request({
url: '/admin/system/config/get/home/page/list/style',
method: 'GET',
});
}
/**
* @description 获取移动端首页列表样式
*/
export function getAuthHostApi() {
return request({
url: '/admin/system/config/get/auth/host',
method: 'GET',
});
}
/**
* @description 清除config缓存
*/
export function clearCacheApi() {
return request({
url: '/admin/system/config/clear/cache',
method: 'post',
});
}
/**
* @description 获取主题色
*/
export function changeColorApi() {
return request({
url: '/admin/system/config/get/change/color',
method: 'get',
});
}
/**
* @description 保存主题色
*/
export function saveColorApi(data) {
return request({
url: '/admin/system/config/save/change/color',
method: 'post',
data,
});
}
/**
* @description 保存移动端首页列表样式
*/
export function savehomeStyleApi(data) {
return request({
url: '/admin/system/config/save/home/page/list/style',
method: 'post',
data,
});
}
/**
* @description 一号通 应用保存
*/
export function passAppSaveApi(data) {
return request({
url: '/admin/pass/appsave',
method: 'post',
data,
});
}
/**
* @description 一号通 应用详情获取
*/
export function passAppInfoApi() {
return request({
url: '/admin/pass/appget',
method: 'get',
});
}
/**
* @description 获取移动端域名
*/
export function frontDomainApi(data) {
return request({
url: '/public/jsconfig/get/front/domain',
method: 'GET',
});
}
/**
* @description 获取图片域名
*/
export function mediaDomainApi(data) {
return request({
url: '/public/jsconfig/get/admin/mediadomain',
method: 'GET',
});
}
/**
* @description 获取系统状态信息
*/
export function systemStateInfoApi() {
return request({
url: '/admin/system/status/info',
method: 'get',
});
}

View File

@@ -1,65 +1,65 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
export function getFormConfigInfo(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/form/temp/info',
method: 'GET',
params: data
})
params: data,
});
}
export function getFormConfigList(pram) {
const data = {
keywords: pram.keywords,
page: pram.page,
limit: pram.limit
}
limit: pram.limit,
};
return request({
url: '/admin/system/form/temp/list',
method: 'GET',
params: data
})
params: data,
});
}
export function getFormConfigSave(pram) {
const data = {
content: pram.content,
info: pram.info,
name: pram.name
}
name: pram.name,
};
return request({
url: '/admin/system/form/temp/save',
method: 'POST',
data: data
})
data: data,
});
}
export function getFormConfigEdit(pram) {
const params = { id: pram.id }
const params = { id: pram.id };
const data = {
content: pram.content,
info: pram.info,
name: pram.name
}
name: pram.name,
};
return request({
url: '/admin/system/form/temp/update',
method: 'POST',
params: params,
data: data
})
data: data,
});
}
/**
@@ -68,63 +68,63 @@ export function getFormConfigEdit(pram) {
*/
export function notificationListApi(pram) {
const data = {
sendType: pram.sendType
sendType: pram.sendType,
//发送类型1通知会员2通知平台
}
};
return request({
url: '/admin/system/notification/list',
method: 'GET',
params: data
})
params: data,
});
}
/**
* 小程序订阅模板开关
* @param pram
*/
export function notificationRoutine(id) {
export function notificationRoutine(id) {
return request({
url: `/admin/system/notification/routine/switch/${id}`,
method: 'post',
})
});
}
/**
* 公众号模板开关
* @param pram
*/
export function notificationWechat(id) {
export function notificationWechat(id) {
return request({
url: `/admin/system/notification/wechat/switch/${id}`,
method: 'post',
})
});
}
/**
* 发送短信开关
* @param pram
*/
export function notificationSms(id) {
export function notificationSms(id) {
return request({
url: `/admin/system/notification/sms/switch/${id}`,
method: 'post',
})
});
}
/**
* 通知详情
* @param pram
*/
export function notificationDetail(param) {
let data = {
detailType:param.type,
id:param.id
};
export function notificationDetail(param) {
let data = {
detailType: param.type,
id: param.id,
};
return request({
url: `/admin/system/notification/detail`,
method: 'get',
params:data
})
params: data,
});
}
//admin/system/notification/detail
@@ -132,16 +132,36 @@ export function notificationListApi(pram) {
* 修改通知
* @param pram
*/
export function notificationUpdate(param) {
export function notificationUpdate(param) {
let data = {
detailType:param.type,
id:param.id,
status:param.status,
tempId:param.tempId
detailType: param.type,
id: param.id,
status: param.status,
tempId: param.tempId,
};
return request({
url: `/admin/system/notification/update`,
method: 'post',
data
})
}
return request({
url: `/admin/system/notification/update`,
method: 'post',
data,
});
}
/**
* @description 获取行为验证码
*/
export function knowUserCaptchaApi(data) {
return request({
url: '/public/safety/get',
method: 'post',
data,
});
}
/**
* @description 验证行为验证码
*/
export function knowUserSmsCaptchaApi(data) {
return request({
url: '/public/safety/check',
method: 'post',
data,
});
}

View File

@@ -1,75 +1,75 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
export function groupDelete(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/group/delete',
method: 'GET',
params: data
})
params: data,
});
}
export function groupInfo(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/group/info',
method: 'GET',
params: data
})
params: data,
});
}
export function groupList(pram) {
const data = {
keywords: pram.keywords,
page: pram.page,
limit: pram.limit
}
limit: pram.limit,
};
return request({
url: '/admin/system/group/list',
method: 'GET',
params: data
})
params: data,
});
}
export function groupDataList(pram) {
const data = {
gid:pram.gid,
gid: pram.gid,
keywords: pram.keywords,
page: pram.page,
limit: pram.limit
}
limit: pram.limit,
};
return request({
url: '/admin/system/group/data/list',
method: 'GET',
params: data
})
params: data,
});
}
export function groupSave(pram) {
const data = {
formId: pram.formId,
info: pram.info,
name: pram.name
}
name: pram.name,
};
return request({
url: '/admin/system/group/save',
method: 'POST',
params: data
})
params: data,
});
}
export function groupEdit(pram) {
@@ -77,34 +77,34 @@ export function groupEdit(pram) {
formId: pram.formId,
info: pram.info,
name: pram.name,
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/group/update',
method: 'POST',
params: data
})
params: data,
});
}
/**
* @description 页面设计 获取数据
*/
export function designListApi() {
return request.get(`/admin/page/layout/index`)
return request.get(`/admin/page/layout/index`);
}
/**
* @description 页面设计商品Tab 获取数据
*/
export function goodDesignList(pram) {
export function goodDesignList(pram) {
const data = {
gid: pram.gid,
}
};
return request({
url: '/admin/system/group/data/list',
method: 'GET',
params: data
})
params: data,
});
}
/**
@@ -114,39 +114,38 @@ export function SaveDataApi(data, url) {
return request({
url: url,
method: 'POST',
data
})
data,
});
}
/**
* @description 获取配置
*/
export function getDataApi(data) {
export function getDataApi(data) {
return request({
url: '/admin/page/layout/category/config',
method: 'GET',
data
})
data,
});
}
/**
* @description 保存设置
*/
export function themeSave(params) {
export function themeSave(params) {
return request({
url: `/admin/system/config/saveuniq`,
method: 'post',
params
})
params,
});
}
/**
* @description 获取设置
* @description 页面底部导航
*/
export function getTheme(params) {
export function getBottomNavigationApi() {
return request({
url: `/admin/system/config/getuniq`,
method: 'get',
params
})
url: '/admin/page/layout/bottom/navigation/get',
method: 'GET',
});
}

View File

@@ -1,35 +1,35 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
export function groupDataDelete(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/group/data/delete',
method: 'GET',
params: data
})
params: data,
});
}
export function groupDataInfo(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/group/data/info',
method: 'GET',
params: data
})
params: data,
});
}
export function groupDataList(pram) {
@@ -38,21 +38,21 @@ export function groupDataList(pram) {
keywords: pram.keywords,
status: pram.status, // 1=开启 2=关闭
page: pram.page,
limit: pram.limit
}
limit: pram.limit,
};
return request({
url: '/admin/system/group/data/list',
method: 'GET',
params: data
})
params: data,
});
}
export function groupDataSave(pram) {
return request({
url: '/admin/system/group/data/save',
method: 'POST',
data: pram
})
data: pram,
});
}
export function groupDataEdit(pram, id) {
@@ -60,6 +60,6 @@ export function groupDataEdit(pram, id) {
url: '/admin/system/group/data/update',
method: 'POST',
data: pram,
params: { id: id }
})
params: { id: id },
});
}

View File

@@ -1,46 +1,45 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
export function systemConfigCheck(pram) {
const data = {
name: pram.name
}
name: pram.name,
};
return request({
url: '/admin/system/config/check',
method: 'GET',
params: data
})
params: data,
});
}
export function systemConfigInfo(pram) {
const data = {
formId: pram.id
}
formId: pram.id,
};
return request({
url: '/admin/system/config/info',
method: 'GET',
params: data
})
params: data,
});
}
export function systemConfigSave(pram) {
return request({
url: '/admin/system/config/save/form',
method: 'POST',
data: pram
})
data: pram,
});
}
/**
* 文件上传
* @param data
@@ -50,8 +49,8 @@ export function fileFileApi(data, params) {
url: '/admin/upload/file',
method: 'POST',
params,
data
})
data,
});
}
/**
@@ -63,8 +62,8 @@ export function fileImageApi(data, params) {
url: '/admin/upload/image',
method: 'POST',
params,
data
})
data,
});
}
/**
@@ -75,8 +74,8 @@ export function fileListApi(params) {
return request({
url: '/admin/system/attachment/list',
method: 'get',
params
})
params,
});
}
/**
@@ -86,8 +85,8 @@ export function fileListApi(params) {
export function fileDeleteApi(id) {
return request({
url: `/admin/system/attachment/delete/${id}`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -98,11 +97,10 @@ export function attachmentMoveApi(data) {
return request({
url: `/admin/system/attachment/move`,
method: 'post',
data
})
data,
});
}
/**
* 微信上传图片
* @param data
@@ -112,7 +110,6 @@ export function wechatUploadApi(data, params) {
url: `/admin/wechat/media/upload`,
method: 'post',
data,
params
})
params,
});
}

View File

@@ -1,50 +1,50 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
export function getMenu() {
return request({
url: '/admin/system/role/testMenu',
method: 'GET'
})
method: 'GET',
});
}
export function adminDel(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/admin/delete',
method: 'GET',
params: data
})
params: data,
});
}
export function adminInfo(pram) {
const data = {
id: pram.id
}
id: pram.id,
};
return request({
url: '/admin/system/admin/info',
method: 'GET',
params: data
})
params: data,
});
}
export function adminList(params) {
return request({
url: '/admin/system/admin/list',
method: 'GET',
params
})
params,
});
}
export function adminAdd(pram) {
@@ -55,31 +55,31 @@ export function adminAdd(pram) {
realName: pram.realName,
roles: pram.roles.join(','),
status: pram.status,
phone: pram.phone
}
phone: pram.phone,
};
return request({
url: '/admin/system/admin/save',
method: 'POST',
data: data
})
data: data,
});
}
export function adminUpdate(pram) {
const data = {
account: pram.account,
level: pram.level,
phone: pram.phone,
pwd: pram.pwd,
roles:pram.roles,
roles: pram.roles,
realName: pram.realName,
status: pram.status,
id: pram.id,
isDel: pram.isDel
}
isDel: pram.isDel,
};
return request({
url: '/admin/system/admin/update',
method: 'POST',
data
})
data,
});
}
/**
@@ -90,8 +90,8 @@ export function updateStatusApi(params) {
return request({
url: `/admin/system/admin/updateStatus`,
method: 'get',
params
})
params,
});
}
/**
@@ -102,84 +102,84 @@ export function updateIsSmsApi(params) {
return request({
url: `/admin/system/admin/update/isSms`,
method: 'get',
params
})
params,
});
}
/**
* 权限规则菜单列表
* @param pram
*/
export function menuListApi(params) {
export function menuListApi(params) {
const data = {
menuType: params.menuType, //菜单类型:M-目录C-菜单A-按钮
name: params.name, //菜单名称
}
};
return request({
url: `/admin/system/menu/list`,
method: 'get',
params:data
})
params: data,
});
}
/**
* 权限规则新增菜单
* @param data
*/
export function menuAdd(data) {
export function menuAdd(data) {
let systemMenuRequest = data;
return request({
url: `/admin/system/menu/add`,
method: 'post',
data:systemMenuRequest
})
data: systemMenuRequest,
});
}
/**
* 权限规则删除菜单
* @param data
*/
export function menuDelete(id) {
export function menuDelete(id) {
return request({
url: `/admin/system/menu/delete/${id}`,
method: 'post',
})
});
}
/**
* 权限规则菜单详情
* @param data
*/
export function menuInfo(id) {
export function menuInfo(id) {
return request({
url: `/admin/system/menu/info/${id}`,
method: 'get',
})
});
}
/**
* 权限规则菜单修改
* @param data
*/
export function menuUpdate(data) {
export function menuUpdate(data) {
let systemMenuRequest = data;
return request({
url: `/admin/system/menu/update`,
method: 'post',
data:systemMenuRequest
})
data: systemMenuRequest,
});
}
/**
* 权限规则修改菜单显示状态
* @param data
*/
export function menuUpdateShowStatus(params) {
export function menuUpdateShowStatus(params) {
return request({
url: `/admin/system/menu/updateShowStatus`,
method: 'post',
params
})
params,
});
}
//
@@ -187,10 +187,32 @@ export function updateIsSmsApi(params) {
* 权限规则菜单详情
* @param data
*/
export function sensitiveListApi(params) {
export function sensitiveListApi(params) {
return request({
url: `/admin/log/sensitive/list`,
method: 'get',
params
})
}
params,
});
}
/**
* 修改登录用户信息
* @param data
*/
export function adminNameUpdateApi(data) {
return request({
url: `/admin/login/admin/update`,
method: 'post',
data,
});
}
/**
* 修改登录密码
* @param data
*/
export function adminPwdUpdateApi(data) {
return request({
url: `/admin/login/update/password`,
method: 'post',
data,
});
}

View File

@@ -1,36 +1,36 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
export function login(data) {
return request({
url: '/admin/login',
method: 'post',
data
})
data,
});
}
export function getInfo(token) {
return request({
url: '/admin/getAdminInfoByToken',
method: 'get',
params: { token }
})
params: { token },
});
}
export function logout() {
return request({
url: '/admin/logout',
method: 'get'
})
method: 'get',
});
}
/**
@@ -41,8 +41,8 @@ export function userListApi(params) {
return request({
url: `/admin/user/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -54,20 +54,20 @@ export function userUpdateApi(params, data) {
url: `/admin/user/update`,
method: 'post',
params,
data
})
data,
});
}
/**
* 会员管理等级 修改
* @param pram
*/
export function userLevelUpdateApi( data) {
export function userLevelUpdateApi(data) {
return request({
url: `/admin/user/update/level`,
method: 'post',
data
})
data,
});
}
/**
@@ -78,8 +78,8 @@ export function userInfoApi(params) {
return request({
url: `/admin/user/info`,
method: 'get',
params
})
params,
});
}
/**
@@ -90,8 +90,8 @@ export function infobyconditionApi(params) {
return request({
url: `/admin/user/infobycondition`,
method: 'get',
params
})
params,
});
}
/**
@@ -102,8 +102,8 @@ export function topdetailApi(params) {
return request({
url: `/admin/user/topdetail`,
method: 'get',
params
})
params,
});
}
/**
@@ -114,8 +114,8 @@ export function groupPiApi(params) {
return request({
url: `/admin/user/group`,
method: 'post',
params
})
params,
});
}
/**
@@ -126,8 +126,8 @@ export function tagPiApi(params) {
return request({
url: `/admin/user/tag`,
method: 'post',
params
})
params,
});
}
/**
@@ -138,8 +138,8 @@ export function foundsApi(params) {
return request({
url: `/admin/user/operate/founds`,
method: 'get',
params
})
params,
});
}
/**
@@ -150,8 +150,8 @@ export function userDeleteApi(params) {
return request({
url: `/admin/user/delete`,
method: 'get',
params
})
params,
});
}
/**
@@ -161,8 +161,8 @@ export function userDeleteApi(params) {
export function levelListApi() {
return request({
url: `/admin/system/user/level/list`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -173,21 +173,21 @@ export function levelSaveApi(data) {
return request({
url: `/admin/system/user/level/save`,
method: 'post',
data
})
data,
});
}
/**
* 会员等级 编辑
* @param pram
*/
export function levelUpdateApi(params, data) {
export function levelUpdateApi(params, data) {
return request({
url: `/admin/system/user/level/update/${params}`,
method: 'post',
// params,
data
})
data,
});
}
/**
@@ -198,19 +198,19 @@ export function levelInfoApi(params) {
return request({
url: `/admin/system/user/level/info`,
method: 'get',
params
})
params,
});
}
/**
* 会员等级 删除
* @param pram
*/
export function levelDeleteApi(id) {
export function levelDeleteApi(id) {
return request({
url: `/admin/system/user/level/delete/${id}`,
method: 'post'
})
method: 'post',
});
}
/**
@@ -221,8 +221,8 @@ export function levelUseApi(data) {
return request({
url: `/admin/system/user/level/use`,
method: 'post',
data
})
data,
});
}
/**
@@ -233,8 +233,8 @@ export function tagListApi(params) {
return request({
url: `/admin/user/tag/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -245,8 +245,8 @@ export function tagSaveApi(data) {
return request({
url: `/admin/user/tag/save`,
method: 'post',
data
})
data,
});
}
/**
@@ -258,8 +258,8 @@ export function tagUpdateApi(params, data) {
url: `/admin/user/tag/update`,
method: 'post',
params,
data
})
data,
});
}
/**
@@ -270,8 +270,8 @@ export function tagInfoApi(params) {
return request({
url: `/admin/user/tag/info`,
method: 'get',
params
})
params,
});
}
/**
@@ -282,8 +282,8 @@ export function tagDeleteApi(params) {
return request({
url: `/admin/user/tag/delete`,
method: 'get',
params
})
params,
});
}
/**
@@ -294,8 +294,8 @@ export function groupListApi(params) {
return request({
url: `/admin/user/group/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -306,8 +306,8 @@ export function groupSaveApi(data) {
return request({
url: `/admin/user/group/save`,
method: 'post',
data
})
data,
});
}
/**
@@ -319,8 +319,8 @@ export function groupUpdateApi(params, data) {
url: `/admin/user/group/update`,
method: 'post',
params,
data
})
data,
});
}
/**
@@ -331,8 +331,8 @@ export function groupInfoApi(params) {
return request({
url: `/admin/user/group/info`,
method: 'get',
params
})
params,
});
}
/**
@@ -343,8 +343,8 @@ export function groupDeleteApi(params) {
return request({
url: `/admin/user/group/delete`,
method: 'get',
params
})
params,
});
}
/**
@@ -353,8 +353,8 @@ export function groupDeleteApi(params) {
export function getLoginPicApi() {
return request({
url: `/admin/getLoginPic`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -363,8 +363,8 @@ export function getLoginPicApi() {
export function captchaApi() {
return request({
url: `/admin/validate/code/get`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -374,8 +374,8 @@ export function updateSpreadApi(data) {
return request({
url: `/admin/user/update/spread`,
method: 'post',
data
})
data,
});
}
/**
@@ -385,6 +385,17 @@ export function updatePhoneApi(params) {
return request({
url: `/admin/user/update/phone`,
method: 'get',
params
})
params,
});
}
/**
* 查询是否需要开启图形验证码
* @returns {*}
*/
export function captchaconfigApi() {
return request({
url: `/admin/validate/code/getcaptchaconfig`,
method: 'get',
});
}

View File

@@ -1,40 +1,40 @@
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved.
// | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import request from '@/utils/request'
import request from '@/utils/request';
export function menuCreate(data) {
export function menuCreate(data) {
return request({
url: '/admin/wechat/menu/public/create',
method: 'post',
params: data
})
params: data,
});
}
export function menuDelete(data) {
return request({
url: '/admin/wechat/menu/public/delete',
method: 'post',
params: data
})
params: data,
});
}
export function menuInfo(pram) {
const data = {
isAsync: pram.isAsync
}
isAsync: pram.isAsync,
};
return request({
url: '/admin/wechat/menu/public/get',
method: 'post',
params: data
})
params: data,
});
}
/**
@@ -45,8 +45,8 @@ export function wechatTemplateListApi(params) {
return request({
url: `/admin/wechat/template/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -57,8 +57,8 @@ export function wechatTemplateSaveApi(data) {
return request({
url: `/admin/wechat/template/save`,
method: 'post',
data
})
data,
});
}
/**
@@ -69,8 +69,8 @@ export function wechatTemplateUpdateApi(id, data) {
return request({
url: `/admin/wechat/template/update/${id}`,
method: 'post',
data
})
data,
});
}
/**
@@ -80,8 +80,8 @@ export function wechatTemplateUpdateApi(id, data) {
export function wechatTemplateInfoApi(id) {
return request({
url: `/admin/wechat/template/info/${id}`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -92,8 +92,8 @@ export function wechatTemplateStatusApi(id, params) {
return request({
url: `/admin/wechat/template/update/status/${id}`,
method: 'post',
params
})
params,
});
}
/**
@@ -103,8 +103,8 @@ export function wechatTemplateStatusApi(id, params) {
export function wechatTemplateDeleteApi(id) {
return request({
url: `/admin/wechat/template/delete/${id}`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -115,8 +115,8 @@ export function replyListApi(params) {
return request({
url: `/admin/wechat/keywords/reply/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -127,8 +127,8 @@ export function replySaveApi(data) {
return request({
url: `/admin/wechat/keywords/reply/save`,
method: 'post',
data
})
data,
});
}
/**
@@ -139,8 +139,8 @@ export function replyStatusApi(params) {
return request({
url: `/admin/wechat/keywords/reply/status`,
method: 'post',
params
})
params,
});
}
/**
* 关键字回复 编辑
@@ -151,8 +151,8 @@ export function replyUpdateApi(params, data) {
url: `/admin/wechat/keywords/reply/update`,
method: 'post',
params,
data
})
data,
});
}
/**
@@ -163,8 +163,8 @@ export function replyInfoApi(params) {
return request({
url: `/admin/wechat/keywords/reply/info`,
method: 'get',
params
})
params,
});
}
/**
@@ -175,8 +175,8 @@ export function replyDeleteApi(params) {
return request({
url: `/admin/wechat/keywords/reply/delete`,
method: 'get',
params
})
params,
});
}
/**
@@ -187,8 +187,8 @@ export function keywordsInfoApi(params) {
return request({
url: `/admin/wechat/keywords/reply/info/keywords`,
method: 'get',
params
})
params,
});
}
/**
@@ -199,8 +199,8 @@ export function wechatMenuApi(params) {
return request({
url: `/admin/wechat/menu/public/get`,
method: 'get',
params
})
params,
});
}
/**
@@ -211,8 +211,8 @@ export function wechatMenuAddApi(data) {
return request({
url: `/admin/wechat/menu/public/create`,
method: 'post',
data
})
data,
});
}
/**
@@ -222,8 +222,8 @@ export function publicTempListApi(params) {
return request({
url: `/admin/wechat/program/public/temp/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -232,8 +232,8 @@ export function publicTempListApi(params) {
export function categoryApi() {
return request({
url: `/admin/wechat/program/category`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -243,8 +243,8 @@ export function getWeChatKeywordsByTidApi(params) {
return request({
url: `/admin/wechat/program/getWeChatKeywordsByTid`,
method: 'get',
params
})
params,
});
}
/**
@@ -254,8 +254,8 @@ export function publicTempInfoApi(params) {
return request({
url: `/admin/wechat/program/public/temp/info`,
method: 'get',
params
})
params,
});
}
/**
@@ -265,8 +265,8 @@ export function myTempListApi(params) {
return request({
url: `/admin/wechat/program/my/temp/list`,
method: 'get',
params
})
params,
});
}
/**
@@ -276,8 +276,8 @@ export function myTempInfoApi(params) {
return request({
url: `/admin/wechat/program/my/temp/info`,
method: 'get',
params
})
params,
});
}
/**
@@ -287,8 +287,8 @@ export function myTempSaveApi(data) {
return request({
url: `/admin/wechat/program/my/temp/save`,
method: 'post',
data
})
data,
});
}
/**
@@ -299,8 +299,8 @@ export function myTempUpdateApi(params, data) {
url: `/admin/wechat/program/my/temp/update`,
method: 'post',
params,
data
})
data,
});
}
/**
@@ -310,11 +310,10 @@ export function myTempStatusApi(params) {
return request({
url: `/admin/wechat/program/my/temp/update/status`,
method: 'get',
params
})
params,
});
}
/**
* 小程序 我的模板修改应用场景
*/
@@ -322,8 +321,8 @@ export function myTempTypeApi(params) {
return request({
url: `/admin/wechat/program/my/temp/update/type`,
method: 'get',
params
})
params,
});
}
/**
@@ -334,8 +333,8 @@ export function getWechatConfig() {
return request({
url: `/admin/wechat/config`,
method: 'get',
params:{ url: encodeURIComponent(location.href.split('#')[0]) } // for Test
})
params: { url: encodeURIComponent(location.href.split('#')[0]) }, // for Test
});
}
/**
@@ -346,8 +345,8 @@ export function wechatAuth(code) {
return request({
url: `/admin/authorize/login`,
method: 'get',
params: { code }
})
params: { code },
});
}
/**
@@ -356,8 +355,8 @@ export function wechatAuth(code) {
export function unbindApi() {
return request({
url: `/admin/unbind`,
method: 'get'
})
method: 'get',
});
}
/**
@@ -366,36 +365,55 @@ export function unbindApi() {
export function tempAsyncApi() {
return request({
url: `/admin/wechat/program/my/temp/async`,
method: 'get'
})
method: 'get',
});
}
/**
* 公众号模板消息同步
*/
export function wechatAsyncApi() {
export function wechatAsyncApi() {
return request({
url: `/admin/wechat/template/whcbqhn/sync`,
method: 'post'
})
method: 'post',
});
}
/**
* 小程序模板消息同步
*/
export function routineAsyncApi() {
export function routineAsyncApi() {
return request({
url: `/admin/wechat/template/routine/sync`,
method: 'post'
})
method: 'post',
});
}
/**
* 小程序源码下载
*/
export function wechatCodeDownload() {
export function wechatCodeDownload() {
return request({
url: `/admin/wechat/code/download`,
method: 'get'
})
}
method: 'get',
});
}
/**
* 获取微信小程序发货开关
*/
export function wechatGetShippingSwitchApi() {
return request({
url: `/admin/wechat/menu/get/shipping/switch`,
method: 'get',
});
}
/**
* 更新微信小程序发货开关
*/
export function wechatUpdateShippingSwitchApi(data) {
return request({
url: `/admin/wechat/menu/update/shipping/switch`,
method: 'post',
data,
});
}

View File

Binary file not shown.

View File

Binary file not shown.

View File

File diff suppressed because one or more lines are too long

View File

Binary file not shown.

View File

Binary file not shown.

View File

@@ -0,0 +1,19 @@
@font-face {
font-family: 'dinProSemiBold';
src: url('./D-DIN-PRO-600-SemiBold.otf');
}
@font-face {
font-family: 'dinProRegular';
src: url('./D-DIN-PRO-400-Regular.otf');
}
.semiBold {
font-family: 'dinProSemiBold';
}
.regular {
font-family: 'dinProRegular';
}
.pingFang {
font-family: 'PingFang SC, PingFang SC';
font-weight: 500;
}

View File

File diff suppressed because one or more lines are too long

View File

File diff suppressed because it is too large Load Diff

View File

File diff suppressed because one or more lines are too long

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="52px" height="45px" viewBox="0 0 52 45" version="1.1"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<filter x="-9.4%" y="-6.2%" width="118.8%" height="122.5%" filterUnits="objectBoundingBox" id="filter-1">
<feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="1" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.15 0" type="matrix" in="shadowBlurOuter1" result="shadowMatrixOuter1"></feColorMatrix>
<feMerge>
<feMergeNode in="shadowMatrixOuter1"></feMergeNode>
<feMergeNode in="SourceGraphic"></feMergeNode>
</feMerge>
</filter>
<rect id="path-2" x="0" y="0" width="48" height="40" rx="4"></rect>
<filter x="-4.2%" y="-2.5%" width="108.3%" height="110.0%" filterUnits="objectBoundingBox" id="filter-4">
<feOffset dx="0" dy="1" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
<feGaussianBlur stdDeviation="0.5" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
<feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0" type="matrix" in="shadowBlurOuter1"></feColorMatrix>
</filter>
</defs>
<g id="配置面板" width="48" height="40" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="setting-copy-2" width="48" height="40" transform="translate(-1190.000000, -136.000000)">
<g id="Group-8" width="48" height="40" transform="translate(1167.000000, 0.000000)">
<g id="Group-5-Copy-5" filter="url(#filter-1)" transform="translate(25.000000, 137.000000)">
<mask id="mask-3" fill="white">
<use xlink:href="#path-2"></use>
</mask>
<g id="Rectangle-18">
<use fill="black" fill-opacity="1" filter="url(#filter-4)" xlink:href="#path-2"></use>
<use fill="#F0F2F5" fill-rule="evenodd" xlink:href="#path-2"></use>
</g>
<rect id="Rectangle-11" fill="#FFFFFF" mask="url(#mask-3)" x="0" y="0" width="48" height="10"></rect>
<rect id="Rectangle-18" fill="#303648" mask="url(#mask-3)" x="0" y="0" width="16" height="40"></rect>
</g>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 274 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 437 B

View File

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="48px" height="40px" viewBox="0 0 48 40" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>light</title>
<defs>
<rect id="path-1" x="0" y="0" width="48" height="40" rx="4"></rect>
<rect id="path-3" x="0" y="0" width="48" height="40" rx="4"></rect>
</defs>
<g id="后台" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="light">
<g id="Rectangle-18">
<g id="path-2-link" fill="#000000" fill-rule="nonzero">
<rect id="path-2" x="0" y="0" width="48" height="40" rx="4"></rect>
</g>
<g id="path-2-link" fill="#F0F2F5">
<rect id="path-2" x="0" y="0" width="48" height="40" rx="4"></rect>
</g>
</g>
<g id="Rectangle-11-Clipped">
<mask id="mask-2" fill="white">
<use xlink:href="#path-1"></use>
</mask>
<g id="path-2"></g>
<rect id="Rectangle-11" fill="#FFFFFF" fill-rule="nonzero" mask="url(#mask-2)" x="0" y="0" width="48" height="10"></rect>
</g>
<g id="Rectangle-18-Clipped">
<mask id="mask-4" fill="white">
<use xlink:href="#path-3"></use>
</mask>
<g id="path-2"></g>
<rect id="Rectangle-18" fill="#2B68C9" fill-rule="nonzero" mask="url(#mask-4)" x="0" y="0" width="16" height="40"></rect>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 837 B

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 264 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 219 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 711 B

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 908 B

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 B

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 720 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Some files were not shown because too many files have changed in this diff Show More