/** * 插入订单对应下的总表信息,没有批量处理事件 * @para $data as array * @add by Herman.Xi * @last modified 20131022 * $in 默认为进入订单模式 */ public static function insertAllOrderRowNoEvent($orderData, $tName = 'om_unshipped_order', $in = true) { self::initDB(); //var_dump($orderData); exit; $obj_order_data = $orderData['orderData']; $orderExtenData = $orderData['orderExtenData']; $orderUserInfoData = $orderData['orderUserInfoData']; $orderDetailArr = $orderData['orderDetail']; $orderTrackInfo = $orderData['orderTrack']; //var_dump($obj_order_data); exit; //$tName = 'om_unshipped_order'; $where = "WHERE recordNumber='{$obj_order_data['recordNumber']}' AND platformId={$obj_order_data['platformId']}"; $flagCountUnshipped = OmAvailableModel::getTNameCount($tName, $where); //var_dump($flagCountUnshipped); exit; $_tName = 'om_shipped_order'; $flagCountshipped = OmAvailableModel::getTNameCount($_tName, $where); if ($obj_order_data && empty($flagCountshipped)) { //判断订单是否已经在系统2个订单表(未发货和已发货)中存在 $platfrom = omAccountModel::getPlatformSuffixById($obj_order_data['platformId']); $extension = $platfrom['suffix']; //获取后缀名称 //echo $extension; echo "<br>"; exit; $insertOrderDataRow = self::insertOrderRow($obj_order_data, $tName); //插入到order表 if (empty($insertOrderDataRow)) { self::$errCode = "020"; self::$errMsg = "插入订单失败!"; return false; } $orderExtenData['omOrderId'] = $insertOrderDataRow; $orderUserInfoData['omOrderId'] = $insertOrderDataRow; $resultExten = self::insertExtension($orderExtenData, $extension, $tName); //插入到order_extend表 if (!$resultExten) { self::$errCode = "021"; self::$errMsg = "插入订单附加表失败!"; return false; } $resultUserInfo = self::insertUserinfoRow($orderUserInfoData, $tName); //插入到order_userInfo表 if (!$resultUserInfo) { self::$errCode = "022"; self::$errMsg = "插入用户信息表失败!"; return false; } foreach ($orderDetailArr as $orderDetail) { $orderDetailData = $orderDetail['orderDetailData']; $orderDetailExtenData = $orderDetail['orderDetailExtenData']; $orderDetailData['omOrderId'] = $insertOrderDataRow; $orderDetailData['createdTime'] = time(); $insertOrderDatilRow = self::insertOrderdetail($orderDetailData, $tName); //插入到detail表 if (empty($insertOrderDatilRow)) { self::$errCode = "023"; self::$errMsg = "插入订明细单失败!"; return false; } $orderDetailExtenData['omOrderdetailId'] = $insertOrderDatilRow; if ($orderDetailExtenData) { $resultOrderDetailExten = self::insertDetailExtension($orderDetailExtenData, $extension, $tName); //插入到detailExtend if (!$resultOrderDetailExten) { self::$errCode = "024"; self::$errMsg = "插入订单明细附带表失败!"; return false; } } } if ($obj_order_data['platformId'] == 1 && $in) { $insertOrderidsDada = array('omOrderId' => $insertOrderDataRow, 'PayPalPaymentId' => $orderData['orderExtenData']['PayPalPaymentId'], 'orderid' => $orderData['orderExtenData']['orderId'], 'accountId' => $orderData['orderData']['accountId'], 'saletime' => time()); $insertOrderids = OrderidsModel::insertOrderidsList($insertOrderidsDada); if (!$insertOrderids) { self::$errCode = "025"; self::$errMsg = "插入ebay订单IDS失败!"; return false; } } if (isset($orderData['orderNote']) && !empty($orderData['orderNote'])) { $orderNote = $orderData['orderNote']; $insertOrderNoteDada = array('omOrderId' => $insertOrderDataRow, 'content' => $orderNote['content'], 'userId' => $orderNote['userId'], 'createdTime' => $orderNote['createdTime']); $insertOrderNoteids = self::insertOrderNotesRow($insertOrderNoteDada); if (!$insertOrderNoteids) { self::$errCode = "026"; self::$errMsg = "插入订单Note失败!"; return false; } } $buyerInfo = $orderUserInfoData; $buyerInfo['platformId'] = $obj_order_data['platformId']; unset($buyerInfo['omOrderId']); unset($buyerInfo['countrySn']); unset($buyerInfo['currency']); unset($buyerInfo['currency']); //var_dump($buyerInfo); $insertBuyerInfo = self::insertBuyerInfoRow($buyerInfo); //var_dump($insertBuyerInfo); if (!$insertBuyerInfo) { return false; } //判断为新插入订单时,需要插入跟踪号 if ($orderTrackInfo['tracknumber'] != '' && $in) { $orderTrackInfo['omOrderId'] = $insertOrderDataRow; $insertTrack = self::insertOrderTrackRow($orderTrackInfo); if (!$insertTrack) { return false; } } $ProductStatus = new ProductStatus(); if (!$ProductStatus->updateSkuStatusByOrderStatus(array($insertOrderDataRow))) { self::$errCode = "400"; self::$errMsg = "已经包含订单信息,不能重复插入!"; return false; } //var_dump($insertOrderDataRow); exit; return $insertOrderDataRow; } else { self::$errCode = "400"; self::$errMsg = "已经包含订单信息,不能重复插入!"; return false; } }