|
|
@@ -37,16 +37,23 @@ use bizGhs\custom\classes\CustomClass;
|
|
|
use bizGhs\item\classes\ItemClass;
|
|
|
use bizGhs\item\classes\ItemClassClass;
|
|
|
use bizGhs\order\classes\CheckOrderClass;
|
|
|
+use bizGhs\order\classes\OrderClass;
|
|
|
+use bizGhs\order\classes\OrderItemClass;
|
|
|
use bizGhs\order\classes\RefundOrderClass;
|
|
|
+use bizGhs\order\classes\RefundOrderItemClass;
|
|
|
use bizGhs\order\classes\StockWastageOrderClass;
|
|
|
use bizGhs\order\classes\StockWastageOrderItemClass;
|
|
|
use bizGhs\stat\classes\StatYjClass;
|
|
|
use bizGhs\stat\classes\StatYjMonthClass;
|
|
|
+use bizHd\cg\classes\CgRefundClass;
|
|
|
+use bizHd\cg\classes\CgRefundItemClass;
|
|
|
use bizHd\ghs\classes\GhsClass;
|
|
|
use bizHd\goods\classes\CategoryClass;
|
|
|
use bizHd\goods\classes\GoodsCategoryClass;
|
|
|
use bizHd\goods\classes\GoodsClass;
|
|
|
use bizHd\goods\classes\GoodsSettingClass;
|
|
|
+use bizHd\purchase\classes\PurchaseClass;
|
|
|
+use bizHd\purchase\classes\PurchaseItemClass;
|
|
|
use bizHd\saas\classes\FestRiseClass;
|
|
|
use bizHd\stat\classes\StatOrderClass;
|
|
|
use bizHd\stat\classes\StatOrderMonthClass;
|
|
|
@@ -134,6 +141,8 @@ class InitController extends Controller
|
|
|
//初始化 ./yii init/main
|
|
|
public function actionMain()
|
|
|
{
|
|
|
+ ini_set('memory_limit', '2045M');
|
|
|
+ set_time_limit(0);
|
|
|
|
|
|
//基地批发商
|
|
|
$jdShopList = ShopClass::getAllByCondition(['ptStyle' => dict::getDict('ptStyle', 'kmGhs')], 'default DESC', '*', null, true);
|
|
|
@@ -288,6 +297,146 @@ class InitController extends Controller
|
|
|
Yii::$app->db->createCommand($sql)->execute();
|
|
|
|
|
|
|
|
|
+ //供应商的销售单 和 零售的退款单,老字段数据要迁到新字段数据上
|
|
|
+ $ghsSaleRefund = [];
|
|
|
+ $hdCgRefund = [];
|
|
|
+ $refundList = RefundOrderClass::getAllByCondition(['id>' => 0], null, '*', null, true);
|
|
|
+ if (!empty($refundList)) {
|
|
|
+ foreach ($refundList as $key => $refund) {
|
|
|
+ $orderSn = $refund->orderSn ?? '';
|
|
|
+ $relateOrderSn = $refund->relateOrderSn ?? '';
|
|
|
+ if (empty($orderSn)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ $refundItemList = RefundOrderItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
|
|
|
+ if (!empty($refundItemList)) {
|
|
|
+ foreach ($refundItemList as $refundItem) {
|
|
|
+ $refundItem->xhNum = floatval($refundItem->itemNum);
|
|
|
+ $refundItem->xhUnitName = '扎';
|
|
|
+ $refundItem->xhUnitType = 0;
|
|
|
+ $refundItem->xhUnitPrice = $refundItem->itemPrice;
|
|
|
+ $refundItem->xhPrice = bcmul($refundItem->itemPrice, $refundItem->itemNum, 2);
|
|
|
+ $refundItem->save();
|
|
|
+ $productId = $refundItem->productId ?? 0;
|
|
|
+ $ghsSaleRefund[$relateOrderSn][$productId] = floatval($refundItem->itemNum);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $cgRefundList = CgRefundClass::getAllByCondition(['id>' => 0], null, '*', null, true);
|
|
|
+ if (!empty($cgRefundList)) {
|
|
|
+ foreach ($cgRefundList as $cgRefund) {
|
|
|
+ $orderSn = $cgRefund->orderSn ?? '';
|
|
|
+ $cgId = $cgRefund->cgId ?? 0;
|
|
|
+ if (empty($orderSn)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ $cgRefundItemList = CgRefundItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
|
|
|
+ if (!empty($cgRefundItemList)) {
|
|
|
+ foreach ($cgRefundItemList as $cgItem) {
|
|
|
+ $cgItem->xhNum = floatval($cgItem->itemNum);
|
|
|
+ $cgItem->xhUnitName = '扎';
|
|
|
+ $cgItem->xhUnitType = 0;
|
|
|
+ $cgItem->xhUnitPrice = $cgItem->itemPrice;
|
|
|
+ $cgItem->xhPrice = bcmul($cgItem->itemPrice, $cgItem->itemNum, 2);
|
|
|
+ $cgItem->save();
|
|
|
+ $productId = $cgItem->productId ?? 0;
|
|
|
+ $hdCgRefund[$cgId][$productId] = floatval($cgItem->itemNum);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+print_r($ghsSaleRefund);
|
|
|
+ //供应商的销售单 和 零售的采购单,老字段数据要迁到新字段数据上
|
|
|
+ $orderList = OrderClass::getAllByCondition(['id>' => 0], null, '*', null, true);
|
|
|
+ if (!empty($orderList)) {
|
|
|
+ foreach ($orderList as $order) {
|
|
|
+ $orderSn = $order->orderSn ?? '';
|
|
|
+ if (empty($orderSn)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ $orderItemList = OrderItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
|
|
|
+ if (!empty($orderItemList)) {
|
|
|
+ foreach ($orderItemList as $orderItem) {
|
|
|
+ $productId = $orderItem->productId ?? 0;
|
|
|
+ $refundNum = $ghsSaleRefund[$orderSn][$productId] ?? 0;
|
|
|
+
|
|
|
+ $bigNum = $orderItem->bigNum ?? 0;
|
|
|
+ $smallNum = $orderItem->smallNum ?? 0;
|
|
|
+ $unitPrice = $orderItem->unitPrice ?? 0;
|
|
|
+ $smallUnitPrice = $orderItem->smallUnitPrice ?? 0;
|
|
|
+ if ($bigNum > 0) {
|
|
|
+ $xhUnitType = 0;
|
|
|
+ $xhUnitName = '扎';
|
|
|
+ $xhNum = $bigNum;
|
|
|
+ $xhUnitPrice = $unitPrice;
|
|
|
+ } else {
|
|
|
+ $xhUnitType = 1;
|
|
|
+ $xhUnitName = '支';
|
|
|
+ $xhNum = $smallNum;
|
|
|
+ $xhUnitPrice = $smallUnitPrice;
|
|
|
+ }
|
|
|
+
|
|
|
+ $orderItem->xhNum = $xhNum;
|
|
|
+ $orderItem->xhUnitName = $xhUnitName;
|
|
|
+ $orderItem->xhUnitType = $xhUnitType;
|
|
|
+ $orderItem->xhUnitPrice = $xhUnitPrice;
|
|
|
+ $orderItem->xhPrice = bcmul($xhNum, $xhUnitPrice, 2);
|
|
|
+ $orderItem->xhPreNum = 0;
|
|
|
+ $orderItem->xhPreUnitName = 0;
|
|
|
+ $orderItem->xhPreUnitType = 0;
|
|
|
+ $orderItem->xhPreUnitPrice = 0;
|
|
|
+ $orderItem->xhPrePrice = 0;
|
|
|
+ //refundNum 已退货数量
|
|
|
+ $orderItem->refundNum = $refundNum;
|
|
|
+ $orderItem->save();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $cgList = PurchaseClass::getAllByCondition(['id>' => 0], null, '*', null, true);
|
|
|
+ if (!empty($cgList)) {
|
|
|
+ foreach ($cgList as $cg) {
|
|
|
+ $orderSn = $cg->orderSn ?? '';
|
|
|
+ $cgId = $cg->id ?? 0;
|
|
|
+ if (empty($orderSn)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ $cgItemList = PurchaseItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
|
|
|
+ if (!empty($cgItemList)) {
|
|
|
+ foreach ($cgItemList as $cgItem) {
|
|
|
+ $productId = $cgItem->productId ?? 0;
|
|
|
+ $refundNum = $hdCgRefund[$cgId][$productId] ?? 0;
|
|
|
+
|
|
|
+ if (floor($cgItem->itemNum) == $cgItem->itemNum) {
|
|
|
+ $xhNum = $cgItem->itemNum;
|
|
|
+ $xhUnitType = 0;
|
|
|
+ $xhUnitName = '扎';
|
|
|
+ $xhUnitPrice = $cgItem->price;
|
|
|
+ $xhPrice = $cgItem->totalPrice;
|
|
|
+ } else {
|
|
|
+ $xhUnitType = 1;
|
|
|
+ $xhUnitName = '支';
|
|
|
+ $xhNum = bcmul($cgItem->ratio, $cgItem->itemNum);
|
|
|
+ $xhUnitPrice = $cgItem->smallPrice;
|
|
|
+ $xhPrice = $cgItem->totalPrice;
|
|
|
+ }
|
|
|
+
|
|
|
+ $cgItem->xhNum = $xhNum;
|
|
|
+ $cgItem->xhUnitName = $xhUnitName;
|
|
|
+ $cgItem->xhUnitType = $xhUnitType;
|
|
|
+ $cgItem->xhUnitPrice = $xhUnitPrice;
|
|
|
+ $cgItem->xhPrice = $xhPrice;
|
|
|
+
|
|
|
+ $cgItem->refundNum = $refundNum;
|
|
|
+ $cgItem->save();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
self::migrationDel();
|
|
|
|
|
|
//客户和供应商的中央化
|