public void Save(BasicOrganization objBasicOrganization) { string sql = null; List <DbParameter> parameterList = new List <DbParameter>(); if (objBasicOrganization.PkId == 0) { sql = " insert into tbl_basic_organization(OrgNumber, OrgName, OrgAddress, OrgParentId, OrgFullPath) " + " values(@OrgNumber, @OrgName, @OrgAddress, @OrgParentId, @OrgFullPath); " + " select LAST_INSERT_ID(); "; parameterList.Add(new MySqlParameter("@OrgNumber", objBasicOrganization.OrgNumber)); parameterList.Add(new MySqlParameter("@OrgName", objBasicOrganization.OrgName)); parameterList.Add(new MySqlParameter("@OrgAddress", objBasicOrganization.OrgAddress)); parameterList.Add(new MySqlParameter("@OrgParentId", objBasicOrganization.OrgParentId)); parameterList.Add(new MySqlParameter("@OrgFullPath", objBasicOrganization.OrgFullPath)); objBasicOrganization.PkId = DbHelper.ExecuteScalar(sql, CommandType.Text, parameterList.ToArray()).ToString().ToInt(); } else { sql = " update tbl_basic_organization set OrgName=@OrgName, OrgAddress=@OrgAddress, OrgFullPath=@OrgFullPath where PkId=@PkId "; parameterList.Add(new MySqlParameter("@PkId", objBasicOrganization.PkId)); parameterList.Add(new MySqlParameter("@OrgName", objBasicOrganization.OrgName)); parameterList.Add(new MySqlParameter("@OrgAddress", objBasicOrganization.OrgAddress)); parameterList.Add(new MySqlParameter("@OrgFullPath", objBasicOrganization.OrgFullPath)); DbHelper.ExecuteNonQuery(sql, CommandType.Text, parameterList.ToArray()); } }
public BasicOrganization[] GetOrganizationLine(int leafOrganizationId) { List <BasicOrganization> result = new List <BasicOrganization>(); Dictionary <int, List <BasicOrganization> > organizations = GetHashedOrganizations(); BasicOrganization currentOrganization = organizations[leafOrganizationId][0]; // This iterates until the zero-parentid root Organization is found while (currentOrganization.OrganizationId > 0) { result.Add(currentOrganization); if (currentOrganization.ParentOrganizationId > 0) { currentOrganization = organizations[currentOrganization.ParentOrganizationId][0]; } else { currentOrganization = new BasicOrganization(); } } result.Reverse(); return(result.ToArray()); }
public static BasicOrganization[] GetOrganizationLine(int leafOrganizationId) { lock (loadCacheLock) { List <BasicOrganization> result = new List <BasicOrganization>(); BasicOrganization currentOrganization = OrganizationCache.GetOrganization(leafOrganizationId); // This iterates until the zero-parentid root Organization is found while (currentOrganization.OrganizationId > 0) { result.Add(currentOrganization); if (currentOrganization.ParentOrganizationId > 0) { currentOrganization = OrganizationCache.GetOrganization(currentOrganization.ParentOrganizationId); } else { currentOrganization = new BasicOrganization(); } } result.Reverse(); return(result.ToArray()); } }
private void BindOrg() { if (!this.IsInsert) { IBasicService service = ServiceFactory.GetService <IBasicService>(); BasicOrganization entity = service.GetObject_Organization(this.PkId); if (entity != null) { this.txtOrgNumber.Text = entity.OrgNumber; this.txtOrgName.Text = entity.OrgName; this.txtOrgAddress.Text = entity.OrgAddress; this.hfOrgParentId.Value = entity.OrgParentId.ToString(); this.txtOrgParentName.Text = entity.OrgParentId.ToString().GetOrgName(true); this.txtOrgNumber.ReadOnly = true; this.btnSubmitContinue.Visible = false; } else { this.JscriptMsg("数据不存在", this.ReturnUrl, "Error"); } } }
public int[] GetOrganizationUptakeGeographyIds(int organizationId) { List <int> result = new List <int>(); BasicOrganization basicOrg = GetOrganization(organizationId); result.Add(basicOrg.AnchorGeographyId); using (DbConnection connection = GetMySqlDbConnection()) { connection.Open(); DbCommand command = GetDbCommand( "SELECT GeographyId FROM OrganizationUptakeGeographies WHERE OrganizationId=" + organizationId, connection); using (DbDataReader reader = command.ExecuteReader()) { while (reader.Read()) { int uptakeGeoId = reader.GetInt32(0); if (uptakeGeoId != basicOrg.AnchorGeographyId) { result.Add(uptakeGeoId); } } } } return(result.ToArray()); }
protected void btnSubmit_Click(object sender, EventArgs e) { if (this.IsValid) { IBasicService service = ServiceFactory.GetService <IBasicService>(); BasicOrganization entity = null; if (this.IsInsert) { entity = new BasicOrganization() { OrgNumber = this.txtOrgNumber.Text.Trim(), OrgName = this.txtOrgName.Text.Trim(), OrgAddress = this.txtOrgAddress.Text.Trim(), OrgParentId = this.hfOrgParentId.Value.Trim().ToInt(0), OrgFullPath = "" }; if (service.CheckExists_Organization(entity)) { this.JscriptMsg("网点机构号码已存在", null, "Error"); return; } } else { entity = service.GetObject_Organization(this.PkId); if (entity != null) { entity.OrgName = this.txtOrgName.Text.Trim(); entity.OrgAddress = this.txtOrgAddress.Text.Trim(); entity.OrgParentId = this.hfOrgParentId.Value.Trim().ToInt(0); } } service.Save_Organization(entity); if (this.IsInsert) { entity.OrgFullPath = entity.OrgParentId.ToString().GetOrgFullPath() + "[" + entity.PkId + "]"; service.Save_Organization(entity); } if (this.IsInsert && (sender as Button).CommandName == "SubmitContinue") { this.ReturnUrl = this.Request.Url.PathAndQuery; } this.JscriptMsg("数据保存成功", this.ReturnUrl, "Success"); } BasicConvert.ClearCache(); }
public bool CheckExists(BasicOrganization objBasicOrganization) { string sql = null; List <DbParameter> parameterList = new List <DbParameter>(); sql = " select count(1) from tbl_basic_organization where OrgNumber=@OrgNumber "; parameterList.Add(new MySqlParameter("@OrgNumber", objBasicOrganization.OrgNumber)); return(int.Parse(DbHelper.ExecuteScalar(sql, CommandType.Text, parameterList.ToArray()).ToString()) > 0); }
public static int[] GetOrganizationIdsInGeographies(int[] nodeIds) { if (nodeIds == null || nodeIds.Length == 0) { return(new int[0]); } Dictionary <int, bool> resultKeys = new Dictionary <int, bool>(); Dictionary <int, bool> idsToFind = new Dictionary <int, bool>(); foreach (int i in nodeIds) { idsToFind[i] = true; } //fist add those that has the geo as anchor lock (loadCacheLock) { Dictionary <int, List <BasicOrganization> > hashedOrgs = GetHashedOrganizations(); foreach (int id in hashedOrgs.Keys) { BasicOrganization bo = hashedOrgs[id][0]; if (idsToFind.ContainsKey(bo.AnchorGeographyId)) { resultKeys[bo.Identity] = true; } } //then add those that has the geo as uptake Dictionary <int, List <int> > allUptakes = GetUptakes(); foreach (int orgId in allUptakes.Keys) { //connected to valid org? if (hashedOrgs.ContainsKey(orgId)) { foreach (int geoId in allUptakes[orgId]) { if (idsToFind.ContainsKey(geoId)) { resultKeys[orgId] = true; } } } } } return((new List <int> (resultKeys.Keys)).ToArray()); ; }
protected void Page_Load(object sender, EventArgs e) { int personId = Convert.ToInt32(HttpContext.Current.User.Identity.Name); // Determine appropriate UP organization for this person Person person = Person.FromIdentity(personId); BasicOrganization org = Organizations.GetMostLocalOrganization(person.GeographyId, Organization.UPSEid); Memberships memberships = person.GetMemberships(); bool alreadyMember = false; foreach (Activizr.Basic.Types.BasicMembership membership in memberships) { if (membership.OrganizationId == org.OrganizationId) { alreadyMember = true; } } this.LabelOrg.Text = Server.HtmlEncode(org.NameShort); //.Replace ("å", "å").Replace ("ö", "ö"); this.LabelResult.Text = "som är den lokalavdelning av Ung Pirat som tar upp medlemmar i ditt län"; if (alreadyMember) { this.LabelWelcome.Text = "Du är redan medlem i"; } else { this.LabelWelcome.Text = "Du är nu medlem i"; DateTime paidUntil = DateTime.Now.AddYears(1); foreach (Activizr.Logic.Pirates.Membership membership in memberships) { if (membership.OrganizationId == Organization.PPSEid) { paidUntil = membership.Expires.AddYears(1); membership.Expires = paidUntil; this.LabelResult.Text += ", och ett kalenderår har lagts till ditt medlemskap"; } } Activizr.Logic.Pirates.Membership.Create(personId, org.OrganizationId, paidUntil); Activizr.Logic.Support.PWEvents.CreateEvent(EventSource.SignupPage, EventType.AddedMembership, personId, org.OrganizationId, person.GeographyId, person.PersonId, 0, string.Empty); } }
public void DeleteOrganization(int OrganizationId) { int deletedOrganizationsID = 98; BasicOrganization org = GetOrganization(OrganizationId); //Delete is done by setting parent ID to deletedOrganizationsID UpdateOrganization( deletedOrganizationsID, org.NameInternational, org.Name, org.NameShort, org.Domain, org.MailPrefix, org.AnchorGeographyId, org.AcceptsMembers, org.AutoAssignNewMembers, org.DefaultCountryId, OrganizationId); }
static public BasicOrganization[] GetOrganizationChildren(int parentOrgId) { List <BasicOrganization> result = new List <BasicOrganization>(); lock (loadCacheLock) { BasicOrganization parent = OrganizationCache.GetOrganization(parentOrgId); //TODO: It is possible to miss a child here if that child was added after the last cache load. Dictionary <int, List <BasicOrganization> > hashedOrganizations = GetHashedOrganizations(); foreach (BasicOrganization b in hashedOrganizations[parentOrgId]) { if (b.Identity != parentOrgId) { result.Add(b); } } return(result.ToArray()); } }
private static BasicOrganization[] GetOrganizationTree(Dictionary <int, List <BasicOrganization> > organizations, int startOrganizationId, int generation) { List <BasicOrganization> result = new List <BasicOrganization>(); //Prime the cache BasicOrganization start = OrganizationCache.GetOrganization(startOrganizationId); List <BasicOrganization> thisList = organizations[startOrganizationId]; foreach (BasicOrganization organization in thisList) { if (organization.OrganizationId != startOrganizationId) { result.Add(organization); // new Organization(organization.OrganizationId, organization.ParentOrganizationId, organization.Name, generation + 1)); // Add recursively BasicOrganization[] children = GetOrganizationTree(organizations, organization.OrganizationId, generation + 1); if (children.Length > 0) { foreach (BasicOrganization child in children) { result.Add(child); } } } else if (generation == 0) { // The top parent is special and should be added; the others shouldn't result.Add(organization); // (new Organization(organization.OrganizationId, organization.ParentOrganizationId, organization.Name, generation)); } } return(result.ToArray()); }
private void CreateOrgPathNode(StringBuilder result, int orgId, int defaultOrgId) { BasicOrganization org = (from item in BasicConvert.OrganizationList where item.PkId == orgId select item).SingleOrDefault(); if (org != null && org.PkId > 0) { if (org.PkId < defaultOrgId) { result.Insert(0, " > {0}".FormatWith(org.OrgName)); } else { result.Insert(0, " > <a href=\"Basic_Org_Search.aspx?UserId={0}&DefaultEmpty={1}&OrgParentId={2}\">{3}</a>".FormatWith(this.UserId, this.DefaultEmpty.ToInt(), org.PkId, org.OrgName)); } if (org.OrgParentId > 0) { this.CreateOrgPathNode(result, org.OrgParentId, defaultOrgId); } } }
public void Save(BasicOrganization objBasicOrganization) { string sql = null; List <DbParameter> parameterList = new List <DbParameter>(); if (objBasicOrganization.PkId == 0) { sql = " insert into tbl_basic_organization(PkId, OrgNumber, OrgName, OrgAddress, OrgParentId, OrgFullPath) " + " values(TBO_PKID.NEXTVAL, :OrgNumber, :OrgName, :OrgAddress, :OrgParentId, :OrgFullPath) " + " RETURNING PkId INTO :PkId "; parameterList.Add(new OracleParameter(":OrgNumber", objBasicOrganization.OrgNumber)); parameterList.Add(new OracleParameter(":OrgName", objBasicOrganization.OrgName)); parameterList.Add(new OracleParameter(":OrgAddress", objBasicOrganization.OrgAddress)); parameterList.Add(new OracleParameter(":OrgParentId", objBasicOrganization.OrgParentId)); parameterList.Add(new OracleParameter(":OrgFullPath", objBasicOrganization.OrgFullPath)); var p = new OracleParameter(":PkId", OracleDbType.Int32, 0, ParameterDirection.Output); parameterList.Add(p); DbHelper.ExecuteNonQuery(sql, CommandType.Text, parameterList.ToArray()); objBasicOrganization.PkId = Convert.ToInt32(((OracleDecimal)p.Value).Value); } else { sql = " update tbl_basic_organization set OrgName=:OrgName, OrgAddress=:OrgAddress, OrgFullPath=:OrgFullPath where PkId=:PkId "; parameterList.Add(new OracleParameter(":OrgName", objBasicOrganization.OrgName)); parameterList.Add(new OracleParameter(":OrgAddress", objBasicOrganization.OrgAddress)); parameterList.Add(new OracleParameter(":OrgFullPath", objBasicOrganization.OrgFullPath)); parameterList.Add(new OracleParameter(":PkId", objBasicOrganization.PkId)); DbHelper.ExecuteNonQuery(sql, CommandType.Text, parameterList.ToArray()); } }
public static Organization FromBasic(BasicOrganization basic) { return(new Organization(basic)); }
} // disallow public direct construction private Organization(BasicOrganization basic) : base(basic) { }
public void Save_Organization(BasicOrganization objBasicOrganization) { var repository = ServiceFactory.GetService <IBasicOrganizationRepository>(); repository.Save(objBasicOrganization); }
private void InitData() { IBasicService basicService = ServiceFactory.GetService <IBasicService>(); IDeviceService deviceService = ServiceFactory.GetService <IDeviceService>(); int orgCount = this.txtOrgCount.Text.Trim().ToInt(); int relevanceDeviceCount = this.txtRelevanceDeviceCount.Text.Trim().ToInt(); int deviceGroup = this.txtDeviceGroup.Text.Trim().ToInt(); int perGroupOrgCount = orgCount / deviceGroup; this.BeginInvoke(new EventHandler((a, b) => { this.pbFinish.Minimum = 0; this.pbFinish.Maximum = orgCount * relevanceDeviceCount; this.pbFinish.Value = 0; })).AsyncWaitHandle.WaitOne(10); for (int i = 1; i <= deviceGroup; i++) { int deviceIndex = 0; for (int j = 1; j <= perGroupOrgCount; j++) { int orgId = (i - 1) * perGroupOrgCount + j; BasicOrganization org = new BasicOrganization() { OrgNumber = "ORG" + orgId.ToString().PadLeft(4, '0'), OrgName = "网点机构" + orgId.ToString().PadLeft(4, '0'), OrgAddress = "网点机构" + orgId.ToString().PadLeft(4, '0'), OrgParentId = 0 }; basicService.Save_Organization(org); org.OrgFullPath = org.OrgParentId.ToString().GetOrgFullPath() + "[" + org.PkId + "]"; basicService.Save_Organization(org); for (int k = 1; k <= relevanceDeviceCount; k++) { deviceIndex += 1; string deviceNumber = "ABCD" + (int.Parse(i + "00000000") + deviceIndex).ToString(); DeviceInfo device = new DeviceInfo() { DeviceNumber = deviceNumber, SoftwareVersion = "000000", RegisterIp = "127.0.0.1", KindCode = 1, ModelCode = 1, OrgId = org.PkId, OnLineTime = DateTime.Now, DeviceStatus = 1 }; deviceService.Save_Info(device); this.BeginInvoke(new EventHandler((a, b) => { this.pbFinish.PerformStep(); })); } } } this.BeginInvoke(new EventHandler((a, b) => { this.btnInit.Enabled = true; })); MessageBox.Show("数据初始化完毕", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); }
public bool CheckExists_Organization(BasicOrganization objBasicOrganization) { var repository = ServiceFactory.GetService <IBasicOrganizationRepository>(); return(repository.CheckExists(objBasicOrganization)); }