| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- <?php
- namespace console\controllers;
- use bizHd\purchase\classes\PurchaseClass;
- use bizHd\purchase\models\Purchase;
- use bizHd\purchase\services\PurchaseService;
- use common\components\dict;
- use common\components\noticeUtil;
- use yii\console\Controller;
- use Yii;
- class PurchaseController extends Controller
- {
- //采购订单过期变更 ssh 2021.5.14
- public function actionExpireOrder()
- {
- //采购单由花店发起的!!!!!
- $hdInvite = dict::getDict('cgStyle', 'hd');
- $query = new \yii\db\Query();
- $query->from(Purchase::tableName());
- $date = date("Y-m-d H:i:s");
- //找出一个星期内可以标记为过期的订单
- $startDate = date("Y-m-d H:i:s", strtotime('-7 days'));
- $query->where(['status' => PurchaseClass::STATUS_UN_PAY])->andWhere(['>', 'deadline', $startDate])->andWhere(['<=', 'deadline', $date]);
- $query->orderBy('deadline ASC');
- Yii::$app->params['ptStyle'] = dict::getDict('ptStyle', 'hd');
- //如果有报错,抛出异常
- Yii::$app->params['errorReport'] = 1;
- $arr = [];
- foreach ($query->batch() as $purchases) {
- foreach ($purchases as $purchase) {
- $connection = Yii::$app->db;//事务处理
- $transaction = $connection->beginTransaction();
- $id = $purchase['id'] ?? 0;
- $orderSn = $purchase['orderSn'] ?? '';
- try {
- $current = PurchaseClass::getById($id, true);
- PurchaseService::expire($current);
- $transaction->commit();
- noticeUtil::push("采购单过期未付款,库存已回滚,单号:{$orderSn}");
- } catch (\Exception $e) {
- $transaction->rollBack();
- $msg = $e->getMessage();
- noticeUtil::push("采购单过期处理报错了!订单号:{$orderSn},错误信息:{$msg}", '15280215347');
- }
- $log = "过期的采购单:{$id} json:" . json_encode($purchase);
- $arr[] = $log;
- }
- }
- if (!empty($arr)) {
- foreach ($arr as $item) {
- Yii::info($item);
- }
- }
- }
- //待付款订单自动变成欠款订单
- public function actionSetDebtOrder()
- {
- //采购单由供货商发起的!!!!!
- $ghsInvite = dict::getDict('cgStyle', 'ghs');
- $query = new \yii\db\Query();
- $query->from(Purchase::tableName());
- $date = date("Y-m-d H:i:s");
- //找出一个星期内可以标记为欠款的订单
- $startDate = date("Y-m-d H:i:s", strtotime('-7 days'));
- $query->where(['status' => PurchaseClass::STATUS_UN_PAY])->andWhere(['cgStyle' => $ghsInvite])->andWhere(['>', 'autoSetTime', $startDate])->andWhere(['<=', 'autoSetTime', $date]);
- $query->orderBy('autoSetTime ASC');
- Yii::$app->params['ptStyle'] = dict::getDict('ptStyle', 'hd');
- //如果有报错,抛出异常
- Yii::$app->params['errorReport'] = 1;
- $arr = [];
- foreach ($query->batch() as $purchases) {
- foreach ($purchases as $purchase) {
- $connection = Yii::$app->db;//事务处理
- $transaction = $connection->beginTransaction();
- $id = $purchase['id'] ?? 0;
- $orderSn = $purchase['orderSn'] ?? '';
- try {
- $current = PurchaseClass::getById($id, true);
- //供货商发起的记欠款
- PurchaseService::debt($current);
- $transaction->commit();
- noticeUtil::push("采购单已经变更为欠款。订单号:{$orderSn}", '15280215347');
- } catch (\Exception $e) {
- $transaction->rollBack();
- $msg = $e->getMessage();
- noticeUtil::push("待付款采购单设置为欠款单报错了!订单号:{$orderSn},错误信息:{$msg}", '15280215347');
- }
- $log = "待付款采购单设置为欠款单:{$id} json:" . json_encode($purchase);
- $arr[] = $log;
- }
- }
- if (!empty($arr)) {
- foreach ($arr as $item) {
- Yii::info($item);
- }
- }
- }
- }
|