Esempio n. 1
0
        public bool UpdateRejectAppraisalDocHeader(AppraisalDocHeader updData)
        {
            bool updRet = false;

            try
            {
                using (PerformanceAppraisalEntities entity = new PerformanceAppraisalEntities())
                {
                    var getData = (from t in entity.AppraisalDocHeaders
                                   where t.AppraisalDocNo == updData.AppraisalDocNo
                                   select t).FirstOrDefault();

                    getData.AppraisalDate       = updData.AppraisalDate;
                    getData.AppraisalPeriodFrom = updData.AppraisalPeriodFrom;
                    getData.AppraisalPeriodTo   = updData.AppraisalPeriodTo;
                    getData.AppraisalStatus     = updData.AppraisalStatus;
                    getData.AppraisalTotalScore = updData.AppraisalTotalScore;
                    getData.AppraisalGrade      = updData.AppraisalGrade;

                    entity.SaveChanges();

                    updRet = true;
                }
            }
            catch (Exception ex)
            {
                updRet = false;

                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }

            return(updRet);
        }
Esempio n. 2
0
        private void GetAppraisalHeader()
        {
            AppraisalDocHeader_Manage manage  = new AppraisalDocHeader_Manage();
            AppraisalDocHeader        docHead = new AppraisalDocHeader();

            docHead = manage.GetData(hdfEmployeeID.Value.Trim(), DateTime.Now.Year);
            if (docHead != null)
            {
                lblDocNo.Text           = docHead.AppraisalDocNo;
                hdfAppraisalDocNo.Value = docHead.AppraisalDocNo;

                hdfAppraisalStatus.Value = string.IsNullOrEmpty(docHead.AppraisalStatus) ? "" : docHead.AppraisalStatus.Trim();

                lblApprovalStatus.Text = hdfAppraisalStatus.Value.Trim();

                if (docHead.AppraisalPeriodFrom != null)
                {
                    lblDateFrom.Text = docHead.AppraisalPeriodFrom.Value.ToString(@"dd\/MM\/yyyy");
                }
                if (docHead.AppraisalPeriodTo != null)
                {
                    lblDateTo.Text = docHead.AppraisalPeriodTo.Value.ToString(@"dd\/MM\/yyyy");
                }
            }
            else
            {
                lblDocNo.Text = string.Empty;
            }
        }
Esempio n. 3
0
        public bool UpdateAppraisalDocHeader(AppraisalDocHeader updData)
        {
            bool updRet = false;

            try
            {
                using (PerformanceAppraisalEntities entity = new PerformanceAppraisalEntities())
                {
                    var getData = (from t in entity.AppraisalDocHeaders
                                   where t.RowID == updData.RowID
                                   select t).FirstOrDefault();

                    getData.AppraisalDocNo = updData.AppraisalDocNo;
                    entity.SaveChanges();

                    updRet = true;
                }
            }
            catch (Exception ex)
            {
                updRet = false;

                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }

            return(updRet);
        }
Esempio n. 4
0
        private void GetAppraisalHeader()
        {
            if (!string.IsNullOrEmpty(hdfPerformanceYear.Value.Trim()))
            {
                int _year = int.Parse(hdfPerformanceYear.Value.Trim());

                AppraisalDocHeader_Manage manage  = new AppraisalDocHeader_Manage();
                AppraisalDocHeader        docHead = new AppraisalDocHeader();

                docHead = manage.GetData(hdfEmployeeID.Value.Trim(), _year);
                if (docHead != null)
                {
                    lblAppraisalDocNo.Text  = docHead.AppraisalDocNo;
                    hdfAppraisalDocNo.Value = docHead.AppraisalDocNo;

                    txtEmpStrength.Text   = docHead.EmployeeStrength.Trim();
                    txtEmpImpovement.Text = docHead.EmployeeImprovement.Trim();
                }
                else
                {
                    lblAppraisalDocNo.Text = "(Creator)";
                }

                lblResultScore.Text = string.IsNullOrEmpty(docHead.AppraisalGrade) ? "" : "Band " + docHead.AppraisalGrade;
                if (docHead.AppraisalPeriodFrom != null)
                {
                    lblDateFrom.Text = docHead.AppraisalPeriodFrom.Value.ToString(@"dd\/MM\/yyyy");
                }
                if (docHead.AppraisalPeriodTo != null)
                {
                    lblDateTo.Text = docHead.AppraisalPeriodTo.Value.ToString(@"dd\/MM\/yyyy");
                }
            }
        }
Esempio n. 5
0
        private void GetAppraisalHeader()
        {
            AppraisalDocHeader_Manage manage  = new AppraisalDocHeader_Manage();
            AppraisalDocHeader        docHead = new AppraisalDocHeader();

            int _year = 0;

            if (string.IsNullOrEmpty(hdfAppraisalYear.Value.Trim()))
            {
                _year = DateTime.Now.Year;
            }
            else
            {
                _year = Convert.ToUInt16(hdfAppraisalYear.Value.Trim());
            }

            docHead = manage.GetDocHeaderCompleteData(hdfEmployeeID.Value.Trim(), hdfAppraisalDocNo.Value.Trim(), _year);
            if (docHead != null)
            {
                txtEmpStrength.Text   = docHead.EmployeeStrength.Trim();
                txtEmpImpovement.Text = docHead.EmployeeImprovement.Trim();

                lblAppraisalStatus.Text = docHead.AppraisalStatus.Trim();
                lblResultScore.Text     = string.IsNullOrEmpty(docHead.AppraisalGrade) ? "" : "Band " + docHead.AppraisalGrade;
                if (docHead.AppraisalPeriodFrom != null)
                {
                    lblDateFrom.Text = docHead.AppraisalPeriodFrom.Value.ToString(@"dd\/MM\/yyyy");
                }
                if (docHead.AppraisalPeriodTo != null)
                {
                    lblDateTo.Text = docHead.AppraisalPeriodTo.Value.ToString(@"dd\/MM\/yyyy");
                }
            }
            else
            {
                string _EmployeeType = hdfEmployeeType.Value.Trim();
                if (_EmployeeType.Equals("1"))
                {
                    lblDateFrom.Text = "01/01/" + DateTime.Now.Year.ToString();
                    lblDateTo.Text   = "31/12/" + DateTime.Now.Year.ToString();
                }
                else
                {
                    lblDateFrom.Text = lblContractStart.Text;
                    lblDateTo.Text   = lblContractEnd.Text;
                }

                lblAppraisalDocNo.Text  = "(New Document)";
                lblAppraisalStatus.Text = "Waiting 1nd Manager Approve";
            }
        }
Esempio n. 6
0
        public AppraisalDocHeader GetData(string EmployeeID, int Year)
        {
            AppraisalDocHeader retDet = new AppraisalDocHeader();

            try
            {
                using (PerformanceAppraisalEntities entity = new PerformanceAppraisalEntities())
                {
                    var getData = (from r in entity.AppraisalDocHeaders select r)
                                  .Where(t => t.EmployeeID.Equals(EmployeeID.Trim()) && t.AppraisalYear == Year).FirstOrDefault();
                    retDet = getData;
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }

            return(retDet);
        }
        protected void btnReject_Click(object sender, EventArgs e)
        {
            try
            {
                /************* Creaete Object Appraisal Doc Line *********/
                AppraisalDocHeader dataHeader = new AppraisalDocHeader();
                dataHeader.EmployeeID      = hdfEmployeeID.Value.Trim();
                dataHeader.AppraisalStatus = "Rejected";
                dataHeader.AppraisalDocNo  = hdfAppraisalDocNo.Value.Trim();
                dataHeader.CreatedDate     = DateTime.Now;
                dataHeader.CreatedBy       = hdfUserLogin.Value.Trim();
                /*********************************************************/

                //***************** List Attach File for insert to Database *********
                List <Attachment> lAttachFile = new List <Attachment>();
                DataTable         dtUpload    = (DataTable)Session["tbAttachFile"];
                if (dtUpload != null && dtUpload.Rows.Count > 0)
                {
                    for (int i = 0; i < dtUpload.Rows.Count; i++)
                    {
                        Attachment attachData = new Attachment();

                        attachData.FileName        = dtUpload.Rows[i]["FileName"].ToString();
                        attachData.EmployeeID      = dtUpload.Rows[i]["EmployeeID"].ToString();
                        attachData.FileDescription = dtUpload.Rows[i]["Description"].ToString();
                        attachData.Attachment1     = dtUpload.Rows[i]["AttachFilePath"].ToString();
                        attachData.CreatedDate     = DateTime.Now;
                        attachData.CreatedBy       = hdfUserLogin.Value.Trim();

                        lAttachFile.Add(attachData);
                    }
                }
                //**********************************************************************

                /********************** Insert to DataBase ***************/
                AppraisalDocHeader_Manage manage = new AppraisalDocHeader_Manage();
                bool insResult = manage.Upd2ndManagerReject(dataHeader, txtRemark.Text, lAttachFile);
                if (insResult)
                {
                    lblMsgResult.Text = "บันทึกข้อมูลเรียบร้อย";
                    lbtnPopup_ModalPopupExtender.Show();

                    string sSubjectMail = ConfigurationManager.GetConfiguration().SubjectMailApprove;
                    string sEmailFrom   = ConfigurationManager.GetConfiguration().EmailFrom;
                    string reqDate      = DateTime.Now.ToString(@"dd\/MM\/yyyy");

                    string Email1stManager = hdfFirstManagerMail.Value.Trim();
                    if (!string.IsNullOrEmpty(Email1stManager))
                    {
                        string            _emaployeeName = lblEmployeeName.Text;
                        string            emaiBody       = GenEmailBody(hdfEmployeeID.Value.Trim(), hdfFirstManager.Value.Trim(), hdfUserLogin.Value.Trim(), reqDate, _emaployeeName);
                        EmailNotification mailFunc       = new EmailNotification();
                        mailFunc.SendMailNotice(sSubjectMail, emaiBody, Email1stManager, sEmailFrom);
                    }
                }
                else
                {
                    lblMsgResult.Text = "ไม่สามารถบันทึกข้อมูลได้";
                    lbtnPopup_ModalPopupExtender.Show();
                }
                /********************************************************/
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }
        }
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            try
            {
                /************* Creaete Object Appraisal Doc Line *********/
                AppraisalDocHeader dataHeader = new AppraisalDocHeader();
                dataHeader.EmployeeID      = hdfEmployeeID.Value.Trim();
                dataHeader.AppraisalStatus = "Completed";
                dataHeader.AppraisalDocNo  = hdfAppraisalDocNo.Value.Trim();
                dataHeader.CreatedDate     = DateTime.Now;
                dataHeader.CreatedBy       = hdfUserLogin.Value.Trim();
                /*********************************************************/

                //***************** List Attach File for insert to Database *********
                List <Attachment> lAttachFile = new List <Attachment>();
                DataTable         dtUpload    = (DataTable)Session["tbAttachFile"];
                if (dtUpload != null && dtUpload.Rows.Count > 0)
                {
                    for (int i = 0; i < dtUpload.Rows.Count; i++)
                    {
                        Attachment attachData = new Attachment();

                        attachData.FileName        = dtUpload.Rows[i]["FileName"].ToString();
                        attachData.EmployeeID      = dtUpload.Rows[i]["EmployeeID"].ToString();
                        attachData.FileDescription = dtUpload.Rows[i]["Description"].ToString();
                        attachData.Attachment1     = dtUpload.Rows[i]["AttachFilePath"].ToString();
                        attachData.CreatedDate     = DateTime.Now;
                        attachData.CreatedBy       = hdfUserLogin.Value.Trim();

                        lAttachFile.Add(attachData);
                    }
                }
                //**********************************************************************

                /********************** Insert to DataBase ***************/
                AppraisalDocHeader_Manage manage = new AppraisalDocHeader_Manage();
                bool insResult = manage.Upd2ndManagerAppr(dataHeader, txtRemark.Text, lAttachFile);
                if (insResult)
                {
                    lblMsgResult.Text = "บันทึกข้อมูลเรียบร้อย";
                    lbtnPopup_ModalPopupExtender.Show();
                }
                else
                {
                    lblMsgResult.Text = "ไม่สามารถบันทึกข้อมูลได้";

                    btnOK.Visible     = false;
                    btnCancel.Visible = true;

                    lbtnPopup_ModalPopupExtender.Show();
                }
                /********************************************************/
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);

                //*** Show Popup When Error (Exception) *****
                lblMsgResult.Text = "ไม่สามารถบันทึกข้อมูลได้ กรุณาติดต่อผู้ดูแลระบบ";

                btnOK.Visible     = false;
                btnCancel.Visible = true;

                lbtnPopup_ModalPopupExtender.Show();
                //*********************************
            }
        }
        private void GetAppraisalHeader()
        {
            AppraisalDocHeader_Manage manage  = new AppraisalDocHeader_Manage();
            AppraisalDocHeader        docHead = new AppraisalDocHeader();

            docHead = manage.GetData(hdfEmployeeID.Value.Trim(), DateTime.Now.Year);
            if (docHead != null)
            {
                //**** For Check Duplicate Job ****//
                if (docHead.AppraisalStatus.Trim().ToLower().Equals("completed"))
                {
                    btnSubmit.Visible = false;
                    btnReject.Visible = false;
                    lbtnPopupErr_ModalPopupExtender.Show();
                }
                else
                {
                    if (docHead.AppraisalStatus.Trim().Equals("Rejected"))
                    {
                        ActionHistory_Manage hm = new ActionHistory_Manage();
                        string _staus           = hm.GetActionHistoryStatus(hdfAppraisalDocNo.Value.Trim(), "SecondManager");
                        if (string.IsNullOrEmpty(_staus))
                        {
                            btnSubmit.Visible = false;
                            btnReject.Visible = false;
                            lbtnPopupErr_ModalPopupExtender.Show();
                        }
                        else
                        {
                            btnSubmit.Visible = true;
                            btnReject.Visible = true;
                        }
                    }
                    else
                    {
                        btnSubmit.Visible = true;
                        btnReject.Visible = true;
                    }
                }
                //*******************************//

                lblAppraisalDocNo.Text  = docHead.AppraisalDocNo;
                hdfAppraisalDocNo.Value = docHead.AppraisalDocNo;

                txtEmpStrength.Text   = docHead.EmployeeStrength.Trim();
                txtEmpImpovement.Text = docHead.EmployeeImprovement.Trim();

                if (docHead.AppraisalPeriodFrom != null)
                {
                    lblDateFrom.Text = docHead.AppraisalPeriodFrom.Value.ToString(@"dd\/MM\/yyyy");
                }
                if (docHead.AppraisalPeriodTo != null)
                {
                    lblDateTo.Text = docHead.AppraisalPeriodTo.Value.ToString(@"dd\/MM\/yyyy");
                }

                lblResultScore.Text = string.IsNullOrEmpty(docHead.AppraisalGrade) ? "" : "Band " + docHead.AppraisalGrade.Trim();
            }
            else
            {
                lblAppraisalDocNo.Text = "(Creator)";
                //********** Check case click link from old email ***//
                btnSubmit.Visible = false;
                btnReject.Visible = false;
                lbtnPopupErr_ModalPopupExtender.Show();
                //***************************************************//
            }
        }
Esempio n. 10
0
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            try
            {
                if (IsValid)
                {
                    /*********************************************************/
                    /************* Creaete Object Appraisal Doc Line *********/
                    /*********************************************************/
                    List <AppraisalDocLine> lDoclineData = new List <AppraisalDocLine>();
                    /****************** Gridview Part 1 **********************/
                    int iAppraisalDocLineNo = 1;
                    foreach (GridViewRow row in gvAppraisalPart1.Rows)
                    {
                        Label  lblPart1Score = row.FindControl("lblPart1Score") as Label;
                        string sScore        = lblPart1Score.Text.Trim();

                        DropDownList ddlPart1Result = row.FindControl("ddlPart1Result") as DropDownList;
                        string       sAgreeReqult   = ddlPart1Result.SelectedValue;

                        TextBox txtPart1Comment = row.FindControl("txtPart1Comment") as TextBox;
                        string  sComment        = txtPart1Comment.Text;

                        HiddenField hdfPart1QuestionDesc   = row.FindControl("hdfPart1QuestionDesc") as HiddenField;
                        HiddenField hdfPart1QuestionLineNo = row.FindControl("hdfPart1QuestionLineNo") as HiddenField;
                        HiddenField hdfPart1QuestionType   = row.FindControl("hdfPart1QuestionType") as HiddenField;
                        HiddenField hdfPart1QuestionWeight = row.FindControl("hdfPart1QuestionWeight") as HiddenField;

                        AppraisalDocLine itemPart1 = new AppraisalDocLine();
                        itemPart1.AppraisalDocNo = hdfAppraisalDocNo.Value.Trim();

                        itemPart1.AppraisalDocLineNo = iAppraisalDocLineNo;
                        itemPart1.Score           = string.IsNullOrEmpty(sAgreeReqult) ? 0 : Convert.ToInt16(sAgreeReqult);
                        itemPart1.QuestionLineNo  = Convert.ToInt16(hdfPart1QuestionLineNo.Value);
                        itemPart1.QuestionDesc    = hdfPart1QuestionDesc.Value;
                        itemPart1.QuestionType    = Convert.ToInt16(hdfPart1QuestionType.Value);
                        itemPart1.CalculatedScore = string.IsNullOrEmpty(sScore) ? 0 : Convert.ToDecimal(sScore);
                        itemPart1.QuestionWeight  = string.IsNullOrEmpty(hdfPart1QuestionWeight.Value) ? 0 : Convert.ToDecimal(hdfPart1QuestionWeight.Value);
                        itemPart1.Remark          = sComment;
                        lDoclineData.Add(itemPart1);

                        iAppraisalDocLineNo += 1;
                    }
                    /*********************************************************/
                    /***************** Gridview Part 2 ***********************/
                    foreach (GridViewRow row in gvAppraisalPart2.Rows)
                    {
                        Label  lblPart1Score = row.FindControl("lblPart2Score") as Label;
                        string sScore        = lblPart1Score.Text.Trim();

                        DropDownList ddlPart2Result = row.FindControl("ddlPart2Result") as DropDownList;
                        string       sAgreeReqult   = ddlPart2Result.SelectedValue;

                        TextBox txtPart1Comment = row.FindControl("txtPart2Comment") as TextBox;
                        string  sComment        = txtPart1Comment.Text;

                        HiddenField hdfPart2QuestionDesc   = row.FindControl("hdfPart2QuestionDesc") as HiddenField;
                        HiddenField hdfPart2QuestionLineNo = row.FindControl("hdfPart2QuestionLineNo") as HiddenField;
                        HiddenField hdfPart2QuestionType   = row.FindControl("hdfPart2QuestionType") as HiddenField;
                        HiddenField hdfPart2QuestionWeight = row.FindControl("hdfPart2QuestionWeight") as HiddenField;

                        AppraisalDocLine itemPart2 = new AppraisalDocLine();
                        itemPart2.AppraisalDocNo     = hdfAppraisalDocNo.Value.Trim();
                        itemPart2.AppraisalDocLineNo = iAppraisalDocLineNo;
                        itemPart2.Score           = string.IsNullOrEmpty(sAgreeReqult) ? 0 : Convert.ToInt16(sAgreeReqult);
                        itemPart2.QuestionLineNo  = Convert.ToInt16(hdfPart2QuestionLineNo.Value);
                        itemPart2.QuestionDesc    = hdfPart2QuestionDesc.Value;
                        itemPart2.QuestionType    = Convert.ToInt16(hdfPart2QuestionType.Value);
                        itemPart2.CalculatedScore = string.IsNullOrEmpty(sScore) ? 0 : Convert.ToDecimal(sScore);
                        itemPart2.QuestionWeight  = string.IsNullOrEmpty(hdfPart2QuestionWeight.Value) ? 0 : Convert.ToDecimal(hdfPart2QuestionWeight.Value);
                        itemPart2.Remark          = sComment;

                        lDoclineData.Add(itemPart2);

                        iAppraisalDocLineNo += 1;
                    }

                    /***************** Set Grade & Score ********************/
                    int    TotalScore  = 0;
                    string gradeResult = "";
                    gradeResult = CalculateGrade(lDoclineData, ref TotalScore);

                    AppraisalDocHeader docHeaderData = new AppraisalDocHeader();
                    docHeaderData.AppraisalDate = DateTime.Now;

                    if (!string.IsNullOrEmpty(lblDateFrom.Text.Trim()))
                    {
                        docHeaderData.AppraisalPeriodFrom = DateTime.ParseExact(lblDateFrom.Text.Trim(), "dd/MM/yyyy", null);
                    }

                    if (!string.IsNullOrEmpty(lblDateTo.Text.Trim()))
                    {
                        docHeaderData.AppraisalPeriodTo = DateTime.ParseExact(lblDateTo.Text.Trim(), "dd/MM/yyyy", null);
                    }

                    docHeaderData.AppraisalStatus     = "Waiting 2nd Manager Approve";
                    docHeaderData.AppraisalDocNo      = hdfAppraisalDocNo.Value.Trim();
                    docHeaderData.AppraisalTotalScore = TotalScore;
                    docHeaderData.AppraisalGrade      = gradeResult;
                    docHeaderData.EmployeeStrength    = txtEmpStrength.Text;
                    docHeaderData.EmployeeImprovement = txtEmpImpovement.Text;

                    ActionHistory updActHisData = new ActionHistory();
                    updActHisData.EmployeeID     = hdfEmployeeID.Value.Trim();
                    updActHisData.CreatedBy      = hdfUserLogin.Value.Trim();
                    updActHisData.AppraisalDocNo = hdfAppraisalDocNo.Value.Trim();
                    updActHisData.Status         = "Approved";
                    updActHisData.Comments       = txtRemark.Text;
                    updActHisData.AppraisalYear  = DateTime.Now.Year;

                    ApprovalHistory insAppHis = new ApprovalHistory();
                    insAppHis.Action          = "Approve";
                    insAppHis.AppraisalDocNo  = hdfAppraisalDocNo.Value.Trim();
                    insAppHis.Comment         = txtRemark.Text;
                    insAppHis.TransactionDate = DateTime.Now;
                    insAppHis.UserID          = hdfUserLogin.Value.Trim();



                    //***************** List Attach File for insert to Database *********
                    List <Attachment> lAttachFile = new List <Attachment>();
                    DataTable         dtUpload    = (DataTable)Session["tbAttachFile"];
                    if (dtUpload != null && dtUpload.Rows.Count > 0)
                    {
                        for (int i = 0; i < dtUpload.Rows.Count; i++)
                        {
                            Attachment attachData = new Attachment();

                            attachData.FileName        = dtUpload.Rows[i]["FileName"].ToString();
                            attachData.EmployeeID      = dtUpload.Rows[i]["EmployeeID"].ToString();
                            attachData.FileDescription = dtUpload.Rows[i]["Description"].ToString();
                            attachData.Attachment1     = dtUpload.Rows[i]["AttachFilePath"].ToString();
                            attachData.CreatedDate     = DateTime.Now;
                            attachData.CreatedBy       = hdfUserLogin.Value.Trim();

                            lAttachFile.Add(attachData);
                        }
                    }
                    //**********************************************************************

                    /***  Insert History and Generate Next For Approve **/
                    ActionHistory_Manage updHistoryManage = new ActionHistory_Manage();
                    bool updActionHis = updHistoryManage.InsertAndUpdHistoryReject(docHeaderData, updActHisData,
                                                                                   insAppHis, lDoclineData, lAttachFile);
                    if (updActionHis)
                    {
                        lblMsgResult.Text = "บันทึกข้อมูลเรียบร้อย";
                        lbtnPopup_ModalPopupExtender.Show();

                        string sSubjectMail = ConfigurationManager.GetConfiguration().SubjectMailApprove;
                        string sEmailFrom   = ConfigurationManager.GetConfiguration().EmailFrom;
                        string reqDate      = DateTime.Now.ToString(@"dd\/MM\/yyyy");

                        string Email2ndManager = hdfSecondManagerMail.Value.Trim();
                        if (!string.IsNullOrEmpty(Email2ndManager))
                        {
                            string _employeeName = lblEmployeeName.Text;
                            string emaiBody      = GenEmailBody(hdfEmployeeID.Value.Trim(), hdfSecondManager.Value.Trim(),
                                                                hdfUserLogin.Value.Trim(), reqDate, _employeeName,
                                                                lblPosition.Text.Trim(), "Waiting 2nd Manager Approve", hdfFirstManagerName.Value.Trim());

                            SendMail2ndManager(sSubjectMail, emaiBody, Email2ndManager, sEmailFrom);
                        }
                    }
                    else
                    {
                        lblMsgResult.Text = "ไม่สามารถบันทึกข้อมูลได้";

                        btnOK.Visible     = false;
                        btnCancel.Visible = true;

                        lbtnPopup_ModalPopupExtender.Show();
                    }
                    /****************************************************/
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);

                //*** Show Popup When Error (Exception) *****
                lblMsgResult.Text = "ไม่สามารถบันทึกข้อมูลได้ กรุณาติดต่อผู้ดูแลระบบ";

                btnOK.Visible     = false;
                btnCancel.Visible = true;

                lbtnPopup_ModalPopupExtender.Show();
                //*********************************
            }
        }
Esempio n. 11
0
        private void GetAppraisalHeader()
        {
            try
            {
                AppraisalDocHeader_Manage manage  = new AppraisalDocHeader_Manage();
                AppraisalDocHeader        docHead = new AppraisalDocHeader();
                docHead = manage.GetData(hdfEmployeeID.Value.Trim(), DateTime.Now.Year);
                if (docHead != null)
                {
                    hdfAppraisalDocNo.Value = string.IsNullOrEmpty(docHead.AppraisalDocNo) ? "" : docHead.AppraisalDocNo.Trim();
                    hdfStatus.Value         = string.IsNullOrEmpty(docHead.AppraisalStatus) ? "" : docHead.AppraisalStatus.Trim();

                    lblAppraisalDocNo.Text = hdfAppraisalDocNo.Value.Trim();

                    string _EmployeeType = hdfEmployeeType.Value.Trim();
                    //**********************************************************
                    if (docHead.AppraisalPeriodFrom != null)
                    {
                        lblDateFrom.Text = docHead.AppraisalPeriodFrom.Value.ToString(@"dd\/MM\/yyyy");
                    }
                    else
                    {
                        if (_EmployeeType.Equals("1"))
                        {
                            lblDateFrom.Text = "01/01/" + DateTime.Now.Year.ToString();
                        }
                        else
                        {
                            lblDateFrom.Text = lblContractStart.Text.Trim();
                        }
                    }

                    if (docHead.AppraisalPeriodTo != null)
                    {
                        lblDateTo.Text = docHead.AppraisalPeriodTo.Value.ToString(@"dd\/MM\/yyyy");
                    }
                    else
                    {
                        if (_EmployeeType.Equals("1"))
                        {
                            lblDateTo.Text = "31/12/" + DateTime.Now.Year.ToString();
                        }
                        else
                        {
                            lblDateTo.Text = lblContractEnd.Text.Trim();
                        }
                    }
                    //********************************************************

                    txtEmpStrength.Text   = docHead.EmployeeStrength;
                    txtEmpImpovement.Text = docHead.EmployeeImprovement;

                    lblResultScore.Text = string.IsNullOrEmpty(docHead.AppraisalGrade) ? "" : "Band " + docHead.AppraisalGrade;

                    if (docHead.AppraisalStatus.Trim().ToLower().Equals("completed"))
                    {
                        btnSubmit.Visible = false;
                        lbtnPopupErr_ModalPopupExtender.Show();
                    }
                    else
                    {
                        if (docHead.AppraisalStatus.Trim().Equals("Waiting 2nd Manager Approve"))
                        {
                            ActionHistory_Manage hm = new ActionHistory_Manage();
                            string _staus           = hm.GetActionHistoryStatus(hdfAppraisalDocNo.Value.Trim(), "FirstManager");

                            if (!string.IsNullOrEmpty(_staus) && _staus.Trim().Equals("Approved"))
                            {
                                btnSubmit.Visible = false;
                                lbtnPopupErr_ModalPopupExtender.Show();
                            }
                            else
                            {
                                btnSubmit.Visible = true;
                            }
                        }
                    }
                }
                else
                {
                    btnSubmit.Visible = false;
                    lbtnPopupErr_ModalPopupExtender.Show();
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }
        }
Esempio n. 12
0
        private void GetAppraisalHeader()
        {
            try
            {
                AppraisalDocHeader_Manage manage  = new AppraisalDocHeader_Manage();
                AppraisalDocHeader        docHead = new AppraisalDocHeader();
                docHead = manage.GetData(hdfEmployeeID.Value.Trim(), DateTime.Now.Year);
                if (docHead != null)
                {
                    string _DocNo = string.IsNullOrEmpty(docHead.AppraisalDocNo) ? "" : docHead.AppraisalDocNo.Trim();
                    hdfAppraisalDocNo.Value = _DocNo;

                    //**** For Check Duplicate Job ****//
                    if (!string.IsNullOrEmpty(_DocNo))
                    {
                        if (docHead.AppraisalStatus.ToLower().Trim().Equals("completed"))
                        {
                            btnSubmit.Visible = false;
                            lbtnPopupErr_ModalPopupExtender.Show();
                        }
                        else
                        {
                            if (docHead.AppraisalStatus.Trim().Equals("Waiting 2nd Manager Approve"))
                            {
                                ActionHistory_Manage hm = new ActionHistory_Manage();
                                string _staus           = hm.GetActionHistoryStatus(hdfAppraisalDocNo.Value.Trim(), "FirstManager");

                                if (!string.IsNullOrEmpty(_staus) && _staus.Trim().Equals("Approved"))
                                {
                                    btnSubmit.Visible = false;
                                    lbtnPopupErr_ModalPopupExtender.Show();
                                }
                                else
                                {
                                    btnSubmit.Visible = true;
                                }
                            }
                            else if (docHead.AppraisalStatus.Trim().Equals("Rejected"))
                            {
                                ActionHistory_Manage hm = new ActionHistory_Manage();
                                string _staus           = hm.GetActionHistoryStatus(hdfAppraisalDocNo.Value.Trim(), "SecondManager");
                                if (string.IsNullOrEmpty(_staus))
                                {
                                    btnSubmit.Visible = false;
                                    lbtnPopupErr_ModalPopupExtender.Show();
                                }
                                else
                                {
                                    btnSubmit.Visible = true;
                                }
                            }
                            else
                            {
                                btnSubmit.Visible = true;
                            }
                        }
                    }
                    //*******************************//
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }
        }
Esempio n. 13
0
        public bool UpdateAppraisalData(AppraisalDocHeader data, List <AppraisalDocLine> lData)
        {
            bool ret = false;

            try
            {
                using (PerformanceAppraisalEntities entity = new PerformanceAppraisalEntities())
                {
                    using (var dbTrans = entity.Database.BeginTransaction())
                    {
                        try
                        {
                            /**** Insert AppraisalDocHeader ******/
                            entity.AppraisalDocHeaders.Add(data);
                            entity.SaveChanges();
                            /*************************************/

                            /**** Insert AppraisalDocLine ******/
                            foreach (var item in lData)
                            {
                                entity.AppraisalDocLines.Add(item);
                                entity.SaveChanges();
                            }
                            /*************************************/

                            /*****   Update table Action History *****/
                            var getData = (from t in entity.ActionHistories
                                           where t.EmployeeID == data.EmployeeID && t.CreatedBy == data.CreatedBy && t.Status != "New Document"
                                           select t).FirstOrDefault();

                            getData.Status         = "Approved";
                            getData.AppraisalDocNo = data.AppraisalDocNo;
                            getData.Comments       = "";
                            entity.SaveChanges();
                            /*****************************************/

                            /******* Insert ApprovalHistory *********/
                            ApprovalHistory dataAppHis = new ApprovalHistory();
                            dataAppHis.Action          = "Approve";
                            dataAppHis.TransactionDate = data.CreatedDate;
                            dataAppHis.UserID          = data.CreatedBy;
                            dataAppHis.Comment         = "";
                            dataAppHis.AppraisalDocNo  = data.AppraisalDocNo;
                            entity.ApprovalHistories.Add(dataAppHis);
                            entity.SaveChanges();
                            /****************************************/

                            dbTrans.Commit();

                            ret = true;
                        }
                        catch (Exception ex)
                        {
                            ret = false;
                            dbTrans.Rollback();

                            logger.Error(ex.Message);
                            logger.Error(ex.StackTrace);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }

            return(ret);
        }
Esempio n. 14
0
        public bool Upd2ndManagerReject(AppraisalDocHeader data, string Remark, List <Attachment> lAttachFile)
        {
            bool ret = false;

            using (PerformanceAppraisalEntities entity = new PerformanceAppraisalEntities())
            {
                using (var dbTrans = entity.Database.BeginTransaction())
                {
                    try
                    {
                        /**** Update Approve AppraisalDocHeader ******/
                        var getData = (from t in entity.AppraisalDocHeaders
                                       where t.AppraisalDocNo == data.AppraisalDocNo
                                       select t).FirstOrDefault();
                        getData.AppraisalStatus = data.AppraisalStatus;
                        getData.CreatedDate     = data.CreatedDate;
                        getData.CreatedBy       = data.CreatedBy;

                        entity.SaveChanges();
                        /*****************************************/

                        /******* Update ActionHistory First Manager ******/
                        var getAct1stData = (from t in entity.ActionHistories
                                             where t.EmployeeID == data.EmployeeID &&
                                             t.Responsibility == "FirstManager" &&
                                             t.AppraisalYear == DateTime.Now.Year &&
                                             t.AppraisalDocNo == data.AppraisalDocNo
                                             select t).FirstOrDefault();

                        //getAct1stData.AppraisalDocNo = data.AppraisalDocNo;
                        //getAct1stData.CreatedDate = data.CreatedDate;
                        //getAct1stData.CreatedBy = data.CreatedBy;
                        //getAct1stData.Comments = Remark;
                        getAct1stData.Status = null;
                        entity.SaveChanges();
                        /****************************************/

                        /******* Update ActionHistory Seccound Manager ******/
                        var getAct1ndData = (from t in entity.ActionHistories
                                             where t.EmployeeID == data.EmployeeID &&
                                             (t.Status == null || t.Status.Trim().Equals("Rejected")) &&
                                             t.AppraisalYear == DateTime.Now.Year &&
                                             t.Responsibility == "SecondManager" &&
                                             t.AppraisalDocNo == data.AppraisalDocNo
                                             select t).FirstOrDefault();

                        //getActionData.AppraisalDocNo = data.AppraisalDocNo;
                        //getActionData.CreatedDate = data.CreatedDate;
                        //getActionData.CreatedBy = data.CreatedBy;
                        getAct1ndData.Comments = Remark;
                        getAct1ndData.Status   = "Rejected";
                        entity.SaveChanges();
                        /****************************************/


                        /******* Insert ApprovalHistory *********/
                        ApprovalHistory dataAppHis = new ApprovalHistory();
                        dataAppHis.Action          = "Reject";
                        dataAppHis.TransactionDate = data.CreatedDate;
                        dataAppHis.UserID          = data.CreatedBy;
                        dataAppHis.Comment         = Remark;
                        dataAppHis.AppraisalDocNo  = data.AppraisalDocNo;

                        entity.ApprovalHistories.Add(dataAppHis);
                        entity.SaveChanges();
                        /****************************************/

                        //**** Delete rows before insert******************//
                        if (lAttachFile != null && lAttachFile.Count > 0)
                        {
                            foreach (var item in lAttachFile)
                            {
                                var lRetAttach = entity.Attachments.Where(c => c.EmployeeID == item.EmployeeID &&
                                                                          c.FileName == item.FileName).ToList();
                                if (lRetAttach.Count() > 0)
                                {
                                    foreach (var iAttach in lRetAttach)
                                    {
                                        entity.Attachments.Remove(iAttach);
                                        entity.SaveChanges();
                                    }
                                }
                            }
                        }
                        //************************************************//

                        //***** Insert table Attachments   ****************/
                        if (lAttachFile != null && lAttachFile.Count > 0)
                        {
                            foreach (var item in lAttachFile)
                            {
                                Attachment insAttachment = new Attachment();
                                insAttachment.FileName        = item.FileName;
                                insAttachment.EmployeeID      = item.EmployeeID;
                                insAttachment.FileDescription = item.FileDescription;
                                insAttachment.Attachment1     = item.Attachment1;
                                insAttachment.CreatedBy       = item.CreatedBy;
                                insAttachment.CreatedDate     = item.CreatedDate;
                                insAttachment.UpdatedBy       = item.UpdatedBy;
                                insAttachment.UpdatedDate     = item.UpdatedDate;

                                entity.Attachments.Add(insAttachment);
                                entity.SaveChanges();
                            }
                        }
                        //*****************************************/

                        dbTrans.Commit();

                        ret = true;
                    }
                    catch (Exception ex)
                    {
                        ret = false;
                        dbTrans.Rollback();

                        logger.Error(ex.Message);
                        logger.Error(ex.StackTrace);
                    }
                }
            }

            return(ret);
        }
Esempio n. 15
0
        public bool InsertDocHeaderData(AppraisalDocHeader AppraisalData, List <Attachment> lAttachFile,
                                        List <AppraisalDocLine> lAppraisalDocLine, ActionHistory updActHisData, ApprovalHistory insApprovalHis, ActionHistory ins2NdActHisData)
        {
            bool  result = false;
            Int64 retPK  = 0;

            try
            {
                using (PerformanceAppraisalEntities entity = new PerformanceAppraisalEntities())
                {
                    using (var dbTrans = entity.Database.BeginTransaction())
                    {
                        try
                        {
                            //** Insert table AppraisalDocHeaders ****/
                            entity.AppraisalDocHeaders.Add(AppraisalData);
                            entity.SaveChanges();

                            retPK = AppraisalData.RowID;
                            //***************************************/

                            //**** Delete rows before insert******************//
                            if (lAttachFile != null && lAttachFile.Count > 0)
                            {
                                foreach (var item in lAttachFile)
                                {
                                    var lRetAttach = entity.Attachments.Where(c => c.EmployeeID == AppraisalData.EmployeeID &&
                                                                              c.FileName == item.FileName).ToList();
                                    if (lRetAttach.Count() > 0)
                                    {
                                        foreach (var iAttach in lRetAttach)
                                        {
                                            entity.Attachments.Remove(iAttach);
                                            entity.SaveChanges();
                                        }
                                    }
                                }
                            }
                            //************************************************//

                            //***** Insert table Attachments   ****************/
                            if (lAttachFile != null && lAttachFile.Count > 0)
                            {
                                foreach (var item in lAttachFile)
                                {
                                    Attachment insAttachment = new Attachment();
                                    insAttachment.FileName        = item.FileName;
                                    insAttachment.EmployeeID      = item.EmployeeID;
                                    insAttachment.FileDescription = item.FileDescription;
                                    insAttachment.Attachment1     = item.Attachment1;
                                    insAttachment.CreatedBy       = item.CreatedBy;
                                    insAttachment.CreatedDate     = item.CreatedDate;
                                    insAttachment.UpdatedBy       = item.UpdatedBy;
                                    insAttachment.UpdatedDate     = item.UpdatedDate;

                                    entity.Attachments.Add(insAttachment);
                                    entity.SaveChanges();
                                }
                            }
                            //*****************************************/

                            //************* Step 2 ********************//
                            if (retPK > 0)
                            {
                                string AppraisalDocNo = string.Empty;
                                AppraisalDocNo = GenerateDocNo(retPK.ToString());
                                if (!string.IsNullOrEmpty(AppraisalDocNo))
                                {
                                    //---------- Update "DocNo" to AppraisalDocHeader -------//
                                    var getData = (from t in entity.AppraisalDocHeaders
                                                   where t.RowID == retPK
                                                   select t).FirstOrDefault();

                                    getData.AppraisalDocNo = AppraisalDocNo;
                                    entity.SaveChanges();
                                    //-------------------------------------------------------//

                                    //-------------------- Insert AppraisalDocLine ----------//
                                    foreach (var itemIns in lAppraisalDocLine)
                                    {
                                        itemIns.AppraisalDocNo = AppraisalDocNo;

                                        entity.AppraisalDocLines.Add(itemIns);
                                        entity.SaveChanges();
                                    }
                                    //-------------------------------------------------------//

                                    //---------------- Insert & Update History -------------//
                                    /*****   Update table Action History *****/
                                    var getActHistory = (from t in entity.ActionHistories
                                                         where t.EmployeeID == updActHisData.EmployeeID &&
                                                         t.CreatedBy == updActHisData.CreatedBy &&
                                                         t.Status != "New Document" &&
                                                         t.AppraisalYear == updActHisData.AppraisalYear
                                                         select t).FirstOrDefault();

                                    getActHistory.Status         = updActHisData.Status;
                                    getActHistory.AppraisalDocNo = AppraisalDocNo;
                                    getActHistory.Comments       = updActHisData.Comments;
                                    entity.SaveChanges();
                                    /*****************************************/

                                    /******* Insert Approval History *********/
                                    insApprovalHis.AppraisalDocNo = AppraisalDocNo;
                                    entity.ApprovalHistories.Add(insApprovalHis);
                                    entity.SaveChanges();
                                    /*****************************************/

                                    /* Insert table Action History For Seccound Manager */
                                    if (!string.IsNullOrEmpty(ins2NdActHisData.EmployeeID))
                                    {
                                        ins2NdActHisData.AppraisalDocNo = AppraisalDocNo;
                                        entity.ActionHistories.Add(ins2NdActHisData);
                                        entity.SaveChanges();
                                    }
                                    /*****************************************/

                                    /*****   Update table Employee Master *****/
                                    var getEmpMasData = (from t in entity.EmployeeMasters
                                                         where t.EmployeeID == updActHisData.EmployeeID
                                                         select t).FirstOrDefault();
                                    getEmpMasData.AppraisalDate = insApprovalHis.TransactionDate;
                                    entity.SaveChanges();
                                    /*****************************************/
                                }
                            }

                            dbTrans.Commit();

                            result = true;
                        }
                        catch (Exception ex)
                        {
                            result = false;

                            dbTrans.Rollback();

                            logger.Error(ex.Message);
                            logger.Error(ex.StackTrace);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                result = false;

                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }

            return(result);
        }
        public bool InsertAndUpdHistoryReject(AppraisalDocHeader headerData, ActionHistory updActionHis,
                                              ApprovalHistory insApprovalHis, List <AppraisalDocLine> lDoclineData,
                                              List <Attachment> lAttachFile)
        {
            bool ret = false;

            try
            {
                using (PerformanceAppraisalEntities entity = new PerformanceAppraisalEntities())
                {
                    using (var dbTrans = entity.Database.BeginTransaction())
                    {
                        try
                        {
                            /*****   Update table  AppraisalDocHeader *****/
                            var getHeaderData = (from t in entity.AppraisalDocHeaders
                                                 where t.AppraisalDocNo == headerData.AppraisalDocNo
                                                 select t).FirstOrDefault();
                            getHeaderData.AppraisalDate       = headerData.AppraisalDate;
                            getHeaderData.AppraisalPeriodFrom = headerData.AppraisalPeriodFrom;
                            getHeaderData.AppraisalPeriodTo   = headerData.AppraisalPeriodTo;
                            getHeaderData.AppraisalStatus     = headerData.AppraisalStatus;
                            getHeaderData.AppraisalTotalScore = headerData.AppraisalTotalScore;
                            getHeaderData.AppraisalGrade      = headerData.AppraisalGrade;
                            getHeaderData.EmployeeStrength    = headerData.EmployeeStrength;
                            getHeaderData.EmployeeImprovement = headerData.EmployeeImprovement;
                            entity.SaveChanges();
                            /***********************************************/

                            /*****   Update table ActionHistory 1st Manager Status *****/
                            var getActHis1stData = (from t in entity.ActionHistories
                                                    where t.EmployeeID == updActionHis.EmployeeID &&
                                                    t.Responsibility == "FirstManager" &&
                                                    t.AppraisalYear == updActionHis.AppraisalYear &&
                                                    t.AppraisalDocNo == updActionHis.AppraisalDocNo
                                                    select t).FirstOrDefault();

                            getActHis1stData.Status   = updActionHis.Status;
                            getActHis1stData.Comments = updActionHis.Comments;
                            entity.SaveChanges();
                            /*****************************************/

                            /*****   Update table ActionHistory 2nd Manager Status *****/
                            var getActHis2ndData = (from t in entity.ActionHistories
                                                    where t.EmployeeID == updActionHis.EmployeeID &&
                                                    t.Responsibility == "SecondManager" &&
                                                    t.AppraisalYear == updActionHis.AppraisalYear &&
                                                    t.AppraisalDocNo == updActionHis.AppraisalDocNo
                                                    select t).FirstOrDefault();

                            getActHis2ndData.Status   = null;
                            getActHis2ndData.Comments = null;
                            entity.SaveChanges();
                            /*****************************************/

                            /******* Insert Approval History *********/
                            entity.ApprovalHistories.Add(insApprovalHis);
                            entity.SaveChanges();
                            /*****************************************/

                            /*****   Update table Employee Master *****/
                            var getEmpMasData = (from t in entity.EmployeeMasters
                                                 where t.EmployeeID == updActionHis.EmployeeID
                                                 select t).FirstOrDefault();
                            getEmpMasData.AppraisalDate = insApprovalHis.TransactionDate;
                            entity.SaveChanges();
                            /*****************************************/

                            /****  Delete AppraisalDocLine Where "AppraisalDocNo" bofore Insert *******/
                            entity.AppraisalDocLines.RemoveRange(entity.AppraisalDocLines.Where(c => c.AppraisalDocNo == headerData.AppraisalDocNo));
                            entity.SaveChanges();
                            /***********************************************************/

                            /****  Insert AppraisalDocLine *******/
                            foreach (var item in lDoclineData)
                            {
                                entity.AppraisalDocLines.Add(item);
                                entity.SaveChanges();
                            }
                            /*************************************/

                            //**** Delete rows before insert******************//
                            if (lAttachFile != null && lAttachFile.Count > 0)
                            {
                                foreach (var item in lAttachFile)
                                {
                                    var lRetAttach = entity.Attachments.Where(c => c.EmployeeID == item.EmployeeID &&
                                                                              c.FileName == item.FileName).ToList();
                                    if (lRetAttach.Count() > 0)
                                    {
                                        foreach (var iAttach in lRetAttach)
                                        {
                                            entity.Attachments.Remove(iAttach);
                                            entity.SaveChanges();
                                        }
                                    }
                                }
                            }
                            //************************************************//

                            //***** Insert table Attachments   ****************/
                            if (lAttachFile != null && lAttachFile.Count > 0)
                            {
                                foreach (var item in lAttachFile)
                                {
                                    Attachment insAttachment = new Attachment();
                                    insAttachment.FileName        = item.FileName;
                                    insAttachment.EmployeeID      = item.EmployeeID;
                                    insAttachment.FileDescription = item.FileDescription;
                                    insAttachment.Attachment1     = item.Attachment1;
                                    insAttachment.CreatedBy       = item.CreatedBy;
                                    insAttachment.CreatedDate     = item.CreatedDate;
                                    insAttachment.UpdatedBy       = item.UpdatedBy;
                                    insAttachment.UpdatedDate     = item.UpdatedDate;

                                    entity.Attachments.Add(insAttachment);
                                    entity.SaveChanges();
                                }
                            }
                            //*****************************************/

                            dbTrans.Commit();

                            ret = true;
                        }
                        catch (Exception ex)
                        {
                            ret = false;
                            dbTrans.Rollback();

                            logger.Error(ex.Message);
                            logger.Error(ex.StackTrace);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }

            return(ret);
        }