username@email.com
2025-03-31 1be1829cbb03b11d10a800ebb8ad72eb9241a103
CY_ECommercePlatform/CY.WebForm/Pages/common/PayAbout.aspx.cs
@@ -502,6 +502,20 @@
            return NewOrder(orderBasic, inquiryCommonModel.PrintCount, null, 0, inquiryCommonModel, orderExtend);
        }
        /// <summary>
        /// 新增线下订单
        /// </summary>
        /// <param name="orderBasic">订单基本信息对象</param>
        /// <param name="orderExtend">订单扩展信息对象</param>
        /// <param name="inquiryCommonModel">订单印刷参数</param>
        /// <returns></returns>
        internal static EC_OrderBasic NewOrderSheji(EC_OrderBasic orderBasic, EC_OrderExtend orderExtend, InquiryCommonModel inquiryCommonModel)
        {
            return NewOrderSheji(orderBasic, inquiryCommonModel.PrintCount, null, 0, inquiryCommonModel, orderExtend);
        }
        /// <summary>
        /// 填充订单方法至少BuyerId、BuyerName、SellerId、SellerName、Operator、PrintTypeId、SumPrice、OrderTypeId、DocumentName属性有值
        /// </summary>
@@ -675,6 +689,115 @@
        }
        /// <summary>
        /// 在线下单 设计订单
        /// </summary>
        /// <param name="orderBasic">订单基本信息对象</param>
        /// <param name="printCount">印刷数量</param>
        /// <param name="pay_Request">支付请求</param>
        /// <param name="seckillId">秒杀业务编号</param>
        /// <param name="inquiryCommonModel">订单印刷参数</param>
        /// <param name="orderExtend">订单扩展信息对象</param>
        /// <param name="filld">填充实体委托</param>
        /// <returns></returns>
        private static EC_OrderBasic NewOrderSheji(EC_OrderBasic orderBasic, int printCount, Pay_Request pay_Request = null, int seckillId = 0, InquiryCommonModel inquiryCommonModel = null, EC_OrderExtend orderExtend = null, CY.WebForm.cs.WebUtil.FillModel filld = null)
        {
            EC_AcceptWayByOrder eC_AcceptWayByOrder = new EC_AcceptWayByOrder();
            FillOrder(orderBasic, eC_AcceptWayByOrder, orderExtend, filld);
            //orderBasic.TheoryCompleteDate = DateTime.Now.AddDays(15);//理论完成日期(确认收货日期)
            if (null == orderExtend)
            {
                orderBasic.OrderExtend.ExigencyCaseId = 0;// sys_DictionaryBLL.GetKeyIdByKeyid(0, "OA_紧急程度");//设置紧急程度为一般
                orderBasic.OrderExtend.ProofreadWayId = -1;// sys_DictionaryBLL.GetKeyIdByKeyid(-1, "EC_校稿方式");//设置校稿方式为"自联系"
                //orderBasic.OrderExtend.Contacts = string.IsNullOrEmpty(eC_AcceptWayByOrder.AcceptContacts) ? eC_AcceptWayByOrder.Accepter : eC_AcceptWayByOrder.AcceptContacts;//收货人为收货信息的联系人
                //orderBasic.OrderExtend.ContactPhone = string.IsNullOrEmpty(eC_AcceptWayByOrder.AccepterPhoneNum) ? eC_AcceptWayByOrder.AccepterPhone : eC_AcceptWayByOrder.AccepterPhoneNum;
                EC_MemberBasicBLL _memberBasicBLL = new EC_MemberBasicBLL();
                EC_MemberExtend memberExtend = _memberBasicBLL.GetMemberExtendByMemberId(orderBasic.BuyerId);
                if (memberExtend != null)
                {
                    orderBasic.OrderExtend.Contacts = memberExtend.BusinessContacts;
                    orderBasic.OrderExtend.ContactPhone = memberExtend.PhoneNum;
                }
                orderBasic.OrderExtend.PrintNum = printCount;
                int? billMode = MyConvert.ConvertToInt32(HttpContext.Current.Request["txtBillMode"]);
                if (!eC_AcceptWayByOrder.AcceptTypeId.HasValue || !billMode.HasValue)
                {
                    return null;
                }
                if (null != inquiryCommonModel)
                {
                    if (inquiryCommonModel.DeliveryMode > 0)
                    {
                        eC_AcceptWayByOrder.AcceptTypeId = inquiryCommonModel.DeliveryMode;
                        switch (inquiryCommonModel.BillMode)
                        {
                            case 108:
                                eC_AcceptWayByOrder.InvoiceDemand = "不含税价";
                                break;
                            case 109:
                                eC_AcceptWayByOrder.InvoiceDemand = "普通发票";
                                break;
                            case 110:
                                eC_AcceptWayByOrder.InvoiceDemand = "增值税票";
                                break;
                            default:
                                break;
                        }
                        eC_AcceptWayByOrder.Remark = inquiryCommonModel.Remarks;
                    }
                    orderBasic.OrderExtend.PrintNum = 13 == inquiryCommonModel.PrintTypeId ? inquiryCommonModel.PrintCount * inquiryCommonModel.PrintBoxNumber : orderBasic.OrderExtend.PrintNum;
                }
                else
                    ;
            }
            else
                ;
            orderBasic.OrderExtend.SurplusPrintNum = orderBasic.OrderExtend.SurplusPrintNum.HasValue ? orderBasic.OrderExtend.SurplusPrintNum : orderBasic.OrderExtend.PrintNum;
            double? commission = null == pay_Request ? 0 : MyConvert.ConvertToDouble(CY.Config.WebInfo.Instance.FirmOrderAgencyFee);
            if (!commission.HasValue)
                return null;
            else
            {
            }
            EC_OrderPrintParameter orderPrintParameter = null;
            orderPrintParameter = null == inquiryCommonModel ? null : new EC_OrderPrintParameter()
            {
                PrintParameter = SerializationHelper.Serialize(inquiryCommonModel)
            };
            OA_CorporateClientsBLL oA_CorporateClientsBLL = new BLL.OA_CorporateClientsBLL();
            //下订单前先添加客户
            //设计订单用反转的MemberId
            var originalGuid = orderBasic.SellerId;
            Guid reversedGuid = new Guid(originalGuid.ToByteArray().Reverse().ToArray());
            if (0 >= oA_CorporateClientsBLL.ConvertToCorporateClient(reversedGuid, orderBasic.BuyerId, orderBasic.Operator))
            {
                return null;//添加客户调用失败则添加订单失败
            }
            else
                ;
            if (orderBasic.SellerId.Equals(orderBasic.BuyerId))
                return null;//买家不能是卖家
            EC_OrderBLL eC_OrderBLL = new EC_OrderBLL();//实例化订单业务操作对象
            bool isWin = eC_OrderBLL.NewOrder(orderBasic, orderBasic.OrderExtend, orderBasic.TradingSingle, eC_AcceptWayByOrder, pay_Request, commission.Value, seckillId, orderPrintParameter);
            return isWin ? orderBasic : null;
        }
        ///// <summary>
        ///// 在线下单 
        ///// </summary>