提交 9b85fb90 authored 作者: zgy's avatar zgy

Merge remote-tracking branch 'origin/master'

...@@ -25,6 +25,9 @@ public class TbProductMissEntity implements Serializable { ...@@ -25,6 +25,9 @@ public class TbProductMissEntity implements Serializable {
* 失败类型【1:已存在】【2:出现了异常】 * 失败类型【1:已存在】【2:出现了异常】
*/ */
private Integer missType; private Integer missType;
private String missReason;
/** /**
* 页数(每250个) * 页数(每250个)
*/ */
...@@ -99,4 +102,12 @@ public class TbProductMissEntity implements Serializable { ...@@ -99,4 +102,12 @@ public class TbProductMissEntity implements Serializable {
public Date getCreateTime() { public Date getCreateTime() {
return createTime; return createTime;
} }
public String getMissReason() {
return missReason;
}
public void setMissReason(String missReason) {
this.missReason = missReason;
}
} }
...@@ -229,7 +229,7 @@ ...@@ -229,7 +229,7 @@
#{itemUrl}, #{itemUrl},
#{itemImg}, #{itemImg},
#{itemTags}, #{itemTags},
#{itemLabel} #{itemLabel},
#{itemNum}, #{itemNum},
#{itemCount}, #{itemCount},
#{itemSku}, #{itemSku},
......
...@@ -60,12 +60,14 @@ ...@@ -60,12 +60,14 @@
`id`, `id`,
`product_id`, `product_id`,
`miss_type`, `miss_type`,
`miss_reason`,
`page_size`, `page_size`,
`create_time`) `create_time`)
values( values(
#{id}, #{id},
#{productId}, #{productId},
#{missType}, #{missType},
#{missReason},
#{pageSize}, #{pageSize},
#{createTime}) #{createTime})
</insert> </insert>
...@@ -92,4 +94,4 @@ ...@@ -92,4 +94,4 @@
</foreach> </foreach>
</delete> </delete>
</mapper> </mapper>
\ No newline at end of file
package test;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.util.concurrent.*;
/**
* 并发测试
*
* @author 爱酱油不爱醋
* @version 1.0
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath*:/applicationContext-test.xml"})
public class ConcurrencyApi {
private final int corePoolSize = 15;
private final int maximumPoolSize = 35;
@Test
public void test() {
ExecutorService executor = Executors.newCachedThreadPool();
int i = 0;
while (true) {
RunningTest test = new RunningTest(i);
executor.submit(test);
System.out.println("正在执行的线程编号:" + i);
i++;
}
}
}
package test;
/**
* 商品导入的任务块
*
* @author 爱酱油不爱醋
* @version 1.0
*/
public class ImportTask implements Runnable {
@Override
public void run() {
}
}
package test;
/**
* @author 爱酱油不爱醋
* @version 1.0
*/
public class RunningTest implements Runnable {
private int taskNum;
public RunningTest(int num) {
this.taskNum = num;
}
@Override
public void run() {
System.out.println("正在执行任务:" + taskNum);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("执行完毕:" + taskNum);
}
}
...@@ -3,6 +3,7 @@ package test; ...@@ -3,6 +3,7 @@ package test;
import cn.hutool.core.lang.Console; import cn.hutool.core.lang.Console;
import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.IdUtil;
import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpRequest;
import com.google.gson.annotations.JsonAdapter;
import com.platform.controller.api.ProductExitException; import com.platform.controller.api.ProductExitException;
import com.platform.dao.*; import com.platform.dao.*;
import com.platform.entity.*; import com.platform.entity.*;
...@@ -66,7 +67,6 @@ public class TestApi { ...@@ -66,7 +67,6 @@ public class TestApi {
*/ */
private final String API_URL = "https://mollykitty.myshopify.com/admin/api/" + VERSION + "/products.json"; private final String API_URL = "https://mollykitty.myshopify.com/admin/api/" + VERSION + "/products.json";
@Test @Test
public void host() { public void host() {
String link = API_URL + "?limit=250&page_info=eyJwcm9kdWN0X3R5cGUiOiJXb21lbiIsImxhc3RfaWQiOjQ0OTc2Nzg5NTg2ODksImxhc3RfdmFsdWUiOiJDYXN1YWwgU2xpbSBTd2VhdGVycyIsImRpcmVjdGlvbiI6Im5leHQifQ"; String link = API_URL + "?limit=250&page_info=eyJwcm9kdWN0X3R5cGUiOiJXb21lbiIsImxhc3RfaWQiOjQ0OTc2Nzg5NTg2ODksImxhc3RfdmFsdWUiOiJDYXN1YWwgU2xpbSBTd2VhdGVycyIsImRpcmVjdGlvbiI6Im5leHQifQ";
...@@ -114,21 +114,36 @@ public class TestApi { ...@@ -114,21 +114,36 @@ public class TestApi {
*/ */
@Test @Test
public void linkTest() { public void linkTest() {
String link = "https://mollykitty.myshopify.com/admin/api/2020-01/products.json?vendor=%E6%B3%B0%E9%82%A6%E6%9C%8D%E9%A5%B0&limit=1&vendor=戴菊"; String link = "https://mollykitty.myshopify.com/admin/api/2020-01/products.json?vendor=%E6%B3%B0%E9%82%A6%E6%9C%8D%E9%A5%B0&limit=100&vendor=戴菊";
link = HttpRequest.get(link) link = HttpRequest.get(link)
.header("Authorization", "Basic N2YwZTA0OGFjNDAxNmI5MzU3YmIxZWIyMjE3ZTQyMDE6MWM5N2ExMjIyYzViNDBlMDU5N2M4MTZjNmRmZWNhYzA=") .header("Authorization", "Basic N2YwZTA0OGFjNDAxNmI5MzU3YmIxZWIyMjE3ZTQyMDE6MWM5N2ExMjIyYzViNDBlMDU5N2M4MTZjNmRmZWNhYzA=")
.execute().body(); .execute().body();
JSONObject json = JSONObject.fromObject(link); JSONObject json = JSONObject.fromObject(link);
JSONObject product = json.getJSONArray("products").getJSONObject(0); JSONArray productArr = json.getJSONArray("products");
String tags = product.getString("tags"); for (int j = 0; j < productArr.size(); j++) {
JSONObject product = productArr.getJSONObject(j);
JSONArray variantsArr = product.getJSONArray("variants");
for (int i = 0; i < variantsArr.size(); i++) {
JSONObject variantsObj = variantsArr.getJSONObject(i);
String compare_at_price = variantsObj.getString("compare_at_price");
if (!"null".equals(compare_at_price)) {
System.out.println(compare_at_price);
}
}
}
/*String tags = product.getString("tags");
String[] s = tags.split(","); String[] s = tags.split(",");
Console.error(Arrays.toString(s)); Console.error(Arrays.toString(s));
for (String i : s) { for (String i : s) {
if (i.indexOf("#") == 0) { if (i.indexOf("#") == 0) {
System.out.println(i); System.out.println(i);
} }
} }*/
} }
/** /**
...@@ -704,12 +719,6 @@ public class TestApi { ...@@ -704,12 +719,6 @@ public class TestApi {
return output.toByteArray(); return output.toByteArray();
} }
public static void main(String[] args) throws Exception {
String link = "https://cdn.shopify.com/s/files/1/0079/8330/0705/products/0_-9_aee971dc-5661-46bb-9d7e-11f0a3ee5b35.jpg?v=1580133539";
InputStream inputStream = getImageStream(link);
byte[] bytes = toByteArray(inputStream);
String url = OssUtil.upload(bytes, IdUtil.simpleUUID() + ".jpg", "zion");
System.out.println(url);
}
} }
...@@ -59,8 +59,8 @@ log4j.appender.slowsql.layout=org.apache.log4j.PatternLayout ...@@ -59,8 +59,8 @@ log4j.appender.slowsql.layout=org.apache.log4j.PatternLayout
log4j.appender.slowsql.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss SSS}|%5p|%F.%M:%L|%m%n log4j.appender.slowsql.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss SSS}|%5p|%F.%M:%L|%m%n
#控制台输出所有SQL #控制台输出所有SQL
#便于调试 生产环境注释 #便于调试 生产环境注释
log4j.logger.com.platform.dao=DEBUG,sql #log4j.logger.com.platform.dao=DEBUG,sql
log4j.appender.sql=org.apache.log4j.ConsoleAppender #log4j.appender.sql=org.apache.log4j.ConsoleAppender
log4j.appender.sql.Target=System.out #log4j.appender.sql.Target=System.out
log4j.appender.sql.layout=org.apache.log4j.PatternLayout #log4j.appender.sql.layout=org.apache.log4j.PatternLayout
log4j.appender.sql.layout.ConversionPattern=%m %n #log4j.appender.sql.layout.ConversionPattern=%m %n
SELECT count(*) FROM tb_cf_station_item WHERE item_category = '2fe6be991b4941608c7ebcea7091288f';
SELECT count(*) FROM tb_cf_station_item WHERE item_category = '7c0d04650ad649fd9bf6b9476947c118';
SELECT count(*) FROM tb_cf_station_item WHERE item_category = '03f2d9ab2ea44893a27d54c280233c9f';
SELECT count(*) FROM tb_cf_station_item WHERE item_category = '59a9e2c64d2a4a1696a06045f39c0166';
SELECT count(*) FROM tb_cf_station_item WHERE item_category = 'f0100ca392074027bb99da3a93625d63';
SELECT count(*) FROM tb_cf_station_item WHERE item_category = 'a777a18b4fc4423082fa843231cfc7bc';
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论