示例#1
0
        protected void GridViewRequirement_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            GridView gridView = sender as GridView;

            if (gridView == null)
            {
                return;
            }

            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                BindDropDownList(e.Row);
            }

            if (e.Row.RowType != DataControlRowType.DataRow)
            {
                return;
            }

            PmsRequirement dataItem = (PmsRequirement)e.Row.DataItem;

            if (dataItem == null)
            {
                return;
            }

            // 如果SD栏位有值则取SD栏位,否则取SE栏位当做SD,以此类推取QA栏位
            string sd = dataItem.Sd.Trim();

            if (string.IsNullOrEmpty(sd))
            {
                if (string.IsNullOrEmpty(dataItem.Se))
                {
                    sd = dataItem.Qa;
                }
                else
                {
                    sd = dataItem.Se;
                }
            }

            if (sd.ToUpper().Trim() != "TBD")
            {
                Label labelSd = (Label)e.Row.FindControl("labelSd");
                labelSd.Text = sd;
            }
            else
            {
                Label labelSd = (Label)e.Row.FindControl("labelSd");
                labelSd.Text = "";
            }

            if (e.Row.RowIndex == gridView.EditIndex)
            {
                DropDownList dropDownListStatus = (DropDownList)e.Row.FindControl("DropDownListStatus");
                dropDownListStatus.SelectedValue = dataItem.Status;
            }
        }
示例#2
0
 public IList <PmsRequirement> GetPmsRequirementByWeekPeriod(PmsRequirement pmsRequirement)
 {
     try
     {
         return(m_PMSSqlConnection.QueryForList <PmsRequirement>("SelectPmsRequirement", pmsRequirement));
     }
     catch (Exception ex)
     {
         m_Logger.Error("PmsRequirementBiz/SelectPmsRequirement:" + ex.ToString());
         return(null);
     }
 }
示例#3
0
        private void BindGrid()
        {
            PmsRequirementBiz pmsRequirementBiz = new PmsRequirementBiz();
            PmsRequirement    pmsRequirement    = new PmsRequirement();

            pmsRequirement.RequirementPeriod  = DropDownListWeekPeriod.SelectedValue;
            GridViewRequirement.EmptyDataText = "No Data.";
            IList <PmsRequirement> pmsRequirementList = pmsRequirementBiz.GetPmsRequirementByWeekPeriod(pmsRequirement);

            GridViewRequirement.DataSource = pmsRequirementList;
            GridViewRequirement.DataBind();
        }
示例#4
0
        public bool UpdatePmsRequirement(PmsRequirement pmsRequirement)
        {
            bool result = false;

            try
            {
                m_PMSSqlConnection.Update("UpdatePmsRequirement", pmsRequirement);
                result = true;
            }
            catch (Exception ex)
            {
                m_Logger.Error("PmsRequirementBiz/UpdatePmsRequirement:" + ex.ToString());
            }
            return(result);
        }
示例#5
0
 public IList <PmsRequirement> GetPmsHeadReleased(PmsRequirement pmsRequirement)
 {
     try
     {
         if (pmsRequirement.UserDept.Contains("AIC"))
         {
             pmsRequirement.UserDept = "AIC%";
         }
         return(m_PMSSqlConnection.QueryForList <PmsRequirement>("SelectPmsHeadReleased", pmsRequirement));
     }
     catch (Exception ex)
     {
         m_Logger.Error("PmsRequirementBiz/SelectPmsRequirement:" + ex.ToString());
         return(null);
     }
 }
示例#6
0
        protected void GridViewRequirement_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            int    currentRowIndex = int.Parse(e.CommandArgument.ToString());
            string commandName     = e.CommandName;

            switch (commandName)
            {
            case "Edit":
                GridViewRequirement.EditIndex = currentRowIndex;
                BindGrid();
                break;

            case "Update":
                TextBox textBoxCRId = (TextBox)GridViewRequirement.Rows[currentRowIndex].FindControl("textBoxCRId");
                string  crId        = Server.HtmlDecode(textBoxCRId.Text).Trim();
                if (!CheckUpdate(crId))
                {
                    return;
                }
                DropDownList      dropDownListStatus = (DropDownList)GridViewRequirement.Rows[currentRowIndex].FindControl("DropDownListStatus");
                string            status             = Server.HtmlDecode(dropDownListStatus.SelectedValue).Trim();
                int               serial             = int.Parse(GridViewRequirement.DataKeys[currentRowIndex]["Serial"].ToString());
                PmsRequirementBiz pmsRequirementBiz  = new PmsRequirementBiz();
                PmsRequirement    pmsRequirement     = new PmsRequirement();
                pmsRequirement.Serial       = serial;
                pmsRequirement.CrId         = crId;
                pmsRequirement.Status       = status;
                pmsRequirement.Maintaindate = System.DateTime.Now;
                pmsRequirement.Maintainuser = WSC.GlobalDefinition.Cookie_LoginUser.Replace(" ", ".");
                if (!pmsRequirementBiz.UpdatePmsRequirement(pmsRequirement))
                {
                    Msgbox("Update failed!");
                    return;
                }
                GridViewRequirement.EditIndex = -1;
                BindGrid();
                break;

            case "Cancel":
                GridViewRequirement.EditIndex = -1;
                BindGrid();
                break;

            default:
                break;
            }
        }
示例#7
0
 public IList <PmsRequirement> GetPmsRequirement(PmsRequirement pmsRequirement)
 {
     try
     {
         pmsRequirement = SetPmsRequirementStatus(pmsRequirement);
         if (pmsRequirement.Status == "Released")
         {
             return(GetPmsHeadReleased(pmsRequirement));
         }
         return(m_PMSSqlConnection.QueryForList <PmsRequirement>("SelectPmsRequirement", pmsRequirement));
     }
     catch (Exception ex)
     {
         m_Logger.Error("PmsRequirementBiz/SelectPmsRequirement:" + ex.ToString());
         return(null);
     }
 }
示例#8
0
 public bool InsertPmsRequirement(IList <PmsRequirement> listPmsRequirement, IList <PmsHeadCount> listPmsHeadCount, IList <PmsHeadCountByContent> listPmsHeadCountByContent)
 {
     try
     {
         m_PMSSqlConnection.BeginTransaction();
         if (listPmsRequirement.Count > 0)
         {
             PmsRequirement pmsRequirement = listPmsRequirement.FirstOrDefault();
             m_PMSSqlConnection.Delete("DeletePmsRequirement", pmsRequirement);
         }
         if (listPmsHeadCount.Count > 0)
         {
             PmsHeadCount pmsHeadCount = listPmsHeadCount.FirstOrDefault();
             m_PMSSqlConnection.Delete("DeletePmsHeadCount", pmsHeadCount);
         }
         if (listPmsHeadCountByContent.Count > 0)
         {
             PmsHeadCountByContent pmsHeadCountByContent = listPmsHeadCountByContent.FirstOrDefault();
             m_PMSSqlConnection.Delete("DeletePmsHeadCountByContent", pmsHeadCountByContent);
         }
         foreach (var pmsRequirement in listPmsRequirement)
         {
             m_PMSSqlConnection.Insert("InsertPmsRequirement", pmsRequirement);
         }
         foreach (var pmsHeadCount in listPmsHeadCount)
         {
             m_PMSSqlConnection.Insert("InsertPmsHeadCount", pmsHeadCount);
         }
         foreach (var pmsHeadCountByContent in listPmsHeadCountByContent)
         {
             m_PMSSqlConnection.Insert("InsertPmsHeadCountByContent", pmsHeadCountByContent);
         }
         m_PMSSqlConnection.CommitTransaction();
         return(true);
     }
     catch (Exception ex)
     {
         m_PMSSqlConnection.RollBackTransaction();
         m_Logger.Error("PmsRequirementBiz/InsertPmsRequirement:" + ex.ToString());
         return(false);
     }
 }
示例#9
0
        protected void GridView_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            try
            {
                int rowIndex = e.RowIndex;
                int serial   = int.Parse(GridViewRequirement.DataKeys[rowIndex]["Serial"].ToString());

                PmsRequirementBiz pmsRequirementBiz = new PmsRequirementBiz();
                PmsRequirement    pmsRequirement    = new PmsRequirement();
                pmsRequirement.Vid          = "PZ";
                pmsRequirement.Serial       = serial;
                pmsRequirement.Maintaindate = System.DateTime.Now;
                pmsRequirement.Maintainuser = WSC.GlobalDefinition.Cookie_LoginUser.Replace(" ", ".");
                pmsRequirementBiz.DeletePmsRequirement(pmsRequirement);

                BindGrid();
            }
            catch
            {
                Msgbox("Delete failure!");
            }
        }
示例#10
0
        private void BindGrid()
        {
            PmsRequirementBiz pmsRequirementBiz = new PmsRequirementBiz();
            PmsRequirement    pmsRequirement    = new PmsRequirement();

            pmsRequirement.YearAndMonth      = Month;
            pmsRequirement.RequirementPeriod = Week;
            pmsRequirement.UserDept          = UserDept;
            pmsRequirement.Status            = Status;

            GridViewRequirement.EmptyDataText = "No Data.";
            IList <PmsRequirement> pmsRequirementList = pmsRequirementBiz.GetPmsRequirement(pmsRequirement);

            if (pmsRequirementList != null)
            {
                foreach (var requirement in pmsRequirementList)
                {
                    requirement.Status = Status;
                }
            }
            GridViewRequirement.DataSource = pmsRequirementList;
            GridViewRequirement.DataBind();
        }
示例#11
0
        private PmsRequirement GetPmsRequirement(DataRow dtExcelRows, string role, string manpower)
        {
            PmsRequirement pmsRequirement = new PmsRequirement();

            pmsRequirement.Vid               = "PM";
            pmsRequirement.YearAndMonth      = DropDownListYearMonth.SelectedValue.Trim();
            pmsRequirement.RequirementPeriod = DropDownListWeekPeriod.SelectedValue.Trim();
            pmsRequirement.UserDept          = dtExcelRows["Team"].ToString().Trim();
            pmsRequirement.CrId              = dtExcelRows["CR No"].ToString().Trim();
            pmsRequirement.CrName            = dtExcelRows["Item"].ToString().Trim();
            pmsRequirement.Type              = dtExcelRows["System Type"].ToString().Trim();
            pmsRequirement.System            = dtExcelRows["System"].ToString().Trim();
            pmsRequirement.Pm           = dtExcelRows["PM/CE"].ToString().Trim();
            pmsRequirement.Status       = dtExcelRows["Status"].ToString().Trim();
            pmsRequirement.Createdate   = System.DateTime.Now;
            pmsRequirement.Createuser   = WSC.GlobalDefinition.Cookie_LoginUser.Replace(" ", ".");
            pmsRequirement.Maintaindate = System.DateTime.Now;
            pmsRequirement.Maintainuser = WSC.GlobalDefinition.Cookie_LoginUser.Replace(" ", ".");

            UpdatePmsRequirement(pmsRequirement, role, manpower);

            return(pmsRequirement);
        }
示例#12
0
        private PmsRequirement SetPmsRequirementStatus(PmsRequirement pmsRequirement)
        {
            if (pmsRequirement == null || pmsRequirement.Status == null)
            {
                return(new PmsRequirement());
            }
            switch (pmsRequirement.Status.Trim().ToUpper())
            {
            case "NEW":
                pmsRequirement.Status = "Scheduled";
                break;

            case "ON-GOING":
                pmsRequirement.Status = "Ongoing";
                break;

            case "QUEUE":
                pmsRequirement.Status = "Deferred";
                break;

            default: break;
            }
            return(pmsRequirement);
        }
示例#13
0
        private PmsRequirement UpdatePmsRequirement(PmsRequirement pmsRequirement, string role, string manpower)
        {
            if (manpower.Trim() != string.Empty)
            {
                switch (role)
                {
                case "SD":
                    pmsRequirement.Sd = pmsRequirement.Sd + manpower + ";";
                    break;

                case "SE":
                    pmsRequirement.Se = pmsRequirement.Se + manpower + ";";
                    break;

                case "QA":
                    pmsRequirement.Qa = pmsRequirement.Qa + manpower + ";";
                    break;

                default:
                    break;
                }
            }
            return(pmsRequirement);
        }
示例#14
0
        private IList <PmsRequirement> GetPmsRequirementList(DataSet dsExcel)
        {
            IList <PmsRequirement> listPmsRequirement = new List <PmsRequirement>();
            DataTable dtExcel = new DataTable();

            dtExcel = dsExcel.Tables["CRDATA"];
            PmsRequirement pmsRequirement = new PmsRequirement();

            for (int k = 1; k < dtExcel.Rows.Count; k++)
            {
                // A列无值表示已无数据,读取结束
                string userDept = dtExcel.Rows[k]["Team"].ToString().Trim();
                if (userDept == string.Empty)
                {
                    continue;
                }

                string crIdThis   = dtExcel.Rows[k]["CR No"].ToString().Trim();
                string crNameThis = dtExcel.Rows[k]["Item"].ToString().Trim();
                string role       = dtExcel.Rows[k]["Role"].ToString().Trim();
                string manpower   = dtExcel.Rows[k]["Manpower"].ToString().Trim();

                if (k == 1)
                {
                    pmsRequirement = GetPmsRequirement(dtExcel.Rows[k], role, manpower);
                }

                // 从第二行开始,判断上一行是否为同一个CR,若相同,则这一行不处理
                if (k >= 2)
                {
                    string crIdPre   = dtExcel.Rows[k - 1]["CR No"].ToString().Trim();
                    string crNamePre = dtExcel.Rows[k - 1]["Item"].ToString().Trim();

                    // CR ID 相同且CR Name相同或者CR ID为空且 CR Name也为空或者CR ID为空且 CR Name相同
                    if ((crIdThis == crIdPre && crNameThis == crNamePre) ||
                        (crIdThis == string.Empty && crNameThis == string.Empty ||
                         (crIdThis == string.Empty && crNameThis == crNamePre))
                        )
                    {
                        pmsRequirement = UpdatePmsRequirement(pmsRequirement, role, manpower);
                    }
                    else
                    {
                        pmsRequirement.Sd = pmsRequirement.Sd.TrimEnd(';');
                        pmsRequirement.Se = pmsRequirement.Se.TrimEnd(';');
                        pmsRequirement.Qa = pmsRequirement.Qa.TrimEnd(';');
                        listPmsRequirement.Add(pmsRequirement);
                        pmsRequirement = GetPmsRequirement(dtExcel.Rows[k], role, manpower);
                    }

                    // 最后一笔资料,在本次循环加上
                    if (k == dtExcel.Rows.Count - 1)
                    {
                        pmsRequirement.Sd = pmsRequirement.Sd.TrimEnd(';');
                        pmsRequirement.Se = pmsRequirement.Se.TrimEnd(';');
                        pmsRequirement.Qa = pmsRequirement.Qa.TrimEnd(';');
                        listPmsRequirement.Add(pmsRequirement);
                    }
                }
            }
            return(listPmsRequirement);
        }