Ejemplo n.º 1
0
    private void BindingTgtEmp(int est_emp_id)
    {
        Biz_Datas data      = new Biz_Datas();
        DataTable dataTable = data.GetEstData(COMP_ID
                                              , EST_ID
                                              , ESTTERM_REF_ID
                                              , ESTTERM_SUB_ID
                                              , ESTTERM_STEP_ID
                                              , 0
                                              , est_emp_id
                                              , 0
                                              , 0
                                              , YEAR_YN
                                              , MERGE_YN
                                              , OwnerType.Emp_User).Tables[0];


        dataTable = DataTypeUtility.GetGroupByDataTable(dataTable
                                                        , new string[] { "TGT_EMP_ID", "TGT_EMP_NAME", "TGT_POS_CLS_ID", "TGT_POS_CLS_NAME", "TGT_POS_DUT_ID", "TGT_POS_DUT_NAME", "TGT_POS_GRP_ID", "TGT_POS_GRP_NAME", "TGT_POS_RNK_ID", "TGT_POS_RNK_NAME", "TGT_POS_KND_ID", "TGT_POS_KND_NAME" });

        dataTable = DataTypeUtility.FilterSortDataTable(dataTable, "", "TGT_EMP_NAME");


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

        lblRowCount.Text = dataTable.Rows.Count.ToString("#,##0");
    }
Ejemplo n.º 2
0
    private void DataListBinding_P()
    {
        Biz_QuestionObjects questionObjects = new Biz_QuestionObjects(EST_ID, Q_OBJ_ID);

        Q_OBJ_NAME = questionObjects.Q_Obj_Name;

        Biz_QuestionSubjects questionSubjects = new Biz_QuestionSubjects();
        DataSet ds = questionSubjects.GetQuestionSubject("", Q_OBJ_ID, "");

        if (ds.Tables.Count == 0)
        {
            return;
        }

        DataTable dt = DataTypeUtility.GetGroupByDataTable(ds.Tables[0], new string[] { "Q_DFN_ID" });

        string q_dfn_ids = DataTypeUtility.GetSplitString(dt, "Q_DFN_ID", ",");

        if (q_dfn_ids.Length > 0)
        {
            DefineDataBinding_P(q_dfn_ids);
        }

        NoDefineDataBinding_P(ds);
    }
Ejemplo n.º 3
0
    protected void ibnAddEstData_Click(object sender, ImageClickEventArgs e)
    {
        int cnt = UltraWebGrid1.Rows.Count;

        string dept_ref_id_list = string.Empty;

        for (int i = 0; i < cnt; i++)
        {
            UltraGridRow row = UltraWebGrid1.Rows[i];

            TemplatedColumn selchk = (TemplatedColumn)row.Band.Columns.FromKey("selchk");
            CheckBox        cBox   = (CheckBox)((CellItem)selchk.CellItems[row.BandIndex]).FindControl("cBox");

            if (cBox.Checked)
            {
                dept_ref_id_list += "," + DataTypeUtility.GetValue(row.Cells.FromKey("DEPT_REF_ID").Value);
            }
        }

        if (dept_ref_id_list.Length > 0)
        {
            dept_ref_id_list = dept_ref_id_list.Remove(0, 1);
        }
        else
        {
            dept_ref_id_list = "-1";
        }

        DataTable dtEmp = DataTypeUtility.FilterSortDataTable(DT_ESTTARGETMAP, string.Format(" TGT_DEPT_ID  IN ({0}) AND DIRECTION_TYPE = '{1}' ", dept_ref_id_list, ConDIRECTION_TYPE));

        DataTable dtDel = DataTypeUtility.GetGroupByDataTable(dtEmp.Copy(), new string[] { "TGT_EMP_ID" });

        MicroBSC.Integration.EST.Biz.Biz_Est_Data bizEstData = new MicroBSC.Integration.EST.Biz.Biz_Est_Data();

        string okMsg = bizEstData.AddData(dtDel
                                          , dtEmp
                                          , COMP_ID
                                          , EST_ID
                                          , ESTTERM_REF_ID
                                          , ESTTERM_SUB_ID
                                          , ConESTTERM_STEP_ID
                                          , ConDIRECTION_TYPE
                                          , "N"
                                          , DateTime.Now
                                          , DateTime.Now
                                          , this.gUserInfo.Emp_Ref_ID);

        if (okMsg.Length == 0)
        {
            ltrScript.Text = JSHelper.GetAlertScript("정상 처리 되었습니다.", false);

            DoBinding_Dept();
            DEPT_REF_ID = -1;
        }
        else
        {
            ltrScript.Text = JSHelper.GetAlertScript(okMsg);
        }
    }
Ejemplo n.º 4
0
    protected void UltraWebGrid1_InitializeLayout(object sender, LayoutEventArgs e)
    {
        if (EST_TGT_TYPE.Equals("EST"))
        {
            if (ESTTERM_STEP_ID == 2)
            {
                //질의 별 평균 컬럼 활성
                DataTable dt_q_dfn = DataTypeUtility.GetGroupByDataTable(DT_QUESTION_SBJ_POINT, new string[] { "Q_DFN_ID", "Q_DFN_NAME" });

                int insert_pos = e.Layout.Bands[0].Columns.FromKey("Q_SBJ_POINT_AVG").Index;
                for (int i = 0; i < dt_q_dfn.Rows.Count; i++)
                {
                    string q_dfn_name = DataTypeUtility.GetString(dt_q_dfn.Rows[i]["Q_DFN_NAME"]) + "평균";
                    string q_dfn_id   = DataTypeUtility.GetString(dt_q_dfn.Rows[i]["Q_DFN_ID"]);
                    string key        = q_dfn_id;

                    if (!UltraWebGrid1.Columns.Exists(key))
                    {
                        UltraGridColumn col_q_dfn = new UltraGridColumn();
                        col_q_dfn.BaseColumnName = key;
                        col_q_dfn.Width          = Unit.Pixel(100);
                        col_q_dfn.Key            = key;
                        col_q_dfn.Header.Caption = q_dfn_name;
                        col_q_dfn.Header.Style.HorizontalAlign = HorizontalAlign.Center;
                        col_q_dfn.CellStyle.HorizontalAlign    = HorizontalAlign.Right;

                        UltraWebGrid1.Columns.Insert(insert_pos + i, col_q_dfn);
                    }
                }


                e.Layout.Bands[0].Columns.FromKey("Q_SBJ_POINT_AVG").Hidden = false;
                e.Layout.Bands[0].Columns.FromKey("POINT_ORG").Hidden       = false;



                //관리자의 경우 점수 조정 컬럼 활성
                if (IS_ADMIN)
                {
                    e.Layout.Bands[0].Columns.FromKey("POINT_AVG").Hidden      = false;
                    e.Layout.Bands[0].Columns.FromKey("POINT_STD").Hidden      = false;
                    e.Layout.Bands[0].Columns.FromKey("POINT_CTRL_ORG").Hidden = false;
                }
            }
            else if (ESTTERM_STEP_ID == 3)
            {
                e.Layout.Bands[0].Columns.FromKey("POINT_CTRL_ORG").Header.Caption = "합계점수";
                e.Layout.Bands[0].Columns.FromKey("POINT_ORG_1ST").Hidden          = false;
                e.Layout.Bands[0].Columns.FromKey("POINT_CTRL_ORG_1ST").Hidden     = false;
                e.Layout.Bands[0].Columns.FromKey("POINT_BALANCE").Hidden          = false;
                e.Layout.Bands[0].Columns.FromKey("POINT_CTRL_ORG").Hidden         = false;
                e.Layout.Bands[0].Columns.FromKey("POINT").Hidden = false;
            }
        }
    }
Ejemplo n.º 5
0
    protected void doBindEstComment()
    {
        if (DT_EST_SELF_DATA == null)
        {
            getEstSelfData();
        }

        ugrdEstComment.Clear();
        ugrdEstComment.DataSource = DataTypeUtility.GetGroupByDataTable(DT_EST_SELF_DATA, new string[] { "SELF_TOP_ID", "SELF_TOP_NM" });
        ugrdEstComment.DataBind();
    }
Ejemplo n.º 6
0
    private void DataListBinding_P()
    {
        if (_tgt_pos_biz_use_yn.Equals("N"))
        {
            Biz_QuestionObjects questionObjects = new Biz_QuestionObjects(EST_ID, Q_OBJ_ID);
            Q_OBJ_NAME = questionObjects.Q_Obj_Name;
        }
        else
        {
            Q_OBJ_NAME = "직무평가";
        }

        Biz_QuestionSubjects questionSubjects = new Biz_QuestionSubjects();
        DataTable            dtSubject        = null;

        if (_tgt_pos_biz_use_yn.Equals("N"))
        {
            dtSubject = questionSubjects.GetQuestionSubject("", Q_OBJ_ID, "").Tables[0];

            double weight_total = DataTypeUtility.GetToDouble(dtSubject.Compute("SUM(WEIGHT)", "1 = 1"));

            for (int i = 1; i <= dtSubject.Rows.Count; i++)
            {
                dtSubject.Rows[i - 1]["WEIGHT"] = DataTypeUtility.GetToDouble(dtSubject.Rows[i - 1]["WEIGHT"]) / weight_total * 100;
            }
        }

        else
        {
            dtSubject = questionSubjects.GetQuestionSubject(COMP_ID, EST_ID, TGT_EMP_ID, "").Tables[0];

            double weight_total = DataTypeUtility.GetToDouble(dtSubject.Compute("SUM(WEIGHT)", "1 = 1"));

            for (int i = 1; i <= dtSubject.Rows.Count; i++)
            {
                dtSubject.Rows[i - 1]["NUM"]    = i;
                dtSubject.Rows[i - 1]["WEIGHT"] = DataTypeUtility.GetToDouble(dtSubject.Rows[i - 1]["WEIGHT"]) / weight_total * 100;
            }
        }

        DataTable dt = DataTypeUtility.GetGroupByDataTable(dtSubject, new string[] { "Q_DFN_ID" });

        string q_dfn_ids = DataTypeUtility.GetSplitString(dt, "Q_DFN_ID", ",");

        if (!q_dfn_ids.Equals(""))
        {
            DefineDataBinding_P(q_dfn_ids);
        }

        NoDefineDataBinding_P(dtSubject);
    }
Ejemplo n.º 7
0
    protected void ibnValidCheck_Click(object sender, ImageClickEventArgs e)
    {
        DataTable dtRelGrpData = GetRelGroupData(COMP_ID, EST_ID, ESTTERM_REF_ID);
        DataTable dtValid      = null;

        if (dtRelGrpData.Rows.Count == 0)
        {
            ltrScript.Text = JSHelper.GetAlertScript("상대그룹에 포함된 사원정보가 없습니다.");
            return;
        }

        dtValid = DataTypeUtility.GetGroupByDataTable(dtRelGrpData
                                                      , "TGT_EMP_ID"
                                                      , new string[] { "TGT_DEPT_ID", "TGT_EMP_ID" }
                                                      , "TGT_EMP_ID");

        dtValid = DataTypeUtility.FilterSortDataTable(dtValid, "CNT_TGT_EMP_ID > 1");

        int duplicate_emp_id_cnt = dtValid.Rows.Count;

        if (duplicate_emp_id_cnt > 0)
        {
            string temp = "\\r\\n";

            foreach (DataRow drRow in dtValid.Rows)
            {
                DataRow[] drArrTgt = dtRelGrpData.Select(string.Format("TGT_EMP_ID = {0}", drRow["TGT_EMP_ID"]));

                foreach (DataRow drRowTgt in drArrTgt)
                {
                    Biz_RelGroupInfos relGroupInfo = new Biz_RelGroupInfos(COMP_ID, DataTypeUtility.GetValue(drRowTgt["REL_GRP_ID"]));
                    Biz_EmpInfos      empInfo      = new Biz_EmpInfos(DataTypeUtility.GetToInt32(drRowTgt["TGT_EMP_ID"]));
                    temp += relGroupInfo.Rel_Grp_Name + " - " + empInfo.Emp_Name + "\\r\\n";
                }
            }

            ltrScript.Text = JSHelper.GetAlertScript(string.Format("{0}명의 사원이 상대그룹에 중복되어 있습니다.{1}", duplicate_emp_id_cnt, temp));
            return;
        }
        else
        {
            ltrScript.Text = JSHelper.GetAlertScript("상대그룹 설정에 오류가 없습니다.");
            return;
        }
    }
Ejemplo n.º 8
0
    private void DataListBinding()
    {
        Biz_QuestionObjects questionObjects = new Biz_QuestionObjects(EST_ID, Q_OBJ_ID);

        Q_OBJ_NAME = questionObjects.Q_Obj_Name;
        TOTALPOINT = 0;

        Biz_QuestionSubjects questionSubjects = new Biz_QuestionSubjects();
        DataSet ds = questionSubjects.GetQuestionSubject("", Q_OBJ_ID, "");

        if (ds.Tables.Count == 0)
        {
            return;
        }

        DataTable dt = DataTypeUtility.GetGroupByDataTable(ds.Tables[0], new string[] { "Q_DFN_ID" });

        string q_dfn_ids = DataTypeUtility.GetSplitString(dt, "Q_DFN_ID", ",");

        if (!q_dfn_ids.Equals(""))
        {
            DefineDataBinding(q_dfn_ids);
        }

        NoDefineDataBinding(ds);

        //POINT_ORG = Math.Round(TOTALPOINT * 0.01, 2);
        POINT_ORG = Math.Round(TOTALPOINT / 3, 1);

        if (POINT_ORG == 0)
        {
            ltrTotalPoint.Text = "미평가";
        }
        else
        {
            ltrTotalPoint.Text = POINT_ORG.ToString("###.0") + " / 100";
        }
    }
Ejemplo n.º 9
0
    private void DoBinding_Emp(int dept_ref_id)
    {
        string filter = string.Format(" TGT_DEPT_ID = {0} ", dept_ref_id);
        string sort   = "TGT_EMP_NAME";

        string[] groupBy = { "TGT_DEPT_ID"
                             , "TGT_DEPT_NAME"
                             , "TGT_EMP_ID"
                             , "TGT_EMP_NAME"
                             , "TGT_POS_CLS_ID"
                             , "TGT_POS_CLS_NAME"
                             , "TGT_POS_DUT_ID"
                             , "TGT_POS_DUT_NAME"
                             , "TGT_POS_GRP_ID"
                             , "TGT_POS_GRP_NAME"
                             , "TGT_POS_RNK_ID"
                             , "TGT_POS_RNK_NAME"
                             , "TGT_POS_KND_ID"
                             , "TGT_POS_KND_NAME"
                             , "DIRECTION_TYPE" };

        UltraWebGrid2.Columns[1].BaseColumnName = "TGT_EMP_NAME";
        UltraWebGrid2.Columns[2].BaseColumnName = "TGT_POS_KND_NAME";
        UltraWebGrid2.Columns[3].BaseColumnName = "TGT_POS_CLS_NAME";
        UltraWebGrid2.Columns[4].BaseColumnName = "TGT_POS_DUT_NAME";
        UltraWebGrid2.Columns[5].BaseColumnName = "TGT_EMP_ID";


        DataTable dtDeptEmp = DataTypeUtility.FilterSortDataTable(DataTypeUtility.GetGroupByDataTable(DataTypeUtility.FilterSortDataTable(DT_ESTTARGETMAP, filter)
                                                                                                      , groupBy)
                                                                  , ""
                                                                  , sort);

        UltraWebGrid2.DataSource = dtDeptEmp;
        UltraWebGrid2.DataBind();
    }
Ejemplo n.º 10
0
    protected void ibnRelGrpTgtMap_Click(object sender, ImageClickEventArgs e)
    {
        DataTable dtRelGrpData = GetRelGroupData(COMP_ID, EST_ID, ESTTERM_REF_ID);
        DataTable dtValid      = null;

        if (dtRelGrpData.Rows.Count == 0)
        {
            ltrScript.Text = JSHelper.GetAlertScript("상대그룹에 포함된 사원정보가 없습니다.");
            return;
        }

        dtValid = DataTypeUtility.GetGroupByDataTable(dtRelGrpData
                                                      , "TGT_EMP_ID"
                                                      , new string[] { "TGT_DEPT_ID", "TGT_EMP_ID" }
                                                      , "TGT_EMP_ID");

        int duplicate_emp_id_cnt = dtValid.Select("CNT_TGT_EMP_ID > 1").Length;

        if (duplicate_emp_id_cnt > 0)
        {
            ltrScript.Text = JSHelper.GetAlertScript(string.Format("{0}건의 부서 or 사원이 상대그룹으로 중복되어 있습니다.", duplicate_emp_id_cnt));
            return;
        }

        Biz_RelGroupTgtMaps relGrpTgtMap = new Biz_RelGroupTgtMaps();
        bool isOK = relGrpTgtMap.AddRelGroupEmpMap(dtRelGrpData);

        if (isOK)
        {
            ltrScript.Text = JSHelper.GetAlertScript("정상적으로 상대그룹 대상자를 반영하였습니다.");
        }
        else
        {
            ltrScript.Text = JSHelper.GetAlertScript("처리 중 오류가 발생하였습니다.");
        }
    }
Ejemplo n.º 11
0
    protected void doBind()
    {
        string dept_type_ref_id_list = "";

        for (int i = 0; i < DEPT_TYPE_REF_ID.Length; i++)
        {
            if (dept_type_ref_id_list.Length > 0)
            {
                dept_type_ref_id_list += ", ";
            }

            dept_type_ref_id_list += DEPT_TYPE_REF_ID[i];
        }

        Biz_PositionInfos bizPosInfo = new Biz_PositionInfos(POS_ID);


        //종으로 출력된 부서타입별 가중치를 횡으로 변환
        if (bizPosInfo.Position_Table_Name != null && bizPosInfo.Position_Table_Name.Trim().Length > 0)
        {
            Biz_Est_Pos_Weight bizEstPosWeight = new Biz_Est_Pos_Weight();
            DataTable          dt = bizEstPosWeight.Get_Est_Pos_Weight(POS_ID
                                                                       , bizPosInfo.Position_Table_Name
                                                                       , dept_type_ref_id_list
                                                                       , COMP_ID
                                                                       , ESTTERM_REF_ID
                                                                       , EST_ID);

            DataTable dt_result = DataTypeUtility.GetGroupByDataTable(dt, new string[] { "POS_ID", "POS_VALUE", "POS_VALUE_NAME" });

            if (dt_result.Rows.Count > 0)
            {
                for (int i = 0; i < DEPT_TYPE_REF_ID.Length; i++)
                {
                    int dept_type_ref_id = DEPT_TYPE_REF_ID[i];

                    string colName = string.Format("WEIGHT_{0}", dept_type_ref_id);
                    dt_result.Columns.Add(colName);


                    Biz_DeptTypeInfo bizDeptTypeInfo = new Biz_DeptTypeInfo(dept_type_ref_id);
                    string           dept_type_name  = bizDeptTypeInfo.Itype_name;



                    TemplatedColumn srcCol = (TemplatedColumn)UltraWebGrid1.Columns.FromKey("WEIGHT");
                    //컬럼 복사 후 추가
                    if (!UltraWebGrid1.Columns.Exists(colName))
                    {
                        UltraGridColumn hdCol = new UltraGridColumn();//히든 컬럼
                        hdCol.BaseColumnName = colName;
                        hdCol.Key            = colName;
                        hdCol.Hidden         = true;
                        UltraWebGrid1.Columns.Insert(srcCol.Index, hdCol);
                    }

                    if (!UltraWebGrid1.Columns.Exists("i" + colName))
                    {
                        TemplatedColumn tgtCol = new TemplatedColumn();//입력 컬럼
                        tgtCol.CopyFrom(srcCol);
                        tgtCol.BaseColumnName = "i" + colName;
                        tgtCol.Key            = "i" + colName;
                        tgtCol.Hidden         = false;
                        tgtCol.Width          = Unit.Pixel(80);
                        tgtCol.Header.Caption = string.Format("{0} 가중치", dept_type_name);

                        UltraWebGrid1.Columns.Insert(srcCol.Index, tgtCol);
                    }



                    DataTable dt_filtered_pos_weght = DataTypeUtility.FilterSortDataTable(dt, string.Format("DEPT_TYPE_REF_ID={0}", dept_type_ref_id));

                    if (dt_filtered_pos_weght.Rows.Count > 0)
                    {
                        for (int j = 0; j < dt_result.Rows.Count; j++)
                        {
                            string pos_value = DataTypeUtility.GetString(dt_result.Rows[j]["POS_VALUE"]);

                            DataTable dt_pos_weight = DataTypeUtility.FilterSortDataTable(dt_filtered_pos_weght, string.Format("POS_VALUE='{0}'", pos_value));

                            if (dt_pos_weight.Rows.Count > 0)
                            {
                                double pos_weight = DataTypeUtility.GetToDouble(dt_pos_weight.Rows[0]["WEIGHT"]);
                                dt_result.Rows[j][string.Format("WEIGHT_{0}", dept_type_ref_id)] = pos_weight;
                            }
                            else
                            {
                                dt_result.Rows[j][string.Format("WEIGHT_{0}", dept_type_ref_id)] = 0;
                            }
                        }
                    }
                }
            }


            UltraWebGrid1.Clear();
            UltraWebGrid1.DataSource = dt_result;
            UltraWebGrid1.DataBind();
        }
    }
Ejemplo n.º 12
0
    private void DoBinding_Dept()
    {
        MicroBSC.Integration.EST.Biz.Biz_Est_Data bizEstData = new MicroBSC.Integration.EST.Biz.Biz_Est_Data();
        DT_EST_DATA = bizEstData.GetEstData(COMP_ID
                                            , EST_ID
                                            , ESTTERM_REF_ID
                                            , ESTTERM_SUB_ID
                                            , ConESTTERM_STEP_ID
                                            , ConDIRECTION_TYPE);


        DEPT_REF_ID = -1;
        UltraWebGrid1.Clear();
        UltraWebGrid2.Clear();
        UltraWebGrid3.Clear();

        MicroBSC.Integration.EST.Biz.Biz_Est_Emp_Est_Target_Map bizEmpEstTargetMaps = new MicroBSC.Integration.EST.Biz.Biz_Est_Emp_Est_Target_Map();
        DT_ESTTARGETMAP = bizEmpEstTargetMaps.GetEmpEstTargetMap(COMP_ID
                                                                 , EST_ID
                                                                 , ESTTERM_REF_ID
                                                                 , ESTTERM_SUB_ID
                                                                 , ConESTTERM_STEP_ID
                                                                 , 0
                                                                 , 0
                                                                 , 0
                                                                 , 0).Tables[0];

        string[] groupBy = { "TGT_DEPT_ID"
                             , "TGT_DEPT_NAME"
                             , "TGT_EMP_ID"
                             , "TGT_EMP_NAME"
                             , "TGT_POS_CLS_ID"
                             , "TGT_POS_CLS_NAME"
                             , "TGT_POS_DUT_ID"
                             , "TGT_POS_DUT_NAME"
                             , "TGT_POS_GRP_ID"
                             , "TGT_POS_GRP_NAME"
                             , "TGT_POS_RNK_ID"
                             , "TGT_POS_RNK_NAME"
                             , "TGT_POS_KND_ID"
                             , "TGT_POS_KND_NAME"
                             , "DIRECTION_TYPE" };

        DataTable dtEst = DT_ESTTARGETMAP.Copy();
        DataTable dtTgt = DT_ESTTARGETMAP.Copy();

        DT_ESTTARGETMAP_GROUPBYEST = DataTypeUtility.GetGroupByDataTable(dtEst, groupBy);

        DT_ESTTARGETMAP_GROUPBYTGT = DataTypeUtility.GetGroupByDataTable(dtTgt, new string[] { "EST_DEPT_ID", "EST_EMP_ID", "DIRECTION_TYPE" });



        MicroBSC.Integration.MUL.Biz.Biz_Mul_Est_Emp bizMulEstEmp = new MicroBSC.Integration.MUL.Biz.Biz_Mul_Est_Emp();
        DataTable dtMulEstEmp = bizMulEstEmp.GetDeptMapping_DB(COMP_ID
                                                               , EST_ID
                                                               , ESTTERM_REF_ID
                                                               , ESTTERM_SUB_ID);



        // 평가자 목록 (EST_TYPE : EST)

        /*
         * DT_ESTEMP = bizMulEstEmp.GetEstEmp_DB(COMP_ID
         *                                   , EST_ID
         *                                   , ESTTERM_REF_ID
         *                                   , ESTTERM_SUB_ID
         *                                   , 0
         *                                   , "");
         */
        MicroBSC.Integration.COM.Biz.Biz_Rel_Dept_Emp bizRelDeptEmp = new MicroBSC.Integration.COM.Biz.Biz_Rel_Dept_Emp();
        DT_DEPTEMP = bizRelDeptEmp.GetRelDeptEmp_DB(0
                                                    , COMP_ID
                                                    , EST_ID
                                                    , ESTTERM_REF_ID
                                                    , ESTTERM_SUB_ID);

        DT_DEPTEMP.Columns.Add("TGT_DEPT_ID");
        DT_DEPTEMP.Columns.Add("TGT_EMP_ID");
        DT_DEPTEMP.Columns.Add("TGT_EMP_NAME");
        DT_DEPTEMP.Columns.Add("TGT_CLASS_CODE");
        DT_DEPTEMP.Columns.Add("TGT_CLS_NAME");
        DT_DEPTEMP.Columns.Add("TGT_GRP_CODE");
        DT_DEPTEMP.Columns.Add("TGT_GRP_NAME");
        DT_DEPTEMP.Columns.Add("TGT_RANK_CODE");
        DT_DEPTEMP.Columns.Add("TGT_RANK_NAME");
        DT_DEPTEMP.Columns.Add("TGT_DUTY_CODE");
        DT_DEPTEMP.Columns.Add("TGT_DUT_NAME");
        DT_DEPTEMP.Columns.Add("TGT_KIND_CODE");
        DT_DEPTEMP.Columns.Add("TGT_KND_NAME");



        //랜덤 지정/해제 버튼 보이기 상태
        setRndButtonVisible();



        //매핑 확정/취소 버튼 보이기상태
        if (CheckPossiblityCancelConfirm())
        {
            ibnAddEstData.Visible = true;
            ibnDelEstData.Visible = true;
        }
        else
        {
            ibnAddEstData.Visible = false;
            ibnDelEstData.Visible = false;
        }



        //바인드
        UltraWebGrid1.DataSource = dtMulEstEmp;
        UltraWebGrid1.DataBind();

        if (dtMulEstEmp.Rows.Count > 0)
        {
            ibnRandom.Enabled    = true;
            ibnDelRandom.Enabled = true;
        }
        else
        {
            ibnRandom.Enabled    = false;
            ibnDelRandom.Enabled = false;
        }
    }
Ejemplo n.º 13
0
    private void DoBinding_Emp(int dept_ref_id)
    {
        string filter = string.Format(" TGT_DEPT_ID = {0} ", dept_ref_id);
        string sort   = "TGT_EMP_NAME";

        string[] groupBy = { "TGT_DEPT_ID"
                             , "TGT_DEPT_NAME"
                             , "TGT_EMP_ID"
                             , "TGT_EMP_NAME"
                             , "TGT_POS_CLS_ID"
                             , "TGT_POS_CLS_NAME"
                             , "TGT_POS_DUT_ID"
                             , "TGT_POS_DUT_NAME"
                             , "TGT_POS_GRP_ID"
                             , "TGT_POS_GRP_NAME"
                             , "TGT_POS_RNK_ID"
                             , "TGT_POS_RNK_NAME"
                             , "TGT_POS_KND_ID"
                             , "TGT_POS_KND_NAME"
                             , "DIRECTION_TYPE" };

        UltraWebGrid2.Columns[1].BaseColumnName = "TGT_EMP_NAME";
        UltraWebGrid2.Columns[2].BaseColumnName = "TGT_POS_KND_NAME";
        UltraWebGrid2.Columns[3].BaseColumnName = "TGT_POS_CLS_NAME";
        UltraWebGrid2.Columns[4].BaseColumnName = "TGT_POS_DUT_NAME";
        UltraWebGrid2.Columns[5].BaseColumnName = "TGT_EMP_ID";


        //if (rdoEstTypeList.SelectedIndex.Equals(0))
        //{
        //    filter = string.Format(" EST_DEPT_ID = {0} ", dept_ref_id);
        //    sort = "EST_EMP_NAME";
        //    groupBy = new string[] { "EST_DEPT_ID"
        //                            ,"EST_DEPT_NAME"
        //                            ,"EST_EMP_ID"
        //                            ,"EST_EMP_NAME"
        //                            ,"EST_POS_CLS_ID"
        //                            ,"EST_POS_CLS_NAME"
        //                            ,"EST_POS_DUT_ID"
        //                            ,"EST_POS_DUT_NAME"
        //                            ,"EST_POS_GRP_ID"
        //                            ,"EST_POS_GRP_NAME"
        //                            ,"EST_POS_RNK_ID"
        //                            ,"EST_POS_RNK_NAME"
        //                            ,"EST_POS_KND_ID"
        //                            ,"EST_POS_KND_NAME" };

        //    UltraWebGrid2.Columns[1].BaseColumnName = "EST_EMP_NAME";
        //    UltraWebGrid2.Columns[2].BaseColumnName = "EST_POS_KND_NAME";
        //    UltraWebGrid2.Columns[3].BaseColumnName = "EST_POS_CLS_NAME";
        //    UltraWebGrid2.Columns[4].BaseColumnName = "EST_POS_DUT_NAME";
        //}



        DataTable dtDeptEmp = DataTypeUtility.FilterSortDataTable(DataTypeUtility.GetGroupByDataTable(DataTypeUtility.FilterSortDataTable(DT_ESTTARGETMAP, filter)
                                                                                                      , groupBy)
                                                                  , ""
                                                                  , sort);

        UltraWebGrid2.DataSource = dtDeptEmp;
        UltraWebGrid2.DataBind();



        //if (dtDeptEmp.Rows.Count > 0)
        //{
        //    ibnEmp.Enabled = true;
        //}
        //else
        //{
        //    ibnEmp.Enabled = false;
        //}
    }
Ejemplo n.º 14
0
    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))
        {
            ltrScript.Text = JSHelper.GetAlertScript("선택된 회사의 평가정보가 없습니다.");
            return;
        }



        Biz_Est_Data bizEstData = new Biz_Est_Data();

        if (DT_EST_DATA == null)
        {
            DT_EST_DATA = bizEstData.Get_Est_Data_Pos_Weight(comp_id
                                                             , est_id
                                                             , estterm_ref_id
                                                             , estterm_sub_id
                                                             , estterm_step_id);
        }



        DT_EST_DATA = DataTypeUtility.FilterSortDataTable(DT_EST_DATA, "TGT_DEPT_ID=10");//경영혁신팀만 조회
        if (DataTypeUtility.FilterSortDataTable(DT_EST_DATA, "DEPT_POINT IS NULL").Rows.Count > 0)
        {
            this.ltrScript.Text     = JSHelper.GetAlertScript("점수가 입력되지 않은 부서가 존재합니다.");
            iBtnApplyWeight.Visible = false;
        }



        Biz_Est_Pos_Weight bizEstPosWeight = new Biz_Est_Pos_Weight();
        DataTable          dt = bizEstPosWeight.Get_Est_Pos_Weight(comp_id
                                                                   , estterm_ref_id
                                                                   , est_id
                                                                   , 0
                                                                   , ""
                                                                   , ""
                                                                   , 0);

        if (dt.Rows.Count > 0)
        {
            dt     = DataTypeUtility.GetGroupByDataTable(dt, new string[] { "POS_ID" });
            POS_ID = DataTypeUtility.GetString(dt.Rows[0]["POS_ID"]);

            Biz_PositionInfos bizPosInfo = new Biz_PositionInfos(POS_ID);
            if (bizPosInfo.Position_Table_Name != null && bizPosInfo.Position_Table_Name.Trim().Length > 0)
            {
                DT_EST_POS_WEIGHT = bizEstPosWeight.Get_Est_Pos_Weight(POS_ID
                                                                       , bizPosInfo.Position_Table_Name
                                                                       , DEPT_TYPE_REF_ID_LIST
                                                                       , comp_id
                                                                       , estterm_ref_id
                                                                       , est_id);



                int    current_page = UltraWebGrid1.DisplayLayout.Pager.CurrentPageIndex;
                int    page_size    = UltraWebGrid1.DisplayLayout.Pager.PageSize;
                double page_cnt     = Math.Ceiling((double)DT_EST_DATA.Rows.Count / page_size);


                CURRENT_PAGE = current_page;
                PAGE_CNT     = DataTypeUtility.GetToInt32(page_cnt);


                DataTable dt_est_data = DT_EST_DATA.Copy();
                for (int i = 0; i < (current_page - 1) * page_size; i++)
                {
                    dt_est_data.Rows.RemoveAt(0);
                }


                UltraWebGrid1.Clear();
                UltraWebGrid1.DataSource = dt_est_data;
                UltraWebGrid1.DataBind();


                lblRowCount.Text = DT_EST_DATA.Rows.Count.ToString("#,##0");
            }
        }
    }
Ejemplo n.º 15
0
    protected void UltraWebGrid1_InitializeRow(object sender, RowEventArgs e)
    {
        string status_id       = DataTypeUtility.GetString(e.Row.Cells.FromKey("STATUS_ID").Value);
        string status_img_path = DataTypeUtility.GetString(e.Row.Cells.FromKey("STATUS_IMG_PATH").Value);
        string imgTag          = string.Format("<img src=\"{0}\" alt={1}>", status_img_path, status_id);

        e.Row.Cells.FromKey("STATUS_IMG").Value = imgTag;


        string popup_path = "";

        if (EST_TGT_TYPE.Equals("TGT"))
        {
            popup_path = "EST110500M1.ASPX";
        }
        else if (EST_TGT_TYPE.Equals("EST"))
        {
            popup_path = "EST110500M2.ASPX";
        }
        e.Row.Cells.FromKey("POPUP_PATH").Value = popup_path;



        if (EST_TGT_TYPE.Equals("EST"))
        {
            if (ESTTERM_STEP_ID == 2)
            {
                string    est_emp_id     = DataTypeUtility.GetString(e.Row.Cells.FromKey("EST_EMP_ID").Value);
                string    tgt_emp_id     = DataTypeUtility.GetString(e.Row.Cells.FromKey("TGT_EMP_ID").Value);
                string    filter         = string.Format("EST_EMP_ID={0} AND TGT_EMP_ID={1}", est_emp_id, tgt_emp_id);
                DataTable dt_q_sbj_point = DataTypeUtility.FilterSortDataTable(DT_QUESTION_SBJ_POINT, filter);

                if (dt_q_sbj_point.Rows.Count > 0)
                {
                    DataTable dt_groupBy_q_dfn = DataTypeUtility.GetGroupByDataTable(dt_q_sbj_point, "POINT", new string[] { "Q_DFN_ID" }, "POINT");

                    if (dt_groupBy_q_dfn.Rows.Count > 0)
                    {
                        double total_sum = 0;
                        for (int i = 0; i < dt_groupBy_q_dfn.Rows.Count; i++)
                        {
                            string q_dfn_id  = DataTypeUtility.GetString(dt_groupBy_q_dfn.Rows[i]["Q_DFN_ID"]);
                            double avg_point = DataTypeUtility.GetToDouble(dt_groupBy_q_dfn.Rows[i]["AVG_POINT"]);

                            e.Row.Cells.FromKey(q_dfn_id).Value = Math.Round(avg_point, 1);

                            total_sum += avg_point;
                        }

                        double total_avg = total_sum / dt_groupBy_q_dfn.Rows.Count;

                        e.Row.Cells.FromKey("Q_SBJ_POINT_AVG").Value = Math.Round(total_avg, 1);
                    }
                }
            }
            else if (ESTTERM_STEP_ID == 3)
            {
                if (DT_EST_DATA_1ST == null)
                {
                    int est_emp_id;
                    if (IS_ADMIN)
                    {
                        est_emp_id = 0;
                    }
                    else
                    {
                        est_emp_id = gUserInfo.Emp_Ref_ID;
                    }

                    Biz_Datas est_data = new Biz_Datas();
                    DT_EST_DATA_1ST = est_data.GetEstData(COMP_ID
                                                          , EST_ID
                                                          , ESTTERM_REF_ID
                                                          , ESTTERM_SUB_ID
                                                          , 2
                                                          , 0
                                                          , est_emp_id
                                                          , 0
                                                          , 0).Tables[0];//1차 평가 데이터
                }

                string    tgt_emp_id = DataTypeUtility.GetString(e.Row.Cells.FromKey("TGT_EMP_ID").Value);
                string    filter     = string.Format("TGT_EMP_ID={0}", tgt_emp_id);
                DataTable dt_filtered_est_data_1st = DataTypeUtility.FilterSortDataTable(DT_EST_DATA_1ST, filter);

                if (dt_filtered_est_data_1st.Rows.Count > 0)
                {
                    string est_dept_id_1st    = DataTypeUtility.GetString(dt_filtered_est_data_1st.Rows[0]["EST_DEPT_ID"]);
                    string est_emp_id_1st     = DataTypeUtility.GetString(dt_filtered_est_data_1st.Rows[0]["EST_EMP_ID"]);
                    double point_org_1st      = DataTypeUtility.GetToDouble(dt_filtered_est_data_1st.Rows[0]["POINT_ORG"]);
                    double point_ctrl_org_1st = DataTypeUtility.GetToDouble(dt_filtered_est_data_1st.Rows[0]["POINT_CTRL_ORG"]);



                    double point_org      = DataTypeUtility.GetToDouble(e.Row.Cells.FromKey("POINT_ORG").Value);
                    double point_ctrl_org = DataTypeUtility.GetToDouble(e.Row.Cells.FromKey("POINT_CTRL_ORG").Value);
                    double point_balance;

                    if (point_ctrl_org == 0)
                    {
                        point_org = point_ctrl_org_1st;
                        e.Row.Cells.FromKey("POINT_ORG").Value = point_org;

                        point_balance = 0;
                    }
                    else
                    {
                        point_balance = point_ctrl_org - point_org;
                    }



                    TemplatedColumn tc = (TemplatedColumn)UltraWebGrid1.Columns.FromKey("POINT_BALANCE");
                    Infragistics.WebUI.WebDataInput.WebNumericEdit ne = (Infragistics.WebUI.WebDataInput.WebNumericEdit)((CellItem)tc.CellItems[e.Row.Index]).FindControl("POINT_BALANCE");
                    ne.Value = point_balance;

                    e.Row.Cells.FromKey("EST_DEPT_ID_1ST").Value    = est_dept_id_1st;
                    e.Row.Cells.FromKey("EST_EMP_ID_1ST").Value     = est_emp_id_1st;
                    e.Row.Cells.FromKey("POINT_ORG_1ST").Value      = point_org_1st;
                    e.Row.Cells.FromKey("POINT_CTRL_ORG_1ST").Value = point_ctrl_org_1st;
                }
            }
        }
    }
Ejemplo n.º 16
0
    private void DataListBinding(DataTable dtPrjData)
    {
        Biz_QuestionObjects questionObjects = new Biz_QuestionObjects(EST_ID, Q_OBJ_ID);

        Q_OBJ_NAME = questionObjects.Q_Obj_Name;
        TOTALPOINT = 0;

        Biz_QuestionSubjects questionSubjects = new Biz_QuestionSubjects();
        DataSet ds = questionSubjects.GetQuestionSubject("", Q_OBJ_ID, "");

        if (ds.Tables.Count == 0)
        {
            return;
        }

        DataTable dt = DataTypeUtility.GetGroupByDataTable(ds.Tables[0], new string[] { "Q_DFN_ID" });

        string q_dfn_ids = DataTypeUtility.GetSplitString(dt, "Q_DFN_ID", ",");

        if (!q_dfn_ids.Equals(""))
        {
            DefineDataBinding(q_dfn_ids);
        }

        NoDefineDataBinding(ds);

        //MicroBSC.Integration.EST.Biz.Biz_Est_Data bizEstData = new MicroBSC.Integration.EST.Biz.Biz_Est_Data();
        //DataTable dtEstData = bizEstData.GetEstData(COMP_ID
        //                                          , EST_ID
        //                                          , ESTTERM_REF_ID
        //                                          , ESTTERM_SUB_ID
        //                                          , ESTTERM_STEP_ID
        //                                          , ""
        //                                          , EST_EMP_ID
        //                                          , TGT_EMP_ID);

        //MicroBSC.Integration.PRJ.Biz.Biz_Prj_Data bizPrjData = new MicroBSC.Integration.PRJ.Biz.Biz_Prj_Data();
        //DataTable dtPrjData = bizPrjData.Get_Prj_Data_List(PRJ_REF_ID
        //                                                  , 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
        //                                                  , "");


        //POINT_ORG = Math.Round(TOTALPOINT * 0.01, 2);
        //POINT_ORG = Math.Round(TOTALPOINT / 3, 1);

        POINT_ORG = DataTypeUtility.GetToDouble(dtPrjData.Rows[0]["POINT"]);

        if (POINT_ORG == 0)
        {
            ltrTotalPoint.Text = "미평가";
        }
        else
        {
            ltrTotalPoint.Text = POINT_ORG.ToString("###.0") + " / 100";
        }
    }
Ejemplo n.º 17
0
    /// <summary>
    /// 1. 우선 테이블을 뿌리고
    /// 2. 선을 그린다.
    /// </summary>
    private void BindMap()
    {
        divMapMain.InnerHtml = string.Empty;

        // 레벨별로 들어옴
        DataTable dtMap = BizUtility.GetEstIDTree(COMP_ID);
        DataSet   dsMap = new DataSet();

        dsMap.Tables.Add(dtMap);

        // Relation 걸고
        dsMap.Relations.Add("Relation", dsMap.Tables[0].Columns["EST_ID"], dsMap.Tables[0].Columns["UP_EST_ID"], false);

        // 선그리기용 HashTable --- EST_ID + TableName
        // 테이블의명을 알아야 선을 그릴 수 있으므로 테이블명을 저장하는 HashTable이 필요함.
        Hashtable htDraw = new Hashtable();

        string strRootTableName   = string.Empty;
        string strTableName       = string.Empty;
        string strTableNameFormat = "div_{0}_{1}";

        string strRoot = string.Empty;

        strRootTableName = strTableName;

        int intRootLevel = 0;

        // 레벨별 간격
        int intHeight = 15;

        // Root
        // Root 레벨도 일반 레벨과 크게 다른점 없이 Loop로 돌리면 되지만 Root에서
        // 차후에 유지/보수할 내용이 있을 것 같아서 따로 처리했음
        // GetRootHtml()
        DataRow[] drRoot = dtMap.Select(string.Format("LEVEL = '{0}'", intRootLevel.ToString()));

        if (drRoot.Length != 0)
        {
            strTableName          = string.Format(strTableNameFormat, intRootLevel.ToString(), intRootLevel.ToString());
            strRoot               = string.Format(GetRootHtml(), drRoot[0]["PADDING"].ToString(), strTableName, GetRootName(drRoot[0]["EST_NAME"].ToString()), drRoot[0]["HEADER_COLOR"].ToString());
            divMapMain.InnerHtml += strRoot;

            htDraw.Add(drRoot[0]["EST_ID"].ToString(), strTableName);
        }

        // 간격
        divMapMain.InnerHtml += string.Format("<table><tr style='height:{0}'><td></td></tr></table>", intHeight.ToString());

        // Root를 제외한 레벨DataTable
        DataTable dtLevel      = DataTypeUtility.GetGroupByDataTable(dtMap, new string[] { "LEVEL" });
        DataView  dvLevel1Over = dtLevel.DefaultView;

        dvLevel1Over.RowFilter = string.Format("LEVEL >= {0}", (intRootLevel + 1).ToString());
        dvLevel1Over.Sort      = "LEVEL";

        // 레벨별로 처리했음
        // 각 레벨별로 <tr><td><table>로 생성됨
        for (int j = 0; j < dvLevel1Over.Count; j++)
        {
            int       intCurrentLevel = DataTypeUtility.GetToInt32(dvLevel1Over[j]["LEVEL"]);
            DataRow[] drsLevel        = dtMap.Select(string.Format("LEVEL = '{0}'", intCurrentLevel.ToString()));

            divMapMain.InnerHtml += "<table border='0'><tr>";
            for (int i = 0; i < drsLevel.Length; i++)
            {
                strTableName = string.Format(strTableNameFormat, intCurrentLevel, i.ToString());
                string est_name        = GetRootName(drsLevel[i]["EST_NAME"].ToString());
                string est_id          = drsLevel[i]["EST_ID"].ToString();
                string status_style_id = GetItemName(drsLevel[i]["STATUS_STYLE_ID"].ToString());
                string est_sche_name   = GetItemName(drsLevel[i]["EST_SCHE_NAME"].ToString());
                string header_color    = "05";
                string weight_type     = drsLevel[i]["WEIGHT_TYPE"].ToString();

                string weight      = string.Empty;
                string weight_name = string.Empty;
                string scale_name  = GetScaleName(est_id);

                //if (!scale_name.Equals("-"))
                //{
                weight_name = GetWeightName(est_id, weight_type, ref weight);

                if (!weight.Equals("") && !scale_name.Equals(""))
                {
                    header_color = "01";
                }
                else if (!weight.Equals("") || !scale_name.Equals(""))
                {
                    header_color = "03";
                }
                //}
                //else
                //    scale_name = scale_name.Equals("-") ? "<center>" + scale_name + "</center>" : scale_name;


                // 레벨안의 Item의 간격 조정을 padding-left로 되며 EST_MAP_PADDING에서 Select
                divMapMain.InnerHtml += string.Format("<td style='padding-left:{0}px'>", DataTypeUtility.GetString(drsLevel[i]["PADDING"].ToString()));
                divMapMain.InnerHtml += string.Format(GetItemHtml()
                                                      , strTableName
                                                      , est_name
                                                      , (scale_name.Replace("&nbsp", "").Trim().Equals("")) ? "" : scale_name + "<br>"
                                                      , weight_name
                                                      , header_color);
                divMapMain.InnerHtml += "</td>";

                htDraw.Add(est_id, strTableName);
            }
            divMapMain.InnerHtml += "</tr></table>";

            // 간격
            divMapMain.InnerHtml += string.Format("<table><tr style='height:{0}'><td></td></tr></table>", intHeight.ToString());
        }

        // 2. 선 Draw(Javascript)
        DrawMapLine(dtMap, htDraw);
    }