|
@@ -1,195 +1,58 @@
|
|
package com.cdf.controller;
|
|
package com.cdf.controller;
|
|
|
|
|
|
-import com.alibaba.fastjson.JSONArray;
|
|
|
|
-import com.alibaba.fastjson.JSONObject;
|
|
|
|
import com.cdf.aop.SysLog;
|
|
import com.cdf.aop.SysLog;
|
|
-import com.cdf.common.ResultCode;
|
|
|
|
import com.cdf.common.ResultData;
|
|
import com.cdf.common.ResultData;
|
|
-import com.cdf.entity.FdkkUser;
|
|
|
|
-import com.cdf.entity.HotRelation;
|
|
|
|
-import com.cdf.exception.BusinessException;
|
|
|
|
-import com.cdf.httpClient.client.CdfClient;
|
|
|
|
-import com.cdf.httpClient.client.FdkkClient;
|
|
|
|
-import com.cdf.httpClient.request.FdkkHotData;
|
|
|
|
import com.cdf.httpClient.request.FdkkHotRequest;
|
|
import com.cdf.httpClient.request.FdkkHotRequest;
|
|
import com.cdf.httpClient.request.FdkkUploadRequest;
|
|
import com.cdf.httpClient.request.FdkkUploadRequest;
|
|
-import com.cdf.httpClient.request.SceneRequest;
|
|
|
|
import com.cdf.httpClient.response.FdkkResponse;
|
|
import com.cdf.httpClient.response.FdkkResponse;
|
|
-import com.cdf.httpClient.response.cdf.CdfProduct;
|
|
|
|
-import com.cdf.httpClient.response.cdf.CdfProductListRequest;
|
|
|
|
-import com.cdf.httpClient.response.cdf.CdfProductListResponse;
|
|
|
|
-import com.cdf.service.IFdkkUserService;
|
|
|
|
-import com.cdf.service.IHotRelationService;
|
|
|
|
-import com.cdf.util.JwtUtil;
|
|
|
|
-import com.dtflys.forest.annotation.JSONBody;
|
|
|
|
-import com.fdkankan.fyun.oss.UploadToOssUtil;
|
|
|
|
-import com.google.gson.JsonObject;
|
|
|
|
-import jdk.nashorn.internal.parser.Token;
|
|
|
|
-import org.apache.commons.lang3.StringUtils;
|
|
|
|
|
|
+import com.cdf.service.impl.FdkkSceneEditService;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
-import org.springframework.beans.factory.annotation.Value;
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
-import javax.annotation.Resource;
|
|
|
|
-import java.io.File;
|
|
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
-import java.util.ArrayList;
|
|
|
|
-import java.util.Arrays;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.UUID;
|
|
|
|
|
|
|
|
@RestController
|
|
@RestController
|
|
@RequestMapping("/service/scene/edit")
|
|
@RequestMapping("/service/scene/edit")
|
|
public class FdkkSceneEditController {
|
|
public class FdkkSceneEditController {
|
|
|
|
|
|
- @Resource
|
|
|
|
- private UploadToOssUtil uploadToOssUtil;
|
|
|
|
- @Value("${upload.bucket}")
|
|
|
|
- private String bucket;
|
|
|
|
- @Value("${fdkk.hot-path}")
|
|
|
|
- private String hotPath;
|
|
|
|
- @Resource
|
|
|
|
- private FdkkClient fdkkClient;
|
|
|
|
- @Resource
|
|
|
|
- private CdfClient cdfClient;
|
|
|
|
@Autowired
|
|
@Autowired
|
|
- private IFdkkUserService fdkkUserService;
|
|
|
|
- @Autowired
|
|
|
|
- private IHotRelationService hotRelationService;
|
|
|
|
|
|
+ private FdkkSceneEditService fdkkSceneEditService;
|
|
|
|
|
|
@PostMapping("/tag/save")
|
|
@PostMapping("/tag/save")
|
|
@SysLog("/热点新增编辑")
|
|
@SysLog("/热点新增编辑")
|
|
public FdkkResponse save(@RequestBody FdkkHotRequest fdkkHotRequest, @RequestHeader String token){
|
|
public FdkkResponse save(@RequestBody FdkkHotRequest fdkkHotRequest, @RequestHeader String token){
|
|
- Integer userId = JwtUtil.getId(token);
|
|
|
|
- FdkkUser fdkkUser = fdkkUserService.getById(userId);
|
|
|
|
- FdkkResponse fdkkResponse = fdkkClient.hotSave(fdkkHotRequest, fdkkUser.getToken());
|
|
|
|
- if(fdkkResponse.getCode() != 0){
|
|
|
|
- throw new BusinessException(fdkkResponse.getCode(),fdkkResponse.getMsg());
|
|
|
|
- }
|
|
|
|
- List<FdkkHotData> hotDataList = fdkkHotRequest.getHotDataList();
|
|
|
|
- for (FdkkHotData fdkkHotData : hotDataList) {
|
|
|
|
- List<String> relationIds = fdkkHotData.getRelationIds();
|
|
|
|
- String sid = fdkkHotData.getSid();
|
|
|
|
- Integer type = fdkkHotData.getHotType();
|
|
|
|
- HotRelation hotRelation = new HotRelation();
|
|
|
|
- hotRelation.setHotId(sid);
|
|
|
|
- hotRelation.setHotType(type);
|
|
|
|
- hotRelation.setRelationIds(JSONArray.toJSONString(relationIds));
|
|
|
|
- hotRelation.setNum(fdkkHotRequest.getNum());
|
|
|
|
- hotRelationService.saveOrUpdate(hotRelation);
|
|
|
|
- }
|
|
|
|
- return fdkkResponse;
|
|
|
|
|
|
+ return fdkkSceneEditService.saveTag(fdkkHotRequest,token);
|
|
}
|
|
}
|
|
|
|
|
|
@PostMapping("/tag/delete")
|
|
@PostMapping("/tag/delete")
|
|
@SysLog("/热点删除")
|
|
@SysLog("/热点删除")
|
|
public ResultData delete(@RequestBody FdkkHotRequest fdkkHotRequest, @RequestHeader String token){
|
|
public ResultData delete(@RequestBody FdkkHotRequest fdkkHotRequest, @RequestHeader String token){
|
|
- Integer userId = JwtUtil.getId(token);
|
|
|
|
- FdkkUser fdkkUser = fdkkUserService.getById(userId);
|
|
|
|
- FdkkResponse fdkkResponse = fdkkClient.hotDelete(fdkkHotRequest, fdkkUser.getToken());
|
|
|
|
- if(fdkkResponse.getCode() !=0){
|
|
|
|
- throw new BusinessException(fdkkResponse.getCode(),fdkkResponse.getMsg());
|
|
|
|
- }
|
|
|
|
- hotRelationService.removeByIds(fdkkHotRequest.getSidList());
|
|
|
|
|
|
+ fdkkSceneEditService.deleteTag(fdkkHotRequest,token);
|
|
return ResultData.ok();
|
|
return ResultData.ok();
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
@PostMapping("/tag/list")
|
|
@PostMapping("/tag/list")
|
|
public ResultData list (@RequestParam(required = false) String num,@RequestHeader String token){
|
|
public ResultData list (@RequestParam(required = false) String num,@RequestHeader String token){
|
|
- Integer userId = JwtUtil.getId(token);
|
|
|
|
- FdkkUser fdkkUser = fdkkUserService.getById(userId);
|
|
|
|
- FdkkResponse fdkkResponse = fdkkClient.hotList(new SceneRequest(num), fdkkUser.getToken());
|
|
|
|
- if(fdkkResponse.getCode() !=0){
|
|
|
|
- throw new BusinessException(fdkkResponse.getCode(),fdkkResponse.getMsg());
|
|
|
|
- }
|
|
|
|
- JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(fdkkResponse.getData()));
|
|
|
|
- JSONArray tags =jsonObject.getJSONArray("tags");
|
|
|
|
- jsonObject.put("tags",getProductByJsonObj(tags));
|
|
|
|
- return ResultData.ok(jsonObject);
|
|
|
|
|
|
+ return ResultData.ok(fdkkSceneEditService.getTagList(num,token));
|
|
}
|
|
}
|
|
- @PostMapping("/tag/getHotJs")
|
|
|
|
|
|
+
|
|
|
|
+ @PostMapping("/tag/getHotJson")
|
|
public ResultData getHotJs (@RequestParam(required = false) String num,@RequestHeader String token){
|
|
public ResultData getHotJs (@RequestParam(required = false) String num,@RequestHeader String token){
|
|
- String data = uploadToOssUtil.getObjectContent(bucket, String.format(hotPath, num));
|
|
|
|
- if(StringUtils.isBlank(data)){
|
|
|
|
- throw new BusinessException(ResultCode.NOT_RECORD);
|
|
|
|
- }
|
|
|
|
- JSONArray tags = JSONObject.parseArray(data);
|
|
|
|
- return ResultData.ok(getProductByJsonObj(tags));
|
|
|
|
|
|
+ return ResultData.ok( fdkkSceneEditService.getHotJson(num,token));
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@PostMapping("publicScene")
|
|
@PostMapping("publicScene")
|
|
public ResultData scenePublicScene(@RequestBody FdkkHotRequest fdkkHotRequest ,@RequestHeader String token){
|
|
public ResultData scenePublicScene(@RequestBody FdkkHotRequest fdkkHotRequest ,@RequestHeader String token){
|
|
- Integer userId = JwtUtil.getId(token);
|
|
|
|
- FdkkUser fdkkUser = fdkkUserService.getById(userId);
|
|
|
|
- FdkkResponse fdkkResponse = fdkkClient.scenePublicScene(fdkkHotRequest.getNum(), fdkkUser.getToken());
|
|
|
|
- if(fdkkResponse.getCode() !=0){
|
|
|
|
- throw new BusinessException(fdkkResponse.getCode(),fdkkResponse.getMsg());
|
|
|
|
- }
|
|
|
|
- String content = uploadToOssUtil.getObjectContent(bucket, String.format(hotPath, fdkkHotRequest.getNum()));
|
|
|
|
- JSONArray jsonArray = JSONObject.parseArray(content);
|
|
|
|
- if(jsonArray == null){
|
|
|
|
- return ResultData.ok();
|
|
|
|
- }
|
|
|
|
- for (Object obj : jsonArray) {
|
|
|
|
- JSONObject jsonObject= (JSONObject) obj;
|
|
|
|
- String sid = jsonObject.getString("sid");
|
|
|
|
- HotRelation hotRelation = hotRelationService.getById(sid);
|
|
|
|
- jsonObject.put("hotRelation",hotRelation);
|
|
|
|
- }
|
|
|
|
|
|
+ fdkkSceneEditService.publicScene(fdkkHotRequest,token);
|
|
return ResultData.ok();
|
|
return ResultData.ok();
|
|
}
|
|
}
|
|
|
|
|
|
@PostMapping("/upload/files")
|
|
@PostMapping("/upload/files")
|
|
public ResultData uploadFiles(FdkkUploadRequest fdkkUploadRequest, MultipartFile files,@RequestHeader String token) throws IOException {
|
|
public ResultData uploadFiles(FdkkUploadRequest fdkkUploadRequest, MultipartFile files,@RequestHeader String token) throws IOException {
|
|
- Integer userId = JwtUtil.getId(token);
|
|
|
|
- FdkkUser fdkkUser = fdkkUserService.getById(userId);
|
|
|
|
- String path = null;
|
|
|
|
- if(files !=null && files.getSize() >0){
|
|
|
|
- String fileName = files.getOriginalFilename();
|
|
|
|
- // 获取文件后缀
|
|
|
|
- String prefix = fileName.substring(fileName.lastIndexOf("."));
|
|
|
|
- File newFile = File.createTempFile(UUID.randomUUID().toString() ,prefix);
|
|
|
|
- files.transferTo(newFile);
|
|
|
|
- path = newFile.getPath();
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- FdkkResponse fdkkResponse = fdkkClient.uploadFiles(fdkkUploadRequest,path,fdkkUser.getToken());
|
|
|
|
- if(fdkkResponse.getCode() !=0){
|
|
|
|
- throw new BusinessException(fdkkResponse.getCode(),fdkkResponse.getMsg());
|
|
|
|
- }
|
|
|
|
|
|
+ FdkkResponse fdkkResponse = fdkkSceneEditService.uploadFiles(fdkkUploadRequest, files, token);
|
|
return ResultData.ok(fdkkResponse.getMsg(),fdkkResponse.getData());
|
|
return ResultData.ok(fdkkResponse.getMsg(),fdkkResponse.getData());
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
- private JSONArray getProductByJsonObj(JSONArray tags){
|
|
|
|
- for (Object obj : tags) {
|
|
|
|
- JSONObject tag = (JSONObject) obj;
|
|
|
|
- String sid = tag.getString("sid");
|
|
|
|
- HotRelation hotRelation = hotRelationService.getById(sid);
|
|
|
|
- if(hotRelation == null){
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- String relationIds = hotRelation.getRelationIds();
|
|
|
|
- JSONArray jsonArray = JSONObject.parseArray(relationIds);
|
|
|
|
- List<CdfProduct> products = new ArrayList<>();
|
|
|
|
- for (Object o : jsonArray) {
|
|
|
|
- String productId = (String) o;
|
|
|
|
- CdfProductListRequest param = new CdfProductListRequest();
|
|
|
|
- param.setKeyword(productId);
|
|
|
|
- CdfProductListResponse productList = cdfClient.getProductList(param);
|
|
|
|
- if(productList.getSearchResult().getType() == 0 && productList.getList().size() >0){
|
|
|
|
- CdfProduct cdfProduct = productList.getList().get(0);
|
|
|
|
- products.add(cdfProduct);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- }
|
|
|
|
- if(products.size() >0){
|
|
|
|
- tag.put("products",products);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- return tags;
|
|
|
|
- }
|
|
|
|
}
|
|
}
|