Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wechat_currency
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
huahua
wechat_currency
Commits
adf4a7cf
Commit
adf4a7cf
authored
Feb 03, 2024
by
huahua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交
parent
828b15c5
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
136 additions
and
26 deletions
+136
-26
pages/index/index.vue
+21
-5
pages/index/machineDetail.vue
+83
-6
static/icon_diy_anime_style.png
+0
-0
static/icon_diy_enhance_style.png
+0
-0
static/icon_diy_matting_style.png
+0
-0
util/script.js
+32
-15
No files found.
pages/index/index.vue
View file @
adf4a7cf
...
...
@@ -561,8 +561,9 @@
</uni-popup>
<!-- Ai转换 -->
<!-- Ai转换 -->
<uni-popup
ref=
"showAiChange"
type=
"center"
style=
"position: fixed; z-index: 9999; "
>
<view
style=
"height: 60
0upx;border-radius:20upx; background: #fff;width: 600upx;"
>
<view
style=
"height: 95
0upx;border-radius:20upx; background: #fff;width: 600upx;"
>
<image
src=
"../../static/img/icon_close_image.png"
style=
"width: 30upx;
padding: 30upx;
position: absolute;
...
...
@@ -570,7 +571,7 @@
top:0;
z-index: 999;"
mode=
"widthFix"
@
click=
"showAiChangeClose()"
>
</image>
<view
style=
"height: 40
0upx; padding-top: 80upx;width: 100%;
<view
style=
"height: 36
0upx; padding-top: 80upx;width: 100%;
align-items: center;
display: flex;
flex-direction: row;
...
...
@@ -588,8 +589,23 @@
</view>
</view>
</view>
<view
style=
"font-size: 30upx;color:#333; width:100%;text-align: center;margin: auto; "
>
选中的图片必须带有清晰人物头像
</view>
<view
style=
"height: 360upx; padding-top: 40upx;width: 100%;
align-items: center;
display: flex;
flex-direction: row;
justify-content: center;"
>
<view
style=
"align-items: center;margin-left: 20upx;"
>
<image
style=
"width:160upx;height:160upx; "
src=
"../../static/icon_diy_matting_style.png"
@
click=
"showAiChangeType(3)"
></image>
<view
style=
"width:160upx;height:160upx;text-align: center;line-height: 160upx;"
>
人像抠图
</view>
</view>
<view
style=
"align-items: center;margin-left: 100upx;"
>
<image
style=
"width:160upx;height:160upx; "
src=
"../../static/icon_diy_enhance_style.png"
@
click=
"showAiChangeType(4)"
></image>
<view
style=
"width:160upx;height:160upx;text-align: center;line-height: 160upx;"
>
色彩增强
</view>
</view>
</view>
<view
style=
"font-size: 30upx;color:#333; width:100%;text-align: center;margin: auto;"
>
选中的图片必须带有清晰人物头像
</view>
</view>
</uni-popup>
...
...
@@ -3908,7 +3924,7 @@
this
.
infoListTouchEvent
=
infoListTouchEvent
;
this
.
infoListTouchEvent
.
bind
({
doubleTap
:
function
(
e
)
{
th
is
.
isShowGif
=
false
;
th
at
.
isShowGif
=
false
;
if
(
items
[
index
].
type
==
0
)
{
that
.
state
=
true
that
.
$refs
.
index
.
init
();
...
...
pages/index/machineDetail.vue
View file @
adf4a7cf
<
template
>
<view
class=
"full-width full-height"
>
<!-- 自定义头部 -->
<myhead
:worksid=
"worksid"
:title=
"myheadtext"
:color=
"'#fff'"
:titleShow=
"true"
:backShow=
"true"
:isBack
=
"true"
<myhead
:worksid=
"worksid"
:title=
"myheadtext"
:color=
"'#fff'"
:titleShow=
"true"
:backShow=
"true"
:isBack=
"true"
:background=
"'none'"
></myhead>
<view
style=
"position: relative;width: 100%; height: 100%; z-index: 2;"
>
...
...
@@ -30,9 +30,14 @@
background: linear-gradient(92deg, #F29F3D, #67C4CA);
box-shadow: 0px 19px 48px 1px rgba(20, 31, 62, 0.35);
border-radius: 40px;"
>
<view
style=
" text-align: center; line-height: 100upx; font-size: 36upx; font-weight: 500; color: #FFFFFF;"
>
<view
style=
" text-align: center; line-height: 100upx; font-size: 36upx; font-weight: 500; color: #FFFFFF;"
>
立即定制
</view>
</view>
<!--
<view
@
click=
"toProxyApplet()"
v-if=
"list.is_open_manage == 1"
style=
"position: fixed; bottom: 35upx; text-align: center;left: 0; right: 0;font-size: 32upx; margin: auto; color: #fff;"
>
运营中心
</view>
-->
</view>
<!-- 错误提示信息 -->
...
...
@@ -43,7 +48,8 @@
<view
@
click=
"tomakePhoneCall"
>
<view
class=
"start_text"
>
联系客服
</view>
<view
class=
"start_text"
style=
"display: flex; justify-content: center; align-items: center;"
>
<image
src=
"../../static/phone.png"
mode=
""
style=
"width: 32upx; height: 32upx; margin-right: 5upx;"
></image>
<image
src=
"../../static/phone.png"
mode=
""
style=
"width: 32upx; height: 32upx; margin-right: 5upx;"
></image>
{{
phone
||
'18938664545'
}}
</view>
</view>
...
...
@@ -61,10 +67,20 @@
<Signin
ref=
"Signin"
></Signin>
<view
v-if=
"statusloading == 1"
@
tap=
"toLineList"
style=
"position: fixed; z-index: 99; right: 0; bottom:
2
00upx; width: 109upx; height: 123upx;"
>
style=
"position: fixed; z-index: 99; right: 0; bottom:
4
00upx; width: 109upx; height: 123upx;"
>
<image
src=
"../../static/liebiao.png"
mode=
""
style=
"width: 243upx; height: 123upx;"
></image>
</view>
<view
@
click=
"toProxyApplet()"
v-if=
"list.is_open_manage == 1"
style=
"position: fixed; z-index: 99; right: 0; bottom: 280upx; display: flex;align-items: center;justify-content: center;
width: 100upx; height: 88upx; background: #43cf7c; border-radius: 44upx 0px 0px 44upx;"
>
<view
style=
"font-size: 24upx; font-weight: 800; color: #FFFFFF;"
>
<view>
运营
</view>
<view>
中心
</view>
</view>
</view>
<switchGoods
ref=
"switchGoods"
@
selectGoodItem=
"selectGoodItem"
></switchGoods>
<!--//商品弹框 -->
</view>
...
...
@@ -78,6 +94,7 @@
import
Signin
from
'../index/Signin.vue'
;
import
myhead
from
'./head/head.vue'
;
import
switchGoods
from
'../index/switchGoods.vue'
;
//选择商品
import
Env
from
'@/util/Env.js'
;
export
default
{
components
:
{
...
...
@@ -103,11 +120,70 @@
currentIndex
:
0
,
selectItem
:
null
,
//选择对象
name
:
""
,
show_admin_login
:
0
};
},
methods
:
{
//调转代理小程序
toProxyApplet
()
{
var
url
=
Env
.
getBaseURL
();
var
envVersionName
=
"trial"
;
if
(
url
.
indexOf
(
"colorpark"
)
!=
-
1
)
{
envVersionName
=
"release"
;
}
wx
.
navigateToMiniProgram
({
appId
:
'wx9cd3934f286f3d71'
,
envVersion
:
envVersionName
,
path
:
'pages/index/start-up?machine_id='
+
this
.
machine_id
+
"&partner_id="
+
this
.
list
.
partner_id
+
"&appletType=6"
,
success
(
res
)
{
}
})
},
//调转代理小程序
/* toProxyApplet() {
var url = Env.getBaseURL();
var envVersionName = "trial";
if (url.indexOf("colorpark") != -1) {
envVersionName = "release";
}
wx.navigateToMiniProgram({
appId: 'wx9cd3934f286f3d71',
envVersion: envVersionName,
success(res) {
}
})
}, */
//首次进来检查是否
toFirstCheck
()
{
let
that
=
this
;
uni
.
login
({
provider
:
'weixin'
,
success
:
(
res
)
=>
{
userService
.
login
({
s
:
'Init.checkAdminAuth'
,
code
:
res
.
code
,
partner_id
:
that
.
list
.
partner_id
}).
then
(
result
=>
{
that
.
show_admin_login
=
result
.
show_admin_login
}).
catch
(
err
=>
{
});
},
fail
:
(
res
)
=>
{
}
});
},
//去排队列表
toLineList
()
{
if
(
!
this
.
$AppContext
.
checkLogin
())
{
...
...
@@ -160,7 +236,7 @@
//授权登录
tologo
(
type
)
{
//
先登陆
//先登陆
let
that
=
this
;
uni
.
login
({
provider
:
'weixin'
,
...
...
@@ -196,11 +272,12 @@
})
homeservice
.
WorksList
({
machine_id
:
this
.
machine_id
,
s
:
'machine.
newD
etail'
s
:
'machine.
d
etail'
}).
then
(
res
=>
{
this
.
statusloading
=
1
;
if
(
res
)
{
this
.
list
=
res
;
this
.
toFirstCheck
();
this
.
myheadtext
=
this
.
machine_id
+
'-'
+
res
.
code
//头部标题栏
}
uni
.
stopPullDownRefresh
();
...
...
static/icon_diy_anime_style.png
View replaced file @
828b15c5
View file @
adf4a7cf
37.3 KB
|
W:
|
H:
12.3 KB
|
W:
|
H:
2-up
Swipe
Onion skin
static/icon_diy_enhance_style.png
0 → 100644
View file @
adf4a7cf
10.9 KB
static/icon_diy_matting_style.png
0 → 100644
View file @
adf4a7cf
28.8 KB
util/script.js
View file @
adf4a7cf
...
...
@@ -11,25 +11,33 @@ import CryptoJS from 'crypto-js';
// miniProgramType:小程序类型,比如:微信小程序传参数:wx,支付宝传参数:my,钉钉传参数:dd,注意不要传字符串;
// callback:结果的回调
// type 1: 人物动漫化 2:人物素描化
function
callRecognizeBankCard
(
imageURL
,
miniProgramType
,
type
,
callback
)
{
const
accessKeyId
=
"LTAI5tDPiEBZgfqNcWBqaFEc"
;
function
callRecognizeBankCard
(
imageURL
,
miniProgramType
,
type
,
callback
)
{
const
accessKeyId
=
"LTAI5tDPiEBZgfqNcWBqaFEc"
;
//AccessKeySecret
const
accessKeySecret
=
"amI84BLFbHz6dhOVbuArrERmeemmnx"
;
//这里endpoint为API访问域名,与类目相关,具体类目的API访问域名请参考:https://help.aliyun.com/document_detail/143103.html
cons
t
endpoint
=
"facebody.cn-shanghai.aliyuncs.com"
;
le
t
endpoint
=
"facebody.cn-shanghai.aliyuncs.com"
;
//API Action,能力名称,请参考具体算法文档详情页中的Action参数,这里以银行卡识别为例:https://help.aliyun.com/document_detail/151893.html
let
Action
=
"GenerateHumanAnimeStyle"
;
//API_HTTP_METHOD推荐使用POST
const
API_HTTP_METHOD
=
"POST"
;
//API_VERSION为API版本,与类目相关,具体类目的API版本请参考:https://help.aliyun.com/document_detail/464194.html
cons
t
API_VERSION
=
"2019-12-30"
;
le
t
API_VERSION
=
"2019-12-30"
;
const
request_
=
{};
if
(
type
==
2
)
{
if
(
type
==
2
)
{
Action
=
"GenerateHumanSketchStyle"
;
request_
[
"ReturnType"
]
=
"full"
;
}
else
{
}
else
if
(
type
==
3
)
{
Action
=
"SegmentHDBody"
;
endpoint
=
"imageseg.cn-shanghai.aliyuncs.com"
;
}
else
if
(
type
==
4
)
{
Action
=
"EnhanceImageColor"
;
endpoint
=
"imageenhan.cn-shanghai.aliyuncs.com"
;
API_VERSION
=
"2019-09-30"
;
request_
[
"ImageURL"
]
=
imageURL
;
request_
[
"Mode"
]
=
"ln17_256"
;
request_
[
"OutputFormat"
]
=
"png"
;
}
else
{
request_
[
"AlgoType"
]
=
"handdrawn"
;
}
//系统参数
...
...
@@ -56,16 +64,23 @@ function callApiRequest(miniProgramType, request_, API_HTTP_METHOD, endpoint, ac
"ContentType"
:
"application/json"
},
success
:
(
result
)
=>
{
//
获取结果
//
获取结果
return
typeof
callback
==
"function"
&&
callback
(
result
.
data
)
},
fail
:
(
error
)
=>
{
//
获取报错信息
//
获取报错信息
return
typeof
callback
==
"function"
&&
callback
(
error
.
data
)
}
})
};
/**
* ========================================================================================================================
* 以下代码仅仅为了调用服务端接口计算签名,其逻辑可参考文档:https://help.aliyun.com/document_detail/144904.html
* 这里只是为了Web前端演示,所以将代码写在了Web前端
* 真正上线不建议将ACCESS_KEY_ID和ACCESS_KEY_SECRET写在Web前端上,会有泄漏风险,建议将请求API接口代码写到您的服务端
* ========================================================================================================================
*/
//随机数字
function
signNRandom
()
{
const
Rand
=
Math
.
random
()
...
...
@@ -73,6 +88,7 @@ function signNRandom() {
return
mineId
;
};
//Timestamp
function
getTimestamp
()
{
let
date
=
new
Date
();
let
YYYY
=
pad2
(
date
.
getUTCFullYear
());
...
...
@@ -152,7 +168,7 @@ function generateUrl(request, httpMethod, endpoint, accessKeySecret) {
const
sortParams
=
ksort
(
request
);
//拼成参数
const
sortQueryStringTmp
=
objToParam
(
sortParams
);
const
sortedQueryString
=
sortQueryStringTmp
.
substring
(
1
);
// 去除第一个多余的&符号
const
sortedQueryString
=
sortQueryStringTmp
.
substring
(
1
);
// 去除第一个多余的&符号
//构造待签名的字符串
const
Signture
=
getSignature
(
sortedQueryString
,
httpMethod
,
accessKeySecret
)
//签名最后也要做特殊URL编码
...
...
@@ -165,8 +181,8 @@ function generateUrl(request, httpMethod, endpoint, accessKeySecret) {
//导出方法
module
.
exports
=
{
callRecognizeBankCard
:
callRecognizeBankCard
,
signNRandom
:
signNRandom
,
getTimestamp
:
getTimestamp
,
generateUrl
:
generateUrl
,
createHmac
:
createHmac
signNRandom
:
signNRandom
,
getTimestamp
:
getTimestamp
,
generateUrl
:
generateUrl
,
createHmac
:
createHmac
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment