示例#1
0
    public void SetKpiListExceptMine()
    {
        int iTxrUser   = gUserInfo.Emp_Ref_ID;
        int iComDeptId = 0;
        Biz_Bsc_Mbo_Kpi_Weight objBSC = new Biz_Bsc_Mbo_Kpi_Weight();

        // 나의지표             : 구분 -> N     부서코드 -> 0
        // 팀 지표              : 구분 -> Y     부서코드 -> 로그인사용자 부서
        // 전체                 : 구분 -> ''    부서코드 -> 0

        if (PageUtility.GetByValueDropDownList(ddlGubun) == "Y" || PageUtility.GetByValueDropDownList(ddlGubun) == "" || PageUtility.GetByValueDropDownList(ddlGubun) == "P")
        {
            iComDeptId = BizUtility.GetDeptID(gUserInfo.Emp_Ref_ID);
        }

        DataSet rDS = objBSC.GetMboListForWeight(PageUtility.GetIntByValueDropDownList(ddlEstTermInfo)
                                                 , PageUtility.GetByValueDropDownList(ddlGubun)
                                                 , txtKpiCode.Text.Trim()
                                                 , txtKpiName.Text.Trim()
                                                 , gUserInfo.Emp_Ref_ID
                                                 , iComDeptId);

        ugrdKpiList.Clear();
        ugrdKpiList.DataSource = rDS;
        ugrdKpiList.DataBind();
    }
示例#2
0
    public void setKpiData()
    {
        if (ddlEstTermInfo.Items.Count < 1)
        {
            PageUtility.AlertMessage("등록된 평가기간이 없습니다.");
            return;
        }

        Biz_Bsc_Mbo_Kpi_Weight objBSC = new Biz_Bsc_Mbo_Kpi_Weight();

        objBSC.IEmp_Ref_Id = (User.IsInRole(ROLE_ADMIN)) ? 0 : EMP_REF_ID;

        DataSet ds = objBSC.GetMyKpiList
                         (PageUtility.GetIntByValueDropDownList(ddlEstTermInfo)
                         , objBSC.IEmp_Ref_Id
                         , ""
                         , txtKPICode.Text
                         , txtKPIName.Text
                         , "Y"
                         , txtChamName.Text
                         , PageUtility.GetByValueDropDownList(ddlKpiGroupRefID)
                         , PageUtility.GetIntByValueDropDownList(ddlEstDept));

        ugrdKpiList.Clear();
        ugrdKpiList.DataSource = ds;
        ugrdKpiList.DataBind();

        lblCountRow.Text = "Total Rows : " + ds.Tables[0].Rows.Count.ToString();
    }
示例#3
0
    public void SetMyKpiList()
    {
        Biz_Bsc_Mbo_Kpi_Weight objBSC = new Biz_Bsc_Mbo_Kpi_Weight();
        DataSet rDs = objBSC.GetAllList(PageUtility.GetIntByValueDropDownList(ddlEstTermInfo), gUserInfo.Emp_Ref_ID);

        ugrdChildKpi.Clear();
        ugrdChildKpi.DataSource = rDs;
        ugrdChildKpi.DataBind();
    }
示例#4
0
    public void SetMyKpiList()
    {
        Biz_Bsc_Mbo_Kpi_Weight objBSC = new Biz_Bsc_Mbo_Kpi_Weight();
        DataSet rDs = objBSC.GetAllList(PageUtility.GetIntByValueDropDownList(ddlEstTermInfo), gUserInfo.Emp_Ref_ID);

        ugrdChildKpi.Clear();
        ugrdChildKpi.DataSource = rDs;
        ugrdChildKpi.DataBind();

        object[,] objRtn = objBSC.GetMboApprovalState(PageUtility.GetIntByValueDropDownList(ddlEstTermInfo), gUserInfo.Emp_Ref_ID);
        if (objRtn != null)
        {
            switch (objRtn[0, 0].ToString())
            {
            case "":     // 결재상태 없음
                addKpi.Visible = remKpi.Visible = udtKpi.Visible = true;
                break;

            case Biz_Type.app_status_nodraft:     // 결재상태 없음
                addKpi.Visible = remKpi.Visible = udtKpi.Visible = true;
                break;

            case Biz_Type.app_status_draft:     // 상신
                addKpi.Visible = remKpi.Visible = udtKpi.Visible = false;
                break;

            case Biz_Type.app_status_ondraft:     // 결재중
                addKpi.Visible = remKpi.Visible = udtKpi.Visible = false;
                break;

            case Biz_Type.app_status_return:     // 반려
                addKpi.Visible = remKpi.Visible = udtKpi.Visible = true;
                break;

            case Biz_Type.app_status_recall:     // 결재회수
                addKpi.Visible = remKpi.Visible = udtKpi.Visible = true;
                break;

            case Biz_Type.app_status_onmodify:     // 수정결재
                addKpi.Visible = remKpi.Visible = udtKpi.Visible = true;
                break;

            case Biz_Type.app_status_complete:     // 결재완료
                addKpi.Visible = remKpi.Visible = udtKpi.Visible = false;
                break;

            default:
                addKpi.Visible = remKpi.Visible = udtKpi.Visible = false;
                break;
            }
        }
        lblRowCount.Text = "&nbsp;" + ugrdChildKpi.Rows.Count.ToString() + "&nbsp;";
    }
示例#5
0
    public void SetWeight()
    {
        int itxr_user = gUserInfo.Emp_Ref_ID;

        UltraGridRow row;

        Biz_Bsc_Mbo_Kpi_Weight objBSC = new Biz_Bsc_Mbo_Kpi_Weight();

        DataTable dt = new DataTable();

        dt.Columns.Add("ESTTERM_REF_ID", typeof(int));
        dt.Columns.Add("KPI_REF_ID", typeof(int));
        dt.Columns.Add("WEIGHT", typeof(decimal));
        dt.Columns.Add("KPI_CLASS_REF_ID", typeof(string));

        for (int i = 0; i < ugrdMBO.Rows.Count; i++)
        {
            row = ugrdMBO.Rows[i];

            DataRow dr = dt.NewRow();
            dr["ESTTERM_REF_ID"] = DataTypeUtility.GetToInt32(row.Cells.FromKey("ESTTERM_REF_ID").Value);
            dr["KPI_REF_ID"]     = DataTypeUtility.GetToInt32(row.Cells.FromKey("KPI_REF_ID").Value);
            dr["WEIGHT"]         = DataTypeUtility.GetToDouble(row.Cells.FromKey("WEIGHT").Value);

            try
            {
                dr["KPI_CLASS_REF_ID"] = (row.Cells.FromKey("IS_TEAM_KPI").Value.ToString() == "Y" ? "SCO" : "PCO");
            }
            catch { }
            dt.Rows.Add(dr);
        }

        if (objBSC.UpdateMBOWeight(gUserInfo.Emp_Ref_ID, dt))
        {
            PageUtility.AlertMessage("처리하였습니다.");
        }
        else
        {
            PageUtility.AlertMessage("실패하였습니다.");
        }

        DoBinding();
    }
示例#6
0
    public void SetKpiListExceptMine()
    {
        int iTxrUser   = gUserInfo.Emp_Ref_ID;
        int iComDeptId = 0;
        Biz_Bsc_Mbo_Kpi_Weight objBSC = new Biz_Bsc_Mbo_Kpi_Weight();

        // 팀원이 속한 MBO지표  : 구분 -> N     부서코드 -> 로그인사용자 부서
        // 나의지표             : 구분 -> N     부서코드 -> 0
        // 팀 지표              : 구분 -> Y     부서코드 -> 로그인사용자 부서
        // 전체                 : 구분 -> ''    부서코드 -> 0

        if (PageUtility.GetByValueDropDownList(ddlGubun) == "Y" ||
            PageUtility.GetByValueDropDownList(ddlGubun) == "H")
        {
            iComDeptId = BizUtility.GetDeptID(gUserInfo.Emp_Ref_ID);
        }

        string gubun = PageUtility.GetByValueDropDownList(ddlGubun);

        if (gubun.Equals("H"))
        {
            gubun = "N";
        }

        DataSet rDs = objBSC.GetKpiListExceptMyKpi
                          (PageUtility.GetIntByValueDropDownList(ddlEstTermInfo)
                          , iTxrUser
                          , ""
                          , txtKpiCode.Text
                          , txtKpiName.Text
                          , "Y"
                          , ""
                          , iComDeptId
                          , ""
                          , gubun
                          , iTxrUser);

        ugrdKpiList.Clear();
        ugrdKpiList.DataSource = rDs;
        ugrdKpiList.DataBind();
    }
示例#7
0
    public void SetMBOKpi(string iType)
    {
        int             itxr_user = gUserInfo.Emp_Ref_ID;
        CheckBox        chk;
        UltraGridRow    row;
        TemplatedColumn col;
        UltraWebGrid    ugrdKpi = (iType == "ADD") ? ugrdKpiList : ugrdChildKpi;
        int             intRtn  = 0;
        int             cntRow  = 0;

        Biz_Bsc_Mbo_Kpi_Weight objBSC = new Biz_Bsc_Mbo_Kpi_Weight();

        for (int i = 0; i < ugrdKpi.Rows.Count; i++)
        {
            row = ugrdKpi.Rows[i];
            col = (TemplatedColumn)row.Band.Columns.FromKey("selchk");
            chk = (CheckBox)((CellItem)col.CellItems[row.BandIndex]).FindControl("cBox");

            if (chk.Checked)
            {
                try
                {
                    if (iType == "ADD")
                    {
                        intRtn += objBSC.UpdateData
                                      (int.Parse(row.Cells.FromKey("ESTTERM_REF_ID").Value.ToString())
                                      , itxr_user
                                      , int.Parse(row.Cells.FromKey("KPI_REF_ID").Value.ToString())
                                      , 0
                                      , "Y"
                                      , itxr_user);
                    }
                    else if (iType == "SET")
                    {
                        intRtn += objBSC.UpdateData
                                      (int.Parse(row.Cells.FromKey("ESTTERM_REF_ID").Value.ToString())
                                      , itxr_user
                                      , int.Parse(row.Cells.FromKey("KPI_REF_ID").Value.ToString())
                                      , decimal.Parse(row.Cells.FromKey("WEIGHT").Value.ToString())
                                      , "Y"
                                      , itxr_user);
                    }
                    else if (iType == "DEL")
                    {
                        intRtn += objBSC.DeleteData
                                      (int.Parse(row.Cells.FromKey("ESTTERM_REF_ID").Value.ToString())
                                      , int.Parse(row.Cells.FromKey("EMP_REF_ID").Value.ToString())
                                      , int.Parse(row.Cells.FromKey("KPI_REF_ID").Value.ToString())
                                      , itxr_user);
                    }
                }
                catch (Exception ex)
                {
                    PageUtility.AlertMessage(ex.Message);
                    return;
                }

                cntRow += 1;
            }
        }

        if (cntRow < 1)
        {
            PageUtility.AlertMessage("항목을 선택하세요.");
        }
        else
        {
            this.SetMyKpiList();
            this.SetKpiListExceptMine();
        }
    }
示例#8
0
    public void SetMBOKpi(string iType)
    {
        int             itxr_user = gUserInfo.Emp_Ref_ID;
        CheckBox        chk;
        UltraGridRow    row;
        TemplatedColumn col;
        UltraWebGrid    ugrdKpi = (iType == "ADD") ? ugrdKpiList : ugrdChildKpi;
        int             cntRow  = 0;

        Biz_Bsc_Mbo_Kpi_Weight objBSC = new Biz_Bsc_Mbo_Kpi_Weight();

        if (iType == "DEL")
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("ESTTERM_REF_ID", typeof(int));
            dt.Columns.Add("EMP_REF_ID", typeof(int));
            dt.Columns.Add("KPI_REF_ID", typeof(int));

            for (int i = 0; i < ugrdKpi.Rows.Count; i++)
            {
                row = ugrdKpi.Rows[i];
                col = (TemplatedColumn)row.Band.Columns.FromKey("selchk");
                chk = (CheckBox)((CellItem)col.CellItems[row.BandIndex]).FindControl("cBox");

                if (chk.Checked)
                {
                    DataRow dr = dt.NewRow();
                    dr["ESTTERM_REF_ID"] = DataTypeUtility.GetToInt32(row.Cells.FromKey("ESTTERM_REF_ID").Value);
                    dr["EMP_REF_ID"]     = DataTypeUtility.GetToInt32(row.Cells.FromKey("EMP_REF_ID").Value);
                    dr["KPI_REF_ID"]     = DataTypeUtility.GetToInt32(row.Cells.FromKey("KPI_REF_ID").Value);
                    dt.Rows.Add(dr);
                }
            }

            if (dt.Rows.Count > 0)
            {
                if (objBSC.DeleteMBOWeight(dt, gUserInfo.Emp_Ref_ID))
                {
                    this.SetMyKpiList();
                    this.SetKpiListExceptMine();
                    PageUtility.AlertMessage("삭제하였습니다.");
                }
                else
                {
                    PageUtility.AlertMessage("실패하였습니다.");
                }
                return;
            }
        }
        else
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("ESTTERM_REF_ID", typeof(int));
            dt.Columns.Add("KPI_REF_ID", typeof(int));
            dt.Columns.Add("WEIGHT", typeof(decimal));
            dt.Columns.Add("KPI_CLASS_REF_ID", typeof(string));

            for (int i = 0; i < ugrdKpi.Rows.Count; i++)
            {
                row = ugrdKpi.Rows[i];
                col = (TemplatedColumn)row.Band.Columns.FromKey("selchk");
                chk = (CheckBox)((CellItem)col.CellItems[row.BandIndex]).FindControl("cBox");

                if (chk.Checked)
                {
                    DataRow dr = dt.NewRow();
                    dr["ESTTERM_REF_ID"] = DataTypeUtility.GetToInt32(row.Cells.FromKey("ESTTERM_REF_ID").Value);
                    dr["KPI_REF_ID"]     = DataTypeUtility.GetToInt32(row.Cells.FromKey("KPI_REF_ID").Value);
                    if (iType == "ADD")
                    {
                        dr["WEIGHT"] = 0;
                    }
                    else if (iType == "SET")
                    {
                        dr["WEIGHT"] = DataTypeUtility.GetToDecimal(row.Cells.FromKey("WEIGHT").Value);
                    }
                    try
                    {
                        dr["KPI_CLASS_REF_ID"] = (row.Cells.FromKey("IS_TEAM_KPI").Value.ToString() == "Y" ? "SCO" : "PCO");
                    }
                    catch { }
                    dt.Rows.Add(dr);
                }
            }

            if (dt.Rows.Count > 0)
            {
                if (objBSC.UpdateMBOWeight(gUserInfo.Emp_Ref_ID
                                           , dt))
                {
                    this.SetMyKpiList();
                    this.SetKpiListExceptMine();
                    PageUtility.AlertMessage("처리하였습니다.");
                }
                else
                {
                    PageUtility.AlertMessage("실패하였습니다.");
                }
                return;
            }
        }

        if (cntRow < 1)
        {
            PageUtility.AlertMessage("항목을 선택하세요.");
        }
        else
        {
            this.SetMyKpiList();
            this.SetKpiListExceptMine();
            PageUtility.AlertMessage("삭제하였습니다.");
        }
    }
示例#9
0
    private void DoBinding()
    {
        if (ddlEstTerm.Items.Count < 1)
        {
            ltrScript.Text = JSHelper.GetAlertScript("등록된 평가기간이 없습니다.");
            return;
        }

        //가중치
        Biz_Bsc_Mbo_Kpi_Weight objBSC_weight = new Biz_Bsc_Mbo_Kpi_Weight();

        DT_KPI_WEIGHT = objBSC_weight.GetAllList(PageUtility.GetIntByValueDropDownList(ddlEstTerm), gUserInfo.Emp_Ref_ID).Tables[0];


        //월별 실적
        Biz_Bsc_Kpi_Info objBSC          = new Biz_Bsc_Kpi_Info();
        DataSet          dsMonthlyTarget = objBSC.GetMBOForWeight(PageUtility.GetIntByValueDropDownList(ddlEstTerm)
                                                                  , txtKpiCodeRight.Text.Trim()
                                                                  , txtKpiNameRight.Text.Trim()
                                                                  , txtChampionNameRight.Text.Trim()
                                                                  , (ddlComDeptRight.SelectedItem.Value == "" ? 0 : PageUtility.GetIntByValueDropDownList(ddlComDeptRight))
                                                                  , PageUtility.GetByValueDropDownList(ddlKpiGroup)
                                                                  , ""//MBO_TYPE
                                                                  , PageUtility.GetIntByValueDropDownList(ddlKpiCategoryTop)
                                                                  , PageUtility.GetIntByValueDropDownList(ddlKpiCategoryMid)
                                                                  , PageUtility.GetIntByValueDropDownList(ddlKpiCategoryLow)
                                                                  , gUserInfo.Emp_Ref_ID
                                                                  , User.IsInRole(ROLE_ADMIN));


        //KPI목록
        DataSet ds = objBSC.GetMBOForDeptKpi(PageUtility.GetIntByValueDropDownList(ddlEstTerm)
                                             , txtKpiCodeRight.Text.Trim()
                                             , txtKpiNameRight.Text.Trim()
                                             , txtChampionNameRight.Text.Trim()
                                             , PageUtility.GetByValueDropDownList(ddlKpiGroup)
                                             , (ddlComDeptRight.SelectedItem.Value == "" ? 0 : PageUtility.GetIntByValueDropDownList(ddlComDeptRight))
                                             , PageUtility.GetIntByValueDropDownList(ddlKpiCategoryTop)
                                             , PageUtility.GetIntByValueDropDownList(ddlKpiCategoryMid)
                                             , PageUtility.GetIntByValueDropDownList(ddlKpiCategoryLow)
                                             , gUserInfo.Emp_Ref_ID
                                             , (User.IsInRole(ROLE_ADMIN) == true ? 1 : 0)
                                             , this.IDEPT_ID);

        DataTable dt = addMonthlyTarget(dsMonthlyTarget.Tables[0], ds.Tables[0]);

        ugrdMBO.Clear();
        ugrdMBO.DataSource = dt;
        ugrdMBO.DataBind();



        int cntApprovalStatus = 0;

        for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
        {
            if (ds.Tables[0].Rows[i]["USE_YN"].ToString().Equals("Y"))
            {
                if (ds.Tables[0].Rows[i]["APPROVAL_STATUS"].ToString().Equals("N"))
                {
                    cntApprovalStatus++;
                }
            }
        }
        if (cntApprovalStatus == 0)
        {
            DRAFT_BTN_VISIBLE = true;
        }
        else
        {
            DRAFT_BTN_VISIBLE = false;
        }


        double weight = 0;
        double tmp;

        for (int i = 0; i < ugrdMBO.Rows.Count; i++)
        {
            tmp = DataTypeUtility.GetToDouble(ugrdMBO.Rows[i].Cells.FromKey("WEIGHT").Value);

            if (DataTypeUtility.GetString(ugrdMBO.Rows[i].Cells.FromKey("USE_YN").Value).Equals("N"))
            {
                continue;
            }

            if (tmp == (double)0)
            {
                weight = 0;
                break;
            }

            weight += DataTypeUtility.GetToDouble(ugrdMBO.Rows[i].Cells.FromKey("WEIGHT").Value);
        }
        if (weight != (double)100)
        {
            DRAFT_BTN_VISIBLE = false;
        }



        if (ds.Tables[0].Rows.Count == 0)
        {
            iBtnDraft.Visible = iBtnMoDraft.Visible = iBtnReDraft.Visible = iBtnReWrite.Visible = iBtnReqModify.Visible = false;
        }



        this.lblRowCnt.Text = ugrdMBO.Rows.Count.ToString();



        DataTable dtWeightApproval = objBSC.GetMBOForWeight_Approval(PageUtility.GetIntByValueDropDownList(ddlEstTerm)
                                                                     , gUserInfo.Emp_Ref_ID).Tables[0];

        if (dtWeightApproval.Rows.Count == 0)
        {
            this.IAPP_STATUS = "";
            this.IAPP_REF_ID = "0";
        }
        else
        {
            this.IAPP_STATUS = dtWeightApproval.Rows[0]["APP_STATUS"].ToString();
            this.IAPP_REF_ID = dtWeightApproval.Rows[0]["APP_REF_ID"].ToString();
        }
        string strImg = (this.IAPP_STATUS == "") ? "" : this.IAPP_STATUS;

        imgApprovalStatus.Src = Biz_Com_Approval_Info.GetAppImageUrl(strImg);
        imgApprovalStatus.Alt = Biz_Com_Approval_Info.GetAppImageText(strImg);
        if (IAPP_STATUS.Length > 0)
        {
            this.strApprovalStatus.Text = DataTypeUtility.GetString(dtWeightApproval.Rows[0]["APP_STATUS_NAME"]);
        }


        switch (this.IAPP_STATUS)
        {
        case "":     // 결재상태 없음
            iBtnDraft.Visible     = DRAFT_BTN_VISIBLE;
            iBtnMoDraft.Visible   = false;
            iBtnReDraft.Visible   = false;
            iBtnReWrite.Visible   = false;
            iBtnReqModify.Visible = false;
            break;


        case Biz_Type.app_status_nodraft:     // 결재상태 없음
            iBtnDraft.Visible     = DRAFT_BTN_VISIBLE;
            iBtnMoDraft.Visible   = false;
            iBtnReDraft.Visible   = false;
            iBtnReWrite.Visible   = false;
            iBtnReqModify.Visible = false;
            break;


        case Biz_Type.app_status_draft:     // 상신
            iBtnDraft.Visible     = false;
            iBtnMoDraft.Visible   = false;
            iBtnReDraft.Visible   = false;
            iBtnReWrite.Visible   = false;
            iBtnReqModify.Visible = false;
            imgApprovalStatus.Src = "../images/draft/sta_dft.gif";

            setVisibleForDraft(false);
            break;


        case Biz_Type.app_status_ondraft:     // 결재중
            iBtnDraft.Visible     = false;
            iBtnMoDraft.Visible   = false;
            iBtnReDraft.Visible   = false;
            iBtnReWrite.Visible   = false;
            iBtnReqModify.Visible = false;
            imgApprovalStatus.Src = "../images/draft/sta_oft.gif";

            setVisibleForDraft(false);
            break;


        case Biz_Type.app_status_return:     // 반려
            iBtnDraft.Visible     = false;
            iBtnMoDraft.Visible   = false;
            iBtnReDraft.Visible   = DRAFT_BTN_VISIBLE;
            iBtnReWrite.Visible   = false;
            iBtnReqModify.Visible = false;
            imgApprovalStatus.Src = "../images/draft/sta_rft.gif";

            setVisibleForDraft(true);
            break;


        case Biz_Type.app_status_recall:     // 결재회수
            iBtnDraft.Visible     = false;
            iBtnMoDraft.Visible   = false;
            iBtnReDraft.Visible   = false;
            iBtnReWrite.Visible   = DRAFT_BTN_VISIBLE;
            iBtnReqModify.Visible = false;
            imgApprovalStatus.Src = "../images/draft/sta_aft.gif";

            setVisibleForDraft(true);
            break;


        case Biz_Type.app_status_onmodify:     // 수정결재
            iBtnDraft.Visible     = false;
            iBtnMoDraft.Visible   = DRAFT_BTN_VISIBLE;
            iBtnReDraft.Visible   = false;
            iBtnReWrite.Visible   = false;
            iBtnReqModify.Visible = false;
            imgApprovalStatus.Src = "../images/draft/sta_mft.gif";

            setVisibleForDraft(true);
            break;


        case Biz_Type.app_status_complete:     // 결재완료
            iBtnDraft.Visible     = false;
            iBtnMoDraft.Visible   = false;
            iBtnReDraft.Visible   = false;
            iBtnReWrite.Visible   = false;
            iBtnReqModify.Visible = DRAFT_BTN_VISIBLE;
            iBtnReqModify.Visible = true;
            imgApprovalStatus.Src = "../images/draft/sta_cft.gif";

            setVisibleForDraft(false);
            break;


        default:
            iBtnDraft.Visible     = false;
            iBtnMoDraft.Visible   = false;
            iBtnReDraft.Visible   = false;
            iBtnReqModify.Visible = false;
            iBtnReWrite.Visible   = false;
            break;
        }
    }