예제 #1
0
        protected override void OnInit(EventArgs e)
        {
            try
            {
                var superKey   = "";
                var setId      = 0;
                var key        = 0;
                var clientdata = new ClientDataModel();
                var results    = ClientDataManager.Search(clientdata, SessionVariables.RequestProfile).Clone();

                if (Request.QueryString["SuperKey"] != null)
                {
                    superKey = Request.QueryString["SuperKey"];
                }
                else if (Request.QueryString["SetId"] != null)
                {
                    setId = int.Parse(Request.QueryString["SetId"]);
                }
                if (int.Parse(superKey) > 0)
                {
                    var data = new SuperKeyDetailDataModel();
                    data.SuperKeyId = Convert.ToInt32(superKey);

                    // Change System Entity Type
                    data.SystemEntityTypeId = (int)SystemEntity.Client;
                    var dt = SuperKeyDetailDataManager.Search(data, SessionVariables.RequestProfile);
                    if (dt != null && dt.Rows.Count > 0)
                    {
                        foreach (DataRow dr in dt.Rows)
                        {
                            key = (int)(dr[SuperKeyDetailDataModel.DataColumns.EntityKey]);
                            clientdata.ClientId = key;
                            var clientdt = ClientDataManager.Search(clientdata, SessionVariables.RequestProfile);
                            if (clientdt.Rows.Count == 1)
                            {
                                results.ImportRow(clientdt.Rows[0]);
                            }
                        }
                    }
                }
                else
                {
                    key = setId;
                    clientdata.ClientId = key;
                    var clientdt = ClientDataManager.Search(clientdata, SessionVariables.RequestProfile);
                    if (clientdt.Rows.Count > 1)
                    {
                        results.ImportRow(clientdt.Rows[0]);
                    }
                }
                SelectedData = new DataTable();
                SelectedData = results.Copy();
                base.OnInit(e);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
                //throw
            }
        }
예제 #2
0
        public override int?Save(string action)
        {
            var data = new ClientDataModel();

            data.ClientId    = SystemKeyId;
            data.Name        = Name;
            data.Description = Description;
            data.SortOrder   = SortOrder;

            if (action == "Insert")
            {
                var dtClient = ClientDataManager.DoesExist(data, SessionVariables.RequestProfile);

                if (dtClient.Rows.Count == 0)
                {
                    ClientDataManager.Create(data, SessionVariables.RequestProfile);
                }
                else
                {
                    throw new Exception("Record with given ID already exists.");
                }
            }
            else
            {
                ClientDataManager.Update(data, SessionVariables.RequestProfile);
            }

            // not correct ... when doing insert, we didn't get/change the value of ClientID ?
            return(data.ClientId);
        }
예제 #3
0
        public static string Save(ClientDataModel data, string action, RequestProfile requestProfile)
        {
            var sql = "EXEC ";

            switch (action)
            {
            case "Create":
                sql += "dbo.ClientInsert  " +
                       " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                       ", " + ToSQLParameter(BaseDataModel.BaseDataColumns.ApplicationId, requestProfile.ApplicationId);
                break;

            case "Update":
                sql += "dbo.ClientUpdate  " +
                       " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId);
                break;

            default:
                break;
            }
            sql = sql + ", " + ToSQLParameter(data, ClientDataModel.DataColumns.ClientId) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Name) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.Description) +
                  ", " + ToSQLParameter(data, StandardDataModel.StandardDataColumns.SortOrder);

            return(sql);
        }
예제 #4
0
        public static int Create(ClientDataModel data, RequestProfile requestProfile)
        {
            var sql   = Save(data, "Create", requestProfile);
            var newId = DBDML.RunScalarSQL("Client.Insert", sql, DataStoreKey);

            return(Convert.ToInt32(newId));
        }
예제 #5
0
        public void PutClient(int id, ClientDataModel data)
        {
            int auditId = 10;

            data.ClientId = id;
            ClientDataManager.UpdateSortOrderOnly(data, auditId);
        }
예제 #6
0
        // GET api/<controller>
        public IEnumerable <ClientDataModel> GetAllClients()
        {
            int auditId = 10;
            var data    = new ClientDataModel();

            return(ClientDataManager.GetEntityDetails(data, SessionVariables.RequestProfile, 0));
        }
예제 #7
0
        public static DataTable DoesExist(ClientDataModel data, RequestProfile requestProfile)
        {
            var doesExistRequest = new ClientDataModel();

            doesExistRequest.Name = data.Name;
            return(Search(doesExistRequest, requestProfile));
        }
예제 #8
0
        public void LoadData(int clientId, bool showId)
        {
            // clear UI
            Clear();

            // set up parameters
            var data = new ClientDataModel();

            data.ClientId = clientId;

            // get data
            var items = ClientDataManager.GetEntityDetails(data, SessionVariables.RequestProfile);

            // should only have single match -- should log exception.
            if (items.Count != 1)
            {
                return;
            }

            var item = items[0];

            SetData(item);

            if (!showId)
            {
                SystemKeyId = item.ClientId;

                // only show Audit History in case of Update page, not for Clone.
                oHistoryList.Setup(PrimaryEntity, clientId, PrimaryEntityKey);
            }
            else
            {
                CoreSystemKey.Text = String.Empty;
            }
        }
예제 #9
0
        protected override void Clear()
        {
            base.Clear();
            var data = new ClientDataModel();

            SetData(data);
        }
예제 #10
0
        public ActionResult Add()
        {
            ClientDataModel model = new ClientDataModel();

            model.ReceiptDate    = DateTime.Now;
            model.ClientTypeList = _commonController.GetClientTypeList();
            return(View(model));
        }
예제 #11
0
        public void DeleteClient(int id)
        {
            int auditId = 10;
            var data    = new ClientDataModel();

            data.ClientId = id;
            ClientDataManager.Delete(data, SessionVariables.RequestProfile);
        }
예제 #12
0
        protected void btnDelete_Click(object sender, EventArgs e)
        {
            try
            {
                var notDeletableIds = new List <int>();
                var deleteIndexList = DeleteIds.Split(',');

                foreach (var index in deleteIndexList)
                {
                    var data = new ClientDataModel();
                    data.ClientId = int.Parse(index);

                    if (!ClientDataManager.IsDeletable(data, SessionVariables.RequestProfile))
                    {
                        notDeletableIds.Add((int)(data.ClientId));
                    }
                }

                if (notDeletableIds.Count == 0)
                {
                    foreach (var index in deleteIndexList)
                    {
                        var data = new ClientDataModel();
                        data.ClientId = int.Parse(index);

                        ClientDataManager.Delete(data, SessionVariables.RequestProfile);
                    }
                }
                else
                {
                    var msg = String.Empty;

                    foreach (var id in notDeletableIds)
                    {
                        if (!string.IsNullOrEmpty(msg))
                        {
                            msg += ", <br/>";
                        }
                        msg += "ClientId: " + id + " has detail records";
                    }

                    foreach (string index in deleteIndexList)
                    {
                        var data = new ClientDataModel();
                        data.ClientId = int.Parse(index);

                        ClientDataManager.DeleteChildren(data, SessionVariables.RequestProfile);
                        ClientDataManager.Delete(data, SessionVariables.RequestProfile);
                    }
                }

                DeleteAndRedirect();
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
        }
예제 #13
0
        private DataTable GetData()
        {
            // TODO: on all export pages
            var data = new ClientDataModel();

            var dt = ClientDataManager.Search(data, SessionVariables.RequestProfile);

            return(dt);
        }
예제 #14
0
        protected override DataTable GetEntityData(int?entityKey)
        {
            var clientData = new ClientDataModel();

            clientData.ClientId = entityKey;
            var results = ClientDataManager.Search(clientData, SessionVariables.RequestProfile);

            return(results);
        }
예제 #15
0
        public static DataSet GetChildren(ClientDataModel data, RequestProfile requestProfile)
        {
            var sql = "EXEC dbo.ClientChildrenGet" +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(data, ClientDataModel.DataColumns.ClientId);
            var oDT = new Framework.Components.DataAccess.DBDataSet("Get Children", sql, DataStoreKey);

            return(oDT.DBDataset);
        }
예제 #16
0
        protected void btnUpdate_Click(object sender, EventArgs e)
        {
            var updatedData = new DataTable();
            var data        = new ClientDataModel();

            updatedData = ClientDataManager.Search(data, SessionVariables.RequestProfile).Clone();

            for (var i = 0; i < SelectedData.Rows.Count; i++)
            {
                data.ClientId = Convert.ToInt32(SelectedData.Rows[i][ClientDataModel.DataColumns.ClientId].ToString());
                if (IsNameSelected)
                {
                    data.Name = Name;
                }
                else
                {
                    data.Name = SelectedData.Rows[i][StandardDataModel.StandardDataColumns.Name].ToString();
                }

                if (IsDescriptionSelected)
                {
                    data.Description = Description;
                }
                else
                {
                    data.Description = SelectedData.Rows[i][StandardDataModel.StandardDataColumns.Description].ToString();
                }

                if (IsSortOrderSelected)
                {
                    data.SortOrder = SortOrder;
                }
                else
                {
                    data.SortOrder = Convert.ToInt32(SelectedData.Rows[i][StandardDataModel.StandardDataColumns.SortOrder].ToString());
                }


                ClientDataManager.Update(data, SessionVariables.RequestProfile);

                data          = new ClientDataModel();
                data.ClientId = Convert.ToInt32(SelectedData.Rows[i][ClientDataModel.DataColumns.ClientId].ToString());
                var dt = ClientDataManager.Search(data, SessionVariables.RequestProfile);

                if (dt.Rows.Count == 1)
                {
                    updatedData.ImportRow(dt.Rows[0]);
                }

                // if everything is done and good THEN move from thsi page.
                //Response.Redirect("Default.aspx?Added=" + true, false);
            }

            MainGridView.DataSource = updatedData;
            MainGridView.DataBind();
        }
예제 #17
0
        public static DataSet DeleteChildren(ClientDataModel data, RequestProfile requestProfile)
        {
            var sql = "EXEC dbo.ClientChildrenDelete " +
                      " " + ToSQLParameter(BaseDataModel.BaseDataColumns.AuditId, requestProfile.AuditId) +
                      ", " + ToSQLParameter(data, ClientDataModel.DataColumns.ClientId);

            var oDt = new DBDataSet("Client.DeleteChildren", sql, DataStoreKey);

            return(oDt.DBDataset);
        }
        public async Task <ActionResult> Create()
        {
            var clientDate = new ClientDataModel();

            clientDate.ClientList      = new SelectList(await CommonModel.GetClientData(CurrentUser.CompanyId), "Name", "Text");
            clientDate.ServiceTypeList = new SelectList(await CommonModel.GetServiceType(new FilterModel {
                CompId = CurrentUser.CompanyId, RefKey = CurrentUser.RefKey
            }), "Value", "Text");
            return(View(clientDate));
        }
예제 #19
0
        protected override void Update(Dictionary <string, string> values)
        {
            var data = new ClientDataModel();

            // copies properties from values dictionary object to data object
            PropertyMapper.CopyProperties(data, values);

            ClientDataManager.Update(data, SessionVariables.RequestProfile);
            base.Update(values);
        }
예제 #20
0
        private void UpdateData(ArrayList values)
        {
            var data = new ClientDataModel();

            data.ClientId    = int.Parse(values[0].ToString());
            data.Name        = values[1].ToString();
            data.Description = values[2].ToString();
            data.SortOrder   = int.Parse(values[3].ToString());
            ClientDataManager.Update(data, SessionVariables.RequestProfile);
            ReBindEditableGrid();
        }
예제 #21
0
        public static bool DoesExist(ClientDataModel data, RequestProfile requestProfile)
        {
            var doesExistRequest = new ClientDataModel();

            doesExistRequest.ApplicationId = data.ApplicationId;
            doesExistRequest.Name          = data.Name;

            var list = GetEntityDetails(doesExistRequest, requestProfile, 0);

            return(list.Count > 0);
        }
예제 #22
0
 public ActionResult Add(ClientDataModel model)
 {
     if (ModelState.IsValid)
     {
         ClientData Goods = model.MapTo <ClientDataModel, ClientData>();
         _clientDataService.Insert(Goods);
         return(RedirectToAction("Index"));
     }
     model.ClientTypeList = _commonController.GetClientTypeList();
     return(View(model));
 }
예제 #23
0
        public HttpResponseMessage PostClient(ClientDataModel data)
        {
            int auditId = 10;

            data.ClientId = null;
            data.ClientId = ClientDataManager.Create(data, SessionVariables.RequestProfile);

            var response = Request.CreateResponse <ClientDataModel>(HttpStatusCode.Created, data);

            response.Headers.Location = new Uri(Request.RequestUri, "/api/clients/" + data.ClientId.ToString());
            return(response);
        }
예제 #24
0
 public ActionResult Edit(ClientDataModel model)
 {
     if (ModelState.IsValid)
     {
         ClientData goodsData = model.MapTo <ClientDataModel, ClientData>();
         _clientDataService.Update(goodsData);
         SuccessNotification($"{_localizationService.GetResource("UpdateSuccess") + model.ClientName}");
         return(RedirectToAction("Index"));
     }
     model.ClientTypeList = _commonController.GetClientTypeList();
     return(View(model));
 }
예제 #25
0
 public AddClient(ClientDataModel client)
 {
     InitializeComponent();
     this.clientModel = client;
     loadCombos();
     nametextBox.Text           = client.name;
     phoneMaskedTextBox.Text    = client.phone;
     addresstextBox.Text        = client.address;
     othertextBox.Text          = client.other;
     usernameTextBox.Text       = client.username;
     passwordTextBox.Text       = client.password;
     rolesComboBox.Text         = clientModel.role;
     storeLocationComboBox.Text = clientModel.storeLocation;
 }
예제 #26
0
        public static void Delete(ClientDataModel data, RequestProfile requestProfile)
        {
            const string sql = @"dbo.ClientDelete ";

            var parameters =
                new
            {
                AuditId    = requestProfile.AuditId
                , ClientId = data.ClientId
            };

            using (var dataAccess = new DataAccessBase(DataStoreKey))
            {
                dataAccess.Connection.Execute(sql, parameters, commandType: CommandType.StoredProcedure);
            }
        }
예제 #27
0
        public static bool IsDeletable(ClientDataModel data, RequestProfile requestProfile)
        {
            var isDeletable = true;
            var ds          = GetChildren(data, requestProfile);

            if (ds != null && ds.Tables.Count > 0)
            {
                foreach (DataTable dt in ds.Tables)
                {
                    if (dt.Rows.Count > 0)
                    {
                        isDeletable = false;
                        break;
                    }
                }
            }
            return(isDeletable);
        }
예제 #28
0
        public ClientDataModel GetClient(int id)
        {
            int auditId = 10;
            var data    = new ClientDataModel();

            data.ClientId = id;
            var results = ClientDataManager.GetEntityDetails(data, SessionVariables.RequestProfile, 0);

            if (results == null || results.Count == 0)
            {
                var resp = new HttpResponseMessage(HttpStatusCode.NotFound)
                {
                    Content      = new StringContent(string.Format("No Client with ID = {0}", id)),
                    ReasonPhrase = "Client ID Not Found"
                };
                throw new HttpResponseException(resp);
            }
            return(results[0]);
        }
예제 #29
0
        protected override void ShowData(int clientId)
        {
            base.ShowData(clientId);

            oDetailButtonPanel.SetId = SetId;

            Clear();

            var data = new ClientDataModel();

            data.ClientId = clientId;

            var items = ClientDataManager.GetEntityDetails(data, SessionVariables.RequestProfile);

            if (items.Count == 1)
            {
                var item = items[0];
                SetData(item);
                oHistoryList.Setup(PrimaryEntity, clientId, "Client");
            }
        }
예제 #30
0
        protected override DataTable UpdateData()
        {
            var UpdatedData = new DataTable();

            var data = new ClientDataModel();

            UpdatedData = ClientDataManager.Search(data, SessionVariables.RequestProfile).Clone();

            for (var i = 0; i < SelectedData.Rows.Count; i++)
            {
                data.ClientId =
                    Convert.ToInt32(SelectedData.Rows[i][ClientDataModel.DataColumns.ClientId].ToString());

                data.Name = SelectedData.Rows[i][StandardDataModel.StandardDataColumns.Name].ToString();

                data.Description =
                    !string.IsNullOrEmpty(CheckAndGetRepeaterTextBoxValue(StandardDataModel.StandardDataColumns.Description))
                                        ? CheckAndGetRepeaterTextBoxValue(StandardDataModel.StandardDataColumns.Description)
                                        : SelectedData.Rows[i][StandardDataModel.StandardDataColumns.Description].ToString();

                data.SortOrder =
                    !string.IsNullOrEmpty(CheckAndGetRepeaterTextBoxValue(StandardDataModel.StandardDataColumns.SortOrder))
                                        ? int.Parse(CheckAndGetRepeaterTextBoxValue(StandardDataModel.StandardDataColumns.SortOrder))
                                        : int.Parse(SelectedData.Rows[i][StandardDataModel.StandardDataColumns.SortOrder].ToString());

                ClientDataManager.Update(data, SessionVariables.RequestProfile);
                data = new ClientDataModel();

                data.ClientId = Convert.ToInt32(SelectedData.Rows[i][ClientDataModel.DataColumns.ClientId].ToString());

                var dt = ClientDataManager.Search(data, SessionVariables.RequestProfile);

                if (dt.Rows.Count == 1)
                {
                    UpdatedData.ImportRow(dt.Rows[0]);
                }
            }

            return(UpdatedData);
        }