Procházet zdrojové kódy

修改应用功能bug

zhaoxian před 4 roky
rodič
revize
60b42a405b

+ 1 - 1
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/controller/KuaishouAppPackageController.java

@@ -416,7 +416,7 @@ public class KuaishouAppPackageController {
             OutputStream os = response.getOutputStream();
             ExportExcelUtils eeu = new ExportExcelUtils();
             XSSFWorkbook workbook = new XSSFWorkbook();
-            String[] titles = {"应用名称", "应用包名", "应用标记", "隐私政策链接", "下载链接", "监测链接", "广告监测SDK"};
+            String[] titles = {"应用名称", "应用包名", "应用标记", "隐私政策链接", "下载链接", "监测链接", "是否接入广告监测sdk(0否 1 是)"};
             eeu.exportExcelForAttendance(workbook, 0, "Sheet1", titles, new ArrayList<>());
             this.setResponseHeader(response, "应用模板.xlsx");
             workbook.write(os);

+ 2 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/KuaishouAppPackageMapper.java

@@ -27,4 +27,6 @@ public interface KuaishouAppPackageMapper extends BaseMapper<KuaishouAppPackage>
     Long queryUnitCount(@Param("id") Long id);
 
     List<JSONObject> getRelatedGroups(@Param("id") Long id, @Param("accountId") Long accountId);
+
+    String getUrlByMd5(@Param("md5") String md5);
 }

+ 8 - 1
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/mapper/xml/KuaishouAppPackageMapper.xml

@@ -76,7 +76,7 @@
             AND t1.app_version Like concat('%',#{appVersion},'%')
         </if>
         <if test="appName!=null">
-            AND t1.app_name=#{appName}
+            AND t1.app_name Like concat(concat('%',#{appName}),'%')
         </if>
         <if test="projectId!=null">
             AND t1.project_id=#{projectId}
@@ -117,4 +117,11 @@
         order by t1.create_time desc
     </select>
 
+    <select id="getUrlByMd5" resultType="java.lang.String">
+        SELECT app_icon_url
+        FROM ctop_kuaishou_app_package
+        WHERE image_md5 = #{md5}
+        limit 1
+    </select>
+
 </mapper>

+ 15 - 9
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/ai/service/impl/KuaishouAppPackageServiceImpl.java

@@ -239,10 +239,11 @@ public class KuaishouAppPackageServiceImpl extends ServiceImpl<KuaishouAppPackag
                     continue;
                 }
                 CtopOauthToken oauthToken = tokenService.getTokenByAccountId(accountId);
-                String imageToken = getImageToken(appPackage.getImageMd5(), accountId, oauthToken);
-                if (Check.isNull(imageToken) && (appPackage.getPlatform() == 1 || appPackage.getPlatform() == 3)) {
+                JSONObject dataJson = getImageToken(appPackage.getImageMd5(), accountId, oauthToken);
+                String imageToken = dataJson.getString("image_token");
+                if (Check.isNull(imageToken)) {
+                    rel.setMessage(dataJson.getString("message"));
                     rel.setDataStatus(0);
-                    rel.setMessage("获取图片文件失败");
                     list.add(rel);
                     continue;
                 }
@@ -295,8 +296,8 @@ public class KuaishouAppPackageServiceImpl extends ServiceImpl<KuaishouAppPackag
     /**
      * 获取图片token
      */
-    private String getImageToken(String md5, Long accountId, CtopOauthToken oauthToken) {
-        String imageToken = null;
+    private JSONObject getImageToken(String md5, Long accountId, CtopOauthToken oauthToken) {
+        JSONObject request = new JSONObject();
         if (!Check.isNull(md5)) {
             QueryWrapper<KuaiShouImageGet> queryWrapper = new QueryWrapper<>();
             queryWrapper.eq("account_id", accountId);
@@ -304,13 +305,18 @@ public class KuaishouAppPackageServiceImpl extends ServiceImpl<KuaishouAppPackag
             queryWrapper.last("limit 1");
             KuaiShouImageGet imageGet = imageGetService.getOne(queryWrapper);
             if (!Check.isNull(imageGet)) {
-                imageToken = imageGet.getImageToken();
+                request.put("image_token", imageGet.getImageToken());
+                return request;
             } else {
-                String url = imageGetService.getUrlByCode(md5);
-                imageToken = uploadService.kuauiShouImageUpload(url, md5, accountId, oauthToken.getAccessToken());
+                String url = appPackageMapper.getUrlByMd5(md5);
+                JSONObject resultJson = uploadService.kuauiShouImageUploadOnly(url, md5, accountId, oauthToken.getAccessToken());
+                if (resultJson.getInteger("code") == 0) {
+                    return resultJson.getJSONObject("data");
+                }
+                return resultJson;
             }
         }
-        return imageToken;
+        return request;
     }
 
     @Override

+ 1 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/IKuaiShouMaterialUploadService.java

@@ -9,6 +9,7 @@ public interface IKuaiShouMaterialUploadService {
 
     String kuauiShouImageUpload(String url, String signature, Long accountId, String token);
 
+    JSONObject kuauiShouImageUploadOnly(String url, String signature, Long accountId, String token);
 
     String exceptInfoForRestTemplate(String url, Map<String, Object> paramMap, Map<String, String> headerMap);
 }

+ 23 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/impl/KuaiShouMaterialUploadServiceImpl.java

@@ -168,6 +168,29 @@ public class KuaiShouMaterialUploadServiceImpl implements IKuaiShouMaterialUploa
         return null;
     }
 
+    @Override
+    public JSONObject kuauiShouImageUploadOnly(String url, String signature, Long accountId, String token) {
+        try {
+            Map<String, String> headerMap = new HashMap<>();
+            headerMap.put("Content-Type", "multipart/form-data");
+            JSONObject requestJson = new JSONObject();
+            requestJson.put("signature", signature);
+            requestJson.put("url", url);
+            requestJson.put("type", 2);
+            requestJson.put("advertiser_id", accountId);
+            headerMap.put("Access-Token", token);
+            String requestUrl = PropertiesUtils.getConfig("kuaishou_api_url") + KuaishouInterfaceConstant.IMAGE_UPLOAD;
+            requestJson.put("upload_type", "2");
+            String result = exceptInfoForRestTemplate(requestUrl, requestJson, headerMap);
+            JSONObject resultJson = JSONObject.parseObject(result);
+            if (!Check.isNull(resultJson)) {
+                return resultJson;
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
 
     public String uploadFile(MultipartFile multipartFile, String dirPath) throws IOException {
         String fileName = multipartFile.getOriginalFilename();