sourceability 秘钥更新

parent b2f147a5
Showing with 62 additions and 61 deletions
......@@ -14,9 +14,10 @@ import (
)
//搜索
const SourceSkuIdUrl = "https://catalog.sourcengine.com/api/parts/search?query=%s&queryType=mpn&page=1&size=20&filters[hidePartsWithNoOffers]=false&filters[hidePartsWithNoDatasheet]=false&filters[categoriesFacets]=false&filters[manufacturersFacets]=true&filters[parameterSetsFacets]=false&filters[rohsComplianceFacets]=true&filters[statusesFacets]=true";
const SourceSkuIdUrl = "https://catalog.sourcengine.com/api/parts/search?query=%s&queryType=mpn&page=1&size=20&filters[hidePartsWithNoOffers]=false&filters[hidePartsWithNoDatasheet]=false&filters[categoriesFacets]=false&filters[manufacturersFacets]=true&filters[parameterSetsFacets]=false&filters[rohsComplianceFacets]=true&filters[statusesFacets]=true"
//通过sku_id 查询价格库存
const SourceSkuPriceUrl = "https://catalog.sourcengine.com/api/parts/%s/offers/search?includeLiveResults=false&filters[hideDateCodeOlderThan2Years]=false";
const SourceSkuPriceUrl = "https://catalog.sourcengine.com/api/parts/%s/offers/search?includeLiveResults=false&filters[hideDateCodeOlderThan2Years]=false"
/*
[821-SK26A-TR3G] => Array
......@@ -63,94 +64,94 @@ const SourceSkuPriceUrl = "https://catalog.sourcengine.com/api/parts/%s/offers/s
请求外链
但是价格和库存有很多条记录,我们过滤掉交期大于14天的期货之后,找一条库存大于0,价格最便宜的一条记录作为这个SKU的价格和库存
*/
func OutLinkSource(ctx *gin.Context,goodsName *string) *orderedmap.OrderedMap {
func OutLinkSource(ctx *gin.Context, goodsName *string) *orderedmap.OrderedMap {
if *goodsName == "" {
return nil
}
skuIdRes := "";
skuIdRes := ""
if ctx.Request.FormValue("flags") == "-1" { //原始数据调试
skuIdRes = `{"page":1,"size":20,"pages":2,"total":26,"results":[{"sku":"LM358P-1503747557","mpn":"LM358P","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDIP8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":8,"alternateRiskScore":3,"supplyChainScore":9},{"sku":"LM358PT-1456421550","mpn":"LM358PT","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"STMICROELECTRONICS","manufacturerId":"e-4591","description":"Low-power dual op-amps with low input bias current","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":10,"alternateRiskScore":5,"supplyChainScore":10},{"sku":"LM358PW-1503747554","mpn":"LM358PW","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":7,"alternateRiskScore":5,"supplyChainScore":9},{"sku":"LM358PWR-1512811931","mpn":"LM358PWR","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":8,"alternateRiskScore":5,"supplyChainScore":9},{"sku":"LM358PSR-1512811930","mpn":"LM358PSR","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":9,"alternateRiskScore":3,"supplyChainScore":10},{"sku":"LM358PE4-2094441957","mpn":"LM358PE4","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDIP8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":8,"alternateRiskScore":3,"supplyChainScore":9},{"sku":"LM358PE3-1047246090","mpn":"LM358PE3","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDIP8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":8,"alternateRiskScore":3,"supplyChainScore":9},{"sku":"LM358PWRG3-1047246091","mpn":"LM358PWRG3","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":6,"alternateRiskScore":5,"supplyChainScore":8},{"sku":"LM358PWRG4-JF-8096269880","mpn":"LM358PWRG4-JF","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":6,"alternateRiskScore":5,"supplyChainScore":8},{"sku":"LM358PWRG4-2055588833","mpn":"LM358PWRG4","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":6,"alternateRiskScore":5,"supplyChainScore":8},{"sku":"LM358P3-100023793","mpn":"LM358P3","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDIP8","status":"Discontinued","euRohsCompliant":false,"chinaRohsCompliant":false,"reachCompliant":false,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":0,"supplyChainScore":0},{"sku":"LM358-P08-T-1019521684","mpn":"LM358-P08-T","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"UNISONIC TECHNOLOGIES CO.,LTD","manufacturerId":"e-5061","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active-Unconfirmed","euRohsCompliant":false,"chinaRohsCompliant":null,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":3,"supplyChainScore":0},{"sku":"LM358PP3-100023792","mpn":"LM358P/P3","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDIP8","status":"Discontinued","euRohsCompliant":false,"chinaRohsCompliant":false,"reachCompliant":false,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":0,"supplyChainScore":0},{"sku":"LM358PSLE-1503188880","mpn":"LM358PSLE","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":null,"chinaRohsCompliant":null,"reachCompliant":null,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":3,"supplyChainScore":0},{"sku":"LM358P-1438416486","mpn":"LM358P","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"STMICROELECTRONICS","manufacturerId":"e-4591","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":5,"supplyChainScore":0},{"sku":"LM358-P08-R-1019521683","mpn":"LM358-P08-R","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"UNISONIC TECHNOLOGIES CO.,LTD","manufacturerId":"e-5061","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active-Unconfirmed","euRohsCompliant":false,"chinaRohsCompliant":null,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":3,"supplyChainScore":0},{"sku":"LM358PWR-2118477716","mpn":"LM358PWR","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"ROHM CO., LTD.","manufacturerId":"e-4024","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":null,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":5,"supplyChainScore":0},{"sku":"LM358PT-2118477715","mpn":"LM358PT","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"ROHM CO., LTD.","manufacturerId":"e-4024","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":null,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":5,"supplyChainScore":0},{"sku":"LM358PWG4-2143868845","mpn":"LM358PWG4","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":5,"supplyChainScore":0},{"sku":"LM358PSRG4-2065293414","mpn":"LM358PSRG4","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":null,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":3,"supplyChainScore":0}],"facets":{"manufacturers":[{"value":"e-4832","label":"Texas Instruments Incorporated","count":18},{"value":"e-4024","label":"ROHM CO., LTD.","count":4},{"value":"e-4591","label":"STMICROELECTRONICS","count":2},{"value":"e-5061","label":"UNISONIC TECHNOLOGIES CO.,LTD","count":2}],"rohsCompliance":[{"value":"true","label":"true","count":20},{"value":"false","label":"false","count":6}],"statuses":[{"value":"Discontinued","label":"Discontinued","count":13},{"value":"Active","label":"Active","count":10},{"value":"Active-Unconfirmed","label":"Active-Unconfirmed","count":3}]},"_links":{"schema":{"href":"/api/schemas/part-search.json"}}}`;
skuIdRes = `{"page":1,"size":20,"pages":2,"total":26,"results":[{"sku":"LM358P-1503747557","mpn":"LM358P","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDIP8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":8,"alternateRiskScore":3,"supplyChainScore":9},{"sku":"LM358PT-1456421550","mpn":"LM358PT","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"STMICROELECTRONICS","manufacturerId":"e-4591","description":"Low-power dual op-amps with low input bias current","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":10,"alternateRiskScore":5,"supplyChainScore":10},{"sku":"LM358PW-1503747554","mpn":"LM358PW","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":7,"alternateRiskScore":5,"supplyChainScore":9},{"sku":"LM358PWR-1512811931","mpn":"LM358PWR","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":8,"alternateRiskScore":5,"supplyChainScore":9},{"sku":"LM358PSR-1512811930","mpn":"LM358PSR","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":9,"alternateRiskScore":3,"supplyChainScore":10},{"sku":"LM358PE4-2094441957","mpn":"LM358PE4","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDIP8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":8,"alternateRiskScore":3,"supplyChainScore":9},{"sku":"LM358PE3-1047246090","mpn":"LM358PE3","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDIP8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":8,"alternateRiskScore":3,"supplyChainScore":9},{"sku":"LM358PWRG3-1047246091","mpn":"LM358PWRG3","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":6,"alternateRiskScore":5,"supplyChainScore":8},{"sku":"LM358PWRG4-JF-8096269880","mpn":"LM358PWRG4-JF","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":6,"alternateRiskScore":5,"supplyChainScore":8},{"sku":"LM358PWRG4-2055588833","mpn":"LM358PWRG4","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":true,"marketAvailabilityScore":6,"alternateRiskScore":5,"supplyChainScore":8},{"sku":"LM358P3-100023793","mpn":"LM358P3","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDIP8","status":"Discontinued","euRohsCompliant":false,"chinaRohsCompliant":false,"reachCompliant":false,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":0,"supplyChainScore":0},{"sku":"LM358-P08-T-1019521684","mpn":"LM358-P08-T","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"UNISONIC TECHNOLOGIES CO.,LTD","manufacturerId":"e-5061","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active-Unconfirmed","euRohsCompliant":false,"chinaRohsCompliant":null,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":3,"supplyChainScore":0},{"sku":"LM358PP3-100023792","mpn":"LM358P/P3","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDIP8","status":"Discontinued","euRohsCompliant":false,"chinaRohsCompliant":false,"reachCompliant":false,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":0,"supplyChainScore":0},{"sku":"LM358PSLE-1503188880","mpn":"LM358PSLE","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":null,"chinaRohsCompliant":null,"reachCompliant":null,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":3,"supplyChainScore":0},{"sku":"LM358P-1438416486","mpn":"LM358P","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"STMICROELECTRONICS","manufacturerId":"e-4591","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":5,"supplyChainScore":0},{"sku":"LM358-P08-R-1019521683","mpn":"LM358-P08-R","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"UNISONIC TECHNOLOGIES CO.,LTD","manufacturerId":"e-5061","description":"Operational Amplifier, 2 Func, 7000uV Offset-Max, BIPolar, PDSO8","status":"Active-Unconfirmed","euRohsCompliant":false,"chinaRohsCompliant":null,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":3,"supplyChainScore":0},{"sku":"LM358PWR-2118477716","mpn":"LM358PWR","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"ROHM CO., LTD.","manufacturerId":"e-4024","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":null,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":5,"supplyChainScore":0},{"sku":"LM358PT-2118477715","mpn":"LM358PT","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"ROHM CO., LTD.","manufacturerId":"e-4024","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":null,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":5,"supplyChainScore":0},{"sku":"LM358PWG4-2143868845","mpn":"LM358PWG4","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":true,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":5,"supplyChainScore":0},{"sku":"LM358PSRG4-2065293414","mpn":"LM358PSRG4","categories":[{"name":"Semiconductors"},{"name":"Amplifiers"},{"name":"Operational Amplifiers"},{"name":"OPERATIONAL AMPLIFIER"}],"manufacturer":"Texas Instruments Incorporated","manufacturerId":"e-4832","description":"Operational Amplifier, 2 Func, 9000uV Offset-Max, BIPolar, PDSO8","status":"Discontinued","euRohsCompliant":true,"chinaRohsCompliant":true,"reachCompliant":null,"hasOffers":false,"marketAvailabilityScore":0,"alternateRiskScore":3,"supplyChainScore":0}],"facets":{"manufacturers":[{"value":"e-4832","label":"Texas Instruments Incorporated","count":18},{"value":"e-4024","label":"ROHM CO., LTD.","count":4},{"value":"e-4591","label":"STMICROELECTRONICS","count":2},{"value":"e-5061","label":"UNISONIC TECHNOLOGIES CO.,LTD","count":2}],"rohsCompliance":[{"value":"true","label":"true","count":20},{"value":"false","label":"false","count":6}],"statuses":[{"value":"Discontinued","label":"Discontinued","count":13},{"value":"Active","label":"Active","count":10},{"value":"Active-Unconfirmed","label":"Active-Unconfirmed","count":3}]},"_links":{"schema":{"href":"/api/schemas/part-search.json"}}}`
} else {
skuIdRes = GetSourceGineData(ctx,fmt.Sprintf(SourceSkuIdUrl,strings.ToUpper(*goodsName))) //查询得到所有的sku->goods_sn
skuIdRes = GetSourceGineData(ctx, fmt.Sprintf(SourceSkuIdUrl, strings.ToUpper(*goodsName))) //查询得到所有的sku->goods_sn
}
common.PrintDebugHtml(ctx,"原始数据:" + skuIdRes)
common.PrintDebugHtml(ctx, "原始数据:"+skuIdRes)
if skuIdRes == "" {
return nil;
return nil
}
skuRsults := gjson.Get(skuIdRes,"results").Array()
skuRsults := gjson.Get(skuIdRes, "results").Array()
//协程并发请求
//接收通道所有的值
A := orderedmap.New()
wg := sync.WaitGroup{} //协程等待
ch := make(chan bool,1) //管道
p := 0;
for _,a := range skuRsults {
goods_sn := a.Get("sku").String() //goods_sn
goods_name := a.Get("mpn").String() //型号
wg := sync.WaitGroup{} //协程等待
ch := make(chan bool, 1) //管道
p := 0
for _, a := range skuRsults {
goods_sn := a.Get("sku").String() //goods_sn
goods_name := a.Get("mpn").String() //型号
brand_name := a.Get("manufacturer").String() //品牌
desc := a.Get("description").String() //描述
desc := a.Get("description").String() //描述
wg.Add(1)
ch <- true
go func() {
//fmt.Println(php2go.Time())
B := orderedmap.New()
B.Set("goods_sn",goods_sn)
B.Set("goods_name",goods_name)
B.Set("brand_name",brand_name)
B.Set("desc",desc)
flag := GetSourceInfo(ctx,B,&wg)
B.Set("goods_sn", goods_sn)
B.Set("goods_name", goods_name)
B.Set("brand_name", brand_name)
B.Set("desc", desc)
flag := GetSourceInfo(ctx, B, &wg)
//res,_ := json.Marshal(A)
if flag {
A.Set(goods_sn,B)
A.Set(goods_sn, B)
}
<- ch
<-ch
}()
p ++;
p++
}
wg.Wait()
return A;
return A
}
//请求价格和库存
func GetSourceInfo(ctx *gin.Context,B *orderedmap.OrderedMap,wg *sync.WaitGroup) bool {
func GetSourceInfo(ctx *gin.Context, B *orderedmap.OrderedMap, wg *sync.WaitGroup) bool {
defer wg.Done()
goods_sn,_ := B.Get("goods_sn")
goods_sn, _ := B.Get("goods_sn")
skuInfo := GetSourceGineData(ctx,fmt.Sprintf(SourceSkuPriceUrl,goods_sn))
skuInfo := GetSourceGineData(ctx, fmt.Sprintf(SourceSkuPriceUrl, goods_sn))
//fmt.Println("请求价格开始:",php2go.Time(),fmt.Sprintf(SourceSkuPriceUrl,goods_sn))
//$skuPriceRes = `{"total":3,"results":[{"offerPlatformId":"8718009643","mpq":1,"quantity":2277626,"priceTiers":[{"moq":807,"price":"0.06820"}],"deliveryDays":5,"vendor":{"type":"factory_direct"},"dateCode":null,"isDateCodeWithin2Years":true,"availabilityType":"stock","packagingType":"tube","packagingCondition":"full"},{"offerPlatformId":"8715417520","mpq":1,"quantity":1520,"priceTiers":[{"moq":709,"price":"0.07768"}],"deliveryDays":7,"vendor":{"type":"authorised_distributor"},"dateCode":null,"isDateCodeWithin2Years":true,"availabilityType":"stock","packagingType":"tape_reel","packagingCondition":"full"},{"offerPlatformId":"8715417522","mpq":1,"quantity":283206,"priceTiers":[{"moq":709,"price":"0.07768"}],"deliveryDays":167,"vendor":{"type":"authorised_distributor"},"dateCode":null,"isDateCodeWithin2Years":true,"availabilityType":"lead_time","packagingType":"tape_reel","packagingCondition":"full"}],"facets":{"vendorTypes":[{"value":"authorised_distributor","label":"authorised_distributor","count":2},{"value":"factory_direct","label":"factory_direct","count":1}],"availabilityTypes":[{"value":"lead_time","label":"lead_time","count":1},{"value":"stock","label":"stock","count":2}],"packagingConditions":[{"value":"full","label":"full","count":3}],"packagingTypes":[{"value":"tape_reel","label":"tape_reel","count":2},{"value":"tube","label":"tube","count":1}]},"_links":{"schema":{"href":"/api/schemas/part-offer-search.json"}}}`;
priceGoodsList := gjson.Get(skuInfo,"results").Array()
common.PrintDebugHtml(ctx,priceGoodsList)
priceGoodsList := gjson.Get(skuInfo, "results").Array()
common.PrintDebugHtml(ctx, priceGoodsList)
if priceGoodsList == nil {
fmt.Println("查询价格没有数据")
return false
}
//确定: 分类 , 来源网站sku的url ,图片路径 这三个字段留空
B.Set("docurl","")
B.Set("url","")
B.Set("goods_img","")
B.Set("cat","")
B.Set("docurl", "")
B.Set("url", "")
B.Set("goods_img", "")
B.Set("cat", "")
//todo 确定: 分类 , 来源网站sku的url ,图片路径 这三个字段留空,然后价格取: 梯度最后一个价格判断最低 && 库存大于0 && 交期<14 天
var LowerPrice float64 = 0 //最低价格
flag := false;
var LowerPrice float64 = 0 //最低价格
flag := false
for _, goods := range priceGoodsList {
stock := goods.Get("quantity").Int()
if stock == 0 {
common.PrintDebugHtml(ctx,"库存为0跳过")
continue;
common.PrintDebugHtml(ctx, "库存为0跳过")
continue
}
if goods.Get("deliveryDays").Int() > 14 {
common.PrintDebugHtml(ctx,"交期大于14天跳过")
continue;
common.PrintDebugHtml(ctx, "交期大于14天跳过")
continue
}
//计算梯度
......@@ -158,15 +159,15 @@ func GetSourceInfo(ctx *gin.Context,B *orderedmap.OrderedMap,wg *sync.WaitGroup)
priceTemp := make([]interface{}, 0)
apiPriceTi := goods.Get("priceTiers").Array() //拼接价格梯度
var apiLowerPrice float64 = 0 //计算最低价格
var apiLowerMoq int64 = 0 // 最低起订量
var apiLowerPrice float64 = 0 //计算最低价格
var apiLowerMoq int64 = 0 // 最低起订量
for k, priceItem := range apiPriceTi {
priceItemStr := priceItem.String()
//价格转换
skuPrice := gjson.Get(priceItemStr, "price").Float() //价格
quantity := gjson.Get(priceItemStr, "moq").Int() //数量
quantity := gjson.Get(priceItemStr, "moq").Int() //数量
if k == 0 {
apiLowerMoq = quantity; //最低起订量
apiLowerMoq = quantity //最低起订量
}
if apiLowerPrice == 0 {
......@@ -187,10 +188,10 @@ func GetSourceInfo(ctx *gin.Context,B *orderedmap.OrderedMap,wg *sync.WaitGroup)
})
}
if LowerPrice == 0 {
LowerPrice = apiLowerPrice;
}else if LowerPrice < apiLowerPrice { //不是最低价格,跳过
common.PrintDebugHtml(ctx,"不是最低价格跳过")
continue;
LowerPrice = apiLowerPrice
} else if LowerPrice < apiLowerPrice { //不是最低价格,跳过
common.PrintDebugHtml(ctx, "不是最低价格跳过")
continue
}
//写入数据
mpq := goods.Get("mpq").Int()
......@@ -198,22 +199,22 @@ func GetSourceInfo(ctx *gin.Context,B *orderedmap.OrderedMap,wg *sync.WaitGroup)
apiLowerMoq = mpq
}
B.Set("stock",[]int64{apiLowerMoq,stock})
B.Set("increment",goods.Get("mpq").Int())
B.Set("price_temp",priceTemp)
B.Set("tiered",ladderPrice)
B.Set("single_price",apiLowerPrice)
flag = true;
B.Set("stock", []int64{apiLowerMoq, stock})
B.Set("increment", goods.Get("mpq").Int())
B.Set("price_temp", priceTemp)
B.Set("tiered", ladderPrice)
B.Set("single_price", apiLowerPrice)
flag = true
}
return flag;
return flag
}
//请求接口
func GetSourceGineData(ctx *gin.Context,url string) string {
func GetSourceGineData(ctx *gin.Context, url string) string {
header := req.Header{
"Accept": "application/json",
"Content-Type": "application/json",
"Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MDUwMjk3ODQsInVzZXJuYW1lIjoiYWNiMjMzMmItYjQ4MC00M2UwLTgwZjYtZjQ0OTVkY2M0NjBhIn0.Bt6Aii7xxVKIfxpnttmHi4hDhvBmw0Bow47b1s08ibfDVtQxmn5ZzOAbsl0spxqMysUngZ31KfPEnos5EeD04jOtu5Y9llNHCymO15_--AYy4JdzcoDgSwUnogUw4tD4zkm4vTsRxzfTjbrN9gX2n_33BemD4S1oT4M4rPK_RRw6dJ8wYqMIKYjjHPPlNIy5S155vG7CtN8i2mpHaJkDNcK2thhAgEkFuncpKAuV8oV87Pk0WoiQYkzCcQ3MbqsdV7FYuNpDCJfalzplk8y04UkG3lAGCySGUSwHnSk0RbJablg-s2td54-Tixwm5q8X3UPViVo0QTk2EmMZq2qKnrXnPUy7MVJUEpWaFRih0P3oRJUusW3cxcXRRjxlgVyD4n3vKmM0lFo-gcNfWFhbh6pJw9dxs6GqIZZqjHPa92EIWHgezDmXt97FYH5i9J_pesJCYGdRfAZDZ_mcD9KPZUylDd17nlrMWl_D14vMOklU4_9RksBX7YsNu5lyexW-djOmCcnTFV5GMcPF1jht0i6IlvQYHgNYtEITEKNMjAGRy4AL_3kYXRjlGsq37uKJup14t4VkZe95Zt_beIqPyRvcig3TV1ol5vdPf2IW1Vt_vJXsoNno5F_uznvsv268srplyO-akqbpP-X16m-Sh9kgZhk1fDcWQ8kJXt7uqd0",
"Accept": "application/json",
"Content-Type": "application/json",
"Authorization": "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2NzcxNjkxNDAsInVzZXJuYW1lIjoiYWNiMjMzMmItYjQ4MC00M2UwLTgwZjYtZjQ0OTVkY2M0NjBhIn0.RLEoIlq9dY2kemyK_LYBUFbaRm1--Z7GS_Rdr1pQPOi0TnTVIBZ7DPWGEJGnG2PTLe3lpj21KRnY6_LcEe5J-dEjmJNqSlNb48RLXbJA0tBULcIGg1CwoE-xOAWOEhofmobsCZDaRQt8HbgDlnPvKT2GE0h_iigS0RJGOZpm-ZcRAj_fli7mH73kJCakn3oQP8tOV-qml3LosHUNSIO9SHRlrbyWXprS6ixZY9zOZWH4TE7fGGKnROF4I3tf5rdgIHSwk5uVV54PtCOVtErR1_iBv4uh_DZ0j7vhVP2klPS3fpkZtAxAzwfkV0kO6FN4CTEC7o-nR9_zDouisEf40cLZ6CR9Q04_QsawWru83FQksB4ghyKwdWgNCajGOUwZu9YDpcvOrTgEV_G0-A_8-COKgctvQmvBXVmq-11-xBBGAANl00VaNh9qar5Kdi8Uic5S7fEW5qKJBg9KZBaDP-k-tLzDb4xuwYdk9z7MbGCgDY9h4q9P3_9QZN7ESomrUJ7ROrImitAEHX_j-_sAqcMuZlqHZE6vAKU_4QSICxHANo6bT0uMjhK0NHP4EJOOatAz-cxeVdGQ2WnPldSQ8SfbcNhaKUSVcTJIlhTXK7FUuvKYOuEd4co691loL8z6PWI90tbhgIgtgids0mBjNT9P5LUzGmTEhTo-1-Fa68M",
}
req.SetTimeout(8 * time.Second)
resp, err := req.Get(url, header)
......@@ -221,6 +222,6 @@ func GetSourceGineData(ctx *gin.Context,url string) string {
return ""
}
res := resp.String() //请求外链拿到结果
common.PrintDebugHtml(ctx,"原始数据:"+ url + res)
return res
common.PrintDebugHtml(ctx, "原始数据:"+url+res)
return res
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment