|
@@ -15,6 +15,7 @@ import org.springframework.http.HttpEntity;
|
|
|
import org.springframework.http.HttpHeaders;
|
|
import org.springframework.http.HttpHeaders;
|
|
|
import org.springframework.http.MediaType;
|
|
import org.springframework.http.MediaType;
|
|
|
import org.springframework.http.ResponseEntity;
|
|
import org.springframework.http.ResponseEntity;
|
|
|
|
|
+import org.springframework.http.client.ClientHttpRequestInterceptor;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.util.LinkedMultiValueMap;
|
|
import org.springframework.util.LinkedMultiValueMap;
|
|
|
import org.springframework.util.MultiValueMap;
|
|
import org.springframework.util.MultiValueMap;
|
|
@@ -123,32 +124,32 @@ public class LifeUserDynamicsController {
|
|
|
List<String> imgServicesList = Lists.newArrayList();
|
|
List<String> imgServicesList = Lists.newArrayList();
|
|
|
imgServicesList.add(ImageReviewServiceEnum.TONALITY_IMPROVE.getService());
|
|
imgServicesList.add(ImageReviewServiceEnum.TONALITY_IMPROVE.getService());
|
|
|
imgServicesList.add(ImageReviewServiceEnum.AIGC_CHECK.getService());
|
|
imgServicesList.add(ImageReviewServiceEnum.AIGC_CHECK.getService());
|
|
|
- ImageModerationResultVO response = imageModerationUtil.productPublishCheck(lifeUserDynamics.getImagePath(),imgServicesList);
|
|
|
|
|
|
|
+ ImageModerationResultVO response = imageModerationUtil.productPublishCheck(lifeUserDynamics.getImagePath(), imgServicesList);
|
|
|
if ("high".equals(response.getRiskLevel())) {
|
|
if ("high".equals(response.getRiskLevel())) {
|
|
|
return R.data(3);
|
|
return R.data(3);
|
|
|
}
|
|
}
|
|
|
lifeUserDynamics.setUpdatedTime(new Date());
|
|
lifeUserDynamics.setUpdatedTime(new Date());
|
|
|
int cnt = 0;
|
|
int cnt = 0;
|
|
|
- if(lifeUserDynamics.getType().equals("4")){
|
|
|
|
|
|
|
+ if (lifeUserDynamics.getType().equals("4")) {
|
|
|
cnt = lifeUserDynamicsService.addOrUpdateStore(lifeUserDynamics);
|
|
cnt = lifeUserDynamicsService.addOrUpdateStore(lifeUserDynamics);
|
|
|
- if(cnt > 0){
|
|
|
|
|
- LifeUserExpertOrder lifeUserExpertOrder = lifeUserExpertOrderMapper.selectById(lifeUserDynamics.getBusinessId());
|
|
|
|
|
- if(lifeUserExpertOrder !=null){
|
|
|
|
|
- //达人发布动态 订单状态变为履约中
|
|
|
|
|
- lifeUserExpertOrder.setStatus(4);
|
|
|
|
|
- lifeUserExpertOrderMapper.updateById(lifeUserExpertOrder);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- //达人作品同步增加一条达人动态记录
|
|
|
|
|
- LifeUserExpertWorks lifeUserExpertWorks = new LifeUserExpertWorks();
|
|
|
|
|
- lifeUserExpertWorks.setExpertId(lifeUserDynamics.getExpertId());
|
|
|
|
|
- lifeUserExpertWorks.setOrderId(lifeUserDynamics.getBusinessId());
|
|
|
|
|
- lifeUserExpertWorks.setWorksUrl(lifeUserDynamics.getImagePath());
|
|
|
|
|
- lifeUserExpertWorks.setIntroduction(lifeUserDynamics.getContext());
|
|
|
|
|
- lifeUserExpertWorks.setDynamicsId(lifeUserDynamics.getId());
|
|
|
|
|
- lifeUserExpertWorksMapper.insert(lifeUserExpertWorks);
|
|
|
|
|
|
|
+ if (cnt > 0) {
|
|
|
|
|
+ LifeUserExpertOrder lifeUserExpertOrder = lifeUserExpertOrderMapper.selectById(lifeUserDynamics.getBusinessId());
|
|
|
|
|
+ if (lifeUserExpertOrder != null) {
|
|
|
|
|
+ //达人发布动态 订单状态变为履约中
|
|
|
|
|
+ lifeUserExpertOrder.setStatus(4);
|
|
|
|
|
+ lifeUserExpertOrderMapper.updateById(lifeUserExpertOrder);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //达人作品同步增加一条达人动态记录
|
|
|
|
|
+ LifeUserExpertWorks lifeUserExpertWorks = new LifeUserExpertWorks();
|
|
|
|
|
+ lifeUserExpertWorks.setExpertId(lifeUserDynamics.getExpertId());
|
|
|
|
|
+ lifeUserExpertWorks.setOrderId(lifeUserDynamics.getBusinessId());
|
|
|
|
|
+ lifeUserExpertWorks.setWorksUrl(lifeUserDynamics.getImagePath());
|
|
|
|
|
+ lifeUserExpertWorks.setIntroduction(lifeUserDynamics.getContext());
|
|
|
|
|
+ lifeUserExpertWorks.setDynamicsId(lifeUserDynamics.getId());
|
|
|
|
|
+ lifeUserExpertWorksMapper.insert(lifeUserExpertWorks);
|
|
|
}
|
|
}
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
cnt = lifeUserDynamicsService.addOrUpdateStore(lifeUserDynamics);
|
|
cnt = lifeUserDynamicsService.addOrUpdateStore(lifeUserDynamics);
|
|
|
}
|
|
}
|
|
|
if (cnt == 0) {
|
|
if (cnt == 0) {
|
|
@@ -168,15 +169,15 @@ public class LifeUserDynamicsController {
|
|
|
log.info("LifeUserDynamicsController.deleteDynamicsById?id={}", id);
|
|
log.info("LifeUserDynamicsController.deleteDynamicsById?id={}", id);
|
|
|
try {
|
|
try {
|
|
|
LifeUserDynamics lifeUserDynamics = lifeUserDynamicsService.getDynamicsById(id);
|
|
LifeUserDynamics lifeUserDynamics = lifeUserDynamicsService.getDynamicsById(id);
|
|
|
- if(lifeUserDynamics !=null && lifeUserDynamics.getExpertId() !=null){
|
|
|
|
|
|
|
+ if (lifeUserDynamics != null && lifeUserDynamics.getExpertId() != null) {
|
|
|
boolean flag = lifeUserDynamicsService.deleteDynamicsById(id);
|
|
boolean flag = lifeUserDynamicsService.deleteDynamicsById(id);
|
|
|
//同步删除达人作品表关联记录
|
|
//同步删除达人作品表关联记录
|
|
|
- if(flag){
|
|
|
|
|
|
|
+ if (flag) {
|
|
|
lifeUserExpertWorksMapper.delete(new LambdaQueryWrapper<LifeUserExpertWorks>()
|
|
lifeUserExpertWorksMapper.delete(new LambdaQueryWrapper<LifeUserExpertWorks>()
|
|
|
- .eq(LifeUserExpertWorks :: getDynamicsId, lifeUserDynamics.getId()));
|
|
|
|
|
|
|
+ .eq(LifeUserExpertWorks::getDynamicsId, lifeUserDynamics.getId()));
|
|
|
}
|
|
}
|
|
|
return R.success("删除成功");
|
|
return R.success("删除成功");
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
lifeUserDynamicsService.deleteDynamicsById(id);
|
|
lifeUserDynamicsService.deleteDynamicsById(id);
|
|
|
return R.success("删除成功");
|
|
return R.success("删除成功");
|
|
|
}
|
|
}
|
|
@@ -211,7 +212,7 @@ public class LifeUserDynamicsController {
|
|
|
@PostMapping("addLiulanShu")
|
|
@PostMapping("addLiulanShu")
|
|
|
public R addLiulanCount(String id) {
|
|
public R addLiulanCount(String id) {
|
|
|
log.info("LifeUserDynamicsController.addLiulanShu?id={}", id);
|
|
log.info("LifeUserDynamicsController.addLiulanShu?id={}", id);
|
|
|
- if (lifeUserDynamicsService.addLiulanCount(id) == 0){
|
|
|
|
|
|
|
+ if (lifeUserDynamicsService.addLiulanCount(id) == 0) {
|
|
|
return R.fail("操作失败");
|
|
return R.fail("操作失败");
|
|
|
}
|
|
}
|
|
|
return R.success("操作成功");
|
|
return R.success("操作成功");
|
|
@@ -224,8 +225,8 @@ public class LifeUserDynamicsController {
|
|
|
@ApiImplicitParam(name = "phoneId", value = "用户唯一标识", dataType = "String", paramType = "query")})
|
|
@ApiImplicitParam(name = "phoneId", value = "用户唯一标识", dataType = "String", paramType = "query")})
|
|
|
@GetMapping("/getUserDraftDynamics")
|
|
@GetMapping("/getUserDraftDynamics")
|
|
|
public R<IPage<LifeUserDynamics>> getUserDraftDynamics(@RequestParam(defaultValue = "1") Integer page,
|
|
public R<IPage<LifeUserDynamics>> getUserDraftDynamics(@RequestParam(defaultValue = "1") Integer page,
|
|
|
- @RequestParam(defaultValue = "10") Integer size,
|
|
|
|
|
- @RequestParam(required = false) String phoneId) {
|
|
|
|
|
|
|
+ @RequestParam(defaultValue = "10") Integer size,
|
|
|
|
|
+ @RequestParam(required = false) String phoneId) {
|
|
|
log.info("LifeUserDynamicsController.getUserDraftDynamics?page={}&size={}&phoneId={}", page, size, phoneId);
|
|
log.info("LifeUserDynamicsController.getUserDraftDynamics?page={}&size={}&phoneId={}", page, size, phoneId);
|
|
|
List<LifeUserDynamics> stores = lifeUserDynamicsService.getUserDraftDynamics(phoneId);
|
|
List<LifeUserDynamics> stores = lifeUserDynamicsService.getUserDraftDynamics(phoneId);
|
|
|
return R.data(ListToPage.setPage(stores, page, size));
|
|
return R.data(ListToPage.setPage(stores, page, size));
|
|
@@ -252,7 +253,7 @@ public class LifeUserDynamicsController {
|
|
|
@RequestParam(defaultValue = "10") Integer size,
|
|
@RequestParam(defaultValue = "10") Integer size,
|
|
|
@RequestParam(required = false) String userName,
|
|
@RequestParam(required = false) String userName,
|
|
|
@RequestParam(required = false) String userType,
|
|
@RequestParam(required = false) String userType,
|
|
|
- @RequestParam(defaultValue = "0",required = false) Integer dynamicsType,
|
|
|
|
|
|
|
+ @RequestParam(defaultValue = "0", required = false) Integer dynamicsType,
|
|
|
@RequestParam(required = false) String releaseStartTime,
|
|
@RequestParam(required = false) String releaseStartTime,
|
|
|
@RequestParam(required = false) String releaseEndTime) {
|
|
@RequestParam(required = false) String releaseEndTime) {
|
|
|
log.info("LifeUserDynamicsController.getDynamicsList?page={}&size={}&nickName={}&userType={}&dynamicsType={}", page, size, userName, userType, dynamicsType);
|
|
log.info("LifeUserDynamicsController.getDynamicsList?page={}&size={}&nickName={}&userType={}&dynamicsType={}", page, size, userName, userType, dynamicsType);
|
|
@@ -266,7 +267,7 @@ public class LifeUserDynamicsController {
|
|
|
@PostMapping("setTopStatus")
|
|
@PostMapping("setTopStatus")
|
|
|
public R setTopStatus(@RequestBody() LifeUserDynamicsVo lifeUserDynamicsVo) {
|
|
public R setTopStatus(@RequestBody() LifeUserDynamicsVo lifeUserDynamicsVo) {
|
|
|
log.info("LifeUserDynamicsController.setTopStatus?id={},topStatus={}", lifeUserDynamicsVo.getId(), lifeUserDynamicsVo.getTopStatus());
|
|
log.info("LifeUserDynamicsController.setTopStatus?id={},topStatus={}", lifeUserDynamicsVo.getId(), lifeUserDynamicsVo.getTopStatus());
|
|
|
- if (lifeUserDynamicsService.setTopStatus(lifeUserDynamicsVo) == 0){
|
|
|
|
|
|
|
+ if (lifeUserDynamicsService.setTopStatus(lifeUserDynamicsVo) == 0) {
|
|
|
return R.fail("操作失败");
|
|
return R.fail("操作失败");
|
|
|
}
|
|
}
|
|
|
return R.success("操作成功");
|
|
return R.success("操作成功");
|
|
@@ -277,7 +278,7 @@ public class LifeUserDynamicsController {
|
|
|
@PostMapping("setEnableStatus")
|
|
@PostMapping("setEnableStatus")
|
|
|
public R setEnableStatus(@RequestBody() LifeUserDynamicsVo lifeUserDynamicsVo) {
|
|
public R setEnableStatus(@RequestBody() LifeUserDynamicsVo lifeUserDynamicsVo) {
|
|
|
log.info("LifeUserDynamicsController.setEnableStatus?id={},topStatus={}", lifeUserDynamicsVo.getId(), lifeUserDynamicsVo.getEnableStatus());
|
|
log.info("LifeUserDynamicsController.setEnableStatus?id={},topStatus={}", lifeUserDynamicsVo.getId(), lifeUserDynamicsVo.getEnableStatus());
|
|
|
- if (lifeUserDynamicsService.enableStatus(lifeUserDynamicsVo) == 0){
|
|
|
|
|
|
|
+ if (lifeUserDynamicsService.enableStatus(lifeUserDynamicsVo) == 0) {
|
|
|
return R.fail("操作失败");
|
|
return R.fail("操作失败");
|
|
|
}
|
|
}
|
|
|
return R.success("操作成功");
|
|
return R.success("操作成功");
|
|
@@ -327,12 +328,13 @@ public class LifeUserDynamicsController {
|
|
|
@ApiOperationSupport(order = 8)
|
|
@ApiOperationSupport(order = 8)
|
|
|
@PostMapping("/addUserStoreBrowseNumber")
|
|
@PostMapping("/addUserStoreBrowseNumber")
|
|
|
public R addUserStoreBrowseNumber(@RequestBody LifeBrowseRecord lifeBrowseRecord) {
|
|
public R addUserStoreBrowseNumber(@RequestBody LifeBrowseRecord lifeBrowseRecord) {
|
|
|
- log.info("LifeUserDynamicsController.addUserStoreBrowseNumber?lifeBrowseRecord={}",lifeBrowseRecord.toString());
|
|
|
|
|
|
|
+ log.info("LifeUserDynamicsController.addUserStoreBrowseNumber?lifeBrowseRecord={}", lifeBrowseRecord.toString());
|
|
|
return R.data(lifeUserDynamicsService.addUserStoreBrowseNumber(lifeBrowseRecord));
|
|
return R.data(lifeUserDynamicsService.addUserStoreBrowseNumber(lifeBrowseRecord));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 动态被转发次数+1
|
|
* 动态被转发次数+1
|
|
|
|
|
+ *
|
|
|
* @param id 动态id
|
|
* @param id 动态id
|
|
|
* @return 操作结果
|
|
* @return 操作结果
|
|
|
*/
|
|
*/
|
|
@@ -341,202 +343,9 @@ public class LifeUserDynamicsController {
|
|
|
@GetMapping("addTransferCount")
|
|
@GetMapping("addTransferCount")
|
|
|
public R addTransferCount(String id) {
|
|
public R addTransferCount(String id) {
|
|
|
log.info("LifeUserDynamicsController.addTransferCount?id={}", id);
|
|
log.info("LifeUserDynamicsController.addTransferCount?id={}", id);
|
|
|
- if (lifeUserDynamicsService.addTransferCount(id) == 0){
|
|
|
|
|
|
|
+ if (lifeUserDynamicsService.addTransferCount(id) == 0) {
|
|
|
return R.fail("操作失败");
|
|
return R.fail("操作失败");
|
|
|
}
|
|
}
|
|
|
return R.success("操作成功");
|
|
return R.success("操作成功");
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- @GetMapping("/testAI")
|
|
|
|
|
- public R testAI() {
|
|
|
|
|
- List<LifeUserDynamics> lifeUserDynamics = lifeUserDynamicsMapper.selectList(new LambdaQueryWrapper<LifeUserDynamics>()
|
|
|
|
|
- .eq(LifeUserDynamics::getCheckFlag, 0).eq(LifeUserDynamics::getDeleteFlag, 0));
|
|
|
|
|
-
|
|
|
|
|
- // 常见图片后缀(可按需添加,如 .heic、.svg 等)
|
|
|
|
|
- HashSet<String> IMAGE_SUFFIXES = new HashSet<>(Arrays.asList(
|
|
|
|
|
- "jpg", "jpeg", "png", "gif", "bmp", "webp", "heic", "svg", "tiff"
|
|
|
|
|
- ));
|
|
|
|
|
- // 常见视频后缀(可按需添加,如 .avi、.flv 等)
|
|
|
|
|
- HashSet<String> VIDEO_SUFFIXES = new HashSet<>(Arrays.asList(
|
|
|
|
|
- "mp4", "mov", "mkv", "avi", "flv", "wmv", "mpeg", "mpg", "webm"
|
|
|
|
|
- ));
|
|
|
|
|
- RestTemplate restTemplate = new RestTemplate();
|
|
|
|
|
-
|
|
|
|
|
- for (LifeUserDynamics lifeUserDynamic : lifeUserDynamics) {
|
|
|
|
|
- String imagePath = lifeUserDynamic.getImagePath();
|
|
|
|
|
-
|
|
|
|
|
- List<String> imageList = new ArrayList<>();
|
|
|
|
|
- List<String> videoList = new ArrayList<>();
|
|
|
|
|
- // 按分隔符拆分路径数组(处理连续分隔符如 ",," 产生的空字符串)
|
|
|
|
|
- String[] allPaths = imagePath.split(",");
|
|
|
|
|
- for (String path : allPaths) {
|
|
|
|
|
- // 去除路径前后空格(避免 " a.jpg " 这类情况)
|
|
|
|
|
- String trimmedPath = path.trim();
|
|
|
|
|
- if (trimmedPath.isEmpty()) {
|
|
|
|
|
- continue; // 跳过空路径
|
|
|
|
|
- }
|
|
|
|
|
- // 获取文件后缀(忽略大小写)
|
|
|
|
|
- // 找到最后一个 "." 的位置
|
|
|
|
|
- int lastDotIndex = trimmedPath.lastIndexOf('.');
|
|
|
|
|
- // 截取后缀(从 "." 后一位到结尾)
|
|
|
|
|
- String suffix = trimmedPath.substring(lastDotIndex + 1);
|
|
|
|
|
- // 分类添加到对应列表
|
|
|
|
|
- if (IMAGE_SUFFIXES.contains(suffix)) {
|
|
|
|
|
- imageList.add(trimmedPath);
|
|
|
|
|
- } else if (VIDEO_SUFFIXES.contains(suffix)) {
|
|
|
|
|
- videoList.add(trimmedPath);
|
|
|
|
|
- }
|
|
|
|
|
- try {
|
|
|
|
|
- log.info("登录Ai服务获取token..." + "http://192.168.2.250:9000/ai/user-auth-core/api/v1/auth/login");
|
|
|
|
|
- MultiValueMap<String, String> formData = new LinkedMultiValueMap<>();
|
|
|
|
|
- formData.add("username", "UdUser");
|
|
|
|
|
- formData.add("password", "123456");
|
|
|
|
|
-
|
|
|
|
|
- HttpHeaders headers = new HttpHeaders();
|
|
|
|
|
- headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
|
|
|
|
|
- HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<>(formData, headers);
|
|
|
|
|
- ResponseEntity<String> postForEntity = null;
|
|
|
|
|
- try {
|
|
|
|
|
- log.info("请求Ai服务登录接口===================>");
|
|
|
|
|
- postForEntity = restTemplate.postForEntity("http://192.168.2.250:9000/ai/user-auth-core/api/v1/auth/login", requestEntity, String.class);
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- log.error("请求AI服务登录接口失败", e);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- if (postForEntity != null && postForEntity.getStatusCodeValue() == 200) {
|
|
|
|
|
- log.info("请求Ai服务登录成功 postForEntity.getBody()\t" + postForEntity.getBody());
|
|
|
|
|
- String responseBody = postForEntity.getBody();
|
|
|
|
|
- JSONObject jsonObject = JSONObject.parseObject(responseBody);
|
|
|
|
|
- if (jsonObject != null) {
|
|
|
|
|
- JSONObject dataJson = jsonObject.getJSONObject("data");
|
|
|
|
|
- String accessToken = dataJson.getString("access_token");
|
|
|
|
|
-
|
|
|
|
|
- HttpHeaders aiHeaders = new HttpHeaders();
|
|
|
|
|
- aiHeaders.setContentType(MediaType.APPLICATION_JSON);
|
|
|
|
|
- aiHeaders.set("Authorization", "Bearer " + accessToken);
|
|
|
|
|
-
|
|
|
|
|
- Map<String, Object> jsonBody = new HashMap<>();
|
|
|
|
|
- jsonBody.put("text", lifeUserDynamic.getContext());
|
|
|
|
|
- jsonBody.put("imgUrl", imageList);
|
|
|
|
|
- jsonBody.put("video", videoList);
|
|
|
|
|
-
|
|
|
|
|
- HttpEntity<Map<String, Object>> request = new HttpEntity<>(jsonBody, aiHeaders);
|
|
|
|
|
- ResponseEntity<String> response = null;
|
|
|
|
|
- try {
|
|
|
|
|
- response = restTemplate.postForEntity("http://192.168.2.250:9000/ai/auto-review/api/v1/multimodal_audit_task/submit", request, String.class);
|
|
|
|
|
- if (response.getStatusCodeValue() != 200) {
|
|
|
|
|
- log.error("AI内容审核接口调用失败 http状态:" + response.getStatusCode());
|
|
|
|
|
- }
|
|
|
|
|
- JSONObject responseNode = JSONObject.parseObject(response.getBody());
|
|
|
|
|
- if (responseNode == null) {
|
|
|
|
|
- log.error("AI接口调用失败,响应内容为空");
|
|
|
|
|
- }
|
|
|
|
|
- Integer code = null;
|
|
|
|
|
- if (responseNode != null) {
|
|
|
|
|
- code = responseNode.getInteger("code");
|
|
|
|
|
- if(code==200) {
|
|
|
|
|
- JSONObject dataNode = JSONObject.from(responseNode.get("data"));
|
|
|
|
|
- LifeUserDynamics dynamics = new LifeUserDynamics();
|
|
|
|
|
- dynamics.setId(lifeUserDynamic.getId());
|
|
|
|
|
- dynamics.setCheckFlag(1);
|
|
|
|
|
- dynamics.setAiTaskId(dataNode.get("task_id").toString());
|
|
|
|
|
- lifeUserDynamicsMapper.updateById(dynamics);
|
|
|
|
|
- log.info("动态审核成功,AI返回内容: {}", response.getBody());
|
|
|
|
|
- }
|
|
|
|
|
- }else {
|
|
|
|
|
- log.error("AI接口调用失败,错误码: " + code);
|
|
|
|
|
- }
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- log.error("调用AI内容审核接口失败", e);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- } catch (RuntimeException ex) {
|
|
|
|
|
- return R.fail("动态内容审核任务执行失败:" + ex.getMessage());
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- return R.success("动态内容审核任务执行成功");
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @GetMapping("/testAIGet")
|
|
|
|
|
- public R testAIGet() {
|
|
|
|
|
- List<LifeUserDynamics> lifeUserDynamics = lifeUserDynamicsMapper.selectList(new LambdaQueryWrapper<LifeUserDynamics>()
|
|
|
|
|
- .eq(LifeUserDynamics::getCheckFlag, 1).eq(LifeUserDynamics::getDeleteFlag, 0));
|
|
|
|
|
- RestTemplate restTemplate = new RestTemplate();
|
|
|
|
|
- for (LifeUserDynamics lifeUserDynamic : lifeUserDynamics) {
|
|
|
|
|
- try {
|
|
|
|
|
- MultiValueMap<String, String> formData = new LinkedMultiValueMap<>();
|
|
|
|
|
- formData.add("username", "UdUser");
|
|
|
|
|
- formData.add("password", "123456");
|
|
|
|
|
-
|
|
|
|
|
- HttpHeaders headers = new HttpHeaders();
|
|
|
|
|
- headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
|
|
|
|
|
- HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<>(formData, headers);
|
|
|
|
|
- ResponseEntity<String> postForEntity = null;
|
|
|
|
|
- try {
|
|
|
|
|
- log.info("请求Ai服务登录接口===================>");
|
|
|
|
|
- postForEntity = restTemplate.postForEntity("http://192.168.2.250:9000/ai/user-auth-core/api/v1/auth/login", requestEntity, String.class);
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- log.error("请求AI服务登录接口失败", e);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- if (postForEntity != null && postForEntity.getStatusCodeValue() == 200) {
|
|
|
|
|
- log.info("请求Ai服务登录成功 postForEntity.getBody()\t" + postForEntity.getBody());
|
|
|
|
|
- String responseBody = postForEntity.getBody();
|
|
|
|
|
- JSONObject jsonObject = JSONObject.parseObject(responseBody);
|
|
|
|
|
- if (jsonObject != null) {
|
|
|
|
|
- JSONObject dataJson = jsonObject.getJSONObject("data");
|
|
|
|
|
- String accessToken = dataJson.getString("access_token");
|
|
|
|
|
-
|
|
|
|
|
- HttpHeaders aiHeaders = new HttpHeaders();
|
|
|
|
|
- aiHeaders.setContentType(MediaType.APPLICATION_JSON);
|
|
|
|
|
- aiHeaders.set("Authorization", "Bearer " + accessToken);
|
|
|
|
|
-
|
|
|
|
|
- Map<String, Object> jsonBody = new HashMap<>();
|
|
|
|
|
- jsonBody.put("task_id", lifeUserDynamic.getAiTaskId());
|
|
|
|
|
-
|
|
|
|
|
- HttpEntity<Map<String, Object>> request = new HttpEntity<>(jsonBody, aiHeaders);
|
|
|
|
|
- ResponseEntity<String> response = null;
|
|
|
|
|
- try {
|
|
|
|
|
- response = restTemplate.getForEntity("http://192.168.2.250:9000/ai/auto-review/api/v1/multimodal_audit_task/getResult?task_id="+lifeUserDynamic.getAiTaskId(), String.class);
|
|
|
|
|
- if (response.getStatusCodeValue() != 200) {
|
|
|
|
|
- log.error("AI内容审核结果获取接口调用失败 http状态:" + response.getStatusCode());
|
|
|
|
|
- }
|
|
|
|
|
- JSONObject responseNode = JSONObject.parseObject(response.getBody());
|
|
|
|
|
- if (responseNode == null) {
|
|
|
|
|
- log.error("AI接口调用失败,响应内容为空");
|
|
|
|
|
- }
|
|
|
|
|
- Integer code = null;
|
|
|
|
|
- if (responseNode != null) {
|
|
|
|
|
- code = responseNode.getInteger("code");
|
|
|
|
|
- if(code==200) {
|
|
|
|
|
- JSONObject dataNode = JSONObject.from(responseNode.get("data"));
|
|
|
|
|
-
|
|
|
|
|
- if (!(boolean) dataNode.get("is_compliant")) {
|
|
|
|
|
- LifeUserDynamics dynamics = new LifeUserDynamics();
|
|
|
|
|
- dynamics.setId(lifeUserDynamic.getId());
|
|
|
|
|
- dynamics.setCheckFlag(2);
|
|
|
|
|
- dynamics.setEnableStatus(1);
|
|
|
|
|
- dynamics.setReason(String.valueOf(dataNode.get("failure_reason")));
|
|
|
|
|
- lifeUserDynamicsMapper.updateById(dynamics);
|
|
|
|
|
- }
|
|
|
|
|
- log.info("动态审核结果获取成功,AI返回内容: {}", response.getBody());
|
|
|
|
|
-// XxlJobHelper.handleSuccess("动态内容审核任务结果获取执行成功");
|
|
|
|
|
- } else {
|
|
|
|
|
- log.error("AI接口调用失败,错误码: " + code);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- log.error("调用AI内容审核结果获取接口失败", e);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- } catch (RuntimeException ex) {
|
|
|
|
|
-// XxlJobHelper.handleFail("动态内容审核任务结果获取执行失败:" + ex.getMessage());
|
|
|
|
|
- return R.fail("动态内容审核任务结果获取执行失败:" + ex.getMessage());
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- return R.success("动态内容审核任务结果获取执行成功");
|
|
|
|
|
- }
|
|
|
|
|
}
|
|
}
|