username@email.com
2025-05-12 ae6e40362a745caef9ead36f81f38313fb8c2c66
CY_ECommercePlatform/CY.WebForm/Pages/business/kaipiaoConfirm.aspx.cs
@@ -22,6 +22,8 @@
        EC_OrderBLL _eC_OrderBLL = null;
        OA_KaipiaoshenqingBLL _oA_KaipiaoshenqingBLL = null;
        OA_CorporateClientsBLL _oA_CorporateClientsBLL = null;
        OA_StaffBLL bll_OA_StaffBLL = null;
        OA_WorkPlanBll oA_WorkReminderBll = null;
        //初始化
@@ -31,6 +33,8 @@
            _eC_OrderBLL = new EC_OrderBLL();
            _oA_CorporateClientsBLL = new OA_CorporateClientsBLL();
            _oA_KaipiaoshenqingBLL = new OA_KaipiaoshenqingBLL();
            bll_OA_StaffBLL = new OA_StaffBLL();
            oA_WorkReminderBll = new OA_WorkPlanBll();
        }
        //页面加载
@@ -48,27 +52,57 @@
            string orderIdStr = Request["id"];
            if (!string.IsNullOrEmpty(orderIdStr))
            {
                this.selBusinessManager.DataSource = bll_OA_StaffBLL.SelectListByFirmId(CurrentUser.MemberId, true, false);
                this.selBusinessManager.DataTextField = "Name";
                this.selBusinessManager.DataValueField = "Keyid";
                this.selBusinessManager.DataBind();
                this.selBusinessManager.Items.Insert(0, new ListItem("请选择", ""));
                //this.selBusinessManager.Items.Insert(1, new ListItem(CurrentUser.ShortName, CurrentUser.ShortName));
                decimal total = 0;
                string name = "";
                this.txtOrderIds.Value = orderIdStr;
                string[] idsArray = orderIdStr.Split(',');
                if (idsArray != null && idsArray.Length > 0)
                {
                    foreach(var item in idsArray)
                // string[] idsArray = orderIdStr.Split(',');
                //if (idsArray != null && idsArray.Length > 0)
                //{
                var models = _eC_OrderBLL.GetOrderByIds(orderIdStr).ToList();
                if(models!=null&& models.Count > 0)
                {
                    var model = bll_EC_OrderBasicBLL.SelectModelById(models[0].Keyid.Value);
                    name = models[0].BuyerName;
                    OA_CorporateClients oA_CorporateClients = _oA_CorporateClientsBLL.GetModel(models[0].BuyerId);
                    if (oA_CorporateClients != null && oA_CorporateClients.BusinessManagerId.HasValue && oA_CorporateClients.BusinessManagerId.Value>0)
                    {
                        var model = _eC_OrderBLL.GetOrderById(int.Parse(item));
                        if (model != null)
                        {
                            total += model.SumPrice??0;
                            if(string.IsNullOrEmpty(name))
                            {
                                name = model.BuyerName;
                            }
                        }
                        this.selBusinessManager.Value = oA_CorporateClients.BusinessManagerId.HasValue ? oA_CorporateClients.BusinessManagerId.Value.ToString() : "";
                    }
                    else
                    {
                        JavaScript.MessageBox("请维护客户的业务经理", this);
                    }
                }
                total = models.Sum(x=>x.SumPrice)??0;
                txtZengjianmoney.Value = "0";
                    //foreach (var item in idsArray)
                    //{
                    //    var model = _eC_OrderBLL.GetOrderById(int.Parse(item));
                    //    if (model != null)
                    //    {
                    //        total += model.SumPrice??0;
                    //        if(string.IsNullOrEmpty(name))
                    //        {
                    //            name = model.BuyerName;
                    //        }
                    //    }
                    //}
                    //}
                kpmoney.InnerText = total.ToString("0.00");
                khname.InnerText = name;
                Dingdanshu.InnerText = orderIdStr.Split(',').Length +"个";
            }
            else
            {
@@ -87,70 +121,148 @@
        /// </summary>
        public void AcceptAll3()
        {
            if (string.IsNullOrEmpty(this.selBusinessManager.Value))
            {
                JavaScript.MessageBox("请选择业务经理", this);
                return;
            }
            string ids = this.txtOrderIds.Value;
            string[] idsArray = ids.Split(',');
            if (idsArray != null && idsArray.Length > 0)
            {
                EC_OrderBasic eC_OrderBasic = bll_EC_OrderBasicBLL.SelectModelById(idsArray[0].ToInt32().Value);
                OA_CorporateClients oA_CorporateClients = _oA_CorporateClientsBLL.SelectModelByFirmIdandMemberId(CurrentUser.MemberId, eC_OrderBasic.BuyerId);
                using (TransactionScope scope = new TransactionScope())
                using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required,
           new TransactionOptions
           {
               IsolationLevel = IsolationLevel.ReadCommitted,
               Timeout = TransactionManager.MaximumTimeout
           }
           )
                    )
                {
                    string ssss = DateTime.Now.ToString("yyyyMMdd");
                    string SellerOrderId = ssss + 1.ToString("000");
                    string maxSellerOrderId = _oA_KaipiaoshenqingBLL.GetModelByformid(CurrentUser.MemberId).Where(x => x.SellerOrderId.Contains(ssss)).Max(x => x.SellerOrderId);
                    if (!string.IsNullOrWhiteSpace(maxSellerOrderId))
                    try
                    {
                        string aaaaaaaaaaaa = maxSellerOrderId.Substring(maxSellerOrderId.Length - 3, 3);
                        SellerOrderId = ssss + (aaaaaaaaaaaa.ToInt32().Value + 1).ToString("000");
                    }
                    OA_Kaipiaoshenqing oA_DeliverPlan = new OA_Kaipiaoshenqing();
                        string ssss = DateTime.Now.ToString("yyyyMMdd");
                        string SellerOrderId = ssss + 1.ToString("000");
                        string maxSellerOrderId = _oA_KaipiaoshenqingBLL.GetModelByformid(CurrentUser.MemberId).Where(x => x.SellerOrderId.Contains(ssss)).Max(x => x.SellerOrderId);
                        if (!string.IsNullOrWhiteSpace(maxSellerOrderId))
                        {
                            string aaaaaaaaaaaa = maxSellerOrderId.Substring(maxSellerOrderId.Length - 3, 3);
                            SellerOrderId = ssss + (aaaaaaaaaaaa.ToInt32().Value + 1).ToString("000");
                        }
                        OA_Kaipiaoshenqing oA_DeliverPlan = new OA_Kaipiaoshenqing();
                    oA_DeliverPlan.Keyid = Guid.NewGuid();
                    oA_DeliverPlan.FirmId = CurrentUser.MemberId;
                    oA_DeliverPlan.BuyerId = eC_OrderBasic.BuyerId;
                    oA_DeliverPlan.Kaipiaoshenqing = 1;
                    oA_DeliverPlan.Kehuqianshou = 1;
                    oA_DeliverPlan.SellerOrderId = SellerOrderId;
                    oA_DeliverPlan.remark = this.txtContent.Value;//.Replace("\r\n", "<br>");
                        oA_DeliverPlan.Keyid = Guid.NewGuid();
                        oA_DeliverPlan.FirmId = CurrentUser.MemberId;
                        oA_DeliverPlan.BuyerId = eC_OrderBasic.BuyerId;
                        oA_DeliverPlan.Kaipiaoshenqing = 1;
                        oA_DeliverPlan.Kehuqianshou = 1;
                        oA_DeliverPlan.SellerOrderId = SellerOrderId;
                        oA_DeliverPlan.remark = this.txtContent.Value;//.Replace("\r\n", "<br>");
                    oA_DeliverPlan.KehuqianshouTime = null;
                    oA_DeliverPlan.KehuqianshouCreater = null;
                    oA_DeliverPlan.KaipiaoquerenTime = null;
                    oA_DeliverPlan.KaipiaoquerenCreater = null;
                    oA_DeliverPlan.BusinessManagerId = oA_CorporateClients.BusinessManagerId ?? 0;
                        oA_DeliverPlan.KehuqianshouTime = null;
                        oA_DeliverPlan.KehuqianshouCreater = null;
                        oA_DeliverPlan.KaipiaoquerenTime = null;
                        oA_DeliverPlan.KaipiaoquerenCreater = null;
                        oA_DeliverPlan.BusinessManagerId = this.selBusinessManager.Value.ToInt32();
                        oA_DeliverPlan.Zengjianmoney = this.txtZengjianmoney.Value.ToDecimal2();
                        oA_DeliverPlan.kpmoney = this.kpmoney.InnerText.ToDecimal2();
                        oA_DeliverPlan.ApprovalStatus = 1;
                        oA_DeliverPlan.Dingdanshu = ids.Trim(',').Split(',').Length;
                        if (oA_DeliverPlan.Zengjianmoney < 0)
                        {
                            oA_DeliverPlan.ApprovalStatus = 0;
                            //需要添加审批信息
                            DateTime nowTime = DateTime.Now;
                            OA_WorkPlan m_OA_WorkPlan = new OA_WorkPlan();
                            m_OA_WorkPlan.ApprovalContent = "";
                            m_OA_WorkPlan.ApprovalStaffId = Guid.Empty;
                            m_OA_WorkPlan.ApprovalStaffName = "";
                            m_OA_WorkPlan.ApprovalStatus = 0;
                            m_OA_WorkPlan.ApprovalTime = nowTime;
                            m_OA_WorkPlan.EvaluationContent = "";
                            m_OA_WorkPlan.EvaluationStaff = "";
                            m_OA_WorkPlan.EvaluationStaffId = Guid.Empty;
                            m_OA_WorkPlan.EvaluationStatus = 0;
                            m_OA_WorkPlan.EvaluationTime = nowTime;
                            m_OA_WorkPlan.RewardContent = "";
                            m_OA_WorkPlan.RewardMoney = 0;
                            m_OA_WorkPlan.RewardResult = "";
                            m_OA_WorkPlan.RewardType = 0;
                    oA_DeliverPlan.Creater = CurrentUser.TrueMemberId;
                    oA_DeliverPlan.CreateTime = DateTime.Now;
                    oA_DeliverPlan.Updater = CurrentUser.TrueMemberId;
                    oA_DeliverPlan.LastUpdateTime = DateTime.Now;
                            m_OA_WorkPlan.PlanStartTime = nowTime;
                            m_OA_WorkPlan.PlanStatus = 1;
                            m_OA_WorkPlan.SentStaffId = CurrentUser.TrueMemberId;
                            m_OA_WorkPlan.MemberId = CurrentUser.MemberId;
                    _oA_KaipiaoshenqingBLL.InsertModel(oA_DeliverPlan);
                            OA_Staff m_OA_Staff = bll_OA_StaffBLL.GetModelByMemberId(CurrentUser.TrueMemberId);
                            if (m_OA_Staff != null)
                                m_OA_WorkPlan.DepartId = m_OA_Staff.DepartmentId;
                            else
                                m_OA_WorkPlan.DepartId = 0;
                    DateTime kaipiaoshenqing = DateTime.Now;
                    for (int i = 0; i < idsArray.Length; i++)
                    {
                            m_OA_WorkPlan.PlanPeople = CurrentUser.TrueName;
                            m_OA_WorkPlan.ReciveStaffId = CurrentUser.TrueMemberId;
                            m_OA_WorkPlan.Operator = CurrentUser.ShortName;
                            m_OA_WorkPlan.PlanComplany = oA_DeliverPlan.Keyid.ToString();
                            m_OA_WorkPlan.PlanContent = this.khname.InnerText+" 减少金额开票申请";
                            m_OA_WorkPlan.PlanDataType = 13;
                            m_OA_WorkPlan.PlanMoney = oA_DeliverPlan.Zengjianmoney;
                            m_OA_WorkPlan.PlanRemark = oA_DeliverPlan.remark;
                            m_OA_WorkPlan.PlanRunTime = DateTime.Now;
                            m_OA_WorkPlan.PlanTitle = this.khname.InnerText + " 减少金额开票申请";
                            m_OA_WorkPlan.PlanType = 3;
                            m_OA_WorkPlan.LastUpdateTime = nowTime;
                            oA_WorkReminderBll.InsertModel(m_OA_WorkPlan);
                        }
                        oA_DeliverPlan.Shenqingleixing = "订单开票";
                        oA_DeliverPlan.Creater = CurrentUser.TrueMemberId;
                        oA_DeliverPlan.CreateTime = DateTime.Now;
                        oA_DeliverPlan.Updater = CurrentUser.TrueMemberId;
                        oA_DeliverPlan.LastUpdateTime = DateTime.Now;
                        _oA_KaipiaoshenqingBLL.InsertModel(oA_DeliverPlan);
                        DateTime kaipiaoshenqing = DateTime.Now;
                        //for (int i = 0; i < idsArray.Length; i++)
                        //{
                        bool result = true;
                        EC_OrderExtend model = new EC_OrderExtend();
                        model.Keyid = idsArray[i].ToInt32();
                        //model.Keyid = idsArray[i].ToInt32();
                        model.KaipiaoshenqingCreater = CurrentUser.TrueMemberId;
                        model.KaipiaoshenqingTime = kaipiaoshenqing;
                        model.Kaipiaoshenqing = 1;
                        model.KaipiaoshenqingId = oA_DeliverPlan.Keyid;
                        result = _eC_OrderBLL.OldUpdateKaipiaoshenqing(model);
                        result = _eC_OrderBLL.OldUpdateKaipiaoshenqings(model, ids);
                        if (!result)
                        {
                            return;
                        }
                        //}
                        scope.Complete();
                    }
                    scope.Complete();
                    catch (Exception ex)
                    {
                        // 回滚事务
                    }
                    finally
                    {
                        // 释放资源
                        scope.Dispose();
                    }
                }
                JavaScript.MessageBox("提交成功", this);
                //JavaScript.MessageBox("提交成功", this);
                JavaScript.RefreshDIVOpener(this);
                //操作成功
                JavaScript.MessageBoxsssss("提交成功", this, true, true);
            }
        }
    }