From 3376f6f47f4121ac28deab82b9d1e990a682f8bc Mon Sep 17 00:00:00 2001 From: fkf <1475794025@qq.com> Date: Wed, 17 May 2023 10:41:00 +0800 Subject: [PATCH 01/20] 5-17 111 --- .../CrawlSalesAmountService.java | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/crawlSalesAmount/CrawlSalesAmountService.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/crawlSalesAmount/CrawlSalesAmountService.java index 8b5c3ab9..4eab6509 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/crawlSalesAmount/CrawlSalesAmountService.java +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/crawlSalesAmount/CrawlSalesAmountService.java @@ -17,6 +17,8 @@ import com.yxt.supervise.dbcenter.zhj.crawl.spider.RespSalesAmount; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; +import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.*; @@ -98,18 +100,18 @@ public class CrawlSalesAmountService extends ServiceImpl map = new HashMap<>(); + Map map = null; + Double i = 0.0; for (ConfBrandProportion proportion : proportions) { - String[] split = proportion.getProportion().split("%"); - map.put(proportion.getTypeName(),record.getSalesAmount()* Double.parseDouble(split[0]) * 0.01); + map = new HashMap<>(); + Double pro = record.getSalesAmount()* Double.parseDouble(proportion.getProportion()) * 0.01; + DecimalFormat df = new DecimalFormat("#.00"); + String format = df.format(pro); + map.put(proportion.getTypeName(),proportion.getTypeName()+ ":" + format); + list.add(map); + i+=Double.parseDouble(format); } - list.add(map); record.setProportion(list); - Double i = 0.0; - for (Object value : map.values()) { - Double a = (Double)value; - i+=a; - } record.setTotalCount(i); } } From a2aa7d923ac7fae3885d1d272f3651580c190ce6 Mon Sep 17 00:00:00 2001 From: fengdong777 <1478994744@qq.com> Date: Wed, 17 May 2023 10:46:03 +0800 Subject: [PATCH 02/20] 5.17 --- .../src/api/Zhj/inquireStatistics/index.js | 11 ++ .../src/views/inquireStatistics/index.vue | 20 +-- .../src/views/parameterSet/footSet.vue | 118 ++++++++++++++---- 3 files changed, 117 insertions(+), 32 deletions(-) diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-ui/src/api/Zhj/inquireStatistics/index.js b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-ui/src/api/Zhj/inquireStatistics/index.js index c42d9bbc..cb3c2100 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-ui/src/api/Zhj/inquireStatistics/index.js +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-ui/src/api/Zhj/inquireStatistics/index.js @@ -66,4 +66,15 @@ export function selectStoreList(data) { headers: {'Content-Type': 'application/json', } }) +} +// 添加占比 +export function save(data) { + return request({ + url: '/dbCenter/proportion/save ', + data: data, + method: 'post', + headers: { + 'Content-Type': 'application/json' + } + }) } \ No newline at end of file diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-ui/src/views/inquireStatistics/index.vue b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-ui/src/views/inquireStatistics/index.vue index 32cc1b61..d0c1f964 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-ui/src/views/inquireStatistics/index.vue +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-ui/src/views/inquireStatistics/index.vue @@ -82,19 +82,22 @@ - + - + - - - - - + + - + \ No newline at end of file From 5b043da55f7f62abd3518bb7dd28de44393de8f5 Mon Sep 17 00:00:00 2001 From: liupopo Date: Wed, 17 May 2023 11:08:30 +0800 Subject: [PATCH 03/20] 1111 --- .../warehouse数据库设计文档_1.0.0.doc | 517 ++++++++++++++++++ .../docs/sheji/favicon_logosc.zip | Bin 0 -> 286829 bytes .../docs/databases/conf_brand_proportion.sql | 2 +- .../dbcenter/zhj/crawl/CrawlTask.java | 6 +- .../dbcenter/zhj/crawl/ZhjSpider.java | 2 +- .../dbcenter/zhj/crawl/ZhjSpiderConfig.java | 7 +- .../supervise/dbcenter/HttpUtilTester.java | 54 ++ .../YxtSuperviseDbcenterApplicationTests.java | 6 +- .../api/gdinventorylog/GdInventoryLog.java | 37 ++ .../gdinventorylog/GdInventoryLogQuery.java | 24 + .../api/gdinventorylog/GdInventoryLogVo.java | 8 + .../api/gdlinventorylog/GdIinventoryLog.java | 8 - .../gdlinventorylog/GdIinventoryLogVo.java | 8 - 13 files changed, 652 insertions(+), 27 deletions(-) create mode 100644 warehousing-system/warehouse数据库设计文档_1.0.0.doc create mode 100644 yxt-supervise-cyf/docs/sheji/favicon_logosc.zip create mode 100644 yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/HttpUtilTester.java create mode 100644 yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLog.java create mode 100644 yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLogQuery.java create mode 100644 yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLogVo.java delete mode 100644 yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdlinventorylog/GdIinventoryLog.java delete mode 100644 yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdlinventorylog/GdIinventoryLogVo.java diff --git a/warehousing-system/warehouse数据库设计文档_1.0.0.doc b/warehousing-system/warehouse数据库设计文档_1.0.0.doc new file mode 100644 index 00000000..f98d710a --- /dev/null +++ b/warehousing-system/warehouse数据库设计文档_1.0.0.doc @@ -0,0 +1,517 @@ + + +数据库表结构文档数据库名:warehouse文档版本:1.0.0文档描述:数据库设计文档公共字段编号名称数据类型长度小数位允许空值主键默认值说明1idint190NYid2sidSid3lockVersion版本锁4createTime创建时间5modifyTime修改时间6isEnable是否可用:1可用,0不可用7state状态8isDelete是否删除:0未删除,1已删除9remarks备注10createBySid创建人sid11updateBySid修改人sid表in_storehouse 货物入库质押申请/批准单编号名称数据类型长度小数位允许空值主键默认值说明1novarchar50编号2applicationDatedate50制单日期3custerNamevarchar50客户名称(企业)4statevarchar50审核状态5auditorvarchar50审核人6approvedDatevarchar50审核日期7approvedRemarkvarchar50审核备注表in_storehouse_listing 货物入库质押申请/批准单明细表编号名称数据类型长度小数位允许空值主键默认值说明1proNamevarchar50质物名称2proModelvarchar50规格(型号)3manufacturervarchar50生成厂家(产地)4numvarchar10数量5weightvarchar50重量6confirmedPricedecime502质权人确认的单价7calculatedValuedecime502核算的价值8locationNumbervarchar10货位号9mainSidvarchar50申请单的sid10表out_storehouse 质物解除质押出库申请/批准单编号名称数据类型长度小数位允许空值主键默认值说明1novarchar50编号2applicationDatedate50制单日期3custerNamevarchar50客户名称(企业)4statevarchar50审核状态5auditorvarchar50审核人6approvedDatevarchar50审核日期7approvedRemarkvarchar50审核备注表out_storehouse_listing 质物解除质押出库申请/批准单明细表编号名称数据类型长度小数位允许空值主键默认值说明1proNamevarchar50质物名称2proModelvarchar50规格(型号)3manufacturervarchar50生成厂家(产地)4estimateNumvarchar10预计数量5estimateWeightvarchar50预计重量6estimateConfirmedPricedecime502预计质权人确认的单价7estimateCalculatedValuedecime502预计核算的价值8realityNumvarchar10实际数量9realityWeightvarchar50实际重量10realityConfirmedPricedecime502实际质权人确认的单价11realityCalculatedValuedecime502实际核算的价值12locationNumbervarchar10货位号13mainSidvarchar50申请单的sid表stock 质物库存表编号名称数据类型长度小数位允许空值主键默认值说明1proNamevarchar50质物名称2proModelvarchar50规格(型号)3manufacturervarchar50生成厂家(产地)4numvarchar10数量5weightvarchar50重量6confirmedPricedecime502质权人确认的单价7calculatedValuedecime502核算的价值8locationNumbervarchar10货位号9custerNamevarchar50客户名称(企业)备注:台账的数据是实时最新的。问题:1、同一个出质人两次入库单的同一种商品的单价、核算的价值不一致如何处理。(台账中同一个商品出现的单价不一致的情况)2、同一个出质人两次出库单的同一种商品的预计质权人确认的单价、预计核算的价值、实际质权人确认的单价、实际核算的价值不一致如何处理。(台账中同一个商品出现的价值不一致的情况)3、出库的商品与入库的商品是不是只按照同一个客户下的同一商品名称做对应。4、出现下述情况如何处理:康师傅矿泉水1000瓶。500瓶在A货位,500瓶在B货位。填写的单子需要按照如下方式填写。质物名称规格生产厂家数量重量质权人确认的单价核算的价值货位号备注康师傅矿泉水500ML康师傅100050010001000A、B质物名称规格生产厂家数量重量质权人确认的单价核算的价值货位号备注康师傅矿泉水500ML康师傅500250500500A康师傅矿泉水500ML康师傅500250500500B入库接口格式{    "no": "202305160001",    "custerName": "国大36524",    "applicationDate": "20230516",    "listing": [        {            "proName": "康师傅矿泉水",            "proModel": "500ml",            "manufacturer": "康师傅",            "num": "1000",            "weight": "250公斤",            "locationNumber": "A货位",            "calculatedValue": "1000",            "confirmedPrice": "1000"        },        {            "proName": "康师傅矿泉水",            "proModel": "500ml",            "manufacturer": "康师傅",            "num": "1000",            "weight": "250公斤",            "locationNumber": "B货位",            "calculatedValue": "1000",            "confirmedPrice": "1000"        }    ]}5、关于包装、标记字段如何处理。关于质押物的有效期、质押期限字段。重量的单位。出库接口格式{    "no": "202305160001",    "custerName": "国大36524",    "applicationDate": "20230516",    "listing": [        {            "proName": "康师傅矿泉水",            "proModel": "500ml",            "manufacturer": "康师傅",            "estimateNum": "1000",            "estimateweight": "250公斤",            "locationNumber": "A货位",            "estimatecalculatedValue": "1000",            "estimateconfirmedPrice": "1000",            "realityCalculatedValue": "1000",            "realityConfirmedPrice": "1000",            "realityWeight": "250公斤",            "realityNum": "1000"        },        {            "proName": "康师傅矿泉水",            "proModel": "500ml",            "manufacturer": "康师傅",            "estimateNum": "1000",            "estimateweight": "250公斤",            "locationNumber": "A货位",            "estimatecalculatedValue": "1000",            "estimateconfirmedPrice": "1000",            "realityCalculatedValue": "1000",            "realityConfirmedPrice": "1000",            "realityWeight": "250公斤",            "realityNum": "1000"        }    ]}8、Apifox中的接口513453224111falsefalse3871WPS Office_11.1.0.14036_F1E327BC-269C-435d-A152-05C5408002CA02023-05-16T13:01:57ZscrewAdministrator2023-05-16T15:03:29Z数据库表结构文档22052-11.1.0.14036BC117E44EFD147ABA4B8E138AED51265_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 +TJgwvs3jp6ScePTokXrcDxg2O/P09QpRqBPz4MblS25ZlDU3dIoDVZcXikaOd2KYYqL/vHctNvlQ +AnP7fMSGyOOieduSpNGMPCVy8sXbudOFRIqsT/ZYvJMkFTI8yr91m3ETJySKSVCZ8QP99fWEWf7q +MZ2XOvk0EW/Q2EMHc4nq0+PTX3xp6h3HwOiE8T/ueo/ITZwgFZOgMmNPbFlwktq+rcdsK4qznZ8Z +3vrD1VQ9GGjnzSNilK79Z3z5211/F3eM9AJAN+t4McfX17e2tlYmyyEif38/X18fY/by9BzYZl3+ +o492W1lZubm5qa98PHjoWxtz7kaRM1WU8JaumHXgv5VEDoobl5kx8+2JHhDRlPUz/RmGIeGzc8x+ +Ng9LcGCIaMCw2QNOl1XwBjkxRES/VChIaMeQcPCgdnzYEt7IZWP4iUdaPRxGnhK59iSf+PRD5Aki +HV179WRXrWrIzzjq5Bdjxa6xsfa6/7CayKodjQEA6IBO1e4DAwMfPapmXxi5i6enZ5vbFBff9fAY +oLGSIae+o76Q3RaPbLz2g2j8pr7iV67fXuhQdpYfFN5X8zZ+p34j55hrV0js/aJ3UPxKyW6zzNnr +9JTam1SXF955Zqgquz1CQgWVGap3eXTjQkT8w7+9WCJybqopVWZs/bTNHnpNybmj2Z5zY/ws29oS +AKCLdXaodsyY0e3afuBAzza3uXu3eMqUyVqr7X1GBr18/fYLj38dM2HmY4ehH23Muelrvs/Dd2U7 +KiH2ftGJUiJ5SuSwU29rJ74gLzViUwoRMRQYt22QoDJds1ZDREQM+Yw9dFCQl3osZf/qzP3syhLR +4nBDp64pPpfxcFRkmBXqNgDwBJh0Zo6Dg4On50DD2xQXFxORh4eH9lvW3kFLP/36MwoK70sMI3x2 +zpfHvrn61tTpRj6ii0f5qScbp88cTERO/UZShY5tlINnSKUzmpcYyiv/PMRVrOtoJSkna/zMVAUc +Pb17KxuHwt8eMWRFgrJfrniGamV9VXVBX9uJeMgYAHQ7k8a9p+dABwcHw9vcvXuXiAYO1HFVUDr6 +Tmjc8/moCLbG4tyPd+nkrNjlxmYlQ04Di1ZJJGZEVCJa/H3UINWwKo8KS+8TaTVNo6TDqii9fOdk +9nfrpQsbTz6d2Ubvvo/dwHtVteRsWVtVWX7haNL3TesrR0yL8XMWlBWnBj0Tg3FaAOh+Rj/vfnDT +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 +TkSuQmCC \ No newline at end of file diff --git a/yxt-supervise-cyf/docs/sheji/favicon_logosc.zip b/yxt-supervise-cyf/docs/sheji/favicon_logosc.zip new file mode 100644 index 0000000000000000000000000000000000000000..4d0521958b87d688c4995353016be5047eaa7eb1 GIT binary patch literal 286829 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%0A`KJ)zGj1Ty@!WdsQZ$lRVpA}Vnor!zfr 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

m@ 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

IjM+_cRprA$@13gug@Pg;>b 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%0DVk)k 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 literal 0 HcmV?d00001 diff --git a/yxt-supervise-dbcenter/docs/databases/conf_brand_proportion.sql b/yxt-supervise-dbcenter/docs/databases/conf_brand_proportion.sql index 1f0a489c..079fe66a 100644 --- a/yxt-supervise-dbcenter/docs/databases/conf_brand_proportion.sql +++ b/yxt-supervise-dbcenter/docs/databases/conf_brand_proportion.sql @@ -22,7 +22,7 @@ SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- DROP TABLE IF EXISTS `conf_brand_proportion`; CREATE TABLE `conf_brand_proportion` ( - `id` int(11) NOT NULL COMMENT 'id', +`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', `brandSid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '品牌Sid', `brandName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '品牌名称', `typeName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '占比名称', diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/CrawlTask.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/CrawlTask.java index 3d98a7cb..33a5e11b 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/CrawlTask.java +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/CrawlTask.java @@ -27,13 +27,13 @@ public class CrawlTask { * 描述 : 每天上午10点30分抓取数据并保存到数据库.
*

*/ - @Scheduled(cron = "0 30 10 * * ?") + @Scheduled(cron = "0 0 5 * * ?") public void pullZhjData() { String currDay = DateUtil.format(DateUtil.offsetDay(new Date(), -1), "yyyy-MM-dd"); - String purchaseDay = DateUtil.format(DateUtil.offsetDay(new Date(), -2), "yyyy-MM-dd"); +// String purchaseDay = DateUtil.format(DateUtil.offsetDay(new Date(), -2), "yyyy-MM-dd"); ThreadUtil.execute(() -> crawlSalesAmountService.pullData(currDay)); ThreadUtil.execute(() -> crawlSalesDishesService.pullData(currDay)); - ThreadUtil.execute(() -> crawlPurchaseService.pullData(purchaseDay)); + ThreadUtil.execute(() -> crawlPurchaseService.pullData(currDay)); } } diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpider.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpider.java index 2163e981..250f7f05 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpider.java +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpider.java @@ -173,7 +173,7 @@ public class ZhjSpider { public static ZhjResp dopost(Map paramMap) { HttpRequest request = ZhjSpiderConfig.fillHeaders(HttpRequest.post(url)); String result = request.form(paramMap).execute().body(); - L.debug("param:{}######result:{}", paramMap.toString(), result); + L.info("param:{}######result:{}", paramMap.toString(), result); ZhjResp bean = JSONUtil.toBean(result, ZhjResp.class); return bean; } diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpiderConfig.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpiderConfig.java index 67b42752..2f128614 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpiderConfig.java +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpiderConfig.java @@ -25,8 +25,9 @@ public class ZhjSpiderConfig { private static void initHeaders() { CACHE_HEADERS = new HashMap<>(); - CACHE_HEADERS.put("cookie", "cna=QZ74GyioHjsCAWpxs/DlZflP; qbi_locale=zh-CN; x_login_pk=19b6a50a88ee4c8cbeacee4420345262; csrf_token=be21ee6f-fb65-4978-b58f-53bc1ad0e7a6; qbi_version=2; qbi_redirected=1; xlly_s=1; isg=BPn5lzNHubARqWVPDzIOHAr9CGXTBu24S0hh_Bss2SCfoho0YlOFiBw0JKZUGoXw"); - CACHE_HEADERS.put("x-csrf-token", "be21ee6f-fb65-4978-b58f-53bc1ad0e7a6"); - CACHE_HEADERS.put("x-gw-referer", "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto&qbi_version_param=2"); +// CACHE_HEADERS.put("cookie", "cna=QZ74GyioHjsCAWpxs/DlZflP; qbi_locale=zh-CN; x_login_pk=19b6a50a88ee4c8cbeacee4420345262; xlly_s=1; qbi_version=1; qbi_redirected=1; csrf_token=f66e628f-d681-4be5-855e-56e77886e002; isg=BIqKYOxE2qEZjVZawN-NAZ2Y23Asew7V-iD6yBTCI11JxyuB_Q3P5fXx1zMbN4Zt"); + CACHE_HEADERS.put("x-csrf-token", "f66e628f-d681-4be5-855e-56e77886e002"); + CACHE_HEADERS.put("x-gw-referer", "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto&qbi_version_param=1"); +// CACHE_HEADERS.put("x-gw-referer", "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto"); } } diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/HttpUtilTester.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/HttpUtilTester.java new file mode 100644 index 00000000..d36e99f1 --- /dev/null +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/HttpUtilTester.java @@ -0,0 +1,54 @@ +package com.yxt.supervise.dbcenter; + +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; +import cn.hutool.http.HttpUtil; +import cn.hutool.json.JSONUtil; +import com.yxt.supervise.dbcenter.zhj.crawl.ZhjSpiderConfig; +import com.yxt.supervise.dbcenter.zhj.crawl.spider.ZhjResp; +import org.junit.jupiter.api.Test; + +import java.net.HttpCookie; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class HttpUtilTester { + private static String olapQueryParam_salesAmount = "{\"componentId\":\"52dece2d-ba6d-452e-8497-f94baff096c4\",\"componentName\":\"指标看板-熟溢香支付方式_knief\",\"configs\":[{\"type\":\"field\",\"config\":{\"fields\":[{\"guid\":\"31ce439f-747c-45d0-8f35-51fe9daea91e\",\"fid\":\"5805bc15e1\",\"areaType\":\"row\"},{\"guid\":\"6e8c6afd-038a-4644-85c1-ffb813dc8614\",\"fid\":\"fa1b7a0d21\",\"areaType\":\"column\",\"aggregate\":\"sum\"}]},\"cubeId\":\"90bb4e6c-c315-465b-9c3b-74a22a0d84e6\"},{\"type\":\"paging\",\"cubeId\":\"90bb4e6c-c315-465b-9c3b-74a22a0d84e6\",\"config\":{\"limit\":1000,\"offset\":0,\"pagedByAllDim\":true}},{\"type\":\"beforeAggregateCondition\",\"cubeId\":\"90bb4e6c-c315-465b-9c3b-74a22a0d84e6\",\"config\":{\"logicalOperator\":\"AND\",\"conditions\":[{\"field\":{\"fid\":\"3fd928d207\"},\"functionalOperator\":\"in\",\"args\":[{\"valueType\":\"string\",\"value\":\"POS点餐\"},{\"valueType\":\"string\",\"value\":\"会员充值\"},{\"valueType\":\"string\",\"value\":\"扫码点餐\"},{\"valueType\":\"string\",\"value\":\"美团外卖点餐\"},{\"valueType\":\"string\",\"value\":\"饿了么外卖点餐\"}]},{\"logicalOperator\":\"AND\",\"conditions\":[{\"field\":{\"fid\":\"15784307a1\",\"dateTrunc\":\"day\"},\"functionalOperator\":\"greaterThanOrEqual\",\"args\":[{\"valueType\":\"string\",\"value\":\"VAR_DATE_STR\"}]},{\"field\":{\"fid\":\"15784307a1\",\"dateTrunc\":\"day\"},\"functionalOperator\":\"lessThanOrEqual\",\"args\":[{\"valueType\":\"string\",\"value\":\"VAR_DATE_STR\"}]}]}]}},{\"type\":\"queryConfig\",\"cubeId\":\"90bb4e6c-c315-465b-9c3b-74a22a0d84e6\",\"config\":{\"needCount\":false,\"queryCount\":false,\"queryDetail\":false}},{\"type\":\"advancedParam\",\"cubeId\":\"90bb4e6c-c315-465b-9c3b-74a22a0d84e6\",\"config\":{\"autoInsightParam\":{\"enable\":false},\"wordCloudParam\":{},\"summarizeParams\":[],\"trendLineParams\":[],\"forecastParams\":[],\"anomalyDetectionParams\":[],\"clusteringParams\":[],\"groupParam\":null}},{\"type\":\"annotationParam\",\"cubeId\":\"90bb4e6c-c315-465b-9c3b-74a22a0d84e6\",\"config\":{\"measureThresholdParams\":[],\"inflectionPointParams\":[]}}],\"dataType\":\"general\",\"reportId\":\"85c4af04-1910-4005-8e47-742af1acb713\"}"; + private static String reportId = "85c4af04-1910-4005-8e47-742af1acb713"; + + private static String urla = "https://bi.aliyuncs.com/api/v2/biPlatform/query/byQueryParam"; + @Test + void sptest() { + + String url = "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto"; + + HttpRequest request = HttpRequest.get(url); + HttpResponse execute = request.execute(); + Map mm = new HashMap<>(); + List cookies = execute.getCookies(); + for (HttpCookie c : cookies ) { + String name = c.getName(); + String value = c.getValue(); + mm.put(name,value); + } + System.out.println(); + + + String olapQueryParam = olapQueryParam_salesAmount.replace("VAR_DATE_STR", "2023-055-13"); + String componentId = "52dece2d-ba6d-452e-8497-f94baff096c4"; + Map paramMap = new HashMap<>(); + paramMap.put("olapQueryParam", olapQueryParam); + paramMap.put("componentId", componentId); + paramMap.put("reportId", reportId); + paramMap.put("componentType", "66"); + + String result = HttpRequest.post(urla) + .header("cookie", "cna=QZ74GyioHjsCAWpxs/DlZflP; qbi_locale=zh-CN; x_login_pk="+mm.get("x_login_pk")+"; qbi_version=1; csrf_token=hello123456") + .header("x-csrf-token", "hello123456") + .header("x-gw-referer", "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto&qbi_version_param=1") + .form(paramMap).execute().body(); + + System.out.println( result); + } +} diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/YxtSuperviseDbcenterApplicationTests.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/YxtSuperviseDbcenterApplicationTests.java index ef9f7576..f9a95b87 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/YxtSuperviseDbcenterApplicationTests.java +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/YxtSuperviseDbcenterApplicationTests.java @@ -24,10 +24,10 @@ class YxtSuperviseDbcenterApplicationTests { @Test void contextLoads() { - String currDay = "2023-05-11"; + String currDay = "2023-05-13"; -// crawlSalesAmountService.pullData(currDay); - crawlSalesDishesService.pullData(currDay); + crawlSalesAmountService.pullData(currDay); +// crawlSalesDishesService.pullData(currDay); // crawlPurchaseService.pullData(currDay); } diff --git a/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLog.java b/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLog.java new file mode 100644 index 00000000..727267c8 --- /dev/null +++ b/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLog.java @@ -0,0 +1,37 @@ +package com.yxt.supervise.customer.api.gdinventorylog; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.domain.EntityWithId; +import lombok.Data; + +import java.util.Date; + +/** + * @author wangpengfei + * @date 2023/4/24 13:45 + */ +@Data +@TableName("gd_inventory_log") +public class GdInventoryLog extends EntityWithId { + + public GdInventoryLog() { + } + + public GdInventoryLog(String fileFullPath) { + this.fileFullPath = fileFullPath; + } + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date createTime = new Date(); // 记录创建时间/ + private String remarks; // 备注说明/ + private String fileFullPath; // 文件完整路径/ + private String outFilePath; // 汇总文件路径 + // private String outfile; //输出文件名 + private String fileUrl; //文件下载地址 + private int allNum; // 总记录数/ + private int validNum; // 有效记录数/ + private long durations; // 程序运行时长/ + private int errRowNum; // 出错的条数/ + private String orderDate; // 单据日期 +} diff --git a/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLogQuery.java b/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLogQuery.java new file mode 100644 index 00000000..08bb10e5 --- /dev/null +++ b/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLogQuery.java @@ -0,0 +1,24 @@ +package com.yxt.supervise.customer.api.gdinventorylog; + +import com.yxt.common.core.query.Query; + +public class GdInventoryLogQuery implements Query { + private String dataDateStart; // 数据日期 + private String dataDateEnd; // 数据日期 + + public String getDataDateStart() { + return dataDateStart; + } + + public void setDataDateStart(String dataDateStart) { + this.dataDateStart = dataDateStart; + } + + public String getDataDateEnd() { + return dataDateEnd; + } + + public void setDataDateEnd(String dataDateEnd) { + this.dataDateEnd = dataDateEnd; + } +} diff --git a/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLogVo.java b/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLogVo.java new file mode 100644 index 00000000..0a043b0c --- /dev/null +++ b/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdinventorylog/GdInventoryLogVo.java @@ -0,0 +1,8 @@ +package com.yxt.supervise.customer.api.gdinventorylog; + +/** + * @author wangpengfei + * @date 2023/4/24 13:46 + */ +public class GdInventoryLogVo { +} diff --git a/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdlinventorylog/GdIinventoryLog.java b/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdlinventorylog/GdIinventoryLog.java deleted file mode 100644 index 8416da72..00000000 --- a/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdlinventorylog/GdIinventoryLog.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.yxt.supervise.customer.api.gdlinventorylog; - -/** - * @author wangpengfei - * @date 2023/4/24 13:45 - */ -public class GdIinventoryLog { -} diff --git a/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdlinventorylog/GdIinventoryLogVo.java b/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdlinventorylog/GdIinventoryLogVo.java deleted file mode 100644 index eeb4c08a..00000000 --- a/yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/gdlinventorylog/GdIinventoryLogVo.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.yxt.supervise.customer.api.gdlinventorylog; - -/** - * @author wangpengfei - * @date 2023/4/24 13:46 - */ -public class GdIinventoryLogVo { -} From a293fb065077ce7085599dfc4ee35c87336e80d0 Mon Sep 17 00:00:00 2001 From: fkf <1475794025@qq.com> Date: Wed, 17 May 2023 16:16:59 +0800 Subject: [PATCH 04/20] =?UTF-8?q?=E5=8F=82=E6=95=B0=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=93=81=E7=89=8C=E4=BF=AE=E6=94=B9=205-17?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ConfBrandProportionMapper.java | 2 +- .../ConfBrandProportionMapper.xml | 2 +- .../ConfBrandProportionService.java | 18 ++++++++++++++++-- .../zhj/crawl/biz/enpBrand/EnpBrand.java | 14 ++++++++++++++ 4 files changed, 32 insertions(+), 4 deletions(-) diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/confBrandProportion/ConfBrandProportionMapper.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/confBrandProportion/ConfBrandProportionMapper.java index 70604900..8e4b02a5 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/confBrandProportion/ConfBrandProportionMapper.java +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/confBrandProportion/ConfBrandProportionMapper.java @@ -13,7 +13,7 @@ import java.util.List; @Mapper public interface ConfBrandProportionMapper extends BaseMapper { - List selectConfBrandProportionList(); + List selectConfBrandProportionList(@Param("brandSid") String brandSid); List selectBrandProportionByBrandName(@Param("brandName") String brandName); } diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/confBrandProportion/ConfBrandProportionMapper.xml b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/confBrandProportion/ConfBrandProportionMapper.xml index 200ca5dc..a9b5a2c5 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/confBrandProportion/ConfBrandProportionMapper.xml +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/biz/confBrandProportion/ConfBrandProportionMapper.xml @@ -2,7 +2,7 @@ + select r.*,f.url,t.number,t.inventory from crude_oil_inventory_record r + inner join crude_oil_record_file f on r.sid = f.mainSid + inner join tank_information t on r.tankSid = t.sid + where r.sid = #{sid} + \ No newline at end of file diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilinventoryrecord/CrudeOilInventoryRecordRest.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilinventoryrecord/CrudeOilInventoryRecordRest.java index 295ca2ef..5010dca8 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilinventoryrecord/CrudeOilInventoryRecordRest.java +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilinventoryrecord/CrudeOilInventoryRecordRest.java @@ -33,4 +33,10 @@ public class CrudeOilInventoryRecordRest { public ResultBean save (@RequestBody CrudeOilInventoryRecordDto dto){ return CrudeOilInventoryRecordService.save(dto); } + + @ApiOperation("查询油罐库存详细信息") + @GetMapping("/selectRecordBySid/{sid}") + public ResultBean selectRecordBySid(@PathVariable String sid){ + return CrudeOilInventoryRecordService.selectRecordBySid(sid); + } } diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilinventoryrecord/CrudeOilInventoryRecordService.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilinventoryrecord/CrudeOilInventoryRecordService.java index 16ccf006..be6f0ca6 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilinventoryrecord/CrudeOilInventoryRecordService.java +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilinventoryrecord/CrudeOilInventoryRecordService.java @@ -90,4 +90,10 @@ public class CrudeOilInventoryRecordService extends MybatisBaseService().eq("sid",sid)); return rb.success().setMsg("删除成功"); } + + public ResultBean selectRecordBySid(String sid){ + ResultBean rb = ResultBean.fireFail(); + CrudeOilInventoryRecord crudeOilInventoryRecord = baseMapper.selectRecordBySid(sid); + return rb.success().setData(crudeOilInventoryRecord); + } } diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoiloutbound/CrudeOilOutboundMapper.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoiloutbound/CrudeOilOutboundMapper.java index e6585c19..b24ef000 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoiloutbound/CrudeOilOutboundMapper.java +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoiloutbound/CrudeOilOutboundMapper.java @@ -20,7 +20,9 @@ import java.util.Map; @Mapper public interface CrudeOilOutboundMapper extends BaseMapper { IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); - @Select("select * from crude_oil_outbound where sid=#{sid}") + + @Select("select o.*,f.url from crude_oil_outbound o inner join crude_oil_outbound_file f on o.sid = f.mainSid where o.sid=#{sid}") CrudeOilOutbound getCrudeBySid(@Param("sid")String sid); + void insertCrudeOilFiles(List> maps); } diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoiloutbound/CrudeOilOutboundRest.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoiloutbound/CrudeOilOutboundRest.java index c26ccabd..cb3a4aad 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoiloutbound/CrudeOilOutboundRest.java +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoiloutbound/CrudeOilOutboundRest.java @@ -34,6 +34,7 @@ public class CrudeOilOutboundRest { public ResultBean save (@RequestBody CrudeOilOutboundDto dto){ return CrudeOilOutboundService.save(dto); } + @ApiOperation("根据sid查询") @GetMapping("/getCrudeBySid/{sid}") public ResultBean getTankBySid(@PathVariable String sid){ diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java index 00a44ca9..9dd8622b 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageMapper.java @@ -20,7 +20,12 @@ import java.util.Map; @Mapper public interface CrudeOilStorageMapper extends BaseMapper { IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + @Select("select * from crude_oil_type_information where sid=#{sid}") CrudeOilStorage getCrudeBySid(@Param("sid")String sid); + void insertCrudeOilFiles(List> maps); + + @Select("select s.*,f.url from crude_oil_storage s inner join crude_oil_storage_file f on s.sid = f.mainSid where s.sid = #{sid}") + CrudeOilStorage selectStorageBySid(@Param("sid") String sid); } diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageRest.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageRest.java index 8e4365bc..80e979c8 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageRest.java +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageRest.java @@ -41,4 +41,9 @@ public class CrudeOilStorageRest { return CrudeOilStorageService.getCrudeBySid(sid); } + @ApiOperation("查询原油入库详细信息") + @GetMapping("/selectStorageBySid/{sid}") + public ResultBean selectStorageBySid(@PathVariable String sid){ + return CrudeOilStorageService.selectStorageBySid(sid); + } } diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java index d69082c9..e80c43aa 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/crudeoilstorage/CrudeOilStorageService.java @@ -96,4 +96,10 @@ public class CrudeOilStorageService extends MybatisBaseService().eq("sid",sid)); return rb.success().setMsg("删除成功"); } + + public ResultBean selectStorageBySid(String sid){ + ResultBean rb = new ResultBean(); + CrudeOilStorage crudeOilStorage = baseMapper.selectStorageBySid(sid); + return rb.success().setData(crudeOilStorage); + } } From 9bd192ab69d250f7325996b172c7cd25b52097c6 Mon Sep 17 00:00:00 2001 From: fkf <1475794025@qq.com> Date: Fri, 19 May 2023 08:40:52 +0800 Subject: [PATCH 17/20] =?UTF-8?q?=E6=8B=A6=E6=88=AA=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java index 1c8700df..3940ea9c 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java @@ -17,8 +17,8 @@ public class SaTokenConfigure implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { // 注册 Sa-Token 拦截器,校验规则为 StpUtil.checkLogin() 登录校验。 -// registry.addInterceptor(new SaInterceptor(handle -> StpUtil.checkLogin())) -// .addPathPatterns("/**") -// .excludePathPatterns("/cyf/sys/doLogin").excludePathPatterns("/cyf/app/sys/doLogin"); + registry.addInterceptor(new SaInterceptor(handle -> StpUtil.checkLogin())) + .addPathPatterns("/**") + .excludePathPatterns("/cyf/sys/doLogin").excludePathPatterns("/cyf/app/sys/doLogin"); } } From b6be342f27cf77db262aa80d7436b20542656d0e Mon Sep 17 00:00:00 2001 From: wangpengfei <1928057482@qq.com> Date: Fri, 19 May 2023 13:40:21 +0800 Subject: [PATCH 18/20] =?UTF-8?q?app=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cyf/api/appversion/AppVersion.java | 32 ++ .../api/appversion/AppVersionDetailsVo.java | 21 + .../cyf/api/appversion/AppVersionDto.java | 21 + .../cyf/api/appversion/AppVersionVo.java | 21 + .../yxt-supervise-cyf-biz/pom.xml | 10 + .../cyf/app/appversion/AppVersionMapper.java | 20 + .../cyf/app/appversion/AppVersionMapper.xml | 19 + .../cyf/app/appversion/AppVersionRest.java | 248 +++++++++++ .../cyf/app/appversion/AppVersionService.java | 38 ++ .../com/yxt/supervise/cyf/util/JsonUtils.java | 418 ++++++++++++++++++ .../cyf/util/JsonValueProcessorImpl.java | 49 ++ .../com/yxt/supervise/cyf/util/MyModule.java | 10 + .../cyf/util/PropertyFilterMixIn.java | 8 + .../yxt/supervise/cyf/util/TimeSecound.java | 23 + .../supervise/cyf/util/ValidatorUtils.java | 200 +++++++++ 15 files changed, 1138 insertions(+) create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersion.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionDetailsVo.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionDto.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionVo.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionMapper.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionMapper.xml create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionRest.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionService.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/JsonUtils.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/JsonValueProcessorImpl.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/MyModule.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/PropertyFilterMixIn.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/TimeSecound.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/ValidatorUtils.java diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersion.java b/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersion.java new file mode 100644 index 00000000..c7899d07 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersion.java @@ -0,0 +1,32 @@ +package com.yxt.supervise.cyf.api.appversion; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import lombok.Data; + +import java.io.Serializable; + +/** + * Created with IntelliJ IDEA. + * + * @Auther: dimengzhe + * @Date: 2020/06/15/11:08 + * @Description: + */ +@Data +@TableName("app_version") +public class AppVersion extends BaseEntity { + private static final long serialVersionUID = -1024009882612883351L; + + + private String appName;//应用名称 + private Integer versionCode;//版本编码 + private String versionName;//版本号 + private String downloadUrl;//下载地址 + private String versionInfo;//版本描述 + private Integer isAlpha;//是否内测:0否,1是 + private String fileName; + private boolean forceUpdate; +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionDetailsVo.java b/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionDetailsVo.java new file mode 100644 index 00000000..a0026833 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionDetailsVo.java @@ -0,0 +1,21 @@ +package com.yxt.supervise.cyf.api.appversion; + +import com.yxt.common.core.vo.Vo; +import lombok.Data; + +/** + * @author wangpengfei + * @date 2023/5/19 9:55 + */ +@Data +public class AppVersionDetailsVo implements Vo { + private String id; + private String appName;//应用名称 + private Integer versionCode;//版本编码 + private String versionName;//版本号 + private String downloadUrl;//下载地址 + private String versionInfo;//版本描述 + private Integer isAlpha;//是否内测:0否,1是 + private String fileName; + private boolean forceUpdate; +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionDto.java b/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionDto.java new file mode 100644 index 00000000..d591fabd --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionDto.java @@ -0,0 +1,21 @@ +package com.yxt.supervise.cyf.api.appversion; + +import com.yxt.common.core.dto.Dto; +import lombok.Data; + +/** + * @author wangpengfei + * @date 2023/5/19 9:55 + */ +@Data +public class AppVersionDto implements Dto { + private String id; + private String appName;//应用名称 + private Integer versionCode;//版本编码 + private String versionName;//版本号 + private String downloadUrl;//下载地址 + private String versionInfo;//版本描述 + private Integer isAlpha;//是否内测:0否,1是 + private String fileName; + private boolean forceUpdate; +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionVo.java b/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionVo.java new file mode 100644 index 00000000..68123273 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-api/src/main/java/com/yxt/supervise/cyf/api/appversion/AppVersionVo.java @@ -0,0 +1,21 @@ +package com.yxt.supervise.cyf.api.appversion; + +import com.yxt.common.core.vo.Vo; +import lombok.Data; + +/** + * @author wangpengfei + * @date 2023/5/19 9:55 + */ +@Data +public class AppVersionVo implements Vo { + private String id; + private String appName;//应用名称 + private Integer versionCode;//版本编码 + private String versionName;//版本号 + private String downloadUrl;//下载地址 + private String versionInfo;//版本描述 + private Integer isAlpha;//是否内测:0否,1是 + private String fileName; + private boolean forceUpdate; +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/pom.xml b/yxt-supervise-cyf/yxt-supervise-cyf-biz/pom.xml index e5c9817f..4734f52b 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/pom.xml +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/pom.xml @@ -59,6 +59,16 @@ 1.34.0 + + net.sf.json-lib + json-lib + jdk15 + 2.4 + + + org.projectlombok + lombok + diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionMapper.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionMapper.java new file mode 100644 index 00000000..1ad8cf9b --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionMapper.java @@ -0,0 +1,20 @@ +package com.yxt.supervise.cyf.app.appversion; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yxt.supervise.cyf.api.appversion.AppVersion; +import org.apache.ibatis.annotations.Mapper; + +/** + * Created with IntelliJ IDEA. + * + * @Auther: dimengzhe + * @Date: 2020/06/15/11:24 + * @Description: + */ +@Mapper +public interface AppVersionMapper extends BaseMapper { + + AppVersion getAll(); + + AppVersion selectAppVersion(); +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionMapper.xml b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionMapper.xml new file mode 100644 index 00000000..0610b2c6 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionMapper.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionRest.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionRest.java new file mode 100644 index 00000000..8a6585c3 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionRest.java @@ -0,0 +1,248 @@ +package com.yxt.supervise.cyf.app.appversion; + + +import com.yxt.common.core.result.ResultBean; +import com.yxt.supervise.cyf.api.appversion.AppVersion; +import com.yxt.supervise.cyf.api.appversion.AppVersionDto; +import com.yxt.supervise.cyf.util.JsonUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import java.io.*; +import java.util.HashMap; +import java.util.Map; + +/** + * Created with IntelliJ IDEA. + * + * @Auther: dimengzhe + * @Date: 2020/06/15/10:43 + * @Description: 更新apk + */ +@Controller +@RequestMapping("cyf/appVersion") +public class AppVersionRest { + + private String uploadUrl = "http://www.yyundong.com:8083/api/appVersion/download"; +// private String uploadUrl = "http://26077a35f5.wicp.vip:43609/api/appVersion/download"; + + @Autowired + private AppVersionService appVersionService; + + public ResultBean save(AppVersionDto dto){ + //dto.setDownloadUrl(); + return appVersionService.save(dto); + } + + // 文件下载相关代码 + @RequestMapping("/download") + public Object downloadFile(HttpServletRequest request, HttpServletResponse response) + throws UnsupportedEncodingException { + String fileName = request.getParameter("fileName"); + if (fileName != null) { + // 设置文件路径 + String realPath = "D:/mallplus_project/upload/apks"; + File file = new File(realPath, fileName); + if (file.exists()) { + response.setContentType("application/octet-stream"); + response.addHeader("Content-Disposition", + "attachment;fileName=" + java.net.URLEncoder.encode(fileName, "UTF-8"));// 设置文件名 + byte[] buffer = new byte[1024];// 创建数据缓冲区 + FileInputStream fis = null;// 文件输入流 + BufferedInputStream bis = null; + OutputStream os = null; // 输出流 + byte[] bytes = null; + ByteArrayOutputStream baos = null; + try { + os = response.getOutputStream(); + fis = new FileInputStream(file); + bis = new BufferedInputStream(fis); + baos = new ByteArrayOutputStream(); + int len; + while ((len = fis.read(buffer)) != -1) { + baos.write(buffer, 0, len); + } + bytes = baos.toByteArray(); + response.setContentLength(bytes.length); + os.write(bytes, 0, bytes.length); + os.flush(); + System.out.println("success"); + } catch (Exception e) { + e.printStackTrace(); + } finally { + if (bis != null) { + try { + bis.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + if (fis != null) { + try { + fis.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } + } + return null; + } + +// @RequestMapping(value = "/versioninfo1") +// @ResponseBody +// public Object appVersion1(HttpServletRequest request) { +// Map map = new HashMap(); +// int versionCode = 1;// 版本编码 +// String defUrl = ""; +// String downloadUrl = "";// apk下载地址 +// String versionName = "";// 版本号 +// String versionInfo = "";// 版本的更新描述 +// String fileName = "";// apk名称 +// int isAlpha = 0;//是否内测,0否,1是 +// String userName = request.getParameter("userName");//会员账号 +// // 根据会员账号查询账号信息 +// UmsMember umsMember = iUmsMemberService.getByUsername(userName); +// HttpSession session = request.getSession(); +// if (umsMember == null) { +// // 查询版本记录未删除及为正式版的版本记录 +// AppVersion av = appVersionService.getAll(); +// if (null == av) {// 如果没有正式版的版本记录 +// defUrl = uploadUrl; +// av = new AppVersion(); +// av.setVersionCode(1); +// av.setDownloadUrl(defUrl); +// versionCode = av.getVersionCode(); +// downloadUrl = defUrl; +// isAlpha = 0; +// } else { +// versionCode = av.getVersionCode();// 版本编码 +// versionName = av.getVersionName();// 版本名称即版本号 +// fileName = av.getFileName(); +// session.setAttribute("fileName", fileName); +// versionInfo = av.getVersionInfo();// 版本的更新描述 +// defUrl = av.getDownloadUrl();// apk下载地址 +// downloadUrl = uploadUrl+"?fileName=" + fileName; +// isAlpha = av.getIsAlpha();// 是否为内测版本 +// } +// } else {// 若member不为null,则版本可以分为内测人员和非内测人员 +// int isAlphaUser = umsMember.getIsAlphaUser(); +// if (isAlphaUser != 0) {//若人员是内测人员,则查询是否有内测版本 +// AppVersion av = appVersionService.selectAppVersion();// 内测版本 +// AppVersion av2 = appVersionService.getAll();// 正式版本 +// if (null == av) {// 若内测版本为null +// defUrl = uploadUrl; +// // defUrl默认地址需要改config配置文件 +// av = new AppVersion(); +// av.setVersionCode(2); +// av.setDownloadUrl(defUrl); +// versionCode = av.getVersionCode(); +// downloadUrl = defUrl; +// isAlpha = 0; +// } else {// 若有内测版本 +// if (av2 != null) {// 若有正式版本 +// if (av2.getVersionCode() > av.getVersionCode()) {// 若正式版本编码>内测版本的版本编码 +// versionCode = av2.getVersionCode();// 正式版本的编码 +// versionName = av2.getVersionName(); +// versionInfo = av2.getVersionInfo(); +// defUrl = av2.getDownloadUrl(); +// fileName = av.getFileName(); +// session.setAttribute("fileName", fileName); +// downloadUrl = uploadUrl+"?fileName=" + fileName; +// isAlpha = av2.getIsAlpha(); +// } else { +// versionCode = av.getVersionCode();// 内测版本编码 +// versionName = av.getVersionName();// 版本号 +// versionInfo = av.getVersionInfo();// 版本的更新描述 +// defUrl = av.getDownloadUrl();// apk下载地址 +// fileName = av.getFileName(); +// session.setAttribute("fileName", fileName); +// downloadUrl = uploadUrl+"?fileName=" + fileName; +// isAlpha = av.getIsAlpha(); +// } +// } else { +// versionCode = av.getVersionCode();// 内测版本编码 +// versionName = av.getVersionName();// 版本号 +// versionInfo = av.getVersionInfo();// 版本的更新描述 +// defUrl = av.getDownloadUrl();// apk下载地址 +// fileName = av.getFileName(); +// session.setAttribute("fileName", fileName); +// downloadUrl = uploadUrl+"?fileName=" + fileName; +// isAlpha = av.getIsAlpha(); +// } +// } +// } else {// 如果不是内测人员 +// AppVersion av = appVersionService.getAll();// 正式版本倒序第一个 +// if (null == av) {//正式版本为null +// defUrl = uploadUrl; +// av = new AppVersion(); +// av.setVersionCode(1);// 将版本编码设置为2 +// av.setDownloadUrl(defUrl);// 将下载地址设置为默认地址 +// versionCode = av.getVersionCode(); +// downloadUrl = defUrl; +// isAlpha = 0; +// } else { +// versionCode = av.getVersionCode(); +// versionName = av.getVersionName(); +// versionInfo = av.getVersionInfo(); +// defUrl = av.getDownloadUrl(); +// fileName = av.getFileName(); +// session.setAttribute("fileName", fileName); +// downloadUrl = uploadUrl+"?fileName=" + fileName; +// isAlpha = av.getIsAlpha(); +// } +// +// } +// } +// +// AppVersion appVersion = new AppVersion(); +// appVersion.setDownloadUrl(downloadUrl); //apk下载地址新 +// appVersion.setVersionCode(versionCode);//版本编码 +// appVersion.setVersionInfo(versionInfo);//版本的更新的描述 +// appVersion.setVersionName(versionName);//版本号 +// appVersion.setFileName(fileName);//应用名称 +// appVersion.setForceUpdate(false); +// String appVersionNew = JsonUtils.objectToJson(appVersion); +// return new ResultBean().success().setData(appVersionNew); +// } + + @RequestMapping(value = "/versioninfo") + @ResponseBody + public Object appVersion(HttpServletRequest request) { + Map map = new HashMap(); + int versionCode = 101;// 版本编码 + String versionName = "101";// 版本号 + String downloadUrl = "";// apk下载地址 + String versionInfo = "";// 版本的更新描述 + String fileName = "";// apk名称 + int isAlpha = 0;//是否内测,0否,1是 + + AppVersion appVersion = new AppVersion(); + appVersion.setVersionCode(versionCode);//版本编码 + appVersion.setVersionName(versionName);//版本号 + appVersion.setDownloadUrl(downloadUrl); //apk下载地址新 + appVersion.setVersionInfo(versionInfo);//版本的更新的描述 + appVersion.setFileName(fileName);//应用名称 + appVersion.setForceUpdate(false); + + // 查询版本记录未删除及为正式版的版本记录 + AppVersion av = appVersionService.getAll(); + if (null != av) {// 如果有正式版的版本记录 + appVersion.setVersionCode(av.getVersionCode());//版本编码 + appVersion.setVersionName(av.getVersionName());//版本号 + appVersion.setDownloadUrl(av.getDownloadUrl()); //apk下载地址新 + appVersion.setVersionInfo(av.getVersionInfo());//版本的更新的描述 + appVersion.setFileName(av.getFileName());//应用名称 + } + + String appVersionNew = JsonUtils.objectToJson(appVersion); + + return new ResultBean().success().setData(appVersionNew); + } +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionService.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionService.java new file mode 100644 index 00000000..3fdbbf94 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/appversion/AppVersionService.java @@ -0,0 +1,38 @@ +package com.yxt.supervise.cyf.app.appversion; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.extension.service.IService; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.core.domain.BaseEntity; +import com.yxt.common.core.result.ResultBean; +import com.yxt.supervise.cyf.api.appversion.AppVersion; +import com.yxt.supervise.cyf.api.appversion.AppVersionDto; +import org.springframework.stereotype.Service; + +/** + * Created with IntelliJ IDEA. + * + * @Auther: dimengzhe + * @Date: 2020/06/15/11:17 + * @Description: 版本更新 + */ +@Service +public class AppVersionService extends MybatisBaseService { + + public ResultBean save(AppVersionDto dto){ + AppVersion entity=new AppVersion(); + BeanUtil.copyProperties(dto, entity); + return new ResultBean().success().setMsg("新增成功"); + }; + /** + * 查询apk版本中正式版本按版本编码倒叙排序 + * @return + */ + public AppVersion getAll(){ + return baseMapper.getAll(); + }; + + public AppVersion selectAppVersion(){ + return baseMapper.selectAppVersion(); + } +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/JsonUtils.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/JsonUtils.java new file mode 100644 index 00000000..0d296e72 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/JsonUtils.java @@ -0,0 +1,418 @@ +package com.yxt.supervise.cyf.util; + +import com.fasterxml.jackson.annotation.JsonFilter; +import com.fasterxml.jackson.core.JsonParseException; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.*; +import com.fasterxml.jackson.databind.ser.FilterProvider; +import com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter; +import com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider; +import com.google.common.collect.Lists; +import com.google.common.collect.Maps; +import lombok.extern.slf4j.Slf4j; +import net.sf.json.JsonConfig; +import net.sf.json.util.PropertyFilter; +import org.springframework.core.annotation.AnnotationUtils; +import org.springframework.util.StringUtils; + +import java.io.IOException; +import java.io.OutputStream; +import java.text.SimpleDateFormat; +import java.util.*; + +/** + * json对象映射工具类之jackson封装 + */ +@Slf4j +public class JsonUtils { + + private static ObjectMapper objectMapper = null; + + static { + objectMapper = new ObjectMapper(); + // 设置默认日期格式 + objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")); + // 提供其它默认设置 + objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); + objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + objectMapper.setFilters(new SimpleFilterProvider() + .setFailOnUnknownId(false)); + objectMapper.registerModule(new MyModule()); + } + + /** + * 将对象转换成json字符串格式(默认将转换所有的属性) + * + * @param value + * @return + */ + public static String toJsonStr(Object value) { + try { + return objectMapper.writeValueAsString(value); + } catch (JsonProcessingException e) { + log.error("Json转换失败", e); + throw new RuntimeException(e); + } + } + + /** + * 将对象转换成json字符串格式 + * + * @param value 需要转换的对象 + * @param properties 需要转换的属性 + */ + public static String toJsonStr(Object value, String[] properties) { + try { + SimpleBeanPropertyFilter sbp = SimpleBeanPropertyFilter + .filterOutAllExcept(properties); + FilterProvider filterProvider = new SimpleFilterProvider() + .addFilter("propertyFilterMixIn", sbp); + return objectMapper.writer(filterProvider) + .writeValueAsString(value); + } catch (Exception e) { + log.error("Json转换失败", e); + throw new RuntimeException(e); + } + + } + + /** + * 将对象转换成json字符串格式 + * + * @param value 需要转换的对象 + * @param properties2Exclude 需要排除的属性 + */ + public static String toJsonStrWithExcludeProperties(Object value, + String[] properties2Exclude) { + try { + SimpleBeanPropertyFilter sbp = SimpleBeanPropertyFilter + .serializeAllExcept(properties2Exclude); + FilterProvider filterProvider = new SimpleFilterProvider() + .addFilter("propertyFilterMixIn", sbp); + return objectMapper.writer(filterProvider) + .writeValueAsString(value); + } catch (Exception e) { + log.error("Json转换失败", e); + throw new RuntimeException(e); + } + + } + + /** + * 将对象json格式直接写出到流对象中(默认将转换所有的属性) + * + * @param out + * @return + */ + public static void writeJsonStr(OutputStream out, Object value) { + try { + objectMapper.writeValue(out, value); + } catch (Exception e) { + log.error("Json转换失败", e); + throw new RuntimeException(e); + } + } + + /** + * 将对象json格式直接写出到流对象中 + * + * @param value 需要转换的对象(注意,需要在要转换的对象中定义JsonFilter注解) + * @param properties 需要转换的属性 + */ + public static void writeJsonStr(OutputStream out, Object value, + String[] properties) { + + try { + objectMapper.writer( + new SimpleFilterProvider().addFilter( + AnnotationUtils + .getValue( + AnnotationUtils.findAnnotation( + value.getClass(), + JsonFilter.class)) + .toString(), SimpleBeanPropertyFilter + .filterOutAllExcept(properties))) + .writeValue(out, value); + } catch (Exception e) { + log.error("Json转换失败", e); + throw new RuntimeException(e); + } + + } + + /** + * 将对象转换成json字符串格式 + * + * @param value 需要转换的对象 + * @param properties2Exclude 需要排除的属性(注意,需要在要转换的对象中定义JsonFilter注解) + */ + public static void writeJsonStrWithExcludeProperties(OutputStream out, + Object value, String[] properties2Exclude) { + try { + objectMapper.writer( + new SimpleFilterProvider().addFilter( + AnnotationUtils + .getValue( + AnnotationUtils.findAnnotation( + value.getClass(), + JsonFilter.class)) + .toString(), SimpleBeanPropertyFilter + .serializeAllExcept(properties2Exclude))) + .writeValue(out, value); + } catch (Exception e) { + log.error("Json转换失败", e); + throw new RuntimeException(e); + } + + } + + /** + * 反序列化POJO或简单Collection如List. + *

+ * 如果JSON字符串为Null或"null"字符串, 返回Null. 如果JSON字符串为"[]", 返回空集合. + *

+ * 如需反序列化复杂Collection如List, 请使用fromJson(String, JavaType) + */ + public static T fromJson(String jsonString, Class clazz) { + if (StringUtils.isEmpty(jsonString)) { + return null; + } + + try { + return objectMapper.readValue(jsonString, clazz); + } catch (IOException e) { + log.warn("parse json string error:" + jsonString, e); + return null; + } + } + + @SuppressWarnings({"unchecked", "unused"}) + public static List readJsonList(String jsondata, Object object) { + try { + List> list = objectMapper.readValue( + jsondata, List.class); + + List objects = Lists.newArrayList(); + System.out.println(list.size()); + for (int i = 0; i < list.size(); i++) { + Map map = list.get(i); + Set set = map.keySet(); + for (Iterator it = set.iterator(); it.hasNext(); ) { + String key = it.next(); + System.out.println(key + ":" + map.get(key)); + } + } + } catch (JsonParseException e) { + e.printStackTrace(); + } catch (JsonMappingException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + return null; + } + + + /** + * 单独解析某一个json的key值 + * + * @param @param jsonText + * @param @param key + * @param @return 设定文件 + * @return JsonNode 返回类型 + * @throws + * @Title: getjsonvalue + * @Description: TODO(这里用一句话描述这个方法的作用) + */ + public static JsonNode getjsonvalue(String jsonText, String key) { + + try { + ObjectMapper mapper = new ObjectMapper(); + JsonNode rootNode = mapper.readTree(jsonText); // 读取Json + + return rootNode.path(key); + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + + public static JavaType getCollectionType(Class collectionClass, Class... elementClasses) { + ObjectMapper mapper = new ObjectMapper(); + return mapper.getTypeFactory().constructParametricType(collectionClass, elementClasses); + } + + public static List json2list(String jsonArrayStr, Class clazz) throws Exception { + List> list = (List) objectMapper.readValue(jsonArrayStr, new TypeReference>() { + }); + List result = new ArrayList(); + Iterator var4 = list.iterator(); + + while (var4.hasNext()) { + Map map = (Map) var4.next(); + result.add(map2pojo(map, clazz)); + } + + return result; + } + + public static T map2pojo(Map map, Class clazz) { + return objectMapper.convertValue(map, clazz); + } + + /** + * 解析json属性,放到实体里面去 + * + * @param @param jsondata + * @param @param collectionClass + * @param @return 设定文件 + * @return List 返回类型 + * @throws + * @Title: readJsonList + * @Description: TODO(这里用一句话描述这个方法的作用) + */ + @SuppressWarnings("unchecked") + public static List readJsonList(String jsondata, Class collectionClass) { + try { + ObjectMapper mapper = new ObjectMapper(); + JavaType javaType = getCollectionType(ArrayList.class, collectionClass); + List lst = (List) mapper.readValue(jsondata, javaType); + + return lst; + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + + /** + * json 转map + * + * @param @param jsondata + * @param @return 设定文件 + * @return Map> 返回类型 + * @throws + * @Title: readJsonMap + * @Description: TODO(这里用一句话描述这个方法的作用) + */ + @SuppressWarnings("unchecked") + public static Map readJsonToMap(String jsondata) { + try { + Map maps = objectMapper.readValue(jsondata, Map.class); + //System.out.println(maps); + return maps; + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + @SuppressWarnings("unchecked") + public static Map readJsonToMap1(String jsondata) { + try { + Map maps = objectMapper.readValue(jsondata, Map.class); + //System.out.println(maps); + return maps; + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + + /** + * 设置过滤值为空的属性,使得生成的 json 字符串只包含非空的值 + * + * @return + */ + public static JsonConfig getJsonConfig() { + JsonConfig jsonConfig = new JsonConfig(); + jsonConfig.registerJsonValueProcessor(java.sql.Timestamp.class, new JsonValueProcessorImpl()); + jsonConfig.setJsonPropertyFilter(new PropertyFilter() { + @Override + public boolean apply(Object source, String name, Object value) { + return value == null; + } + }); + + jsonConfig.setIgnoreDefaultExcludes(false); // 设置默认忽略 + jsonConfig.setExcludes(new String[]{"dbName", "isDel"}); // 此处是亮点,只要将所需忽略字段加到数组中即可,在实际测试中,我发现在所返回数组中,存在大量无用属性, + + return jsonConfig; + } + + /** + * 将对象转换成json字符串。 + */ + public static String objectToJson(Object data) { + try { + String string = objectMapper.writeValueAsString(data); + return string; + } catch (JsonProcessingException e) { + e.printStackTrace(); + } + return null; + } + + /** + * 将json结果集转化为对象 + * + * @param jsonData json数据 + * @param beanType 对象中的object类型 + */ + public static T jsonToPojo(String jsonData, Class beanType) { + try { + if (ValidatorUtils.notEmpty(jsonData)) { + T t = objectMapper.readValue(jsonData, beanType); + return t; + } + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + /** + * 将json数据转换成pojo对象list + */ + public static List jsonToList(String jsonData, Class beanType) { + JavaType javaType = objectMapper.getTypeFactory().constructParametricType(List.class, beanType); + try { + List list = objectMapper.readValue(jsonData, javaType); + return list; + } catch (Exception e) { + e.printStackTrace(); + } + + return null; + } + + public static void main(String[] args) { + Map userData = Maps.newHashMap(); + Map nameStruct = Maps.newHashMap(); + nameStruct.put("firstName", "张三"); + nameStruct.put("lastName", "你大爷"); + + System.out.println(JsonUtils.toJsonStr(nameStruct)); + userData.put("name", nameStruct); + userData.put("age", 20); + List stringList = Lists.newArrayList("A", "B", "C"); + System.out.println(JsonUtils.toJsonStr(userData)); + System.out.println(JsonUtils.toJsonStr(stringList)); +// String[] arr = {"37","38","41","42","43","44","45","1693","1694","1695","1696"}; +// System.out.println(toJsonStr(arr)); + + String ss = "{\"address\": \"address2\",\"name\":\"haha2\"}"; + + Map map = readJsonToMap(ss); + + if (map != null) { + System.out.println(map.get("address")); + } + } + + +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/JsonValueProcessorImpl.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/JsonValueProcessorImpl.java new file mode 100644 index 00000000..c27a9cb2 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/JsonValueProcessorImpl.java @@ -0,0 +1,49 @@ +/** + * + */ +package com.yxt.supervise.cyf.util; + + +import net.sf.json.JsonConfig; +import net.sf.json.processors.JsonValueProcessor; + +import java.text.SimpleDateFormat; +import java.util.Date; + +/** + *

Title: JsonValueProcessorImpl.java

+ *

Description: net.js.json 特殊值处理

+ *

Copyright: Copyright (c) 2014-2018

+ *

Company: leimingtech.com

+ * + * @author linjm + * @version 1.0 + * @date 2015年7月17日 + */ +public class JsonValueProcessorImpl implements JsonValueProcessor { + + private String format = "yyyy-MM-dd HH:mm:ss"; + + @Override + public Object processArrayValue(Object value, JsonConfig jsonConfig) { + String[] obj = {}; + if (value instanceof Date[]) { + SimpleDateFormat sdf = new SimpleDateFormat(format); + Date[] date = (Date[]) value; + for (int i = 0; i < date.length; i++) { + obj[i] = sdf.format(date[i]); + } + } + return obj; + } + + @Override + public Object processObjectValue(String key, Object value, JsonConfig jsonConfig) { + if (value instanceof Date) { + String str = new SimpleDateFormat(format).format(value); + return str; + } + return value.toString(); + } + +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/MyModule.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/MyModule.java new file mode 100644 index 00000000..74fd5b9e --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/MyModule.java @@ -0,0 +1,10 @@ +package com.yxt.supervise.cyf.util; + +import com.fasterxml.jackson.databind.module.SimpleModule; + +public class MyModule extends SimpleModule { + @Override + public void setupModule(SetupContext context) { + context.setMixInAnnotations(Object.class, PropertyFilterMixIn.class); + } +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/PropertyFilterMixIn.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/PropertyFilterMixIn.java new file mode 100644 index 00000000..f03ef456 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/PropertyFilterMixIn.java @@ -0,0 +1,8 @@ +package com.yxt.supervise.cyf.util; + +import com.fasterxml.jackson.annotation.JsonFilter; + +@JsonFilter("propertyFilterMixIn") +public class PropertyFilterMixIn { + +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/TimeSecound.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/TimeSecound.java new file mode 100644 index 00000000..51b03d85 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/TimeSecound.java @@ -0,0 +1,23 @@ +package com.yxt.supervise.cyf.util; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class TimeSecound implements Serializable { + long days;//天 + long hours; //小时 + long mins; //分钟 + long sc; //秒 + + public TimeSecound() { + } + + public TimeSecound(long days, long hours, long mins, long sc) { + this.days = days; + this.hours = hours; + this.mins = mins; + this.sc = sc; + } +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/ValidatorUtils.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/ValidatorUtils.java new file mode 100644 index 00000000..5dde1946 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/util/ValidatorUtils.java @@ -0,0 +1,200 @@ +package com.yxt.supervise.cyf.util; + + +import java.math.BigDecimal; +import java.util.Collection; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public class ValidatorUtils { + + /** + * 判断内容不为空 + * + * @param str + * @return + */ + public static boolean notEmpty(Object str) { + if (str != null && str.toString().trim().length() > 0) { + return true; + } else { + return false; + } + } + + /** + * 判断内容不为空(包含数组) + * + * @param str + * @return + */ + @SuppressWarnings("unchecked") + public static boolean notEmptyIncludeArray(Object str) { + if (str != null && String.valueOf(str).trim().length() > 0) { + if (str instanceof Object[]) {// 增加了数组长度判断 + Object[] array = (Object[]) str; + if (array.length > 0) + return true; + + return false; + } else if (str instanceof List) {// 增加了数组长度判断 + List list = (List) str; + if (list.size() > 0) + return true; + + return false; + } + + return true; + } else { + return false; + } + } + + /** + * 判断内容是空 + * + * @param str + * @return + */ + public static boolean isEmpty(Object str) { + if (str == null || str.toString().trim().length() == 0) { + return true; + } else { + return false; + } + } + + /** + * 检查对象是否为空 + * + * @param obj 要检查的数据(数据类型: String、Number、Boolean、Collection、Map、Object[]) + * @return true: 为空; false: 不为空
  • String:值为 null、""、"0" 时返回 true
  • + * Number:值为 null、0 时返回 true
  • Boolean:值为 null、false 时返回 true
  • + * Collection:值为 null、size=0 时返回 true
  • Map:值为 null、size=0 时返回 + * true
  • Object[]:值为 null、length=0 时返回 true + */ + @SuppressWarnings("unchecked") + public static boolean empty(Object obj) { + if (obj == null) { + return true; + } else if (obj instanceof String && (obj.equals(""))) { + return true; + } else if (obj instanceof Number && ((Number) obj).doubleValue() == 0) { + return true; + } else if (obj instanceof Boolean && !((Boolean) obj)) { + return true; + } else if (obj instanceof Collection && ((Collection) obj).isEmpty()) { + return true; + } else if (obj instanceof Map && ((Map) obj).isEmpty()) { + return true; + } else if (obj instanceof Object[] && ((Object[]) obj).length == 0) { + return true; + } + return false; + } + + /** + * 判断是否是合法邮箱地址 + * + * @param email + * @return + */ + public static boolean isEmail(String email) { + Pattern p = Pattern + .compile("^\\w+([\\-+.]\\w+)*@\\w+([-.]\\w+)*\\.[a-z]{2,3}"); + Matcher m = p.matcher(email); + return m.matches(); + } + + /** + * 只包含英文字母和数字、下划线 + * + * @param str + * @return + */ + public static boolean onlyNumAndChar(String str) { + String regex = "^[a-zA-Z0-9_]+$"; + Pattern pattern = Pattern.compile(regex); + return pattern.matcher(str).matches(); + } + + /** + * 必须包含字母 + * + * @param str + * @return + */ + public static boolean hasLetterAndNum(String str) { + Pattern pattern = Pattern.compile("^(?=.*[a-zA-Z].*).{6,}$"); + return pattern.matcher(str).matches(); + } + + /** + * 是否长度符合 + * + * @param str + * @param min 最小 + * @param max 最大 + * @return + */ + public static boolean lengthBetween(String str, int min, int max) { + return str.length() >= min && str.length() <= max; + } + + /** + * 判断字符串是否是数字 + * + * @param str + * @return + */ + public static boolean isNumeric(String str) { + Pattern pattern = Pattern.compile("[0-9]*"); + Matcher isNum = pattern.matcher(str); + if (!isNum.matches()) { + return false; + } + return true; + } + + public static Double rountTwo(Double num) { + if (num != null) { + BigDecimal b = new BigDecimal(num); + Double d = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); + return d; + } else { + return null; + } + } + + public static String doubleTrans(double d) { + if (Math.round(d) - d == 0) { + return String.valueOf((long) d); + } + return String.valueOf(d); + } + + /** + * 获取结束时间与当前的时间差 + * + * @param endTime + * @return + */ + public static TimeSecound getTimeSecound(Date endTime) { + + long diff = endTime.getTime() - System.currentTimeMillis();// 这样得到的差值是微秒级别 + + long days = diff / (1000 * 60 * 60 * 24);//天 + + long hours = (diff - days * (1000 * 60 * 60 * 24)) + / (1000 * 60 * 60); //小时 + long mins = (diff - days * (1000 * 60 * 60 * 24) - hours * (1000 * 60 * 60)) / (1000 * 60); //小时 + long sc = (diff - days * (1000 * 60 * 60 * 24) - hours + * (1000 * 60 * 60) - mins * (1000 * 60)) / (1000); // 秒 + + return new TimeSecound(days, hours, mins, sc); + } +} From db76e617c4401de729c89a1483c9d803eaf0884b Mon Sep 17 00:00:00 2001 From: liupopo Date: Fri, 19 May 2023 13:43:18 +0800 Subject: [PATCH 19/20] =?UTF-8?q?=E8=AF=B7=E6=B1=82=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E5=8F=AF=E5=88=87=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dbcenter/zhj/crawl/ZhjSpider.java | 16 +++++++++++++--- .../dbcenter/zhj/crawl/ZhjSpiderConfig.java | 19 +++++++++++++++++-- .../YxtSuperviseDbcenterApplicationTests.java | 2 +- 3 files changed, 31 insertions(+), 6 deletions(-) diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpider.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpider.java index d207b4dc..cea514d2 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpider.java +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpider.java @@ -3,6 +3,7 @@ package com.yxt.supervise.dbcenter.zhj.crawl; import cn.hutool.http.HttpRequest; import cn.hutool.json.JSONUtil; import com.yxt.supervise.dbcenter.zhj.crawl.spider.*; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -64,7 +65,7 @@ public class ZhjSpider { } public static void main(String[] args) { - List s = ZhjSpider.crawlSalesAmount("20230508"); + List s = ZhjSpider.crawlSalesAmount("20230508"); // List s = ZhjSpider.crawlSalesDishes("20230509", "熟溢香振头店"); // List s = ZhjSpider.crawlPurchase("20230508"); System.out.println(s); @@ -171,9 +172,18 @@ public class ZhjSpider { } public static ZhjResp dopost(Map paramMap) { - HttpRequest request = ZhjSpiderConfig.fillHeaders(HttpRequest.post(url)); + HttpRequest post = HttpRequest.post(url); +// post.enableDefaultCookie(); +// post.disableCookie(); + HttpRequest request = ZhjSpiderConfig.fillHeaders(post); String result = request.form(paramMap).execute().body(); - L.info("param:{}######result:{}", paramMap.toString(), result); + L.info("param:{}", paramMap.toString()); + L.info("######result-111:{}", result); + if (StringUtils.isBlank(result)) { + ZhjSpiderConfig.switchVer(); + result = ZhjSpiderConfig.fillHeaders(post).form(paramMap).execute().body(); + L.info("######result-222:{}", result); + } ZhjResp bean = JSONUtil.toBean(result, ZhjResp.class); return bean; } diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpiderConfig.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpiderConfig.java index 9a00704c..a072f49c 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpiderConfig.java +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/main/java/com/yxt/supervise/dbcenter/zhj/crawl/ZhjSpiderConfig.java @@ -23,11 +23,26 @@ public class ZhjSpiderConfig { return request; } + private static String v_flag = "1"; + private static void initHeaders() { CACHE_HEADERS = new HashMap<>(); - CACHE_HEADERS.put("cookie", "cna=QZ74GyioHjsCAWpxs/DlZflP; qbi_locale=zh-CN; x_login_pk=19b6a50a88ee4c8cbeacee4420345262; xlly_s=1; qbi_version=1; qbi_redirected=1; csrf_token=f66e628f-d681-4be5-855e-56e77886e002; isg=BIqKYOxE2qEZjVZawN-NAZ2Y23Asew7V-iD6yBTCI11JxyuB_Q3P5fXx1zMbN4Zt"); +// CACHE_HEADERS.put("cookie", "cna=QZ74GyioHjsCAWpxs/DlZflP; qbi_locale=zh-CN; x_login_pk=19b6a50a88ee4c8cbeacee4420345262; xlly_s=1; qbi_version=1; qbi_redirected=1; csrf_token=f66e628f-d681-4be5-855e-56e77886e002; isg=BIqKYOxE2qEZjVZawN-NAZ2Y23Asew7V-iD6yBTCI11JxyuB_Q3P5fXx1zMbN4Zt"); +// CACHE_HEADERS.put("cookie", "cna=QZ74GyioHjsCAWpxs/DlZflP; qbi_locale=zh-CN; x_login_pk=19b6a50a88ee4c8cbeacee4420345262; csrf_token=f66e628f-d681-4be5-855e-56e77886e002; qbi_version=2; xlly_s=1; isg=BLe3V-4In-iHGRsxfXgo-thHRqsBfIven4934wljCQdwuN36EEhuLkRemhjmUGNW"); + CACHE_HEADERS.put("cookie", "cna=QZ74GyioHjsCAWpxs/DlZflP; qbi_locale=zh-CN; x_login_pk=19b6a50a88ee4c8cbeacee4420345262; csrf_token=f66e628f-d681-4be5-855e-56e77886e002; qbi_version=" + v_flag + "; xlly_s=1; isg=BLe3V-4In-iHGRsxfXgo-thHRqsBfIven4934wljCQdwuN36EEhuLkRemhjmUGNW"); +// CACHE_HEADERS.put("x-csrf-token", "f66e628f-d681-4be5-855e-56e77886e002"); CACHE_HEADERS.put("x-csrf-token", "f66e628f-d681-4be5-855e-56e77886e002"); - CACHE_HEADERS.put("x-gw-referer", "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto&qbi_version_param=1"); +// CACHE_HEADERS.put("x-gw-referer", "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto&qbi_version_param=1"); +// CACHE_HEADERS.put("x-gw-referer", "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto&qbi_version_param=2"); + CACHE_HEADERS.put("x-gw-referer", "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto&qbi_version_param=" + v_flag); // CACHE_HEADERS.put("x-gw-referer", "https://bi.aliyuncs.com/token3rd/dashboard/view/pc.htm?pageId=85c4af04-1910-4005-8e47-742af1acb713&accessToken=d8c021cd40ad94b2d500d12229b57c3e&dd_orientation=auto"); } + + public static void switchVer() { + if ("1".equals(v_flag)) + v_flag = "2"; + else + v_flag = "1"; + initHeaders(); + } } diff --git a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/YxtSuperviseDbcenterApplicationTests.java b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/YxtSuperviseDbcenterApplicationTests.java index 216cc39c..91c093af 100644 --- a/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/YxtSuperviseDbcenterApplicationTests.java +++ b/yxt-supervise-dbcenter/yxt-supervise-dbcenter-biz/src/test/java/com/yxt/supervise/dbcenter/YxtSuperviseDbcenterApplicationTests.java @@ -24,7 +24,7 @@ class YxtSuperviseDbcenterApplicationTests { @Test void contextLoads() { - String currDay = "2023-05-17"; + String currDay = "2023-05-18"; // crawlSalesAmountService.pullData(currDay); // crawlSalesDishesService.pullData(currDay); From 14cb239ef4f10f25ec1f510af70b9df8f31f49c5 Mon Sep 17 00:00:00 2001 From: wangpengfei <1928057482@qq.com> Date: Fri, 19 May 2023 14:05:04 +0800 Subject: [PATCH 20/20] token --- .../com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java index 3940ea9c..63bf6430 100644 --- a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/biz/config/SaTokenConfigure.java @@ -19,6 +19,8 @@ public class SaTokenConfigure implements WebMvcConfigurer { // 注册 Sa-Token 拦截器,校验规则为 StpUtil.checkLogin() 登录校验。 registry.addInterceptor(new SaInterceptor(handle -> StpUtil.checkLogin())) .addPathPatterns("/**") - .excludePathPatterns("/cyf/sys/doLogin").excludePathPatterns("/cyf/app/sys/doLogin"); + .excludePathPatterns("/cyf/sys/doLogin") + .excludePathPatterns("/cyf/app/sys/doLogin") + .excludePathPatterns("/cyf/appVersion/versioninfo"); } }