orderSn.php 16 KB

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