Compare commits

...

433 Commits
main ... dev

Author SHA1 Message Date
JNG
2784ef0144 Merge branch 'jng' into dev 2025-09-18 09:36:15 +08:00
JNG
07a606c59f 修改 2025-09-18 09:36:08 +08:00
JNG
6090cf92d6 解决冲突 2025-09-17 16:52:10 +08:00
JNG
3ced669383 fiee二期迭代 2025-09-17 16:50:49 +08:00
jiaji.H
b88339488d Merge branch 'feat-hjj-pkManage#A116' into dev 2025-09-17 11:21:20 +08:00
jiaji.H
113b5ef33d Updata:更新pb文件 2025-09-17 11:21:11 +08:00
jiaji.H
e527740ba3 Merge branch 'feat-hjj-pkManage#A116' into dev 2025-09-16 13:54:40 +08:00
jiaji.H
18317e40f3 Updata:更新pb文件 2025-09-16 13:54:28 +08:00
jiaji.H
14a198ccac Merge branch 'feat-hjj-pkManage#A116' into dev 2025-09-16 13:47:27 +08:00
jiaji.H
d8c3fd8392 Updata:更新pb文件 2025-09-16 13:46:05 +08:00
jiaji.H
94f156981c Merge branch 'feat-hjj-pkManage#A116' into dev 2025-09-15 15:10:21 +08:00
jiaji.H
197750debe Updata:更新pb文件 2025-09-15 15:10:10 +08:00
jiaji.H
06b1c37e30 Updata:更新pb文件 2025-09-15 14:57:35 +08:00
jiaji.H
6a0884afe7 Updata:更新pb文件 2025-09-15 14:37:35 +08:00
jiaji.H
b3b4e861aa Updata:解决冲突 2025-09-11 15:35:42 +08:00
jiaji.H
17a017616e Merge branch 'feat-hjj-pkManage#A116' into dev 2025-09-11 15:34:23 +08:00
jiaji.H
69beb2ad08 Updata:更新pb文件 2025-09-11 15:34:14 +08:00
sxy
c6bc85ecaa 修改 2025-09-11 15:06:35 +08:00
jiaji.H
11c8d62e5e Updata:更新pb文件 2025-09-11 15:01:09 +08:00
gy
9b07b6b973 Merge branch 'gy' of https://gitea-net.fontree.cn/fiee/fonchain-fiee into dev 2025-09-09 18:51:41 +08:00
jiaji.H
93abf25796 feat:解决冲突 2025-09-09 11:05:56 +08:00
jiaji.H
166fe65169 Updata:更新pb文件 2025-09-09 11:04:50 +08:00
cjy
4174a69ad7 Merge branch 'feat-cjy-taskBench' into dev 2025-09-04 18:34:21 +08:00
cjy
ba7a491f41 bugfix:从登录信息获取当前登陆人手机号 2025-09-04 18:33:54 +08:00
jiaji.H
0cb5d6e9ef feat:解决冲突 2025-09-04 11:43:50 +08:00
jiaji.H
03a1370738 Updata:更新pb文件 2025-09-04 11:34:40 +08:00
cjy
4a97727775 Merge branch 'feat-cjy-taskBench' into dev 2025-09-03 17:59:00 +08:00
cjy
d54559a997 bugfix:从登录信息中获取当前登录人 2025-09-03 17:58:33 +08:00
cjy
7af0704d49 Merge branch 'feat-cjy-taskBench' into dev 2025-09-03 16:26:02 +08:00
cjy
e1da6bd563 feat: 任务管理台功能
新增任务管理台功能
2025-09-03 15:52:30 +08:00
jiaji.H
78f8f9c927 Updata:更新pb文件 2025-09-03 15:22:18 +08:00
a5df6f06bf Merge branch 'feature-tiktok-daiyb' into dev 2025-09-03 11:48:58 +08:00
6d34d7d4f2 复制隐私文件 2025-09-03 11:48:40 +08:00
jiaji.H
9e77c3133a Updata:更新pb文件 2025-09-03 11:33:54 +08:00
2b98fefa69 Merge branch 'feat-xjj-aschatFunction#A116' into dev 2025-09-01 14:23:03 +08:00
e2cf0be0cb Update chat.go 2025-09-01 14:22:59 +08:00
9a9cb3b1f0 Merge branch 'feat-xjj-aschatFunction#A116' into dev 2025-09-01 14:16:32 +08:00
4c602f780f Update handler.go 2025-09-01 14:16:28 +08:00
1ff87b20da Merge branch 'feat-xjj-aschatFunction#A116' into dev 2025-09-01 14:02:35 +08:00
39dbc3a9a0 Update chatRoom.go 2025-09-01 14:02:30 +08:00
6d8af40575 Merge branch 'feat-xjj-aschatFunction#A116' into dev 2025-09-01 13:52:14 +08:00
0a69aa8013 Update handler.go 2025-09-01 13:52:10 +08:00
5f059c1d7c Merge branch 'feat-xjj-aschatFunction#A116' into dev 2025-09-01 11:15:31 +08:00
14956c06de Merge branch 'jng' into dev 2025-08-27 11:29:07 +08:00
a264630b2c Merge branch 'jng' into dev 2025-08-27 10:23:59 +08:00
0488918026 fix: 解决冲突 2025-08-21 14:25:16 +08:00
sxy
4616d066d8 Merge branch 'feat-sxy-import' into dev 2025-08-12 17:02:56 +08:00
69bbc5a090 Merge branch 'jng' into dev 2025-08-12 12:00:21 +08:00
sxy
db0c064828 Merge branch 'feat-sxy-import' into dev 2025-08-12 10:25:15 +08:00
sxy
6773cc62e7 Merge branch 'feat-sxy-import' into dev 2025-08-11 16:58:47 +08:00
sxy
454d40cfd9 Merge branch 'dev' of https://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-08-11 16:42:42 +08:00
sxy
935dc4bc2c Merge branch 'feat-sxy-import' into dev 2025-08-11 16:42:33 +08:00
2151020f1a 解决冲突 2025-08-11 16:29:05 +08:00
sxy
d48b6fae1b Merge branch 'feat-sxy-import' into dev 2025-08-11 16:08:47 +08:00
sxy
0e458dc4e7 Merge branch 'feat-sxy-import' into dev 2025-08-11 15:50:34 +08:00
sxy
a8e2e4dfe2 Merge branch 'feat-sxy-import' into dev 2025-08-11 15:30:09 +08:00
sxy
1a9d6c0ede Merge branch 'feat-sxy-import' into dev 2025-08-11 13:30:25 +08:00
11592d8c90 Merge branch 'feature-multicast-daiyb' into dev 2025-08-07 11:59:37 +08:00
2846cdc1b2 Merge branch 'jng' into dev 2025-07-16 17:54:38 +08:00
sxy
a68ba46e51 Merge branch 'sxy-sec' into dev
"修改symbol"
2025-07-16 10:45:03 +08:00
11bc39be1b Merge branch 'jng' into dev 2025-07-11 09:40:20 +08:00
ac7dd44fd9 Merge branch 'jng' into dev 2025-07-08 16:21:20 +08:00
b33a776f93 解决冲突 2025-07-08 16:14:17 +08:00
866cce5bb6 Merge branch 'feat-zjy-issue-013' into dev 2025-07-08 14:57:25 +08:00
fe6ac1be55 解决冲突 2025-07-08 14:20:38 +08:00
2c2c9499cc Merge branch 'feat-zjy-issue-013' into dev 2025-07-08 13:51:40 +08:00
b2012fbaba Merge branch 'feat-zjy-issue-013' into dev 2025-07-08 13:40:29 +08:00
sxy
bc9d7fe7ba Merge branch 'sxy-sec' into dev
"修改"
2025-07-08 13:03:13 +08:00
8e4a087310 Merge branch 'feat-zjy-issue-013' into dev 2025-07-08 11:59:33 +08:00
e9c46e4a64 Merge remote-tracking branch 'origin/dev' into dev 2025-07-08 11:52:00 +08:00
d55abc66db Merge branch 'feat-zjy-issue-013' into dev 2025-07-08 11:51:18 +08:00
sxy
4177a676b9 Merge branch 'sxy-sec' into dev
"修改sec"
2025-07-08 11:48:49 +08:00
2bc6a4f77c Merge branch 'feat-zjy-issue-013' into dev 2025-07-08 11:18:04 +08:00
d8c083f5b6 Merge branch 'feat-zjy-issue-013' into dev 2025-07-08 10:46:17 +08:00
0f1559f1cf Merge branch 'feat-zjy-issue-013' into dev 2025-07-08 10:23:58 +08:00
d4bc9bae54 Merge branch 'feat-zjy-issue-013' into dev 2025-07-08 09:46:35 +08:00
82e5f92be2 解决冲突 2025-07-07 19:37:04 +08:00
9f03ac444e 合并数据 2025-07-07 15:34:00 +08:00
lzh
dd25bb3f4e Merge branch 'dev-lzh' into dev 2025-07-07 10:48:37 +08:00
lzh
cd9cd0dbd1 更新proto 2025-07-07 10:48:06 +08:00
eda4d7dd91 Merge branch 'jng' into dev 2025-07-03 16:53:33 +08:00
b761411203 Merge branch 'jng' into dev 2025-07-03 16:06:30 +08:00
07309ab587 Merge branch 'jng' into dev 2025-07-03 16:02:28 +08:00
852d2fbed4 Merge branch 'jng' into dev 2025-07-03 15:51:15 +08:00
b458105c4c Merge branch 'jng' into dev 2025-07-02 15:33:47 +08:00
db193ce55a Merge branch 'jng' into dev 2025-07-02 14:02:33 +08:00
lzh
a16f0b6d54 Merge branch 'dev-lzh' into dev 2025-06-26 16:12:58 +08:00
87db2d6ce3 Merge branch 'feature-multicast-daiyb' into dev 2025-06-26 09:21:32 +08:00
lzh
5ae25cabc6 添加日志打印 2025-06-26 09:08:08 +08:00
lzh
e4d6b5de90 Merge branch 'dev-lzh' into dev 2025-06-25 16:52:19 +08:00
afcc29ba80 Merge branch 'jng' into dev 2025-06-25 16:31:32 +08:00
df3c90476b Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-25 15:51:30 +08:00
4cc70d4b2f Merge branch 'chat' into dev 2025-06-25 15:50:03 +08:00
ada34794e3 解决冲突 2025-06-25 15:34:14 +08:00
lzh
ea89bdbe02 Merge branch 'dev-lzh' into dev 2025-06-25 15:24:33 +08:00
0a9d8f628d Merge branch 'feature-multicast-daiyb' into dev 2025-06-25 11:09:30 +08:00
f26492218b Merge branch 'feature-multicast-daiyb' into dev 2025-06-24 18:28:17 +08:00
8f987dff52 Merge branch 'dev' of http://172.16.100.91:3000/fiee/fonchain-fiee into dev 2025-06-24 16:38:50 +08:00
0545372341 Merge branch 'feature-multicast-daiyb' into dev 2025-06-24 16:38:41 +08:00
sxy
ac18e084f3 Merge branch 'sxy' into dev 2025-06-24 16:05:03 +08:00
b2133c6d90 解决冲突 2025-06-24 15:54:18 +08:00
749ce934e8 Merge branch 'feature-multicast-daiyb' into dev 2025-06-24 15:44:16 +08:00
lzh
cd726f2987 Merge branch 'dev-lzh' into dev 2025-06-24 15:17:41 +08:00
00a9acdb9b Merge branch 'jng' into dev 2025-06-24 14:39:06 +08:00
sxy
b46400d15c Merge branch 'sxy' into dev 2025-06-24 14:26:53 +08:00
2b5dd8d977 Merge branch 'feature-multicast-daiyb' into dev 2025-06-24 13:56:56 +08:00
e48016fc4c 修改 2025-06-24 13:44:46 +08:00
953eb4b419 Merge branch 'feature-multicast-daiyb' into dev 2025-06-24 13:20:24 +08:00
b4c90f4d18 Merge branch 'jng' into dev 2025-06-24 10:59:42 +08:00
lzh
f8b5df1f42 Merge branch 'dev-lzh' into dev 2025-06-24 09:42:24 +08:00
lzh
1d3f2cd0f7 删除调试信息 2025-06-24 09:41:24 +08:00
lzh
cdf2af27ba 调试 2025-06-23 16:45:59 +08:00
lzh
c60e04454a 调试 2025-06-23 16:40:17 +08:00
lzh
9c97c426d6 删除调试 2025-06-23 16:31:10 +08:00
sxy
4f0fcc77a1 Merge branch 'sxy' into dev 2025-06-23 16:29:00 +08:00
lzh
5291bb489a 调试 2025-06-23 16:27:31 +08:00
lzh
8082f229f4 Merge branch 'dev-lzh' into dev 2025-06-23 16:17:19 +08:00
19baa34ca5 Merge branch 'feat-zjy-issue-008' into dev 2025-06-23 15:54:28 +08:00
d5546933f9 修改 2025-06-23 15:40:00 +08:00
80759ec111 解决冲突 2025-06-23 15:32:57 +08:00
5c92a1fef7 Merge branch 'jng' into dev 2025-06-23 15:15:46 +08:00
lzh
08a12459e6 更新proto 2025-06-23 14:14:18 +08:00
c34cc285bb Merge branch 'feature-multicast-daiyb' into dev 2025-06-20 16:42:04 +08:00
lzh
c0ff047f66 proto 更新 2025-06-20 16:28:21 +08:00
ae33bf910a 修改 2025-06-20 15:52:44 +08:00
sxy
df829bb4d9 Merge branch 'sxy' into dev 2025-06-20 15:30:38 +08:00
sxy
96b04aa609 Merge branch 'sxy' into dev 2025-06-20 14:58:06 +08:00
sxy
74f71fb0b6 Merge branch 'sxy' into dev 2025-06-20 13:12:01 +08:00
9cd32ec899 Merge remote-tracking branch 'origin/dev' into dev 2025-06-20 11:49:11 +08:00
18161e8528 Merge branch 'feat-zjy-issue-008' into dev 2025-06-20 11:48:42 +08:00
sxy
fa898aee00 Merge branch 'sxy' into dev 2025-06-20 11:42:21 +08:00
c56465dd18 Merge branch 'feat-zjy-issue-008' into dev 2025-06-20 11:27:21 +08:00
sxy
2b6c2123c9 Merge branch 'sxy' into dev 2025-06-20 11:15:16 +08:00
c478f4015a Merge remote-tracking branch 'origin/dev' into dev 2025-06-20 11:13:21 +08:00
1334fcaa4c Merge branch 'feature-multicast-daiyb' into dev 2025-06-20 11:12:10 +08:00
f1d81778d0 Merge branch 'feat-zjy-issue-008' into dev 2025-06-20 11:12:00 +08:00
9bb1cbc840 Merge branch 'feat-zjy-issue-008' into dev 2025-06-20 10:24:18 +08:00
lzh
139901467f Merge branch 'dev-lzh' into dev 2025-06-20 09:44:39 +08:00
851fdc5098 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-19 16:43:08 +08:00
8c2cff4973 Update handler.go 2025-06-19 16:42:42 +08:00
sxy
af9c443686 Merge branch 'sxy' into dev 2025-06-19 16:24:11 +08:00
0885aa1ed0 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-19 16:19:27 +08:00
5d8b72b499 fix: 解决冲突 2025-06-19 16:17:32 +08:00
9f7f818e79 修改 2025-06-19 16:05:12 +08:00
60498f8af9 解决冲突 2025-06-19 15:34:17 +08:00
lzh
cf95f2b9fe Merge branch 'dev-lzh' into dev 2025-06-19 15:13:41 +08:00
lzh
f3882fd709 更新proto 2025-06-19 15:11:05 +08:00
lzh
de98e69033 Merge branch 'dev-lzh' into dev 2025-06-19 15:06:08 +08:00
e03bd54b11 fix: 解决冲突 2025-06-19 14:41:13 +08:00
4c842559a7 Update chat.go 2025-06-19 14:14:11 +08:00
ef57eb0e89 Update chat.go 2025-06-19 14:09:37 +08:00
e994c11e29 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-19 14:05:00 +08:00
b1a7e1f2de Update robot.go 2025-06-19 14:04:41 +08:00
d1191753f3 Merge branch 'feat-zjy-issue-008' into dev 2025-06-19 13:57:52 +08:00
1723ba99dd Update robot.go 2025-06-19 13:56:53 +08:00
e66f33b1a9 Update ruler_keywords.go 2025-06-19 13:50:44 +08:00
a6c7544b91 fix: 增加日志 2025-06-19 13:43:07 +08:00
9bb4bec9f8 fix: 覆盖聊天相关代码 2025-06-19 13:23:56 +08:00
0e99dc7a0b Update chatRoom.go 2025-06-19 12:41:11 +08:00
ebaeac28fb Merge branch 'chat' into dev 2025-06-19 12:35:11 +08:00
fe755bbe13 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-19 11:55:04 +08:00
sxy
5c8a7ac056 Merge branch 'sxy' into dev 2025-06-19 11:53:58 +08:00
bc795d3f20 Update handler.go 2025-06-19 11:53:53 +08:00
55b6ae810d debug1 2025-06-19 11:45:55 +08:00
e0b15430be Update ruler_keywords.go 2025-06-19 11:41:31 +08:00
c4a50362f5 Update chat.go 2025-06-19 11:32:57 +08:00
2455067913 Merge branch 'chat' into dev 2025-06-19 11:31:46 +08:00
24b5560c9c Merge branch 'chat' into dev 2025-06-19 11:14:02 +08:00
d2eefbb646 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-19 11:12:52 +08:00
4afa15ee3f Merge branch 'chat' into dev 2025-06-19 11:12:27 +08:00
a093585416 Merge branch 'dev' of http://172.16.100.91:3000/fiee/fonchain-fiee into dev 2025-06-19 11:05:29 +08:00
9e1080659a Merge branch 'feature-multicast-daiyb' into dev 2025-06-19 11:05:21 +08:00
c0148238f0 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-19 11:04:32 +08:00
c33833b008 fix: 解决冲突 2025-06-19 11:04:13 +08:00
bacedd206f Merge branch 'jng' into dev 2025-06-19 10:34:02 +08:00
8ad6668748 Merge remote-tracking branch 'origin/dev' into dev 2025-06-19 09:53:44 +08:00
ca70a92538 fix: debug4 2025-06-19 09:52:34 +08:00
789c1dc81c Merge branch 'feat-zjy-issue-008' into dev 2025-06-19 09:52:32 +08:00
49c9232323 debug3 2025-06-19 09:50:41 +08:00
98bd564928 fix: debug2 2025-06-19 09:23:08 +08:00
d8a43a6720 fix: debug 2025-06-19 09:15:10 +08:00
e28cdceb50 Merge branch 'chat' into dev 2025-06-18 20:07:06 +08:00
76a0ea3c01 Merge branch 'chat' into dev 2025-06-18 19:57:58 +08:00
8cd7d57488 Merge branch 'chat' into dev 2025-06-18 19:53:20 +08:00
bfe244450b Merge branch 'chat' into dev 2025-06-18 19:50:02 +08:00
b858a599d0 Merge branch 'chat' into dev 2025-06-18 19:47:58 +08:00
345a93b149 Merge branch 'chat' into dev 2025-06-18 17:52:39 +08:00
b3900e0735 Merge branch 'chat' into dev 2025-06-18 16:58:07 +08:00
3983538606 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-18 16:43:52 +08:00
4664da0d1c Merge branch 'chat' into dev 2025-06-18 16:43:34 +08:00
492fdfeee2 Merge branch 'feat-zjy-issue-008' into dev 2025-06-18 16:28:30 +08:00
e47651247f Merge branch 'chat' into dev 2025-06-18 16:19:53 +08:00
79ec11f0de Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-18 16:12:30 +08:00
97753f0578 fix: 解决冲突 2025-06-18 16:12:10 +08:00
sxy
2b013f5269 Merge branch 'sxy' into dev 2025-06-18 15:51:52 +08:00
244901bf6a Merge branch 'chat' into dev 2025-06-18 15:33:20 +08:00
9b13f753e6 Merge branch 'chat' into dev 2025-06-18 15:27:38 +08:00
50851aa303 Merge branch 'chat' into dev 2025-06-18 15:17:35 +08:00
b89b86be5d Merge branch 'chat' into dev 2025-06-18 14:22:47 +08:00
f1db70cd83 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-18 12:04:56 +08:00
59ba69477b Merge branch 'chat' into dev 2025-06-18 12:04:36 +08:00
sxy
577e4d399c Merge branch 'sxy' into dev 2025-06-18 11:42:22 +08:00
sxy
e4554dd0ad Merge branch 'sxy-sec' into dev 2025-06-17 18:30:56 +08:00
4e9091bd4b Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-17 16:14:55 +08:00
b4960fb7c2 Merge branch 'chat' into dev 2025-06-17 16:14:35 +08:00
b2e9b0c2d1 Merge branch 'jng' into dev 2025-06-17 15:40:00 +08:00
sxy
ec7be8fde0 Merge branch 'sxy-sec' into dev 2025-06-17 14:46:24 +08:00
lzh
cb707c96e1 Merge branch 'dev-lzh' into dev 2025-06-17 14:28:29 +08:00
90504c8c0c Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-17 14:26:41 +08:00
13e19d8650 Merge branch 'chat' into dev 2025-06-17 14:26:26 +08:00
sxy
64f151d87f Merge branch 'sxy-sec' into dev 2025-06-17 14:21:33 +08:00
sxy
d4eebacbda Merge branch 'sxy-sec' into dev 2025-06-17 14:07:50 +08:00
8311d0cc99 Update logging.go 2025-06-17 11:31:53 +08:00
57b2e587e7 Merge branch 'chat' into dev 2025-06-17 11:28:09 +08:00
fad92b5991 Merge branch 'chat' into dev 2025-06-17 11:22:05 +08:00
086fe399e4 fix: 解决冲突 2025-06-17 10:55:54 +08:00
dc8a872e5e Update conf.ini 2025-06-17 10:28:07 +08:00
79a61043e9 Update conf.ini 2025-06-17 10:20:19 +08:00
17b8f61968 Merge branch 'chat' into dev 2025-06-17 10:14:40 +08:00
sxy
b59f4e9395 Merge branch 'sxy-sec' into dev 2025-06-17 10:07:53 +08:00
cc295e64b5 Merge branch 'chat' into dev 2025-06-17 10:06:38 +08:00
268bb183f4 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-17 09:32:23 +08:00
96ed290f62 Merge branch 'chat' into dev 2025-06-17 09:31:58 +08:00
sxy
96db32a381 Merge branch 'sxy' into dev 2025-06-17 09:27:42 +08:00
6d975266a6 Merge branch 'chat' into dev 2025-06-17 09:13:40 +08:00
dded072bad Update chatAutoReplyRulerHandler.go 2025-06-16 19:32:08 +08:00
55a2197ad4 Merge branch 'chat' into dev 2025-06-16 18:29:21 +08:00
47da1435ae Merge branch 'chat' into dev 2025-06-16 17:58:27 +08:00
7c75f0722a Merge branch 'chat' into dev 2025-06-16 16:18:17 +08:00
aecacb623b 解决冲突 2025-06-16 16:11:55 +08:00
0af5d7b5dc Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-16 15:52:58 +08:00
a38cc36e51 Merge branch 'chat' into dev 2025-06-16 15:52:06 +08:00
lzh
2dcdd8fb7f Merge branch 'dev-lzh' into dev 2025-06-16 15:33:04 +08:00
de557a8ac0 Merge branch 'chat' into dev 2025-06-16 15:22:57 +08:00
5a6c8591d2 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-16 15:04:57 +08:00
7fbf4864f1 Merge branch 'chat' into dev 2025-06-16 15:04:32 +08:00
sxy
6d3ec1ac10 Merge branch 'sxy-sec' into dev 2025-06-16 14:32:29 +08:00
sxy
4e44c0ca06 Merge branch 'sxy-sec' into dev 2025-06-16 14:26:18 +08:00
lzh
cfaaf818c8 Merge branch 'dev-lzh' into dev 2025-06-16 14:11:17 +08:00
48a85b000c Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-16 14:04:00 +08:00
4c758f2045 fix: 解决冲突 2025-06-16 14:03:38 +08:00
cebf285f8e Merge branch 'feat-zjy-issue-008' into dev 2025-06-16 13:57:49 +08:00
lzh
16661dfe33 Merge branch 'dev-lzh' into dev 2025-06-16 13:55:55 +08:00
lzh
24c3d1c894 Merge branch 'dev-lzh' into dev 2025-06-16 13:47:32 +08:00
lzh
653fe27066 冲突解决 2025-06-16 13:42:46 +08:00
lzh
bef76dc3f0 添加套餐金额类型 2025-06-16 13:35:46 +08:00
sxy
d0a93eb229 Merge branch 'sxy' into dev 2025-06-16 13:22:53 +08:00
lzh
2d793324f1 解决突出 2025-06-16 13:15:11 +08:00
lzh
909a44682b Merge branch 'dev-lzh' into dev 2025-06-16 13:09:37 +08:00
98b0893b0c Merge branch 'feat-zjy-issue-008' into dev 2025-06-16 13:06:01 +08:00
467b126590 Merge branch 'dev' of http://172.16.100.91:3000/fiee/fonchain-fiee into dev 2025-06-16 11:53:08 +08:00
505216a1b3 Merge branch 'feature-multicast-daiyb' into dev 2025-06-16 11:52:48 +08:00
sxy
8247a52343 Merge branch 'sxy-sec' into dev 2025-06-16 11:48:25 +08:00
7dcf40675f Merge branch 'feature-multicast-daiyb' into dev 2025-06-16 11:38:06 +08:00
a5d6e45cd1 Merge branch 'jng' into dev 2025-06-16 11:19:50 +08:00
40c0a9d65f Merge branch 'feature-multicast-daiyb' into dev 2025-06-16 11:06:32 +08:00
lzh
033d9ba023 Merge branch 'dev-lzh' into dev 2025-06-16 10:20:24 +08:00
fe8f3498cd fix: 调整代码,创建支付的时候加入创建对账单。支付成功通知时更新对账单 2025-06-16 10:04:27 +08:00
35712fdbe2 Merge branch 'feat-zjy-issue-008' into dev
# Conflicts:
#	api/bundle/bundle.pb.go
#	api/bundle/bundle_triple.pb.go
2025-06-16 10:03:06 +08:00
248d707026 Merge branch 'chat' into dev 2025-06-16 09:58:57 +08:00
eea71f6e5a Merge branch 'chat' into dev 2025-06-16 09:55:25 +08:00
d543628d86 Merge branch 'chat' into dev 2025-06-16 09:52:18 +08:00
d93c911334 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-16 09:44:33 +08:00
5954f86213 Merge branch 'chat' into dev 2025-06-16 09:44:06 +08:00
lzh
7747672842 Merge branch 'dev-lzh' into dev 2025-06-16 09:35:03 +08:00
sxy
1648689c02 Merge branch 'sxy-sec' into dev 2025-06-16 09:31:40 +08:00
43d3e83593 Merge branch 'chat' into dev 2025-06-16 00:17:17 +08:00
808f7cce3e Update wsMessageHandle.go 2025-06-16 00:16:48 +08:00
f9807d039a Update wsMessageHandle.go 2025-06-16 00:09:44 +08:00
33ce4c7123 Merge branch 'chat' into dev 2025-06-16 00:04:40 +08:00
6bbe1319b8 解决冲突 2025-06-15 23:57:57 +08:00
f3eba25a43 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-15 23:23:57 +08:00
b3c8008b29 解决冲突 2025-06-15 23:23:11 +08:00
49137828da Merge branch 'feat-zjy-issue-008' into dev 2025-06-15 20:57:25 +08:00
1988c49b82 Merge branch 'feature-multicast-daiyb' into dev 2025-06-15 20:46:23 +08:00
3b6e0e6310 Merge branch 'chat' into dev 2025-06-15 20:22:08 +08:00
e0644769f5 Merge branch 'chat' into dev 2025-06-15 20:16:45 +08:00
5fd70717d4 Update common.go 2025-06-15 20:11:53 +08:00
5131c182a5 Merge branch 'chat' into dev 2025-06-15 20:05:42 +08:00
c094790cd3 Update wsMessageHandle.go 2025-06-15 19:59:53 +08:00
01bd9736e0 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-15 19:56:48 +08:00
98c6a72f96 fix: 完成用户进入聊天室直接回复 2025-06-15 19:56:32 +08:00
aa6dca6f1f fix: 处理冲突 2025-06-15 19:22:55 +08:00
ce95cface5 Merge branch 'feat-zjy-issue-008' into dev
# Conflicts:
#	api/bundle/bundle.pb.go
#	pkg/router/bundle.go
#	pkg/service/bundle/bundleProfile.go
2025-06-15 19:22:14 +08:00
13b51cadf8 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-15 18:35:25 +08:00
63620fdda4 fix: 修复domain配置错误的问题 2025-06-15 18:35:08 +08:00
e23f39c6ac fix: detail接口增加addBundle的字段 2025-06-15 18:32:36 +08:00
2276144fc4 Merge branch 'feat-zjy-issue-008' into dev
# Conflicts:
#	api/bundle/bundle.pb.go
2025-06-15 18:31:52 +08:00
c347c7d81d fix: debug 2025-06-15 18:28:21 +08:00
8817680689 Update handler.go 2025-06-15 18:20:48 +08:00
e6920fe595 Update handler.go 2025-06-15 17:18:44 +08:00
21b0c2cc49 Merge branch 'chat' into dev 2025-06-15 17:07:34 +08:00
1979ac7530 Merge branch 'chat' into dev 2025-06-15 16:23:58 +08:00
a295762f37 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-15 16:03:08 +08:00
2151a8e42b Merge branch 'chat' into dev 2025-06-15 16:02:45 +08:00
f60f7c4a6a Merge branch 'jng' into dev 2025-06-15 15:59:46 +08:00
lzh
7e9f25fffe Merge branch 'dev-lzh' into dev 2025-06-15 15:54:04 +08:00
729c9e661c 解决冲突 2025-06-15 15:32:25 +08:00
lzh
aa08c15e2a Merge branch 'dev-lzh' into dev 2025-06-15 15:12:49 +08:00
8ad73a8874 fix: 调整配置文件,只能dev改,master上没有 2025-06-15 15:03:53 +08:00
lzh
c84fb621a9 作品状态判断 2025-06-15 15:00:14 +08:00
lzh
325d14d913 Merge branch 'dev-lzh' into dev 2025-06-15 14:58:36 +08:00
lzh
45a3751914 删除调试日志 2025-06-15 14:56:01 +08:00
1dd8ccf3b7 Merge remote-tracking branch 'origin/dev' into dev 2025-06-15 14:55:25 +08:00
2734e4572f fix: 处理proto冲突 2025-06-15 14:55:09 +08:00
15ddf58f55 Merge branch 'feat-zjy-issue-008' into dev
# Conflicts:
#	api/bundle/bundle.pb.go
#	api/bundle/bundle_triple.pb.go
#	docs/dev/dubbogo.yaml
#	pkg/service/init.go
2025-06-15 14:53:47 +08:00
lzh
4b9e6eb7bd 调试日志打印 2025-06-15 14:51:51 +08:00
lzh
549a557bf2 Merge branch 'dev-lzh' into dev 2025-06-15 14:28:40 +08:00
lzh
966790326e Merge branch 'dev-lzh' into dev 2025-06-15 13:58:15 +08:00
ef18264bf8 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-15 13:33:15 +08:00
426b65537f fix: update 2025-06-15 13:33:00 +08:00
lzh
0d46dd75d8 冲突解决 2025-06-15 12:56:05 +08:00
lzh
3fbc1e6ef4 冲突解决 2025-06-15 12:54:02 +08:00
3a00260038 Update common.go 2025-06-15 12:45:28 +08:00
lzh
26c0056b12 Merge branch 'dev-lzh' into dev 2025-06-15 12:22:38 +08:00
e8645e6515 Merge branch 'feature-multicast-daiyb' into dev 2025-06-15 12:13:04 +08:00
a413806363 Update common.go 2025-06-15 11:45:41 +08:00
f1d411c6bc Update wsMessageHandle.go 2025-06-15 11:37:15 +08:00
71ef73bec6 fix: 调试token 2025-06-15 11:24:49 +08:00
3f43441c4f Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-15 10:21:29 +08:00
c665b2190c Merge branch 'chat' into dev 2025-06-15 10:21:11 +08:00
abc498f656 解决冲突 2025-06-15 10:09:39 +08:00
5cfbfb687d Merge branch 'chat' into dev 2025-06-14 19:58:18 +08:00
0839151de0 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-14 19:54:15 +08:00
5f1b85bbb4 Merge branch 'chat' into dev 2025-06-14 19:53:58 +08:00
64f73ca075 Merge branch 'dev' of http://172.16.100.91:3000/fiee/fonchain-fiee into dev 2025-06-14 19:48:08 +08:00
ec631334d6 APP接口 2025-06-14 19:47:36 +08:00
87ebd0be56 Update common.go 2025-06-14 19:38:33 +08:00
342b49ab18 Merge branch 'chat' into dev 2025-06-14 19:31:00 +08:00
0b1c014533 Merge branch 'chat' into dev 2025-06-14 19:15:20 +08:00
2177d33587 Merge branch 'chat' into dev 2025-06-14 18:58:16 +08:00
f199ff7b3d Update common.go 2025-06-14 18:40:59 +08:00
eb5e30be88 Update common.go 2025-06-14 18:26:48 +08:00
e879989ef6 fix: update 2025-06-14 18:12:13 +08:00
c1ba3f348a Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-14 17:41:29 +08:00
8bacafbdfe Merge branch 'chat' into dev 2025-06-14 17:40:41 +08:00
sxy
0f59144fa8 Merge branch 'sxy' into dev 2025-06-14 17:40:19 +08:00
e100345bb8 Merge branch 'chat' into dev 2025-06-14 17:28:00 +08:00
f4ae80f326 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-14 17:20:11 +08:00
25d9db05ef Update accountFiee.proto 2025-06-14 17:18:37 +08:00
bc8d915944 Merge branch 'chat' into dev 2025-06-14 17:18:25 +08:00
sxy
b06f24d06e Merge branch 'sxy' into dev 2025-06-14 17:10:40 +08:00
sxy
9a0a28b633 Merge branch 'sxy' into dev 2025-06-14 17:09:33 +08:00
sxy
dcf041ad9d Merge branch 'sxy' into dev 2025-06-14 17:07:09 +08:00
sxy
623584225d Revert "Merge branch 'sxy' into dev"
This reverts commit 9301c78060, reversing
changes made to fe3f693925.
2025-06-14 16:43:59 +08:00
sxy
9301c78060 Merge branch 'sxy' into dev 2025-06-14 16:41:35 +08:00
fe3f693925 Merge branch 'chat' into dev 2025-06-14 16:32:48 +08:00
cbded7c26a Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-14 16:07:13 +08:00
lzh
8a441851b3 1 2025-06-14 16:04:48 +08:00
d564fd2c59 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-14 15:58:13 +08:00
1a207a8d53 Merge branch 'chat' into dev 2025-06-14 15:57:09 +08:00
lzh
380c7b95ce 1 2025-06-14 15:53:01 +08:00
lzh
9f27882072 Merge branch 'dev-lzh' into dev 2025-06-14 15:43:04 +08:00
b523c46cde 解决冲突 2025-06-14 15:25:09 +08:00
2b212d2903 Merge branch 'chat' into dev 2025-06-14 15:12:15 +08:00
13fc02b8ba Merge branch 'chat' into dev 2025-06-14 15:05:00 +08:00
8f137abf30 Merge branch 'chat' into dev 2025-06-14 14:59:25 +08:00
5706c238a4 Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-14 14:49:31 +08:00
75231bab91 fix: 解决冲突 2025-06-14 14:48:34 +08:00
cef7e50112 Merge branch 'dev' of http://172.16.100.91:3000/fiee/fonchain-fiee into dev 2025-06-14 14:45:11 +08:00
8de086333c Merge branch 'feature-multicast-daiyb' into dev 2025-06-14 14:45:04 +08:00
lzh
dbe63508f7 Merge branch 'dev-lzh' into dev 2025-06-14 14:27:18 +08:00
0084f27e1b Merge branch 'feature-multicast-daiyb' into dev 2025-06-14 14:11:43 +08:00
lzh
d1468434b6 Merge branch 'dev-lzh' into dev 2025-06-14 13:54:16 +08:00
lzh
4e89a5830a 添加时间扩展单位 2025-06-14 11:31:30 +08:00
58b0ca77e1 Merge branch 'jng' into dev 2025-06-14 11:29:27 +08:00
lzh
4f9f8e66db 解决冲突 2025-06-14 10:33:53 +08:00
8196e14159 Merge branch 'jng' into dev 2025-06-14 10:23:16 +08:00
lzh
d4e00229fa Merge branch 'dev-lzh' into dev 2025-06-14 09:50:35 +08:00
36dc2dd194 解决冲突 2025-06-13 22:39:14 +08:00
2b30a246c4 修改 2025-06-13 19:57:31 +08:00
ec0ad25aec 解决冲突 2025-06-13 19:29:19 +08:00
829928da9b 添加审批 2025-06-13 19:02:00 +08:00
sxy
fb4afd8441 Merge branch 'sxy' into dev 2025-06-13 16:49:29 +08:00
2e46cfaacd Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-13 15:29:37 +08:00
8570541f76 Merge branch 'chat' into dev 2025-06-13 15:29:12 +08:00
sxy
4cb62a474e Merge branch 'sxy-sec' into dev 2025-06-13 15:00:53 +08:00
sxy
1b1db8e0aa Merge branch 'sxy-sec' into dev 2025-06-13 14:44:43 +08:00
lzh
e0415bb4a2 解决冲突 2025-06-13 14:37:23 +08:00
lzh
d8ef69090d Merge branch 'dev-lzh' into dev 2025-06-13 14:35:27 +08:00
ebe28dc56c 修改 2025-06-13 14:32:41 +08:00
lzh
fd6d763431 添加扩展、余量接口 2025-06-13 14:23:06 +08:00
c22977816b 解决冲突 2025-06-13 14:16:35 +08:00
126360113d Merge branch 'dev' of http://gitea-inner.fontree.cn/fiee/fonchain-fiee into dev 2025-06-13 11:05:18 +08:00
3e80d15355 Merge branch 'chat' into dev 2025-06-13 11:04:47 +08:00
sxy
7ea561bb01 Merge branch 'sxy-sec' into dev 2025-06-13 10:54:13 +08:00
sxy
efdebf8949 Merge branch 'sxy-sec' into dev 2025-06-13 10:49:32 +08:00
0c7db6d312 Merge branch 'chat' into dev 2025-06-13 10:44:36 +08:00
71e504afc5 Merge branch 'chat' into dev 2025-06-13 10:30:23 +08:00
lzh
896145b718 Merge branch 'dev-lzh' into dev 2025-06-12 19:47:06 +08:00
lzh
f381ffa185 Merge branch 'dev-lzh' into dev 2025-06-12 19:42:19 +08:00
637cad4298 fix: 解决go.mod 冲突 2025-06-12 19:38:03 +08:00
lzh
f1100ddfc9 Merge branch 'dev-lzh' into dev 2025-06-12 19:23:49 +08:00
lzh
952d803bf8 Merge branch 'dev-lzh' into dev 2025-06-12 19:01:42 +08:00
9718cd7c67 临时注释 2025-06-12 18:50:28 +08:00
3fb1c12bef 解决冲突 2025-06-12 18:16:31 +08:00
a1679a8a24 解决冲突 2025-06-12 16:40:38 +08:00
lzh
7edf18a252 Merge branch 'dev-lzh' into dev 2025-06-12 14:36:37 +08:00
lzh
08434eca48 Merge branch 'dev-lzh' into dev 2025-06-12 13:46:49 +08:00
sxy
860da58df4 Merge branch 'sxy' into dev 2025-06-12 11:59:37 +08:00
b65f78dc12 Merge branch 'feature-multicast-daiyb' into dev 2025-06-12 11:38:43 +08:00
sxy
7241ff16c9 Merge branch 'sxy' into dev 2025-06-12 10:20:42 +08:00
lzh
4311ce978a Merge branch 'dev-lzh' into dev 2025-06-11 18:16:22 +08:00
lzh
da7b5edb6e Merge branch 'dev-lzh' into dev 2025-06-11 17:51:52 +08:00
2efd3f2b21 Merge branch 'dev' of http://172.16.100.91:3000/fiee/fonchain-fiee into dev 2025-06-11 17:03:13 +08:00
df8f611f5a Merge branch 'feature-multicast-daiyb' into dev 2025-06-11 17:02:42 +08:00
lzh
30a2a9d57c Merge branch 'dev-lzh' into dev 2025-06-11 16:56:33 +08:00
lzh
b8355c0e27 删除调试信息 2025-06-11 16:55:46 +08:00
080b475826 Merge branch 'dev' of http://172.16.100.91:3000/fiee/fonchain-fiee into dev 2025-06-11 16:52:29 +08:00
e1f4d82f31 Merge branch 'feature-multicast-daiyb' into dev 2025-06-11 16:52:22 +08:00
lzh
949be8efaa 添加调试信息 2025-06-11 16:48:38 +08:00
lzh
5aa145bf1a 添加调试信息 2025-06-11 16:44:37 +08:00
lzh
329098d07b 添加调试信息 2025-06-11 16:41:13 +08:00
sxy
56f2a8d40b Merge branch 'sxy' into dev 2025-06-11 16:24:01 +08:00
7dbef64c91 Merge branch 'dev' of http://172.16.100.91:3000/fiee/fonchain-fiee into dev 2025-06-11 16:11:38 +08:00
53127451c9 Merge branch 'feature-multicast-daiyb' into dev 2025-06-11 16:11:31 +08:00
lzh
3e62057d29 Merge branch 'dev-lzh' into dev 2025-06-11 15:57:28 +08:00
sxy
0ff31f98d3 Merge branch 'sxy' into dev 2025-06-11 15:56:08 +08:00
lzh
382f7fe980 Merge branch 'dev-lzh' into dev 2025-06-11 15:40:22 +08:00
lzh
feefda874a 删除无用依赖 2025-06-11 14:54:08 +08:00
a725fb7d98 解决冲突 2025-06-11 14:34:40 +08:00
lzh
9289953613 Merge branch 'dev-lzh' into dev 2025-06-11 14:14:04 +08:00
sxy
1b4e4e72a9 Merge branch 'sxy' into dev 2025-06-11 11:01:32 +08:00
sxy
7edf15d6a1 "修改输出格式" 2025-06-11 11:00:02 +08:00
7eb9c9cfe7 Merge branch 'feature-multicast-daiyb' into dev 2025-06-11 10:31:47 +08:00
1e9fdf8bb8 1 2025-06-11 10:03:43 +08:00
5d19fb261d 修改字段 2025-06-11 09:55:07 +08:00
69212549c5 合并 2025-06-11 09:22:49 +08:00
fb60eba3e9 合并 2025-06-11 09:19:55 +08:00
1fa862b85d 解决冲突 2025-06-10 16:17:09 +08:00
sxy
8629decdc0 Merge branch 'sxy' into dev 2025-06-10 15:03:04 +08:00
sxy
b9a6923511 修改冲突 2025-06-10 14:52:42 +08:00
sxy
289c5937c5 "套餐修改" 2025-06-10 14:05:57 +08:00
29 changed files with 4081 additions and 1054 deletions

File diff suppressed because it is too large Load Diff

View File

@ -95,6 +95,13 @@ func (this *BundleProfile) Validate() error {
}
}
}
for _, item := range this.SelectValueAdditionalService {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("SelectValueAdditionalService", err)
}
}
}
for _, item := range this.BundleProfileLang {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
@ -105,6 +112,16 @@ func (this *BundleProfile) Validate() error {
return nil
}
func (this *BundleProfileLang) Validate() error {
for _, item := range this.ServiceLangInfo {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("ServiceLangInfo", err)
}
}
}
return nil
}
func (this *ServiceLangInfo) Validate() error {
return nil
}
func (this *SaveResponse) Validate() error {
@ -113,6 +130,9 @@ func (this *SaveResponse) Validate() error {
func (this *SelectValueAddService) Validate() error {
return nil
}
func (this *SelectValueAdditionalService) Validate() error {
return nil
}
func (this *DelBundleRequest) Validate() error {
return nil
}
@ -466,3 +486,72 @@ func (this *UnfinishedInfo) Validate() error {
func (this *SoftDeleteUnfinishedInfoRequest) Validate() error {
return nil
}
func (this *TaskQueryRequest) Validate() error {
return nil
}
func (this *TaskQueryResponse) Validate() error {
for _, item := range this.Tasks {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("Tasks", err)
}
}
}
return nil
}
func (this *TaskManagementInfo) Validate() error {
return nil
}
func (this *TaskAssignRequest) Validate() error {
return nil
}
func (this *UpdatePendingCountRequest) Validate() error {
return nil
}
func (this *RecentAssignRecordsRequest) Validate() error {
return nil
}
func (this *RecentAssignRecordsResponse) Validate() error {
return nil
}
func (this *EmployeeTaskQueryRequest) Validate() error {
return nil
}
func (this *EmployeeTaskQueryResponse) Validate() error {
for _, item := range this.Records {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("Records", err)
}
}
}
return nil
}
func (this *TaskAssignRecordInfo) Validate() error {
return nil
}
func (this *CompleteTaskManuallyRequest) Validate() error {
return nil
}
func (this *UpdateTaskProgressRequest) Validate() error {
return nil
}
func (this *TaskAssignRecordsQueryRequest) Validate() error {
return nil
}
func (this *TaskAssignRecordsQueryResponse) Validate() error {
for _, item := range this.Records {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("Records", err)
}
}
}
return nil
}
func (this *ArtistBundleBalanceRequest) Validate() error {
return nil
}
func (this *ArtistBundleBalanceResponse) Validate() error {
return nil
}

View File

@ -83,6 +83,16 @@ type BundleClient interface {
// 查出没处理的数据
ListUnfinishedInfos(ctx context.Context, in *AutoCreateUserAndOrderRequest, opts ...grpc_go.CallOption) (*UnfinishedInfos, common.ErrorWithAttachment)
SoftDeleteUnfinishedInfo(ctx context.Context, in *SoftDeleteUnfinishedInfoRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
// 任务台
GetPendingTaskList(ctx context.Context, in *TaskQueryRequest, opts ...grpc_go.CallOption) (*TaskQueryResponse, common.ErrorWithAttachment)
AssignTask(ctx context.Context, in *TaskAssignRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
UpdatePendingCount(ctx context.Context, in *UpdatePendingCountRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
GetRecentAssignRecords(ctx context.Context, in *RecentAssignRecordsRequest, opts ...grpc_go.CallOption) (*RecentAssignRecordsResponse, common.ErrorWithAttachment)
GetEmployeeAssignedTasks(ctx context.Context, in *EmployeeTaskQueryRequest, opts ...grpc_go.CallOption) (*EmployeeTaskQueryResponse, common.ErrorWithAttachment)
CompleteTaskManually(ctx context.Context, in *CompleteTaskManuallyRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
UpdateTaskProgress(ctx context.Context, in *UpdateTaskProgressRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
GetTaskAssignRecordsList(ctx context.Context, in *TaskAssignRecordsQueryRequest, opts ...grpc_go.CallOption) (*TaskAssignRecordsQueryResponse, common.ErrorWithAttachment)
GetArtistBundleBalance(ctx context.Context, in *ArtistBundleBalanceRequest, opts ...grpc_go.CallOption) (*ArtistBundleBalanceResponse, common.ErrorWithAttachment)
}
type bundleClient struct {
@ -139,6 +149,15 @@ type BundleClientImpl struct {
UpdateReconciliationStatusBySerialNumber func(ctx context.Context, in *UpdateStatusAndPayTimeBySerialNumber) (*CommonResponse, error)
ListUnfinishedInfos func(ctx context.Context, in *AutoCreateUserAndOrderRequest) (*UnfinishedInfos, error)
SoftDeleteUnfinishedInfo func(ctx context.Context, in *SoftDeleteUnfinishedInfoRequest) (*CommonResponse, error)
GetPendingTaskList func(ctx context.Context, in *TaskQueryRequest) (*TaskQueryResponse, error)
AssignTask func(ctx context.Context, in *TaskAssignRequest) (*CommonResponse, error)
UpdatePendingCount func(ctx context.Context, in *UpdatePendingCountRequest) (*CommonResponse, error)
GetRecentAssignRecords func(ctx context.Context, in *RecentAssignRecordsRequest) (*RecentAssignRecordsResponse, error)
GetEmployeeAssignedTasks func(ctx context.Context, in *EmployeeTaskQueryRequest) (*EmployeeTaskQueryResponse, error)
CompleteTaskManually func(ctx context.Context, in *CompleteTaskManuallyRequest) (*CommonResponse, error)
UpdateTaskProgress func(ctx context.Context, in *UpdateTaskProgressRequest) (*CommonResponse, error)
GetTaskAssignRecordsList func(ctx context.Context, in *TaskAssignRecordsQueryRequest) (*TaskAssignRecordsQueryResponse, error)
GetArtistBundleBalance func(ctx context.Context, in *ArtistBundleBalanceRequest) (*ArtistBundleBalanceResponse, error)
}
func (c *BundleClientImpl) GetDubboStub(cc *triple.TripleConn) BundleClient {
@ -447,6 +466,60 @@ func (c *bundleClient) SoftDeleteUnfinishedInfo(ctx context.Context, in *SoftDel
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/SoftDeleteUnfinishedInfo", in, out)
}
func (c *bundleClient) GetPendingTaskList(ctx context.Context, in *TaskQueryRequest, opts ...grpc_go.CallOption) (*TaskQueryResponse, common.ErrorWithAttachment) {
out := new(TaskQueryResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetPendingTaskList", in, out)
}
func (c *bundleClient) AssignTask(ctx context.Context, in *TaskAssignRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) {
out := new(CommonResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/AssignTask", in, out)
}
func (c *bundleClient) UpdatePendingCount(ctx context.Context, in *UpdatePendingCountRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) {
out := new(CommonResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdatePendingCount", in, out)
}
func (c *bundleClient) GetRecentAssignRecords(ctx context.Context, in *RecentAssignRecordsRequest, opts ...grpc_go.CallOption) (*RecentAssignRecordsResponse, common.ErrorWithAttachment) {
out := new(RecentAssignRecordsResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetRecentAssignRecords", in, out)
}
func (c *bundleClient) GetEmployeeAssignedTasks(ctx context.Context, in *EmployeeTaskQueryRequest, opts ...grpc_go.CallOption) (*EmployeeTaskQueryResponse, common.ErrorWithAttachment) {
out := new(EmployeeTaskQueryResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetEmployeeAssignedTasks", in, out)
}
func (c *bundleClient) CompleteTaskManually(ctx context.Context, in *CompleteTaskManuallyRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) {
out := new(CommonResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/CompleteTaskManually", in, out)
}
func (c *bundleClient) UpdateTaskProgress(ctx context.Context, in *UpdateTaskProgressRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) {
out := new(CommonResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdateTaskProgress", in, out)
}
func (c *bundleClient) GetTaskAssignRecordsList(ctx context.Context, in *TaskAssignRecordsQueryRequest, opts ...grpc_go.CallOption) (*TaskAssignRecordsQueryResponse, common.ErrorWithAttachment) {
out := new(TaskAssignRecordsQueryResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetTaskAssignRecordsList", in, out)
}
func (c *bundleClient) GetArtistBundleBalance(ctx context.Context, in *ArtistBundleBalanceRequest, opts ...grpc_go.CallOption) (*ArtistBundleBalanceResponse, common.ErrorWithAttachment) {
out := new(ArtistBundleBalanceResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetArtistBundleBalance", in, out)
}
// BundleServer is the server API for Bundle service.
// All implementations must embed UnimplementedBundleServer
// for forward compatibility
@ -506,6 +579,16 @@ type BundleServer interface {
// 查出没处理的数据
ListUnfinishedInfos(context.Context, *AutoCreateUserAndOrderRequest) (*UnfinishedInfos, error)
SoftDeleteUnfinishedInfo(context.Context, *SoftDeleteUnfinishedInfoRequest) (*CommonResponse, error)
// 任务台
GetPendingTaskList(context.Context, *TaskQueryRequest) (*TaskQueryResponse, error)
AssignTask(context.Context, *TaskAssignRequest) (*CommonResponse, error)
UpdatePendingCount(context.Context, *UpdatePendingCountRequest) (*CommonResponse, error)
GetRecentAssignRecords(context.Context, *RecentAssignRecordsRequest) (*RecentAssignRecordsResponse, error)
GetEmployeeAssignedTasks(context.Context, *EmployeeTaskQueryRequest) (*EmployeeTaskQueryResponse, error)
CompleteTaskManually(context.Context, *CompleteTaskManuallyRequest) (*CommonResponse, error)
UpdateTaskProgress(context.Context, *UpdateTaskProgressRequest) (*CommonResponse, error)
GetTaskAssignRecordsList(context.Context, *TaskAssignRecordsQueryRequest) (*TaskAssignRecordsQueryResponse, error)
GetArtistBundleBalance(context.Context, *ArtistBundleBalanceRequest) (*ArtistBundleBalanceResponse, error)
mustEmbedUnimplementedBundleServer()
}
@ -661,6 +744,33 @@ func (UnimplementedBundleServer) ListUnfinishedInfos(context.Context, *AutoCreat
func (UnimplementedBundleServer) SoftDeleteUnfinishedInfo(context.Context, *SoftDeleteUnfinishedInfoRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SoftDeleteUnfinishedInfo not implemented")
}
func (UnimplementedBundleServer) GetPendingTaskList(context.Context, *TaskQueryRequest) (*TaskQueryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetPendingTaskList not implemented")
}
func (UnimplementedBundleServer) AssignTask(context.Context, *TaskAssignRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method AssignTask not implemented")
}
func (UnimplementedBundleServer) UpdatePendingCount(context.Context, *UpdatePendingCountRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdatePendingCount not implemented")
}
func (UnimplementedBundleServer) GetRecentAssignRecords(context.Context, *RecentAssignRecordsRequest) (*RecentAssignRecordsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetRecentAssignRecords not implemented")
}
func (UnimplementedBundleServer) GetEmployeeAssignedTasks(context.Context, *EmployeeTaskQueryRequest) (*EmployeeTaskQueryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetEmployeeAssignedTasks not implemented")
}
func (UnimplementedBundleServer) CompleteTaskManually(context.Context, *CompleteTaskManuallyRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CompleteTaskManually not implemented")
}
func (UnimplementedBundleServer) UpdateTaskProgress(context.Context, *UpdateTaskProgressRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateTaskProgress not implemented")
}
func (UnimplementedBundleServer) GetTaskAssignRecordsList(context.Context, *TaskAssignRecordsQueryRequest) (*TaskAssignRecordsQueryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetTaskAssignRecordsList not implemented")
}
func (UnimplementedBundleServer) GetArtistBundleBalance(context.Context, *ArtistBundleBalanceRequest) (*ArtistBundleBalanceResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetArtistBundleBalance not implemented")
}
func (s *UnimplementedBundleServer) XXX_SetProxyImpl(impl protocol.Invoker) {
s.proxyImpl = impl
}
@ -2110,6 +2220,267 @@ func _Bundle_SoftDeleteUnfinishedInfo_Handler(srv interface{}, ctx context.Conte
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetPendingTaskList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(TaskQueryRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetPendingTaskList", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_AssignTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(TaskAssignRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("AssignTask", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_UpdatePendingCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdatePendingCountRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("UpdatePendingCount", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetRecentAssignRecords_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(RecentAssignRecordsRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetRecentAssignRecords", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetEmployeeAssignedTasks_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(EmployeeTaskQueryRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetEmployeeAssignedTasks", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_CompleteTaskManually_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(CompleteTaskManuallyRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("CompleteTaskManually", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_UpdateTaskProgress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateTaskProgressRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("UpdateTaskProgress", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetTaskAssignRecordsList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(TaskAssignRecordsQueryRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetTaskAssignRecordsList", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetArtistBundleBalance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(ArtistBundleBalanceRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetArtistBundleBalance", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
// Bundle_ServiceDesc is the grpc_go.ServiceDesc for Bundle service.
// It's only intended for direct use with grpc_go.RegisterService,
// and not to be introspected or modified (even as a copy)
@ -2313,6 +2684,42 @@ var Bundle_ServiceDesc = grpc_go.ServiceDesc{
MethodName: "SoftDeleteUnfinishedInfo",
Handler: _Bundle_SoftDeleteUnfinishedInfo_Handler,
},
{
MethodName: "GetPendingTaskList",
Handler: _Bundle_GetPendingTaskList_Handler,
},
{
MethodName: "AssignTask",
Handler: _Bundle_AssignTask_Handler,
},
{
MethodName: "UpdatePendingCount",
Handler: _Bundle_UpdatePendingCount_Handler,
},
{
MethodName: "GetRecentAssignRecords",
Handler: _Bundle_GetRecentAssignRecords_Handler,
},
{
MethodName: "GetEmployeeAssignedTasks",
Handler: _Bundle_GetEmployeeAssignedTasks_Handler,
},
{
MethodName: "CompleteTaskManually",
Handler: _Bundle_CompleteTaskManually_Handler,
},
{
MethodName: "UpdateTaskProgress",
Handler: _Bundle_UpdateTaskProgress_Handler,
},
{
MethodName: "GetTaskAssignRecordsList",
Handler: _Bundle_GetTaskAssignRecordsList_Handler,
},
{
MethodName: "GetArtistBundleBalance",
Handler: _Bundle_GetArtistBundleBalance_Handler,
},
},
Streams: []grpc_go.StreamDesc{},
Metadata: "pb/bundle.proto",

View File

@ -190,9 +190,9 @@ type IsSecFilingExistReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
FilingDate string `protobuf:"bytes,1,opt,name=filingDate,proto3" json:"filingDate,omitempty"`
Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form,omitempty"`
FinalLink string `protobuf:"bytes,3,opt,name=finalLink,proto3" json:"finalLink,omitempty"`
FilingDate string `protobuf:"bytes,1,opt,name=filingDate,proto3" json:"filingDate"`
Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form"`
FinalLink string `protobuf:"bytes,3,opt,name=finalLink,proto3" json:"finalLink"`
}
func (x *IsSecFilingExistReq) Reset() {
@ -253,7 +253,7 @@ type IsSecFilingExistResp struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Exist bool `protobuf:"varint,1,opt,name=exist,proto3" json:"exist,omitempty"`
Exist bool `protobuf:"varint,1,opt,name=exist,proto3" json:"exist"`
}
func (x *IsSecFilingExistResp) Reset() {
@ -300,8 +300,8 @@ type CommonResp struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
FilingKey string `protobuf:"bytes,2,opt,name=filingKey,json=filing_key,proto3" json:"filingKey,omitempty"`
Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg"`
FilingKey string `protobuf:"bytes,2,opt,name=filingKey,json=filing_key,proto3" json:"filingKey"`
}
func (x *CommonResp) Reset() {
@ -355,22 +355,22 @@ type SecFiling struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Idx int32 `protobuf:"varint,1,opt,name=idx,proto3" json:"idx,omitempty"`
FilingKey string `protobuf:"bytes,2,opt,name=filingKey,json=filing_key,proto3" json:"filingKey,omitempty"`
FilingDate string `protobuf:"bytes,3,opt,name=filingDate,json=filing_date,proto3" json:"filingDate,omitempty"`
Form string `protobuf:"bytes,4,opt,name=form,proto3" json:"form,omitempty"`
Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
FormDescription string `protobuf:"bytes,6,opt,name=formDescription,json=form_description,proto3" json:"formDescription,omitempty"`
FileLink string `protobuf:"bytes,7,opt,name=fileLink,json=file_link,proto3" json:"fileLink,omitempty"`
DataFiles []*DataFiles `protobuf:"bytes,8,rep,name=dataFiles,json=data_files,proto3" json:"dataFiles,omitempty"`
PdfFile string `protobuf:"bytes,9,opt,name=pdfFile,json=pdf_file,proto3" json:"pdfFile,omitempty"`
WordFile string `protobuf:"bytes,10,opt,name=wordFile,json=word_file,proto3" json:"wordFile,omitempty"`
ExcelFile string `protobuf:"bytes,11,opt,name=excelFile,json=excel_file,proto3" json:"excelFile,omitempty"`
Status int32 `protobuf:"varint,12,opt,name=status,proto3" json:"status,omitempty"`
Operator string `protobuf:"bytes,13,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,14,opt,name=operatorId,json=operator_id,proto3" json:"operatorId,omitempty"`
CreatedAt string `protobuf:"bytes,15,opt,name=createdAt,json=created_at,proto3" json:"createdAt,omitempty"`
UpdatedAt string `protobuf:"bytes,16,opt,name=updatedAt,json=updated_at,proto3" json:"updatedAt,omitempty"`
Idx int32 `protobuf:"varint,1,opt,name=idx,proto3" json:"idx"`
FilingKey string `protobuf:"bytes,2,opt,name=filingKey,json=filing_key,proto3" json:"filingKey"`
FilingDate string `protobuf:"bytes,3,opt,name=filingDate,json=filing_date,proto3" json:"filingDate"`
Form string `protobuf:"bytes,4,opt,name=form,proto3" json:"form"`
Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description"`
FormDescription string `protobuf:"bytes,6,opt,name=formDescription,json=form_description,proto3" json:"formDescription"`
FileLink string `protobuf:"bytes,7,opt,name=fileLink,json=file_link,proto3" json:"fileLink"`
DataFiles []*DataFiles `protobuf:"bytes,8,rep,name=dataFiles,json=data_files,proto3" json:"dataFiles"`
PdfFile string `protobuf:"bytes,9,opt,name=pdfFile,json=pdf_file,proto3" json:"pdfFile"`
WordFile string `protobuf:"bytes,10,opt,name=wordFile,json=word_file,proto3" json:"wordFile"`
ExcelFile string `protobuf:"bytes,11,opt,name=excelFile,json=excel_file,proto3" json:"excelFile"`
Status int32 `protobuf:"varint,12,opt,name=status,proto3" json:"status"`
Operator string `protobuf:"bytes,13,opt,name=operator,proto3" json:"operator"`
OperatorId int32 `protobuf:"varint,14,opt,name=operatorId,json=operator_id,proto3" json:"operatorId"`
CreatedAt string `protobuf:"bytes,15,opt,name=createdAt,json=created_at,proto3" json:"createdAt"`
UpdatedAt string `protobuf:"bytes,16,opt,name=updatedAt,json=updated_at,proto3" json:"updatedAt"`
}
func (x *SecFiling) Reset() {
@ -522,8 +522,8 @@ type DataFiles struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
FileUrl string `protobuf:"bytes,2,opt,name=fileUrl,json=file_url,proto3" json:"fileUrl,omitempty"`
Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description"`
FileUrl string `protobuf:"bytes,2,opt,name=fileUrl,json=file_url,proto3" json:"fileUrl"`
}
func (x *DataFiles) Reset() {
@ -577,17 +577,17 @@ type CreateSecFilingReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
FilingDate string `protobuf:"bytes,1,opt,name=filingDate,proto3" json:"filingDate,omitempty"`
Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form,omitempty"`
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
FormDescription string `protobuf:"bytes,4,opt,name=formDescription,proto3" json:"formDescription,omitempty"`
FileLink string `protobuf:"bytes,5,opt,name=fileLink,proto3" json:"fileLink,omitempty"`
DataFiles []*DataFiles `protobuf:"bytes,6,rep,name=dataFiles,proto3" json:"dataFiles,omitempty"`
PdfFile string `protobuf:"bytes,7,opt,name=pdfFile,proto3" json:"pdfFile,omitempty"`
WordFile string `protobuf:"bytes,8,opt,name=wordFile,proto3" json:"wordFile,omitempty"`
ExcelFile string `protobuf:"bytes,9,opt,name=excelFile,proto3" json:"excelFile,omitempty"`
Operator string `protobuf:"bytes,10,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,11,opt,name=operatorId,proto3" json:"operatorId,omitempty"`
FilingDate string `protobuf:"bytes,1,opt,name=filingDate,proto3" json:"filingDate"`
Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form"`
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description"`
FormDescription string `protobuf:"bytes,4,opt,name=formDescription,proto3" json:"formDescription"`
FileLink string `protobuf:"bytes,5,opt,name=fileLink,proto3" json:"fileLink"`
DataFiles []*DataFiles `protobuf:"bytes,6,rep,name=dataFiles,proto3" json:"dataFiles"`
PdfFile string `protobuf:"bytes,7,opt,name=pdfFile,proto3" json:"pdfFile"`
WordFile string `protobuf:"bytes,8,opt,name=wordFile,proto3" json:"wordFile"`
ExcelFile string `protobuf:"bytes,9,opt,name=excelFile,proto3" json:"excelFile"`
Operator string `protobuf:"bytes,10,opt,name=operator,proto3" json:"operator"`
OperatorId int32 `protobuf:"varint,11,opt,name=operatorId,proto3" json:"operatorId"`
}
func (x *CreateSecFilingReq) Reset() {
@ -704,18 +704,18 @@ type UpdateSecFilingReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey,omitempty"`
Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form,omitempty"`
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
FormDescription string `protobuf:"bytes,4,opt,name=formDescription,proto3" json:"formDescription,omitempty"`
FileLink string `protobuf:"bytes,5,opt,name=fileLink,proto3" json:"fileLink,omitempty"`
DataFiles []*DataFiles `protobuf:"bytes,6,rep,name=dataFiles,proto3" json:"dataFiles,omitempty"`
PdfFile string `protobuf:"bytes,7,opt,name=pdfFile,proto3" json:"pdfFile,omitempty"`
WordFile string `protobuf:"bytes,8,opt,name=wordFile,proto3" json:"wordFile,omitempty"`
ExcelFile string `protobuf:"bytes,9,opt,name=excelFile,proto3" json:"excelFile,omitempty"`
Operator string `protobuf:"bytes,10,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,11,opt,name=operatorId,proto3" json:"operatorId,omitempty"`
FilingDate string `protobuf:"bytes,12,opt,name=filingDate,proto3" json:"filingDate,omitempty"`
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey"`
Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form"`
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description"`
FormDescription string `protobuf:"bytes,4,opt,name=formDescription,proto3" json:"formDescription"`
FileLink string `protobuf:"bytes,5,opt,name=fileLink,proto3" json:"fileLink"`
DataFiles []*DataFiles `protobuf:"bytes,6,rep,name=dataFiles,proto3" json:"dataFiles"`
PdfFile string `protobuf:"bytes,7,opt,name=pdfFile,proto3" json:"pdfFile"`
WordFile string `protobuf:"bytes,8,opt,name=wordFile,proto3" json:"wordFile"`
ExcelFile string `protobuf:"bytes,9,opt,name=excelFile,proto3" json:"excelFile"`
Operator string `protobuf:"bytes,10,opt,name=operator,proto3" json:"operator"`
OperatorId int32 `protobuf:"varint,11,opt,name=operatorId,proto3" json:"operatorId"`
FilingDate string `protobuf:"bytes,12,opt,name=filingDate,proto3" json:"filingDate"`
}
func (x *UpdateSecFilingReq) Reset() {
@ -839,7 +839,7 @@ type DetailSecFilingReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey,omitempty"`
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey"`
}
func (x *DetailSecFilingReq) Reset() {
@ -886,8 +886,8 @@ type SecFilingDetailResp struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
Data *SecFiling `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg"`
Data *SecFiling `protobuf:"bytes,2,opt,name=data,proto3" json:"data"`
}
func (x *SecFilingDetailResp) Reset() {
@ -941,12 +941,12 @@ type ListSecFilingReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Page uint32 `protobuf:"varint,1,opt,name=page,proto3" json:"page,omitempty"`
PageSize uint32 `protobuf:"varint,2,opt,name=pageSize,proto3" json:"pageSize,omitempty"`
Form string `protobuf:"bytes,3,opt,name=form,proto3" json:"form,omitempty"`
FilingDateBegin string `protobuf:"bytes,4,opt,name=filingDateBegin,proto3" json:"filingDateBegin,omitempty"`
FilingDateEnd string `protobuf:"bytes,5,opt,name=filingDateEnd,proto3" json:"filingDateEnd,omitempty"`
Status int32 `protobuf:"varint,6,opt,name=status,proto3" json:"status,omitempty"`
Page uint32 `protobuf:"varint,1,opt,name=page,proto3" json:"page"`
PageSize uint32 `protobuf:"varint,2,opt,name=pageSize,proto3" json:"pageSize"`
Form string `protobuf:"bytes,3,opt,name=form,proto3" json:"form"`
FilingDateBegin string `protobuf:"bytes,4,opt,name=filingDateBegin,proto3" json:"filingDateBegin"`
FilingDateEnd string `protobuf:"bytes,5,opt,name=filingDateEnd,proto3" json:"filingDateEnd"`
Status int32 `protobuf:"varint,6,opt,name=status,proto3" json:"status"`
}
func (x *ListSecFilingReq) Reset() {
@ -1028,9 +1028,9 @@ type SecFilingListResp struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
Total uint32 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
Data []*SecFiling `protobuf:"bytes,3,rep,name=data,proto3" json:"data,omitempty"`
Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg"`
Total uint32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"`
Data []*SecFiling `protobuf:"bytes,3,rep,name=data,proto3" json:"data"`
}
func (x *SecFilingListResp) Reset() {
@ -1233,9 +1233,9 @@ type DeleteSecFilingReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey,omitempty"`
Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,3,opt,name=operatorId,proto3" json:"operatorId,omitempty"`
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey"`
Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator"`
OperatorId int32 `protobuf:"varint,3,opt,name=operatorId,proto3" json:"operatorId"`
}
func (x *DeleteSecFilingReq) Reset() {
@ -1296,10 +1296,10 @@ type UpdateSecFilingStatusReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey,omitempty"`
Status int32 `protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"`
Operator string `protobuf:"bytes,3,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,4,opt,name=operatorId,proto3" json:"operatorId,omitempty"`
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey"`
Status int32 `protobuf:"varint,2,opt,name=status,proto3" json:"status"`
Operator string `protobuf:"bytes,3,opt,name=operator,proto3" json:"operator"`
OperatorId int32 `protobuf:"varint,4,opt,name=operatorId,proto3" json:"operatorId"`
}
func (x *UpdateSecFilingStatusReq) Reset() {

View File

@ -21,6 +21,7 @@ import (
"fmt"
"fonchain-fiee/cmd/config"
"fonchain-fiee/pkg/cache"
"fonchain-fiee/pkg/common"
"fonchain-fiee/pkg/logger"
"fonchain-fiee/pkg/router"
)
@ -55,6 +56,7 @@ func bootstrap() (err error) {
}
cache.LoadRedis(redisConfig)
common.Init()
//
//gpt.InitSet(configEnv.Ai.Host, configEnv.Ai.TelNum, configEnv.Ai.Password)
return nil

15
data/policy.html Normal file
View File

@ -0,0 +1,15 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>隐私政策</title>
<style>
body { font-family: Arial, sans-serif; line-height: 1.6; }
</style>
</head>
<body>
<p>H5系统隐私政策</p><p>生效日期2025年9月2日</p><p>1. 信息收集与使用</p><p>收集的个人信息类型</p><p>基础信息手机号、微信昵称、头像、设备信息IMEI、操作系统版本</p><p>支付信息:订单号、支付金额、交易时间(通过加密方式传输,不存储银行卡信息)。</p><p>自媒体平台授权信息,例如:</p><p>抖音API接口权限仅限内容同步</p><p>内容生成数据:用户输入的关键词、风格偏好、历史生成内容。</p><p>收集目的</p><p>账号验证与支付:手机号用于身份核验,支付信息用于完成交易。</p><p>内容发布通过授权信息调用第三方平台API执行用户指令。</p><p>2. 信息共享与转让</p><p>第三方平台接口仅在用户授权范围内调用API不共享用户平台账号密码。</p><p>支付合作方:与微信支付、支付宝等服务商共享订单信息以完成交易。</p><p>法律要求:如配合司法机关调查或响应政府要求,可能披露必要信息。</p><p>3. 用户权利</p><p>访问与控制:</p><p>可随时在“个人中心”查看历史生成内容、订单记录及授权状态。</p><p>删除与撤回:</p><p>可申请删除个人账户及生成内容(不包含已同步至第三方平台的内容)。</p><p>4. 数据安全</p><p>技术措施采用HTTPS加密传输、数据库脱敏存储定期进行安全漏洞检测。</p><p>第三方SDK仅接入必要SDK如微信登录、地图服务等并签署数据保密协议。</p><p>5. 隐私政策更新</p><p>如涉及重大变更(如新增数据收集项),将通过短信/邮件通知并要求重新授权。</p><p>6. 联系我们</p><p>如有疑问,请通过以下方式联系:</p><p>客服邮箱develop@fiee.com</p>
</body>
</html>

15
data/service.html Normal file
View File

@ -0,0 +1,15 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>服务条款</title>
<style>
body { font-family: Arial, sans-serif; line-height: 1.6; }
</style>
</head>
<body>
<p>服务条款</p><p>生效日期2025年9月2日</p><p>1. 接受条款</p><p>通过注册或使用本系统(以下简称“服务”),您确认已阅读、理解并同意以下条款。若您不同意本条款,请立即停止使用本服务。</p><p>2. 服务内容</p><p>本系统提供自媒体内容生成与发布服务,用户可购买套餐后生成图文、短视频等原创内容,并通过系统接口同步至指定自媒体平台(如微信公众号、抖音、小红书等)。</p><p>服务包含AI辅助创作、内容优化建议、一键发布功能具体内容以实际功能模块为准。</p><p>3. 用户权利与义务</p><p>账号与支付</p><p>注册需提供手机号或微信授权,购买套餐需通过系统支持的支付方式(如微信支付、支付宝)。</p><p>您需确保支付账户信息真实有效,因虚假信息导致的损失由您自行承担。</p><p>内容生成与发布</p><p>生成内容为原创作品,最终发布权归用户所有。</p><p>用户需对生成内容进行人工审核,确认无误后方可发布。因内容违规导致的平台处罚或法律纠纷,责任由用户承担。</p><p>系统不对用户未审核内容的合规性负责,但有权对明显违法内容(如涉黄、涉政)进行过滤拦截。</p><p>第三方平台接口</p><p>用户需授权系统调用其自媒体平台API如tiktok开发者接口授权范围限于内容发布及数据同步。</p><p>授权信息仅用于执行用户指令,系统不存储用户平台账号密码等敏感信息。</p><p>4. 套餐与退款</p><p>套餐有效期自购买成功日起计算,逾期未使用的套餐不支持退款。</p><p>如因系统故障或服务瑕疵导致无法正常使用,可联系客服协商退款。</p><p>5. 知识产权</p><p>由系统生成的内容(如文案、图片)默认无版权归属限制,但用户需遵守以下规则:</p><p>不得将内容用于商业用途(如转售、批量分发);</p><p>不得篡改系统生成内容的署名或标识;</p><p>若内容包含第三方素材(如音乐、图片),用户需自行确保使用合法性。</p><p>6. 责任限制</p><p>系统不对以下情形承担责任:</p><p>用户未审核内容导致的平台封禁、投诉或法律风险;</p><p>第三方平台接口变更或服务中断;</p><p>因不可抗力(如网络故障)导致的发布延迟。</p><p>7. 其他</p><p>本条款解释权归服务提供方所有,更新后将在系统内公示,用户继续使用即视为同意。</p>
</body>
</html>

View File

@ -14,6 +14,7 @@ BosUrl = ".bj.bcebos.com"
BosBaseDir = "fiee"
BosHttp = "https://"
BosDomain = "cdns.fontree.cn"
[oss]
AccessKeyId = "OSS_AK"
AccessKeySecret = "OSS_SK"

11
pkg/common/file.go Normal file
View File

@ -0,0 +1,11 @@
package common
import "fonchain-fiee/pkg/utils"
func Init() {
_ = utils.CreateDirPath("./runtime")
utils.CopyFile("./data/policy.html", "./runtime")
utils.CopyFile("./data/service.html", "./runtime")
utils.CopyFile("../data/policy.html", "./runtime")
utils.CopyFile("../data/service.html", "./runtime")
}

View File

@ -9,381 +9,381 @@ const (
)
var EnMessages = map[string]string{
"获取套餐列表失败": "Failed to get bundle list",
"创建套餐信息失败": "Failed to create bundle information",
"创建套餐信息成功": "Successfully created bundle information",
"更新套餐信息失败": "Failed to update bundle information",
"更新套餐信息成功": "Successfully updated bundle information",
"删除套餐信息失败": "Failed to delete bundle information",
"删除套餐信息成功": "Successfully deleted bundle information",
"获取套餐信息失败": "Failed to get bundle information",
"创建订单信息失败": "Failed to create order information",
"创建订单信息成功": "Successfully created order information",
"更新订单信息失败": "Failed to update order information",
"更新订单信息成功": "Successfully updated order information",
"获取订单信息失败": "Failed to get order information",
"获取订单列表失败": "Failed to get order list",
"缺少套餐UUID": "Missing bundle UUID",
"缺少客户签名信息": "Missing customer signature",
"插入签名失败": "Failed to insert signature",
"缺少订单号": "Missing order number",
"缺少订单信息": "Missing order information",
"获取套餐列表失败": "Failed to get bundle list",
"创建套餐信息失败": "Failed to create bundle information",
"创建套餐信息成功": "Successfully created bundle information",
"更新套餐信息失败": "Failed to update bundle information",
"更新套餐信息成功": "Successfully updated bundle information",
"删除套餐信息失败": "Failed to delete bundle information",
"删除套餐信息成功": "Successfully deleted bundle information",
"获取套餐信息失败": "Failed to get bundle information",
"创建订单信息失败": "Failed to create order information",
"创建订单信息成功": "Successfully created order information",
"更新订单信息失败": "Failed to update order information",
"更新订单信息成功": "Successfully updated order information",
"获取订单信息失败": "Failed to get order information",
"获取订单列表失败": "Failed to get order list",
"缺少套餐UUID": "Missing bundle UUID",
"缺少客户签名信息": "Missing customer signature",
"插入签名失败": "Failed to insert signature",
"缺少订单号": "Missing order number",
"缺少订单信息": "Missing order information",
"非当前用户订单信息不可操作": "Cannot operate on order information of other users",
"订单已支付": "Order has been paid",
"订单已支付": "Order has been paid",
"您已购买过套餐,无法再次购买": "You have already purchased this bundle and cannot purchase again",
"查询支付信息失败": "Failed to query payment information",
"下载文件失败": "Failed to download file",
"上传文件失败": "Failed to upload file",
"时间格式错误": "Invalid time format",
"查询支付信息失败": "Failed to query payment information",
"下载文件失败": "Failed to download file",
"上传文件失败": "Failed to upload file",
"时间格式错误": "Invalid time format",
"账号或密码错误": "The account or password is incorrect",
"账号或验证码错误": "The account or verification code is incorrect",
"账号已存在": "Account already exists",
"没有找到数据": "No data found",
"已经发送过,验证码尚可用": "It was sent. The verification code is still working",
"系统提示:已经发送过,验证码尚可用": "System message: Already sent, verification code is still available",
"账号或密码错误": "The account or password is incorrect",
"账号或验证码错误": "The account or verification code is incorrect",
"账号已存在": "Account already exists",
"没有找到数据": "No data found",
"已经发送过,验证码尚可用": "It was sent. The verification code is still working",
"系统提示:已经发送过,验证码尚可用": "System message: Already sent, verification code is still available",
"您的手机号当天发送次数过多,请联系管理员通过密码登录": "Your mobile phone number is sent too many times that day, please contact the administrator to log in through the password",
"您的手机号验证码错误,请确认之后注册": "Your phone number verification code is incorrect, please confirm and register",
"手机号不合法": "The phone number is illegal",
"手机号未更改": "The phone number has not been changed",
"新手机号过期": "New phone number expired",
"验证码错误": "Verification code error",
"验证码未发送": "The verification code was not sent",
"账号不存在": "Account does not exist",
"已实名": "In real name",
"实名审核中,请勿重复提交": "During real-name audit, please do not submit repeatedly",
"用户状态异常,无法进行审核": "The user is abnormal and cannot be audited. Procedure",
"验证码已失效": "The verification code is invalid",
"服务器错误": "Server error",
"验证失败,请控制拼图对齐缺口": "Verification failed, please control puzzle alignment gap",
"滑块验证状态不存在,请退出重试": "The slider verification status does not exist. Please exit and try again",
"语言不能为空": "The language cannot be empty",
"排序参数需为正整数": "The sorting parameter must be a positive integer",
"请先创建中文版本套餐": "Please create the Chinese version bundle first",
"增值服务不存在": "Value-added service does not exist",
"所选增值服务币种与套餐币种不一致": "The selected value-added service currency is not the same as the bundle currency",
"文件转换失败": "File conversion failed",
"每种增值服务类型只可选择一个": "Each type of value-added service can only be selected once",
"保存套餐与增值服务关联失败": "Failed to save bundle with value-added service association",
"删除套餐与增值服务关联失败": "Failed to delete bundle with value-added service association",
"查询套餐与增值服务关联失败": "Failed to query bundle with value-added service association",
"更新套餐与增值服务关联失败": "Failed to update bundle with value-added service association",
"查询增值服务失败": "Failed to query value-added service",
"更新套餐状态失败": "Failed to update bundle status",
"查询增值服务详情失败": "Failed to query value-added service details",
"序列化转换失败": "Serialization conversion failed",
"保存套餐历史记录失败": "Failed to save bundle history record",
"原价不能为空": "Original price cannot be empty",
"原价格式转换失败": "Original price format conversion failed",
"数量参数需为0-99": "Quantity parameter must be between 0 and 99",
"优惠单价需小于等于原价": "The discounted price must be less than or equal to the original price",
"请先创建中文版本增值服务": "Please create the Chinese version value-added service first",
"保存增值服务失败": "Failed to save value-added service",
"保存增值服务历史记录失败": "Failed to save value-added service history record",
"更新增值服务失败": "Failed to update value-added service",
"查询增值服务列表失败": "Failed to query value-added service list",
"计算价格失败": "Failed to calculate price",
"更新成功": "Update successful",
"保存成功": "Save successful",
"优惠单价转换失败": "Discount unit price conversion failed",
"符号错误": "Symbol error",
"条件存在冲突,请重新设置": "Condition conflict exists, please reconfigure",
"币种已修改,已取消关联部分增值服务": "Currency has been modified, some value-added services have been unlinked",
"币种已修改,已取消关联部分套餐": "Currency has been modified, some packages have been unlinked",
"新增增值服务成功": "Successfully added value-added service",
"状态值无效": "Invalid status value",
"套餐已上架,请勿重复操作": "Plan is already published, do not repeat the operation",
"套餐已下架,请勿重复操作": "Plan is already unpublished, do not repeat the operation",
"请先实名": "Please use your real name first",
"实名审核中": "Real-name verification is underway",
"实名审核失败": "The real-name verification failed",
"未知实名状态": "Unknown real-name status",
"您的手机号验证码错误,请确认之后注册": "Your phone number verification code is incorrect, please confirm and register",
"手机号不合法": "The phone number is illegal",
"手机号未更改": "The phone number has not been changed",
"新手机号过期": "New phone number expired",
"验证码错误": "Verification code error",
"验证码未发送": "The verification code was not sent",
"账号不存在": "Account does not exist",
"已实名": "In real name",
"实名审核中,请勿重复提交": "During real-name audit, please do not submit repeatedly",
"用户状态异常,无法进行审核": "The user is abnormal and cannot be audited. Procedure",
"验证码已失效": "The verification code is invalid",
"服务器错误": "Server error",
"验证失败,请控制拼图对齐缺口": "Verification failed, please control puzzle alignment gap",
"滑块验证状态不存在,请退出重试": "The slider verification status does not exist. Please exit and try again",
"语言不能为空": "The language cannot be empty",
"排序参数需为正整数": "The sorting parameter must be a positive integer",
"请先创建中文版本套餐": "Please create the Chinese version bundle first",
"增值服务不存在": "Value-added service does not exist",
"所选增值服务币种与套餐币种不一致": "The selected value-added service currency is not the same as the bundle currency",
"文件转换失败": "File conversion failed",
"每种增值服务类型只可选择一个": "Each type of value-added service can only be selected once",
"保存套餐与增值服务关联失败": "Failed to save bundle with value-added service association",
"删除套餐与增值服务关联失败": "Failed to delete bundle with value-added service association",
"查询套餐与增值服务关联失败": "Failed to query bundle with value-added service association",
"更新套餐与增值服务关联失败": "Failed to update bundle with value-added service association",
"查询增值服务失败": "Failed to query value-added service",
"更新套餐状态失败": "Failed to update bundle status",
"查询增值服务详情失败": "Failed to query value-added service details",
"序列化转换失败": "Serialization conversion failed",
"保存套餐历史记录失败": "Failed to save bundle history record",
"原价不能为空": "Original price cannot be empty",
"原价格式转换失败": "Original price format conversion failed",
"数量参数需为0-99": "Quantity parameter must be between 0 and 99",
"优惠单价需小于等于原价": "The discounted price must be less than or equal to the original price",
"请先创建中文版本增值服务": "Please create the Chinese version value-added service first",
"保存增值服务失败": "Failed to save value-added service",
"保存增值服务历史记录失败": "Failed to save value-added service history record",
"更新增值服务失败": "Failed to update value-added service",
"查询增值服务列表失败": "Failed to query value-added service list",
"计算价格失败": "Failed to calculate price",
"更新成功": "Update successful",
"保存成功": "Save successful",
"优惠单价转换失败": "Discount unit price conversion failed",
"符号错误": "Symbol error",
"条件存在冲突,请重新设置": "Condition conflict exists, please reconfigure",
"币种已修改,已取消关联部分增值服务": "Currency has been modified, some value-added services have been unlinked",
"币种已修改,已取消关联部分套餐": "Currency has been modified, some packages have been unlinked",
"新增增值服务成功": "Successfully added value-added service",
"状态值无效": "Invalid status value",
"套餐已上架,请勿重复操作": "Plan is already published, do not repeat the operation",
"套餐已下架,请勿重复操作": "Plan is already unpublished, do not repeat the operation",
"请先实名": "Please use your real name first",
"实名审核中": "Real-name verification is underway",
"实名审核失败": "The real-name verification failed",
"未知实名状态": "Unknown real-name status",
}
var DeDEMessages = map[string]string{
"获取套餐列表失败": "Fehler beim Abrufen der Bundle-Liste",
"创建套餐信息失败": "Fehler beim Erstellen von Bundle-Informationen",
"创建套餐信息成功": "Bundle-Informationen erfolgreich erstellt",
"更新套餐信息失败": "Fehler beim Aktualisieren von Bundle-Informationen",
"更新套餐信息成功": "Bundle-Informationen erfolgreich aktualisiert",
"删除套餐信息失败": "Fehler beim Löschen von Bundle-Informationen",
"删除套餐信息成功": "Bundle-Informationen erfolgreich gelöscht",
"获取套餐信息失败": "Fehler beim Abrufen von Bundle-Informationen",
"创建订单信息失败": "Fehler beim Erstellen von Bestellinformationen",
"创建订单信息成功": "Bestellinformationen erfolgreich erstellt",
"更新订单信息失败": "Fehler beim Aktualisieren von Bestellinformationen",
"更新订单信息成功": "Bestellinformationen erfolgreich aktualisiert",
"获取订单信息失败": "Fehler beim Abrufen von Bestellinformationen",
"获取订单列表失败": "Fehler beim Abrufen der Bestellliste",
"缺少套餐UUID": "Fehlende Bundle-UUID",
"缺少客户签名信息": "Fehlende Kundenunterschrift",
"插入签名失败": "Fehler beim Einfügen der Signatur",
"缺少订单号": "Fehlende Bestellnummer",
"缺少订单信息": "Fehlende Bestellinformationen",
"获取套餐列表失败": "Fehler beim Abrufen der Bundle-Liste",
"创建套餐信息失败": "Fehler beim Erstellen von Bundle-Informationen",
"创建套餐信息成功": "Bundle-Informationen erfolgreich erstellt",
"更新套餐信息失败": "Fehler beim Aktualisieren von Bundle-Informationen",
"更新套餐信息成功": "Bundle-Informationen erfolgreich aktualisiert",
"删除套餐信息失败": "Fehler beim Löschen von Bundle-Informationen",
"删除套餐信息成功": "Bundle-Informationen erfolgreich gelöscht",
"获取套餐信息失败": "Fehler beim Abrufen von Bundle-Informationen",
"创建订单信息失败": "Fehler beim Erstellen von Bestellinformationen",
"创建订单信息成功": "Bestellinformationen erfolgreich erstellt",
"更新订单信息失败": "Fehler beim Aktualisieren von Bestellinformationen",
"更新订单信息成功": "Bestellinformationen erfolgreich aktualisiert",
"获取订单信息失败": "Fehler beim Abrufen von Bestellinformationen",
"获取订单列表失败": "Fehler beim Abrufen der Bestellliste",
"缺少套餐UUID": "Fehlende Bundle-UUID",
"缺少客户签名信息": "Fehlende Kundenunterschrift",
"插入签名失败": "Fehler beim Einfügen der Signatur",
"缺少订单号": "Fehlende Bestellnummer",
"缺少订单信息": "Fehlende Bestellinformationen",
"非当前用户订单信息不可操作": "Bestellinformationen anderer Benutzer können nicht bearbeitet werden",
"订单已支付": "Bestellung wurde bezahlt",
"订单已支付": "Bestellung wurde bezahlt",
"您已购买过套餐,无法再次购买": "Sie haben dieses Bundle bereits gekauft und können es nicht erneut kaufen",
"查询支付信息失败": "Fehler beim Abfragen von Zahlungsinformationen",
"下载文件失败": "Fehler beim Herunterladen der Datei",
"上传文件失败": "Fehler beim Hochladen der Datei",
"时间格式错误": "Ungültiges Zeitformat",
"查询支付信息失败": "Fehler beim Abfragen von Zahlungsinformationen",
"下载文件失败": "Fehler beim Herunterladen der Datei",
"上传文件失败": "Fehler beim Hochladen der Datei",
"时间格式错误": "Ungültiges Zeitformat",
"账号或密码错误": "Konto oder Passwort falsch",
"账号或验证码错误": "Konto oder Verifizierungscode falsch",
"账号已存在": "Konto existiert bereits",
"没有找到数据": "Keine Daten gefunden",
"已经发送过,验证码尚可用": "Es wurde gesendet. Der Verifizierungscode funktioniert noch",
"系统提示:已经发送过,验证码尚可用": "Systemnachricht: Bereits gesendet, Verifizierungscode ist noch verfügbar",
"账号或密码错误": "Konto oder Passwort falsch",
"账号或验证码错误": "Konto oder Verifizierungscode falsch",
"账号已存在": "Konto existiert bereits",
"没有找到数据": "Keine Daten gefunden",
"已经发送过,验证码尚可用": "Es wurde gesendet. Der Verifizierungscode funktioniert noch",
"系统提示:已经发送过,验证码尚可用": "Systemnachricht: Bereits gesendet, Verifizierungscode ist noch verfügbar",
"您的手机号当天发送次数过多,请联系管理员通过密码登录": "Ihre Telefonnummer wurde an diesem Tag zu oft gesendet. Bitte wenden Sie sich an den Administrator, um sich über das Passwort anzumelden",
"您的手机号验证码错误,请确认之后注册": "Ihre Telefonnummer Verifizierungscode ist falsch, bitte bestätigen und registrieren",
"手机号不合法": "Telefonnummer ungültig",
"手机号未更改": "Telefonnummer wurde nicht geändert",
"新手机号过期": "Neue Telefonnummer abgelaufen",
"验证码错误": "Verifizierungscode falsch",
"验证码未发送": "Der Verifizierungscode wurde nicht gesendet",
"账号不存在": "Konto existiert nicht",
"已实名": "In echt",
"实名审核中,请勿重复提交": "Während der Echtheitsprüfung bitte nicht wiederholen",
"用户状态异常,无法进行审核": "Der Benutzer ist abnorm und kann nicht geprüft werden. Verfahren",
"验证码已失效": "Der Verifizierungscode ist ungültig",
"服务器错误": "Serverfehler",
"验证失败,请控制拼图对齐缺口": "Überprüfung fehlgeschlagen, bitte Steuerung Puzzle-Ausrichtungslücke",
"滑块验证状态不存在,请退出重试": "Die krümmbestätigung existiert nicht. Bitte beenden sie den vorgang",
"语言不能为空": "Sprache darf nicht leer sein",
"排序参数需为正整数": "Sortierparameter muss eine positive ganze Zahl sein",
"请先创建中文版本套餐": "Bitte erstelle das Chinese Version-Paket",
"增值服务不存在": "Der Werbeangebot existiert nicht",
"所选增值服务币种与套餐币种不一致": "Die ausgewählte Währung des Werbeangebots stimmt nicht mit der Währung des Pakets überein",
"文件转换失败": "Datei-Umwandlung fehlgeschlagen",
"每种增值服务类型只可选择一个": "Jeder Werbeangebotstyp kann nur einmal ausgewählt werden",
"保存套餐与增值服务关联失败": "Fehler beim Speichern des Pakets mit Werbeangebot",
"删除套餐与增值服务关联失败": "Fehler beim Löschen des Pakets mit Werbeangebot",
"查询套餐与增值服务关联失败": "Fehler beim Abrufen des Pakets mit Werbeangebot",
"更新套餐与增值服务关联失败": "Fehler beim Aktualisieren des Pakets mit Werbeangebot",
"查询增值服务失败": "Fehler beim Abrufen des Werbeangebots",
"更新套餐状态失败": "Fehler beim Aktualisieren des Paketstatus",
"查询增值服务详情失败": "Fehler beim Abrufen der Werbeangebotsdetails",
"序列化转换失败": "Fehler beim Serialisieren",
"保存套餐历史记录失败": "Fehler beim Speichern des Pakethistorie",
"原价不能为空": "Der reguläre Preis darf nicht leer sein",
"原价格式转换失败": "Fehler beim Umwandeln des regulären Preises",
"数量参数需为0-99": "Die Anzahlsmusterparameter muss eine positive ganze Zahl sein",
"优惠单价需小于等于原价": "Der Rabattpreis muss kleiner oder gleich dem regulären Preis sein",
"请先创建中文版本增值服务": "Bitte erstelle das Chinese Version-Werbeangebot",
"保存增值服务失败": "Fehler beim Speichern des Werbeangebots",
"保存增值服务历史记录失败": "Fehler beim Speichern des Werbeangebots-Historie",
"更新增值服务失败": "Fehler beim Aktualisieren des Werbeangebots",
"查询增值服务列表失败": "Fehler beim Abrufen der Werbeangebotsliste",
"计算价格失败": "Fehler beim Berechnen des Preises",
"更新成功": "Aktualisierung erfolgreich",
"保存成功": "Speichern erfolgreich",
"优惠单价转换失败": "Rabatt-Einzelpreisumrechnung fehlgeschlagen",
"符号错误": "Symbolfehler",
"条件存在冲突,请重新设置": "Bedingungskonflikt vorhanden, bitte neu konfigurieren",
"币种已修改,已取消关联部分增值服务": "Währung wurde geändert, einige Mehrwertdienste wurden getrennt",
"币种已修改,已取消关联部分套餐": "Währung wurde geändert, einige Pakete wurden getrennt",
"新增增值服务成功": "Mehrwertdienst erfolgreich hinzugefügt",
"状态值无效": "Ungültiger Statuswert",
"套餐已上架,请勿重复操作": "Paket ist bereits veröffentlicht, bitte nicht wiederholen",
"套餐已下架,请勿重复操作": "Paket ist bereits zurückgezogen, bitte nicht wiederholen",
"请先实名": "Bitte, nur der name",
"实名审核中": "Contest läuft",
"实名审核失败": "Die confirmation hat versagt",
"未知实名状态": "Noch nicht registriert",
"您的手机号验证码错误,请确认之后注册": "Ihre Telefonnummer Verifizierungscode ist falsch, bitte bestätigen und registrieren",
"手机号不合法": "Telefonnummer ungültig",
"手机号未更改": "Telefonnummer wurde nicht geändert",
"新手机号过期": "Neue Telefonnummer abgelaufen",
"验证码错误": "Verifizierungscode falsch",
"验证码未发送": "Der Verifizierungscode wurde nicht gesendet",
"账号不存在": "Konto existiert nicht",
"已实名": "In echt",
"实名审核中,请勿重复提交": "Während der Echtheitsprüfung bitte nicht wiederholen",
"用户状态异常,无法进行审核": "Der Benutzer ist abnorm und kann nicht geprüft werden. Verfahren",
"验证码已失效": "Der Verifizierungscode ist ungültig",
"服务器错误": "Serverfehler",
"验证失败,请控制拼图对齐缺口": "Überprüfung fehlgeschlagen, bitte Steuerung Puzzle-Ausrichtungslücke",
"滑块验证状态不存在,请退出重试": "Die krümmbestätigung existiert nicht. Bitte beenden sie den vorgang",
"语言不能为空": "Sprache darf nicht leer sein",
"排序参数需为正整数": "Sortierparameter muss eine positive ganze Zahl sein",
"请先创建中文版本套餐": "Bitte erstelle das Chinese Version-Paket",
"增值服务不存在": "Der Werbeangebot existiert nicht",
"所选增值服务币种与套餐币种不一致": "Die ausgewählte Währung des Werbeangebots stimmt nicht mit der Währung des Pakets überein",
"文件转换失败": "Datei-Umwandlung fehlgeschlagen",
"每种增值服务类型只可选择一个": "Jeder Werbeangebotstyp kann nur einmal ausgewählt werden",
"保存套餐与增值服务关联失败": "Fehler beim Speichern des Pakets mit Werbeangebot",
"删除套餐与增值服务关联失败": "Fehler beim Löschen des Pakets mit Werbeangebot",
"查询套餐与增值服务关联失败": "Fehler beim Abrufen des Pakets mit Werbeangebot",
"更新套餐与增值服务关联失败": "Fehler beim Aktualisieren des Pakets mit Werbeangebot",
"查询增值服务失败": "Fehler beim Abrufen des Werbeangebots",
"更新套餐状态失败": "Fehler beim Aktualisieren des Paketstatus",
"查询增值服务详情失败": "Fehler beim Abrufen der Werbeangebotsdetails",
"序列化转换失败": "Fehler beim Serialisieren",
"保存套餐历史记录失败": "Fehler beim Speichern des Pakethistorie",
"原价不能为空": "Der reguläre Preis darf nicht leer sein",
"原价格式转换失败": "Fehler beim Umwandeln des regulären Preises",
"数量参数需为0-99": "Die Anzahlsmusterparameter muss eine positive ganze Zahl sein",
"优惠单价需小于等于原价": "Der Rabattpreis muss kleiner oder gleich dem regulären Preis sein",
"请先创建中文版本增值服务": "Bitte erstelle das Chinese Version-Werbeangebot",
"保存增值服务失败": "Fehler beim Speichern des Werbeangebots",
"保存增值服务历史记录失败": "Fehler beim Speichern des Werbeangebots-Historie",
"更新增值服务失败": "Fehler beim Aktualisieren des Werbeangebots",
"查询增值服务列表失败": "Fehler beim Abrufen der Werbeangebotsliste",
"计算价格失败": "Fehler beim Berechnen des Preises",
"更新成功": "Aktualisierung erfolgreich",
"保存成功": "Speichern erfolgreich",
"优惠单价转换失败": "Rabatt-Einzelpreisumrechnung fehlgeschlagen",
"符号错误": "Symbolfehler",
"条件存在冲突,请重新设置": "Bedingungskonflikt vorhanden, bitte neu konfigurieren",
"币种已修改,已取消关联部分增值服务": "Währung wurde geändert, einige Mehrwertdienste wurden getrennt",
"币种已修改,已取消关联部分套餐": "Währung wurde geändert, einige Pakete wurden getrennt",
"新增增值服务成功": "Mehrwertdienst erfolgreich hinzugefügt",
"状态值无效": "Ungültiger Statuswert",
"套餐已上架,请勿重复操作": "Paket ist bereits veröffentlicht, bitte nicht wiederholen",
"套餐已下架,请勿重复操作": "Paket ist bereits zurückgezogen, bitte nicht wiederholen",
"请先实名": "Bitte, nur der name",
"实名审核中": "Contest läuft",
"实名审核失败": "Die confirmation hat versagt",
"未知实名状态": "Noch nicht registriert",
}
var JaJPMessages = map[string]string{
"获取套餐列表失败": "バンドルリストの取得に失敗しました",
"创建套餐信息失败": "バンドル情報の作成に失敗しました",
"创建套餐信息成功": "バンドル情報の作成に成功しました",
"更新套餐信息失败": "バンドル情報の更新に失敗しました",
"更新套餐信息成功": "バンドル情報の更新に成功しました",
"删除套餐信息失败": "バンドル情報の削除に失敗しました",
"删除套餐信息成功": "バンドル情報の削除に成功しました",
"获取套餐信息失败": "バンドル情報の取得に失敗しました",
"创建订单信息失败": "注文情報の作成に失敗しました",
"创建订单信息成功": "注文情報の作成に成功しました",
"更新订单信息失败": "注文情報の更新に失敗しました",
"更新订单信息成功": "注文情報の更新に成功しました",
"获取订单信息失败": "注文情報の取得に失敗しました",
"获取订单列表失败": "注文リストの取得に失敗しました",
"缺少套餐UUID": "バンドルUUIDがありません",
"缺少客户签名信息": "顧客署名情報がありません",
"插入签名失败": "署名の挿入に失敗しました",
"缺少订单号": "注文番号がありません",
"缺少订单信息": "注文情報がありません",
"获取套餐列表失败": "バンドルリストの取得に失敗しました",
"创建套餐信息失败": "バンドル情報の作成に失敗しました",
"创建套餐信息成功": "バンドル情報の作成に成功しました",
"更新套餐信息失败": "バンドル情報の更新に失敗しました",
"更新套餐信息成功": "バンドル情報の更新に成功しました",
"删除套餐信息失败": "バンドル情報の削除に失敗しました",
"删除套餐信息成功": "バンドル情報の削除に成功しました",
"获取套餐信息失败": "バンドル情報の取得に失敗しました",
"创建订单信息失败": "注文情報の作成に失敗しました",
"创建订单信息成功": "注文情報の作成に成功しました",
"更新订单信息失败": "注文情報の更新に失敗しました",
"更新订单信息成功": "注文情報の更新に成功しました",
"获取订单信息失败": "注文情報の取得に失敗しました",
"获取订单列表失败": "注文リストの取得に失敗しました",
"缺少套餐UUID": "バンドルUUIDがありません",
"缺少客户签名信息": "顧客署名情報がありません",
"插入签名失败": "署名の挿入に失敗しました",
"缺少订单号": "注文番号がありません",
"缺少订单信息": "注文情報がありません",
"非当前用户订单信息不可操作": "他のユーザーの注文情報を操作できません",
"订单已支付": "注文は支払われました",
"订单已支付": "注文は支払われました",
"您已购买过套餐,无法再次购买": "このバンドルはすでに購入済みであり、再度購入することはできません",
"查询支付信息失败": "支払い情報のクエリに失敗しました",
"下载文件失败": "ファイルのダウンロードに失敗しました",
"上传文件失败": "ファイルのアップロードに失敗しました",
"时间格式错误": "無効な時間形式",
"查询支付信息失败": "支払い情報のクエリに失敗しました",
"下载文件失败": "ファイルのダウンロードに失敗しました",
"上传文件失败": "ファイルのアップロードに失敗しました",
"时间格式错误": "無効な時間形式",
"账号或密码错误": "アカウントまたはパスワードが間違っています",
"账号或验证码错误": "アカウントまたは検証コードが間違っています",
"账号已存在": "アカウントはすでに存在します",
"没有找到数据": "データが見つかりません",
"已经发送过,验证码尚可用": "送信されました。検証コードは引き続き有効です",
"系统提示:已经发送过,验证码尚可用": "システムメッセージ:すでに送信され、検証コードは引き続き有効です",
"账号或密码错误": "アカウントまたはパスワードが間違っています",
"账号或验证码错误": "アカウントまたは検証コードが間違っています",
"账号已存在": "アカウントはすでに存在します",
"没有找到数据": "データが見つかりません",
"已经发送过,验证码尚可用": "送信されました。検証コードは引き続き有効です",
"系统提示:已经发送过,验证码尚可用": "システムメッセージ:すでに送信され、検証コードは引き続き有効です",
"您的手机号当天发送次数过多,请联系管理员通过密码登录": "その日の電話番号が送信されすぎています。管理者に連絡してパスワードでログインしてください",
"您的手机号验证码错误,请确认之后注册": "電話番号の検証コードが間違っています。確認して登録してください",
"手机号不合法": "電話番号が無効です",
"手机号未更改": "電話番号が変更されていません",
"新手机号过期": "新しい電話番号の有効期限が切れました",
"验证码错误": "検証コードが間違っています",
"验证码未发送": "検証コードが送信されていません",
"账号不存在": "アカウントが存在しません",
"已实名": "実名",
"实名审核中,请勿重复提交": "実名審査中、繰り返し提出しないでください",
"用户状态异常,无法进行审核": "ユーザーが異常であり、審査できません。手続き",
"验证码已失效": "検証コードが無効です",
"服务器错误": "サーバーエラー",
"验证失败,请控制拼图对齐缺口": "検証に失敗しました。パズルの整列ギャップを制御してください",
"滑块验证状态不存在,请退出重试": "スライダー検証状態が存在しません,リトライをログアウトしてください",
"您的手机号验证码错误,请确认之后注册": "電話番号の検証コードが間違っています。確認して登録してください",
"手机号不合法": "電話番号が無効です",
"手机号未更改": "電話番号が変更されていません",
"新手机号过期": "新しい電話番号の有効期限が切れました",
"验证码错误": "検証コードが間違っています",
"验证码未发送": "検証コードが送信されていません",
"账号不存在": "アカウントが存在しません",
"已实名": "実名",
"实名审核中,请勿重复提交": "実名審査中、繰り返し提出しないでください",
"用户状态异常,无法进行审核": "ユーザーが異常であり、審査できません。手続き",
"验证码已失效": "検証コードが無効です",
"服务器错误": "サーバーエラー",
"验证失败,请控制拼图对齐缺口": "検証に失敗しました。パズルの整列ギャップを制御してください",
"滑块验证状态不存在,请退出重试": "スライダー検証状態が存在しません,リトライをログアウトしてください",
"语言不能为空": "言語が空です",
"排序参数需为正整数": "ソートパラメーターは正の整数でなければなりません",
"请先创建中文版本套餐": "最初に中国語バージョンのパッケージを作成してください",
"增值服务不存在": "付加サービスは存在しません",
"语言不能为空": "言語が空です",
"排序参数需为正整数": "ソートパラメーターは正の整数でなければなりません",
"请先创建中文版本套餐": "最初に中国語バージョンのパッケージを作成してください",
"增值服务不存在": "付加サービスは存在しません",
"所选增值服务币种与套餐币种不一致": "選択した付加サービスの通貨とパッケージの通貨が一致しません",
"文件转换失败": "ファイル変換に失敗しました",
"每种增值服务类型只可选择一个": "各種付加サービスタイプは一つしか選択できません",
"保存套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの保存に失敗しました",
"删除套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの削除に失敗しました",
"查询套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの検索に失敗しました",
"更新套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの更新に失敗しました",
"查询增值服务失败": "付加サービスの検索に失敗しました",
"更新套餐状态失败": "パッケージステータスの更新に失敗しました",
"查询增值服务详情失败": "付加サービスの詳細検索に失敗しました",
"序列化转换失败": "シリアライズ変換に失敗しました",
"保存套餐历史记录失败": "パッケージ履歴の保存に失敗しました",
"原价不能为空": "原価は空にできません",
"原价格式转换失败": "原価のフォーマット変換に失敗しました",
"数量参数需为0-99": "数量パラメーターは0-99でなければなりません",
"优惠单价需小于等于原价": "割引単価は原価以下でなければなりません",
"请先创建中文版本增值服务": "最初に中国語バージョンの付加サービスを作成してください",
"保存增值服务失败": "付加サービスの保存に失敗しました",
"保存增值服务历史记录失败": "付加サービス履歴の保存に失敗しました",
"更新增值服务失败": "付加サービスの更新に失敗しました",
"查询增值服务列表失败": "付加サービスリストの検索に失敗しました",
"计算价格失败": "価格計算に失敗しました",
"更新成功": "更新が成功しました",
"保存成功": "保存が成功しました",
"优惠单价转换失败": "割引単価変換に失敗しました",
"符号错误": "記号エラー",
"条件存在冲突,请重新设置": "条件が競合しています、再設定してください",
"文件转换失败": "ファイル変換に失敗しました",
"每种增值服务类型只可选择一个": "各種付加サービスタイプは一つしか選択できません",
"保存套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの保存に失敗しました",
"删除套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの削除に失敗しました",
"查询套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの検索に失敗しました",
"更新套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの更新に失敗しました",
"查询增值服务失败": "付加サービスの検索に失敗しました",
"更新套餐状态失败": "パッケージステータスの更新に失敗しました",
"查询增值服务详情失败": "付加サービスの詳細検索に失敗しました",
"序列化转换失败": "シリアライズ変換に失敗しました",
"保存套餐历史记录失败": "パッケージ履歴の保存に失敗しました",
"原价不能为空": "原価は空にできません",
"原价格式转换失败": "原価のフォーマット変換に失敗しました",
"数量参数需为0-99": "数量パラメーターは0-99でなければなりません",
"优惠单价需小于等于原价": "割引単価は原価以下でなければなりません",
"请先创建中文版本增值服务": "最初に中国語バージョンの付加サービスを作成してください",
"保存增值服务失败": "付加サービスの保存に失敗しました",
"保存增值服务历史记录失败": "付加サービス履歴の保存に失敗しました",
"更新增值服务失败": "付加サービスの更新に失敗しました",
"查询增值服务列表失败": "付加サービスリストの検索に失敗しました",
"计算价格失败": "価格計算に失敗しました",
"更新成功": "更新が成功しました",
"保存成功": "保存が成功しました",
"优惠单价转换失败": "割引単価変換に失敗しました",
"符号错误": "記号エラー",
"条件存在冲突,请重新设置": "条件が競合しています、再設定してください",
"币种已修改,已取消关联部分增值服务": "通貨が変更され、一部の付加サービスの関連付けが解除されました",
"币种已修改,已取消关联部分套餐": "通貨が変更され、一部のパッケージの関連付けが解除されました",
"新增增值服务成功": "付加サービスの追加に成功しました",
"状态值无效": "状態値が無効です",
"套餐已上架,请勿重复操作": "プランはすでに公開済みです、重複操作は避けてください",
"套餐已下架,请勿重复操作": "プランはすでに非公開です、重複操作は避けてください",
"请先实名": "まずは実名でお願いします",
"实名审核中": "実名審査中です",
"实名审核失败": "実名検証失敗です",
"未知实名状态": "未知の実名状態です",
"币种已修改,已取消关联部分套餐": "通貨が変更され、一部のパッケージの関連付けが解除されました",
"新增增值服务成功": "付加サービスの追加に成功しました",
"状态值无效": "状態値が無効です",
"套餐已上架,请勿重复操作": "プランはすでに公開済みです、重複操作は避けてください",
"套餐已下架,请勿重复操作": "プランはすでに非公開です、重複操作は避けてください",
"请先实名": "まずは実名でお願いします",
"实名审核中": "実名審査中です",
"实名审核失败": "実名検証失敗です",
"未知实名状态": "未知の実名状態です",
}
var ZhTWMessages = map[string]string{
"获取套餐列表失败": "獲取套餐列表失敗",
"创建套餐信息失败": "創建套餐信息失敗",
"创建套餐信息成功": "創建套餐信息成功",
"更新套餐信息失败": "更新套餐信息失敗",
"更新套餐信息成功": "更新套餐信息成功",
"删除套餐信息失败": "刪除套餐信息失敗",
"删除套餐信息成功": "刪除套餐信息成功",
"获取套餐信息失败": "獲取套餐信息失敗",
"创建订单信息失败": "創建訂單信息失敗",
"创建订单信息成功": "創建訂單信息成功",
"更新订单信息失败": "更新訂單信息失敗",
"更新订单信息成功": "更新訂單信息成功",
"获取订单信息失败": "獲取訂單信息失敗",
"获取订单列表失败": "獲取訂單列表失敗",
"缺少套餐UUID": "缺少套餐UUID",
"缺少客户签名信息": "缺少客戶簽名信息",
"插入签名失败": "插入簽名失敗",
"缺少订单号": "缺少訂單號",
"缺少订单信息": "缺少訂單信息",
"获取套餐列表失败": "獲取套餐列表失敗",
"创建套餐信息失败": "創建套餐信息失敗",
"创建套餐信息成功": "創建套餐信息成功",
"更新套餐信息失败": "更新套餐信息失敗",
"更新套餐信息成功": "更新套餐信息成功",
"删除套餐信息失败": "刪除套餐信息失敗",
"删除套餐信息成功": "刪除套餐信息成功",
"获取套餐信息失败": "獲取套餐信息失敗",
"创建订单信息失败": "創建訂單信息失敗",
"创建订单信息成功": "創建訂單信息成功",
"更新订单信息失败": "更新訂單信息失敗",
"更新订单信息成功": "更新訂單信息成功",
"获取订单信息失败": "獲取訂單信息失敗",
"获取订单列表失败": "獲取訂單列表失敗",
"缺少套餐UUID": "缺少套餐UUID",
"缺少客户签名信息": "缺少客戶簽名信息",
"插入签名失败": "插入簽名失敗",
"缺少订单号": "缺少訂單號",
"缺少订单信息": "缺少訂單信息",
"非当前用户订单信息不可操作": "非當前用戶訂單信息不可操作",
"订单已支付": "訂單已支付",
"订单已支付": "訂單已支付",
"您已购买过套餐,无法再次购买": "您已購買過套餐,無法再次購買",
"查询支付信息失败": "查詢支付信息失敗",
"下载文件失败": "下載文件失敗",
"上传文件失败": "上傳文件失敗",
"时间格式错误": "時間格式錯誤",
"查询支付信息失败": "查詢支付信息失敗",
"下载文件失败": "下載文件失敗",
"上传文件失败": "上傳文件失敗",
"时间格式错误": "時間格式錯誤",
"账号或密码错误": "帳號或密碼錯誤",
"账号或验证码错误": "帳號或驗證碼錯誤",
"账号已存在": "帳號已存在",
"没有找到数据": "沒有找到數據",
"已经发送过,验证码尚可用": "已經發送過,驗證碼尚可用",
"系统提示:已经发送过,验证码尚可用": "系統提示:已經發送過,驗證碼尚可用",
"账号或密码错误": "帳號或密碼錯誤",
"账号或验证码错误": "帳號或驗證碼錯誤",
"账号已存在": "帳號已存在",
"没有找到数据": "沒有找到數據",
"已经发送过,验证码尚可用": "已經發送過,驗證碼尚可用",
"系统提示:已经发送过,验证码尚可用": "系統提示:已經發送過,驗證碼尚可用",
"您的手机号当天发送次数过多,请联系管理员通过密码登录": "您的手機號當天發送次數過多,請聯繫管理員通過密碼登錄",
"您的手机号验证码错误,请确认之后注册": "您的手機號驗證碼錯誤,請確認之後註冊",
"手机号不合法": "手機號不合法",
"手机号未更改": "手機號未更改",
"新手机号过期": "新手機號過期",
"验证码错误": "驗證碼錯誤",
"验证码未发送": "驗證碼未發送",
"账号不存在": "帳號不存在",
"已实名": "已實名",
"实名审核中,请勿重复提交": "實名審核中,請勿重複提交",
"用户状态异常,无法进行审核": "用戶狀態異常,無法進行審核",
"验证码已失效": "驗證碼已失效",
"服务器错误": "服務器錯誤",
"验证失败,请控制拼图对齐缺口": "驗證失敗,請控制拼圖對齊缺口",
"滑块验证状态不存在,请退出重试": "滑塊驗證狀態不存在,請退出重試",
"您的手机号验证码错误,请确认之后注册": "您的手機號驗證碼錯誤,請確認之後註冊",
"手机号不合法": "手機號不合法",
"手机号未更改": "手機號未更改",
"新手机号过期": "新手機號過期",
"验证码错误": "驗證碼錯誤",
"验证码未发送": "驗證碼未發送",
"账号不存在": "帳號不存在",
"已实名": "已實名",
"实名审核中,请勿重复提交": "實名審核中,請勿重複提交",
"用户状态异常,无法进行审核": "用戶狀態異常,無法進行審核",
"验证码已失效": "驗證碼已失效",
"服务器错误": "服務器錯誤",
"验证失败,请控制拼图对齐缺口": "驗證失敗,請控制拼圖對齊缺口",
"滑块验证状态不存在,请退出重试": "滑塊驗證狀態不存在,請退出重試",
"语言不能为空": "語言不能為空",
"排序参数需为正整数": "排序參數需為正整數",
"请先创建中文版本套餐": "請先建立中文版本套餐",
"增值服务不存在": "增值服務不存在",
"语言不能为空": "語言不能為空",
"排序参数需为正整数": "排序參數需為正整數",
"请先创建中文版本套餐": "請先建立中文版本套餐",
"增值服务不存在": "增值服務不存在",
"所选增值服务币种与套餐币种不一致": "所選增值服務幣種與套餐幣種不一致",
"文件转换失败": "文件轉換失敗",
"每种增值服务类型只可选择一个": "每種增值服務類型只可選擇一個",
"保存套餐与增值服务关联失败": "保存套餐與增值服務關聯失敗",
"删除套餐与增值服务关联失败": "刪除套餐與增值服務關聯失敗",
"查询套餐与增值服务关联失败": "查詢套餐與增值服務關聯失敗",
"更新套餐与增值服务关联失败": "更新套餐與增值服務關聯失敗",
"查询增值服务失败": "查詢增值服務失敗",
"更新套餐状态失败": "更新套餐狀態失敗",
"查询增值服务详情失败": "查詢增值服務詳情失敗",
"序列化转换失败": "序列化轉換失敗",
"保存套餐历史记录失败": "保存套餐歷史記錄失敗",
"原价不能为空": "原價不能為空",
"原价格式转换失败": "原價格式轉換失敗",
"数量参数需为0-99": "數量參數需為0-99",
"优惠单价需小于等于原价": "優惠單價需小於等於原價",
"请先创建中文版本增值服务": "請先建立中文版本增值服務",
"保存增值服务失败": "保存增值服務失敗",
"保存增值服务历史记录失败": "保存增值服務歷史記錄失敗",
"更新增值服务失败": "更新增值服務失敗",
"查询增值服务列表失败": "查詢增值服務列表失敗",
"计算价格失败": "計算價格失敗",
"更新成功": "更新成功",
"保存成功": "儲存成功",
"优惠单价转换失败": "優惠單價轉換失敗",
"符号错误": "符號錯誤",
"条件存在冲突,请重新设置": "條件存在衝突,請重新設定",
"文件转换失败": "文件轉換失敗",
"每种增值服务类型只可选择一个": "每種增值服務類型只可選擇一個",
"保存套餐与增值服务关联失败": "保存套餐與增值服務關聯失敗",
"删除套餐与增值服务关联失败": "刪除套餐與增值服務關聯失敗",
"查询套餐与增值服务关联失败": "查詢套餐與增值服務關聯失敗",
"更新套餐与增值服务关联失败": "更新套餐與增值服務關聯失敗",
"查询增值服务失败": "查詢增值服務失敗",
"更新套餐状态失败": "更新套餐狀態失敗",
"查询增值服务详情失败": "查詢增值服務詳情失敗",
"序列化转换失败": "序列化轉換失敗",
"保存套餐历史记录失败": "保存套餐歷史記錄失敗",
"原价不能为空": "原價不能為空",
"原价格式转换失败": "原價格式轉換失敗",
"数量参数需为0-99": "數量參數需為0-99",
"优惠单价需小于等于原价": "優惠單價需小於等於原價",
"请先创建中文版本增值服务": "請先建立中文版本增值服務",
"保存增值服务失败": "保存增值服務失敗",
"保存增值服务历史记录失败": "保存增值服務歷史記錄失敗",
"更新增值服务失败": "更新增值服務失敗",
"查询增值服务列表失败": "查詢增值服務列表失敗",
"计算价格失败": "計算價格失敗",
"更新成功": "更新成功",
"保存成功": "儲存成功",
"优惠单价转换失败": "優惠單價轉換失敗",
"符号错误": "符號錯誤",
"条件存在冲突,请重新设置": "條件存在衝突,請重新設定",
"币种已修改,已取消关联部分增值服务": "幣種已修改,已取消關聯部分增值服務",
"币种已修改,已取消关联部分套餐": "幣種已修改,已取消關聯部分套餐",
"新增增值服务成功": "新增增值服務成功",
"状态值无效": "狀態值無效",
"套餐已上架,请勿重复操作": "套餐已上架,請勿重複操作",
"套餐已下架,请勿重复操作": "套餐已下架,請勿重複操作",
"请先实名": "請先實名",
"实名审核中": "實名審覈中",
"实名审核失败": "實名審覈失敗",
"未知实名状态": "未知實名狀態",
"已存在标题相同的数据": "已存在標題相同的數據",
"展示数量不能超过5个": "展示數量不能超過5個",
"查询失败": "查詢失敗",
"操作失败": "操作失敗",
"币种已修改,已取消关联部分套餐": "幣種已修改,已取消關聯部分套餐",
"新增增值服务成功": "新增增值服務成功",
"状态值无效": "狀態值無效",
"套餐已上架,请勿重复操作": "套餐已上架,請勿重複操作",
"套餐已下架,请勿重复操作": "套餐已下架,請勿重複操作",
"请先实名": "請先實名",
"实名审核中": "實名審覈中",
"实名审核失败": "實名審覈失敗",
"未知实名状态": "未知實名狀態",
"已存在标题相同的数据": "已存在標題相同的數據",
"展示数量不能超过5个": "展示數量不能超過5個",
"查询失败": "查詢失敗",
"操作失败": "操作失敗",
"参数缺失": "參數缺失",
"创建失败": "創建失敗",
"更新失败": "更新失敗",
"删除失败": "刪除失敗",
"参数缺失": "參數缺失",
"创建失败": "創建失敗",
"更新失败": "更新失敗",
"删除失败": "刪除失敗",
"更新状态失败": "更新狀態失敗",
}

View File

@ -236,6 +236,7 @@ func (o *ChatRoom) SendSessionMessage(sender *accountFiee.ChatUserData, sessionI
o.Session[sessionId] = usableClients
fmt.Printf("sessionId:[%s],客户端数量%d\n", sessionId, len(o.Session[sessionId]))
fmt.Println("userIdInSession", userIdInSession)
fmt.Println("pushed", pushed)
return
}
func (o *ChatRoom) GetUserIdInSession(sessionId string, withoutUserId ...int64) (userIds []int64) {

View File

@ -161,7 +161,6 @@ func CheckWebLogin(provider *account.AccountClientImpl) gin.HandlerFunc {
Domain: info.Domain,
ID: info.ID,
Name: info.NickName,
//Account: info.Account,
//NickName: info.NickName,
//PositionUsers: qres.PositionUsers,
//Extend: infoRes.Info.Extend,

View File

@ -44,7 +44,7 @@ func BundleOrderRouter(r *gin.RouterGroup) {
bundleOrderAppRoute := bundleOrderRoute.Group("app")
{
bundleOrderAppRoute.POST("order-signature", bundle.CreateBundleOrderSignature)
bundleOrderAppRoute.POST("order-add-signature", bundle.CreateBundleOrderAddSignature)
//bundleOrderAppRoute.POST("order-add-signature", bundle.CreateBundleOrderAddSignature)
bundleOrderAppRoute.POST("order-del", bundle.DeleteBundleOrder)
bundleOrderAppRoute.POST("update-pay", bundle.UpdateBundleOrderStatusPaid)
bundleOrderAppRoute.POST("order-detail", bundle.OrderRecordsDetail)

View File

@ -51,6 +51,7 @@ func NewRouter() *gin.Engine {
BundleRouter(privateGroup)
BundleOrderRouter(privateGroup)
ValueAddBundleRouter(privateGroup)
TaskBenchRouter(privateGroup) // 新增任务台路由
MediaRouter(privateGroup)
SecFilingRouter(privateGroup)
app.MediaAppRouter(privateGroup)

58
pkg/router/taskBench.go Normal file
View File

@ -0,0 +1,58 @@
package router
import (
"fonchain-fiee/pkg/middleware"
"fonchain-fiee/pkg/service"
"fonchain-fiee/pkg/service/taskbench"
"github.com/gin-gonic/gin"
)
// TaskBenchRouter 任务台路由
func TaskBenchRouter(r *gin.RouterGroup) {
// 创建任务台路由组
taskBenchRoute := r.Group("task-bench")
// 使用Web登录中间件进行权限验证
taskBenchRoute.Use(middleware.CheckWebLogin(service.AccountProvider))
// 任务台管理
{
// 查询待指派任务记录
taskBenchRoute.POST("pending-task-list", taskbench.GetPendingTaskList)
// 指派某位员工完成某个艺人的任务
taskBenchRoute.POST("assign-task", taskbench.AssignTask)
// 修改待发数量
taskBenchRoute.POST("update-pending-count", taskbench.UpdatePendingCount)
// 查询最近被指派记录
taskBenchRoute.POST("recent-assign-records", taskbench.GetRecentAssignRecords)
// 多条件查询操作记录表
taskBenchRoute.POST("task-assign-records-list", taskbench.GetTaskAssignRecordsList)
// 员工完成图片作品任务带任务UUID
taskBenchRoute.POST("update-work-image-with-task-uuid", taskbench.UpdateWorkImageWithTaskUUID)
// 员工完成视频作品任务带任务UUID
taskBenchRoute.POST("update-work-video-with-task-uuid", taskbench.UpdateWorkVideoWithUUID)
// 根据登录人信息查询被指派给该员工的任务
taskBenchRoute.POST("assigned-tasks", taskbench.GetEmployeeAssignedTasks)
// 员工手动点击完成任务
taskBenchRoute.POST("complete-manually", taskbench.CompleteTaskManually)
// 查询艺人套餐剩余数量
taskBenchRoute.POST("artist-bundle-balance", taskbench.GetArtistBundleBalance)
}
// 员工任务相关路由需要App登录验证
taskBenchAppRoute := r.Group("task-bench")
taskBenchAppRoute.Use(middleware.CheckLogin(service.AccountFieeProvider))
{
// 员工实际完成任务状态更新
taskBenchAppRoute.POST("update-progress", taskbench.UpdateTaskProgress)
}
}

View File

@ -134,6 +134,9 @@ func (cr ChatHandler) NewMessage(c *gin.Context) {
service.ErrWithCode(c, code)
return
}
if request.LocalStamp == 0 {
request.LocalStamp = time.Now().Unix()
}
err := logic.NewMessage(c, &cr.cache, chatUser, request)
if err != nil {
service.Error(c, err)
@ -260,8 +263,9 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
// return
// }
//}
messages := cr.cache.GetChatRecord(request.SessionId)
//messages := []*accountFiee.ChatRecordData{}
// 启用或禁用缓存
//messages := cr.cache.GetChatRecord(request.SessionId)
messages := []*accountFiee.ChatRecordData{}
var returnDataIdList = make([]int64, 0)
defer func() {
//获取最新数据时,重置新消息数量统计
@ -277,6 +281,7 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
}
}
}
fmt.Println("defer CoverChatRecord , message len:", len(messages))
err := cr.cache.CoverChatRecord(request.SessionId, messages)
if err != nil {
log.Print("设置消息已读失败", zap.Error(err))
@ -302,6 +307,7 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
return
}
messages = recordResp.List
fmt.Println("GetChatRecordList len:", len(messages))
err = cr.cache.CoverChatRecord(request.SessionId, messages)
if err != nil {
log.Print("覆盖聊天记录失败", zap.Error(err))
@ -332,7 +338,7 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
return messages[i].ID > messages[j].ID
}
})
fmt.Printf("data is %+v\n", messages)
//fmt.Printf("data is %+v\n", messages)
total := 0
for i, message := range messages {
switch request.Direction {
@ -367,8 +373,6 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
resp[i].Message.Media = []dto.MessageMedia{}
}
}
if accessUser.Role == 1 {
}
service.Success(c, resp)
}
@ -630,13 +634,13 @@ func (a *ChatHandler) UserSwitchAutoReplyStatus(c *gin.Context) {
}
service.Success(c, resp)
}
func (a *ChatHandler) SetSwitchAutoReplyStatus(c *gin.Context) {
chatUser, code := jwt.ParseToChatUser(c)
if code != 0 {
service.ErrWithCode(c, code)
return
}
sessionId := a.cache.GetUserSession(chatUser.ID)
var req dto.UserSwitchAutoReplyReq
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
@ -652,9 +656,18 @@ func (a *ChatHandler) SetSwitchAutoReplyStatus(c *gin.Context) {
} else {
msg.Text = "已进入人工,不会接收自动消息"
}
err := logic.NewMessage(c, &a.cache, chatUser, dto.NewMessageRequest{
sender := &accountFiee.ChatUserData{
ID: a.robot.Info.ID,
NickName: a.robot.Name,
Account: a.robot.Info.Account,
Role: 3,
Origin: a.robot.Info.Origin,
OriginId: a.robot.Info.OriginId,
Avatar: a.robot.Info.Avatar,
}
err := logic.NewMessage(c, &a.cache, sender, dto.NewMessageRequest{
Robot: true,
SessionId: fmt.Sprintf("%d", chatUser.ID),
SessionId: sessionId,
Message: msg,
})
if err != nil {

View File

@ -42,6 +42,7 @@ func NewMessage(ctx context.Context, cache *chatCache.ChatCache, sender *account
fmt.Println(request.LocalStamp - msgRecord.LocalStamp)
if msgRecord.Message.Text == request.Message.Text && request.LocalStamp-msgRecord.LocalStamp < 1 { //秒级
cacheMap[request.AtUserId] = request
fmt.Println("\n\n跳过消息发送\n\t跳过消息发送\n\t\t跳过消息发送\n\n")
return nil
} else {
cacheMap[request.AtUserId] = request
@ -105,6 +106,7 @@ func NewMessage(ctx context.Context, cache *chatCache.ChatCache, sender *account
notice.BuildMessage(resp.Data)
fmt.Printf("ws消息提醒:%+v\n", notice)
_, err = consts.ChatRoom.SendSessionMessage(sender, request.SessionId, ws.NewChatMsgType, notice)
fmt.Println("消息提醒结果:", err)
if err != nil {
log.Print("发送新消息通知失败", zap.Error(err), zap.Any("notice", notice))
}

View File

@ -177,10 +177,12 @@ func (r *Robot) Run() {
if hit {
hasHit = true
if rule.RunTime().IsZero() {
err := rule.Run(r.cache)
if err != nil {
log.Printf("robot 执行任务失败:%v\n", err)
}
go func() {
err := rule.Run(r.cache)
if err != nil {
log.Printf("robot 执行任务失败:%v\n", err)
}
}()
} else {
r.RegisterDelayTask(rule)
}

View File

@ -27,6 +27,12 @@ func NewReplyWhenHitKeywords(title string, keywords []string) IRobotTask {
return &RobotTaskWithKeyworkds{title: title, keywords: keywords}
}
func (r *RobotTaskWithKeyworkds) Hit(event ws.ListenEventData, sender *accountFiee.ChatUserData) (hit bool) {
//fmt.Printf("event.EventType != ws.EventChatMessage:%v\n", event.EventType != ws.EventChatMessage)
//fmt.Printf("event.Msg: %v\n", event.Msg == "")
//fmt.Printf("event.Client == nil: %v\n", event.Client == nil)
//fmt.Printf("event.ChatUser == nil: %v\n", event.ChatUser == nil)
//fmt.Printf("event.ChatUser.Role != 1: %v\n", event.ChatUser.Role != 1)
//fmt.Printf("r.keywords: %+v\n", r.keywords)
if event.EventType != ws.EventChatMessage || event.Msg == "" || event.Client == nil || event.ChatUser == nil {
return
}

View File

@ -6,6 +6,7 @@ import (
"fonchain-fiee/api/bundle"
"fonchain-fiee/api/cast"
"fonchain-fiee/pkg/service"
"log"
"strconv"
bundleModel "fonchain-fiee/pkg/model/bundle"
@ -157,7 +158,7 @@ func WorkConfirm(c *gin.Context) { // 确认作品并扣除余量
service.Error(c, err)
return
}
log.Print("req.ConfirmRemark:", req.ConfirmRemark)
if req.ConfirmStatus == 2 { // 驳回完直接结束
res, err := service.CastProvider.UpdateStatus(c, &cast.UpdateStatusReq{
WorkAction: cast.WorkActionENUM_CONFIRM,

View File

@ -193,161 +193,69 @@ func calculateExpirationDate(startDate time.Time, num int32, unit string) string
}
func CreateBundleOrderSignature(c *gin.Context) {
var req bundle.OrderCreateRecord
if err := c.ShouldBindBodyWith(&req, binding.JSON); err != nil {
service.Error(c, err)
return
}
if req.BundleUuid == "" {
service.Error(c, errors.New(common.MissBundleUUID))
// 参数校验
if err := logic.ValidateRequest(c, &req); err != nil {
service.Error(c, err)
return
}
if req.Language == "" {
req.Language = c.GetHeader("Accept-Language")
if req.Language == "" {
service.Error(c, errors.New(common.MissLanguageTypes))
return
}
}
// 不去校验 签名
/*if req.Signature == "" {
service.Error(c, errors.New(common.MissOrderSignature))
return
}*/
statusMessages := map[int32]string{
1: common.Unnamed,
2: common.UnderReview,
3: common.ReviewFailed,
}
// 获取 用户信息
// 获取用户信息并校验状态
userInfo := login.GetUserInfoFromC(c)
if userInfo.Status != 4 {
if msg, exists := statusMessages[userInfo.Status]; exists {
service.Error(c, errors.New(msg))
return
} else {
service.Error(c, errors.New(common.UnknownStatus))
return
}
}
// 校验 当前用户只能买一次套餐
orderRecordsListReq := bundle.OrderRecordsRequest{
CustomerID: strconv.FormatUint(userInfo.ID, 10),
}
orderRecordsList, orderRecordsListErr := service.BundleProvider.OrderRecordsList(context.Background(), &orderRecordsListReq)
if orderRecordsListErr != nil {
service.Error(c, orderRecordsListErr)
if err := logic.ValidateUserStatus(userInfo); err != nil {
service.Error(c, err)
return
}
//有套餐并且套餐未过期
if orderRecordsList.OrderRecords != nil {
for _, orderInfo := range orderRecordsList.OrderRecords {
if orderInfo.CustomerID == strconv.FormatUint(userInfo.ID, 10) && orderInfo.Status == 1 {
service.Error(c, errors.New(common.ThereAreOutstandingOrders))
return
}
if orderInfo.CustomerID == strconv.FormatUint(userInfo.ID, 10) && orderInfo.ExpirationTime > time.Now().Format("2006-01-02 15:04:05") {
service.Error(c, errors.New(common.HadOrder))
return
}
}
}
// 获取 最后一次的 合同编号
lastOrderRecord, lastOrderRecordErr := service.BundleProvider.OrderRecordsList(context.Background(), &bundle.OrderRecordsRequest{
PageSize: 1,
Page: 1,
})
// 校验套餐是否已购买
if err := logic.CheckUserOrder(userInfo.ID); err != nil {
service.Error(c, err)
return
}
if lastOrderRecordErr != nil {
service.Error(c, lastOrderRecordErr)
// 获取最后一次合同编号
lastContractNo, err := logic.GetLastContractNo()
if err != nil {
service.Error(c, err)
return
}
lastContractNo := ""
if lastOrderRecord.OrderRecords != nil {
for _, lastOrder := range lastOrderRecord.OrderRecords {
lastContractNo = lastOrder.ContractNo
}
}
// 获取 套餐信息
bundleDetailReq := &bundle.BundleDetailRequest{
Uuid: req.BundleUuid,
Language: req.Language,
}
bundleDetail, detailErr := service.BundleProvider.BundleLangDetailV2(context.Background(), bundleDetailReq)
if detailErr != nil {
service.Error(c, detailErr)
return
}
//获取过期时间和增值服务金额
var addRecords []*bundle.OrderCreateAddRecord
var addTotalPrice float32
var expirationDay string
for _, i := range req.AddRecords {
price, err := service.BundleProvider.CalculatePrice(context.Background(), &bundle.CalculatePriceRequest{
Uuid: i.ValueUid,
Num: i.Num,
Language: req.Language,
})
if err != nil {
service.Error(c, err)
return
}
addTotalPrice += price.Price
addService, err := service.BundleProvider.ValueAddServiceLangByUuidAndLanguage(context.Background(), &bundle.ValueAddServiceDetailRequest{
Uuid: i.ValueUid,
Language: req.Language,
})
if err != nil {
service.Error(c, err)
return
}
addRecords = append(addRecords, &bundle.OrderCreateAddRecord{
ServiceType: addService.ServiceType,
ValueUid: i.ValueUid,
CurrencyType: addService.PriceType,
Amount: price.Price,
Num: i.Num,
Unit: addService.Unit,
Source: 1,
PaymentStatus: 1,
})
//服务类型为时长 计算
if addService.ServiceType == 5 {
expirationDay = calculateExpirationDate(time.Now(), i.Num, addService.Unit)
} else {
expirationDay = time.Now().AddDate(0, 0, 7).Format("2006-01-02")
}
}
// 当前 未将 签名 写入合同中 todo 金额和有效时间待修改
signContract, signContractErr := logic.SignContractV2(req.CustomerNum, bundleDetail.Contract, bundleDetail.Price+addTotalPrice, expirationDay)
if signContractErr != nil {
service.Error(c, signContractErr)
return
}
req.CustomerNum = userInfo.SubNum
req.CustomerName = userInfo.Name
req.CustomerID = strconv.FormatUint(userInfo.ID, 10)
req.BundleName = bundleDetail.Name
req.Amount = bundleDetail.Price
req.AmountType = bundleDetail.PriceType
//req.BundleCommonUid = bundleDetail.BundleCommonUid
req.TotalAmount = bundleDetail.Price + addTotalPrice
req.ContractNo = common.GenerateContractNo(lastContractNo)
req.SignContract = signContract
req.SignedTime = common.GetBeijingTime()
req.Status = bundleModel.OrderSigned
req.AddRecords = addRecords
//req.ExpirationTime = expirationDay //过期日期取消 在完成支付是更新
req.PayType = 1
// 获取套餐详情
bundleDetail, err := logic.GetBundleDetail(req.BundleUuid, req.Language)
if err != nil {
service.Error(c, err)
return
}
// 组装服务内容(套餐权益 + 附加权益)
addRecords, addTotalPrice, expirationDay, err := logic.BuildServiceRecords(&req, bundleDetail)
if err != nil {
service.Error(c, err)
return
}
// 签合同(金额 + 有效期)
signContract, err := logic.SignContractV2(req.CustomerNum, bundleDetail.Contract, bundleDetail.Price+addTotalPrice, expirationDay)
if err != nil {
service.Error(c, err)
return
}
// 组装订单信息
req = logic.BuildOrderRequest(req, userInfo, bundleDetail, addRecords, addTotalPrice, lastContractNo, signContract)
// 创建订单
res, err := service.BundleProvider.CreateOrderRecord(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
return
}
func UpdateBundleOrderStatusPaid(c *gin.Context) {

View File

@ -113,7 +113,6 @@ func BundleListV2(c *gin.Context) {
}
func BundleDetailV2(c *gin.Context) {
var req bundle.BundleDetailRequest
if err := c.ShouldBindBodyWith(&req, binding.JSON); err != nil {
service.Error(c, err)
return

View File

@ -50,6 +50,10 @@ const (
ReviewFailed = "实名审核失败"
UnknownStatus = "未知实名状态"
)
const (
UnknownAddServiceUUID = "未知增值服务"
BundleUnBindingAddService = "套餐未绑定增值服务"
)
/*var EnMessages = map[string]string{
"创建套餐信息失败": "Failed to create bundle information",

View File

@ -0,0 +1,211 @@
package logic
import (
"context"
"errors"
"fonchain-fiee/api/bundle"
"fonchain-fiee/pkg/model/login"
"fonchain-fiee/pkg/service"
"fonchain-fiee/pkg/service/bundle/common"
bundleModel "fonchain-fiee/pkg/service/bundle/model"
"strconv"
"time"
"github.com/gin-gonic/gin"
)
// 校验参数
func ValidateRequest(c *gin.Context, req *bundle.OrderCreateRecord) error {
if req.BundleUuid == "" {
return errors.New(common.MissBundleUUID)
}
if req.Language == "" {
req.Language = c.GetHeader("Accept-Language")
if req.Language == "" {
return errors.New(common.MissLanguageTypes)
}
}
return nil
}
// 校验用户状态
func ValidateUserStatus(userInfo login.Info) error {
statusMessages := map[int32]string{
1: common.Unnamed,
2: common.UnderReview,
3: common.ReviewFailed,
}
if userInfo.Status != 4 {
if msg, ok := statusMessages[userInfo.Status]; ok {
return errors.New(msg)
}
return errors.New(common.UnknownStatus)
}
return nil
}
// 校验用户是否已有套餐
func CheckUserOrder(userID uint64) error {
req := bundle.OrderRecordsRequest{CustomerID: strconv.FormatUint(userID, 10)}
records, err := service.BundleProvider.OrderRecordsList(context.Background(), &req)
if err != nil {
return err
}
for _, order := range records.OrderRecords {
if order.CustomerID == strconv.FormatUint(userID, 10) && order.Status == 1 {
return errors.New(common.ThereAreOutstandingOrders)
}
if order.CustomerID == strconv.FormatUint(userID, 10) && order.ExpirationTime > time.Now().Format("2006-01-02 15:04:05") {
return errors.New(common.HadOrder)
}
}
return nil
}
// 获取最后一次合同编号
func GetLastContractNo() (string, error) {
records, err := service.BundleProvider.OrderRecordsList(context.Background(), &bundle.OrderRecordsRequest{
PageSize: 1,
Page: 1,
})
if err != nil {
return "", err
}
if len(records.OrderRecords) > 0 {
return records.OrderRecords[0].ContractNo, nil
}
return "", nil
}
// 获取套餐详情
func GetBundleDetail(uuid, lang string) (*bundle.BundleProfileLang, error) {
return service.BundleProvider.BundleLangDetailV2(context.Background(), &bundle.BundleDetailRequest{
Uuid: uuid,
Language: lang,
})
}
// 组装服务内容(套餐权益和附加权益)
func BuildServiceRecords(req *bundle.OrderCreateRecord, bundleDetail *bundle.BundleProfileLang) ([]*bundle.OrderCreateAddRecord, float32, string, error) {
var (
addRecords []*bundle.OrderCreateAddRecord
addTotalPrice float32
expirationDay string
addUidService = make(map[string]bool)
bundleUidService = make(map[string]bool)
)
// 分类权益
for _, i := range bundleDetail.ServiceLangInfo {
switch i.BenefitsType {
case 1:
bundleUidService[i.ValueAddUuid] = true
case 2:
addUidService[i.ValueAddUuid] = true
}
}
if len(bundleUidService) == 0 {
return nil, 0, "", errors.New(common.BundleUnBindingAddService)
}
// 附加权益
for _, i := range req.AddRecords {
if !addUidService[i.ValueUid] {
return nil, 0, "", errors.New(common.UnknownAddServiceUUID)
}
price, err := service.BundleProvider.CalculatePrice(context.Background(), &bundle.CalculatePriceRequest{
Uuid: i.ValueUid,
Num: i.Num,
Language: req.Language,
})
if err != nil {
return nil, 0, "", err
}
addTotalPrice += price.Price
addService, err := service.BundleProvider.ValueAddServiceLangByUuidAndLanguage(context.Background(),
&bundle.ValueAddServiceDetailRequest{Uuid: i.ValueUid, Language: req.Language})
if err != nil {
return nil, 0, "", err
}
addRecords = append(addRecords, buildAddRecord(addService, i.ValueUid, price.Price, i.Num, 2))
}
// 套餐权益
for uid := range bundleUidService {
addService, err := service.BundleProvider.ValueAddServiceLangByUuidAndLanguage(context.Background(),
&bundle.ValueAddServiceDetailRequest{Uuid: uid, Language: req.Language})
if err != nil {
return nil, 0, "", err
}
var num int32
for _, s := range addService.Options {
if s.IsDefault {
num = s.Num
break
}
}
addRecords = append(addRecords, buildAddRecord(addService, uid, 0, num, 1))
// 计算到期时间
if addService.ServiceType == 5 {
expirationDay = calculateExpirationDate(time.Now(), num, addService.Unit)
} else {
expirationDay = time.Now().AddDate(0, 0, 7).Format("2006-01-02")
}
}
return addRecords, addTotalPrice, expirationDay, nil
}
// 构建单条服务记录
func buildAddRecord(addService *bundle.ValueAddServiceLang, uid string, price float32, num int32, equityType int32) *bundle.OrderCreateAddRecord {
return &bundle.OrderCreateAddRecord{
ServiceType: addService.ServiceType,
ValueUid: uid,
CurrencyType: addService.PriceType,
Amount: price,
Num: num,
Unit: addService.Unit,
Source: 1,
PaymentStatus: 1,
EquityType: equityType,
QuotaType: addService.QuotaType,
QuotaValue: addService.QuotaValue,
IsExpired: addService.IsExpired,
}
}
// 组装订单请求
func BuildOrderRequest(req bundle.OrderCreateRecord, userInfo login.Info,
bundleDetail *bundle.BundleProfileLang, addRecords []*bundle.OrderCreateAddRecord,
addTotalPrice float32, lastContractNo, signContract string) bundle.OrderCreateRecord {
req.CustomerNum = userInfo.SubNum
req.CustomerName = userInfo.Name
req.CustomerID = strconv.FormatUint(userInfo.ID, 10)
req.BundleName = bundleDetail.Name
req.Amount = bundleDetail.Price
req.AmountType = bundleDetail.PriceType
req.TotalAmount = bundleDetail.Price + addTotalPrice
req.ContractNo = common.GenerateContractNo(lastContractNo)
req.SignContract = signContract
req.SignedTime = common.GetBeijingTime()
req.Status = bundleModel.OrderSigned
req.AddRecords = addRecords
req.PayType = 1
return req
}
func calculateExpirationDate(startDate time.Time, num int32, unit string) string {
//now := time.Now()
switch unit {
case "天":
return startDate.AddDate(0, 0, int(num)).Format("2006-01-02")
case "月":
return startDate.AddDate(0, int(num), 0).Format("2006-01-02")
case "年":
return startDate.AddDate(int(num), 0, 0).Format("2006-01-02")
default:
return ""
}
}

View File

@ -6,12 +6,13 @@ import (
"fonchain-fiee/pkg/model"
"fonchain-fiee/pkg/service/bundle/common"
"fonchain-fiee/pkg/service/upload"
"github.com/signintech/gopdf"
"go.uber.org/zap"
"log"
"os"
"strconv"
"time"
"github.com/signintech/gopdf"
"go.uber.org/zap"
)
func SignContractV2(customerNum, contract string, price float32, expirationDate string) (outputUrl string, err error) {

View File

@ -57,6 +57,25 @@ func UpdateWorkImage(ctx *gin.Context) {
service.Error(ctx, err)
return
}
// 更新任务台的任务数量,调用员工实际任务状态更新
if service.BundleProvider != nil {
resp1, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &bundle.UpdateTaskProgressRequest{
AssignRecordsUUID: "",
EmployeeName: infoResp.Name,
EmployeeNum: infoResp.TelNum,
TaskType: "post",
CompleteCount: 1,
})
if err != nil {
zap.L().Error("UpdateTaskProgress failed", zap.Error(err))
// 不直接返回错误,允许主要功能继续执行
} else {
zap.L().Info("UpdateTaskProgress", zap.Any("resp", resp1))
}
} else {
zap.L().Warn("BundleProvider is nil, skipping UpdateTaskProgress")
}
service.Success(ctx, resp)
return
}
@ -101,6 +120,25 @@ func UpdateWorkVideo(ctx *gin.Context) {
service.Error(ctx, err)
return
}
// 更新任务台的任务数量,调用员工实际任务状态更新
if service.BundleProvider != nil {
resp1, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &bundle.UpdateTaskProgressRequest{
AssignRecordsUUID: "",
EmployeeName: infoResp.Name,
EmployeeNum: infoResp.TelNum,
TaskType: "video",
CompleteCount: 1,
})
if err != nil {
zap.L().Error("UpdateTaskProgress failed", zap.Error(err))
// 不直接返回错误,允许主要功能继续执行
} else {
zap.L().Info("UpdateTaskProgress", zap.Any("resp", resp1))
}
} else {
zap.L().Warn("BundleProvider is nil, skipping UpdateTaskProgress")
}
service.Success(ctx, resp)
return
}

View File

@ -1,6 +1,9 @@
package service
import (
"dubbo.apache.org/dubbo-go/v3/common/constant"
"dubbo.apache.org/dubbo-go/v3/config"
_ "dubbo.apache.org/dubbo-go/v3/imports"
"fmt"
"fonchain-fiee/api/account"
"fonchain-fiee/api/accountFiee"
@ -14,10 +17,6 @@ import (
"fonchain-fiee/api/secFilings"
pkConfig "fonchain-fiee/pkg/config"
"os"
"dubbo.apache.org/dubbo-go/v3/common/constant"
"dubbo.apache.org/dubbo-go/v3/config"
_ "dubbo.apache.org/dubbo-go/v3/imports"
)
var AccountProvider = new(account.AccountClientImpl)

View File

@ -0,0 +1,308 @@
package taskbench
import (
"context"
"fmt"
"fonchain-fiee/api/accountFiee"
"fonchain-fiee/api/bundle"
"fonchain-fiee/api/cast"
"fonchain-fiee/cmd/config"
modelCast "fonchain-fiee/pkg/model/cast"
"fonchain-fiee/pkg/model/login"
"fonchain-fiee/pkg/service"
castService "fonchain-fiee/pkg/service/cast"
"strconv"
"github.com/gin-gonic/gin"
"go.uber.org/zap"
)
// GetPendingTaskList 查询待指派任务记录
func GetPendingTaskList(c *gin.Context) {
var req bundle.TaskQueryRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.GetPendingTaskList(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// AssignTask 指派某位员工完成某个艺人的任务
func AssignTask(c *gin.Context) {
var req bundle.TaskAssignRequest
userInfo := login.GetUserInfoFromC(c)
req.OperatorNum = userInfo.TelNum
req.Operator = userInfo.Name
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.AssignTask(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// UpdatePendingCount 修改待发数量
func UpdatePendingCount(c *gin.Context) {
var req bundle.UpdatePendingCountRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.UpdatePendingCount(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// GetRecentAssignRecords 查询最近被指派记录
func GetRecentAssignRecords(c *gin.Context) {
var req bundle.RecentAssignRecordsRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.GetRecentAssignRecords(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// GetEmployeeAssignedTasks 根据登录人信息查询被指派给该员工的任务
func GetEmployeeAssignedTasks(c *gin.Context) {
var req bundle.EmployeeTaskQueryRequest
userInfo := login.GetUserInfoFromC(c)
req.TaskAssigneeNum = userInfo.TelNum
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.GetEmployeeAssignedTasks(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// CompleteTaskManually 员工手动点击完成任务
func CompleteTaskManually(c *gin.Context) {
var req bundle.CompleteTaskManuallyRequest
userInfo := login.GetUserInfoFromC(c)
req.TaskAssigneeNum = userInfo.TelNum
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.CompleteTaskManually(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// UpdateTaskProgress 员工实际完成任务状态更新
func UpdateTaskProgress(c *gin.Context) {
var req bundle.UpdateTaskProgressRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// GetTaskAssignRecordsList 多条件查询操作记录表
func GetTaskAssignRecordsList(c *gin.Context) {
var req bundle.TaskAssignRecordsQueryRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
// 添加空指针检查
if service.BundleProvider == nil {
service.Error(c, fmt.Errorf("BundleProvider is not initialized"))
return
}
res, err := service.BundleProvider.GetTaskAssignRecordsList(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
type UpdateWorkVideoWithUUIDReq struct {
*cast.UpdateWorkVideoReq
AssignRecordsUUID string `json:"assignRecordsUUID"`
}
type UpdateWorkImageWithTaskUUIDReq struct {
*cast.UpdateWorkImageReq
AssignRecordsUUID string `json:"assignRecordsUUID"`
}
func UpdateWorkImageWithTaskUUID(ctx *gin.Context) {
var req UpdateWorkImageWithTaskUUIDReq
var infoResp *accountFiee.UserInfoResponse
var err error
if err = ctx.ShouldBind(&req); err != nil {
service.Error(ctx, err)
return
}
if config.AppConfig.System.AppMode != "dev" {
artistId, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
infoResp, err = service.AccountFieeProvider.Info(context.Background(), &accountFiee.InfoRequest{
ID: artistId,
Domain: "app",
})
if err != nil {
service.Error(ctx, err)
return
}
} else {
infoResp = &accountFiee.UserInfoResponse{
Name: "小波",
TelNum: "18288888888",
TelAreaCode: "86",
}
}
req.ArtistName = infoResp.Name
req.ArtistPhone = infoResp.TelNum
req.ArtistPhoneAreaCode = infoResp.TelAreaCode
artistID, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
if err = castService.CheckUserBundleBalance(int32(artistID), modelCast.BalanceTypeImageValue); err != nil {
service.Error(ctx, err)
return
}
newCtx := castService.NewCtxWithUserInfo(ctx)
req.Source = 1
resp, err := service.CastProvider.UpdateWorkImage(newCtx, req.UpdateWorkImageReq)
if err != nil {
service.Error(ctx, err)
return
}
// 调用员工实际任务状态更新
resp1, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &bundle.UpdateTaskProgressRequest{
AssignRecordsUUID: req.AssignRecordsUUID,
EmployeeName: infoResp.Name,
EmployeeNum: infoResp.TelNum, // 需要根据实际业务逻辑填充员工工号
TaskType: "post",
CompleteCount: 1,
})
if err != nil {
service.Error(ctx, err)
return
}
zap.L().Info("UpdateTaskProgress", zap.Any("resp", resp1))
service.Success(ctx, resp)
return
}
func UpdateWorkVideoWithUUID(ctx *gin.Context) {
var req UpdateWorkVideoWithUUIDReq
var infoResp *accountFiee.UserInfoResponse
var err error
if err = ctx.ShouldBind(&req); err != nil {
service.Error(ctx, err)
return
}
if config.AppConfig.System.AppMode != "dev" {
artistId, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
infoResp, err = service.AccountFieeProvider.Info(context.Background(), &accountFiee.InfoRequest{
ID: artistId,
Domain: "app",
})
if err != nil {
service.Error(ctx, err)
return
}
} else {
infoResp = &accountFiee.UserInfoResponse{
Name: "小波",
TelNum: "18288888888",
TelAreaCode: "86",
}
}
artistID, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
if err = castService.CheckUserBundleBalance(int32(artistID), modelCast.BalanceTypeVideoValue); err != nil {
service.Error(ctx, err)
return
}
req.ArtistName = infoResp.Name
req.ArtistPhone = infoResp.TelNum
req.ArtistPhoneAreaCode = infoResp.TelAreaCode
newCtx := castService.NewCtxWithUserInfo(ctx)
req.Source = 1
resp, err := service.CastProvider.UpdateWorkVideo(newCtx, req.UpdateWorkVideoReq)
if err != nil {
service.Error(ctx, err)
return
}
// 调用员工实际任务状态更新
resp1, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &bundle.UpdateTaskProgressRequest{
AssignRecordsUUID: req.AssignRecordsUUID,
EmployeeName: infoResp.Name,
EmployeeNum: infoResp.TelNum, // 需要根据实际业务逻辑填充员工工号
TaskType: "video",
CompleteCount: 1,
})
if err != nil {
service.Error(ctx, err)
return
}
zap.L().Info("UpdateTaskProgress", zap.Any("resp", resp1))
service.Success(ctx, resp)
return
}
// GetArtistBundleBalance 查询艺人套餐剩余数量
func GetArtistBundleBalance(c *gin.Context) {
var req bundle.ArtistBundleBalanceRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.GetArtistBundleBalance(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}

View File

@ -7,14 +7,16 @@ import (
"errors"
"fmt"
"fonchain-fiee/pkg/e"
"github.com/gin-gonic/gin"
"github.com/tealeg/xlsx"
"io"
"io/ioutil"
"net/http"
"net/url"
"os"
"path/filepath"
"time"
"github.com/gin-gonic/gin"
"github.com/tealeg/xlsx"
)
const (
@ -128,3 +130,36 @@ func ResponseXls(c *gin.Context, content io.ReadSeeker, fileTag string) {
//c.Writer.Header().Add("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
http.ServeContent(c.Writer, c.Request, fileName, time.Now(), content)
}
func CreateDirPath(path string) (err error) {
if _, err = os.Stat(path); os.IsNotExist(err) {
if err = os.MkdirAll(path, os.ModePerm); err != nil {
return
}
}
return
}
func CopyFile(src, dstDir string) (string, error) {
in, err := os.Open(src)
if err != nil {
return "", err
}
defer in.Close()
if err := os.MkdirAll(dstDir, 0755); err != nil {
return "", err
}
dst := filepath.Join(dstDir, filepath.Base(src))
out, err := os.Create(dst)
if err != nil {
return "", err
}
defer out.Close()
if _, err = io.Copy(out, in); err != nil {
return "", err
}
if err = out.Sync(); err != nil {
return "", err
}
return dst, nil
}