Commit adf4a7cf by huahua

提交

parent 828b15c5
...@@ -561,8 +561,9 @@ ...@@ -561,8 +561,9 @@
</uni-popup> </uni-popup>
<!-- Ai转换 --> <!-- Ai转换 -->
<!-- Ai转换 -->
<uni-popup ref="showAiChange" type="center" style="position: fixed; z-index: 9999; "> <uni-popup ref="showAiChange" type="center" style="position: fixed; z-index: 9999; ">
<view style="height: 600upx;border-radius:20upx; background: #fff;width: 600upx;"> <view style="height: 950upx;border-radius:20upx; background: #fff;width: 600upx;">
<image src="../../static/img/icon_close_image.png" style="width: 30upx; <image src="../../static/img/icon_close_image.png" style="width: 30upx;
padding: 30upx; padding: 30upx;
position: absolute; position: absolute;
...@@ -570,7 +571,7 @@ ...@@ -570,7 +571,7 @@
top:0; top:0;
z-index: 999;" mode="widthFix" @click="showAiChangeClose()"> z-index: 999;" mode="widthFix" @click="showAiChangeClose()">
</image> </image>
<view style="height: 400upx; padding-top: 80upx;width: 100%; <view style="height: 360upx; padding-top: 80upx;width: 100%;
align-items: center; align-items: center;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
...@@ -588,8 +589,23 @@ ...@@ -588,8 +589,23 @@
</view> </view>
</view> </view>
</view> </view>
<view style="font-size: 30upx;color:#333; width:100%;text-align: center;margin: auto; "> <view style="height: 360upx; padding-top: 40upx;width: 100%;
选中的图片必须带有清晰人物头像 </view> 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> </view>
</uni-popup> </uni-popup>
...@@ -3908,7 +3924,7 @@ ...@@ -3908,7 +3924,7 @@
this.infoListTouchEvent = infoListTouchEvent; this.infoListTouchEvent = infoListTouchEvent;
this.infoListTouchEvent.bind({ this.infoListTouchEvent.bind({
doubleTap: function(e) { doubleTap: function(e) {
this.isShowGif = false; that.isShowGif = false;
if (items[index].type == 0) { if (items[index].type == 0) {
that.state = true that.state = true
that.$refs.index.init(); that.$refs.index.init();
......
<template> <template>
<view class="full-width full-height"> <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> :background="'none'"></myhead>
<view style="position: relative;width: 100%; height: 100%; z-index: 2;"> <view style="position: relative;width: 100%; height: 100%; z-index: 2;">
...@@ -30,9 +30,14 @@ ...@@ -30,9 +30,14 @@
background: linear-gradient(92deg, #F29F3D, #67C4CA); background: linear-gradient(92deg, #F29F3D, #67C4CA);
box-shadow: 0px 19px 48px 1px rgba(20, 31, 62, 0.35); box-shadow: 0px 19px 48px 1px rgba(20, 31, 62, 0.35);
border-radius: 40px;"> 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> </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> </view>
<!-- 错误提示信息 --> <!-- 错误提示信息 -->
...@@ -43,7 +48,8 @@ ...@@ -43,7 +48,8 @@
<view @click="tomakePhoneCall"> <view @click="tomakePhoneCall">
<view class="start_text">联系客服</view> <view class="start_text">联系客服</view>
<view class="start_text" style="display: flex; justify-content: center; align-items: center;"> <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'}} {{phone || '18938664545'}}
</view> </view>
</view> </view>
...@@ -61,10 +67,20 @@ ...@@ -61,10 +67,20 @@
<Signin ref="Signin"></Signin> <Signin ref="Signin"></Signin>
<view v-if="statusloading == 1" @tap="toLineList" <view v-if="statusloading == 1" @tap="toLineList"
style="position: fixed; z-index: 99; right: 0; bottom: 200upx; width: 109upx; height: 123upx;"> style="position: fixed; z-index: 99; right: 0; bottom: 400upx; width: 109upx; height: 123upx;">
<image src="../../static/liebiao.png" mode="" style="width: 243upx; height: 123upx;"></image> <image src="../../static/liebiao.png" mode="" style="width: 243upx; height: 123upx;"></image>
</view> </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> <switchGoods ref="switchGoods" @selectGoodItem="selectGoodItem"></switchGoods>
<!--//商品弹框 --> <!--//商品弹框 -->
</view> </view>
...@@ -78,6 +94,7 @@ ...@@ -78,6 +94,7 @@
import Signin from '../index/Signin.vue'; import Signin from '../index/Signin.vue';
import myhead from './head/head.vue'; import myhead from './head/head.vue';
import switchGoods from '../index/switchGoods.vue'; //选择商品 import switchGoods from '../index/switchGoods.vue'; //选择商品
import Env from '@/util/Env.js';
export default { export default {
components: { components: {
...@@ -103,11 +120,70 @@ ...@@ -103,11 +120,70 @@
currentIndex: 0, currentIndex: 0,
selectItem: null, //选择对象 selectItem: null, //选择对象
name: "", name: "",
show_admin_login: 0
}; };
}, },
methods: { 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() { toLineList() {
if (!this.$AppContext.checkLogin()) { if (!this.$AppContext.checkLogin()) {
...@@ -160,7 +236,7 @@ ...@@ -160,7 +236,7 @@
//授权登录 //授权登录
tologo(type) { tologo(type) {
// 先登陆 //先登陆
let that = this; let that = this;
uni.login({ uni.login({
provider: 'weixin', provider: 'weixin',
...@@ -196,11 +272,12 @@ ...@@ -196,11 +272,12 @@
}) })
homeservice.WorksList({ homeservice.WorksList({
machine_id: this.machine_id, machine_id: this.machine_id,
s: 'machine.newDetail' s: 'machine.detail'
}).then(res => { }).then(res => {
this.statusloading = 1; this.statusloading = 1;
if (res) { if (res) {
this.list = res; this.list = res;
this.toFirstCheck();
this.myheadtext = this.machine_id + '-' + res.code //头部标题栏 this.myheadtext = this.machine_id + '-' + res.code //头部标题栏
} }
uni.stopPullDownRefresh(); uni.stopPullDownRefresh();
......
static/icon_diy_anime_style.png

37.3 KB | W: | H:

static/icon_diy_anime_style.png

12.3 KB | W: | H:

static/icon_diy_anime_style.png
static/icon_diy_anime_style.png
static/icon_diy_anime_style.png
static/icon_diy_anime_style.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -11,25 +11,33 @@ import CryptoJS from 'crypto-js'; ...@@ -11,25 +11,33 @@ import CryptoJS from 'crypto-js';
// miniProgramType:小程序类型,比如:微信小程序传参数:wx,支付宝传参数:my,钉钉传参数:dd,注意不要传字符串; // miniProgramType:小程序类型,比如:微信小程序传参数:wx,支付宝传参数:my,钉钉传参数:dd,注意不要传字符串;
// callback:结果的回调 // callback:结果的回调
// type 1: 人物动漫化 2:人物素描化 // type 1: 人物动漫化 2:人物素描化
function callRecognizeBankCard(imageURL, miniProgramType, type, callback) {
function callRecognizeBankCard(imageURL,miniProgramType,type,callback) { const accessKeyId = "LTAI5tDPiEBZgfqNcWBqaFEc";
const accessKeyId = "LTAI5tDPiEBZgfqNcWBqaFEc";
//AccessKeySecret //AccessKeySecret
const accessKeySecret = "amI84BLFbHz6dhOVbuArrERmeemmnx"; const accessKeySecret = "amI84BLFbHz6dhOVbuArrERmeemmnx";
//这里endpoint为API访问域名,与类目相关,具体类目的API访问域名请参考:https://help.aliyun.com/document_detail/143103.html //这里endpoint为API访问域名,与类目相关,具体类目的API访问域名请参考:https://help.aliyun.com/document_detail/143103.html
const endpoint = "facebody.cn-shanghai.aliyuncs.com"; let endpoint = "facebody.cn-shanghai.aliyuncs.com";
//API Action,能力名称,请参考具体算法文档详情页中的Action参数,这里以银行卡识别为例:https://help.aliyun.com/document_detail/151893.html //API Action,能力名称,请参考具体算法文档详情页中的Action参数,这里以银行卡识别为例:https://help.aliyun.com/document_detail/151893.html
let Action = "GenerateHumanAnimeStyle"; let Action = "GenerateHumanAnimeStyle";
//API_HTTP_METHOD推荐使用POST //API_HTTP_METHOD推荐使用POST
const API_HTTP_METHOD = "POST"; const API_HTTP_METHOD = "POST";
//API_VERSION为API版本,与类目相关,具体类目的API版本请参考:https://help.aliyun.com/document_detail/464194.html //API_VERSION为API版本,与类目相关,具体类目的API版本请参考:https://help.aliyun.com/document_detail/464194.html
const API_VERSION = "2019-12-30"; let API_VERSION = "2019-12-30";
const request_ = {}; const request_ = {};
if(type == 2 ){ if (type == 2) {
Action = "GenerateHumanSketchStyle"; Action = "GenerateHumanSketchStyle";
request_["ReturnType"] = "full"; 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"; request_["AlgoType"] = "handdrawn";
} }
//系统参数 //系统参数
...@@ -56,16 +64,23 @@ function callApiRequest(miniProgramType, request_, API_HTTP_METHOD, endpoint, ac ...@@ -56,16 +64,23 @@ function callApiRequest(miniProgramType, request_, API_HTTP_METHOD, endpoint, ac
"ContentType": "application/json" "ContentType": "application/json"
}, },
success: (result) => { success: (result) => {
// 获取结果 //获取结果
return typeof callback == "function" && callback(result.data) return typeof callback == "function" && callback(result.data)
}, },
fail: (error) => { fail: (error) => {
// 获取报错信息 //获取报错信息
return typeof callback == "function" && callback(error.data) 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() { function signNRandom() {
const Rand = Math.random() const Rand = Math.random()
...@@ -73,6 +88,7 @@ function signNRandom() { ...@@ -73,6 +88,7 @@ function signNRandom() {
return mineId; return mineId;
}; };
//Timestamp
function getTimestamp() { function getTimestamp() {
let date = new Date(); let date = new Date();
let YYYY = pad2(date.getUTCFullYear()); let YYYY = pad2(date.getUTCFullYear());
...@@ -152,7 +168,7 @@ function generateUrl(request, httpMethod, endpoint, accessKeySecret) { ...@@ -152,7 +168,7 @@ function generateUrl(request, httpMethod, endpoint, accessKeySecret) {
const sortParams = ksort(request); const sortParams = ksort(request);
//拼成参数 //拼成参数
const sortQueryStringTmp = objToParam(sortParams); const sortQueryStringTmp = objToParam(sortParams);
const sortedQueryString = sortQueryStringTmp.substring(1);// 去除第一个多余的&符号 const sortedQueryString = sortQueryStringTmp.substring(1); // 去除第一个多余的&符号
//构造待签名的字符串 //构造待签名的字符串
const Signture = getSignature(sortedQueryString, httpMethod, accessKeySecret) const Signture = getSignature(sortedQueryString, httpMethod, accessKeySecret)
//签名最后也要做特殊URL编码 //签名最后也要做特殊URL编码
...@@ -165,8 +181,8 @@ function generateUrl(request, httpMethod, endpoint, accessKeySecret) { ...@@ -165,8 +181,8 @@ function generateUrl(request, httpMethod, endpoint, accessKeySecret) {
//导出方法 //导出方法
module.exports = { module.exports = {
callRecognizeBankCard: callRecognizeBankCard, callRecognizeBankCard: callRecognizeBankCard,
signNRandom:signNRandom, signNRandom: signNRandom,
getTimestamp:getTimestamp, getTimestamp: getTimestamp,
generateUrl:generateUrl, generateUrl: generateUrl,
createHmac:createHmac createHmac: createHmac
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment