From 99bc8dd374cadba873a9cff0f3e8bec9d2981fba Mon Sep 17 00:00:00 2001 From: invalid w Date: Fri, 26 Jul 2024 10:14:12 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E6=98=93=E5=A2=83?= =?UTF-8?q?=E9=80=9A=E7=89=A9=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 37 ++++++++-------- monorepo.code-workspace | 6 ++- packages/yi_jing_tong/.eslintrc.js | 4 ++ packages/yi_jing_tong/.npmignore | 35 +++++++++++++++ packages/yi_jing_tong/README.md | 1 + packages/yi_jing_tong/modern.config.ts | 7 +++ packages/yi_jing_tong/package.json | 36 +++++++++++++++ packages/yi_jing_tong/src/.eslintrc.js | 9 ++++ packages/yi_jing_tong/src/index.ts | 26 +++++++++++ packages/yi_jing_tong/src/modern-app-env.d.ts | 2 + packages/yi_jing_tong/src/state/index.ts | 7 +++ packages/yi_jing_tong/tests/.eslintrc.js | 9 ++++ packages/yi_jing_tong/tests/tsconfig.json | 8 ++++ packages/yi_jing_tong/tsconfig.json | 23 ++++++++++ pnpm-lock.yaml | 44 ++++++++++++++++--- 15 files changed, 229 insertions(+), 25 deletions(-) create mode 100644 packages/yi_jing_tong/.eslintrc.js create mode 100644 packages/yi_jing_tong/.npmignore create mode 100644 packages/yi_jing_tong/README.md create mode 100644 packages/yi_jing_tong/modern.config.ts create mode 100644 packages/yi_jing_tong/package.json create mode 100644 packages/yi_jing_tong/src/.eslintrc.js create mode 100644 packages/yi_jing_tong/src/index.ts create mode 100644 packages/yi_jing_tong/src/modern-app-env.d.ts create mode 100644 packages/yi_jing_tong/src/state/index.ts create mode 100644 packages/yi_jing_tong/tests/.eslintrc.js create mode 100644 packages/yi_jing_tong/tests/tsconfig.json create mode 100644 packages/yi_jing_tong/tsconfig.json diff --git a/README.md b/README.md index 7156c02..274cf5f 100644 --- a/README.md +++ b/README.md @@ -8,24 +8,25 @@

-| 物流 | Package | Status | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------- | ------ | -| [杰航国际](https://xt.jiehang.net/sysstyle/clientApi/New-k5-API.pdf) | [@cn-international-express-sdk/jiehang](./packages/jiehang) | ✅ | -| [云途物流](https://yunexpress-fileupload.oss-cn-shenzhen.aliyuncs.com/%E4%BA%91%E9%80%94%E7%89%A9%E6%B5%81API%E6%8E%A5%E5%8F%A3%E5%BC%80%E5%8F%91%E8%A7%84%E8%8C%83OMS20230706.pdf) | [@cn-international-express-sdk/yuntu](./packages/yuntu) | ✅ | -| [三态速递](https://www.sfcservice.com/webservice) | [@cn-international-express-sdk/santai](./packages/santai) | ✅ | -| [菜鸟国际](https://open.cainiao.com/document?namespace=gyuvti&slug=icpyy606guebmtrq) | [@cn-international-express-sdk/cainiao](./packages/cainiao) | ✅ | -| [燕文物流](https://www.yw56.com.cn/webfile/API%E6%8E%A5%E5%8F%A3/) | [@cn-international-express-sdk/yanwen](./packages/yanwen) | ✅ | -| [纵横迅通国际](http://order.globleexpress.com:8051/usercenter/manager/api_document.aspx) | [@cn-international-express-sdk/zhxt](./packages/zhxt) | ✅ | -| [递一国际](https://docs.qq.com/pdf/DRnZBQW1ZRnRoQnpO?) | [@cn-international-express-sdk/cne](./packages/cne) | ✅ | -| [递四方](https://open.4px.com/apiInfo/apiDetail?itemId=2&mainId=96#) | [@cn-international-express-sdk/fpx](./packages/fpx) | ✅ | -| [华翰物流](http://new.hh-exp.com:8181/docs/mindoc/createOrder) | [@cn-international-express-sdk/hua_han](./packages/hua_han) | ✅ | -| [华羽通国际](http://szhyt.rtb56.com/usercenter/manager/api_document.aspx) | [@cn-international-express-sdk/hua_yu_tong](./packages/hua_yu_tong) | ✅ | -| [顺丰国际](./assets/顺丰国际-KTS喀秋莎系统下单接口通用技术规范V4-7-20200509.docx) | [@cn-international-express-sdk/kts](./packages/kts) | ✅ | -| [17FEIA](https://www.17feia.com/news?id=326&from=2) | [@cn-international-express-sdk/one7feia](./packages/one7feia) | ✅ | -| [万邦速达](http://apidoc.wanbexpress.com/) | [@cn-international-express-sdk/wanb](./packages/wanb) | ✅ | -| [宝通达](./assets/宝通达接口.pdf) | [@cn-international-express-sdk/bao_tong_da](./packages/bao_tong_da) | ✅ | -| [妥投国际](http://order.logtt.com/usercenter/manager/api_document.aspx) | [@cn-international-express-sdk/tuo_tou](./packages/tuo_tou) | ✅ | -| [云速通达](./assets/云速通达xms.docx) | [@cn-international-express-sdk/xms](./packages/xms) | ✅ | +| 物流 | Package | Status | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | ------ | +| [杰航国际](https://xt.jiehang.net/sysstyle/clientApi/New-k5-API.pdf) | [@cn-international-express-sdk/jiehang](./packages/jiehang) | ✅ | +| [云途物流](https://yunexpress-fileupload.oss-cn-shenzhen.aliyuncs.com/%E4%BA%91%E9%80%94%E7%89%A9%E6%B5%81API%E6%8E%A5%E5%8F%A3%E5%BC%80%E5%8F%91%E8%A7%84%E8%8C%83OMS20230706.pdf) | [@cn-international-express-sdk/yuntu](./packages/yuntu) | ✅ | +| [三态速递](https://www.sfcservice.com/webservice) | [@cn-international-express-sdk/santai](./packages/santai) | ✅ | +| [菜鸟国际](https://open.cainiao.com/document?namespace=gyuvti&slug=icpyy606guebmtrq) | [@cn-international-express-sdk/cainiao](./packages/cainiao) | ✅ | +| [燕文物流](https://www.yw56.com.cn/webfile/API%E6%8E%A5%E5%8F%A3/) | [@cn-international-express-sdk/yanwen](./packages/yanwen) | ✅ | +| [纵横迅通国际](http://order.globleexpress.com:8051/usercenter/manager/api_document.aspx) | [@cn-international-express-sdk/zhxt](./packages/zhxt) | ✅ | +| [递一国际](https://docs.qq.com/pdf/DRnZBQW1ZRnRoQnpO?) | [@cn-international-express-sdk/cne](./packages/cne) | ✅ | +| [递四方](https://open.4px.com/apiInfo/apiDetail?itemId=2&mainId=96#) | [@cn-international-express-sdk/fpx](./packages/fpx) | ✅ | +| [华翰物流](http://new.hh-exp.com:8181/docs/mindoc/createOrder) | [@cn-international-express-sdk/hua_han](./packages/hua_han) | ✅ | +| [华羽通国际](http://szhyt.rtb56.com/usercenter/manager/api_document.aspx) | [@cn-international-express-sdk/hua_yu_tong](./packages/hua_yu_tong) | ✅ | +| [顺丰国际](./assets/顺丰国际-KTS喀秋莎系统下单接口通用技术规范V4-7-20200509.docx) | [@cn-international-express-sdk/kts](./packages/kts) | ✅ | +| [17FEIA](https://www.17feia.com/news?id=326&from=2) | [@cn-international-express-sdk/one7feia](./packages/one7feia) | ✅ | +| [万邦速达](http://apidoc.wanbexpress.com/) | [@cn-international-express-sdk/wanb](./packages/wanb) | ✅ | +| [宝通达](./assets/宝通达接口.pdf) | [@cn-international-express-sdk/bao_tong_da](./packages/bao_tong_da) | ✅ | +| [妥投国际](http://order.logtt.com/usercenter/manager/api_document.aspx) | [@cn-international-express-sdk/tuo_tou](./packages/tuo_tou) | ✅ | +| [云速通达](./assets/云速通达xms.docx) | [@cn-international-express-sdk/xms](./packages/xms) | ✅ | +| [易境通](https://szy.kjwlxt.com/hwc_books3/#shuoming) | [@cn-international-express-sdk/yi_jing_tong](./packages/yi_jing_tong) | ✅ | # Install diff --git a/monorepo.code-workspace b/monorepo.code-workspace index 883e0dd..32a2030 100644 --- a/monorepo.code-workspace +++ b/monorepo.code-workspace @@ -72,6 +72,10 @@ "name": "santai", "path": "packages/santai/" }, + { + "name": "yi_jing_tong", + "path": "packages/yi_jing_tong/" + }, { "name": "monorepo", "path": "." @@ -158,4 +162,4 @@ "emmet.triggerExpansionOnTab": true, "typescript.tsdk": "node_modules/typescript/lib" } -} \ No newline at end of file +} diff --git a/packages/yi_jing_tong/.eslintrc.js b/packages/yi_jing_tong/.eslintrc.js new file mode 100644 index 0000000..a84ee27 --- /dev/null +++ b/packages/yi_jing_tong/.eslintrc.js @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: ['@modern-js'], +}; diff --git a/packages/yi_jing_tong/.npmignore b/packages/yi_jing_tong/.npmignore new file mode 100644 index 0000000..1e8c1b9 --- /dev/null +++ b/packages/yi_jing_tong/.npmignore @@ -0,0 +1,35 @@ +.DS_Store + +.pnp +.pnp.js +.env.local +.env.*.local +.history +*.log* + +node_modules/ +.yarn-integrity +*.tsbuildinfo +.eslintcache + +coverage/ +release/ +output/ +output_resource/ +tests/ + +.vscode/**/* +!.vscode/settings.json +!.vscode/extensions.json +.idea/ + +src/ + +modern.config.* +jest.config.js +.eslintrc.js +.eslintrc +tsconfig.json +CHANGELOG.md + +**/*/api/typings/auto-generated diff --git a/packages/yi_jing_tong/README.md b/packages/yi_jing_tong/README.md new file mode 100644 index 0000000..6d1d049 --- /dev/null +++ b/packages/yi_jing_tong/README.md @@ -0,0 +1 @@ +# `@cn-international-express-sdk/yi_jing_tong` diff --git a/packages/yi_jing_tong/modern.config.ts b/packages/yi_jing_tong/modern.config.ts new file mode 100644 index 0000000..c4ab448 --- /dev/null +++ b/packages/yi_jing_tong/modern.config.ts @@ -0,0 +1,7 @@ +import { moduleTools, defineConfig } from '@modern-js/module-tools'; +import { testingPlugin } from '@modern-js/plugin-testing'; + +export default defineConfig({ + plugins: [moduleTools(), testingPlugin()], + buildPreset: 'npm-library', +}); diff --git a/packages/yi_jing_tong/package.json b/packages/yi_jing_tong/package.json new file mode 100644 index 0000000..9a2391e --- /dev/null +++ b/packages/yi_jing_tong/package.json @@ -0,0 +1,36 @@ +{ + "name": "@cn-international-express-sdk/yi_jing_tong", + "version": "0.1.0", + "types": "./dist/types/index.d.ts", + "main": "./dist/lib/index.js", + "module": "./dist/es/index.js", + "scripts": { + "prepare": "modern build", + "dev": "modern dev", + "build": "modern build", + "build:watch": "modern build -w", + "new": "modern new", + "upgrade": "modern upgrade", + "test": "modern test" + }, + "dependencies": { + "@cn-international-express-sdk/utils": "workspace:*" + }, + "devDependencies": { + "@modern-js/eslint-config": "2.43.0", + "@modern-js/module-tools": "2.43.0", + "@types/node": "~16.11.7", + "husky": "~8.0.1", + "lint-staged": "~13.1.0", + "prettier": "~2.8.1", + "rimraf": "~3.0.2", + "typescript": "~5.0.4", + "@modern-js/plugin-testing": "2.43.0", + "@types/jest": "~29.2.4" + }, + "sideEffects": [], + "publishConfig": { + "access": "public", + "registry": "https://registry.npmjs.org/" + } +} \ No newline at end of file diff --git a/packages/yi_jing_tong/src/.eslintrc.js b/packages/yi_jing_tong/src/.eslintrc.js new file mode 100644 index 0000000..fafc003 --- /dev/null +++ b/packages/yi_jing_tong/src/.eslintrc.js @@ -0,0 +1,9 @@ +// eslint-disable-next-line import/no-commonjs +module.exports = { + root: true, + extends: ['@modern-js-app'], + parserOptions: { + tsconfigRootDir: __dirname, + project: ['../tsconfig.json'], + }, +}; diff --git a/packages/yi_jing_tong/src/index.ts b/packages/yi_jing_tong/src/index.ts new file mode 100644 index 0000000..3ac2966 --- /dev/null +++ b/packages/yi_jing_tong/src/index.ts @@ -0,0 +1,26 @@ +import { + Recordable, + postJSONRequest, +} from '@cn-international-express-sdk/utils'; +import { YiJingTongConfig } from './state'; + +export * from './state'; + +export class YiJingTong { + private config: YiJingTongConfig; + + constructor(config: YiJingTongConfig) { + this.config = config; + } + + async genRequest(action: string, sendData: Recordable = {}): Promise { + const url = + (this.config.base_url || 'http://szy.kjwlxt.com/hwc_api/') + action; + const res = await postJSONRequest(url, { + token: this.config.app_token, + ...sendData, + }); + + return res; + } +} diff --git a/packages/yi_jing_tong/src/modern-app-env.d.ts b/packages/yi_jing_tong/src/modern-app-env.d.ts new file mode 100644 index 0000000..32a72a0 --- /dev/null +++ b/packages/yi_jing_tong/src/modern-app-env.d.ts @@ -0,0 +1,2 @@ +/// +/// diff --git a/packages/yi_jing_tong/src/state/index.ts b/packages/yi_jing_tong/src/state/index.ts new file mode 100644 index 0000000..8024741 --- /dev/null +++ b/packages/yi_jing_tong/src/state/index.ts @@ -0,0 +1,7 @@ +/* eslint-disable @typescript-eslint/no-namespace */ +export interface YiJingTongConfig { + app_token: string; + base_url?: string; +} + +export namespace YiJingTongTypes {} diff --git a/packages/yi_jing_tong/tests/.eslintrc.js b/packages/yi_jing_tong/tests/.eslintrc.js new file mode 100644 index 0000000..2136c69 --- /dev/null +++ b/packages/yi_jing_tong/tests/.eslintrc.js @@ -0,0 +1,9 @@ +// eslint-disable-next-line import/no-commonjs +module.exports = { + root: true, + extends: '@modern-js-app', + parserOptions: { + tsconfigRootDir: __dirname, + project: require.resolve('./tsconfig.json'), + }, +}; diff --git a/packages/yi_jing_tong/tests/tsconfig.json b/packages/yi_jing_tong/tests/tsconfig.json new file mode 100644 index 0000000..ace3a74 --- /dev/null +++ b/packages/yi_jing_tong/tests/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "baseUrl": "../" + }, + "include": ["**/*", "../src"], + "exclude": ["**/node_modules"] +} diff --git a/packages/yi_jing_tong/tsconfig.json b/packages/yi_jing_tong/tsconfig.json new file mode 100644 index 0000000..9c92322 --- /dev/null +++ b/packages/yi_jing_tong/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "allowJs": true, + "baseUrl": ".", + "declaration": true, + "emitDeclarationOnly": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "isolatedModules": true, + "jsx": "preserve", + "lib": ["DOM", "ESNext"], + "moduleResolution": "node", + "paths": { + "@/*": ["./src/*"] + }, + "resolveJsonModule": true, + "rootDir": "src", + "skipLibCheck": true, + "strict": true + }, + "exclude": ["**/node_modules"], + "include": ["src"] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 49c57d2..1c91dcf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -600,6 +600,43 @@ importers: specifier: ~5.0.4 version: 5.0.4 + packages/yi_jing_tong: + dependencies: + '@cn-international-express-sdk/utils': + specifier: workspace:* + version: link:../utils + devDependencies: + '@modern-js/eslint-config': + specifier: 2.43.0 + version: 2.43.0(typescript@5.0.4) + '@modern-js/module-tools': + specifier: 2.43.0 + version: 2.43.0(typescript@5.0.4) + '@modern-js/plugin-testing': + specifier: 2.43.0 + version: 2.43.0(@types/node@16.11.68)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(ts-node@10.9.1(@types/node@16.11.68)(typescript@5.0.4))(tsconfig-paths@4.2.0)(typescript@5.0.4)(zod@3.22.4) + '@types/jest': + specifier: ~29.2.4 + version: 29.2.6 + '@types/node': + specifier: ~16.11.7 + version: 16.11.68 + husky: + specifier: ~8.0.1 + version: 8.0.3 + lint-staged: + specifier: ~13.1.0 + version: 13.1.4(enquirer@2.4.1) + prettier: + specifier: ~2.8.1 + version: 2.8.8 + rimraf: + specifier: ~3.0.2 + version: 3.0.2 + typescript: + specifier: ~5.0.4 + version: 5.0.4 + packages/yuntu: dependencies: '@cn-international-express-sdk/utils': @@ -696,7 +733,6 @@ packages: engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] '@ast-grep/napi-win32-arm64-msvc@0.12.0': resolution: {integrity: sha512-87YnIRmBZuJRQnE8Rkvnez6zbehdaNyRCZ+DXbJj0SK02BXYOXBqZ/pDZvP2ItZSEaV7Y5ONxZfSVw3uk+zxzA==} @@ -2382,25 +2418,21 @@ packages: resolution: {integrity: sha512-t7wbd5NbZ5H3LeiUGZey0CKJdJWluu/iqdecnoPDEbXRdF7caev9OAJuQ9fKEsK4uQHQLvQ0/pjFDyDbJbPG5w==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-musl@0.4.3': resolution: {integrity: sha512-VlqXmsgft9LeYxWm8bZB16f/SZE7xLaHgDwFR6KCFLhubPRnF7gvxLf/y8FAtZzV+9XDi7mhfLWHMyJJDqwFBQ==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-gnu@0.4.3': resolution: {integrity: sha512-7eGymsvYsHz/P1mvUo1O+UJqrFzlMXY41599UWRiX4M3tX/pvDtLvxxjZ3JHVvNzEaBCiQ5xyRzqhhRDzcj4ww==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-musl@0.4.3': resolution: {integrity: sha512-16PptmbtvpGHtEfbLoQjWjhBXOykdQRHXxn3RUTpkEXFbmhLnvnXbfmfSRoBuVNR+j0BqCrGiwweO43VBceJPg==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-win32-arm64-msvc@0.4.3': resolution: {integrity: sha512-q9Vsn9Glj6m24UQfXpxcirk5S8r1RmAShXxjF+yRrKqpOtq1IodLWWRZ85kQfJyfk9deAfVkpiqHdsoK54uqQQ==} @@ -5638,7 +5670,7 @@ packages: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, tarball: https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz} + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} source-map@0.7.4: