示例#1
0
    private void GridBinding()
    {
        DataSet ds = null;

        if (POINT_GRADE_TYPE.Equals("PNT"))
        {
            Biz_CtrlPointDatas ctrlPointData = new Biz_CtrlPointDatas();
            ds = ctrlPointData.GetCtrlPointData(COMP_ID
                                                , EST_ID
                                                , ESTTERM_REF_ID
                                                , ESTTERM_SUB_ID
                                                , ESTTERM_STEP_ID
                                                , CTRL_EMP_ID
                                                , TGT_DEPT_ID
                                                , TGT_EMP_ID
                                                , 0);
        }
        else if (POINT_GRADE_TYPE.Equals("GRD"))
        {
            Biz_CtrlGradeDatas ctrlGradeData = new Biz_CtrlGradeDatas();
            ds = ctrlGradeData.GetCtrlGradeData(COMP_ID
                                                , EST_ID
                                                , ESTTERM_REF_ID
                                                , ESTTERM_SUB_ID
                                                , ESTTERM_STEP_ID
                                                , CTRL_EMP_ID
                                                , TGT_DEPT_ID
                                                , TGT_EMP_ID
                                                , 0);
        }

        UltraWebGrid1.DataSource = ds;
        UltraWebGrid1.DataBind();

        // 자신이 조정한 정보가 존재한다면 신규버튼을 숨김
        if (ds.Tables[0].Select(string.Format("CTRL_EMP_ID = {0}", CTRL_EMP_ID)).Length > 0)
        {
            ibnNew.Visible = false;
        }
        else
        {
            // 평가별 평가 차수와 현재 등록된 차수가 같거나 클 경우 신규버튼을 숨김
            if (ds.Tables[0].Rows.Count >= DataTypeUtility.GetToInt32(hdfCtrlStep.Value))
            {
                ibnNew.Visible = false;
            }
        }
    }
示例#2
0
    private void SelectCtrlData(int comp_id
                                , string est_id
                                , int estterm_ref_id
                                , int estterm_sub_id
                                , int estterm_step_id
                                , int ctrl_emp_id
                                , int tgt_dept_id
                                , int tgt_emp_id
                                , int ctrl_seq)
    {
        if (POINT_GRADE_TYPE.Equals("PNT"))
        {
            Biz_CtrlPointDatas ctrlPointData = new Biz_CtrlPointDatas(comp_id
                                                                      , est_id
                                                                      , estterm_ref_id
                                                                      , estterm_sub_id
                                                                      , estterm_step_id
                                                                      , ctrl_emp_id
                                                                      , tgt_dept_id
                                                                      , tgt_emp_id
                                                                      , ctrl_seq);

            txtCtrlPoint.Text   = ctrlPointData.Ctrl_Point.ToString();
            txtCtrlOpinion.Text = ctrlPointData.Ctrl_Opinion;
        }
        else if (POINT_GRADE_TYPE.Equals("GRD"))
        {
            Biz_CtrlGradeDatas ctrlGradeData = new Biz_CtrlGradeDatas(comp_id
                                                                      , est_id
                                                                      , estterm_ref_id
                                                                      , estterm_sub_id
                                                                      , estterm_step_id
                                                                      , ctrl_emp_id
                                                                      , tgt_dept_id
                                                                      , tgt_emp_id
                                                                      , ctrl_seq);

            WebUtility.FindByValueDropDownList(ddlCtrlGradeID, ctrlGradeData.Ctrl_Grade_ID);
            txtCtrlOpinion.Text = ctrlGradeData.Ctrl_Opinion;
        }
    }
示例#3
0
    /// <summary>
    /// 그리드 바인딩 메소드
    /// </summary>
    /// <param name="comp_id"></param>
    /// <param name="est_id"></param>
    /// <param name="estterm_ref_id"></param>
    /// <param name="estterm_sub_id"></param>
    /// <param name="estterm_step_id"></param>
    private void GridBidingData(int comp_id
                                , string est_id
                                , int estterm_ref_id
                                , int estterm_sub_id
                                , int estterm_step_id)
    {
        Biz_EstInfos estInfo = new Biz_EstInfos(comp_id, est_id);

        if (!estInfo.IsExists(comp_id, est_id))
        {
            return;
        }

        // 만약 주기가 년간일 경우
        if (YEAR_YN.Equals("Y"))
        {
            ESTTERM_SUB_ID = BizUtility.GetEstTermSubIDByYearYN(COMP_ID);
        }

        // 만약 차수가 합산일 경우
        if (MERGE_YN.Equals("Y"))
        {
            ESTTERM_STEP_ID = BizUtility.GetEstTermStepIDByMergeYN(COMP_ID);
        }

        if (estInfo.Owner_Type != null && estInfo.Owner_Type.Equals("D"))
        {
            OwnerTypeMode = OwnerType.Dept;
        }
        else
        {
            OwnerTypeMode = OwnerType.Emp_User;
        }
        //if (estInfo.Owner_Type.Equals("D"))
        //    OwnerTypeMode = OwnerType.Dept;
        //else
        //    OwnerTypeMode = OwnerType.Emp_User;

        ScaleTypeMode  = estInfo.Scale_Type;
        WeightTypeMode = estInfo.Weight_Type;

        if (estInfo.Bias_YN.Equals("Y"))
        {
            BiasYN = YesNo.Yes;
        }
        else
        {
            BiasYN = YesNo.No;
        }

        if (estInfo.Grade_Confirm_YN.Equals("Y"))
        {
            GradeConfirmYN = YesNo.Yes;
        }
        else
        {
            GradeConfirmYN = YesNo.No;
        }

        Biz_Datas est_data = new Biz_Datas();

        int est_emp_id  = 0;;
        int tgt_dept_id = 0;
        int tgt_emp_id  = 0;

        if (OwnerTypeMode == OwnerType.Dept && DEPT_COLUMN_NO_USE_YN.Equals("Y"))
        {
            OwnerTypeMode = OwnerType.Emp_User;
        }
        else if (OwnerTypeMode == OwnerType.Emp_User && DEPT_COLUMN_NO_USE_YN.Equals("Y"))
        {
            OwnerTypeMode = OwnerType.Dept;
        }

        if (OwnerTypeMode == OwnerType.Dept)
        {
            if (EST_TGT_TYPE.Equals("EST"))
            {
                est_emp_id  = 0;
                tgt_dept_id = TGT_DEPT_ID;
                tgt_emp_id  = -1;
            }
            else if (EST_TGT_TYPE.Equals("TGT"))
            {
                est_emp_id  = 0;
                tgt_dept_id = TGT_DEPT_ID;
                tgt_emp_id  = -1;
            }
        }
        else if (OwnerTypeMode == OwnerType.Emp_User)
        {
            if (EST_TGT_TYPE.Equals("EST"))
            {
                est_emp_id  = 0;
                tgt_dept_id = 0;
                tgt_emp_id  = TGT_EMP_ID;
            }
            else if (EST_TGT_TYPE.Equals("TGT"))
            {
                est_emp_id  = 0;
                tgt_dept_id = 0;
                tgt_emp_id  = TGT_EMP_ID;
            }
        }

        DT_EST_DATA = est_data.GetEstData(comp_id
                                          , est_id
                                          , ESTTERM_REF_ID
                                          , ESTTERM_SUB_ID
                                          , ESTTERM_STEP_ID
                                          , 0
                                          , est_emp_id
                                          , tgt_dept_id
                                          , tgt_emp_id
                                          , YEAR_YN
                                          , MERGE_YN
                                          , OwnerTypeMode).Tables[0];

        // 조회된 데이터가 존재할 경우
        if (DT_EST_DATA != null)
        {
            // 만약 가중치 보이기 Y 일때
            if (COL_WEIGHT_VISIBLE_YN.Equals("Y"))
            {
                //2012.01.16 박효동 : 하위평가를 가져오니 문제가 있어서 수정
                // - MBO의 하위평가를 가져오도록 평가컬럼설정이 되있는데 현재는 현재평가의 하위차수를 가져오니 안나오더라
                // - 해서 평가컬럼설정에 등록되어있는 POINT_평가아이디에 해당하는 평가아이디를 가져오도록 수정 휴~~
                // 하위평가 정보를 가지고 온다.
                //DataTable _dtEstID  = estInfo.GetEstInfoByUpEstID(comp_id, est_id).Tables[0];

                DataTable _dtEstID = estInfo.GetEstInfoByUpEstID(comp_id, est_id).Tables[0];
                _dtEstID.Rows.Clear();
                Biz_ColumnInfos colInfo = new Biz_ColumnInfos();
                DataTable       dtEstID = colInfo.GetColumnInfo(COMP_ID, EST_ID).Tables[0];
                foreach (DataRow dr in dtEstID.Rows)
                {
                    string colnames = dr[6].ToString();
                    if (colnames.Length > 5)
                    {
                        if (colnames.Substring(0, 6) == "POINT_" && colnames.Length == 8)
                        {
                            DataRow insertDR = _dtEstID.NewRow();
                            insertDR["EST_ID"] = colnames.Remove(0, 6);
                            _dtEstID.Rows.Add(insertDR);
                            insertDR = null;
                        }
                    }
                }

                foreach (DataRow dataRow in _dtEstID.Rows)
                {
                    DT_EST_DATA.Columns.Add(string.Format("WEIGHT_{0}", dataRow["EST_ID"]), typeof(double));

                    // 평가별 점수 보이기 여부에 따라
                    if (COL_POINT_VISIBLE_YN.Equals("Y"))
                    {
                        DT_EST_DATA.Columns.Add(string.Format("POINT_{0}", dataRow["EST_ID"]), typeof(double));

                        DataTable dtEstData = est_data.GetData(comp_id
                                                               , dataRow["EST_ID"].ToString()
                                                               , ESTTERM_REF_ID
                                                               , ESTTERM_SUB_ID
                                                               , ESTTERM_STEP_ID
                                                               , 0
                                                               , est_emp_id
                                                               , tgt_dept_id
                                                               , tgt_emp_id
                                                               , YEAR_YN
                                                               , MERGE_YN
                                                               , OwnerTypeMode).Tables[0];

                        foreach (DataRow drEstData in dtEstData.Rows)
                        {
                            DataRow[] drArrEstData = DT_EST_DATA.Select(string.Format(@"ESTTERM_REF_ID  = {0}
                                                                                    AND ESTTERM_SUB_ID  = {1}
                                                                                    AND ESTTERM_STEP_ID = {2}
                                                                                    AND TGT_DEPT_ID     = {3}
                                                                                    AND TGT_EMP_ID      = {4}"
                                                                                      , drEstData["ESTTERM_REF_ID"]
                                                                                      , drEstData["ESTTERM_SUB_ID"]
                                                                                      , drEstData["ESTTERM_STEP_ID"]
                                                                                      , drEstData["TGT_DEPT_ID"]
                                                                                      , drEstData["TGT_EMP_ID"]));

                            if (drArrEstData.Length > 0)
                            {
                                drArrEstData[0][string.Format("POINT_{0}", dataRow["EST_ID"])] = drEstData["POINT"];
                            }
                        }
                    }
                }
            }

            // 등급 컬럼 보이기가 Y 일경우 (이건 DT_EST_DATA 과 관계 없음)
            if (COL_GRADE_VISIBLE_YN.Equals("Y") ||
                COL_GRADE_TO_POINT_VISIBLE_YN.Equals("Y"))
            {
                Biz_DeptEstDetails deptEstDetail = new Biz_DeptEstDetails();
                DT_DEPT_SCALE = deptEstDetail.GetDeptEstDetail(comp_id, estterm_ref_id, 0, est_id).Tables[0];

                Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();
                DT_POS_SCALE = deptPosScale.GetDeptPosScale(comp_id, estterm_ref_id, 0, est_id).Tables[0];

                Biz_Scopes scope = new Biz_Scopes();
                DT_SCOPE = scope.GetScope(comp_id, est_id).Tables[0];

                DT_EST_DATA.Columns.Add("RANK", typeof(double));
                DT_EST_DATA.Columns.Add("SCALE_ID", typeof(string));
                DT_EST_DATA.Columns.Add("SCALE_NAME", typeof(string));
                DT_EST_DATA.Columns.Add("GRADE_CALC_ID", typeof(string));
            }

            if (COL_ESTTERM_SUB_AGG_VISIBLE_YN.Equals("Y"))
            {
            }

            if (COL_ESTTERM_STEP_AGG_VISIBLE_YN.Equals("Y"))
            {
            }

            if (COL_CTRL_POINT_VISIBLE_YN.Equals("Y") ||
                COL_CTRL_GRADE_VISIBLE_YN.Equals("Y"))
            {
                Biz_CtrlEstMaps ctrlEstDeptMap = new Biz_CtrlEstMaps();
                DT_CTRL_INFO         = ctrlEstDeptMap.GetCtrlInfoByEstID(COMP_ID, EST_ID).Tables[0];
                DT_CTRL_EST_DEPT_MAP = ctrlEstDeptMap.GetCtrlEstDeptByEstID(COMP_ID, EST_ID).Tables[0];

                if (COL_CTRL_POINT_VISIBLE_YN.Equals("Y"))
                {
                    Biz_CtrlPointDatas ctrlPointData = new Biz_CtrlPointDatas();
                    DT_CTRL_POINT_DATA = ctrlPointData.GetCtrlPointData(comp_id
                                                                        , est_id
                                                                        , estterm_ref_id
                                                                        , estterm_sub_id
                                                                        , estterm_step_id
                                                                        , 0
                                                                        , 0
                                                                        , 0
                                                                        , 0).Tables[0];
                }

                if (COL_CTRL_GRADE_VISIBLE_YN.Equals("Y"))
                {
                    Biz_CtrlGradeDatas ctrlGradeData = new Biz_CtrlGradeDatas();
                    DT_CTRL_GRADE_DATA = ctrlGradeData.GetCtrlGradeData(comp_id
                                                                        , est_id
                                                                        , estterm_ref_id
                                                                        , estterm_sub_id
                                                                        , estterm_step_id
                                                                        , 0
                                                                        , 0
                                                                        , 0
                                                                        , 0).Tables[0];
                }
            }

            UltraWebGrid1.Clear();
            UltraWebGrid1.DataSource = DT_EST_DATA;
            UltraWebGrid1.DataBind();
        }
    }
示例#4
0
    protected void ibnCtrlConfirm_Click(object sender, ImageClickEventArgs e)
    {
        DataTable dataTable = null;
        bool      isOK      = false;

        Biz_Datas data = new Biz_Datas(COMP_ID
                                       , EST_ID
                                       , ESTTERM_REF_ID
                                       , ESTTERM_SUB_ID
                                       , ESTTERM_STEP_ID
                                       , EST_DEPT_ID
                                       , EST_EMP_ID
                                       , TGT_DEPT_ID
                                       , TGT_EMP_ID);

        if (POINT_GRADE_TYPE.Equals("PNT"))
        {
            Biz_CtrlPointDatas ctrlPointData = new Biz_CtrlPointDatas();
            dataTable = ctrlPointData.GetDataTableSchema();

            dataTable = UltraGridUtility.GetDataTableByCheckValue(UltraWebGrid1
                                                                  , "ckbCtrlConfirm"
                                                                  , "CTRL_CONFIRM"
                                                                  , new string[] { "CTRL_SEQ", "CTRL_POINT" }
                                                                  , dataTable);

            if (dataTable.Rows.Count == 0)
            {
                ltrScript.Text = JSHelper.GetAlertScript("점수 조정확정 체크박스에 선택된 항목이 없습니다.");
                return;
            }
            else if (dataTable.Rows.Count > 1)
            {
                ltrScript.Text = JSHelper.GetAlertScript("두개 이상 항목이 체크될 수 없습니다.");
                return;
            }

            isOK = data.CtrlPoint(COMP_ID
                                  , EST_ID
                                  , ESTTERM_REF_ID
                                  , ESTTERM_SUB_ID
                                  , ESTTERM_STEP_ID
                                  , EST_DEPT_ID
                                  , EST_EMP_ID
                                  , TGT_DEPT_ID
                                  , TGT_EMP_ID
                                  , CTRL_EMP_ID
                                  , DataTypeUtility.GetToInt32(dataTable.Rows[0]["CTRL_SEQ"])
                                  , data.Point
                                  , DataTypeUtility.GetToFloat(dataTable.Rows[0]["CTRL_POINT"])
                                  , DateTime.Now
                                  , DateTime.Now
                                  , EMP_REF_ID);

            if (isOK)
            {
                ltrScript.Text = JSHelper.GetAlertOpenerControlCallBackScript("정상적으로 점수조정이 확정되었습니다.", "lbnReload", true);
            }
            else
            {
                ltrScript.Text = JSHelper.GetAlertScript("점수조정 확정 중 오류가 발생하였습니다.");
            }
        }
        else if (POINT_GRADE_TYPE.Equals("GRD"))
        {
            Biz_CtrlGradeDatas ctrlGradeData = new Biz_CtrlGradeDatas();
            dataTable = ctrlGradeData.GetDataTableSchema();

            dataTable = UltraGridUtility.GetDataTableByCheckValue(UltraWebGrid1
                                                                  , "ckbCtrlConfirm"
                                                                  , "CTRL_CONFIRM"
                                                                  , new string[] { "CTRL_SEQ", "CTRL_GRADE_ID" }
                                                                  , dataTable);

            if (dataTable.Rows.Count == 0)
            {
                ltrScript.Text = JSHelper.GetAlertScript("등급 조정확정 체크박스에 선택된 항목이 없습니다.");
                return;
            }
            else if (dataTable.Rows.Count > 1)
            {
                ltrScript.Text = JSHelper.GetAlertScript("두개 이상 항목이 체크될 수 없습니다.");
                return;
            }

            isOK = data.CtrlGrade(COMP_ID
                                  , EST_ID
                                  , ESTTERM_REF_ID
                                  , ESTTERM_SUB_ID
                                  , ESTTERM_STEP_ID
                                  , EST_DEPT_ID
                                  , EST_EMP_ID
                                  , TGT_DEPT_ID
                                  , TGT_EMP_ID
                                  , CTRL_EMP_ID
                                  , DataTypeUtility.GetToInt32(dataTable.Rows[0]["CTRL_SEQ"])
                                  , data.Grade_ID
                                  , DataTypeUtility.GetValue(dataTable.Rows[0]["CTRL_GRADE_ID"])
                                  , DateTime.Now
                                  , DateTime.Now
                                  , EMP_REF_ID);

            if (isOK)
            {
                ltrScript.Text = JSHelper.GetAlertOpenerControlCallBackScript("정상적으로 등급조정이 확정되었습니다.", "lbnReload", true);
            }
            else
            {
                ltrScript.Text = JSHelper.GetAlertScript("등급조정 확정 중 오류가 발생하였습니다.");
            }
        }
    }
示例#5
0
    protected void ibnSave_Click(object sender, ImageClickEventArgs e)
    {
        Biz_CtrlPointDatas ctrlPointData = new Biz_CtrlPointDatas();
        Biz_CtrlGradeDatas ctrlGradeData = new Biz_CtrlGradeDatas();

        bool isOK = false;

        if (PageWriteMode == WriteMode.New)
        {
            if (POINT_GRADE_TYPE.Equals("PNT"))
            {
                if (txtCtrlPoint.Text.Equals(""))
                {
                    ltrScript.Text = JSHelper.GetAlertScript("조정점수를 입력하세요.");
                    return;
                }

                isOK = ctrlPointData.AddCtrlPointData(COMP_ID
                                                      , EST_ID
                                                      , ESTTERM_REF_ID
                                                      , ESTTERM_SUB_ID
                                                      , ESTTERM_STEP_ID
                                                      , CTRL_EMP_ID
                                                      , TGT_DEPT_ID
                                                      , TGT_EMP_ID
                                                      , DataTypeUtility.GetToFloat(txtCtrlPoint.Text)
                                                      , txtCtrlOpinion.Text
                                                      , DateTime.Now
                                                      , EMP_REF_ID);
            }
            else if (POINT_GRADE_TYPE.Equals("GRD"))
            {
                isOK = ctrlGradeData.AddCtrlGradeData(COMP_ID
                                                      , EST_ID
                                                      , ESTTERM_REF_ID
                                                      , ESTTERM_SUB_ID
                                                      , ESTTERM_STEP_ID
                                                      , CTRL_EMP_ID
                                                      , TGT_DEPT_ID
                                                      , TGT_EMP_ID
                                                      , WebUtility.GetByValueDropDownList(ddlCtrlGradeID)
                                                      , txtCtrlOpinion.Text
                                                      , DateTime.Now
                                                      , EMP_REF_ID);
            }

            if (isOK)
            {
                GridBinding();
            }
            else
            {
                ltrScript.Text = JSHelper.GetAlertScript("정상적으로 등록되지 않았습니다.");
                return;
            }
        }
        else if (PageWriteMode == WriteMode.Modify)
        {
            if (POINT_GRADE_TYPE.Equals("PNT"))
            {
                if (txtCtrlPoint.Text.Equals(""))
                {
                    ltrScript.Text = JSHelper.GetAlertScript("조정점수를 입력하세요.");
                    return;
                }

                isOK = ctrlPointData.ModifyCtrlPointData(DataTypeUtility.GetToInt32(hdfCompID.Value)
                                                         , hdfEstID.Value
                                                         , DataTypeUtility.GetToInt32(hdfEstTermRefID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfEstTermSubID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfEstTermStepID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfCtrlEmpID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfTgtDeptID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfTgtEmpID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfCtrlSeq.Value)
                                                         , DataTypeUtility.GetToFloat(txtCtrlPoint.Text)
                                                         , txtCtrlOpinion.Text
                                                         , DateTime.Now
                                                         , EMP_REF_ID);
            }
            else if (POINT_GRADE_TYPE.Equals("GRD"))
            {
                isOK = ctrlGradeData.ModifyCtrlGradeData(DataTypeUtility.GetToInt32(hdfCompID.Value)
                                                         , hdfEstID.Value
                                                         , DataTypeUtility.GetToInt32(hdfEstTermRefID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfEstTermSubID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfEstTermStepID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfCtrlEmpID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfTgtDeptID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfTgtEmpID.Value)
                                                         , DataTypeUtility.GetToInt32(hdfCtrlSeq.Value)
                                                         , WebUtility.GetByValueDropDownList(ddlCtrlGradeID)
                                                         , txtCtrlOpinion.Text
                                                         , DateTime.Now
                                                         , EMP_REF_ID);
            }

            if (isOK)
            {
                GridBinding();
            }
            else
            {
                ltrScript.Text = JSHelper.GetAlertScript("정상적으로 수정되지 않았습니다.");
                return;
            }
        }

        ButtonStatusByInit();
    }