public void EditUser(string oldPass, string oldName, UserFromTable newUser, int userTypeId, int userRoleId, int orgId, int curUserId) { Exception userNameAllreadyExists = new Exception("Пользователь с таким именем уже существует!"); int userNewId = sqlDb.GetUserId_byUserName(newUser.name); int userOldId = sqlDb.GetUserId_byUserName(oldName); if (userNewId > 0) { if (userOldId != userNewId) { throw userNameAllreadyExists; } } int userId = sqlDb.AddNewUser(newUser.name, newUser.pass, userTypeId, userRoleId, orgId, oldName, oldPass); if (curUserId > 0) { HistoryTable log = new HistoryTable(connectionString, CurrentLanguage, sqlDb); log.AddHistoryRecord("fd_user", "USER_ID", userId, curUserId, log.driversRegDataChanged, "Code: " + userId.ToString(), sqlDb); } }
public int AddNewUser(UserFromTable newUser, int userTypeId, int userRoleId, int orgId, int curUserId) { Exception userNameAllreadyExists = new Exception("Пользователь с таким именем уже существует!"); int returnUserId = -1; int userId = sqlDb.GetUserId_byUserName(newUser.name); if (userId > 0) { throw userNameAllreadyExists; } returnUserId = sqlDb.AddNewUser(newUser.name, newUser.pass, userTypeId, userRoleId, orgId, newUser.name, newUser.pass); AddUserInfoValue(returnUserId, DataBaseReference.UserInfo_RegDate, DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString()); AddUserInfoValue(returnUserId, DataBaseReference.UserInfo_EndOfRegistrationDate, DateTime.Now.AddMonths(6).ToShortDateString()); if (curUserId > 0) { HistoryTable log = new HistoryTable(connectionString, CurrentLanguage, sqlDb); log.AddHistoryRecord("fd_user", "USER_ID", returnUserId, curUserId, log.newUserRegistered, "Login: "******", code: " + returnUserId, sqlDb); } return(returnUserId); }
/// <summary> /// Иннициализирует базу данных стартовыми значениями. /// Это нужно для того, чтобы сразу с разворачивания базы данных можно было начать работать в веб интерфейсе. /// </summary> /// <param name="password">пароль нужен просто, чтобы из консоли нечайно не тыкнуть. пароль = qqq</param> public static void DataBaseInit(string password) { string CurrentLanguage = "STRING_RU"; if (password != "qqq") throw new Exception("Неправильный пароль"); string connectionString = "server=localhost;User Id=root;password = 1;Persist Security Info=True;database=fleetnetbase"; string connectionString1 = "server=mysql62.1gb.ru;default command timeout=600;Connection Timeout=600;database=gb_x_smartfis;User Id=gb_x_smartfis;password =5216a0af;"; SQLDB sqlDb = new SQLDB(connectionString); MySqlConnection sqlConnection = new MySqlConnection(connectionString); MySqlCommand cmd = new MySqlCommand(); int stringId = -1; int generatedId = -1; string sql; sql = "INSERT INTO fd_string " + "(STRING_ID, STRING_RU)" + "VALUES (@STRING_ID, @STRING_RU)"; cmd = new MySqlCommand(sql, sqlConnection); cmd.Parameters.AddWithValue("@STRING_ID", 0); cmd.Parameters.AddWithValue("@STRING_RU", ""); sqlConnection.Open(); sqlDb.OpenConnection(); cmd.ExecuteNonQuery(); //dataBlockStates InitTable_ID_String("fd_data_block_state", "DATA_BLOCK_STATE_ID", "STRID_DATA_BLOCK_STATE_NAME", "Ideal", sqlDb, sqlConnection); InitTable_ID_String("fd_data_block_state", "DATA_BLOCK_STATE_ID", "STRID_DATA_BLOCK_STATE_NAME", "Parsed", sqlDb, sqlConnection); InitTable_ID_String("fd_data_block_state", "DATA_BLOCK_STATE_ID", "STRID_DATA_BLOCK_STATE_NAME", "Not parsed", sqlDb, sqlConnection); InitTable_ID_String("fd_data_block_state", "DATA_BLOCK_STATE_ID", "STRID_DATA_BLOCK_STATE_NAME", "Not supported", sqlDb, sqlConnection); //dataRecordsState InitTable_ID_String("fd_data_record_state", "DATA_RECORD_STATE_ID", "STRID_DATA_RECORD_STATE_NAME", "Ideal", sqlDb, sqlConnection); InitTable_ID_String("fd_data_record_state", "DATA_RECORD_STATE_ID", "STRID_DATA_RECORD_STATE_NAME", "Parsed", sqlDb, sqlConnection); InitTable_ID_String("fd_data_record_state", "DATA_RECORD_STATE_ID", "STRID_DATA_RECORD_STATE_NAME", "Not parsed", sqlDb, sqlConnection); //Card_TYPE stringId = sqlDb.AddOrGetString("Card Type: Driver", SQLDB.userString); generatedId = sqlDb.generateId("fd_card_type", "CARD_TYPE_ID"); if (generatedId == -1) throw (new Exception("Can't generate CARD_TYPE_ID")); sql = "INSERT INTO fd_card_type " + "(CARD_TYPE_ID, STRID_CARD_TYPE_NAME, STRID_CARD_TYPE_SHORT_NAME, STRID_CARD_TYPE_PRINT_NAME)" + "VALUES (@CARD_TYPE_ID, @STRID_CARD_TYPE_NAME, @STRID_CARD_TYPE_SHORT_NAME, @STRID_CARD_TYPE_PRINT_NAME)"; cmd = new MySqlCommand(sql, sqlConnection); cmd.Parameters.AddWithValue("@CARD_TYPE_ID", generatedId); cmd.Parameters.AddWithValue("@STRID_CARD_TYPE_NAME", stringId); cmd.Parameters.AddWithValue("@STRID_CARD_TYPE_SHORT_NAME", stringId); cmd.Parameters.AddWithValue("@STRID_CARD_TYPE_PRINT_NAME", stringId); cmd.ExecuteNonQuery(); stringId = sqlDb.AddOrGetString("Card Type: Vehicle", SQLDB.userString); generatedId = sqlDb.generateId("fd_card_type", "CARD_TYPE_ID"); if (generatedId == -1) throw (new Exception("Can't generate CARD_TYPE_ID")); sql = "INSERT INTO fd_card_type " + "(CARD_TYPE_ID, STRID_CARD_TYPE_NAME, STRID_CARD_TYPE_SHORT_NAME, STRID_CARD_TYPE_PRINT_NAME)" + "VALUES (@CARD_TYPE_ID, @STRID_CARD_TYPE_NAME, @STRID_CARD_TYPE_SHORT_NAME, @STRID_CARD_TYPE_PRINT_NAME)"; cmd = new MySqlCommand(sql, sqlConnection); cmd.Parameters.AddWithValue("@CARD_TYPE_ID", generatedId); cmd.Parameters.AddWithValue("@STRID_CARD_TYPE_NAME", stringId); cmd.Parameters.AddWithValue("@STRID_CARD_TYPE_SHORT_NAME", stringId); cmd.Parameters.AddWithValue("@STRID_CARD_TYPE_PRINT_NAME", stringId); cmd.ExecuteNonQuery(); stringId = sqlDb.AddOrGetString("Card Type: Organization Init Card", SQLDB.userString); generatedId = sqlDb.generateId("fd_card_type", "CARD_TYPE_ID"); if (generatedId == -1) throw (new Exception("Can't generate CARD_TYPE_ID")); sql = "INSERT INTO fd_card_type " + "(CARD_TYPE_ID, STRID_CARD_TYPE_NAME, STRID_CARD_TYPE_SHORT_NAME, STRID_CARD_TYPE_PRINT_NAME)" + "VALUES (@CARD_TYPE_ID, @STRID_CARD_TYPE_NAME, @STRID_CARD_TYPE_SHORT_NAME, @STRID_CARD_TYPE_PRINT_NAME)"; cmd = new MySqlCommand(sql, sqlConnection); cmd.Parameters.AddWithValue("@CARD_TYPE_ID", generatedId); cmd.Parameters.AddWithValue("@STRID_CARD_TYPE_NAME", stringId); cmd.Parameters.AddWithValue("@STRID_CARD_TYPE_SHORT_NAME", stringId); cmd.Parameters.AddWithValue("@STRID_CARD_TYPE_PRINT_NAME", stringId); cmd.ExecuteNonQuery(); int orgInitCardTypeId = generatedId; //fd_deviceFirmware int deviceFirmWareId = sqlDb.AddNewDeviceFirmware("onboard device by default", DateTime.Now, "0.0.0.0", new byte[1]); //fd_device int deviceTypeId = sqlDb.AddNewDeviceType("DefaultDeviceType"); sqlDb.AddNewDevice(deviceTypeId, "The onboard device by default", "00000", DateTime.Now, deviceFirmWareId, 222222); //InitTable_ID_String("fd_device", "DEVICE_ID", "STRID_DEVICE_NAME", ""); //fd_object InitTable_ID_String("fd_object", "OBJECT_ID", "STRID_OBJECT_NAME", "Object by default", sqlDb, sqlConnection); //FD_ORG_TYPE InitTable_ID_String("fd_org_type", "ORG_TYPE_ID", "STRID_ORG_TYPE_NAME", "Cargo transportation", sqlDb, sqlConnection); InitTable_ID_String("fd_org_type", "ORG_TYPE_ID", "STRID_ORG_TYPE_NAME", "Passengers transportation", sqlDb, sqlConnection); InitTable_ID_String("fd_org_type", "ORG_TYPE_ID", "STRID_ORG_TYPE_NAME", "Anything else transportation", sqlDb, sqlConnection); InitTable_ID_String("fd_org_type", "ORG_TYPE_ID", "STRID_ORG_TYPE_NAME", "Dealer", sqlDb, sqlConnection); InitTable_ID_String("fd_org_type", "ORG_TYPE_ID", "STRID_ORG_TYPE_NAME", "Subdealer", sqlDb, sqlConnection); InitTable_ID_String("fd_org_type", "ORG_TYPE_ID", "STRID_ORG_TYPE_NAME", "Predealer", sqlDb, sqlConnection); //FD_ORG OrganizationTable orgTable = new OrganizationTable(connectionString, CurrentLanguage, sqlDb); orgTable.AddNewOrganization("Init Organization", 1, 1, 1, 6); //fd_param sql = "INSERT INTO fd_param " + "(PARAM_ID, PARENT_PARAM_ID, PARAM_NAME, PARAM_SIZE)" + "VALUES (@PARAM_ID, @PARENT_PARAM_ID, @PARAM_NAME, @PARAM_SIZE)"; cmd = new MySqlCommand(sql, sqlConnection); cmd.Parameters.AddWithValue("@PARAM_ID", 0); cmd.Parameters.AddWithValue("@PARENT_PARAM_ID", 0); cmd.Parameters.AddWithValue("@PARAM_NAME", "Parent_param"); cmd.Parameters.AddWithValue("@PARAM_SIZE", 0); cmd.ExecuteNonQuery(); //fd_user_info_set and fd_user_info sqlDb.AddUserInfoName("Surname", "STRING_RU"); sqlDb.AddUserInfoName("Name", "STRING_RU"); sqlDb.AddUserInfoName("Patronimic", "STRING_RU"); sqlDb.AddUserInfoName("Drivers certificate", "STRING_RU"); sqlDb.AddUserInfoName("Card number", "STRING_RU"); sqlDb.AddUserInfoName("Phone number", "STRING_RU"); sqlDb.AddUserInfoName("Birthday", "STRING_RU"); //fd_user_rights InitTable_ID_String("fd_user_rights", "USER_RIGHTS_ID", "STRID_USER_RIGHTS_NAME", "Administrator", sqlDb, sqlConnection); InitTable_ID_String("fd_user_rights", "USER_RIGHTS_ID", "STRID_USER_RIGHTS_NAME", "SuperAdministrator", sqlDb, sqlConnection); //fd_user_role InitTable_ID_String("fd_user_role", "USER_ROLE_ID", "STRID_USER_ROLE_NAME", "Administrator", sqlDb, sqlConnection); InitTable_ID_String("fd_user_role", "USER_ROLE_ID", "STRID_USER_ROLE_NAME", "SuperAdministrator", sqlDb, sqlConnection); //fd_user_type InitTable_ID_String("fd_user_type", "USER_TYPE_ID", "STRID_USER_TYPE_NAME", "Driver", sqlDb, sqlConnection); InitTable_ID_String("fd_user_type", "USER_TYPE_ID", "STRID_USER_TYPE_NAME", "Manager", sqlDb, sqlConnection); InitTable_ID_String("fd_user_type", "USER_TYPE_ID", "STRID_USER_TYPE_NAME", "Administrator", sqlDb, sqlConnection); InitTable_ID_String("fd_user_type", "USER_TYPE_ID", "STRID_USER_TYPE_NAME", "DealerUser", sqlDb, sqlConnection); //fd_user UsersTables usersTable = new UsersTables(connectionString, "STRING_RU", sqlDb); usersTable.OpenConnection(); usersTable.OpenTransaction(); UserFromTable userFromTable = new UserFromTable("admin", "123", "3", "1", DateTime.Now, "org"); usersTable.AddNewUser(userFromTable, 3, 1, 1, 0); userFromTable = new UserFromTable("admin2", "123", "3", "1", DateTime.Now, "org"); usersTable.AddNewUser(userFromTable, 3, 2, 1, 0); usersTable.CommitTransaction(); usersTable.CloseConnection(); //fd_measure int kgId = sqlDb.AddNewMeasure("Kg", "Kilograms"); int kmId = sqlDb.AddNewMeasure("Km", "Kilometers"); int m3Id = sqlDb.AddNewMeasure("M3", "Cubic metres"); int dateId = sqlDb.AddNewMeasure("Date", "DateTime"); int RPMId = sqlDb.AddNewMeasure("Rpm", "Revolutions per minute"); int KmphId = sqlDb.AddNewMeasure("Km/h", "Kilometers per hour"); int PercentsId = sqlDb.AddNewMeasure("%", "Percents"); int FConsumption = sqlDb.AddNewMeasure("L/h", "Liters per hour"); //fd_key sqlDb.AddNewCriteria(kgId, "Commentary to a vehicle", "Строка для Комментария к ТС", 0, 0); sqlDb.AddNewCriteria(kgId, "Load-carrying capacity", "Грузоподьемность", 5000, 25000); sqlDb.AddNewCriteria(m3Id, "Fuel tank 1", "Коментарий к Топливному баку 1", 1, 250); sqlDb.AddNewCriteria(m3Id, "Fuel tank 2", "Коментарий к Топливному баку 1", 1, 250); sqlDb.AddNewCriteria(dateId, "MRO 1", "Дата ТО 1", 1, 1); sqlDb.AddNewCriteria(dateId, "MRO 2", "Дата ТО 2", 1, 1); sqlDb.AddNewCriteria(RPMId, "Nominal turns", "критерий для номинальных оборотов", 1, 1); sqlDb.AddNewCriteria(KmphId, "Maximum speed", "критерий для максимальной скорости", 1, 1); sqlDb.AddNewCriteria(KmphId, "Manoeuvring", "критерий для маневрирования", 1, 1); sqlDb.AddNewCriteria(PercentsId, "City", "критерий для города", 1, 1); sqlDb.AddNewCriteria(PercentsId, "Highway", " критерий для магистрали", 1, 1); sqlDb.AddNewCriteria(FConsumption, "Nominal fuel consumption", "критерий для номинального расхода топлива", 1, 1); sqlDb.AddNewCriteria(RPMId, "Cold start", "критерий для холодного старта", 1, 1); sqlDb.AddNewCriteria(RPMId, "Hot stop", "критерий для горячего стопа", 1, 1); //fd_fuel_type stringId = sqlDb.AddOrGetString("Unknown fuel type", SQLDB.userString); sql = "INSERT INTO fd_fuel_type " + "(FUEL_TYPE_ID, STRID_FUEL_TYPE_NAME)" + "VALUES (@FUEL_TYPE_ID, @STRID_FUEL_TYPE_NAME)"; cmd = new MySqlCommand(sql, sqlConnection); cmd.Parameters.AddWithValue("@FUEL_TYPE_ID", 0); cmd.Parameters.AddWithValue("@STRID_FUEL_TYPE_NAME", stringId); cmd.ExecuteNonQuery(); stringId = sqlDb.AddOrGetString("Undefined", SQLDB.userString); sql = "INSERT INTO fd_vehicle_type " + "(VEHICLE_TYPE_ID, STRID_VEHICLE_TYPE_NAME, FUEL_TYPE_ID)" + "VALUES (@VEHICLE_TYPE_ID, @STRID_VEHICLE_TYPE_NAME, @FUEL_TYPE_ID)"; cmd = new MySqlCommand(sql, sqlConnection); cmd.Parameters.AddWithValue("@VEHICLE_TYPE_ID", 0); cmd.Parameters.AddWithValue("@STRID_VEHICLE_TYPE_NAME", stringId); cmd.Parameters.AddWithValue("@FUEL_TYPE_ID", 0); cmd.ExecuteNonQuery(); int fuelTypeID = sqlDb.AddNewFuelType("FuelType 1"); sqlDb.AddNewVehicleType("Veh type 1", fuelTypeID); //HISTORY /* HistoryTable history = new HistoryTable(connectionString, CurrentLanguage); history.AddOrGetAction("Изменение учетных данных");*/ // sqlConnection.Close(); sqlDb.CloseConnection(); }
public int AddNewUser(UserFromTable newUser, int userTypeId, int userRoleId, int orgId, int curUserId) { Exception userNameAllreadyExists = new Exception("Пользователь с таким именем уже существует!"); int returnUserId = -1; int userId = sqlDb.GetUserId_byUserName(newUser.name); if (userId > 0) throw userNameAllreadyExists; returnUserId = sqlDb.AddNewUser(newUser.name, newUser.pass, userTypeId, userRoleId, orgId, newUser.name, newUser.pass); AddUserInfoValue(returnUserId, DataBaseReference.UserInfo_RegDate, DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString()); AddUserInfoValue(returnUserId, DataBaseReference.UserInfo_EndOfRegistrationDate, DateTime.Now.AddMonths(6).ToShortDateString()); if (curUserId > 0) { HistoryTable log = new HistoryTable(connectionString, CurrentLanguage, sqlDb); log.AddHistoryRecord("fd_user", "USER_ID", returnUserId, curUserId, log.newUserRegistered, "Login: "******", code: " + returnUserId, sqlDb); } return returnUserId; }
public void EditUser(string oldPass, string oldName, UserFromTable newUser, int userTypeId, int userRoleId, int orgId, int curUserId) { Exception userNameAllreadyExists = new Exception("Пользователь с таким именем уже существует!"); int userNewId = sqlDb.GetUserId_byUserName(newUser.name); int userOldId = sqlDb.GetUserId_byUserName(oldName); if (userNewId > 0) { if (userOldId != userNewId) throw userNameAllreadyExists; } int userId = sqlDb.AddNewUser(newUser.name, newUser.pass, userTypeId, userRoleId, orgId, oldName, oldPass); if (curUserId > 0) { HistoryTable log = new HistoryTable(connectionString, CurrentLanguage, sqlDb); log.AddHistoryRecord("fd_user", "USER_ID", userId, curUserId, log.driversRegDataChanged, "Code: " + userId.ToString(), sqlDb); } }
protected void SaveDealerButton_Click(object sender, EventArgs e) { string connectionString = ConfigurationSettings.AppSettings["fleetnetbaseConnectionString"]; DataBlock dataBlock = new DataBlock(connectionString, ConfigurationManager.AppSettings["language"]); int orgId = Convert.ToInt32(Session["CURRENT_ORG_ID"]); try { int dealerId = -1; int userId = -1; string Login = DetailedInfo_Login_TextBox.Text; string password = DetailedInfo_Password_TextBox.Text; string passwordConfirm = DetailedInfo_PasswordConfirm_TextBox.Text; string dealerName = DetailedInfo_DealerName_TextBox.Text; int countryId = Convert.ToInt32(DetailedInfo_Country_DropDown.SelectedValue); dataBlock.OpenConnection(); dataBlock.OpenTransaction(); int curUserId = dataBlock.usersTable.Get_UserID_byName(Page.User.Identity.Name); int orgTypeId = dataBlock.organizationTable.GetOrgTypeId(orgId); switch (NewOrEditUser_hdnField.Value) { case "new": { int neworgTypeId; if (orgTypeId == dataBlock.organizationTable.DealerTypeId) neworgTypeId = dataBlock.organizationTable.SubdealerTypeId; else neworgTypeId = dataBlock.organizationTable.DealerTypeId; dealerId = dataBlock.organizationTable.AddNewOrganization(dealerName, neworgTypeId, countryId, 1, orgId); UserFromTable newUser = new UserFromTable(Login, password, "", "", DateTime.Now, ""); userId = dataBlock.usersTable.AddNewUser(newUser, dataBlock.usersTable.DealerUserTypeId, 1, dealerId, 0); } break; case "edit": { dealerId = Convert.ToInt32(Selected_DealersDataGrid_Index.Value); dataBlock.organizationTable.SetOrganizationName(dealerName, dealerId); dataBlock.organizationTable.SetOrgCountryAndRegion(dealerId, countryId, 1);//тут регион ставится в 1, если надо будет регать где-то регион - поправить! userId = dataBlock.usersTable.Get_AllUsersId(dealerId, dataBlock.usersTable.DealerUserTypeId)[0]; int userRoleId = dataBlock.usersTable.GetUserRoleId(userId); string OldPass = dataBlock.usersTable.Get_UserPassword(userId); string oldName = dataBlock.usersTable.Get_UserName(userId); UserFromTable newUser = new UserFromTable(Login, password, "", "", DateTime.Now, ""); dataBlock.usersTable.EditUser(OldPass, oldName, newUser, dataBlock.usersTable.DealerUserTypeId, userRoleId, dealerId, curUserId); } break; } if (userId < 0) throw new Exception("Не выбран пользователь или произошла ошибка редактирования!"); SaveAdditionalInformation(dealerId, dataBlock); dataBlock.CommitTransaction(); dataBlock.CloseConnection(); } catch (Exception ex) { dataBlock.RollbackConnection(); dataBlock.CloseConnection(); RaiseException(ex); } finally { DetailedInformationPanel.Enabled = false; EditDealer(false); LoadDealersTable(); //DealersTabContainer.ActiveTab = DealersTab; Сделать переключение вкладок! UpdatePanel1.Update(); } }
/// <summary> /// Парсить блок данных /// </summary> /// <param name="generateXML">генерировать ли XML файл</param> /// <param name="output">путь, куда XML сохранять</param> /// <param name="userId">ID пользователя, от имени которого вызывается этот метод</param> /// <returns>разобранный обьект</returns> public object ParseRecords(bool generateXML, string output, int userId) { Exception noOrg = new Exception("No organization entered"); Exception CardVehicleError = new Exception("Ошибка в базе данных. Нет связи Карта - ТС!"); if (organizationID == 0) throw noOrg; if (DATA_BLOCK_ID == -1) throw (new Exception("Can't find this Data Block")); else { //SQLDB sqlDB = new SQLDB(connectionString); SQLDB_Records sqlDB_rec = new SQLDB_Records(connectionString, sqlDb.GETMYSQLCONNECTION()); ReflectObjectToTableClass reflectedItemsList; Type type = null; object myParseObject = new object(); PARSER.DDDParser dddParser = new DDDParser(); string fileName = ""; try { fileName = sqlDB_rec.Get_ParamValue(DATA_BLOCK_ID, "DataBlock_FileName"); byte[] blockDataBlob = sqlDb.GetDataBlock(DATA_BLOCK_ID); blockDataBlob = UnZipBytes(blockDataBlob);//АнЗипим файл! dddParser.ParseFile(blockDataBlob, fileName); int cardType = dddParser.GetCardType(); currentCardType = cardType; //test //OpenConnection(); //OpenTransaction(); // if (cardType == 0)// 0 - card(driver) { int cardId; if (dddParser.cardUnitClass.ef_identification.driverCardHolderIdentification != null) { string drName = dddParser.cardUnitClass.ef_identification.driverCardHolderIdentification.cardHolderName.ToString(); string drNumber = dddParser.cardUnitClass.ef_identification.cardIdentification.cardNumber.ToString(); //sqlDB.OpenConnection(); cardId = cardsTable.GetCardId(drName, drNumber, cardsTable.driversCardTypeId); if (cardId <= 0) { int grId = cardsTable.GetAllGroupIds(organizationID, 0)[0]; UserFromTable userData = new UserFromTable(); userData.name = ""; userData.pass = ""; int newUserId = usersTable.AddNewUser(userData, usersTable.DriverUserTypeId, 1, organizationID, userId); string[] arr=drName.Split(' '); usersTable.AddUserInfoValue(newUserId, DataBaseReference.UserInfo_Name, arr[0]); usersTable.AddUserInfoValue(newUserId, DataBaseReference.UserInfo_Surname, arr[1]); cardId = cardsTable.CreateNewCard(drName, drNumber, cardsTable.driversCardTypeId, organizationID, newUserId, "Init DataBlockId = " + DATA_BLOCK_ID, userId, grId); } sqlDb.SetDataBlock_CardId(DATA_BLOCK_ID, cardId); //sqlDB.CloseConnection(); } else { //sqlDB.OpenConnection(); sqlDb.SetDataBlockState(DATA_BLOCK_ID, 4); //sqlDB.CloseConnection(); throw new Exception("Поддерживаются только водительские карты и информация с бортового устройства."); } type = dddParser.cardUnitClass.GetType(); myParseObject = dddParser.cardUnitClass; } else if (cardType == 1)//vehicle { ///////////////////////// int vehicleId; if (dddParser.vehicleUnitClass.vehicleOverview.vehicleRegistrationIdentification != null) { int cardId; string vehRegNumber = dddParser.vehicleUnitClass.vehicleOverview.vehicleRegistrationIdentification.vehicleRegistrationNumber.ToString(); string vin = dddParser.vehicleUnitClass.vehicleOverview.vehicleIdentificationNumber.ToString(); cardId = cardsTable.GetCardId(vehRegNumber, vin, cardsTable.vehicleCardTypeId); vehicleId = vehiclesTables.GetVehicleId_byVinRegNumbers(vin, vehRegNumber); if ((vehicleId <= 0 && cardId > 0) || (vehicleId > 0 && cardId <= 0)) throw CardVehicleError; if (cardId <= 0) { string marka = ""; DateTime BLOCKED = dddParser.vehicleUnitClass.vehicleOverview.vuDownloadablePeriod.maxDownloadableTime.getTimeRealDate(); int grId = cardsTable.GetAllGroupIds(organizationID,0)[0]; cardId = cardsTable.CreateNewCard(vehRegNumber, vin, cardsTable.vehicleCardTypeId, organizationID, userId, "Init DataBlockId = " + DATA_BLOCK_ID, userId, grId); //vehiclesTables.OpenConnection(); vehicleId = vehiclesTables.AddNewVehicle(vehRegNumber, marka, vin, 0, 1, cardId, BLOCKED, 1); //vehiclesTables.CloseConnection(); // SetAllVehiclesIDS(vehicleId); } sqlDb.SetDataBlock_CardId(DATA_BLOCK_ID, cardId); } ///////////////////////// type = dddParser.vehicleUnitClass.GetType(); myParseObject = dddParser.vehicleUnitClass; } else if (cardType == 2)//plf { //////////////////////устанавливаем PLF карту нужного водителя. Незнаю почему именно здесь, но так получилось. int plfDriversCardType = sqlDB_rec.Get_DataBlockCardType(DATA_BLOCK_ID); sqlDb.SetDataBlock_CardId(DATA_BLOCK_ID, plfDriversCardType); // sqlDB.OpenConnection(); int cardTypeParamId = sqlDb.AddParam("cardType", 0, 255); //sqlDB.OpenConnection(); sqlDb.DeleteDataRecord(DATA_BLOCK_ID, cardTypeParamId); // sqlDB.CloseConnection(); ////////////////////// type = dddParser.plfUnitClass.GetType(); myParseObject = dddParser.plfUnitClass; } else if (cardType == -1) throw new Exception("Информация непригодна для разбора(не опознан тип карты"); //sqlDB.OpenConnection(); SetParseBDate(sqlDb); //sqlDB.CloseConnection(); List<ReflectObjectToTableClass> allRecordsToAdd = new List<ReflectObjectToTableClass>(); foreach (PropertyInfo pi in type.GetProperties(BindingFlags.Public | BindingFlags.Instance)) { reflectedItemsList = new ReflectObjectToTableClass(); string fieldName = pi.Name; object field2 = pi.GetValue(myParseObject, null); if (field2 != null) { reflectedItemsList.ReflectObjectToTable(fieldName, field2);//Не удалять! allRecordsToAdd.Add(AddRecords(reflectedItemsList));//не удалять } } foreach (ReflectObjectToTableClass recordList in allRecordsToAdd) { dataRecord.AddDataArray(recordList.reflectedItemsList); } //sqlDB.OpenConnection(); SetParseEDate(sqlDb); sqlDb.SetDataBlockState(DATA_BLOCK_ID, 2); int dataBlockParseRecords = sqlDb.SetDataBlockParseRecords(DATA_BLOCK_ID); Console.WriteLine("\n\r" + dataBlockParseRecords.ToString() + " records added"); //XML GENERATING if (generateXML) dddParser.GenerateXmlFile(output); // //Добавляем лог для каждого типа блока данных свой. string logNote; HistoryTable historyTable = new HistoryTable(connectionString, CurrentLanguage, sqlDb); if (currentCardType == 0)//driver { string drName = dddParser.cardUnitClass.ef_identification.driverCardHolderIdentification.cardHolderName.ToString(); string drNumber = dddParser.cardUnitClass.ef_identification.cardIdentification.cardNumber.ToString(); logNote = "Driver: " + drName + "(" + drNumber + ")" + ", records number: " + dataBlockParseRecords.ToString(); historyTable.AddHistoryRecord("fn_data_block", "DATA_BLOCK_ID", DATA_BLOCK_ID, userId, historyTable.DDDDriversDataBlockLoaded, logNote, sqlDb); } if (currentCardType == 1)//vehicle { string logVehRegNumber = dddParser.vehicleUnitClass.vehicleOverview.vehicleRegistrationIdentification.vehicleRegistrationNumber.ToString(); string logVin = dddParser.vehicleUnitClass.vehicleOverview.vehicleIdentificationNumber.ToString(); logNote = "Vehicle: " + logVehRegNumber + "(" + logVin + ")" + ", records number: " + dataBlockParseRecords.ToString(); historyTable.AddHistoryRecord("fn_data_block", "DATA_BLOCK_ID", DATA_BLOCK_ID, userId, historyTable.DDDVehiclesDataBlockLoaded, logNote, sqlDb); } if (currentCardType == 2)//plf { string vehPlfIdent = dddParser.plfUnitClass.VEHICLE; string plfDeviceId = dddParser.plfUnitClass.ID_DEVICE; string period = dddParser.plfUnitClass.START_PERIOD.GetSystemTime().ToShortDateString() + " - " + dddParser.plfUnitClass.END_PERIOD.GetSystemTime().ToShortDateString(); logNote = "PLF File: " + vehPlfIdent + "(" + plfDeviceId + ")" + ", period: " + period + ", records number: " + dataBlockParseRecords.ToString(); historyTable.AddHistoryRecord("fn_data_block", "DATA_BLOCK_ID", DATA_BLOCK_ID, userId, historyTable.PLFDataBlockLoaded, logNote, sqlDb); } // //sqlDb.CommitConnection(); //sqlDb.CloseConnection(); } catch (Exception ex) { //sqlDb.RollbackConnection(); //sqlDb.CloseConnection(); throw ex; } finally { } return myParseObject; } }
protected void SaveAccountButton_Click(object sender, EventArgs e) { string connectionString = ConfigurationSettings.AppSettings["fleetnetbaseConnectionString"]; DataBlock dataBlock = new DataBlock(connectionString, ConfigurationManager.AppSettings["language"]); int orgId = Convert.ToInt32(Session["CURRENT_ORG_ID"]); try { int accountId = -1; int userId = -1; string Login = DetailedInfo_Login_TextBox.Text; string password = DetailedInfo_Password_TextBox.Text; string passwordConfirm = DetailedInfo_PasswordConfirm_TextBox.Text; string accountName = DetailedInfo_AccountName_TextBox.Text; int accountType = Convert.ToInt32(AccountTypeDropDown.SelectedValue); int countryId = Convert.ToInt32(DetailedInfo_Country_DropDown.SelectedValue); dataBlock.OpenConnection(); dataBlock.OpenTransaction(); int curUserId = dataBlock.usersTable.Get_UserID_byName(Page.User.Identity.Name); int orgTypeId = dataBlock.organizationTable.GetOrgTypeId(orgId); switch (NewOrEditUser_hdnField.Value) { case "new": { accountId = dataBlock.organizationTable.AddNewOrganization(accountName, accountType, countryId, 1, orgId); UserFromTable newUser = new UserFromTable(Login, password, "", "", DateTime.Now, ""); if (accountType != dataBlock.organizationTable.ClientTypeId) userId = dataBlock.usersTable.AddNewUser(newUser, dataBlock.usersTable.DealerUserTypeId, 1, accountId, 0); else { userId = dataBlock.usersTable.AddNewUser(newUser, dataBlock.usersTable.AdministratorUserTypeId, 1, accountId, curUserId); dataBlock.usersTable.AddUserInfoValue(userId, DataBaseReference.UserInfo_DealerId, orgId.ToString()); } } break; case "edit": { accountId = Convert.ToInt32(Selected_AccountsDataGrid_Index.Value); string oldName = dataBlock.organizationTable.GetOrganizationName(accountId); //dataBlock.organizationTable.SetOrganizationName(accountName, accountId); //dataBlock.organizationTable.SetOrgCountryAndRegion(accountId, countryId, 1);//тут регион ставится в 1, если надо будет регать где-то регион - поправить! dataBlock.organizationTable.EditOrganization(oldName, accountName, accountType, countryId, 1); /*userId = dataBlock.usersTable.Get_AllUsersId(accountId, dataBlock.usersTable.AccountUserTypeId)[0]; int userRoleId = dataBlock.usersTable.GetUserRoleId(userId); string OldPass = dataBlock.usersTable.Get_UserPassword(userId); string oldName = dataBlock.usersTable.Get_UserName(userId); UserFromTable newUser = new UserFromTable(Login, password, "", "", DateTime.Now, ""); dataBlock.usersTable.EditUser(OldPass, oldName, newUser, dataBlock.usersTable.AccountUserTypeId, userRoleId, accountId, curUserId);*/ } break; } if (accountId < 0) throw new Exception("Не выбран аккаунт или произошла ошибка редактирования!"); SaveAdditionalInformation(accountId, dataBlock); dataBlock.CommitTransaction(); dataBlock.CloseConnection(); } catch (Exception ex) { dataBlock.RollbackConnection(); dataBlock.CloseConnection(); RaiseException(ex); } finally { DetailedInformationPanel.Enabled = false; EditAccount(false); LoadAccountsTable(); //AccountsTabContainer.ActiveTab = AccountsTab; Сделать переключение вкладок! DetailedInformationUpdatePanel.Update(); //this.Parent. // ((UpdatePanel)Page.FindControl("AccountsTreeUpdatePanel")).Update(); } }
protected void SaveClientButton_Click(object sender, EventArgs e) { string connectionString = ConfigurationSettings.AppSettings["fleetnetbaseConnectionString"]; DataBlock dataBlock = new DataBlock(connectionString, ConfigurationManager.AppSettings["language"]); int orgId = Convert.ToInt32(Session["CURRENT_ORG_ID"]); try { int newClientId = -1; int userId = -1; string clientName = DetailedInfo_ClientName_TextBox.Text; int countryId = Convert.ToInt32(DetailedInfo_Country_DropDown.SelectedValue); dataBlock.OpenConnection(); dataBlock.OpenTransaction(); int curUserId = dataBlock.usersTable.Get_UserID_byName(Page.User.Identity.Name); int orgTypeId = dataBlock.organizationTable.GetOrgTypeId(orgId); switch (NewOrEditUser_hdnField.Value) { case "new": { int neworgTypeId = dataBlock.organizationTable.ClientTypeId; newClientId = dataBlock.organizationTable.AddNewOrganization(clientName, neworgTypeId, countryId, 1, orgId); if (clientName.Length > 9) clientName = clientName.Substring(0, 9); UserFromTable newUser = new UserFromTable(clientName, "123", "", "", DateTime.Now, ""); userId = dataBlock.usersTable.AddNewUser(newUser, dataBlock.usersTable.AdministratorUserTypeId, 1, newClientId, 0); dataBlock.usersTable.AddUserInfoValue(userId, DataBaseReference.UserInfo_DealerId, orgId.ToString()); } break; case "edit": { newClientId = Convert.ToInt32(Selected_ClientsDataGrid_Index.Value); dataBlock.organizationTable.SetOrganizationName(clientName, newClientId); dataBlock.organizationTable.SetOrgCountryAndRegion(newClientId, countryId, 1);//тут регион ставится в 1, если надо будет регать где-то регион - поправить! } break; } if (userId < 0) throw new Exception("Не выбран пользователь или произошла ошибка редактирования!"); SaveAdditionalInformation(newClientId, dataBlock); dataBlock.CommitTransaction(); dataBlock.CloseConnection(); } catch (Exception ex) { dataBlock.RollbackConnection(); dataBlock.CloseConnection(); RaiseException(ex); } finally { DetailedInformationPanel.Enabled = false; EditClient(false); LoadClientsTable(); //DealersTabContainer.ActiveTab = DealersTab; Сделать переключение вкладок! UpdatePanel1.Update(); } }
protected void SaveUserButton_Click(object sender, EventArgs e) { string connectionString = ConfigurationSettings.AppSettings["fleetnetbaseConnectionString"]; DataBlock dataBlock = new DataBlock(connectionString, ConfigurationManager.AppSettings["language"]); try { int userId = -1; int orgId = Convert.ToInt32(Session["CURRENT_ORG_ID"]); string Login = DetailedInfo_Login_TextBox.Text; string password = DetailedInfo_Password_TextBox.Text; string passwordConfirm = DetailedInfo_PasswordConfirm_TextBox.Text; int UserRoleId = Convert.ToInt32(DetailedInfo_UserRole_DropDown.SelectedValue); int userTypeId = Convert.ToInt32(DetailedInfo_UserType_DropDown.SelectedValue); dataBlock.OpenConnection(); dataBlock.OpenTransaction(); int curUserId = dataBlock.usersTable.Get_UserID_byName(Page.User.Identity.Name); switch (NewOrEditUser_hdnField.Value) { case "new": { UserFromTable newUser = new UserFromTable(Login, password, "", "", DateTime.Now, ""); userId = dataBlock.usersTable.AddNewUser(newUser, userTypeId, UserRoleId, orgId, curUserId); } break; case "edit": { userId = Convert.ToInt32(Selected_UsersDataGrid_Index.Value); string OldPass = dataBlock.usersTable.Get_UserPassword(userId); string oldName = dataBlock.usersTable.Get_UserName(userId); UserFromTable newUser = new UserFromTable(Login, password, "", "", DateTime.Now, ""); dataBlock.usersTable.EditUser(OldPass, oldName, newUser, userTypeId, UserRoleId, orgId, curUserId); } break; } if (userId < 0) throw new Exception("Не выбран пользователь!"); SaveAdditionalInformation(userId, dataBlock); dataBlock.CommitTransaction(); dataBlock.CloseConnection(); } catch (Exception ex) { dataBlock.RollbackConnection(); dataBlock.CloseConnection(); RaiseException(ex); } finally { DetailedInformationPanel.Enabled = false; EditUser(false); LoadUsersTable(); //UsersTabContainer.ActiveTab = UsersTab; UpdatePanel1.Update(); } }