orderSn.php 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579
  1. <?php
  2. namespace common\components;
  3. use biz\shop\classes\ShopClass;
  4. use biz\sj\classes\CashSnClass;
  5. use bizGhs\book\classes\BookSnClass;
  6. use bizGhs\clear\classes\ClearRefundSnClass;
  7. use bizGhs\custom\classes\CustomRechargeSnClass;
  8. use bizGhs\express\classes\GhsExpressSnClass;
  9. use bizGhs\ghs\classes\GhsRechargeSnClass;
  10. use bizGhs\live\classes\LiveOrderSnClass;
  11. use bizGhs\order\classes\GiveSnClass;
  12. use bizGhs\order\classes\OrderClass;
  13. use bizHd\cg\classes\AcceptSnClass;
  14. use bizHd\cg\classes\CgRefundSnClass;
  15. use bizHd\common\classes\MobileSnClass;
  16. use bizHd\express\classes\ExpressSnClass;
  17. use bizHd\goods\classes\GoodsCgSnClass;
  18. use bizHd\goods\classes\GoodsSnClass;
  19. use bizHd\ljh\classes\LjhSnClass;
  20. use bizHd\order\classes\ScanPaySnClass;
  21. use bizHd\order\classes\SettleSnClass;
  22. use bizHd\part\classes\PartSnClass;
  23. use bizHd\pd\classes\PdGoodsSnClass;
  24. use bizHd\purchase\classes\PurchaseClearSnClass;
  25. use biz\recharge\classes\RechargeSnClass;
  26. use bizGhs\check\classes\CheckSnClass;
  27. use bizGhs\order\classes\OrderSnClass;
  28. use bizGhs\order\classes\PurchaseSnClass;
  29. use bizHd\px\classes\PxApplySnClass;
  30. use bizHd\refund\classes\HdRefundSnClass;
  31. use bizHd\work\classes\WorkSnClass;
  32. use bizMall\renew\classes\RenewSnClass;
  33. use Yii;
  34. use yii\imagine\Image;
  35. //订单号生成 ssh 2021.1.19
  36. class orderSn
  37. {
  38. public static function getGhsExpressSn($data)
  39. {
  40. $prefix = 'EX_CS';
  41. if (getenv('YII_ENV', 'local') == 'production') {
  42. $prefix = 'EX';
  43. }
  44. $data['id'] = null;
  45. $respond = GhsExpressSnClass::add($data);
  46. $id = $respond['id'] ?? 0;
  47. if (empty($id)) {
  48. util::fail('单号没有生成');
  49. }
  50. return $prefix . $id;
  51. }
  52. public static function getExpressSn($data)
  53. {
  54. $prefix = 'EX_CS';
  55. if (getenv('YII_ENV', 'local') == 'production') {
  56. $prefix = 'EX';
  57. }
  58. $data['id'] = null;
  59. $respond = ExpressSnClass::add($data);
  60. $id = $respond['id'] ?? 0;
  61. if (empty($id)) {
  62. util::fail('单号没有生成');
  63. }
  64. return $prefix . $id;
  65. }
  66. //客户叫供货商帮忙充值订单号 ssh 20240309
  67. public static function getGhsRechargeSn()
  68. {
  69. $prefix = 'GRS_CS';
  70. if (getenv('YII_ENV', 'local') == 'production') {
  71. $prefix = 'GRS';
  72. }
  73. $respond = GhsRechargeSnClass::add(['id' => null]);
  74. $id = $respond['id'] ?? 0;
  75. if (empty($id)) {
  76. util::fail('单号没有生成');
  77. }
  78. return $prefix . $id;
  79. }
  80. //供货商的客户充值订单号 ssh 20240309
  81. public static function getGhsCustomRechargeSn()
  82. {
  83. $prefix = 'CRS_CS';
  84. if (getenv('YII_ENV', 'local') == 'production') {
  85. $prefix = 'CRS';
  86. }
  87. $respond = CustomRechargeSnClass::add(['id' => null]);
  88. $id = $respond['id'] ?? 0;
  89. if (empty($id)) {
  90. util::fail('单号没有生成');
  91. }
  92. return $prefix . $id;
  93. }
  94. public static function getAcceptSn()
  95. {
  96. $prefix = 'ACC_CS';
  97. if (getenv('YII_ENV', 'local') == 'production') {
  98. $prefix = 'ACC';
  99. }
  100. $respond = AcceptSnClass::add(['id' => null]);
  101. $id = $respond['id'] ?? 0;
  102. if (empty($id)) {
  103. util::fail('单号没有生成');
  104. }
  105. return $prefix . $id;
  106. }
  107. public static function getGiveSn()
  108. {
  109. $prefix = 'GIV_CS';
  110. if (getenv('YII_ENV', 'local') == 'production') {
  111. $prefix = 'GIV';
  112. }
  113. $respond = GiveSnClass::add(['id' => null]);
  114. $id = $respond['id'] ?? 0;
  115. if (empty($id)) {
  116. util::fail('单号没有生成');
  117. }
  118. return $prefix . $id;
  119. }
  120. //供货商订单号生成 ssh 2021.1.19
  121. public static function getGhsOrderSn($params = [])
  122. {
  123. $prefix = 'XSD_CS';
  124. if (getenv('YII_ENV', 'local') == 'production') {
  125. $prefix = 'XSD';
  126. }
  127. $params['id'] = null;
  128. $respond = OrderSnClass::add($params);
  129. $id = $respond['id'] ?? 0;
  130. if (empty($id)) {
  131. util::fail('订单号没有生成');
  132. }
  133. return $prefix . $id;
  134. }
  135. //零售商订单号生成 ssh 2021.1.19
  136. public static function getOrderSn()
  137. {
  138. $prefix = 'KD_CS';
  139. if (getenv('YII_ENV', 'local') == 'production') {
  140. $prefix = 'KD';
  141. }
  142. $respond = \bizHd\order\classes\OrderSnClass::add(['id' => null]);
  143. $id = $respond['id'] ?? 0;
  144. if (empty($id)) {
  145. util::fail('订单号没有生成');
  146. }
  147. return $prefix . $id;
  148. }
  149. public static function getScanPaySn($params)
  150. {
  151. $params['id'] = null;
  152. $prefix = 'SC_CS';
  153. if (getenv('YII_ENV', 'local') == 'production') {
  154. $prefix = 'SC';
  155. }
  156. $respond = ScanPaySnClass::add($params);
  157. $id = $respond['id'] ?? 0;
  158. if (empty($id)) {
  159. util::fail('订单号没有生成');
  160. }
  161. return $prefix . $id;
  162. }
  163. //供货商采购单号 ssh 2021.1.19
  164. public static function getGhsPurchaseSn()
  165. {
  166. $prefix = 'PH_CS';
  167. if (getenv('YII_ENV', 'local') == 'production') {
  168. $prefix = 'PH';
  169. }
  170. $respond = PurchaseSnClass::add(['id' => null]);
  171. $id = $respond['id'] ?? 0;
  172. if (empty($id)) {
  173. util::fail('采购单号没有生成');
  174. }
  175. return $prefix . $id;
  176. }
  177. //供货商盘点单号 ssh 2021.1.19
  178. public static function getGhsCheckSn()
  179. {
  180. $prefix = 'PD_CS';
  181. if (getenv('YII_ENV', 'local') == 'production') {
  182. $prefix = 'PD';
  183. }
  184. $respond = CheckSnClass::add(['id' => null]);
  185. $id = $respond['id'] ?? 0;
  186. if (empty($id)) {
  187. util::fail('盘点单号没有生成');
  188. }
  189. return $prefix . $id;
  190. }
  191. public static function getPdGoodsSn()
  192. {
  193. $prefix = 'PDG_CS';
  194. if (getenv('YII_ENV', 'local') == 'production') {
  195. $prefix = 'PDG';
  196. }
  197. $respond = PdGoodsSnClass::add(['id' => null]);
  198. $id = $respond['id'] ?? 0;
  199. if (empty($id)) {
  200. util::fail('盘点单号没有生成');
  201. }
  202. return $prefix . $id;
  203. }
  204. //零售商采购单号 ssh 2021.1.19
  205. public static function getPurchaseSn($params = [])
  206. {
  207. $prefix = 'CG_CS';
  208. if (getenv('YII_ENV', 'local') == 'production') {
  209. $prefix = 'CG';
  210. }
  211. $params['id'] = null;
  212. $respond = \bizHd\purchase\classes\PurchaseSnClass::add($params);
  213. $id = $respond['id'] ?? 0;
  214. if (empty($id)) {
  215. util::fail('采购单号没有生成');
  216. }
  217. return $prefix . $id;
  218. }
  219. //零售商采购单号 ssh 2021.1.19
  220. public static function getPurchaseClearSn()
  221. {
  222. $prefix = 'CL_CS';
  223. if (getenv('YII_ENV', 'local') == 'production') {
  224. $prefix = 'CL';
  225. }
  226. $respond = PurchaseClearSnClass::add(['id' => null]);
  227. $id = $respond['id'] ?? 0;
  228. if (empty($id)) {
  229. util::fail('单号没有生成');
  230. }
  231. return $prefix . $id;
  232. }
  233. //供货商入库订单号 lqh 2021.1.23
  234. public static function getGhsStockInSn()
  235. {
  236. $prefix = 'RK_CS';
  237. if (getenv('YII_ENV', 'local') == 'production') {
  238. $prefix = 'RK';
  239. }
  240. $respond = \bizGhs\order\classes\StockInSnClass::add(['id' => null]);
  241. $id = $respond['id'] ?? 0;
  242. if (empty($id)) {
  243. util::fail('入库单号没有生成');
  244. }
  245. return $prefix . $id;
  246. }
  247. //供货商出库订单号 lqh 2021.1.23
  248. public static function getGhsStockOutSn()
  249. {
  250. $prefix = 'CK_CS';
  251. if (getenv('YII_ENV', 'local') == 'production') {
  252. $prefix = 'CK';
  253. }
  254. $respond = \bizGhs\order\classes\StockOutSnClass::add(['id' => null]);
  255. $id = $respond['id'] ?? 0;
  256. if (empty($id)) {
  257. util::fail('出库单号没有生成');
  258. }
  259. return $prefix . $id;
  260. }
  261. //充值单号 ssh 2021.2.20
  262. public static function getRechargeSn()
  263. {
  264. $prefix = 'CZ_CS';
  265. if (getenv('YII_ENV', 'local') == 'production') {
  266. $prefix = 'CZ';
  267. }
  268. $respond = RechargeSnClass::add(['id' => null]);
  269. $id = $respond['id'] ?? 0;
  270. if (empty($id)) {
  271. util::fail('充值单号没有生成');
  272. }
  273. return $prefix . $id;
  274. }
  275. //供货商批量结算订单号 ssh 2021.3.15
  276. public static function getGhsOrderClearSn()
  277. {
  278. // BOC batchOrderClear
  279. $prefix = 'BOC_CS';
  280. if (getenv('YII_ENV', 'local') == 'production') {
  281. $prefix = 'BOC';
  282. }
  283. $respond = OrderClass::add(['id' => null]);
  284. $id = $respond['id'] ?? 0;
  285. if (empty($id)) {
  286. util::fail('订单号没有生成');
  287. }
  288. return $prefix . $id;
  289. }
  290. //培训报名订单号 ssh 2021.3.17
  291. public static function getPxApplySn()
  292. {
  293. $prefix = 'PX_CS';
  294. if (getenv('YII_ENV', 'local') == 'production') {
  295. $prefix = 'PX';
  296. }
  297. $respond = PxApplySnClass::add(['id' => null]);
  298. $id = $respond['id'] ?? 0;
  299. if (empty($id)) {
  300. util::fail('订单号没有生成');
  301. }
  302. return $prefix . $id;
  303. }
  304. //获取续费订单号 ssh 2021.3.24
  305. public static function getRenewSn()
  306. {
  307. $prefix = 'RN_CS';
  308. if (getenv('YII_ENV', 'local') == 'production') {
  309. $prefix = 'RN';
  310. }
  311. $respond = RenewSnClass::add(['id' => null]);
  312. $id = $respond['id'] ?? 0;
  313. if (empty($id)) {
  314. util::fail('订单号没有生成');
  315. }
  316. return $prefix . $id;
  317. }
  318. //获取提现订单号 ssh 2021.5.17
  319. public static function getCashSn()
  320. {
  321. $prefix = 'CH_CS';
  322. if (getenv('YII_ENV', 'local') == 'production') {
  323. $prefix = 'CH';
  324. }
  325. $respond = CashSnClass::add(['id' => null]);
  326. $id = $respond['id'] ?? 0;
  327. if (empty($id)) {
  328. util::fail('订单号没有生成');
  329. }
  330. return $prefix . $id;
  331. }
  332. //供货商报损订单号 lqh 2021.6.211
  333. public static function getGhsStockWastageSn()
  334. {
  335. $prefix = 'WT_CS';
  336. if (getenv('YII_ENV', 'local') == 'production') {
  337. $prefix = 'WT';
  338. }
  339. $respond = \bizGhs\order\classes\StockWastageSnClass::add(['id' => null]);
  340. $id = $respond['id'] ?? 0;
  341. if (empty($id)) {
  342. util::fail('报损单号没有生成');
  343. }
  344. return $prefix . $id;
  345. }
  346. public static function getPartSn()
  347. {
  348. $prefix = 'PT_CS';
  349. if (getenv('YII_ENV', 'local') == 'production') {
  350. $prefix = 'PT';
  351. }
  352. $respond = PartSnClass::add(['id' => null]);
  353. $id = $respond['id'] ?? 0;
  354. if (empty($id)) {
  355. util::fail('拆散单号没有生成');
  356. }
  357. return $prefix . $id;
  358. }
  359. //花店销售单的退款单 ssh 20220427
  360. public static function getHdRefundSn()
  361. {
  362. $prefix = 'RF_CS';
  363. if (getenv('YII_ENV', 'local') == 'production') {
  364. $prefix = 'RF';
  365. }
  366. $respond = HdRefundSnClass::add(['id' => null]);
  367. $id = $respond['id'] ?? 0;
  368. if (empty($id)) {
  369. util::fail('退款单号没有生成');
  370. }
  371. return $prefix . $id;
  372. }
  373. //供货商退款订单号 lqh 2021.6.26
  374. public static function getGhsRefundSn()
  375. {
  376. $prefix = 'TK_CS';
  377. if (getenv('YII_ENV', 'local') == 'production') {
  378. $prefix = 'TK';
  379. }
  380. $respond = \bizGhs\order\classes\RefundSnClass::add(['id' => null]);
  381. $id = $respond['id'] ?? 0;
  382. if (empty($id)) {
  383. util::fail('退款单号没有生成');
  384. }
  385. return $prefix . $id;
  386. }
  387. //零售采购单的退款单 ssh 20219628
  388. public static function getCgRefundSn()
  389. {
  390. $prefix = 'RD_CS';
  391. if (getenv('YII_ENV', 'local') == 'production') {
  392. $prefix = 'RD';
  393. }
  394. $respond = CgRefundSnClass::add(['id' => null]);
  395. $id = $respond['id'] ?? 0;
  396. if (empty($id)) {
  397. util::fail('退款单号没有生成');
  398. }
  399. return $prefix . $id;
  400. }
  401. public static function getClearRefundSn()
  402. {
  403. $prefix = 'RDS_CS';
  404. if (getenv('YII_ENV', 'local') == 'production') {
  405. $prefix = 'RDS';
  406. }
  407. $respond = ClearRefundSnClass::add(['id' => null]);
  408. $id = $respond['id'] ?? 0;
  409. if (empty($id)) {
  410. util::fail('结账退款单号没有生成');
  411. }
  412. return $prefix . $id;
  413. }
  414. //制作单 ssh 20220319
  415. public static function getWorkSn()
  416. {
  417. $prefix = 'WK_CS';
  418. if (getenv('YII_ENV', 'local') == 'production') {
  419. $prefix = 'WK';
  420. }
  421. $respond = WorkSnClass::add(['id' => null]);
  422. $id = $respond['id'] ?? 0;
  423. if (empty($id)) {
  424. util::fail('单号没有生成');
  425. }
  426. return $prefix . $id;
  427. }
  428. //盆栽采购订单号 ssh 20220405
  429. public static function getGoodsCgSn()
  430. {
  431. $prefix = 'GC_CS';
  432. if (getenv('YII_ENV', 'local') == 'production') {
  433. $prefix = 'GC';
  434. }
  435. $respond = GoodsCgSnClass::add(['id' => null]);
  436. $id = $respond['id'] ?? 0;
  437. if (empty($id)) {
  438. util::fail('单号没有生成');
  439. }
  440. return $prefix . $id;
  441. }
  442. //商品有效编号1-开头 ssh 20220405
  443. public static function getGoodsSn()
  444. {
  445. $prefix = '1-';
  446. $respond = GoodsSnClass::add(['id' => null]);
  447. $id = $respond['id'] ?? 0;
  448. if (empty($id)) {
  449. util::fail('单号没有生成');
  450. }
  451. return $prefix . $id;
  452. }
  453. //二批采购退款 ssh 20220909
  454. public static function getGhsCgRefundSn()
  455. {
  456. $prefix = 'GCRD_CS';
  457. if (getenv('YII_ENV', 'local') == 'production') {
  458. $prefix = 'GCRD';
  459. }
  460. $respond = \bizGhs\cg\classes\CgRefundSnClass::add(['id' => null]);
  461. $id = $respond['id'] ?? 0;
  462. if (empty($id)) {
  463. util::fail('单号没有生成');
  464. }
  465. return $prefix . $id;
  466. }
  467. //结账编号 ssh 20220919
  468. public static function getSettleSn()
  469. {
  470. $prefix = 'SL_CS';
  471. if (getenv('YII_ENV', 'local') == 'production') {
  472. $prefix = 'SL';
  473. }
  474. $respond = SettleSnClass::add(['id' => null]);
  475. $id = $respond['id'] ?? 0;
  476. if (empty($id)) {
  477. util::fail('单号没有生成');
  478. }
  479. return $prefix . $id;
  480. }
  481. //生成虚拟手机号 ssh 20230303
  482. public static function getMobileSn()
  483. {
  484. $newMobile = 0;
  485. for ($i = 0; $i <= 999999; $i++) {
  486. $respond = MobileSnClass::add(['id' => null]);
  487. $id = isset($respond['id']) ? (string)$respond['id'] : '';
  488. if (empty($id)) {
  489. util::fail('没有生成手机号');
  490. }
  491. $shop = ShopClass::getByCondition(['mobile' => $id], true);
  492. if (empty($shop)) {
  493. $newMobile = $id;
  494. break;
  495. }
  496. }
  497. if (empty($newMobile)) {
  498. util::fail('生成手机号失败');
  499. }
  500. return $newMobile;
  501. }
  502. //零交会报名单号 ssh 20230303
  503. public static function getLjhApplySn()
  504. {
  505. $prefix = 'LJH_CS';
  506. if (getenv('YII_ENV', 'local') == 'production') {
  507. $prefix = 'LJH';
  508. }
  509. $respond = LjhSnClass::add(['id' => null]);
  510. $id = $respond['id'] ?? 0;
  511. if (empty($id)) {
  512. util::fail('单号没有生成');
  513. }
  514. return $prefix . $id;
  515. }
  516. //预订单活动的编号 ssh 20240609
  517. public static function getBookSn()
  518. {
  519. $respond = BookSnClass::add(['id' => null]);
  520. $id = $respond['id'] ?? 0;
  521. if (empty($id)) {
  522. util::fail('单号没有生成');
  523. }
  524. return $id;
  525. }
  526. public static function getLiveOrderSn()
  527. {
  528. $prefix = 'ZB';
  529. $respond = LiveOrderSnClass::add(['id' => null]);
  530. $id = $respond['id'] ?? 0;
  531. if (empty($id)) {
  532. util::fail('单号没有生成');
  533. }
  534. return $prefix . $id;
  535. }
  536. }