public static bool SendGoods(OrderInfo order) { ManagerHelper.CheckPrivilege(Privilege.OrderSendGoods); bool flag = false; if (order.CheckAction(OrderActions.SELLER_SEND_GOODS)) { OrderDao orderDao = new OrderDao(); order.OrderStatus = OrderStatus.SellerAlreadySent; order.ShippingDate = new DateTime?(DateTime.Now); flag = orderDao.UpdateOrder(order, null); string text = ""; if (flag) { bool flag2 = false; foreach (LineItemInfo current in order.LineItems.Values) { OrderStatus orderItemsStatus = current.OrderItemsStatus; switch (orderItemsStatus) { case OrderStatus.WaitBuyerPay: case OrderStatus.BuyerAlreadyPaid: text = text + "'" + current.SkuId + "',"; break; default: if (orderItemsStatus == OrderStatus.ApplyForRefund) { flag2 = true; text = text + "'" + current.SkuId + "',"; } break; } } if (flag2) { orderDao.DeleteReturnRecordForSendGoods(order.OrderId); } if (!string.IsNullOrEmpty(text)) { orderDao.UpdateItemsStatus(order.OrderId, 3, text.Substring(0, text.Length - 1)); } bool flag3 = true; foreach (LineItemInfo current in order.LineItems.Values) { if (current.Type == 0) { flag3 = false; break; } } if (order.Gateway.ToLower() == "hishop.plugins.payment.podrequest" || flag3) { orderDao.UpdatePayOrderStock(order); foreach (LineItemInfo current in order.LineItems.Values) { text = text + current.SkuId + ","; ProductDao productDao = new ProductDao(); ProductInfo productDetails = productDao.GetProductDetails(current.ProductId); productDetails.SaleCounts += current.Quantity; productDetails.ShowSaleCounts += current.Quantity; productDao.UpdateProduct(productDetails, null); } } MemberInfo member = MemberHelper.GetMember(order.UserId); try { if (order != null) { Messenger.SendWeiXinMsg_OrderDeliver(order); } } catch (Exception var_10_293) { } EventLogs.WriteOperationLog(Privilege.OrderSendGoods, string.Format(CultureInfo.InvariantCulture, "发货编号为\"{0}\"的订单", new object[] { order.OrderId })); } } return(flag); }
public static bool SendGoods(OrderInfo order) { ManagerHelper.CheckPrivilege(Privilege.OrderSendGoods); bool flag = false; if (order.CheckAction(OrderActions.SELLER_SEND_GOODS)) { OrderDao dao = new OrderDao(); order.OrderStatus = OrderStatus.SellerAlreadySent; order.ShippingDate = new DateTime?(DateTime.Now); //线下支付,发货时更新付款时间 if (order.Gateway == "hishop.plugins.payment.offlinerequest") { order.PayDate = new DateTime?(DateTime.Now); } flag = dao.UpdateOrder(order, null); string str = ""; if (!flag) { return(flag); } bool flag2 = false; foreach (LineItemInfo info in order.LineItems.Values) { OrderStatus orderItemsStatus = info.OrderItemsStatus; switch (orderItemsStatus) { case OrderStatus.WaitBuyerPay: case OrderStatus.BuyerAlreadyPaid: break; default: { if (orderItemsStatus == OrderStatus.ApplyForRefund) { flag2 = true; str = str + "'" + info.SkuId + "',"; } continue; } } str = str + "'" + info.SkuId + "',"; } if (flag2) { dao.DeleteReturnRecordForSendGoods(order.OrderId); } if (!string.IsNullOrEmpty(str)) { dao.UpdateItemsStatus(order.OrderId, 3, str.Substring(0, str.Length - 1)); } //货到付款 更新库存 if (order.Gateway.ToLower() == "hishop.plugins.payment.podrequest") { dao.UpdatePayOrderStock(order.OrderId); foreach (LineItemInfo info2 in order.LineItems.Values) { str = str + info2.SkuId + ","; ProductDao dao2 = new ProductDao(); ProductInfo productDetails = dao2.GetProductDetails(info2.ProductId); productDetails.SaleCounts += info2.Quantity; productDetails.ShowSaleCounts += info2.Quantity; dao2.UpdateProduct(productDetails, null); } } MemberInfo member = MemberHelper.GetMember(order.UserId); Messenger.OrderShipping(order, member, order.wid); EventLogs.WriteOperationLog(Privilege.OrderSendGoods, string.Format(CultureInfo.InvariantCulture, "发货编号为\"{0}\"的订单", new object[] { order.OrderId })); } return(flag); }