VideoShopExpress.php 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941
  1. <?php
  2. /**
  3. * 厦门云联储网络科技有限公司
  4. * https://www.baokuaiyun.com
  5. * Copyright (c) 2023 爆块云 All rights reserved.
  6. */
  7. namespace app\models;
  8. use Yii;
  9. /**
  10. * This is the model class for table "{{%express}}".
  11. *
  12. * @property integer $id
  13. * @property string $name
  14. * @property string $code
  15. * @property integer $sort
  16. * @property integer $is_delete
  17. */
  18. class VideoShopExpress extends \yii\db\ActiveRecord
  19. {
  20. /**
  21. * @inheritdoc
  22. */
  23. public static function tableName()
  24. {
  25. return '{{%video_shop_express}}';
  26. }
  27. /**
  28. * @inheritdoc
  29. */
  30. public function rules()
  31. {
  32. return [
  33. [['sort', 'is_delete'], 'integer'],
  34. [['name', 'code'], 'string', 'max' => 25],
  35. ];
  36. }
  37. /**
  38. * @inheritdoc
  39. */
  40. public function attributeLabels()
  41. {
  42. return [
  43. 'id' => 'ID',
  44. 'name' => 'Name',
  45. 'code' => 'Code',
  46. 'sort' => 'Sort',
  47. 'is_delete' => 'Is Delete',
  48. ];
  49. }
  50. public static function getExpressCode($express)
  51. {
  52. $list = self::getExpressList();
  53. foreach($list as $item){
  54. if($item['name'] == $express){
  55. return $item['code'];
  56. }
  57. }
  58. return 'ZTO';
  59. }
  60. public static function getExpressList()
  61. {
  62. return [
  63. [
  64. 'id' => 1,
  65. 'name' => '顺丰速运',
  66. 'code' => 'SF',
  67. ],
  68. [
  69. 'id' => 6,
  70. 'name' => '百世快递',
  71. 'code' => 'HTKY',
  72. ],
  73. [
  74. 'id' => 5,
  75. 'name' => '中通快递',
  76. 'code' => 'ZTO',
  77. ],
  78. [
  79. 'id' => 2,
  80. 'name' => '申通快递',
  81. 'code' => 'STO',
  82. ],
  83. [
  84. 'id' => 4,
  85. 'name' => '圆通速递',
  86. 'code' => 'YTO',
  87. ],
  88. [
  89. 'id' => 3,
  90. 'name' => '韵达速递',
  91. 'code' => 'YD',
  92. ],
  93. [
  94. 'id' => 55,
  95. 'name' => '龙邦快递',
  96. 'code' => 'LB',
  97. ],
  98. [
  99. 'id' => 56,
  100. 'name' => '联昊通速递',
  101. 'code' => 'LHT',
  102. ],
  103. [
  104. 'id' => 57,
  105. 'name' => '民航快递',
  106. 'code' => 'MHKD',
  107. ],
  108. [
  109. 'id' => 9,
  110. 'name' => '邮政快递包裹',
  111. 'code' => 'YZPY',
  112. ],
  113. [
  114. 'id' => 7,
  115. 'name' => 'EMS',
  116. 'code' => 'EMS',
  117. ],
  118. [
  119. 'id' => 8,
  120. 'name' => '天天快递',
  121. 'code' => 'HHTT',
  122. ],
  123. [
  124. 'id' => 103,
  125. 'name' => '京东物流',
  126. 'code' => 'JD',
  127. ],
  128. [
  129. 'id' => 58,
  130. 'name' => '明亮物流',
  131. 'code' => 'MLWL',
  132. ],
  133. [
  134. 'id' => 12,
  135. 'name' => '全峰快递',
  136. 'code' => 'QFKD',
  137. ],
  138. [
  139. 'id' => 11,
  140. 'name' => '国通快递',
  141. 'code' => 'GTO',
  142. ],
  143. [
  144. 'id' => 13,
  145. 'name' => '优速快递',
  146. 'code' => 'UC',
  147. ],
  148. [
  149. 'id' => 18,
  150. 'name' => '德邦',
  151. 'code' => 'DBL',
  152. ],
  153. [
  154. 'id' => 33,
  155. 'name' => '快捷快递',
  156. 'code' => 'FAST',
  157. ],
  158. [
  159. 'id' => 10,
  160. 'name' => '宅急送',
  161. 'code' => 'ZJS',
  162. ],
  163. [
  164. 'id' => 21,
  165. 'name' => '安捷快递',
  166. 'code' => 'AJ',
  167. ],
  168. [
  169. 'id' => 59,
  170. 'name' => '能达速递',
  171. 'code' => 'NEDA',
  172. ],
  173. [
  174. 'id' => 60,
  175. 'name' => '平安达腾飞快递',
  176. 'code' => 'PADTF',
  177. ],
  178. [
  179. 'id' => 100,
  180. 'name' => '泛捷快递',
  181. 'code' => 'PANEX',
  182. ],
  183. [
  184. 'id' => 101,
  185. 'name' => 'PCA Express',
  186. 'code' => 'PCA',
  187. ],
  188. [
  189. 'id' => 61,
  190. 'name' => '全晨快递',
  191. 'code' => 'QCKD',
  192. ],
  193. [
  194. 'id' => 62,
  195. 'name' => '全日通快递',
  196. 'code' => 'QRT',
  197. ],
  198. [
  199. 'id' => 95,
  200. 'name' => '快客快递',
  201. 'code' => 'QUICK',
  202. ],
  203. [
  204. 'id' => 83,
  205. 'name' => '义达国际物流',
  206. 'code' => 'YDH',
  207. ],
  208. [
  209. 'id' => 84,
  210. 'name' => '越丰物流',
  211. 'code' => 'YFEX',
  212. ],
  213. [
  214. 'id' => 85,
  215. 'name' => '原飞航物流',
  216. 'code' => 'YFHEX',
  217. ],
  218. [
  219. 'id' => 86,
  220. 'name' => '亚风快递',
  221. 'code' => 'YFSD',
  222. ],
  223. [
  224. 'id' => 87,
  225. 'name' => '运通快递',
  226. 'code' => 'YTKD',
  227. ],
  228. [
  229. 'id' => 88,
  230. 'name' => '亿翔快递',
  231. 'code' => 'YXKD',
  232. ],
  233. [
  234. 'id' => 89,
  235. 'name' => '增益快递',
  236. 'code' => 'ZENY',
  237. ],
  238. [
  239. 'id' => 90,
  240. 'name' => '汇强快递',
  241. 'code' => 'ZHQKD',
  242. ],
  243. [
  244. 'id' => 91,
  245. 'name' => '众通快递',
  246. 'code' => 'ZTE',
  247. ],
  248. [
  249. 'id' => 14,
  250. 'name' => '中铁快运',
  251. 'code' => 'ZTKY',
  252. ],
  253. [
  254. 'id' => 15,
  255. 'name' => '中铁物流',
  256. 'code' => 'ZTWL',
  257. ],
  258. [
  259. 'id' => 92,
  260. 'name' => '中邮物流',
  261. 'code' => 'ZYWL',
  262. ],
  263. [
  264. 'id' => 16,
  265. 'name' => '亚马逊物流',
  266. 'code' => 'AMAZON',
  267. ],
  268. [
  269. 'id' => 22,
  270. 'name' => '安能物流',
  271. 'code' => 'ANE',
  272. ],
  273. [
  274. 'id' => 23,
  275. 'name' => '安信达快递',
  276. 'code' => 'AXD',
  277. ],
  278. [
  279. 'id' => 99,
  280. 'name' => '澳邮专线',
  281. 'code' => 'AYCA',
  282. ],
  283. [
  284. 'id' => 25,
  285. 'name' => '百福东方',
  286. 'code' => 'BFDF',
  287. ],
  288. [
  289. 'id' => 24,
  290. 'name' => '北青小红帽',
  291. 'code' => 'BQXHM',
  292. ],
  293. [
  294. 'id' => 20,
  295. 'name' => '百世快运',
  296. 'code' => 'BTWL',
  297. ],
  298. [
  299. 'id' => 26,
  300. 'name' => 'CCES快递',
  301. 'code' => 'CCES',
  302. ],
  303. [
  304. 'id' => 27,
  305. 'name' => '城市100',
  306. 'code' => 'CITY100',
  307. ],
  308. [
  309. 'id' => 17,
  310. 'name' => '城际快递',
  311. 'code' => 'CJKD',
  312. ],
  313. [
  314. 'id' => 96,
  315. 'name' => 'CNPEX中邮快递',
  316. 'code' => 'CNPEX',
  317. ],
  318. [
  319. 'id' => 28,
  320. 'name' => 'COE东方快递',
  321. 'code' => 'COE',
  322. ],
  323. [
  324. 'id' => 29,
  325. 'name' => '长沙创一',
  326. 'code' => 'CSCY',
  327. ],
  328. [
  329. 'id' => 30,
  330. 'name' => '成都善途速运',
  331. 'code' => 'CDSTKY',
  332. ],
  333. [
  334. 'id' => 31,
  335. 'name' => 'D速物流',
  336. 'code' => 'DSWL',
  337. ],
  338. [
  339. 'id' => 32,
  340. 'name' => '大田物流',
  341. 'code' => 'DTWL',
  342. ],
  343. [
  344. 'id' => 34,
  345. 'name' => 'FEDEX联邦(国内件)',
  346. 'code' => 'FEDEX',
  347. ],
  348. [
  349. 'id' => 35,
  350. 'name' => 'FEDEX联邦(国际件)',
  351. 'code' => 'FEDEX_GJ',
  352. ],
  353. [
  354. 'id' => 36,
  355. 'name' => '飞康达',
  356. 'code' => 'FKD',
  357. ],
  358. [
  359. 'id' => 37,
  360. 'name' => '广东邮政',
  361. 'code' => 'GDEMS',
  362. ],
  363. [
  364. 'id' => 38,
  365. 'name' => '共速达',
  366. 'code' => 'GSD',
  367. ],
  368. [
  369. 'id' => 39,
  370. 'name' => '高铁速递',
  371. 'code' => 'GTSD',
  372. ],
  373. [
  374. 'id' => 19,
  375. 'name' => '汇丰物流',
  376. 'code' => 'HFWL',
  377. ],
  378. [
  379. 'id' => 40,
  380. 'name' => '恒路物流',
  381. 'code' => 'HLWL',
  382. ],
  383. [
  384. 'id' => 41,
  385. 'name' => '天地华宇',
  386. 'code' => 'HOAU',
  387. ],
  388. [
  389. 'id' => 97,
  390. 'name' => '鸿桥供应链',
  391. 'code' => 'HOTSCM',
  392. ],
  393. [
  394. 'id' => 98,
  395. 'name' => '海派通物流公司',
  396. 'code' => 'HPTEX',
  397. ],
  398. [
  399. 'id' => 42,
  400. 'name' => '华强物流',
  401. 'code' => 'hq568',
  402. ],
  403. [
  404. 'id' => 43,
  405. 'name' => '华夏龙物流',
  406. 'code' => 'HXLWL',
  407. ],
  408. [
  409. 'id' => 44,
  410. 'name' => '好来运快递',
  411. 'code' => 'HYLSD',
  412. ],
  413. [
  414. 'id' => 45,
  415. 'name' => '京广速递',
  416. 'code' => 'JGSD',
  417. ],
  418. [
  419. 'id' => 46,
  420. 'name' => '九曳供应链',
  421. 'code' => 'JIUYE',
  422. ],
  423. [
  424. 'id' => 47,
  425. 'name' => '佳吉快运',
  426. 'code' => 'JJKY',
  427. ],
  428. [
  429. 'id' => 48,
  430. 'name' => '嘉里物流',
  431. 'code' => 'JLDT',
  432. ],
  433. [
  434. 'id' => 49,
  435. 'name' => '捷特快递',
  436. 'code' => 'JTKD',
  437. ],
  438. [
  439. 'id' => 50,
  440. 'name' => '急先达',
  441. 'code' => 'JXD',
  442. ],
  443. [
  444. 'id' => 51,
  445. 'name' => '晋越快递',
  446. 'code' => 'JYKD',
  447. ],
  448. [
  449. 'id' => 52,
  450. 'name' => '加运美',
  451. 'code' => 'JYM',
  452. ],
  453. [
  454. 'id' => 53,
  455. 'name' => '佳怡物流',
  456. 'code' => 'JYWL',
  457. ],
  458. [
  459. 'id' => 54,
  460. 'name' => '跨越物流',
  461. 'code' => 'KYWL',
  462. ],
  463. [
  464. 'id' => 63,
  465. 'name' => '如风达',
  466. 'code' => 'RFD',
  467. ],
  468. [
  469. 'id' => 94,
  470. 'name' => '瑞丰速递',
  471. 'code' => 'RFEX',
  472. ],
  473. [
  474. 'id' => 64,
  475. 'name' => '赛澳递',
  476. 'code' => 'SAD',
  477. ],
  478. [
  479. 'id' => 65,
  480. 'name' => '圣安物流',
  481. 'code' => 'SAWL',
  482. ],
  483. [
  484. 'id' => 66,
  485. 'name' => '盛邦物流',
  486. 'code' => 'SBWL',
  487. ],
  488. [
  489. 'id' => 67,
  490. 'name' => '上大物流',
  491. 'code' => 'SDWL',
  492. ],
  493. [
  494. 'id' => 68,
  495. 'name' => '盛丰物流',
  496. 'code' => 'SFWL',
  497. ],
  498. [
  499. 'id' => 69,
  500. 'name' => '盛辉物流',
  501. 'code' => 'SHWL',
  502. ],
  503. [
  504. 'id' => 70,
  505. 'name' => '速通物流',
  506. 'code' => 'ST',
  507. ],
  508. [
  509. 'id' => 71,
  510. 'name' => '速腾快递',
  511. 'code' => 'STWL',
  512. ],
  513. [
  514. 'id' => 93,
  515. 'name' => '速必达物流',
  516. 'code' => 'SUBIDA',
  517. ],
  518. [
  519. 'id' => 72,
  520. 'name' => '速尔快递',
  521. 'code' => 'SURE',
  522. ],
  523. [
  524. 'id' => 73,
  525. 'name' => '唐山申通',
  526. 'code' => 'TSSTO',
  527. ],
  528. [
  529. 'id' => 74,
  530. 'name' => '全一快递',
  531. 'code' => 'UAPEX',
  532. ],
  533. [
  534. 'id' => 102,
  535. 'name' => 'UEQ Express',
  536. 'code' => 'UEQ',
  537. ],
  538. [
  539. 'id' => 75,
  540. 'name' => '万家物流',
  541. 'code' => 'WJWL',
  542. ],
  543. [
  544. 'id' => 76,
  545. 'name' => '万象物流',
  546. 'code' => 'WXWL',
  547. ],
  548. [
  549. 'id' => 77,
  550. 'name' => '新邦物流',
  551. 'code' => 'XBWL',
  552. ],
  553. [
  554. 'id' => 78,
  555. 'name' => '信丰物流',
  556. 'code' => 'XFEX',
  557. ],
  558. [
  559. 'id' => 79,
  560. 'name' => '希优特',
  561. 'code' => 'XYT',
  562. ],
  563. [
  564. 'id' => 80,
  565. 'name' => '新杰物流',
  566. 'code' => 'XJ',
  567. ],
  568. [
  569. 'id' => 81,
  570. 'name' => '源安达快递',
  571. 'code' => 'YADEX',
  572. ],
  573. [
  574. 'id' => 82,
  575. 'name' => '远成物流',
  576. 'code' => 'YCWL',
  577. ],
  578. [
  579. 'id' => 104,
  580. 'name' => '丰恒物流',
  581. 'code' => 'FHWL',
  582. ],
  583. [
  584. 'id' => 105,
  585. 'name' => '佳润达物流',
  586. 'code' => 'JRDWL',
  587. ],
  588. [
  589. 'id' => 1001,
  590. 'name' => '邮政包裹信件',
  591. 'code' => 'YZPY',
  592. ],
  593. [
  594. 'id' => 1002,
  595. 'name' => '安能快递',
  596. 'code' => 'ANE',
  597. ],
  598. [
  599. 'id' => 1003,
  600. 'name' => '程光',
  601. 'code' => 'CG',
  602. ],
  603. [
  604. 'id' => 1004,
  605. 'name' => '富腾达',
  606. 'code' => 'FTD',
  607. ],
  608. [
  609. 'id' => 1005,
  610. 'name' => '中通快运',
  611. 'code' => 'ZTOKY',
  612. ],
  613. [
  614. 'id' => 1006,
  615. 'name' => '品骏快递',
  616. 'code' => 'PJ',
  617. ],
  618. [
  619. 'id' => 1010,
  620. 'name' => '极兔速递',
  621. 'code' => 'JTSD',
  622. ],
  623. ];
  624. }
  625. // 根据快递公司名称获取数据
  626. public static function getOne($param)
  627. {
  628. $return = false;
  629. if (!$param) {
  630. return $return;
  631. }
  632. $expressList = self::getExpressList();
  633. foreach ($expressList as $item) {
  634. if ($item['name'] == $param) {
  635. $return = $item;
  636. break;
  637. }
  638. }
  639. return $return;
  640. }
  641. /**
  642. * 获取数组中最后一个Id的值,用于追加数据
  643. * @return mixed
  644. */
  645. public static function highestId()
  646. {
  647. $express = self::getExpressList();
  648. $ids = [];
  649. foreach ($express as $item) {
  650. $ids[] = $item['id'];
  651. }
  652. rsort($ids);
  653. return reset($ids);
  654. }
  655. /**
  656. * @return array
  657. * 快递鸟提供的电子面单模板规格
  658. */
  659. public static function getTemplateSize()
  660. {
  661. return [
  662. 'DBL' => [
  663. [
  664. 'name' => '二联177',
  665. 'value' => ''
  666. ],
  667. [
  668. 'name' => '二联177新',
  669. 'value' => '18001'
  670. ],
  671. [
  672. 'name' => '三联177新',
  673. 'value' => '18002'
  674. ],
  675. ],
  676. 'EMS' => [
  677. [
  678. 'name' => '二联150',
  679. 'value' => ''
  680. ],
  681. [
  682. 'name' => '隐私二联150',
  683. 'value' => '180_YS'
  684. ],
  685. ],
  686. 'KYSY' => [
  687. [
  688. 'name' => '二联137',
  689. 'value' => ''
  690. ],
  691. [
  692. 'name' => '三联210',
  693. 'value' => '210'
  694. ],
  695. ],
  696. 'SF' => [
  697. [
  698. 'name' => '二联150',
  699. 'value' => ''
  700. ],
  701. [
  702. 'name' => '三联210',
  703. 'value' => '210'
  704. ],
  705. [
  706. 'name' => '二联150新',
  707. 'value' => '15001'
  708. ],
  709. [
  710. 'name' => '二联180新',
  711. 'value' => '180'
  712. ],
  713. [
  714. 'name' => '三联210新',
  715. 'value' => '21001'
  716. ],
  717. ],
  718. 'STO' => [
  719. [
  720. 'name' => '一联130',
  721. 'value' => '130'
  722. ],
  723. [
  724. 'name' => '二联180',
  725. 'value' => ''
  726. ],
  727. [
  728. 'name' => '二联150',
  729. 'value' => '150'
  730. ],
  731. [
  732. 'name' => '二联180新',
  733. 'value' => '180'
  734. ],
  735. [
  736. 'name' => '三联180新',
  737. 'value' => '18003'
  738. ],
  739. [
  740. 'name' => '隐私二联180新',
  741. 'value' => '180_YS'
  742. ],
  743. ],
  744. 'SURE' => [
  745. [
  746. 'name' => '二联150',
  747. 'value' => ''
  748. ],
  749. [
  750. 'name' => '二联150新',
  751. 'value' => '150'
  752. ],
  753. [
  754. 'name' => '二联180新',
  755. 'value' => '180'
  756. ],
  757. ],
  758. 'YD' => [
  759. [
  760. 'name' => '一联130',
  761. 'value' => '130'
  762. ],
  763. [
  764. 'name' => '二联203',
  765. 'value' => ''
  766. ],
  767. [
  768. 'name' => '二联180',
  769. 'value' => '180'
  770. ],
  771. [
  772. 'name' => '隐私二联180',
  773. 'value' => '180_YS'
  774. ],
  775. ],
  776. 'YTO' => [
  777. [
  778. 'name' => '一联130',
  779. 'value' => '130'
  780. ],
  781. [
  782. 'name' => '二联180',
  783. 'value' => ''
  784. ],
  785. [
  786. 'name' => '三联180',
  787. 'value' => '180'
  788. ],
  789. [
  790. 'name' => '二联180新',
  791. 'value' => '18001'
  792. ],
  793. [
  794. 'name' => '隐私二联180新',
  795. 'value' => '18001_YS'
  796. ],
  797. ],
  798. 'ZJS' => [
  799. [
  800. 'name' => '二联120',
  801. 'value' => ''
  802. ],
  803. [
  804. 'name' => '二联180',
  805. 'value' => '180'
  806. ],
  807. ],
  808. 'ZTO' => [
  809. [
  810. 'name' => '一联130',
  811. 'value' => '130'
  812. ],
  813. [
  814. 'name' => '二联180',
  815. 'value' => ''
  816. ],
  817. [
  818. 'name' => '二联180新',
  819. 'value' => '180'
  820. ],
  821. [
  822. 'name' => '隐私二联180新',
  823. 'value' => '180_YS'
  824. ],
  825. ],
  826. ];
  827. }
  828. }