orderSn.php 15 KB

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