'use strict'; const Service = require('egg').Service; const _ = require("lodash") const tencentcloud = require("tencentcloud-sdk-nodejs-ft"); const { mongoose } = require('../../config/plugin'); const FtClient = tencentcloud.ft.v20200304.Client; class UserService extends Service { async index(params) { let { ctx } = this let modelLocal = ctx.model.User let returnData = { hasError: false, msg: "数据错误", list: [] } // 请求照片 let reqCount = 9 let pngList = [] for (let i = 1; i < reqCount; i++) { let para = { img: params.img, age: i * 10 } let pngRes = await this.createPng(para) if (pngRes.haserror) { pngList.push({ age: i * 10, png: "", ResultUrl: "", RequestId: "", }) } else { pngList.push({ age: i * 10, png: `data:image/png;base64,${pngRes.ResultImage}`, ResultUrl: pngRes.ResultUrl, RequestId: pngRes.RequestId, }) } } let paramsLocal = { name: params.name, age: params.age, createImgList: pngList, imgbase64: params.img, } let res = await modelLocal.create(paramsLocal) returnData.hasError = false returnData.msg = "数据新增成功" returnData.list = res return returnData } async createPng(params) { let clientConfig = { credential: { secretId: "AKIDLgwLkIcpoZ6PZht382oUMCC6wdFhMwZ8",//客户端身份标识 secretKey: "TmvwtkcYWTJ5qkEg3FIB2sokccepOsCO",//客户端身份密钥 }, region: "ap-chengdu", profile: { httpProfile: { endpoint: "ft.tencentcloudapi.com", }, }, }; // 实例化要请求产品的client对象,clientProfile是可选的 let client = new FtClient(clientConfig); let paramsLocal = { AgeInfos: [ { Age: params.age }, ], Image: params.img } let resPng = {} try { console.log(9999, paramsLocal.AgeInfos[0].Age) resPng = await client.ChangeAgePic(paramsLocal); if (resPng.ResultImage) { return resPng } else { return { ResultImage: "", ResultUrl: "", RequestId: "", haserror: true } } } catch (e) { return { ResultImage: "", ResultUrl: "", RequestId: "", haserror: true } } } async downloadPng(params) { let { ctx } = this let modelLocal = ctx.model.User let returnData = { hasError: false, msg: "数据错误", list: [] } //查询后下载8张图片 return returnData } async getPng(id) { let { ctx } = this let modelLocal = ctx.model.User let res = await modelLocal.find({ _id: id }) //查询后下载8张图片 return res } } module.exports = UserService;