コード例 #1
0
        private void LoadAssetsForOrder()
        {
            bool    boolAllTaskCompleted = true;
            DataSet dsAssetSelection     = oAssetOrder.GetAssetOrderAssetSelection(Int32.Parse(hdnOrderId.Value));

            dsAssetSelection.Tables[0].Columns.Add("Comments", System.Type.GetType("System.String"));
            dsAssetSelection.Tables[0].Columns.Add("WMTaskStatus", System.Type.GetType("System.Int32"));
            foreach (DataRow dr in dsAssetSelection.Tables[0].Rows)
            {
                string strComments    = "";
                bool   boolTaskStatus = false;
                boolTaskStatus = oWMServiceTasks.IsWMServiceTaskCompleted(
                    intRequest, intService, intItem, intNumber,
                    Int32.Parse(dr["AssetId"].ToString()), ref strComments);

                if (boolTaskStatus == false)
                {
                    boolAllTaskCompleted = false;
                }

                dr["WMTaskStatus"] = (boolTaskStatus?"1":"0");
                dr["Comments"]     = strComments;
            }

            //if (boolAllTaskCompleted == true)
            //{
            //    btnComplete.Enabled = true;
            //    btnComplete.Visible = true;
            //}
            //else
            //    btnComplete.Visible = false;

            dsAssetSelection.Tables[0].DefaultView.Sort = "AssetSerial";
            dlAssetList.DataSource = dsAssetSelection.Tables[0];
            dlAssetList.DataBind();
        }
コード例 #2
0
        protected void PopulateAvailableAssetsSummary()
        {
            trAssetsSummary.Style.Add("Display", "inline");

            intModel = Int32.Parse(ddlModel.SelectedValue);

            dlAssetsSummary.DataSource = null;
            dlAssetsSummary.DataBind();
            dlAssetsSelection.DataSource = null;
            dlAssetsSelection.DataBind();

            lblTotalAssetsSelected.Text = "0";

            DataTable dtAssets = null;
            DataSet   dsAssets = null;

            dsAssets = oAsset.GetAssetsAll(intModel, (int)AssetStatus.Available);
            dtAssets = dsAssets.Tables[0];

            if (Int32.Parse(rblOrderType.SelectedValue) == (int)AssetOrderType.Movement)
            {
                dsAssets = oAsset.GetAssetsAll(intModel, (int)AssetStatus.InUse);
                if (dtAssets != null)
                {
                    foreach (DataRow dr in dsAssets.Tables[0].Rows)
                    {
                        dtAssets.ImportRow(dr);
                    }
                }
                else
                {
                    dtAssets = dsAssets.Tables[0];
                }
            }

            //Remove assets from selection -where previous request is in process for the assets
            if (dtAssets != null)
            {
                DataSet   dsWIPAssets = oAssetOrder.GetActiveAssetOrderAssets(intModel);
                DataTable dtWIPAssets = dsWIPAssets.Tables[0];
                foreach (DataRow dr in dtWIPAssets.Rows)
                {
                    DataRow[] drAssestsToRemove = null;
                    string    strFilterCriteriaRemove;
                    strFilterCriteriaRemove = "AssetId =" + dr["AssetId"].ToString();
                    drAssestsToRemove       = dtAssets.Select(strFilterCriteriaRemove);
                    foreach (DataRow drTmp in drAssestsToRemove)
                    {
                        dtAssets.Rows.Remove(drTmp);
                    }
                }
            }

            string[]  strColumnNames = { "LocationId", "Location", "ClassId", "Class", "EnvironmentId", "Environment" };
            string    strSort        = " Location,Class,Environment ";
            DataTable dtSummary      = dtAssets.DefaultView.ToTable(true, strColumnNames);

            dtSummary.Columns.Add("Available", Type.GetType("System.Int32"));
            dtSummary.Columns.Add("Selected", Type.GetType("System.Int32"));
            dtSummary.Columns.Add("FilterCriteria", Type.GetType("System.String"));

            foreach (DataRow drSummary in dtSummary.Rows)
            {
                DataRow[] drAvailables      = null;
                string    strFilterCriteria = "";
                strFilterCriteria = strFilterCriteria + (drSummary["LocationId"] == DBNull.Value ? " LocationId IS Null" : (drSummary["LocationId"].ToString() == "" ? " LocationId =''" : "LocationId =" + drSummary["LocationId"].ToString()));
                strFilterCriteria = strFilterCriteria + " AND ";
                strFilterCriteria = strFilterCriteria + (drSummary["ClassId"] == DBNull.Value ? " ClassId IS Null" : (drSummary["ClassId"].ToString() == "" ? " ClassId =''" : " ClassId =" + drSummary["ClassId"].ToString()));
                strFilterCriteria = strFilterCriteria + " AND ";
                strFilterCriteria = strFilterCriteria + (drSummary["EnvironmentId"] == DBNull.Value ? " EnvironmentId IS Null" : (drSummary["EnvironmentId"].ToString() == "" ? " EnvironmentId =''" : " EnvironmentId =" + drSummary["EnvironmentId"].ToString()));
                strFilterCriteria = "( " + strFilterCriteria + " )";

                drAvailables                = dtAssets.Select(strFilterCriteria);
                drSummary["Available"]      = drAvailables.Length;
                drSummary["Selected"]       = 0;
                drSummary["FilterCriteria"] = strFilterCriteria;

                if (hdnOrderId.Value != "" && hdnOrderId.Value != "0") //Get the selected asset count
                {
                    foreach (DataRow drAvailable in drAvailables)
                    {
                        DataSet dsSelected = oAssetOrder.GetAssetOrderAssetSelection(Int32.Parse(hdnOrderId.Value), Int32.Parse(drAvailable["AssetId"].ToString()));
                        if (dsSelected.Tables[0].Rows.Count > 0)
                        {
                            drSummary["Selected"] = Int32.Parse(drSummary["Selected"].ToString()) + 1;
                            int intTotalAssetsSelected = Int32.Parse(lblTotalAssetsSelected.Text) + 1;
                            lblTotalAssetsSelected.Text = intTotalAssetsSelected.ToString();
                        }
                    }
                }
            }
            dtSummary.DefaultView.Sort = strSort;
            dlAssetsSummary.DataSource = dtSummary;
            dlAssetsSummary.DataBind();
        }
コード例 #3
0
        protected void SaveRequest(int intStatus)
        {
            intOrderType = Int32.Parse(rblASEOrderType.SelectedValue);
            int intClusterType = 0;

            if (hdnRequestId.Value == "")
            {
                hdnRequestId.Value = "0";
            }
            if (hdnItemId.Value == "")
            {
                hdnItemId.Value = "0";
            }
            if (hdnNumber.Value == "")
            {
                hdnNumber.Value = "0";
            }
            if (rblClusterTypes.SelectedValue == "1")
            {
                intClusterType = Int32.Parse(rblClusterTypes.SelectedValue);
            }
            if (txtStorageAmt.Text == "")
            {
                txtStorageAmt.Text = "0.00";
            }


            intModel = Int32.Parse(ddlModel.SelectedValue);


            foreach (TreeNode oNode in tvParent.Nodes)
            {
                if (oNode.ChildNodes.Count > 0)
                {
                    resursiveChildNode(oNode);
                }
                else
                {
                    if (oNode.Checked == true)
                    {
                        hdnParentId.Value = oNode.Value;
                    }
                }
            }
            intParent = Int32.Parse(hdnParentId.Value);

            if (intStatus == (int)AssestOrderReqStatus.Active)
            {
                int intNewRequest = oRequest.AddTask(0, intProfile, txtDescription.Text, DateTime.Now, DateTime.Now);
                hdnRequestId.Value = intNewRequest.ToString();
                int intServiceId = 0;
                int intItemID    = 0;
                if (intOrderType == (int)AssetSharedEnvOrderType.AddCluster)
                {
                    intServiceId = Int32.Parse(ConfigurationManager.AppSettings["SERVICEID_ASSET_SHARED_ENV_ADD_CLUSTER"]);
                }
                else if (intOrderType == (int)AssetSharedEnvOrderType.AddHost)
                {
                    intServiceId = Int32.Parse(ConfigurationManager.AppSettings["SERVICEID_ASSET_SHARED_ENV_ADD_HOST"]);
                }
                else if (intOrderType == (int)AssetSharedEnvOrderType.AddStorage)
                {
                    intServiceId = Int32.Parse(ConfigurationManager.AppSettings["SERVICEID_ASSET_SHARED_ENV_ADD_STORAGE"]);
                }

                intItemID       = oService.GetItemId(intServiceId);
                hdnItemId.Value = intItemID.ToString();
                hdnNumber.Value = "1";
            }

            if (hdnOrderId.Value == "" || hdnOrderId.Value == "0")  //New Order
            {
                int intOrderId = intOrderId = oAssetOrder.AddOrderId(intProfile);
                hdnOrderId.Value = intOrderId.ToString();

                oAssetSharedEnvOrder.AddOrder(Int32.Parse(hdnOrderId.Value),
                                              Int32.Parse(hdnRequestId.Value),
                                              Int32.Parse(hdnItemId.Value),
                                              Int32.Parse(hdnNumber.Value),
                                              intOrderType,
                                              txtDescription.Text.Trim(),
                                              Int32.Parse(ddlModel.SelectedValue),
                                              Int32.Parse(hdnLocation.Value),
                                              Int32.Parse(ddlClass.SelectedValue),
                                              Int32.Parse((hdnEnvironment.Value != "" ? hdnEnvironment.Value : "0")),
                                              intParent,
                                              DateTime.Parse(txtRequestedByDate.Text.Trim()),
                                              intClusterType,
                                              0,
                                              0,
                                              0,
                                              0,
                                              //(chkFunctionWorkstation.Checked == true ? 1 : 0),
                                              //(chkFunctionServer.Checked == true ? 1 : 0),
                                              //(chkFunctionWindows.Checked == true ? 1 : 0),
                                              //(chkFunctionLinux.Checked == true ? 1 : 0),
                                              (chkFunctionContainer.Checked == true ? 1 : 0),
                                              (chkFunctionLDOM.Checked == true ? 1 : 0),
                                              float.Parse(txtStorageAmt.Text),
                                              intStatus,
                                              intProfile);
            }
            else  //In Process Order
            {
                oAssetSharedEnvOrder.UpdateOrder(Int32.Parse(hdnOrderId.Value),
                                                 Int32.Parse(hdnRequestId.Value),
                                                 Int32.Parse(hdnItemId.Value),
                                                 Int32.Parse(hdnNumber.Value),
                                                 intOrderType,
                                                 txtDescription.Text.Trim(),
                                                 Int32.Parse(ddlModel.SelectedValue),
                                                 Int32.Parse(hdnLocation.Value),
                                                 Int32.Parse(ddlClass.SelectedValue),
                                                 Int32.Parse((hdnEnvironment.Value != "" ? hdnEnvironment.Value : "0")),
                                                 intParent,
                                                 DateTime.Parse(txtRequestedByDate.Text.Trim()),
                                                 intClusterType,
                                                 0,
                                                 0,
                                                 0,
                                                 0,
                                                 //(chkFunctionWorkstation.Checked == true ? 1 : 0),
                                                 //(chkFunctionServer.Checked == true ? 1 : 0),
                                                 //(chkFunctionWindows.Checked == true ? 1 : 0),
                                                 //(chkFunctionLinux.Checked == true ? 1 : 0),
                                                 (chkFunctionContainer.Checked == true ? 1 : 0),
                                                 (chkFunctionLDOM.Checked == true ? 1 : 0),
                                                 float.Parse(txtStorageAmt.Text),
                                                 intStatus,
                                                 intProfile);
            }



            //1. Remove Previous Host Asset selection - In case of selection changes
            oAssetOrder.DeleteAssetOrderAssetSelection(Int32.Parse(hdnOrderId.Value));

            //2. Add Host Asset Selection for Cluster Or Host
            if (intOrderType == (int)AssetSharedEnvOrderType.AddCluster || intOrderType == (int)AssetSharedEnvOrderType.AddHost)
            {
                foreach (DataListItem dlItem in dlAssetsSelection.Items)
                {
                    HiddenField hdnAssetId     = (HiddenField)dlItem.FindControl("hdnAssetId");
                    CheckBox    chkSelectAsset = (CheckBox)dlItem.FindControl("chkSelectAsset");
                    if (chkSelectAsset.Checked == true)
                    {
                        oAssetOrder.AddRemoveAssetOrderAssetSelection(
                            Int32.Parse(hdnOrderId.Value),
                            Int32.Parse(hdnAssetId.Value),
                            intProfile, 1);
                    }
                }
            }

            if (intStatus == (int)AssestOrderReqStatus.Active)
            {
                //1. For selected assets set  NewOrderId=RequestID
                if (intOrderType == (int)AssetSharedEnvOrderType.AddCluster || intOrderType == (int)AssetSharedEnvOrderType.AddHost)
                {
                    DataSet dsAssetSelected = oAssetOrder.GetAssetOrderAssetSelection(Int32.Parse(hdnOrderId.Value));
                    foreach (DataRow dr in dsAssetSelected.Tables[0].Rows)
                    {
                        oAsset.updateNewOrderId(Int32.Parse(hdnOrderId.Value), Int32.Parse(dr["AssetId"].ToString()));
                    }
                }

                //2. for Cluster -Add record in Cluster /Server Table
                if (intOrderType == (int)AssetSharedEnvOrderType.AddCluster || intOrderType == (int)AssetSharedEnvOrderType.AddHost)
                {
                    CreateClusterAndAddHostsToServer();
                }

                //For Storage Create the Service Requests
                if (intOrderType == (int)AssetSharedEnvOrderType.AddStorage)
                {
                    InitiateAddStorageWorkOrder();
                }
            }
        }