username@email.com
2025-05-20 10cada58c5ea2aa95b8eaaa1731b543582d618dc
CY_ECommercePlatform/CY.WebForm/Pages/work/MyRequestAdd.aspx.cs
@@ -14,6 +14,7 @@
using CY.Infrastructure.DESEncrypt;
using CY.Infrastructure.Query;
using CY.BLL.OA;
using System.Transactions;
namespace CY.WebForm.Pages.work
{
@@ -28,6 +29,7 @@
        OA_WorkPlanBll oA_WorkReminderBll = null;
        OA_CarDictionaryBLL bll_OA_CarDictionaryBLL = null;
        OA_SuppliersBLL _OA_SuppliersBLL = null;
        OA_WorkPlan_attachmentBLL oA_WorkPlan_AttachmentBLL = null;
        public MyRequestAdd()
        {
            departmentBll = new OA_DepartmentBll();
@@ -35,7 +37,8 @@
            oA_WorkReminderBll = new OA_WorkPlanBll();
            oA_StaffBLL = new OA_StaffBLL();
            bll_OA_CarDictionaryBLL = new OA_CarDictionaryBLL();
            _OA_SuppliersBLL = new OA_SuppliersBLL();
            _OA_SuppliersBLL = new OA_SuppliersBLL();
            oA_WorkPlan_AttachmentBLL = new OA_WorkPlan_attachmentBLL();
        }
        //页面加载
@@ -89,109 +92,229 @@
                    this.txtShoukuandanwei.Value = "";
                }
                this.txtPlanContent.Value = m_OA_WorkPlan.PlanContent.ToString();
                if(m_OA_WorkPlan.PlanDataType == 15)
                {
                    this.RepClientList.DataSource = oA_WorkPlan_AttachmentBLL.GetModelByKaipiaoIdandType(Request["keyid"].ToInt32().Value,15);
                    this.RepClientList.DataBind();
                }
            }
        }
        //表单提交
        protected void btn_submit_form(object sender, EventArgs e)
        {
            try
            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required,
    new TransactionOptions
    {
        IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted,
        Timeout = TransactionManager.MaximumTimeout
    }
    )
             )
            {
                DateTime nowTime = DateTime.Now;
                OA_WorkPlan m_OA_WorkPlan = oA_WorkReminderBll.GetModelByKeyid(Request["keyid"].ToInt32());
                if (m_OA_WorkPlan == null)
                try
                {
                    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;
                    m_OA_WorkPlan.PlanStartTime = nowTime;
                    m_OA_WorkPlan.PlanStatus = 1;
                    m_OA_WorkPlan.SentStaffId = CurrentUser.TrueMemberId;
                    m_OA_WorkPlan.MemberId = CurrentUser.MemberId;
                    OA_Staff m_OA_Staff = oA_StaffBLL.GetModelByMemberId(CurrentUser.TrueMemberId);
                    if (m_OA_Staff != null)
                        m_OA_WorkPlan.DepartId = m_OA_Staff.DepartmentId;
                    else
                        m_OA_WorkPlan.DepartId = 0;
                    m_OA_WorkPlan.PlanPeople = CurrentUser.TrueName;
                    m_OA_WorkPlan.ReciveStaffId = CurrentUser.TrueMemberId;
                }
                else
                {
                }
                m_OA_WorkPlan.Operator = CurrentUser.ShortName;
                if (this.selPlanDataType.Value == "15")
                {
                    if (!this.txtPlanMoney.Value.Trim().ToDecimal2().HasValue || this.txtPlanMoney.Value.Trim().ToDecimal2().Value <= 0)
                    bool res = true;
                    DateTime nowTime = DateTime.Now;
                    OA_WorkPlan m_OA_WorkPlan = oA_WorkReminderBll.GetModelByKeyid(Request["keyid"].ToInt32());
                    if (m_OA_WorkPlan == null)
                    {
                        JavaScript.MessageBox("付款申请请填写申请费用!", this);
                        return;
                        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;
                        m_OA_WorkPlan.PlanStartTime = nowTime;
                        m_OA_WorkPlan.PlanStatus = 1;
                        m_OA_WorkPlan.SentStaffId = CurrentUser.TrueMemberId;
                        m_OA_WorkPlan.MemberId = CurrentUser.MemberId;
                        OA_Staff m_OA_Staff = oA_StaffBLL.GetModelByMemberId(CurrentUser.TrueMemberId);
                        if (m_OA_Staff != null)
                            m_OA_WorkPlan.DepartId = m_OA_Staff.DepartmentId;
                        else
                            m_OA_WorkPlan.DepartId = 0;
                        m_OA_WorkPlan.PlanPeople = CurrentUser.TrueName;
                        m_OA_WorkPlan.ReciveStaffId = CurrentUser.TrueMemberId;
                    }
                    if (string.IsNullOrWhiteSpace(this.txtShoukuandanwei.Value))
                    else
                    {
                        JavaScript.MessageBox("付款申请请填写收款单位!", this);
                        return;
                    }
                    m_OA_WorkPlan.PlanComplany = this.txtShoukuandanwei.Value;
                }
                else
                {
                    m_OA_WorkPlan.PlanComplany = "";
                }
                m_OA_WorkPlan.PlanContent = this.txtPlanContent.Value.Trim();
                m_OA_WorkPlan.PlanDataType = this.selPlanDataType.Value.ToInt32();
                m_OA_WorkPlan.PlanMoney = this.txtPlanMoney.Value.Trim().ToDecimal2()??0;
                m_OA_WorkPlan.PlanRemark = this.txtPlanRemark.Value.Trim();
                m_OA_WorkPlan.PlanRunTime = DateTime.Now;
                if (m_OA_WorkPlan.PlanDataType == 7)
                {
                    m_OA_WorkPlan.PlanTitle = this.selPlanTitle.Value.Trim();
                }
                else
                {
                    m_OA_WorkPlan.PlanTitle = this.txtPlanTitle.Value.Trim();
                }
                m_OA_WorkPlan.PlanType = 3;
                m_OA_WorkPlan.LastUpdateTime = nowTime;
                    m_OA_WorkPlan.Operator = CurrentUser.ShortName;
                    if (this.selPlanDataType.Value == "15")
                    {
                        if (!this.txtPlanMoney.Value.Trim().ToDecimal2().HasValue || this.txtPlanMoney.Value.Trim().ToDecimal2().Value <= 0)
                        {
                            JavaScript.MessageBox("付款申请请填写申请费用!", this);
                            return;
                        }
                        if (string.IsNullOrWhiteSpace(this.txtShoukuandanwei.Value))
                        {
                            JavaScript.MessageBox("付款申请请填写收款单位!", this);
                            return;
                        }
                        m_OA_WorkPlan.PlanComplany = this.txtShoukuandanwei.Value;
                    }
                    else
                    {
                        m_OA_WorkPlan.PlanComplany = "";
                    }
                if (Request["keyid"].ToInt32() > 0)
                {
                    if (oA_WorkReminderBll.UpdateModel(m_OA_WorkPlan))
                        JavaScript.MessageBox("更新成功", this, true, true);
                    m_OA_WorkPlan.PlanContent = this.txtPlanContent.Value.Trim();
                    m_OA_WorkPlan.PlanDataType = this.selPlanDataType.Value.ToInt32();
                    m_OA_WorkPlan.PlanMoney = this.txtPlanMoney.Value.Trim().ToDecimal2() ?? 0;
                    m_OA_WorkPlan.PlanRemark = this.txtPlanRemark.Value.Trim();
                    m_OA_WorkPlan.PlanRunTime = DateTime.Now;
                    if (m_OA_WorkPlan.PlanDataType == 7)
                    {
                        m_OA_WorkPlan.PlanTitle = this.selPlanTitle.Value.Trim();
                    }
                    else
                        JavaScript.MessageBox("操作失败", this);
                }
                else
                {
                    if (oA_WorkReminderBll.InsertModel(m_OA_WorkPlan))
                        JavaScript.MessageBox("新增成功", this, true, true);
                    {
                        m_OA_WorkPlan.PlanTitle = this.txtPlanTitle.Value.Trim();
                    }
                    m_OA_WorkPlan.PlanType = 3;
                    m_OA_WorkPlan.LastUpdateTime = nowTime;
                    if (Request["keyid"].ToInt32() > 0)
                    {
                        res = oA_WorkReminderBll.UpdateModel(m_OA_WorkPlan);
                        if (res )
                        {
                            if(m_OA_WorkPlan.PlanDataType == 15)
                            {
                                var HideKeyidFapiao = Request["HideKeyidFapiao"].Split(',');
                                var HideAttachmentFapiao = Request["HideAttachmentFapiao"].Split(',');
                                //需要删除的附件
                                var oA_WorkPlan_Attachments = oA_WorkPlan_AttachmentBLL.GetModelByKaipiaoIdandType(m_OA_WorkPlan.Keyid.Value, 15);
                                List<int> HideKeyidFujianid = new List<int>();
                                for (int i = 0; i < HideKeyidFapiao.Length; i++)
                                {
                                    if (!string.IsNullOrEmpty(HideKeyidFapiao[i]) && HideKeyidFapiao[i].ToInt32() != 0)
                                    {
                                        HideKeyidFujianid.Add(HideKeyidFapiao[i].ToInt32().Value);
                                    }
                                }
                                var oA_WorkPlan_Attachments1 = oA_WorkPlan_Attachments.Where(x => !HideKeyidFujianid.Contains(x.Keyid)).ToList();
                                foreach (var oa_WorkPlan_Attachment in oA_WorkPlan_Attachments1)
                                {
                                    res = oA_WorkPlan_AttachmentBLL.DeleteModel(oa_WorkPlan_Attachment);
                                }
                                for (int i = 0; i < HideKeyidFapiao.Length; i++)
                                {
                                    if (string.IsNullOrEmpty(HideKeyidFapiao[i]))
                                    {
                                        var a_WorkPlan_Attachment = new OA_WorkPlan_attachment();
                                        a_WorkPlan_Attachment.OA_WorkPlanId = m_OA_WorkPlan.Keyid;
                                        a_WorkPlan_Attachment.AttachmentType = 15;
                                        a_WorkPlan_Attachment.PlanAttachment = HideAttachmentFapiao[i];
                                        a_WorkPlan_Attachment.CreateTime = DateTime.Now;
                                        a_WorkPlan_Attachment.Operator = CurrentUser.TrueName;
                                        var sss = oA_WorkPlan_AttachmentBLL.InsertModel(a_WorkPlan_Attachment);
                                    }
                                    else
                                    {
                                        continue;
                                    }
                                }
                            }
                            scope.Complete();
                            JavaScript.MessageBox("更新成功", this, true, true);
                        }
                        else
                            JavaScript.MessageBox("操作失败", this);
                    }
                    else
                        JavaScript.MessageBox("操作失败", this);
                    {
                        var aaaa = oA_WorkReminderBll.InserModelAndGetId(m_OA_WorkPlan);
                        m_OA_WorkPlan.Keyid = aaaa;
                        if (aaaa > 0 )
                        {
                            if(m_OA_WorkPlan.PlanDataType == 15)
                            {
                                var HideKeyidFapiao = Request["HideKeyidFapiao"].Split(',');
                                var HideAttachmentFapiao = Request["HideAttachmentFapiao"].Split(',');
                                for (int i = 0; i < HideKeyidFapiao.Length; i++)
                                {
                                    if (string.IsNullOrEmpty(HideKeyidFapiao[i]))
                                    {
                                        var a_WorkPlan_Attachment = new OA_WorkPlan_attachment();
                                        a_WorkPlan_Attachment.OA_WorkPlanId = m_OA_WorkPlan.Keyid;
                                        a_WorkPlan_Attachment.AttachmentType = 15;
                                        a_WorkPlan_Attachment.PlanAttachment = HideAttachmentFapiao[i];
                                        a_WorkPlan_Attachment.CreateTime = DateTime.Now;
                                        a_WorkPlan_Attachment.Operator = CurrentUser.TrueName;
                                        var sss = oA_WorkPlan_AttachmentBLL.InsertModel(a_WorkPlan_Attachment);
                                    }
                                    else
                                    {
                                        continue;
                                    }
                                }
                            }
                            scope.Complete();
                            JavaScript.MessageBox("新增成功", this, true, true);
                        }
                        else
                            JavaScript.MessageBox("操作失败", this);
                    }
                }
            }
            catch (Exception ex)
            {
                PAGEHandleException(ex);
                JavaScript.MessageBox("操作失败", this);
                catch (Exception ex)
                {
                    PAGEHandleException(ex);
                    JavaScript.MessageBox("操作失败", this);
                }
                finally
                {
                    // 释放资源
                    scope.Dispose();
                }
            }
        }
    }