|
@@ -0,0 +1,526 @@
|
|
|
+package com.xyzc.start.service.impl;
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.xyzc.common.core.exception.ErrorCode;
|
|
|
+import com.xyzc.common.core.exception.ServerException;
|
|
|
+import com.xyzc.common.web.security.user.SecurityUser;
|
|
|
+import com.xyzc.start.domain.*;
|
|
|
+import com.xyzc.start.mapper.NpCommitTrainMapper;
|
|
|
+import com.xyzc.start.mapper.NpMaterialMapper;
|
|
|
+import com.xyzc.start.mapper.NpVideoDraftMapper;
|
|
|
+import com.xyzc.start.mapper.NumPersonMapper;
|
|
|
+import com.xyzc.start.service.INumPersonService;
|
|
|
+import com.xyzc.start.utils.SnowflakeIdWorker;
|
|
|
+import lombok.RequiredArgsConstructor;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.logging.log4j.util.Strings;
|
|
|
+import org.springframework.http.HttpEntity;
|
|
|
+import org.springframework.http.HttpHeaders;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.web.client.RestTemplate;
|
|
|
+
|
|
|
+import java.security.NoSuchAlgorithmException;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Arrays;
|
|
|
+import java.util.LinkedHashMap;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+import static com.xyzc.start.utils.EncryptUtil.getMD5Byparam;
|
|
|
+
|
|
|
+
|
|
|
+@Service
|
|
|
+@RequiredArgsConstructor
|
|
|
+@Slf4j
|
|
|
+public class NumPersonServiceImpl implements INumPersonService {
|
|
|
+
|
|
|
+ private final NumPersonMapper numPersonMapper;
|
|
|
+
|
|
|
+ private final NpCommitTrainMapper npCommitTrainMapper;
|
|
|
+
|
|
|
+ private final NpMaterialMapper npMaterialMapper;
|
|
|
+
|
|
|
+ private final NpVideoDraftMapper npVideoDraftMapper;
|
|
|
+
|
|
|
+ RestTemplate restTemplate = new RestTemplate();
|
|
|
+
|
|
|
+ // 基本URL请求
|
|
|
+ String baseUrl = "https://meta.guiji.ai";
|
|
|
+
|
|
|
+ String appKey = "IyeVRCSyBokinWIcrTjXVeOq";
|
|
|
+ String appSecret = "PFp3PZeEJIIRTtHqyG6Hhp1pyiS0ETjsb30XZVVhwR2n4WYQF4aI9A7EzUCrPsML";
|
|
|
+
|
|
|
+ public String numberPersonCommitNotify(String notify) {
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(notify);
|
|
|
+ String taskType = jsonObject.getString("taskType");
|
|
|
+ if ("video-training".equals(taskType)) {
|
|
|
+ JSONObject dataJSON = jsonObject.getJSONObject("data");
|
|
|
+ String result = dataJSON.getString("result");
|
|
|
+
|
|
|
+ NpCommitTrain npCommitTrain = npCommitTrainMapper.selectOne(new QueryWrapper<NpCommitTrain>().eq("model_id", dataJSON.getString("id")));
|
|
|
+ if (null == npCommitTrain) {
|
|
|
+ npCommitTrain = new NpCommitTrain();
|
|
|
+ }
|
|
|
+ if("success".equals(result)){
|
|
|
+ JSONObject robot = dataJSON.getJSONObject("robot");
|
|
|
+ String coverUrl = dataJSON.getString("coverUrl");
|
|
|
+ Integer sceneId = dataJSON.getInteger("sceneId");
|
|
|
+ Integer robotId = dataJSON.getInteger("robotId");
|
|
|
+ String title = dataJSON.getString("title");
|
|
|
+ npCommitTrain.setTitle(title);
|
|
|
+ npCommitTrain.setCoverUrl(coverUrl);
|
|
|
+ npCommitTrain.setSceneId(sceneId);
|
|
|
+ npCommitTrain.setRobotId(robotId);
|
|
|
+ npCommitTrain.setRobotJson(robot.toJSONString());
|
|
|
+ npCommitTrain.setStatus(2);
|
|
|
+ }else if("fail".equals(result)){
|
|
|
+ String reason = dataJSON.getString("reason");
|
|
|
+ npCommitTrain.setReason(reason);
|
|
|
+ npCommitTrain.setStatus(3);
|
|
|
+ }
|
|
|
+ log.info("更新成功");
|
|
|
+ npCommitTrainMapper.updateById(npCommitTrain);
|
|
|
+ }else{
|
|
|
+ log.error("无效请求");
|
|
|
+ throw new ServerException(ErrorCode.NUMERSON_NO);
|
|
|
+ }
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String getTrainingInfo(String trainingId) {
|
|
|
+
|
|
|
+ String accessToken = "";
|
|
|
+ try {
|
|
|
+ accessToken = getToken();
|
|
|
+ } catch (NoSuchAlgorithmException e) {
|
|
|
+ throw new RuntimeException(e);
|
|
|
+ }
|
|
|
+ // /openapi/video/v2/training/get/{id}?access_token=ae4dad61-0dc5-47ad-be20-c51245db2769
|
|
|
+ String url = baseUrl + "/openapi/video/v2/training/get/"+trainingId+"?access_token=" + accessToken;
|
|
|
+
|
|
|
+ JSONObject returnDataJSON = restTemplate.getForObject(url, JSONObject.class);
|
|
|
+ log.info(returnDataJSON.toJSONString());
|
|
|
+ if ("0".equals(returnDataJSON.getString("code"))) {
|
|
|
+ System.out.println(returnDataJSON.getString("message"));
|
|
|
+ JSONObject dataJSON = returnDataJSON.getJSONObject("data");
|
|
|
+ log.info(dataJSON.toJSONString());
|
|
|
+ // TODO
|
|
|
+// dataJSON.getInteger("records");
|
|
|
+ Integer status = dataJSON.getInteger("status");
|
|
|
+
|
|
|
+ }
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<NpVideoDraft> getTemplateDraft(String templateId) {
|
|
|
+ Long baseUserId = SecurityUser.getUserId();
|
|
|
+ List<NpVideoDraft> videoDraftList = npVideoDraftMapper.selectList(new QueryWrapper<NpVideoDraft>().eq("base_user_id", baseUserId).eq("type", "1"));
|
|
|
+
|
|
|
+ String nodeJson = "";
|
|
|
+ if (Strings.isBlank(templateId) && videoDraftList.isEmpty()) {
|
|
|
+ NpVideoDraft videoDraft = npVideoDraftMapper.selectOne(new QueryWrapper<NpVideoDraft>().eq("id", "1"));
|
|
|
+ nodeJson = videoDraft.getNodesJson();
|
|
|
+
|
|
|
+ SnowflakeIdWorker snowflakeIdWorker = new SnowflakeIdWorker(1, 1);
|
|
|
+ long l = snowflakeIdWorker.nextId();
|
|
|
+ videoDraft.setId(l);
|
|
|
+ videoDraft.setNodesJson(nodeJson);
|
|
|
+ }
|
|
|
+
|
|
|
+ return videoDraftList;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void saveTemplateDraft(NpVideoDraft npVideoDraft) {
|
|
|
+// if (null == npVideoDraft.getBatch()) {
|
|
|
+// log.error("请输入批次");
|
|
|
+// throw new ServerException(ErrorCode.NUMERSON_NO_BATCH);
|
|
|
+// }
|
|
|
+// if(npVideoDraft.getId() == null || 1l == npVideoDraft.getId()) {
|
|
|
+// SnowflakeIdWorker snowflakeIdWorker = new SnowflakeIdWorker(1, 1);
|
|
|
+// long l = snowflakeIdWorker.nextId();
|
|
|
+// npVideoDraft.setId(l);
|
|
|
+// }
|
|
|
+// npVideoDraftMapper
|
|
|
+// npVideoDraft.getBatch()
|
|
|
+// npVideoDraft.setType(1);
|
|
|
+// npVideoDraft.setBaseUserId(SecurityUser.getUserId());
|
|
|
+
|
|
|
+ boolean isSave = npVideoDraftMapper.insertOrUpdate(npVideoDraft);
|
|
|
+ if (!isSave) {
|
|
|
+ throw new ServerException(ErrorCode.NUMERSON_NO_SAVE);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<NpSound> queryCompanySound(){
|
|
|
+ return numPersonMapper.queryCompanySound();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public List<NpTemplate> queryCommonTemplate() {
|
|
|
+ return numPersonMapper.queryCommonTemplate();
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<NpCommitTrain> queryTrainingModel() {
|
|
|
+ // TODO 必须再加上baseuserId
|
|
|
+ List<NpCommitTrain> npCommitTrains = npCommitTrainMapper.selectList(new QueryWrapper<NpCommitTrain>().eq("base_user_id", SecurityUser.getUserId()).eq("status", "2")
|
|
|
+ .select("model_id, video_url,title, cover_url, scene_id, robot_json"));
|
|
|
+ return npCommitTrains;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getToken() throws NoSuchAlgorithmException {
|
|
|
+// String input = "password123";
|
|
|
+// String encrypted = encrypt(input);
|
|
|
+// System.out.println("加密后的结果:" + encrypted);
|
|
|
+// AccessKey+时间戳+SecretKey
|
|
|
+ long timeStamp = System.currentTimeMillis();
|
|
|
+ String encrypted = getMD5Byparam(appKey + timeStamp + appSecret);
|
|
|
+
|
|
|
+ log.info("加密后的结果:" + encrypted);
|
|
|
+
|
|
|
+ String url = "https://meta.guiji.ai/openapi/oauth/token?grant_type=sign×tamp=" + timeStamp + "&sign=" + encrypted + "&appId=" + appKey;
|
|
|
+
|
|
|
+ String forObject = restTemplate.getForObject(url, String.class);
|
|
|
+ log.info("获取到的token:" + forObject);
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(forObject);
|
|
|
+ String code = jsonObject.getString("code");
|
|
|
+ String accessToken = "";
|
|
|
+ if ("0".equals(code)) {
|
|
|
+ JSONObject dataJSON = jsonObject.getJSONObject("data");
|
|
|
+ accessToken = dataJSON.getString("access_token");
|
|
|
+ String expiresIn = dataJSON.getString("expires_in");
|
|
|
+ String scope = dataJSON.getString("scope");
|
|
|
+ JSONObject userInfoJSON = dataJSON.getJSONObject("userInfo");
|
|
|
+ Integer corpId = userInfoJSON.getInteger("corpId");
|
|
|
+ Integer id = userInfoJSON.getInteger("id");
|
|
|
+ Integer userId = userInfoJSON.getInteger("userId");
|
|
|
+ // 获取到的token:{"code":"0","data":{"access_token":"796916ae-6fb1-4d51-8e80-6543081366c5","userInfo":{"corpId":1251421,"id":93,"userId":355352},"scope":"all","expires_in":7182},"success":true}
|
|
|
+ // 获取到的token:{"code":"0","data":{"access_token":"7ac45bf8-c3bb-4d19-a187-c1ecbf9b3ed0","userInfo":{"corpId":1251421,"id":93,"userId":355352},"scope":"all","expires_in":7199},"success":true}
|
|
|
+ }else{
|
|
|
+ errorCode(code);
|
|
|
+ }
|
|
|
+ return accessToken;
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 3.21 素材查询接口
|
|
|
+ */
|
|
|
+ public void queryMaterial() {
|
|
|
+ String accessToken = "";
|
|
|
+ try {
|
|
|
+ accessToken = getToken();
|
|
|
+ } catch (NoSuchAlgorithmException e) {
|
|
|
+ throw new RuntimeException(e);
|
|
|
+ }
|
|
|
+ String url = baseUrl + "/openapi/material/search?access_token=" + accessToken;
|
|
|
+
|
|
|
+ List<Integer> materialTypes = Arrays.asList(0);
|
|
|
+ for(Integer materialType : materialTypes) {
|
|
|
+ for (int k = 0; k < 1; k++) {
|
|
|
+ JSONObject jsonParam = new JSONObject();
|
|
|
+ // Integer materialType = 0;
|
|
|
+ jsonParam.put("rootId", materialType); // 素材类型 ,0:背景(图片或者视频),1:图片素材,4:视频素材
|
|
|
+ jsonParam.put("page", "1");
|
|
|
+ jsonParam.put("size", "100");
|
|
|
+ jsonParam.put("asc", "true");
|
|
|
+// String isMyself = "false";
|
|
|
+// if(1==k) {
|
|
|
+// jsonParam.put("myself", "true"); // 是否是自己上传的
|
|
|
+// isMyself = "true";
|
|
|
+// }
|
|
|
+ HttpHeaders headers = new HttpHeaders();
|
|
|
+ headers.add("Content-Type", "application/json;charset=UTF-8");
|
|
|
+ //构造实体对象
|
|
|
+ HttpEntity<JSONObject> param = new HttpEntity<>(jsonParam, headers);
|
|
|
+
|
|
|
+ JSONObject returnDataJSON = restTemplate.postForObject(url, param, JSONObject.class);
|
|
|
+ System.out.println(returnDataJSON);
|
|
|
+ if ("0".equals(returnDataJSON.getString("code"))) {
|
|
|
+ LinkedHashMap data = (LinkedHashMap) returnDataJSON.get("data");
|
|
|
+ ArrayList records = (ArrayList) data.get("records");
|
|
|
+ for (int i = 0; i < records.size(); i++) {
|
|
|
+ LinkedHashMap record = (LinkedHashMap) records.get(i);
|
|
|
+ String proportion = "";
|
|
|
+ if (null != record.get("proportion")) {
|
|
|
+ proportion = record.get("proportion").toString();
|
|
|
+ }
|
|
|
+ String bgFormat = "";
|
|
|
+ if (null != record.get("bgFormat")) {
|
|
|
+ bgFormat = record.get("bgFormat").toString();
|
|
|
+ }
|
|
|
+ String groupId = "";
|
|
|
+ if (null != record.get("groupId")) {
|
|
|
+ groupId = record.get("groupId").toString();
|
|
|
+ }
|
|
|
+ String backgroundName = record.get("backgroundName").toString();
|
|
|
+ Integer delFlag = (Integer) record.get("delFlag");
|
|
|
+ Long userId = Long.valueOf((Integer) record.get("userId"));
|
|
|
+ String coverUrl = record.get("coverUrl").toString();
|
|
|
+ String backgroundCode = record.get("backgroundCode").toString();
|
|
|
+ Long createTime = (Long) record.get("createTime");
|
|
|
+ String zipCoverUrl = "";
|
|
|
+ if (null != record.get("zipCoverUrl"))
|
|
|
+ zipCoverUrl = record.get("zipCoverUrl").toString();
|
|
|
+ Integer id = (Integer) record.get("id");
|
|
|
+ Integer backgroundType = (Integer) record.get("backgroundType");
|
|
|
+
|
|
|
+ NpMaterial npMaterial = new NpMaterial();
|
|
|
+ npMaterial.setProportion(proportion);
|
|
|
+ npMaterial.setBgFormat(bgFormat);
|
|
|
+ npMaterial.setGroupId(groupId);
|
|
|
+ npMaterial.setBackgroundName(backgroundName);
|
|
|
+ npMaterial.setDelFlag(delFlag);
|
|
|
+ npMaterial.setUserId(userId);
|
|
|
+ npMaterial.setCoverUrl(coverUrl);
|
|
|
+ npMaterial.setBackgroundCode(backgroundCode);
|
|
|
+ npMaterial.setCreateBy(createTime);
|
|
|
+ npMaterial.setZipCoverUrl(zipCoverUrl);
|
|
|
+ npMaterial.setMaterialId(id);
|
|
|
+ npMaterial.setMaterialType(materialType);
|
|
|
+ npMaterial.setBackgroundType(backgroundType);
|
|
|
+// npMaterial.setIsMyself(isMyself);
|
|
|
+
|
|
|
+ npMaterialMapper.insert(npMaterial);
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ @Override
|
|
|
+ public void freeModelListQuery(){
|
|
|
+ queryMaterial();
|
|
|
+// String accessToken = "";
|
|
|
+// try {
|
|
|
+// accessToken = getToken();
|
|
|
+// } catch (NoSuchAlgorithmException e) {
|
|
|
+// throw new RuntimeException(e);
|
|
|
+// }
|
|
|
+ // /openapi/robot/v2/freeListPage?access_token=55d1bc37-f960-4a9d-8c7d-5dc8c991c245
|
|
|
+// String url = baseUrl + "/openapi/robot/v2/freeListPage?access_token=" + accessToken;
|
|
|
+
|
|
|
+// HttpHeaders headers = new HttpHeaders();
|
|
|
+// headers.add("Content-Type","application/json;charset=UTF-8");
|
|
|
+//
|
|
|
+// JSONObject jsonParam = new JSONObject();
|
|
|
+// jsonParam.put("page", "1");
|
|
|
+// jsonParam.put("size", "10");
|
|
|
+// //构造实体对象
|
|
|
+// HttpEntity<JSONObject> param = new HttpEntity<>(jsonParam, headers);
|
|
|
+//
|
|
|
+// JSONObject returnDataJSON = restTemplate.postForObject(url, param, JSONObject.class);
|
|
|
+//
|
|
|
+// log.info("3.3 免费模特列表查询(支持分页,推荐使用) 返回报文"+returnDataJSON.toJSONString());
|
|
|
+// if ("0".equals(returnDataJSON.getString("code"))) {
|
|
|
+// JSONObject dataJSON = returnDataJSON.getJSONObject("data");
|
|
|
+// System.out.println(dataJSON);
|
|
|
+// ArrayList records = dataJSON.getObject("records", ArrayList.class);
|
|
|
+// for (int i = 0; i < records.size(); i++) {
|
|
|
+// NpTemplate npTemplate = new NpTemplate();
|
|
|
+// LinkedHashMap map = (LinkedHashMap)records.get(i);
|
|
|
+// Object id = map.get("id");
|
|
|
+// Object robotName = map.get("robotName");
|
|
|
+// Object robotDesc = map.get("robotDesc");
|
|
|
+// Object coverUrl = map.get("coverUrl");
|
|
|
+// int gender = (Integer) map.get("gender");
|
|
|
+// int age = (Integer) map.get("age");
|
|
|
+// int starSigns = (Integer) map.get("starSigns");
|
|
|
+//
|
|
|
+// Integer face = null;
|
|
|
+// if(map.get("face")!=null)
|
|
|
+// face = (Integer) map.get("face");
|
|
|
+// int popularity = (Integer) map.get("popularity");
|
|
|
+// String speakerId = (String) map.get("speakerId");
|
|
|
+//
|
|
|
+// String sceneList = map.get("sceneList").toString();
|
|
|
+// npTemplate.setModelId((Integer)id);
|
|
|
+// npTemplate.setRobotName(robotName.toString());
|
|
|
+// npTemplate.setRobotDesc(robotDesc.toString());
|
|
|
+// npTemplate.setCoverUrl(coverUrl.toString());
|
|
|
+// npTemplate.setGender(gender);
|
|
|
+// npTemplate.setAge(age);
|
|
|
+// npTemplate.setStarSigns(starSigns);
|
|
|
+// npTemplate.setFace(face);
|
|
|
+// npTemplate.setPopularity(popularity);
|
|
|
+// npTemplate.setSpeakerId(speakerId);
|
|
|
+// npTemplate.setSceneList(sceneList.toString());
|
|
|
+// numPersonMapper.insert(npTemplate);
|
|
|
+// }
|
|
|
+// }
|
|
|
+// String url = baseUrl + "/openapi/speaker/v2/list?access_token=" + accessToken;
|
|
|
+//
|
|
|
+// JSONObject returnDataJSON = restTemplate.getForObject(url, JSONObject.class);
|
|
|
+//
|
|
|
+// log.info("3.5 企业所有发音人列表 返回报文"+returnDataJSON.toJSONString());
|
|
|
+// if ("0".equals(returnDataJSON.getString("code"))) {
|
|
|
+// JSONArray dataArray = returnDataJSON.getJSONArray("data");
|
|
|
+//// System.out.println(dataArray);
|
|
|
+//// ArrayList records = dataArray.getObject("records", ArrayList.class);
|
|
|
+// for (int i = 0; i < dataArray.size(); i++) {
|
|
|
+// LinkedHashMap map = (LinkedHashMap) dataArray.get(i);
|
|
|
+// Object id = map.get("id");
|
|
|
+// Object ttsName = map.get("ttsName");
|
|
|
+// Object ttsIntroduction = map.get("ttsIntroduction");
|
|
|
+// Object ttsScenes = map.get("ttsScenes");
|
|
|
+// Object ttsSpeaker = map.get("ttsSpeaker");
|
|
|
+// Object ttsFeatures = map.get("ttsFeatures");
|
|
|
+// Object ttsAudition = map.get("ttsAudition");
|
|
|
+// Object ttsCover = map.get("ttsCover");
|
|
|
+// Object languages = map.get("languages");
|
|
|
+// Object free = map.get("free");
|
|
|
+// String sex = "";
|
|
|
+// if (null != map.get("sex"))
|
|
|
+// sex = map.get("sex").toString();
|
|
|
+// Object ttsExtendJson = map.get("ttsExtendJson");
|
|
|
+// Object phonemeFlag = map.get("phonemeFlag");
|
|
|
+//
|
|
|
+// NpSound npSound = new NpSound();
|
|
|
+// npSound.setModelId((Integer) id);
|
|
|
+// npSound.setTtsName(ttsName.toString());
|
|
|
+// npSound.setTtsIntroduction(ttsIntroduction.toString());
|
|
|
+// npSound.setTtsScenes(ttsScenes.toString());
|
|
|
+// npSound.setTtsSpeaker(ttsSpeaker.toString());
|
|
|
+// npSound.setTtsFeatures(ttsFeatures.toString());
|
|
|
+// npSound.setTtsAudition(ttsAudition.toString());
|
|
|
+// npSound.setTtsCover(ttsCover.toString());
|
|
|
+// npSound.setLanguages(languages.toString());
|
|
|
+// npSound.setFree(free.toString());
|
|
|
+// npSound.setSex(sex);
|
|
|
+// npSound.setTtsExtendJson(ttsExtendJson.toString());
|
|
|
+// npSound.setPhonemeFlag((Integer) phonemeFlag);
|
|
|
+//
|
|
|
+// numPersonMapper.insert(npSound);
|
|
|
+// }
|
|
|
+// }
|
|
|
+
|
|
|
+// String url = baseUrl + "/openapi/video/v2/training/pageList?access_token=" + accessToken;
|
|
|
+// log.info("训练任务列表查询 请求地址:"+url);
|
|
|
+//
|
|
|
+// JSONObject jsonParam = new JSONObject();
|
|
|
+// jsonParam.put("page", "1");
|
|
|
+// jsonParam.put("size", "100");
|
|
|
+// HttpEntity param = new HttpEntity(jsonParam, new HttpHeaders());
|
|
|
+// JSONObject returnDataJSON = restTemplate.postForObject(url, param, JSONObject.class);
|
|
|
+//
|
|
|
+// log.info("3.17 训练任务列表查询 返回报文"+returnDataJSON.toJSONString());
|
|
|
+// if ("0".equals(returnDataJSON.getString("code"))) {
|
|
|
+// JSONObject dataJSON = returnDataJSON.getJSONObject("data");
|
|
|
+// System.out.println(dataJSON);
|
|
|
+// //TODO
|
|
|
+//// dataJSON.getInteger("records");
|
|
|
+// LinkedHashMap dataLinkMap2 = returnDataJSON.getObject("data", java.util.LinkedHashMap.class);
|
|
|
+//// System.out.println(dataLinkMap);
|
|
|
+// for (Object o : (ArrayList) dataLinkMap2.get("records")) {
|
|
|
+// LinkedHashMap dataLinkMap = (LinkedHashMap) o;
|
|
|
+//// }
|
|
|
+////
|
|
|
+////// ArrayList records = dataArray.getObject("records", ArrayList.class);
|
|
|
+//// for (int i = 0; i < dataLinkMap.size(); i++) {
|
|
|
+// NpCommitTrain npCommitTrain = new NpCommitTrain();
|
|
|
+// Object id = dataLinkMap.get("id");
|
|
|
+// Object title = dataLinkMap.get("title");
|
|
|
+// Object videoUrl = dataLinkMap.get("videoUrl");
|
|
|
+// Object status = dataLinkMap.get("status");
|
|
|
+// Object callbackStatus = dataLinkMap.get("callbackStatus");
|
|
|
+// Object comment = dataLinkMap.get("comment");
|
|
|
+// Object robotId = dataLinkMap.get("robotId");
|
|
|
+// Object sceneId = dataLinkMap.get("sceneId");
|
|
|
+// Object createTime = dataLinkMap.get("createTime");
|
|
|
+// Object updateTime = dataLinkMap.get("updateTime");
|
|
|
+// Object coverUrl = dataLinkMap.get("coverUrl");
|
|
|
+// String robot = null;
|
|
|
+// if(null != dataLinkMap.get("robot"))
|
|
|
+// robot = dataLinkMap.get("robot").toString();
|
|
|
+//
|
|
|
+// npCommitTrain.setModelId((Integer)id);
|
|
|
+// npCommitTrain.setTitle((String)title);
|
|
|
+// npCommitTrain.setVideoUrl((String)videoUrl);
|
|
|
+// npCommitTrain.setStatus((Integer)status);
|
|
|
+// npCommitTrain.setCallbackStatus((Integer)callbackStatus);
|
|
|
+// npCommitTrain.setComment((String)comment);
|
|
|
+// npCommitTrain.setRobotId((Integer)robotId);
|
|
|
+// npCommitTrain.setSceneId((Integer)sceneId);
|
|
|
+// npCommitTrain.setTrainCreateTime((String)createTime);
|
|
|
+// npCommitTrain.setTrainUpdateTime((String)updateTime);
|
|
|
+// npCommitTrain.setCoverUrl((String)coverUrl);
|
|
|
+// npCommitTrain.setRobotJson(robot);
|
|
|
+//
|
|
|
+// numPersonMapper.insert(npCommitTrain);
|
|
|
+// }
|
|
|
+//// (ArrayList)dataLinkMap.get("records");
|
|
|
+// }
|
|
|
+
|
|
|
+// NpCommitTrain
|
|
|
+// String url = baseUrl + "/openapi/material/search?access_token=" + accessToken;
|
|
|
+// JSONObject jsonParam = new JSONObject();
|
|
|
+//
|
|
|
+// jsonParam.put("rootId", "0"); // 素材类型 ,0:背景(图片或者视频),1:图片素材,4:视频素材
|
|
|
+// jsonParam.put("page", "1");
|
|
|
+// jsonParam.put("size", "100");
|
|
|
+// jsonParam.put("asc", "true");
|
|
|
+//// jsonParam.put("myself", "true"); // 是否是自己上传的
|
|
|
+// HttpHeaders headers = new HttpHeaders();
|
|
|
+// headers.add("Content-Type","application/json;charset=UTF-8");
|
|
|
+// //构造实体对象
|
|
|
+// HttpEntity<JSONObject> param = new HttpEntity<>(jsonParam, headers);
|
|
|
+//
|
|
|
+// JSONObject returnDataJSON = restTemplate.postForObject(url, param, JSONObject.class);
|
|
|
+//// System.out.println(returnDataJSON);
|
|
|
+// if ("0".equals(returnDataJSON.getString("code"))) {
|
|
|
+// LinkedHashMap data = (LinkedHashMap) returnDataJSON.get("data");
|
|
|
+// ArrayList records = (ArrayList)data.get("records");
|
|
|
+// for (int i = 0; i < records.size(); i++) {
|
|
|
+// LinkedHashMap record = (LinkedHashMap) records.get(i);
|
|
|
+// }
|
|
|
+// }
|
|
|
+ }
|
|
|
+
|
|
|
+ public void errorCode(String code) {
|
|
|
+ if ("40001".equals(code)) {
|
|
|
+ log.error("内部异常");
|
|
|
+ } else if ("40002".equals(code)) {
|
|
|
+ log.error("token无效");
|
|
|
+ } else if ("40003".equals(code)) {
|
|
|
+ log.error("token超时");
|
|
|
+ } else if ("40010".equals(code)) {
|
|
|
+ log.error("余额不足");
|
|
|
+ } else if ("40011".equals(code)) {
|
|
|
+ log.error("不合法的音频地址");
|
|
|
+ } else if ("40012".equals(code)) {
|
|
|
+ log.error("不合法的音频时长");
|
|
|
+ } else if ("40013".equals(code)) {
|
|
|
+ log.error("不合法的文件大小");
|
|
|
+ } else if ("40014".equals(code)) {
|
|
|
+ log.error("缺少必要文件");
|
|
|
+ } else if ("40015".equals(code)) {
|
|
|
+ log.error("缺少必要参数");
|
|
|
+ } else if ("40016".equals(code)) {
|
|
|
+ log.error("文件上传失败");
|
|
|
+ } else if ("40017".equals(code)) {
|
|
|
+ log.error("文件下载失败");
|
|
|
+ } else if ("40018".equals(code)) {
|
|
|
+ log.error("文件不存在");
|
|
|
+ } else if ("40019".equals(code)) {
|
|
|
+ log.error("超出并发");
|
|
|
+ } else if ("40020".equals(code)) {
|
|
|
+ log.error("不支持的背景图片格式");
|
|
|
+ } else if ("40021".equals(code)) {
|
|
|
+ log.error("提交训练视频失败");
|
|
|
+ } else if ("40022".equals(code)) {
|
|
|
+ log.error("不合法的码率值");
|
|
|
+ } else if ("40023".equals(code)) {
|
|
|
+ log.error("不合法的分辨率值");
|
|
|
+ } else if ("40024".equals(code)) {
|
|
|
+ log.error("不合法的fps值");
|
|
|
+ } else if ("40025".equals(code)) {
|
|
|
+ log.error("模特不存在");
|
|
|
+ } else if ("40026".equals(code)) {
|
|
|
+ log.error("模特已过期");
|
|
|
+ } else if ("40027".equals(code)) {
|
|
|
+ log.error("不合法的视频格式");
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|