//protected void btnCancel_Click(object sender, EventArgs e)
        //{
        //    ChangePageMode(Helper.PageMode.New);
        //    ClearPageData();
        //    EditBox.Visible = false;
        //}

        protected void gvPeriodMenguruSetup_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            try
            {
                if (e.CommandName == "EditRow")
                {
                    ClearPageData();
                    GridViewRow selectedRow = gvPeriodMenguruSetup.Rows[Convert.ToInt32(e.CommandArgument)];
                    selectedRow.Style["background-color"] = "skyblue";

                    PeriodMenguru objPeriodMenguru = new PeriodMenguru();
                    objPeriodMenguru.PeriodMengurusID = Convert.ToInt32(gvPeriodMenguruSetup.DataKeys[selectedRow.RowIndex]["PeriodMengurusID"]);
                    objPeriodMenguru.FieldMengurusID  = Convert.ToInt32(gvPeriodMenguruSetup.DataKeys[selectedRow.RowIndex]["FieldMengurusID"]);
                    objPeriodMenguru.MengurusYear     = Convert.ToInt32(selectedRow.Cells[1].Text);
                    objPeriodMenguru.Status           = new PeriodMengurusDAL().GetPeriodMengurus().Where(x => x.PeriodMengurusID == objPeriodMenguru.PeriodMengurusID)
                                                        .Select(y => y.Status).FirstOrDefault();

                    Session["SelectedPeriodMenguru"] = objPeriodMenguru;

                    ddlYear.SelectedIndex = -1;
                    ddlYear.Items.FindByValue(objPeriodMenguru.MengurusYear.ToString()).Selected = true;
                    ddlStatus.SelectedIndex = -1;
                    ddlStatus.Items.FindByValue(new Helper().GetItemStatusEnumName(Convert.ToChar(objPeriodMenguru.Status))).Selected = true;

                    ChangePageMode(Helper.PageMode.Edit);
                    EditForm.Visible = true;
                }
            }
            catch (Exception ex)
            {
                ((SiteMaster)this.Master).ShowMessage("Error", "An error occurred", ex, true);
            }
        }
Example #2
0
        private void LoadDropDown()
        {
            try
            {
                List <Segment> lstSegment = new SegmentDAL().GetSegments().Where(x => x.Status == "A" && x.AccountCodeFlag == false).OrderBy(x => x.SegmentOrder).ToList();

                gvSegmentDLLs.DataSource = lstSegment;
                gvSegmentDLLs.DataBind();

                //GridView: Period
                List <PeriodMenguru> lstPeriodMengurus = new PeriodMengurusDAL().GetPeriodMengurus().Where(x => x.Status == "A" && x.MengurusYear > DateTime.Now.Year)
                                                         .OrderBy(x => x.MengurusYear).ThenBy(x => x.FieldMenguru.FieldMengurusDesc).ToList();

                List <FieldMenguru> obj = new FieldMenguruDAL().GetFieldMengurus().Where(x => x.Status == "F").ToList();
                Session["FixedFieldMengurus"] = obj;

                foreach (FieldMenguru item in obj)
                {
                    PeriodMenguru pm = new PeriodMenguru();

                    pm.PeriodMengurusID = item.FieldMengurusID;
                    pm.MengurusYear     = DateTime.Now.Year;
                    pm.FieldMenguru     = new FieldMenguru {
                        FieldMengurusDesc = item.FieldMengurusDesc
                    };

                    lstPeriodMengurus.Add(pm);
                }

                gvPeriod.DataSource = lstPeriodMengurus.Select(x => new
                {
                    x.PeriodMengurusID,
                    x.MengurusYear,
                    x.FieldMenguru.FieldMengurusDesc
                });
                gvPeriod.DataBind();
            }
            catch (Exception ex)
            {
                ((SiteMaster)this.Master).ShowMessage("Error", "An error occurred", ex, true);
            }
        }
Example #3
0
        protected void gvAccountCodes_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            try
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    List <string>                SelectedNodes    = (List <string>)Session["SelectedNodes"];
                    List <BudgetMenguru>         BudgetData       = (List <BudgetMenguru>)Session["BudgetData"];
                    List <AccountCodeTreeHelper> TreeData         = (List <AccountCodeTreeHelper>)Session["AccountCodesTree"];
                    List <AccountCode>           AccountCodesData = (List <AccountCode>)Session["AccountCodesData"];
                    List <PeriodMenguru>         PeriodData       = (List <PeriodMenguru>)Session["PeriodData"];

                    AccountCodeTreeHelper rowItem = (AccountCodeTreeHelper)e.Row.DataItem;

                    /*Start Account Code logics*/
                    int width = rowItem.Level * (new Helper().IndentPixels);

                    string strHTML = string.Empty;
                    if (rowItem.ChildCount > 0)
                    {
                        if (SelectedNodes.Contains(rowItem.AccountCode))
                        {
                            strHTML = "<label style=\"display: inline-block;width:" + (width + 10).ToString() + "px;vertical-align:middle;\"><i class=\"ace-icon fa fa-minus-square pull-right\"></i></label> ";
                        }
                        else
                        {
                            strHTML = "<label style=\"display: inline-block;width:" + (width + 10).ToString() + "px;vertical-align:middle;\"><i class=\"ace-icon fa fa-plus-square pull-right\"></i></label> ";
                        }
                    }
                    else
                    {
                        strHTML = "<label style=\"display: inline-block;width:" + (width + 10).ToString() + "px;vertical-align:middle;\"><i></i></label> ";
                    }

                    LinkButton btnExpand = ((LinkButton)e.Row.Cells[0].FindControl("btnExpand"));
                    //btnExpand.Text = "<div style=\"max-width:200px;overflow:hidden;white-space:nowrap;\">" + strHTML + Session["PrefixAcountCode"].ToString() + rowItem.AccountCode + "</div>";
                    btnExpand.Text    = "<div style=\"max-width:200px;overflow:hidden;white-space:nowrap;\">" + strHTML + rowItem.AccountCode + "</div>";
                    btnExpand.ToolTip = rowItem.AccountDesc;

                    //if (Session["SelectedAccountCode"] != null && ((AccountCode)Session["SelectedAccountCode"]).AccountCode1 == rowItem.AccountCode)
                    //{
                    //    e.Row.Style["background-color"] = "skyblue";
                    //}
                    //if (SelectedNodes.Contains(rowItem.AccountCode))
                    //{
                    //    e.Row.Style["background-color"] = "skyblue";
                    //}
                    /*End Account Code logics*/

                    /*Start Buget logics*/
                    int index = 2;
                    if (chkKeterangan.Checked)
                    {
                        index++;
                    }
                    if (chkPengiraan.Checked)
                    {
                        index++;
                    }

                    bool IsBudgetEditable = Convert.ToBoolean(Session["CanEdit"]);
                    for (int c = index; c < gvAccountCodes.Columns.Count; c++)
                    {
                        //int PeriodMenguruID = Convert.ToInt32(((Label)e.Row.Cells[c].FindControl("lbl_PeriodMenguruID")).Text);
                        int           PeriodMenguruID = Convert.ToInt32(((Label)e.Row.Cells[c].Controls[0]).Text);
                        PeriodMenguru pm = PeriodData.Where(x => x.PeriodMengurusID == PeriodMenguruID).FirstOrDefault();
                        BudgetMenguru ObjBudgetMenguru = BudgetData.Where(x => x.AccountCode == rowItem.AccountCode && x.PeriodMengurusID == PeriodMenguruID).FirstOrDefault();

                        Label      lbl         = ((Label)e.Row.Cells[c].FindControl("lbl_" + PeriodMenguruID));
                        LinkButton btnSaved    = ((LinkButton)e.Row.Cells[c].FindControl("btnSaved_" + PeriodMenguruID));
                        LinkButton btnPrepared = ((LinkButton)e.Row.Cells[c].FindControl("btnPrepared_" + PeriodMenguruID));
                        LinkButton btnReviewed = ((LinkButton)e.Row.Cells[c].FindControl("btnReviewed_" + PeriodMenguruID));
                        LinkButton btnApproved = ((LinkButton)e.Row.Cells[c].FindControl("btnApproved_" + PeriodMenguruID));
                        LinkButton btnRevRej   = ((LinkButton)e.Row.Cells[c].FindControl("btnRevRej_" + PeriodMenguruID));
                        LinkButton btnAprRej   = ((LinkButton)e.Row.Cells[c].FindControl("btnAprRej_" + PeriodMenguruID));

                        lbl.Visible         = true;
                        btnSaved.Visible    = false;
                        btnPrepared.Visible = false;
                        btnReviewed.Visible = false;
                        btnApproved.Visible = false;
                        btnRevRej.Visible   = false;
                        btnAprRej.Visible   = false;

                        e.Row.Cells[c].BackColor = ((ObjBudgetMenguru != null) ? new Helper().GetColorByStatusValue('A') : new System.Drawing.Color());

                        if (rowItem.ChildCount == 0)
                        {
                            lbl.Text = (ObjBudgetMenguru != null) ? ObjBudgetMenguru.Amount.ToString() : string.Empty;
                        }
                        else
                        {
                            decimal amount = 0;

                            List <string> ChildIDs = new List <string>()
                            {
                                rowItem.AccountCode
                            };
                            List <string> RefChildIDs = new List <string>();
                            while (ChildIDs.Count > 0)
                            {
                                RefChildIDs.Clear();
                                foreach (AccountCode t in AccountCodesData.Where(x => ChildIDs.Contains(x.AccountCode1)))
                                {
                                    amount = amount + BudgetData.Where(x => x.AccountCode == t.AccountCode1 && x.PeriodMengurusID == PeriodMenguruID).Select(x => x.Amount).Sum();
                                    foreach (string s in AccountCodesData.Where(x => x.ParentAccountCode == t.AccountCode1).Select(x => x.AccountCode1).ToList())
                                    {
                                        RefChildIDs.Add(s);
                                    }
                                }
                                ChildIDs.Clear();
                                foreach (string s in RefChildIDs)
                                {
                                    ChildIDs.Add(s);
                                }
                            }

                            lbl.Text = (amount != 0) ? amount.ToString("F") : string.Empty;
                        }
                    }
                    /*End Buget logics*/
                }
            }
            catch (Exception ex)
            {
                ((SiteMaster)this.Master).ShowMessage("Error", "An error occurred", ex, true);
            }
        }
        protected void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                int FieldID = new FieldMenguruDAL().GetFieldMengurus().Where(x => x.FieldMengurusDesc.Contains("Anggaran Dipohon") &&
                                                                             x.Status == "A").Select(y => y.FieldMengurusID).FirstOrDefault();

                if ((Helper.PageMode)Session["PeriodMenguruPageMode"] == Helper.PageMode.New)
                {
                    if (new PeriodMengurusDAL().GetPeriodMengurus().Where(x => x.FieldMengurusID == FieldID && x.MengurusYear == Convert.ToInt32(ddlYear.SelectedValue)).Count() > 0)
                    {
                        ((SiteMaster)this.Master).ShowMessage("Failure", "Period Mengurus already exists");
                        return;
                    }

                    PeriodMenguru objPeriodMenguru = new PeriodMenguru();
                    objPeriodMenguru.FieldMengurusID   = FieldID;
                    objPeriodMenguru.MengurusYear      = Convert.ToInt32(ddlYear.SelectedValue);
                    objPeriodMenguru.Status            = new Helper().GetItemStatusEnumValueByName(ddlStatus.SelectedValue);
                    objPeriodMenguru.CreatedBy         = LoggedInUser.UserID;
                    objPeriodMenguru.CreatedTimeStamp  = DateTime.Now;
                    objPeriodMenguru.ModifiedBy        = LoggedInUser.UserID;
                    objPeriodMenguru.ModifiedTimeStamp = DateTime.Now;

                    if (new PeriodMengurusDAL().InsertPeriodMenguru(objPeriodMenguru))
                    {
                        ((SiteMaster)this.Master).ShowMessage("Success", "Period Mengurus saved successfully");
                    }
                    else
                    {
                        ((SiteMaster)this.Master).ShowMessage("Failure", "An error occurred while saving Period Mengurus");
                    }
                }
                else if ((Helper.PageMode)Session["PeriodMenguruPageMode"] == Helper.PageMode.Edit)
                {
                    PeriodMenguru objPeriodMenguru = (PeriodMenguru)Session["SelectedPeriodMenguru"];

                    PeriodMenguru pm = new PeriodMengurusDAL().GetPeriodMengurus().Where(x => x.FieldMengurusID == FieldID && x.MengurusYear == Convert.ToInt32(ddlYear.SelectedValue)).FirstOrDefault();
                    if (pm != null)
                    {
                        if (pm.PeriodMengurusID != objPeriodMenguru.PeriodMengurusID)
                        {
                            ((SiteMaster)this.Master).ShowMessage("Failure", "Period Mengurus already exists");
                            return;
                        }
                    }

                    objPeriodMenguru.FieldMengurusID   = FieldID;
                    objPeriodMenguru.MengurusYear      = Convert.ToInt32(ddlYear.SelectedValue);
                    objPeriodMenguru.Status            = new Helper().GetItemStatusEnumValueByName(ddlStatus.SelectedValue);
                    objPeriodMenguru.ModifiedBy        = LoggedInUser.UserID;
                    objPeriodMenguru.ModifiedTimeStamp = DateTime.Now;

                    if (new PeriodMengurusDAL().UpdatePeriodMenguru(objPeriodMenguru))
                    {
                        ((SiteMaster)this.Master).ShowMessage("Success", "Period Mengurus updated successfully");
                    }
                    else
                    {
                        ((SiteMaster)this.Master).ShowMessage("Failure", "An error occurred while updating Period Mengurus");
                    }
                }

                GetData();
                ClearPageData();
                EditForm.Visible = false;
            }
            catch (Exception ex)
            {
                ((SiteMaster)this.Master).ShowMessage("Error", "An error occurred", ex, true);
            }
        }