예제 #1
0
        private bool SetReqeust(int creditMemoPayoutId)
        {
            var cApprovalHistory = new CApprovalHistory();

            cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.CreditMemoPayout, creditMemoPayoutId);

            // approve request
            var approval = new CApproval().ApproveRequstCreate((int)CConstValue.Approval.CreditMemoPayout, CurrentUserId, creditMemoPayoutId);

            if (approval > 0)
            {
                var cP = new CCreditMemoPayout();
                var c  = cP.Get(creditMemoPayoutId);
                c.ApprovalStatus = approval;
                c.ApprovalId     = CurrentUserId;
                c.ApprovalDate   = DateTime.Now;
                //c.ApprovalMemo = "";
                cP.Update(c);

                new CMail().SendMail(CConstValue.Approval.CreditMemoPayout, CConstValue.MailStatus.ToApproveUser, c.CreditMemoPayoutId, string.Empty, CurrentUserId);

                return(true);
            }
            return(false);
        }
예제 #2
0
        protected void RadToolBarAgency_OnButtonClick(object sender, RadToolBarEventArgs e)
        {
            switch (e.Item.Text)
            {
            case "Request":
                if (RadGridAgency.SelectedValue != null)
                {
                    var cApprovalHistory = new CApprovalHistory();
                    cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.Agency, Convert.ToInt32(RadGridAgency.SelectedValue));

                    // approve request
                    var approval = new CApproval().ApproveRequstCreate((int)CConstValue.Approval.Agency, CurrentUserId, Convert.ToInt32(RadGridAgency.SelectedValue));
                    if (approval > 0)
                    {
                        var cAgency = new CAgency();
                        var agency  = cAgency.Get(Convert.ToInt32(RadGridAgency.SelectedValue));
                        agency.ApprovalStatus = approval;
                        agency.ApprovalId     = CurrentUserId;
                        agency.ApprovalDate   = DateTime.Now;
                        //agency.ApprovalMemo = "";
                        cAgency.Update(agency);

                        new CMail().SendMail(CConstValue.Approval.Agency, CConstValue.MailStatus.ToApproveUser, agency.AgencyId, agency.AgencyNumber, CurrentUserId);
                    }

                    RadGridAgency.Rebind();
                }
                break;

            case "Approve":
                if (RadGridAgency.SelectedValue != null)
                {
                    RunClientScript("ShowApprovalWindow('" + RadGridAgency.SelectedValue + "');");
                }
                break;

            case "Reject":
                if (RadGridAgency.SelectedValue != null)
                {
                    RunClientScript("ShowApprovalRejectWindow('" + RadGridAgency.SelectedValue + "');");
                }
                break;

            case "Revise":
                if (RadGridAgency.SelectedValue != null)
                {
                    RunClientScript("ShowApprovalReviseWindow('" + RadGridAgency.SelectedValue + "');");
                }
                break;

            case "Cancel":
                if (RadGridAgency.SelectedValue != null)
                {
                    RunClientScript("ShowApprovalCancelWindow('" + RadGridAgency.SelectedValue + "');");
                }
                break;
            }
        }
예제 #3
0
        protected void HandleDrop(object sender, RadTreeNodeDragDropEventArgs e)
        {
            var sourceNode      = e.SourceDragNode;
            var destinationNode = e.DestDragNode;
            //RadTreeViewDropPosition dropPosition = e.DropPosition;
            var dragNodes = e.DraggedNodes.ToList();

            // move treeview
            if (destinationNode != null)
            {
                var cDests = new CApproval();
                var dests  = cDests.Get(Convert.ToInt32(destinationNode.Value), Convert.ToInt32(hfApproveType.Value));

                if (dragNodes.Any())
                {
                    foreach (var n in dragNodes)
                    {
                        var cDrags = new CApproval();
                        var drags  = cDests.Get(Convert.ToInt32(n.Value), Convert.ToInt32(hfApproveType.Value));

                        var emp = drags.UserId;

                        switch (e.DropPosition)
                        {
                        case RadTreeViewDropPosition.Over:
                            drags.Supervisor = dests.UserId;
                            break;
                        }
                        cDrags.UpdateStaff(Convert.ToInt32(hfApproveType.Value), emp, drags.Supervisor);
                        SetTreeviewChart(hfApproveType.Value);
                        //}
                    }
                }
            }
            // move to grid
            else if (e.HtmlElementID == RadGridSupervisor.ClientID)
            {
                foreach (var n in dragNodes)
                {
                    var cDrags = new CApproval();
                    var drags  = cDrags.Get(Convert.ToInt32(n.Value), Convert.ToInt32(hfApproveType.Value));
                    var emp    = drags.UserId;

                    drags.Supervisor = null;

                    cDrags.UpdateStaff(Convert.ToInt32(hfApproveType.Value), emp, drags.Supervisor);
                    SetTreeviewChart(hfApproveType.Value);
                }
            }
        }
예제 #4
0
        private void SetTreeviewChart(string approvalType, CApproval staff = null)
        {
            if (staff == null)
            {
                staff = new CApproval();
            }

            trSupervisorChart.DataTextField     = "UserName";
            trSupervisorChart.DataValueField    = "UserId";
            trSupervisorChart.DataFieldID       = "UserId";
            trSupervisorChart.DataFieldParentID = "Supervisor";
            trSupervisorChart.ValidationGroup   = "UserPositionId";
            trSupervisorChart.DataSource        = staff.GetSupervisorChart(Convert.ToInt32(approvalType), CurrentSiteId);
            trSupervisorChart.DataBind();

            trSupervisorChart.ExpandAllNodes();
        }
예제 #5
0
        protected void RadToolBar1_ButtonClick(object sender, RadToolBarEventArgs e)
        {
            // Save or Modify
            if (e.Item.Text == "TempSave" || e.Item.Text == "Request")
            {
                if (IsValid)
                {
                    var cObj = new CHire();
                    var obj  = cObj.Get(Id);

                    // new one
                    if (obj == null)
                    {
                        obj             = new Erp2016.Lib.Hire();
                        obj.CreatedId   = Convert.ToInt32(CurrentUserId);
                        obj.CreatedDate = DateTime.Now;
                        int newIndex = Convert.ToInt32(cObj.Add(obj).ToString());
                        obj = cObj.Get(newIndex);
                        ViewState["NewIndex"] = newIndex;
                    }
                    else
                    {
                        obj.UpdatedId         = Convert.ToInt32(CurrentUserId);
                        obj.UpdatedDate       = DateTime.Now;
                        ViewState["NewIndex"] = obj.HireId.ToString();
                    }

                    obj.ApprovalId   = CurrentUserId;
                    obj.ApprovalDate = DateTime.Now;


                    if (e.Item.Text == "TempSave")
                    {
                        obj.ApprovalStatus = null;
                    }
                    else
                    {
                        var cApprovalHistory = new CApprovalHistory();
                        cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.Hire, Convert.ToInt32(ViewState["NewIndex"]));

                        // approve request
                        var approval       = new CApproval();
                        var approvalResult = approval.ApproveRequstCreate((int)CConstValue.Approval.Hire, CurrentUserId, Convert.ToInt32(ViewState["NewIndex"]));
                        if (approvalResult > 0)
                        {
                            obj.ApprovalStatus = approvalResult;
                        }
                        else
                        {
                            ShowMessage("Failed");
                            return;
                        }

                        new CMail().SendMail(CConstValue.Approval.Hire, CConstValue.MailStatus.ToApproveUser, Convert.ToInt32(ViewState["NewIndex"]), string.Empty, CurrentUserId);
                    }

                    obj.Department = Convert.ToInt32(RadComboBoxDepartment.SelectedValue);
                    obj.Genre      = Convert.ToInt32(RadComboBoxGenre.SelectedValue);
                    obj.Condition  = Convert.ToInt32(RadComboBoxCondition.SelectedValue);

                    obj.JobTitle                            = RadTextBoxJobTitle.Text;
                    obj.ReasonForHiring                     = RadTextBoxReasonForHiring.Text;
                    obj.DutiesAndResponsibilities           = RadEditorDuties.Text;
                    obj.SkillsAndExperienceAndQualification = RadEditorSkills.Text;
                    obj.SalaryOrWage                        = RadTextBoxSalary.Text;
                    obj.EmploymentCategory                  = RadTextBoxEmployment.Text;
                    obj.HoursOrDaysOfWork                   = RadTextBoxHours.Text;
                    obj.AdditionalComments                  = RadEditorAdditional.Text;

                    cObj.Update(obj);

                    // save other tables
                    RunClientScript("Close();");
                }
                else
                {
                    ShowMessage("Failed");
                }
            }
            // Revise
            else if (e.Item.Text == "Revise")
            {
                RunClientScript("ShowApprovalReviseWindow('" + Id + "');");
            }
            // Approval
            else if (e.Item.Text == "Approve")
            {
                RunClientScript("ShowApprovalWindow('" + Id + "');");
            }
            // Reject
            else if (e.Item.Text == "Reject")
            {
                RunClientScript("ShowApprovalRejectWindow('" + Id + "');");
            }
            // Print
            else if (e.Item.Text == "Print")
            {
                RunClientScript("ShowPrint();");
            }
            // Cancel
            else if (e.Item.Text == "Cancel")
            {
                RunClientScript("ShowApprovalCancelWindow('" + Id + "');");
            }
            // close
            else if (e.Item.Text == "Close")
            {
                RunClientScript("Close();");
            }
        }
예제 #6
0
        protected void StaffButtonClicked(object sender, RadToolBarEventArgs e)
        {
            if (e.Item.Text == @"New")
            {
                ResetForm();
            }
            else if (e.Item.Text == @"Update" && RadGridUser.SelectedValue != null)
            {
                if (IsValid)
                {
                    var cUser = new CUser();
                    var user  = cUser.Get(Convert.ToInt32(RadGridUser.SelectedValue));

                    if (string.IsNullOrEmpty(tbPassWord.Text) == false)
                    {
                        user.Password = CCryptography.EncryptPlainTextToCipherText(tbPassWord.Text.Trim());
                    }
                    user.FirstName = tbFName.Text;
                    user.MidName   = tbMName.Text;
                    user.LastName  = tbLName.Text;

                    user.DOB           = tbDOB.SelectedDate;
                    user.MaritalStatus = ddlMarital.SelectedValue;
                    user.Gender        = ddlGender.SelectedValue;
                    user.Email         = tbWEmail.Text.Trim();
                    user.Phone         = tbWPhone.Text.Trim();

                    user.EContactName = tbEName.Text;
                    user.ERelation    = tbERelation.Text;
                    user.EPhone       = tbEPhone.Text;
                    user.EAddress     = tbEAddress.Text;

                    // only HR or IT can modify those things.
                    if (CurrentGroupId == (int)CConstValue.UserGroupForUserInformation.HR ||
                        CurrentGroupId == (int)CConstValue.UserGroupForUserInformation.IT)
                    {
                        user.UserPositionId = Convert.ToInt32(RadComboBoxUserPosition.SelectedValue);
                        user.SINNo          = Convert.ToInt32(tbSIN.Text);
                        user.SiteLocationId = Convert.ToInt32(RadComboBoxSiteLocation.SelectedValue);
                        user.EmployeeNumber = tbEmpNo.Text;
                        user.IsActive       = cbActive.Checked;

                        int?supervisor = string.IsNullOrEmpty(RadComboBoxSuper.SelectedValue) ? (int?)null : Convert.ToInt32(RadComboBoxSuper.SelectedValue);

                        if (user.Supervisor != supervisor)
                        {
                            user.Supervisor = supervisor;

                            var cApp    = new CApproval();
                            var appList = cApp.GetList(Convert.ToInt32(RadGridUser.SelectedValue));
                            foreach (var app in appList)
                            {
                                app.Supervisor = user.Supervisor;
                                app.IsActive   = user.IsActive;

                                app.UpdatedId   = CurrentUserId;
                                app.UpdatedDate = DateTime.Now;

                                cApp.Update(app);
                            }
                        }
                    }

                    user.Address1      = tbPAddess1.Text;
                    user.Address2      = tbPAddess2.Text;
                    user.City          = tbPCity.Text;
                    user.Province      = tbPProvince.Text;
                    user.PostalCode    = tbPPostal.Text;
                    user.HomePhone     = tbPHomePhone.Text;
                    user.CellPhone     = tbPCell.Text;
                    user.PersonalEmail = tbPEmail.Text;

                    user.UpdatedId   = CurrentUserId;
                    user.UpdatedDate = DateTime.Now;

                    if (AsyncUploadPicture.UploadedFiles.Count > 0)
                    {
                        UploadedFile file     = AsyncUploadPicture.UploadedFiles[0];
                        byte[]       fileData = new byte[file.InputStream.Length];
                        file.InputStream.Read(fileData, 0, (int)file.InputStream.Length);
                        user.Picture = fileData;
                    }

                    if (cUser.Update(user))
                    {
                        RadGridUser.Rebind();
                        ShowMessage("Updated Staff Info Successfully");
                    }
                    else
                    {
                        ShowMessage("Failed To Update Staff Info");
                    }
                }
            }
            else if (e.Item.Text == @"Save")
            {
                if (IsValid)
                {
                    var cUser = new CUser();
                    var user  = new Erp2016.Lib.User();

                    if (CurrentSiteId != 1)
                    {
                        user.SiteLocationId = Convert.ToInt32(CurrentSiteLocationId);
                    }
                    else
                    {
                        user.SiteLocationId = Convert.ToInt32(RadComboBoxSiteLocation.SelectedValue);
                    }

                    user.LoginId        = tbUserID.Text;
                    user.Password       = CCryptography.EncryptPlainTextToCipherText(tbPassWord.Text.Trim());
                    user.FirstName      = tbFName.Text;
                    user.MidName        = tbMName.Text;
                    user.LastName       = tbLName.Text;
                    user.SINNo          = Convert.ToInt32(tbSIN.Text);
                    user.DOB            = tbDOB.SelectedDate;
                    user.MaritalStatus  = ddlMarital.SelectedValue;
                    user.Gender         = ddlGender.SelectedValue;
                    user.Email          = tbWEmail.Text.Trim();
                    user.Phone          = tbWPhone.Text.Trim();
                    user.UserPositionId = Convert.ToInt32(RadComboBoxUserPosition.SelectedValue);
                    if (!string.IsNullOrEmpty(RadComboBoxSuper.SelectedValue))
                    {
                        user.Supervisor = Convert.ToInt32(RadComboBoxSuper.SelectedValue);
                    }

                    user.EmployeeNumber = tbEmpNo.Text;

                    user.EContactName = tbEName.Text;
                    user.ERelation    = tbERelation.Text;
                    user.EPhone       = tbEPhone.Text;
                    user.EAddress     = tbEAddress.Text;

                    user.Address1      = tbPAddess1.Text;
                    user.Address2      = tbPAddess2.Text;
                    user.City          = tbPCity.Text;
                    user.Province      = tbPProvince.Text;
                    user.PostalCode    = tbPPostal.Text;
                    user.HomePhone     = tbPHomePhone.Text;
                    user.CellPhone     = tbPCell.Text;
                    user.PersonalEmail = tbPEmail.Text;

                    user.IsActive = true;

                    user.CreatedId   = CurrentUserId;
                    user.CreatedDate = DateTime.Now;

                    if (AsyncUploadPicture.UploadedFiles.Count > 0)
                    {
                        UploadedFile file     = AsyncUploadPicture.UploadedFiles[0];
                        byte[]       fileData = new byte[file.InputStream.Length];
                        file.InputStream.Read(fileData, 0, (int)file.InputStream.Length);
                        user.Picture = fileData;
                    }

                    int newUserId = cUser.Add(user);
                    if (newUserId > 0)
                    {
                        var tempSupervisor = user.Supervisor ?? CConstValue.UserSystemId;

                        var cApproval = new CApproval();
                        var approval  = cApproval.GetAppType(tempSupervisor);
                        foreach (var a in approval)
                        {
                            var type = new Approval();

                            type.ApproveType = a.ApproveType;
                            type.UserId      = newUserId;
                            type.Supervisor  = a.UserId;
                            type.IsActive    = true;
                            type.CreatedId   = CurrentUserId;
                            type.CreatedDate = DateTime.Now;

                            cApproval.Add(type);
                        }

                        // vacation Schema
                        var cVacationSchema = new CVacationSchema();
                        var isKgic          = new CSite().Get(new CSiteLocation().Get(user.SiteLocationId).SiteId).Abbreviation.ToLower() == "kgic";

                        for (var i = 1; i <= 6; i++)
                        {
                            var vacationType = 0;
                            var date         = i % 2 == 0 ? DateTime.Today.AddYears(1) : DateTime.Today;
                            switch (i)
                            {
                            case 1:
                            case 2:
                                vacationType = (int)CConstValue.VacationType.PaidVacationDay;
                                break;

                            case 3:
                            case 4:
                                vacationType = (int)CConstValue.VacationType.SickDay;
                                break;

                            case 5:
                            case 6:
                                if (isKgic == false)
                                {
                                    continue;
                                }
                                vacationType = (int)CConstValue.VacationType.EntitlementDay;
                                break;
                            }

                            cVacationSchema.Add(new VacationSchema
                            {
                                Date         = date,
                                UserId       = newUserId,
                                VacationType = vacationType,
                                TotalDays    = 0,
                                CreatedId    = CurrentUserId,
                                CreatedDate  = DateTime.Now
                            });
                        }

                        // user permission
                        new CUserPermission().SetBasicPermission(user, CurrentUserId);

                        RadGridUser.Rebind();
                        ShowMessage(new CUser().GetUserName(user) + " has been successfully created");
                    }
                    else
                    {
                        ShowMessage("Failed To Add Staff Info");
                    }
                }
            }
            else if (e.Item.Text == "Permission")
            {
                if (RadGridUser.SelectedValue != null)
                {
                    RunClientScript("ShowPermission(" + RadGridUser.SelectedValue + ");");
                }
            }
            else if (e.Item.Text == "User Information")
            {
                if (RadGridUser.SelectedValue != null)
                {
                    RunClientScript("ShowUserInformation(" + RadGridUser.SelectedValue + ");");
                }
            }
        }
예제 #7
0
        protected void RadToolBar_ButtonClick(object sender, RadToolBarEventArgs e)
        {
            switch (e.Item.Text)
            {
            case "TempSave":
            case "Request":
                if (IsValid)
                {
                    var cRefund1 = new CRefund();
                    var refund1  = cRefund1.Get(RefundId);

                    FileDownloadList1.SaveFile(refund1.RefundId);

                    var cCreditMemoPayout = new CCreditMemoPayout();
                    var creditMemoPayout  = cCreditMemoPayout.Get(refund1.CreditMemoPayoutId);
                    creditMemoPayout           = CreditMemoPayout1.GetData(creditMemoPayout);
                    creditMemoPayout.UpdatedId = CurrentUserId;

                    if (cCreditMemoPayout.Update(creditMemoPayout))
                    {
                        if (cRefund1.Update(refund1))
                        {
                            if (e.Item.Text == "TempSave")
                            {
                                RunClientScript("Close();");
                            }
                            else
                            {
                                var cApprovalHistory = new CApprovalHistory();
                                cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.Refund, RefundId);

                                // approve request
                                var approval = new CApproval().ApproveRequstCreate((int)CConstValue.Approval.Refund, CurrentUserId, RefundId);
                                if (approval > 0)
                                {
                                    var cRefund = new CRefund();
                                    var refund  = cRefund.Get(RefundId);
                                    refund.ApprovalStatus = approval;
                                    refund.ApprovalId     = CurrentUserId;
                                    refund.ApprovalDate   = DateTime.Now;
                                    //packageProgram.ApprovalMemo = "";
                                    cRefund.Update(refund);

                                    new CMail().SendMail(CConstValue.Approval.Refund, CConstValue.MailStatus.ToApproveUser, refund.RefundId, string.Empty, CurrentUserId);

                                    RunClientScript("Close();");
                                }
                                else
                                {
                                    ShowMessage("error requesting");
                                }
                            }
                        }
                        else
                        {
                            ShowMessage("Error updating refund");
                        }
                    }
                    else
                    {
                        ShowMessage("Error updating creditMemoPayout");
                    }
                }
                else
                {
                    ShowMessage("Error can't find refund");
                }
                break;

            case "Close":
                RunClientScript("Close();");
                break;
            }
        }
예제 #8
0
        protected void RadToolBar1_ButtonClick(object sender, RadToolBarEventArgs e)
        {
            // Save
            if (e.Item.Text == "TempSave" || e.Item.Text == "Request")
            {
                if (IsValid)
                {
                    var cObj = new CVacation();
                    var obj  = cObj.Get(Id);

                    // new one
                    if (obj == null)
                    {
                        obj             = new Erp2016.Lib.Vacation();
                        obj.CreatedId   = Convert.ToInt32(CurrentUserId);
                        obj.CreatedDate = DateTime.Now;

                        int newIndex = Convert.ToInt32(cObj.Add(obj).ToString());
                        obj = cObj.Get(newIndex);
                        ViewState["NewIndex"] = newIndex;
                    }
                    else
                    {
                        obj.UpdatedId         = Convert.ToInt32(CurrentUserId);
                        obj.UpdatedDate       = DateTime.Now;
                        ViewState["NewIndex"] = obj.VacationId.ToString();
                    }

                    obj.ApprovalId   = CurrentUserId;
                    obj.ApprovalDate = DateTime.Now;

                    if (e.Item.Text == "TempSave")
                    {
                        obj.ApprovalStatus = null;
                    }
                    else
                    {
                        var cApprovalHistory = new CApprovalHistory();
                        cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.Vacation, Convert.ToInt32(ViewState["NewIndex"]));

                        // approve request
                        var approval       = new CApproval();
                        var approvalResult = approval.ApproveRequstCreate((int)CConstValue.Approval.Vacation, CurrentUserId, Convert.ToInt32(ViewState["NewIndex"]));
                        if (approvalResult > 0)
                        {
                            obj.ApprovalStatus = approvalResult;
                        }
                        else
                        {
                            ShowMessage("Failed");
                            return;
                        }

                        new CMail().SendMail(CConstValue.Approval.Vacation, CConstValue.MailStatus.ToApproveUser, Convert.ToInt32(ViewState["NewIndex"]), string.Empty, CurrentUserId);
                    }

                    // data
                    obj.VacationType = Convert.ToInt32(RadComboBoxVacationType.SelectedValue);
                    obj.Remark       = RadTextBoxRemark.Text;

                    cObj.Update(obj);

                    // delete
                    CVacationDetail vacationDetailClass = new CVacationDetail();
                    vacationDetailClass.DeleteItemsByVacationId(obj.VacationId);

                    // insert
                    foreach (RadDate radDate in RadCalendar1.SelectedDates)
                    {
                        vacationDetailClass.Add(new VacationDetail()
                        {
                            CreatedId   = CurrentUserId,
                            CreatedDate = DateTime.Now,
                            VacationId  = obj.VacationId,
                            IsFullDay   = RadComboBoxDayType.SelectedValue == "1" ? true : false,
                            Date        = radDate.Date
                        });
                    }

                    // save other tables
                    RunClientScript("Close();");
                }
                else
                {
                    ShowMessage("Failed");
                }
            }
            // Revise
            else if (e.Item.Text == "Revise")
            {
                RunClientScript("ShowApprovalReviseWindow('" + Id + "');");
            }
            // Approval
            else if (e.Item.Text == "Approve")
            {
                RunClientScript("ShowApprovalWindow('" + Id + "');");
            }
            // Reject
            else if (e.Item.Text == "Reject")
            {
                RunClientScript("ShowApprovalRejectWindow('" + Id + "');");
            }
            // Print
            else if (e.Item.Text == "Print")
            {
                RunClientScript("ShowPrint();");
            }
            // Cancel
            else if (e.Item.Text == "Cancel")
            {
                RunClientScript("ShowApprovalCancelWindow('" + Id + "');");
            }
            // close
            else if (e.Item.Text == "Close")
            {
                RunClientScript("Close();");
            }
        }
예제 #9
0
        protected void MainToolBar_ButtonClick(object sender, RadToolBarEventArgs e)
        {
            if (e.Item.Text == @"Approve" && !string.IsNullOrEmpty(hfId.Value))
            {
                if (IsValid)
                {
                    var type     = Convert.ToInt32(hfType.Value);
                    var id       = Convert.ToInt32(hfId.Value);
                    var idNumber = string.Empty;

                    var cApprovalHistory = new CApprovalHistory();
                    var approvalHistory  = cApprovalHistory.Get(type, id, CurrentUserId);
                    approvalHistory.ApprovalDate = DateTime.Now;
                    approvalHistory.ApprovalMemo = tbRemark.Text;
                    // cal
                    int approvalStatus = cApprovalHistory.CheckApprovalStep(type, id);
                    if (approvalStatus == (int)CConstValue.ApprovalStatus.Approved)
                    {
                        approvalStatus = new CGlobal().GetApprovalValue(type);
                    }
                    approvalHistory.ApprovalStep = approvalStatus;
                    // update approvalHistory
                    cApprovalHistory.Update(approvalHistory);

                    //Refund & Commission
                    if (type == (int)CConstValue.Approval.Refund)
                    {
                        var cRefundInfo = new CRefund();
                        var refundInfo  = cRefundInfo.Get(Convert.ToInt32(hfId.Value));

                        refundInfo.ApprovalDate   = approvalHistory.ApprovalDate;
                        refundInfo.ApprovalId     = approvalHistory.ApprovalUser;
                        refundInfo.ApprovalMemo   = approvalHistory.ApprovalMemo;
                        refundInfo.ApprovalStatus = approvalHistory.ApprovalStep;

                        if (cRefundInfo.Update(refundInfo))
                        {
                            //if last approve
                            if (refundInfo.ApprovalStatus == (int)CConstValue.ApprovalStatus.Approved)
                            {
                                var vwRefund      = cRefundInfo.GetVwRefund(refundInfo.RefundId);
                                var refundAmount  = Math.Abs((decimal)vwRefund.RefundAmount);
                                var sumOfMdfAndCp = new CCreditMemo().GetSumOfMdfAndCp(vwRefund.RefundId);

                                var cCreditMemoPayout = new CCreditMemoPayout();
                                var creditMemoPayout  = cCreditMemoPayout.Get(refundInfo.CreditMemoPayoutId);

                                var cCreditMemo = new CCreditMemo();
                                var creditMemo  = cCreditMemo.Get(creditMemoPayout.CreditMemoId);

                                creditMemo.OriginalCreditMemoAmount = refundAmount - sumOfMdfAndCp;
                                creditMemo.CreditMemoStartDate      = DateTime.Now;
                                creditMemo.CreditMemoEndDate        = DateTime.Now.AddYears(1);
                                creditMemo.IsActive    = true;
                                creditMemo.UpdatedId   = CurrentUserId;
                                creditMemo.UpdatedDate = DateTime.Now;

                                // Approved
                                creditMemoPayout.ApprovalStatus = (int)CConstValue.ApprovalStatus.Approved;
                                creditMemoPayout.ApprovalDate   = DateTime.Now;
                                creditMemoPayout.ApprovalId     = CurrentUserId;
                                creditMemoPayout.Amount         = refundAmount;
                                creditMemoPayout.PayoutMethod   = vwRefund.PayoutMethod;
                                creditMemoPayout.IsActive       = true;

                                creditMemoPayout.UpdatedId   = CurrentUserId;
                                creditMemoPayout.UpdatedDate = DateTime.Now;

                                cCreditMemoPayout.Update(creditMemoPayout);

                                if (cCreditMemo.Update(creditMemo))
                                {
                                    var cInvoiceInfo = new CInvoice();
                                    var invoiceInfo  = cInvoiceInfo.Get(refundInfo.InvoiceId);

                                    var cOriginalInvoiceInfo = new CInvoice();
                                    var originalInvoiceInfo  = cOriginalInvoiceInfo.Get(Convert.ToInt32(invoiceInfo.OriginalInvoiceId));

                                    invoiceInfo.Status    = (int)CConstValue.InvoiceStatus.Invoiced; // Invoiced
                                    invoiceInfo.UpdatedId = CurrentUserId;

                                    originalInvoiceInfo.Status    = (int)CConstValue.InvoiceStatus.Cancelled_RF; // Canceled_RF
                                    originalInvoiceInfo.UpdatedId = CurrentUserId;

                                    var startDate = DateTime.Now;
                                    var endDate   = DateTime.Now;

                                    //invoice status update
                                    if (cInvoiceInfo.Update(invoiceInfo) && cOriginalInvoiceInfo.Update(originalInvoiceInfo))
                                    {
                                        // Program
                                        if (invoiceInfo.ProgramRegistrationId != null)
                                        {
                                            var cProgramRegiInfo = new CProgramRegistration();
                                            var programRegiInfo  = cProgramRegiInfo.Get(Convert.ToInt32(invoiceInfo.ProgramRegistrationId));
                                            programRegiInfo.UpdatedId               = CurrentUserId;
                                            programRegiInfo.UpdatedDate             = DateTime.Now;
                                            programRegiInfo.ProgramRegistrationType = 12; // cancel

                                            cProgramRegiInfo.Update(programRegiInfo);

                                            startDate = programRegiInfo.StartDate.Value;
                                            endDate   = programRegiInfo.EndDate.Value;
                                        }
                                        // Homestay
                                        else if (invoiceInfo.HomestayRegistrationId != null)
                                        {
                                            var cHomestayStudentRequest = new CHomestayStudentRequest();
                                            var homestayStudentRequest  = cHomestayStudentRequest.GetHomestayStudentRequest(Convert.ToInt32(invoiceInfo.HomestayRegistrationId));
                                            homestayStudentRequest.UpdateUserId          = CurrentUserId;
                                            homestayStudentRequest.UpdatedDate           = DateTime.Now;
                                            homestayStudentRequest.HomestayStudentStatus = 1; // cancel

                                            cHomestayStudentRequest.Update(homestayStudentRequest);

                                            startDate = homestayStudentRequest.StartDate.Value;
                                            endDate   = homestayStudentRequest.EndDate.Value;
                                        }
                                        // Dormitory
                                        else if (invoiceInfo.DormitoryRegistrationId != null)
                                        {
                                            var cDormitoryStudentRequest = new CDormitoryRegistrations();
                                            var dormitoryStudentRequest  = cDormitoryStudentRequest.GetDormitoryStudentRequest(Convert.ToInt32(invoiceInfo.ProgramRegistrationId));
                                            dormitoryStudentRequest.DormitoryStudentStatus = 1; // cancel
                                            dormitoryStudentRequest.UpdatedId   = CurrentUserId;
                                            dormitoryStudentRequest.UpdatedDate = DateTime.Now;

                                            cDormitoryStudentRequest.Update(dormitoryStudentRequest);

                                            startDate = dormitoryStudentRequest.StartDate.Value;
                                            endDate   = dormitoryStudentRequest.EndDate.Value;
                                        }

                                        // Rev
                                        var cInterimInvoice = new CInvoice();
                                        var interimInvoice  = new Invoice();
                                        CGlobal.Copy(invoiceInfo, interimInvoice);
                                        interimInvoice.OriginalInvoiceId = invoiceInfo.InvoiceId;
                                        interimInvoice.InvoiceType       = (int)CConstValue.InvoiceType.Refund_RV;
                                        interimInvoice.Status            = (int)CConstValue.InvoiceStatus.Invoiced;
                                        interimInvoice.CreatedId         = CurrentUserId;
                                        interimInvoice.CreatedDate       = DateTime.Now;

                                        if (cInterimInvoice.Add(interimInvoice) > 0)
                                        {
                                            var totalDays   = Convert.ToDateTime(endDate) - Convert.ToDateTime(startDate);
                                            var interimDays = Convert.ToDateTime(endDate) - Convert.ToDateTime(refundInfo.RefundDate);
                                            var interimRate = Math.Round((interimDays.TotalDays / totalDays.TotalDays), 2) * 100;

                                            var cInvoiceItem = new CInvoiceItem();
                                            var cOriginalInvoiceItemModels     = cInvoiceItem.GetInvoiceItemModels(invoiceInfo.InvoiceId);
                                            List <InvoiceItem> newInvoiceItems = new List <InvoiceItem>();
                                            foreach (CInvoiceItemModel ori in cOriginalInvoiceItemModels)
                                            {
                                                if (ori.InvoiceCoaItem.RevenueRecognition == 1)
                                                {
                                                    var newInvoiceRevItem = new InvoiceItem();
                                                    CGlobal.Copy(ori.InvoiceItem, newInvoiceRevItem);
                                                    newInvoiceRevItem.InvoiceId = interimInvoice.InvoiceId;

                                                    newInvoiceRevItem.StandardPrice *= (decimal)interimRate;
                                                    newInvoiceRevItem.StudentPrice  *= (decimal)interimRate;
                                                    newInvoiceRevItem.AgencyPrice   *= (decimal)interimRate;

                                                    newInvoiceRevItem.CreatedId   = CurrentUserId;
                                                    newInvoiceRevItem.CreatedDate = DateTime.Now;
                                                    newInvoiceRevItem.Remark      = "Refund Rev";
                                                    newInvoiceItems.Add(newInvoiceRevItem);
                                                }
                                            }

                                            if (newInvoiceItems.Count > 0)
                                            {
                                                // copy invoiceItems
                                                if (cInvoiceItem.Add(newInvoiceItems))
                                                {
                                                    RunClientScript("Close();");
                                                }
                                                else
                                                {
                                                    ShowMessage("failed to update inqury (Refund Ref Invoice Item)");
                                                }
                                            }
                                            else
                                            {
                                                RunClientScript("Close();");
                                            }
                                        }
                                        else
                                        {
                                            ShowMessage("failed to update inqury (Refund Ref Invoice)");
                                        }
                                    }
                                    else
                                    {
                                        ShowMessage("failed to update inqury (Original Invoice and Refund Invoice)");
                                    }
                                }
                                else
                                {
                                    ShowMessage("failed to update inqury (CreditMemo Info)");
                                }
                            }
                            else
                            {
                                RunClientScript("Close();");
                            }
                        }
                        else
                        {
                            ShowMessage("failed to update inqury (Refund Info)");
                        }
                    }
                    // Agency
                    else if (type == (int)CConstValue.Approval.Agency)
                    {
                        try
                        {
                            var cAgency = new CAgency();
                            var agency  = cAgency.Get(id);

                            idNumber              = agency.AgencyNumber;
                            agency.ApprovalDate   = approvalHistory.ApprovalDate;
                            agency.ApprovalId     = approvalHistory.ApprovalUser;
                            agency.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            agency.ApprovalStatus = approvalHistory.ApprovalStep;

                            cAgency.Update(agency);

                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }
                    // BusinessTrip
                    else if (type == (int)CConstValue.Approval.BusinessTrip)
                    {
                        try
                        {
                            var cBusinessTrip = new CBusinessTrip();
                            var businessTrip  = cBusinessTrip.Get(id);

                            businessTrip.ApprovalDate   = approvalHistory.ApprovalDate;
                            businessTrip.ApprovalId     = approvalHistory.ApprovalUser;
                            businessTrip.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            businessTrip.ApprovalStatus = approvalHistory.ApprovalStep;

                            cBusinessTrip.Update(businessTrip);

                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }
                    // Purchase Order
                    else if (type == (int)CConstValue.Approval.PurchaseOrder)
                    {
                        try
                        {
                            var cPurchaseOrder = new CPurchaseOrder();
                            var purchaseOrder  = cPurchaseOrder.Get(id);

                            purchaseOrder.ApprovalDate   = approvalHistory.ApprovalDate;
                            purchaseOrder.ApprovalId     = approvalHistory.ApprovalUser;
                            purchaseOrder.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            purchaseOrder.ApprovalStatus = approvalHistory.ApprovalStep;

                            cPurchaseOrder.Update(purchaseOrder);
                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }
                    // Package Program
                    else if (type == (int)CConstValue.Approval.Package)
                    {
                        try
                        {
                            var cP             = new CPackageProgram();
                            var packageProgram = cP.GetPackageProgram(id);

                            packageProgram.ApprovalDate   = approvalHistory.ApprovalDate;
                            packageProgram.ApprovalId     = approvalHistory.ApprovalUser;
                            packageProgram.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            packageProgram.ApprovalStatus = approvalHistory.ApprovalStep;
                            if (packageProgram.ApprovalStatus == (int)CConstValue.ApprovalStatus.Approved)
                            {
                                packageProgram.IsActive = true;
                            }

                            cP.Update(packageProgram);
                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }
                    //Scholarship//
                    else if (type == (int)CConstValue.Approval.Scholarship)
                    {
                        try
                        {
                            var cScholar = new CScholarship();
                            var scholar  = cScholar.Get(Convert.ToInt32(id));

                            idNumber               = scholar.ScholarshipMasterNo;
                            scholar.ApprovalDate   = approvalHistory.ApprovalDate;
                            scholar.ApprovalId     = approvalHistory.ApprovalUser;
                            scholar.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            scholar.ApprovalStatus = approvalHistory.ApprovalStep;
                            if (scholar.ApprovalStatus == (int)CConstValue.ApprovalStatus.Approved)
                            {
                                scholar.IsActive = true;
                            }

                            cScholar.Update(scholar);
                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }
                    //Promotion//
                    else if (type == (int)CConstValue.Approval.Promotion)
                    {
                        try
                        {
                            var cPromo = new CPromotion();
                            var promo  = cPromo.Get(Convert.ToInt32(id));

                            idNumber             = promo.PromotionMasterNo;
                            promo.ApprovalDate   = approvalHistory.ApprovalDate;
                            promo.ApprovalId     = approvalHistory.ApprovalUser;
                            promo.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            promo.ApprovalStatus = approvalHistory.ApprovalStep;
                            if (promo.ApprovalStatus == (int)CConstValue.ApprovalStatus.Approved)
                            {
                                promo.IsActive = true;
                            }

                            cPromo.Update(promo);
                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }
                    // Expense Program
                    else if (type == (int)CConstValue.Approval.Expense)
                    {
                        try
                        {
                            var cExpense = new CExpense();
                            var expense  = cExpense.Get(id);

                            expense.ApprovalDate   = approvalHistory.ApprovalDate;
                            expense.ApprovalId     = approvalHistory.ApprovalUser;
                            expense.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            expense.ApprovalStatus = approvalHistory.ApprovalStep;

                            cExpense.Update(expense);
                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }
                    // Hire
                    else if (type == (int)CConstValue.Approval.Hire)
                    {
                        try
                        {
                            var cHire = new CHire();
                            var hire  = cHire.Get(id);

                            hire.ApprovalDate   = approvalHistory.ApprovalDate;
                            hire.ApprovalId     = approvalHistory.ApprovalUser;
                            hire.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            hire.ApprovalStatus = approvalHistory.ApprovalStep;

                            cHire.Update(hire);
                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }
                    // Vacation
                    else if (type == (int)CConstValue.Approval.Vacation)
                    {
                        try
                        {
                            var cVacationDetail = new CVacation();
                            var vacation        = cVacationDetail.Get(id);

                            vacation.ApprovalDate   = approvalHistory.ApprovalDate;
                            vacation.ApprovalId     = approvalHistory.ApprovalUser;
                            vacation.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            vacation.ApprovalStatus = approvalHistory.ApprovalStep;

                            cVacationDetail.Update(vacation);
                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }
                    // CreditMemoPayout
                    else if (type == (int)CConstValue.Approval.CreditMemoPayout)
                    {
                        try
                        {
                            var cCreditMemo = new CCreditMemoPayout();
                            var creditMemo  = cCreditMemo.Get(id);

                            creditMemo.ApprovalDate   = approvalHistory.ApprovalDate;
                            creditMemo.ApprovalId     = approvalHistory.ApprovalUser;
                            creditMemo.ApprovalMemo   = approvalHistory.ApprovalMemo;
                            creditMemo.ApprovalStatus = approvalHistory.ApprovalStep;

                            cCreditMemo.Update(creditMemo);
                            RunClientScript("Close();");
                        }
                        catch (Exception ex)
                        {
                            ShowMessage(ex.Message);
                        }
                    }


                    if (approvalHistory.ApprovalStep != (int)CConstValue.ApprovalStatus.Approved) //if has a next approver, request approve
                    {
                        var approvalInfo = new CApproval();
                        var supervisor   = approvalInfo.GetSupuervisor(type, CurrentUserId);

                        if (supervisor > 0)
                        {
                            var cNextApprove = new CApprovalHistory();
                            var nextApprove  = cNextApprove.Get(type, id, supervisor);

                            nextApprove.IsApprovalRequest = true;
                            cNextApprove.Update(nextApprove);
                        }

                        new CMail().SendMail((CConstValue.Approval)type, CConstValue.MailStatus.ToApproveUserAndRequestUser, id, idNumber, CurrentUserId);
                    }
                    // approved
                    else
                    {
                        new CMail().SendMail((CConstValue.Approval)type, CConstValue.MailStatus.ToRequestUser, id, idNumber, CurrentUserId);
                    }
                }
            }
        }
예제 #10
0
        //protected void LoadSite()
        //{
        //    var global = new CGlobal();

        //    RadComboBoxSite.DataSource = global.GetSiteId();
        //    RadComboBoxSite.DataTextField = "Name";
        //    RadComboBoxSite.DataValueField = "Value";
        //    RadComboBoxSite.DataBind();
        //    RadComboBoxSite.Items.Insert(0, new RadComboBoxItem("- Select Site - "));
        //}

        protected void StudentButtonClicked(object sender, RadToolBarEventArgs e)
        {
            switch (e.Item.Text)
            {
            case "TempSave":
            case "Request":
                var cScholarshipReg = new CScholarship();
                var scholarshipReg  = new Erp2016.Lib.Scholarship();
                // new
                if (Request["type"] == "0")
                {
                    scholarshipReg             = new Erp2016.Lib.Scholarship();
                    scholarshipReg.CreatedId   = CurrentUserId;
                    scholarshipReg.CreatedDate = DateTime.Now;
                }
                // modify
                else
                {
                    scholarshipReg = cScholarshipReg.Get(Id);
                }

                scholarshipReg.AgencyId = Convert.ToInt32(ddlAgencyName.SelectedValue);
                if (rbAmount.Checked)
                {
                    scholarshipReg.Amount = Convert.ToDecimal(RadNumericTextBoxAmount.Text == string.Empty ? "0" : RadNumericTextBoxAmount.Text);
                }
                if (rbWeeks.Checked)
                {
                    scholarshipReg.Weeks = Convert.ToInt32(tbWeeks.Text);
                }

                scholarshipReg.ExpireDate = Convert.ToDateTime(tbExpireDate.SelectedDate);
                scholarshipReg.MininumRegistrationWeeks = Convert.ToInt32(RadComboBoxMinimum.SelectedValue);
                scholarshipReg.Memo      = tbComment.Text;
                scholarshipReg.CreatedId = CurrentUserId;
                scholarshipReg.IsActive  = false;

                int scholarshipId;

                // new
                if (Request["type"] == "0")
                {
                    scholarshipReg.IsActive = false;
                    scholarshipId           = cScholarshipReg.Add(scholarshipReg);
                }
                // modify
                else
                {
                    scholarshipReg.UpdatedId   = CurrentUserId;
                    scholarshipReg.UpdatedDate = DateTime.Now;
                    cScholarshipReg.Update(scholarshipReg);

                    scholarshipId = scholarshipReg.ScholarshipId;
                }

                var cScholarshipSiteLocation = new CScholarshipSiteLocation();
                cScholarshipSiteLocation.DelScholarshipSiteLocation(scholarshipId);

                foreach (var siteLocation in RadComboBoxSiteLocation.CheckedItems)
                {
                    var scholarshipSiteLocation = new ScholarshipSiteLocation()
                    {
                        CreatedId      = CurrentUserId,
                        ScholarshipId  = scholarshipId,
                        SiteLocationId = Convert.ToInt32(siteLocation.Value),
                        CreatedDate    = DateTime.Now
                    };
                    cScholarshipSiteLocation.Add(scholarshipSiteLocation);
                }

                if (e.Item.Text == "TempSave")
                {
                    RunClientScript("Close();");
                }
                else
                {
                    var cApprovalHistory = new CApprovalHistory();
                    cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.Scholarship, scholarshipId);

                    var approval = new CApproval().ApproveRequstCreate((int)CConstValue.Approval.Scholarship, CurrentUserId, scholarshipId);
                    if (approval > 0)
                    {
                        var cScholar = new CScholarship();
                        var scholar  = cScholar.Get(scholarshipId);
                        scholar.ApprovalStatus = approval;
                        scholar.ApprovalId     = CurrentUserId;
                        scholar.ApprovalDate   = DateTime.Now;
                        cScholar.Update(scholar);

                        new CMail().SendMail(CConstValue.Approval.Scholarship, CConstValue.MailStatus.ToApproveUser, scholar.ScholarshipId, scholar.ScholarshipMasterNo, CurrentUserId);

                        RunClientScript("Close();");
                    }
                    else
                    {
                        ShowMessage("error requesting");
                    }
                }
                break;

            case "Close":
                RunClientScript("Close();");
                break;
            }
        }
예제 #11
0
        protected void mainToolBar_ButtonClick(object sender, RadToolBarEventArgs e)
        {
            switch (e.Item.Text)
            {
            case "TempSave":
            case "Request":
                if (IsValid)
                {
                    var cProgram = new CPackageProgram();
                    Erp2016.Lib.PackageProgram packageProgram1 = null;
                    // new
                    if (hfType.Value == "0")
                    {
                        packageProgram1             = new Erp2016.Lib.PackageProgram();
                        packageProgram1.CreatedId   = CurrentUserId;
                        packageProgram1.CreatedDate = DateTime.Now;
                    }
                    // modify
                    else
                    {
                        packageProgram1 = cProgram.GetPackageProgram(Convert.ToInt32(hfId.Value));
                    }

                    packageProgram1.ProgramId          = Convert.ToInt32(RadComboBoxProgram.SelectedValue);
                    packageProgram1.PackageProgramName = RadTextBoxPackageProgramName.Text;
                    packageProgram1.Description        = RadTextBoxDescription.Text;
                    packageProgram1.StartDate          = RadDatePickerStartDate.SelectedDate;
                    packageProgram1.EndDate            = RadDatePickerEndDate.SelectedDate;

                    int packageProgramId;

                    // new
                    if (hfType.Value == "0")
                    {
                        packageProgram1.IsActive = false;
                        packageProgramId         = cProgram.Add(packageProgram1);
                    }
                    // modify
                    else
                    {
                        packageProgram1.UpdatedId   = CurrentUserId;
                        packageProgram1.UpdatedDate = DateTime.Now;

                        //packageProgram.IsActive = btnToggleActive.Checked;
                        cProgram.Update(packageProgram1);

                        packageProgramId = packageProgram1.PackageProgramId;
                    }

                    var cPackageProgramSiteLocation = new CPackageProgramSiteLocation();
                    cPackageProgramSiteLocation.DelPackageProgramSiteLocation(packageProgramId);

                    foreach (var siteLocation in RadComboBoxSiteLocation.CheckedItems)
                    {
                        var packageProgramSiteLocation = new PackageProgramSiteLocation()
                        {
                            CreatedId        = CurrentUserId,
                            PackageProgramId = packageProgramId,
                            SiteLocationId   = Convert.ToInt32(siteLocation.Value),
                            CreatedDate      = DateTime.Now
                        };
                        cPackageProgramSiteLocation.Add(packageProgramSiteLocation);
                    }

                    FileDownloadList1.SaveFile(packageProgramId);

                    if (e.Item.Text == "TempSave")
                    {
                        RunClientScript("Close();");
                    }
                    else
                    {
                        var cApprovalHistory = new CApprovalHistory();
                        cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.Package, packageProgramId);

                        // approve request
                        var approval = new CApproval().ApproveRequstCreate((int)CConstValue.Approval.Package, CurrentUserId, packageProgramId);
                        if (approval > 0)
                        {
                            var cP             = new CPackageProgram();
                            var packageProgram = cP.GetPackageProgram(packageProgramId);
                            packageProgram.ApprovalStatus = approval;
                            packageProgram.ApprovalId     = CurrentUserId;
                            packageProgram.ApprovalDate   = DateTime.Now;
                            //packageProgram.ApprovalMemo = "";
                            cP.Update(packageProgram);

                            new CMail().SendMail(CConstValue.Approval.Package, CConstValue.MailStatus.ToApproveUser, packageProgram.PackageProgramId, string.Empty, CurrentUserId);

                            RunClientScript("Close();");
                        }
                        else
                        {
                            ShowMessage("error requesting");
                        }
                    }
                }
                break;

            case "Close":
                RunClientScript("Close();");
                break;
            }
        }
예제 #12
0
        protected void RadToolBar1_ButtonClick(object sender, RadToolBarEventArgs e)
        {
            // Save
            if (e.Item.Text == "TempSave" || e.Item.Text == "Request")
            {
                if (IsValid)
                {
                    var cObj = new CBusinessTrip();
                    var obj  = cObj.Get(Id);

                    // new one
                    if (obj == null)
                    {
                        obj             = new Erp2016.Lib.BusinessTrip();
                        obj.CreatedId   = Convert.ToInt32(CurrentUserId);
                        obj.CreatedDate = DateTime.Now;
                        int newIndex = Convert.ToInt32(cObj.Add(obj).ToString());
                        obj = cObj.Get(newIndex);
                        ViewState["NewIndex"] = newIndex;
                    }
                    else
                    {
                        obj.UpdatedId         = Convert.ToInt32(CurrentUserId);
                        obj.UpdatedDate       = DateTime.Now;
                        ViewState["NewIndex"] = obj.BusinessTripId.ToString();
                    }

                    obj.ApprovalId   = CurrentUserId;
                    obj.ApprovalDate = DateTime.Now;

                    if (e.Item.Text == "TempSave")
                    {
                        obj.ApprovalStatus = null;
                    }
                    else
                    {
                        var cApprovalHistory = new CApprovalHistory();
                        cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.BusinessTrip, Convert.ToInt32(ViewState["NewIndex"]));

                        // approve request
                        var approval       = new CApproval();
                        var approvalResult = approval.ApproveRequstCreate((int)CConstValue.Approval.BusinessTrip, CurrentUserId, Convert.ToInt32(ViewState["NewIndex"]));
                        if (approvalResult > 0)
                        {
                            obj.ApprovalStatus = approvalResult;
                        }
                        else
                        {
                            ShowMessage("Failed");
                            return;
                        }

                        // mail
                        new CMail().SendMail(CConstValue.Approval.BusinessTrip, CConstValue.MailStatus.ToApproveUser, Convert.ToInt32(ViewState["NewIndex"]), string.Empty, CurrentUserId);
                    }

                    obj.Type      = RadButtonLocal.Checked ? RadButtonLocal.Text : RadButtonOverseas.Text;
                    obj.AirSub    = Convert.ToDecimal(GetAirRate().Value);
                    obj.AccomSub  = Convert.ToDecimal(GetAccomRate().Value);
                    obj.GroundSub = Convert.ToDecimal(GetGroundRate().Value);
                    obj.MealsSub  = Convert.ToDecimal(GetMealsRate().Value);
                    obj.CashSub   = Convert.ToDecimal(GetCashAdvanceTotal().Value);
                    obj.GrandSub  = Convert.ToDecimal(RadNumericTextBoxGrandTotal.Value);

                    cObj.Update(obj);

                    // save uploading file
                    FileDownloadList1.SaveFile(Convert.ToInt32(ViewState["NewIndex"]));

                    // save other tables
                    RunClientScript("SaveChanges();");
                }
            }
            // Revise
            else if (e.Item.Text == "Revise")
            {
                RunClientScript("ShowApprovalReviseWindow('" + Id + "');");
            }
            // Approval
            else if (e.Item.Text == "Approve")
            {
                RunClientScript("ShowApprovalWindow('" + Id + "');");
            }
            // Reject
            else if (e.Item.Text == "Reject")
            {
                RunClientScript("ShowApprovalRejectWindow('" + Id + "');");
            }
            // Accept
            else if (e.Item.Text == "Accept")
            {
                RunClientScript("ShowApprovalAcceptWindow('" + Id + "');");
            }
            // Complete
            else if (e.Item.Text == "Complete")
            {
                RunClientScript("ShowApprovalCompleteWindow('" + Id + "');");
            }
            // Cancel
            else if (e.Item.Text == "Cancel")
            {
                RunClientScript("ShowApprovalCancelWindow('" + Id + "');");
            }
            // Print
            else if (e.Item.Text == "Print")
            {
                RunClientScript("ShowPrint();");
            }
            // close
            else if (e.Item.Text == "Close")
            {
                RunClientScript("Close();");
            }
        }
예제 #13
0
    public static void SetFilterCheckListItems(GridFilterCheckListItemsRequestedEventArgs e)
    {
        object dataSource = null;
        string dataField  = (e.Column as IGridDataColumn).GetActiveDataField();

        switch (dataField)
        {
        // Common
        case "SiteName":
            dataSource = new CSite().GetSiteNameList();
            break;

        case "SiteLocationName":
            dataSource = new CSiteLocation().GetSiteLocationNameList();
            break;

        case "CountryName":
            dataSource = new CCountry().GetCountryNameList();
            break;

        case "AgencyName":
            dataSource = new CAgency().GetAgencyNameList();
            break;

        case "ProgramName":
            dataSource = new CProgram().GetProgramNameList();
            break;

        case "InvoiceCoaItemId":
            dataSource = new CInvoiceCoaItem().GetInvoiceCoaItemIdNameList();
            break;

        case "InvoiceName":
            dataSource = new CProgram().GetInvoiceNameList();
            break;

        case "StudentName":
            dataSource = new CStudent().GetStudentNameList();
            break;

        case "UserName":
            dataSource = new CUser().GetUserNameList();
            break;

        case "Status":
            dataSource = new CApproval().GetStatusNameList();
            break;

        case "ApprovalUserName":
            dataSource = new CUser().GetApprovalUserNameList();
            break;

        case "InstructorName":
            dataSource = new CUser().GetInstructorNameList();
            break;

        case "ProgramStatusName":
            dataSource = new CProgramRegistration().GetProgramStatusList();
            break;

        // Dashboard
        case "Type":
            dataSource = new CApproval().GetApprovalTypeNameList();
            break;

        // Invoice
        case "InvoiceType":
            dataSource = new CInvoice().GetInvoiceTypeList();
            break;

        case "InvoiceStatus":
            dataSource = new CInvoice().GetInvoiceStatusList();
            break;

        // Deposit
        case "DepositStatus":
            dataSource = new CDeposit().GetDepositStatusNameList();
            break;

        case "DepositBank":
            dataSource = new CDeposit().GetDepositBankNameList();
            break;

        case "PaidMethod":
            dataSource = new CDeposit().GetPaidMethodNameList();
            break;

        case "ExtraTypeName":
            dataSource = new CDeposit().GetExtraTypeNameList();
            break;

        // CreditMemo
        case "CreditMemoType":
            dataSource = new CCreditMemo().GetCreditMemoTypeNameList();
            break;

        case "PayoutMethodName":
            dataSource = new CCreditMemoPayout().GetPayoutMethodNameList();
            break;

        // Academic
        case "FacultyName":
            dataSource = new CFaculty().GetFacultyNameList();
            break;

        case "ProgramGroupName":
            dataSource = new CProgramGroup().GetProgramGroupNameList();
            break;

        // Vacation
        case "VacationType":
            dataSource = new CVacation().GetVacationTypeNameList();
            break;

        // User
        case "CreatedUserName":
            dataSource = new CUser().GetCreatedUserNameList();
            break;

        case "UpdatedUserName":
            dataSource = new CUser().GetUpdatedUserNameList();
            break;

        case "PositionName":
            dataSource = new CUser().GetPositionNameList();
            break;

        case "Email":
            dataSource = new CUser().GetEmailNameList();
            break;

        case "LoginId":
            dataSource = new CUser().GetLoginIdNameList();
            break;

        // PurchaseOrder
        case "PurchaseOrderTypeName":
            dataSource = new CPurchaseOrder().GetPurchaseOrderTypeNameList();
            break;

        case "PriorityTypeName":
            dataSource = new CPurchaseOrder().GetPriorityTypeNameList();
            break;

        case "ReviewTypeName":
            dataSource = new CPurchaseOrder().GetReviewTypeNameList();
            break;
        ////Invoice#
        //case "SchoolName":
        //    dataSource = new CSite().GetSiteNameList();
        //    break;

        // Inventory
        case "AssignedUserName":
            dataSource = new CUser().GetAssignedUserNameList();
            break;

        case "InventoryCategoryName":
            dataSource = new CInventory().GetInventoryCategoryNameList();
            break;

        case "InventoryCategoryItemName":
            dataSource = new CInventory().GetInventoryCategoryItemNameList();
            break;

        case "ConditionName":
            dataSource = new CInventory().GetConditionNameList();
            break;

        case "InUseName":
            dataSource = new CInventory().GetInUseNameList();
            break;
        }

        if (dataSource != null)
        {
            SetFilter(e, dataField, dataSource);
        }
    }
예제 #14
0
        protected void RadToolBar1_ButtonClick(object sender, RadToolBarEventArgs e)
        {
            // Save
            if (e.Item.Text == "TempSave" || e.Item.Text == "Request")
            {
                if (IsValid)
                {
                    var cObj = new CPurchaseOrder();
                    var obj  = cObj.Get(Id);

                    // new one
                    if (obj == null)
                    {
                        obj             = new Erp2016.Lib.PurchaseOrder();
                        obj.CreatedId   = Convert.ToInt32(CurrentUserId);
                        obj.CreatedDate = DateTime.Now;

                        int newIndex = Convert.ToInt32(cObj.Add(obj).ToString());
                        obj = cObj.Get(newIndex);
                        ViewState["NewIndex"] = newIndex;
                    }
                    else
                    {
                        obj.UpdatedId         = Convert.ToInt32(CurrentUserId);
                        obj.UpdatedDate       = DateTime.Now;
                        ViewState["NewIndex"] = obj.PurchaseOrderId.ToString();
                    }

                    obj.ApprovalId   = CurrentUserId;
                    obj.ApprovalDate = DateTime.Now;

                    if (e.Item.Text == "TempSave")
                    {
                        obj.ApprovalStatus = null;
                    }
                    else
                    {
                        var cApprovalHistory = new CApprovalHistory();
                        cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.PurchaseOrder, Convert.ToInt32(ViewState["NewIndex"]));

                        // approve request
                        var approval       = new CApproval();
                        var approvalResult = approval.ApproveRequstCreate((int)CConstValue.Approval.PurchaseOrder, CurrentUserId, Convert.ToInt32(ViewState["NewIndex"]));
                        if (approvalResult > 0)
                        {
                            obj.ApprovalStatus = approvalResult;
                        }
                        else
                        {
                            ShowMessage("Failed");
                            return;
                        }

                        // mail
                        new CMail().SendMail(CConstValue.Approval.PurchaseOrder, CConstValue.MailStatus.ToApproveUser, Convert.ToInt32(ViewState["NewIndex"]), string.Empty, CurrentUserId);
                    }

                    obj.PurchaseOrderType    = RadComboBoxType.SelectedIndex;
                    obj.PriorityType         = RadComboBoxPriority.SelectedIndex;
                    obj.ShippingMethodType   = RadComboBoxShippingMethod.SelectedIndex;
                    obj.ShippingTerms        = (int)RadNumericTextBoxShippingTerms.Value;
                    obj.ShippingDeliveryDate = RadDatePickerDeliveryDate.SelectedDate.Value;
                    obj.Description          = RadTextBoxDescription.Text;

                    obj.VendorName       = RadTextBoxVendorName.Text;
                    obj.VendorAddress    = RadTextBoxVendorAddress.Text;
                    obj.VendorCity       = RadTextBoxVendorCity.Text;
                    obj.VendorProvince   = RadTextBoxVendorProvince.Text;
                    obj.VendorPostalCode = RadTextBoxVendorPostalCode.Text;
                    obj.VendorPhone      = RadTextBoxVendorPhone.Text;
                    obj.VendorEmail      = RadTextBoxVendorEmail.Text;

                    obj.ShipToName       = RadTextBoxShipToName.Text;
                    obj.ShipToAddress    = RadTextBoxShipToAddress.Text;
                    obj.ShipToCity       = RadTextBoxShipToCity.Text;
                    obj.ShipToProvince   = RadTextBoxShipToProvince.Text;
                    obj.ShipToPostalCode = RadTextBoxShipToPostalCode.Text;
                    obj.ShipToPhone      = RadTextBoxShipToPhone.Text;
                    obj.ShipToEmail      = RadTextBoxShipToEmail.Text;

                    obj.Tax = (decimal)RadNumericTextBoxTax.Value;

                    cObj.Update(obj);

                    // save uploading file
                    FileDownloadList1.SaveFile(Convert.ToInt32(ViewState["NewIndex"]));

                    // save other tables
                    RunClientScript("SaveChanges();");
                }
                else
                {
                    ShowMessage("Failed");
                }
            }
            // Revise
            else if (e.Item.Text == "Revise")
            {
                RunClientScript("ShowApprovalReviseWindow('" + Id + "');");
            }
            // Approval
            else if (e.Item.Text == "Approve")
            {
                RunClientScript("ShowApprovalWindow('" + Id + "');");
            }
            // Reject
            else if (e.Item.Text == "Reject")
            {
                RunClientScript("ShowApprovalRejectWindow('" + Id + "');");
            }
            // Accept
            else if (e.Item.Text == "Accept")
            {
                var cObj = new CPurchaseOrder();
                var obj  = cObj.Get(Id);
                if (obj != null)
                {
                    if (!string.IsNullOrEmpty(RadComboBoxReviewType.SelectedValue))
                    {
                        obj.ReviewType = Convert.ToInt32(RadComboBoxReviewType.SelectedValue);
                    }
                    obj.ReviewMemo   = RadTextBoxReviewMemo.Text;
                    obj.ReviewUserId = CurrentUserId;
                    obj.ReviewDate   = DateTime.Now;
                    obj.UpdatedId    = CurrentUserId;
                    obj.UpdatedDate  = DateTime.Now;
                    cObj.Update(obj);
                    //RunClientScript("Close();");

                    RunClientScript("ShowApprovalAcceptWindow('" + Id + "');");
                }
            }
            // Complete
            else if (e.Item.Text == "Complete")
            {
                RunClientScript("ShowApprovalCompleteWindow('" + Id + "');");
            }
            // Print
            else if (e.Item.Text == "Print")
            {
                RunClientScript("ShowPrint();");
            }
            // Cancel
            else if (e.Item.Text == "Cancel")
            {
                RunClientScript("ShowApprovalCancelWindow('" + Id + "');");
            }
            // close
            else if (e.Item.Text == "Close")
            {
                RunClientScript("Close();");
            }
        }
예제 #15
0
        protected void RadToolBar1_ButtonClick(object sender, RadToolBarEventArgs e)
        {
            // Save
            if (e.Item.Text == "TempSave" || e.Item.Text == "Request")
            {
                if (IsValid)
                {
                    var cObj = new CExpense();
                    var obj  = cObj.Get(Id);

                    // new one
                    if (obj == null)
                    {
                        obj             = new Erp2016.Lib.Expense();
                        obj.CreatedId   = Convert.ToInt32(CurrentUserId);
                        obj.CreatedDate = DateTime.Now;
                        int newIndex = Convert.ToInt32(cObj.Add(obj).ToString());
                        obj = cObj.Get(newIndex);
                        ViewState["NewIndex"] = newIndex;
                    }
                    else
                    {
                        obj.UpdatedId         = Convert.ToInt32(CurrentUserId);
                        obj.UpdatedDate       = DateTime.Now;
                        ViewState["NewIndex"] = obj.ExpenseId.ToString();
                    }

                    obj.ApprovalId   = CurrentUserId;
                    obj.ApprovalDate = DateTime.Now;

                    if (e.Item.Text == "TempSave")
                    {
                        obj.ApprovalStatus = null;
                    }
                    else
                    {
                        var cApprovalHistory = new CApprovalHistory();
                        cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.Expense, Convert.ToInt32(ViewState["NewIndex"]));

                        // approve request
                        var approval       = new CApproval();
                        var approvalResult = approval.ApproveRequstCreate((int)CConstValue.Approval.Expense, CurrentUserId, Convert.ToInt32(ViewState["NewIndex"]));
                        if (approvalResult > 0)
                        {
                            obj.ApprovalStatus = approvalResult;
                        }
                        else
                        {
                            ShowMessage("Failed");
                            return;
                        }

                        // $5000
                        if (RadNumericTextBoxGrandTotal.Value > 5000)
                        {
                        }

                        new CMail().SendMail(CConstValue.Approval.Expense, CConstValue.MailStatus.ToApproveUser, Convert.ToInt32(ViewState["NewIndex"]), string.Empty, CurrentUserId);
                    }

                    obj.PeriodStart = RadDatePickerStart.SelectedDate;
                    obj.PeriodEnd   = RadDatePickerEnd.SelectedDate;
                    obj.CashAdvance = (decimal)RadNumericTextBoxCashAdvance.Value;

                    cObj.Update(obj);

                    // save uploading file
                    FileDownloadList1.SaveFile(Convert.ToInt32(ViewState["NewIndex"]));

                    // save other tables
                    RunClientScript("SaveChanges();");
                }
                else
                {
                    ShowMessage("Failed");
                }
            }
            // Revise
            else if (e.Item.Text == "Revise")
            {
                RunClientScript("ShowApprovalReviseWindow('" + Id + "');");
            }
            // Approval
            else if (e.Item.Text == "Approve")
            {
                RunClientScript("ShowApprovalWindow('" + Id + "');");
            }
            // Reject
            else if (e.Item.Text == "Reject")
            {
                RunClientScript("ShowApprovalRejectWindow('" + Id + "');");
            }
            // Accept
            else if (e.Item.Text == "Accept")
            {
                RunClientScript("ShowApprovalAcceptWindow('" + Id + "');");
            }
            // Complete
            else if (e.Item.Text == "Complete")
            {
                RunClientScript("ShowApprovalCompleteWindow('" + Id + "');");
            }
            // Print
            else if (e.Item.Text == "Print")
            {
                RunClientScript("ShowPrint();");
            }
            // Cancel
            else if (e.Item.Text == "Cancel")
            {
                RunClientScript("ShowApprovalCancelWindow('" + Id + "');");
            }
            // close
            else if (e.Item.Text == "Close")
            {
                RunClientScript("Close();");
            }
        }
예제 #16
0
        //protected void LoadSite()
        //{
        //    var global = new CGlobal();

        //    RadComboBoxSite.DataSource = global.GetSiteId();
        //    RadComboBoxSite.DataTextField = "Name";
        //    RadComboBoxSite.DataValueField = "Value";
        //    RadComboBoxSite.DataBind();
        //    RadComboBoxSite.Items.Insert(0, new RadComboBoxItem("- Select Site - "));
        //}

        protected void StudentButtonClicked(object sender, RadToolBarEventArgs e)
        {
            switch (e.Item.Text)
            {
            case "TempSave":
            case "Request":
                var cPromo = new CPromotion();
                var promo  = new Erp2016.Lib.Promotion();

                // new
                if (Request["type"] == "0")
                {
                    promo             = new Erp2016.Lib.Promotion();
                    promo.CreatedId   = CurrentUserId;
                    promo.CreatedDate = DateTime.Now;
                }
                // modify
                else
                {
                    promo = cPromo.Get(Id);
                }

                promo.CountryId = Convert.ToInt32(RadComboBoxCountry.SelectedValue);

                promo.Amount      = (decimal)RadNumericTextBoxAmount.Value;
                promo.Memo        = tbComment.Text;
                promo.CreatedDate = DateTime.Now;
                promo.CreatedId   = CurrentUserId;
                promo.StartDate   = (DateTime)RadDatePickerStartDate.SelectedDate;
                promo.EndDate     = (DateTime)RadDatePickerEndDate.SelectedDate;
                promo.IsActive    = false;

                int promotionId;

                // new
                if (Request["type"] == "0")
                {
                    promo.IsActive = false;
                    promotionId    = cPromo.Add(promo);
                }
                // modify
                else
                {
                    promo.UpdatedId   = CurrentUserId;
                    promo.UpdatedDate = DateTime.Now;
                    cPromo.Update(promo);

                    promotionId = promo.PromotionId;
                }

                var cPromotionSiteLocation = new CPromotionSiteLocation();
                cPromotionSiteLocation.DelPromotionSiteLocationList(promotionId);

                foreach (var siteLocation in RadComboBoxSiteLocation.CheckedItems)
                {
                    var promotionSiteLocation = new PromotionSiteLocation()
                    {
                        CreatedId      = CurrentUserId,
                        PromotionId    = promotionId,
                        SiteLocationId = Convert.ToInt32(siteLocation.Value),
                        CreatedDate    = DateTime.Now
                    };
                    cPromotionSiteLocation.Add(promotionSiteLocation);
                }

                FileDownloadList1.SaveFile(promotionId);

                if (e.Item.Text == "TempSave")
                {
                    RunClientScript("Close();");
                }
                else
                {
                    var cApprovalHistory = new CApprovalHistory();
                    cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.Promotion, promotionId);

                    var approval = new CApproval().ApproveRequstCreate((int)CConstValue.Approval.Promotion, CurrentUserId, promotionId);
                    if (approval > 0)
                    {
                        var cPromotion = new CPromotion();
                        var promotion  = cPromotion.Get(promotionId);
                        promotion.ApprovalStatus = approval;
                        promotion.ApprovalId     = CurrentUserId;
                        promotion.ApprovalDate   = DateTime.Now;
                        cPromotion.Update(promotion);

                        new CMail().SendMail(CConstValue.Approval.Promotion, CConstValue.MailStatus.ToApproveUser, promotion.PromotionId, promotion.PromotionMasterNo, CurrentUserId);

                        RunClientScript("Close();");
                    }
                    else
                    {
                        ShowMessage("error requesting");
                    }
                }
                break;

            case "Close":
                RunClientScript("Close();");
                break;
            }
        }
예제 #17
0
        protected void RadToolBar1_ButtonClick(object sender, RadToolBarEventArgs e)
        {
            // Save
            if (e.Item.Text == "TempSave" || e.Item.Text == "Request")
            {
                if (IsValid)
                {
                    var corporateCreditCardSchema = new CCorporateCreditCardSchema().GetByUserId(CurrentUserId);
                    if (corporateCreditCardSchema != null)
                    {
                        var corporateCreditCard = new CCorporateCreditCard().GetByUserId(CurrentUserId);
                        if (corporateCreditCard != null)
                        {
                            var startDay = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 4);
                            var endDay   = startDay.AddMonths(1);
                            if (corporateCreditCard.PeriodStart >= startDay && corporateCreditCard.PeriodEnd < endDay)
                            {
                                ShowMessage("Credit on this month is already requested. Try it again when 4th beginning of month.");
                                return;
                            }
                        }

                        if (RadNumericTextBoxGrandTotal.Value > (double)corporateCreditCardSchema.CreditLimit)
                        {
                            ShowMessage("Your limited Credit Amount of  is " + corporateCreditCardSchema.CreditLimit);
                            return;
                        }

                        var cObj = new CCorporateCreditCard();
                        var obj  = cObj.Get(Id);

                        // new one
                        if (obj == null)
                        {
                            obj             = new Erp2016.Lib.CorporateCreditCard();
                            obj.CreatedId   = Convert.ToInt32(CurrentUserId);
                            obj.CreatedDate = DateTime.Now;
                            obj.PeriodStart = (DateTime)RadDatePickerStart.SelectedDate;
                            obj.PeriodEnd   = (DateTime)RadDatePickerEnd.SelectedDate;
                            int newIndex = Convert.ToInt32(cObj.Add(obj).ToString());
                            obj = cObj.Get(newIndex);
                            ViewState["NewIndex"] = newIndex;
                        }
                        else
                        {
                            obj.PeriodStart       = (DateTime)RadDatePickerStart.SelectedDate;
                            obj.PeriodEnd         = (DateTime)RadDatePickerEnd.SelectedDate;
                            obj.UpdatedId         = Convert.ToInt32(CurrentUserId);
                            obj.UpdatedDate       = DateTime.Now;
                            ViewState["NewIndex"] = obj.CorporateCreditCardId.ToString();
                        }

                        obj.ApprovalId   = CurrentUserId;
                        obj.ApprovalDate = DateTime.Now;

                        if (e.Item.Text == "TempSave")
                        {
                            obj.ApprovalStatus = null;
                        }
                        else
                        {
                            var cApprovalHistory = new CApprovalHistory();
                            cApprovalHistory.DelApprovalHistory((int)CConstValue.Approval.CorporateCreditCard, Convert.ToInt32(ViewState["NewIndex"]));

                            // approve request
                            var approval       = new CApproval();
                            var approvalResult = approval.ApproveRequstCreate((int)CConstValue.Approval.CorporateCreditCard, CurrentUserId, Convert.ToInt32(ViewState["NewIndex"]));
                            if (approvalResult > 0)
                            {
                                obj.ApprovalStatus = approvalResult;
                            }
                            else
                            {
                                ShowMessage("Failed");
                                return;
                            }

                            new CMail().SendMail(CConstValue.Approval.CorporateCreditCard, CConstValue.MailStatus.ToApproveUser, Convert.ToInt32(ViewState["NewIndex"]), string.Empty, CurrentUserId);
                        }



                        cObj.Update(obj);

                        // save uploading file
                        FileDownloadList1.SaveFile(Convert.ToInt32(ViewState["NewIndex"]));

                        // save other tables
                        RunClientScript("SaveChanges();");
                    }
                    else
                    {
                        ShowMessage("not found Limit credit amount. It needs to be registered.");
                    }
                }
                else
                {
                    ShowMessage("Failed");
                }
            }
            // Revise
            else if (e.Item.Text == "Revise")
            {
                RunClientScript("ShowApprovalReviseWindow('" + Id + "');");
            }
            // Approval
            else if (e.Item.Text == "Approve")
            {
                RunClientScript("ShowApprovalWindow('" + Id + "');");
            }
            // Reject
            else if (e.Item.Text == "Reject")
            {
                RunClientScript("ShowApprovalRejectWindow('" + Id + "');");
            }
            // Accept
            else if (e.Item.Text == "Accept")
            {
                RunClientScript("ShowApprovalAcceptWindow('" + Id + "');");
            }
            // Complete
            else if (e.Item.Text == "Complete")
            {
                RunClientScript("ShowApprovalCompleteWindow('" + Id + "');");
            }
            // Print
            else if (e.Item.Text == "Print")
            {
                RunClientScript("ShowPrint();");
            }
            // Cancel
            else if (e.Item.Text == "Cancel")
            {
                RunClientScript("ShowApprovalCancelWindow('" + Id + "');");
            }
            // close
            else if (e.Item.Text == "Close")
            {
                RunClientScript("Close();");
            }
        }