protected void Page_Load(object sender, EventArgs e) { AppKey = Globals.Settings.AppServiceSecureKey; var controlTicketID = String.Empty; var idListString = Request.QueryString["id"]; if (!String.IsNullOrEmpty(idListString)) { var deliveryCost = 0.00; List <string> idList = idListString.Split('-').ToList(); var sqlString = String.Empty; foreach (var id in idList) { sqlString = sqlString + "T.ID = " + id + " OR "; controlTicketID = id; double cost; if (double.TryParse(MoneyMethods.AgreedAssessedDeliveryCosts(id.ToString()), out cost)) { deliveryCost += cost; } } var fullSqlString = "SELECT * FROM `tickets` as T JOIN `city` as C on T.CityID = C.ID WHERE " + sqlString.Remove(sqlString.Length - 3) + "ORDER BY C.Name ASC"; var dm = new DataManager(); var dataset = dm.QueryWithReturnDataSet(fullSqlString); lblGruzobozCost.Text = MoneyMethods.MoneySeparator( dm.QueryWithReturnDataSet("SELECT SUM(T.`GruzobozCost`) FROM `tickets` as T JOIN `city` as C on T.CityID = C.ID WHERE " + sqlString.Remove(sqlString.Length - 3)).Tables[0].Rows[0][0].ToString()); lblDeliveryCost.Text = MoneyMethods.MoneySeparator(deliveryCost); var i = 1; dataset.Tables[0].Columns.Add("PNumber", typeof(String)); foreach (DataRow row in dataset.Tables[0].Rows) { row["PNumber"] = i++; } lvAllPrint.DataSource = dataset; lvAllPrint.DataBind(); var ticket = new Tickets { ID = Convert.ToInt32(controlTicketID) }; ticket.GetById(); DriverName = lblDriver.Text = DriversHelper.DriverIDToFioToPrint(ticket.DriverID.ToString()); lblDriverPhone.Text = DriversHelper.DriverIDToPhone(ticket.DriverID.ToString()); lblTrack.Text = lblTrack2.Text = CityHelper.CityToTrack(Convert.ToInt32(ticket.CityID), ticket.ID.ToString()); lblOperatorName.Text = CityHelper.CityToTrackOperatorName(Convert.ToInt32(ticket.CityID)); lblOperatorPhone.Text = CityHelper.CityToTrackOperatorPhone(Convert.ToInt32(ticket.CityID)); } lblDate.Text = DateTime.Now.AddDays(1).ToString("dd.MM.yyyy"); if (String.IsNullOrEmpty(idListString) || lvAllPrint.Items.Count == 0) { Page.Visible = false; Response.Write(Resources.PrintResources.PrintMapEmptyText); } }
public void lbDelete_Click(Object sender, EventArgs e) { DeleteAccess(); var userInSession = (Users)Session["userinsession"]; BackLink = DriversHelper.BackDriverLinkBuilder(stbDID.Text, stbPhone.Text, sddlStatus.SelectedValue, stbFirstName.Text); var lb = (LinkButton)sender; var drivers = new Drivers(); drivers.Delete(Convert.ToInt32(lb.CommandArgument), userInSession.ID, OtherMethods.GetIPAddress(), "DriversView"); Page.Response.Redirect("~/ManagerUI/Menu/Souls/DriversView.aspx?" + BackLink); }
protected void Page_Load(object sender, EventArgs e) { Page.Title = PagesTitles.ManagerDriverViewTitle + BackendHelper.TagToValue("page_title_part"); OtherMethods.ActiveRightMenuStyleChanche("hlDrivers", this.Page); OtherMethods.ActiveRightMenuStyleChanche("hlSouls", this.Page); #region Блок доступа к странице var userInSession = (Users)Session["userinsession"]; var rolesList = Application["RolesList"] as List <Roles>; var currentRole = (Roles)rolesList.SingleOrDefault(u => u.Name.ToLower() == userInSession.Role.ToLower()); if (currentRole.PageDriverView != 1) { Response.Redirect("~/Error.aspx?id=1"); } #endregion if (Page.Request.Params["id"] != null) { if (!IsPostBack) { var driver = new Drivers { ID = Convert.ToInt32(Page.Request.Params["id"]) }; driver.GetById(); lblID.Text = driver.ID.ToString(); lblStatus.Text = DriversHelper.DriverStatusToText(Convert.ToInt32(driver.StatusID)); lblCar.Text = CarsHelper.CarIdToModelName(driver.CarID.ToString()); hlCar.NavigateUrl = "~/ManagerUI/CarView.aspx?id=" + driver.CarID; lblFIO.Text = String.Format("{0} {1} {2}", driver.FirstName, driver.LastName, driver.ThirdName); lblPhoneOne.Text = driver.PhoneOne; lblPhoneTwo.Text = driver.PhoneTwo; lblHomePhone.Text = driver.HomePhone; lblHomeAddress.Text = driver.HomeAddress; lblBirthDay.Text = Convert.ToDateTime(driver.BirthDay).ToString("dd-MM-yyyy"); lblContactPersonFIO.Text = driver.ContactPersonFIO; lblContactPersonPhone.Text = driver.ContactPersonPhone; lblPassportData.Text = String.Format("{0}{1}", driver.PassportSeria, driver.PassportNumber); lblPersonalNumber.Text = driver.PersonalNumber; lblROVD.Text = driver.ROVD; lblDateOfIssue.Text = Convert.ToDateTime(driver.DateOfIssue).ToString("dd-MM-yyyy"); lblValidity.Text = Convert.ToDateTime(driver.Validity).ToString("dd-MM-yyyy"); lblRegistrationAddress.Text = driver.RegistrationAddress; lblDriverPassport.Text = driver.DriverPassport; lblDriverPassportDateOfIssue.Text = Convert.ToDateTime(driver.DriverPassportDateOfIssue).ToString("dd-MM-yyyy"); lblDriverPassportValidity.Text = Convert.ToDateTime(driver.DriverPassportValidity).ToString("dd-MM-yyyy"); lblMedPolisDateOfIssue.Text = Convert.ToDateTime(driver.MedPolisDateOfIssue).ToString("dd-MM-yyyy"); lblMedPolisValidity.Text = Convert.ToDateTime(driver.MedPolisValidity).ToString("dd-MM-yyyy"); } } }
protected void Page_Load(object sender, EventArgs e) { OtherMethods.ActiveRightMenuStyleChanche("hlDrivers", this.Page); OtherMethods.ActiveRightMenuStyleChanche("hlSouls", this.Page); Page.Title = Page.Request.Params["id"] != null ? PagesTitles.ManagerDriversEdit + BackendHelper.TagToValue("page_title_part") : PagesTitles.ManagerDriversCreate + BackendHelper.TagToValue("page_title_part"); #region Блок доступа к странице var userInSession = (Users)Session["userinsession"]; var rolesList = Application["RolesList"] as List <Roles>; var currentRole = (Roles)rolesList.SingleOrDefault(u => u.Name.ToLower() == userInSession.Role.ToLower()); if (currentRole.PageDriversEdit != 1) { Response.Redirect("~/Error.aspx?id=1"); } #endregion BackLink = DriversHelper.BackDriverLinkBuilder(Page.Request.Params["did"], Page.Request.Params["phone"], Page.Request.Params["statusid"], Page.Request.Params["firstname"]); if (!IsPostBack) { ddlStatus.DataSource = Drivers.DriverStatuses; ddlStatus.DataTextField = "Value"; ddlStatus.DataValueField = "Key"; ddlStatus.DataBind(); var cars = new Cars(); var ds = cars.GetAllItems("Model", "ASC", null); ds.Tables[0].Columns.Add("ModelAndNumber", typeof(string), "Model + ' ' + Number"); ddlCar.DataSource = ds; ddlCar.DataTextField = "ModelAndNumber"; ddlCar.DataValueField = "ID"; ddlCar.DataBind(); ddlCar.Items.Add(new ListItem("Не назначена", "0")); } if (Page.Request.Params["id"] != null) { var driver = new Drivers { ID = Convert.ToInt32(Page.Request.Params["id"]) }; driver.GetById(); if (String.IsNullOrEmpty(driver.FirstName)) { Page.Response.Redirect("~/ManagerUI/Menu/Souls/DriversView.aspx?" + BackLink); } if (!IsPostBack) { ddlCar.SelectedValue = driver.CarID.ToString(); ddlStatus.SelectedValue = driver.StatusID.ToString(); tbFirstName.Text = driver.FirstName; tbLastName.Text = driver.LastName; tbThirdName.Text = driver.ThirdName; tbPhoneOne.Text = driver.PhoneOne; tbPhoneTwo.Text = driver.PhoneTwo; tbPhoneHome.Text = driver.HomePhone; tbHomeAddress.Text = driver.HomeAddress; tbBirthDay.Text = Convert.ToDateTime(driver.BirthDay).ToString("dd-MM-yyyy"); tbContactPersonFIO.Text = driver.ContactPersonFIO; tbContactPersonPhone.Text = driver.ContactPersonPhone; tbPassportSeria.Text = driver.PassportSeria; tbPassportNumber.Text = driver.PassportNumber; tbPersonalNumber.Text = driver.PersonalNumber; tbROVD.Text = driver.ROVD; tbDateOfIssue.Text = Convert.ToDateTime(driver.DateOfIssue).ToString("dd-MM-yyyy"); tbValidity.Text = Convert.ToDateTime(driver.Validity).ToString("dd-MM-yyyy"); tbRegistrationAddress.Text = driver.RegistrationAddress; tbDriverPassport.Text = hfDriverPassport.Value = driver.DriverPassport; tbDriverPassportDateOfIssue.Text = Convert.ToDateTime(driver.DriverPassportDateOfIssue).ToString("dd-MM-yyyy"); tbDriverPassportValidity.Text = Convert.ToDateTime(driver.DriverPassportValidity).ToString("dd-MM-yyyy"); tbMedPolisDateOfIssue.Text = Convert.ToDateTime(driver.MedPolisDateOfIssue).ToString("dd-MM-yyyy"); tbMedPolisValidity.Text = Convert.ToDateTime(driver.MedPolisValidity).ToString("dd-MM-yyyy"); } } }
protected void Page_Load(object sender, EventArgs e) { AppKey = Globals.Settings.AppServiceSecureKey; var controlTicketID = String.Empty; var dm = new DataManager(); var idListString = IdList = Request.QueryString["id"]; var withUrMarker = Request.QueryString["with_ur"]; string whereUrSql; if (!String.IsNullOrEmpty(withUrMarker)) { cbWithUr.Checked = true; whereUrSql = " "; } else { whereUrSql = " AND U.`TypeID` = '1' "; cbWithUr.Checked = false; } if (!String.IsNullOrEmpty(idListString)) { List <string> idList = idListString.Split('-').ToList(); var sqlString = String.Empty; foreach (var id in idList) { sqlString = sqlString + "T.ID = " + id + " OR "; controlTicketID = id; } var fullSqlString = "SELECT * FROM `tickets` as T " + "JOIN `city` as C " + "ON T.CityID = C.ID " + "JOIN `usersprofiles` as U " + "ON T.`UserProfileID` = U.`ID` " + "WHERE ((" + sqlString.Remove(sqlString.Length - 3) + ") AND T.PrintNakl = '1' AND T.NotPrintInPril2 ='0'" + whereUrSql + ") " //AND (T.StatusID ='3' OR T.StatusID = '19') ; var dataset = dm.QueryWithReturnDataSet(fullSqlString); var iter = 1; var overBoxes = 0; var overWeight = 0; decimal overCost = 0; DriverID = String.Empty; dataset.Tables[0].Columns.Add("PorID"); dataset.Tables[0].Columns.Add("Pril2CostOrCost"); foreach (DataRow row in dataset.Tables[0].Rows) { row["PorID"] = iter.ToString(); iter++; DriverID = row["DriverID"].ToString(); overBoxes += Convert.ToInt32(row["BoxesNumber"]); overWeight += String.IsNullOrEmpty(row["Weight"].ToString()) ? 0 : Convert.ToInt32(row["Weight"]); var zero = 0.00; if (Convert.ToDouble(row["Pril2Cost"]) != zero) { overCost += Convert.ToDecimal(row["Pril2Cost"]); row["Pril2CostOrCost"] = row["Pril2Cost"]; } else { overCost += Convert.ToInt32(row["AgreedCost"]) != 0 ? Convert.ToDecimal(row["AgreedCost"]) : Convert.ToDecimal(row["AssessedCost"]); row["Pril2CostOrCost"] = Convert.ToInt32(row["AgreedCost"]) != 0 ? row["AgreedCost"] : row["AssessedCost"]; } } lvAllPrint.DataSource = dataset; lvAllPrint.DataBind(); try { DriverName = dm.QueryWithReturnDataSet(String.Format("SELECT `FIO` FROM `drivers` WHERE `id` = {0}", DriverID)).Tables[0].Rows[0][0].ToString(); } catch (Exception) { DriverName = "Не назначен"; } lblDriver.Text = lblDriver2.Text = DriversHelper.DriverIDToNameZP(DriverID); lblOverNumber.Text = dataset.Tables[0].Rows.Count.ToString(); lblOverCost.Text = lblOverCost2.Text = lblOverCost3.Text = MoneyMethods.MoneySeparator(overCost.ToString()); lblCostWord.Text = MoneyHelper.ToRussianString(overCost); Inpnaklnumber.Text = dm.QueryWithReturnDataSet("SELECT `NaklNumber` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); Inpseria.Text = dm.QueryWithReturnDataSet("SELECT `NaklSeria` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); Inpdate.Text = dm.QueryWithReturnDataSet("SELECT `NaklDate` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); overGruzobozCost.Text = MoneyMethods.MoneySeparator( MoneyMethods.GruzobozCostLoweringPercentage( dm.QueryWithReturnDataSet( "SELECT SUM(`GruzobozCost`) " + "FROM `tickets` T " + "JOIN `usersprofiles` as U " + "ON T.`UserProfileID` = U.`ID` " + "WHERE ((" + sqlString.Remove(sqlString.Length - 3) + ") AND T.PrintNakl = '1' AND T.NotPrintInPril2 ='0'" + whereUrSql + ")" //AND (T.StatusID ='3' OR T.StatusID = '19') ).Tables[0].Rows[0][0].ToString() ) ); var ticket = new Tickets { ID = Convert.ToInt32(controlTicketID) }; ticket.GetById(); var notVisibleCount = dm.QueryWithReturnDataSet( "SELECT COUNT(*) " + "FROM `tickets` as T " + "JOIN `usersprofiles` as U " + "ON T.`UserProfileID` = U.`ID` " + "WHERE ((" + sqlString.Remove(sqlString.Length - 3) + ") AND T.PrintNakl = '1' AND T.NotPrintInPril2 ='1'" + whereUrSql + ")").Tables[0].Rows[0][0].ToString(); //AND (T.StatusID ='3' OR T.StatusID = '19') btnReload.Enabled = notVisibleCount == "0"; //рассчет недостающих коробок и веса СТАРТ var notVisibleTicketsTable = dm.QueryWithReturnDataSet( "SELECT T.Weight, T.AgreedCost, T.AssessedCost, T.BoxesNumber " + "FROM `tickets` as T " + "JOIN `usersprofiles` as U " + "ON T.`UserProfileID` = U.`ID` " + "WHERE ((" + sqlString.Remove(sqlString.Length - 3) + ") AND T.PrintNakl = '1' AND NotPrintInPril2 ='1'" + whereUrSql + ")").Tables[0]; //AND (T.StatusID ='3' OR T.StatusID = '19') foreach (DataRow row in notVisibleTicketsTable.Rows) { overBoxes += Convert.ToInt32(row["BoxesNumber"]); overWeight += String.IsNullOrEmpty(row["Weight"].ToString()) ? 0 : Convert.ToInt32(row["Weight"]); } lblOverBoxes.Text = overBoxes.ToString(); lblBoxesWord.Text = NumberToRussianString.NumberToString( Convert.ToInt64(overBoxes), NumberToRussianString.WordGender.Masculine); lblOverWeight.Text = overWeight.ToString(); lblWeightWord.Text = NumberToRussianString.NumberToString( Convert.ToInt64(overWeight), NumberToRussianString.WordGender.Masculine); //рассчет недостающих коробок и веса КОНЕЦ if (OneCMethods.IfFileExist()) { btnCSVStart.Enabled = false; } else { btnCSVAdd.Enabled = false; btnCSVEnd.Enabled = false; } } if (String.IsNullOrEmpty(idListString) || lvAllPrint.Items.Count == 0) { Page.Visible = false; if (String.IsNullOrEmpty(idListString)) { Response.Write(Resources.PrintResources.PrintNaklPrilEmptyText); } else { Response.Write(Resources.PrintResources.PrintNaklPrilEmptyText + String.Format("<br/><center><a href=\"{0}&with_ur=1\">печать с юр. лицами</a><center>", Request.RawUrl)); } Page.Visible = false; } }
protected void Page_Load(object sender, EventArgs e) { AppKey = Globals.Settings.AppServiceSecureKey; var controlTicketID = String.Empty; var idListString = Request.QueryString["id"]; var withUrMarker = Request.QueryString["with_ur"]; var ticketsCount = 0; if (!String.IsNullOrEmpty(idListString)) { List <string> idList = idListString.Split('-').ToList(); var sqlString = String.Empty; foreach (var id in idList) { sqlString = sqlString + "T.`ID` = " + id + " OR "; controlTicketID = id; } string fullSqlString; if (String.IsNullOrEmpty(withUrMarker)) { cbWithUr.Checked = false; fullSqlString = "SELECT T.`SecureID`, T.`ID`, T.`BoxesNumber`, T.`Weight`, T.`AgreedCost`, T.`AssessedCost`, T.`DriverID` " + "FROM `tickets` T " + "JOIN `usersprofiles` as U " + "ON T.`UserProfileID` = U.`ID` " + "WHERE (" + sqlString.Remove(sqlString.Length - 3) + ") AND `PrintNakl` = '1' AND U.`TypeID` = '1' AND (T.StatusID ='3' OR T.StatusID = '19')"; } else { cbWithUr.Checked = true; fullSqlString = "SELECT T.`SecureID`, T.`ID`, T.`BoxesNumber`, T.`Weight`, T.`AgreedCost`, T.`AssessedCost`, T.`DriverID` " + "FROM `tickets` T " + "JOIN `usersprofiles` U " + "ON T.`UserProfileID` = U.`ID` " + "WHERE (" + sqlString.Remove(sqlString.Length - 3) + ") AND (T.`PrintNaklInMap` = '0' OR U.`TypeID` = '1') AND (T.StatusID ='3' OR T.StatusID = '19')" + "ORDER BY T.`ID` DESC"; } var dm = new DataManager(); var dataset = dm.QueryWithReturnDataSet(fullSqlString); var overBoxes = 0; var overWeight = 0; decimal overCost = 0; var driverID = String.Empty; foreach (DataRow row in dataset.Tables[0].Rows) { driverID = row["DriverID"].ToString(); overBoxes += Convert.ToInt32(row["BoxesNumber"]); overWeight += String.IsNullOrEmpty(row["Weight"].ToString()) ? 0 : Convert.ToInt32(row["Weight"]); overCost += Convert.ToInt32(row["AgreedCost"]) != 0 ? Convert.ToDecimal(row["AgreedCost"]) : Convert.ToDecimal(row["AssessedCost"]); ticketsCount++; } lblCar.Text = DriversHelper.DriverIDToCarZP(driverID); lblDriver.Text = lblDriver2.Text = lblDriver3.Text = DriversHelper.DriverIDToNameZP(driverID); lblCost.Text = lblCost2.Text = lblCost3.Text = lblCost4.Text = MoneyMethods.MoneySeparator(overCost.ToString()); lblBoxes2.Text = lblBoxes3.Text = overBoxes.ToString(); lblWeight.Text = lblWeight2.Text = overWeight.ToString(); lblCostWord.Text = MoneyHelper.ToRussianString(overCost); lblWeightWord.Text = NumberToRussianString.NumberToString( Convert.ToInt64(overWeight), NumberToRussianString.WordGender.Masculine); lblBoxesWord.Text = NumberToRussianString.NumberToString( Convert.ToInt64(overBoxes), NumberToRussianString.WordGender.Masculine); Inpnaklnumber.Text = dm.QueryWithReturnDataSet("SELECT `NaklNumber` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); Inpseria.Text = dm.QueryWithReturnDataSet("SELECT `NaklSeria` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); Inpdate.Text = dm.QueryWithReturnDataSet("SELECT `NaklDate` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); Inpputevoi.Text = dm.QueryWithReturnDataSet("SELECT `Putevoi` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); var ticket = new Tickets { ID = Convert.ToInt32(controlTicketID) }; ticket.GetById(); } #region Сообщение, если накладная пустая if (String.IsNullOrEmpty(idListString) || ticketsCount == 0) { Page.Visible = false; if (String.IsNullOrEmpty(idListString)) { Response.Write(Resources.PrintResources.PrintNaklEmptyText); } else { Response.Write(Resources.PrintResources.PrintNaklEmptyText + String.Format("<br/><center><a href=\"{0}&with_ur=1\">печать с юр. лицами</a><center>", Request.RawUrl)); } } #endregion }
protected void Page_Load(object sender, EventArgs e) { AppKey = Globals.Settings.AppServiceSecureKey; var controlTicketID = String.Empty; var idListString = TicketIdList = Request.QueryString["id"]; var withUrMarker = Request.QueryString["with_ur"]; if (!String.IsNullOrEmpty(idListString)) { List <string> idList = idListString.Split('-').ToList(); var sqlString = String.Empty; foreach (var id in idList) { sqlString = sqlString + "T.`ID` = " + id + " OR "; controlTicketID = id; } string fullSqlString; if (String.IsNullOrEmpty(withUrMarker)) { cbWithUr.Checked = false; fullSqlString = "SELECT T.`SecureID`, T.`ID`, T.`BoxesNumber`, T.`Weight`, T.`AgreedCost`, T.`AssessedCost`, T.`DriverID` " + "FROM `tickets` T " + "JOIN `usersprofiles` U " + "ON T.`UserProfileID` = U.`ID` " + "WHERE (" + sqlString.Remove(sqlString.Length - 3) + ") AND U.`TypeID` = '1' AND (T.StatusID ='3' OR T.StatusID = '19')" + "ORDER BY T.`ID` DESC"; } else { cbWithUr.Checked = true; fullSqlString = "SELECT T.`SecureID`, T.`ID`, T.`BoxesNumber`, T.`Weight`, T.`AgreedCost`, T.`AssessedCost`, T.`DriverID` " + "FROM `tickets` T " + "JOIN `usersprofiles` U " + "ON T.`UserProfileID` = U.`ID` " + "WHERE (" + sqlString.Remove(sqlString.Length - 3) + ") AND (T.`PrintNaklInMap` = '0' OR U.`TypeID` = '1') AND (T.StatusID ='3' OR T.StatusID = '19')" + "ORDER BY T.`ID` DESC"; } var dm = new DataManager(); var dataset = dm.QueryWithReturnDataSet(fullSqlString); var iter = 1; var overBoxes = 0; var overWeight = 0; decimal overCost = 0; DriverID = String.Empty; dataset.Tables[0].Columns.Add("PorID"); foreach (DataRow row in dataset.Tables[0].Rows) { row["PorID"] = iter.ToString(); iter++; DriverID = row["DriverID"].ToString(); overBoxes += Convert.ToInt32(row["BoxesNumber"]); overWeight += String.IsNullOrEmpty(row["Weight"].ToString()) ? 0 : Convert.ToInt32(row["Weight"]); overCost += Convert.ToInt32(row["AgreedCost"]) != 0 ? Convert.ToDecimal(row["AgreedCost"]) : Convert.ToDecimal(row["AssessedCost"]); } lvAllPrint.DataSource = dataset; lvAllPrint.DataBind(); try { DriverName = dm.QueryWithReturnDataSet(String.Format("SELECT CONCAT(`FirstName`, ' ', `LastName`, ' ', `ThirdName`) FROM `drivers` WHERE `id` = {0}", DriverID)).Tables[0].Rows[0][0].ToString(); } catch (Exception) { DriverName = "Не назначен"; } lblDriver.Text = lblDriver2.Text = DriversHelper.DriverIDToNameZP(DriverID); lblOverNumber.Text = dataset.Tables[0].Rows.Count.ToString(); lblOverCost.Text = lblOverCost2.Text = MoneyMethods.MoneySeparator(overCost.ToString()); lblCostWord.Text = MoneyHelper.ToRussianString(overCost); lblOverBoxes.Text = overBoxes.ToString(); lblBoxesWord.Text = NumberToRussianString.NumberToString( Convert.ToInt64(overBoxes), NumberToRussianString.WordGender.Masculine); lblOverWeight.Text = overWeight.ToString(); lblWeightWord.Text = NumberToRussianString.NumberToString( Convert.ToInt64(overWeight), NumberToRussianString.WordGender.Masculine); Inpnaklnumber.Text = dm.QueryWithReturnDataSet("SELECT `NaklNumber` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); Inpseria.Text = dm.QueryWithReturnDataSet("SELECT `NaklSeria` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); Inpdate.Text = dm.QueryWithReturnDataSet("SELECT `NaklDate` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); var ticket = new Tickets { ID = Convert.ToInt32(controlTicketID) }; ticket.GetById(); } if (String.IsNullOrEmpty(idListString) || lvAllPrint.Items.Count == 0) { Page.Visible = false; if (String.IsNullOrEmpty(idListString)) { Response.Write(Resources.PrintResources.PrintNaklPrilEmptyText); } else { Response.Write(Resources.PrintResources.PrintNaklPrilEmptyText + String.Format("<br/><center><a href=\"{0}&with_ur=1\">печать с юр. лицами</a><center>", Request.RawUrl)); } Page.Visible = false; } }
public static string OldNewValueToRuss(string tableName, string propertyName, string value) { #region таблица заявок if (tableName == "tickets") { if (propertyName == "CourseRUR" || propertyName == "CourseUSD" || propertyName == "CourseEUR" || propertyName == "DeliveryCost" || propertyName == "AssessedCost" || propertyName == "AgreedCost" || propertyName == "ReceivedUSD" || propertyName == "ReceivedEUR" || propertyName == "ReceivedEUR" || propertyName == "ReceivedBLR" || propertyName == "GruzobozCost") { return(MoneyMethods.MoneySeparator(value)); } if (propertyName == "DriverID") { return(DriversHelper.DriverIDToFioToPrint(value)); } if (propertyName == "StatusIDOld" || propertyName == "StatusID") { return(OtherMethods.TicketStatusToText(value)); } if (propertyName == "CityID") { return(CityHelper.CityIDToCityNameWithotCustom(value)); } if (propertyName == "TrackIDUser") { return(OtherMethods.TrackToText(Convert.ToInt32(value))); } if (propertyName == "DeliveryDate") { return(value.Remove(value.Length - 8)); } if (propertyName == "Comment") { return(WebUtility.HtmlDecode(value)); } if (propertyName == "PrintNakl" || propertyName == "PrintNaklInMap" || propertyName == "IsExchange" || propertyName == "WithoutMoney" || propertyName == "CheckedOut" || propertyName == "Phoned") { return(value == "0" ? "нет" : "да"); } if (propertyName == "OvDateFrom" || propertyName == "OvDateTo") { return(String.IsNullOrEmpty(value) ? String.Empty : Convert.ToDateTime(value).ToString("HH:mm")); } } #endregion #region таблица пользователей if (tableName == "users") { if (propertyName == "SpecialClient" || propertyName == "IsCourse" || propertyName == "AllowApi") { return(value == "0" ? "нет" : "да"); } if (propertyName == "Status") { return(UsersHelper.UserStatusToText(Convert.ToInt32(value))); } if (propertyName == "Role") { return(UsersHelper.RoleToRuss(value)); } if (propertyName == "Discount") { return(String.Format("{0}%", value)); } if (propertyName == "Password") { return(String.Empty); } if (propertyName == "Validity" && value.Length >= 8) { return(value.Remove(value.Length - 8)); } if (propertyName == "BirthDay" && value.Length >= 8) { return(value.Remove(value.Length - 8)); } if (propertyName == "DateOfIssue" && value.Length >= 8) { return(value.Remove(value.Length - 8)); } } #endregion #region таблица грузов if (tableName == "goods") { if (propertyName == "Cost") { return(MoneyMethods.MoneySeparator(value)); } if (propertyName == "WithoutAkciza") { return(value == "0" ? "нет" : "да"); } } #endregion #region таблица профилей if (tableName == "usersprofiles") { if (propertyName == "StatusID") { return(UsersProfilesHelper.UserProfileStatusToText(Convert.ToInt32(value))); } } #endregion #region таблица водителй if (tableName == "drivers") { if (propertyName == "StatusID" && !String.IsNullOrEmpty(value)) { return(DriversHelper.DriverStatusToText(Convert.ToInt32(value))); } if (value.Length >= 8 && (propertyName == "DateOfIssue" || propertyName == "Validity" || propertyName == "BirthDay" || propertyName == "DriverPassportDateOfIssue" || propertyName == "DriverPassportValidity" || propertyName == "MedPolisDateOfIssue" || propertyName == "MedPolisValidity")) { return(value.Remove(value.Length - 8)); } } #endregion #region таблица авто if (tableName == "cars") { if (propertyName == "TypeID" && !String.IsNullOrEmpty(value)) { return(CarsHelper.CarTypeToFullString(Convert.ToInt32(value))); } } #endregion #region таблица категорий if (tableName == "category") { if (propertyName == "Name") { return(value); } } #endregion return(value); }
public static string StatusChangeFilter(ref Tickets ticket, string cDriverIdString, string cStatusIdString, string cStatusDescription, string cAdmissionDateString, string nStatusDescription, string nStatusIdString, string nDeliveryDateString, Roles currentRole) { #region Обработка входящих параметров int? cStatusId; int? nStatusId; int? cDriverId; DateTime nDeliveryDate = Convert.ToDateTime("01.01.0001 0:00:00"); try { cStatusId = Convert.ToInt32(cStatusIdString); nStatusId = Convert.ToInt32(nStatusIdString); cDriverId = Convert.ToInt32(cDriverIdString); } catch (Exception) { return("Неверный формат входных данных!"); } try { if (nStatusId == 4 || nStatusId == 11) { nDeliveryDate = Convert.ToDateTime(nDeliveryDateString); } } catch (Exception) { return("Неверный формат входных данных (d)!"); } #endregion #region Проверки на доступность обновления заявки //если заявка изменяется из текущего статуса "Завершено" в любой другой новый, то проверяем права пользователя на изменение заявок в текущем статусе "Завершено" if (cStatusId == 6 && nStatusId != 6 && currentRole.ActionCompletedStatus == 1) { return(String.Format("У вас нет прав на изменение статуса заявки в статусе \"{0}\"!", TicketStatusesResources.Completed)); } #region Проверка на права выставления конкретного статуса if (cStatusId != 1 && nStatusId == 1 && currentRole.StatusNotProcessed != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.NotProcessed)); } if (cStatusId != 2 && nStatusId == 2 && currentRole.StatusInStock != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.InStock)); } if (cStatusId != 3 && nStatusId == 3 && currentRole.StatusOnTheWay != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.OnTheWay)); } if (cStatusId != 4 && nStatusId == 4 && currentRole.StatusTransferInStock != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Transfer_InStock)); } if (cStatusId != 5 && nStatusId == 5 && currentRole.StatusProcessed != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Processed)); } if (cStatusId != 6 && nStatusId == 6 && currentRole.StatusCompleted != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Completed)); } if (cStatusId != 7 && nStatusId == 7 && currentRole.StatusRefusingInCourier != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Refusing_InCourier)); } if (cStatusId != 8 && nStatusId == 8 && currentRole.StatusReturnInStock != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Return_InStock)); } if (cStatusId != 9 && nStatusId == 9 && currentRole.StatusCancelInStock != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Cancel_InStock)); } if (cStatusId != 10 && nStatusId == 10 && currentRole.StatusCancel != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Cancel)); } if (cStatusId != 11 && nStatusId == 11 && currentRole.StatusTransferInCourier != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Transfer_InCourier)); } if (cStatusId != 12 && nStatusId == 12 && currentRole.StatusDelivered != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Delivered)); } if (cStatusId != 13 && nStatusId == 13 && currentRole.StatusExchangeInCourier != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Exchange_InCourier)); } if (cStatusId != 14 && nStatusId == 14 && currentRole.StatusDeliveryFromClientInCourier != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.DeliveryFromClient_InCourier)); } if (cStatusId != 15 && nStatusId == 15 && currentRole.StatusExchangeInStock != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Exchange_InStock)); } if (cStatusId != 16 && nStatusId == 16 && currentRole.StatusDeliveryFromClientInStock != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.DeliveryFromClient_InStock)); } if (cStatusId != 17 && nStatusId == 17 && currentRole.StatusRefusalOnTheWay != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Refusal_OnTheWay)); } if (cStatusId != 18 && nStatusId == 18 && currentRole.StatusRefusalByAddress != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Refusal_ByAddress)); } if (cStatusId != 19 && nStatusId == 19 && currentRole.StatusUpload != 1) { return(String.Format("У вас нет прав выставлять статус \"{0}\"", TicketStatusesResources.Upload)); } #endregion //если заявка изменяется из текущего статуса "Обработана" в новый статус, отличный от "Завершено", то проверяем не запрещено ли это пользователю правами if (cStatusId == 5 && nStatusId != 5 && nStatusId != 6 && currentRole.ActionDisallowDeliveredToCompletedStatus == 1) { return(String.Format("У вас нет прав изменять статусы заявок в статусе \"{1}\" на статусы отличные от статуса \"{0}\"!", TicketStatusesResources.Completed, TicketStatusesResources.Processed)); } //если заявка изменяется из текущего статуса "Не обработана" в новый статусы "на складе" и "перенос на складе" if (cStatusId == 1 && nStatusId != 1 && (nStatusId == 2 || nStatusId == 4)) { return(String.Format("Нельзя изменять статусы заявок в статусе \"{0}\" на статусы \"{1}\" и \"{2}\"! Для перевода заявок на склад используйте печать чеков.", TicketStatusesResources.NotProcessed, TicketStatusesResources.InStock, TicketStatusesResources.Transfer_InStock)); } /*при изменении заявки без водителя на новый статус, отличный от ("Не обработан", "На складе", "Перенос (на складе)", "Отмена", "Отмена (на складе)", * "Завершено", "Обмен (на складе)", "Доставка от клиента (на складе)") возвращаем ошибку*/ if (cDriverId == 0 && nStatusId != 1 && nStatusId != 2 && nStatusId != 3 && nStatusId != 4 && nStatusId != 6 && nStatusId != 9 && nStatusId != 10 && nStatusId != 15 && nStatusId != 16) { return("Не все статусы обновлены! У некоторых заявок отсутствует водитель!"); } /*если водитель не назначен, то проверяем права на изменение заявки без водителя в новый статус "Завершено"*/ if (cDriverId == 0 && nStatusId == 6 && cStatusId != 6 && currentRole.ActionAllowChangeInCompletedWithoutDriver != 1) { return(String.Format("У вас нет прав изменять статусы заявок без водителя в статус \"{0}\"", TicketStatusesResources.Completed)); } #endregion #region Присвоение нового и старого статуса заявке (если все проверки пройдены) //если текущий статус не равен новому - записываем изменения статуса if (cStatusId != nStatusId) { ticket.StatusIDOld = cStatusId; ticket.StatusID = nStatusId; } //note: при изменении статуса у новой заявки старый в логи не пишется, так как заявка создается уже со старым статусом "Не обработана" #endregion #region Обновление связанных данных //если новая расшифровка статуса не пустая, то записываем её (работает только для заявок в определенных ниже статусах) if (!String.IsNullOrEmpty(nStatusDescription) && (nStatusId == 4 || nStatusId == 7 || nStatusId == 8 || nStatusId == 9 || nStatusId == 10 || nStatusId == 11)) { ticket.StatusDescription = nStatusDescription; } /*если новая расшифровка всё еще пустая - записываем старую если она есть *(нужно, так как при пакетном назначении заявкам расшифровки статуса не возможно получить старый статус каждой заявки в текстбокс)*/ if (String.IsNullOrEmpty(nStatusDescription)) { ticket.StatusDescription = cStatusDescription; } //если текущая дата приема на склад отсутствует и текущие статусы заявок "На складе" или "Перенос (на складе)", то записываем в дата приема текущее время if ((String.IsNullOrEmpty(cAdmissionDateString) || cAdmissionDateString == "01.01.0001 0:00:00") && (nStatusId == 2 || nStatusId == 4)) { ticket.AdmissionDate = DateTime.Now; } //если новый статус "Перенос (на складе)" или "Перенос (у курьера)", то записываем новую дату переноса if (nStatusId == 4 || nStatusId == 11) { ticket.DeliveryDate = nDeliveryDate; } //если текущий статус изменен на новый "Завершено", то записываем дату завершения (дата перевода заявки в статус "Завершено") if (nStatusId == 6 && cStatusId != 6) { ticket.CompletedDate = DateTime.Now; } //если текущий статус изменен на новый "Обработано", то записываем дату обработки (дату перевода заявки в новый статус "Обработано") // и шлем письма, указанные в бекенде, если заявки перешли в "Обработанно" для определнного клиента (АГС) if (nStatusId == 5 && cStatusId != 5) { ticket.ProcessedDate = DateTime.Now; var tempTicket = new Tickets { ID = ticket.ID }; tempTicket.GetById(); if (tempTicket.UserID == 794) { var emailIist = BackendHelper.TagToValue("ags_event_email_list").Split(new[] { ',' }); EmailMethods.MailSendHTML("АГС - новая заявка в статусе 'Обработано'", String.Format("АГС, заявка перешла в статус 'Обработано'<br/>" + "ID заявки: <b>{0}</b>", tempTicket.SecureID), emailIist); } } //если текущий статус изменен на новый "Перенос (на складе)", то шлем письмо на заданые емейлы и обнуляем водителя if (nStatusId == 4 && cStatusId != 4) { var email = BackendHelper.TagToValue("transfer_in_stock_event_email"); var tempTicket = new Tickets { ID = ticket.ID }; tempTicket.GetById(); EmailMethods.MailSendHTML("Новый перевод заявки в статус 'Перенос (на складе)'", String.Format("Новый перевод заявки в статус 'Перенос (на складе)'<br/>" + "ID заявки: <b>{0}</b>", tempTicket.SecureID), email); ticket.DriverID = 0; } //если текущий статус "Не обработано" изменен на новый "На складе" или "Перенос (на складе)", и текущее время между 21.00 и 24.00, то шлем письмо на заданые емейлы var cHour = DateTime.Now.Hour; if ((nStatusId == 2 || nStatusId == 4) && cStatusId == 1 && cHour >= 21 && cHour <= 24) { var email = BackendHelper.TagToValue("late_entries_event_email"); var tempTicket = new Tickets { ID = ticket.ID }; tempTicket.GetById(); EmailMethods.MailSendHTML("Поздний принос груза на склад", String.Format("Еще один груз принесли после 21.00<br/>" + "ID заявки: <b>{0}</b><br/>" + "ID пользователя: <b>{1}</b><br/>", tempTicket.SecureID, tempTicket.UserID), email); } //если текущий статус меняется на новый "В пути" или на "Отказ (у курьера)" - меняем привезенное бабло на 0 (для кассы) if (nStatusId == 3 || nStatusId == 7) { ticket.ReceivedEUR = 0; ticket.ReceivedBLR = 0; ticket.ReceivedUSD = 0; ticket.ReceivedRUR = 0; } //если заявка переходит из статусов "На складе" или "Не обработано" в статусы "Отмена" или "Отмена на складе" if ((cStatusId == 2 || cStatusId == 1) && (nStatusId == 9 || nStatusId == 10)) { var tempTicket = new Tickets { ID = ticket.ID }; tempTicket.GetById(); string[] emailList = new string[2]; var managerEmail = UsersHelper.GetUserAttachedManager(Convert.ToInt32(tempTicket.UserID)).Email; var salesManagerEmail = UsersHelper.GetUserAttachedSalesManager(Convert.ToInt32(tempTicket.UserID)).Email; if (!String.IsNullOrEmpty(managerEmail)) { emailList[0] = managerEmail; } if (!String.IsNullOrEmpty(salesManagerEmail)) { emailList[1] = managerEmail; } EmailMethods.MailSendHTML("Отмена заявки", String.Format("Заявка перешла в статус '{0}'<br/><br/>" + "Заявка: <b>{1}</b> (ID: {2})<br/>" + "Отправитель: <b>{3}</b> (UID: {4})<br/>" + "Профиль: <b>{5}</b> тел.:{6}<br/>" + "Город доставки: <b>{7}</b> (CID: {8})<br/>" + "Получатель: <b>{9}</b> (тел: {10})<br/><br/>" + "Причина отмены: <b>{11}</b><br/>", OtherMethods.TicketStatusToText(tempTicket.StatusID.ToString()), tempTicket.SecureID, GoodsHelper.GoodsToString(tempTicket.FullSecureID), UsersHelper.UserIDToFullName(tempTicket.UserID.ToString()), tempTicket.UserID, UsersProfilesHelper.UserProfileIDToFullFamilyOrCompanyname(tempTicket.UserProfileID.ToString()), UsersProfilesHelper.UserProfileToPhone(tempTicket.UserProfileID.ToString()), CityHelper.CityIDToCityNameWithotCustom(tempTicket.CityID.ToString()), tempTicket.CityID, tempTicket.RecipientFirstName + " " + tempTicket.RecipientLastName + " " + tempTicket.RecipientThirdName, tempTicket.RecipientPhone + ";" + tempTicket.RecipientPhoneTwo, tempTicket.StatusDescription ), emailList); } //если заявка переходит из статуса "В пути" в статусы отличные от "Завершено", "Доставлено", "Обработано", "В пути" if (cStatusId == 3 && nStatusId != 6 && nStatusId != 12 && nStatusId != 5 && nStatusId != 3) { var tempTicket = new Tickets { ID = ticket.ID }; tempTicket.GetById(); string[] emailList = new string[2]; var managerEmail = UsersHelper.GetUserAttachedManager(Convert.ToInt32(tempTicket.UserID)).Email; var salesManagerEmail = UsersHelper.GetUserAttachedSalesManager(Convert.ToInt32(tempTicket.UserID)).Email; if (!String.IsNullOrEmpty(managerEmail)) { emailList[0] = managerEmail; } if (!String.IsNullOrEmpty(salesManagerEmail)) { emailList[1] = managerEmail; } EmailMethods.MailSendHTML("Изменен статус заявки в пути", String.Format("Заявка в пути перешла в статус '{0}'<br/><br/>" + "Заявка: <b>{1}</b> (ID: {2})<br/>" + "Отправитель: <b>{3}</b> (UID: {4})<br/>" + "Профиль: <b>{5}</b> тел.:{6}<br/>" + "Город доставки: <b>{7}</b> (CID: {8})<br/>" + "Получатель: <b>{9}</b> (тел: {10})<br/><br/>" + "Курьер: <b>{11}</b><br/>", OtherMethods.TicketStatusToText(tempTicket.StatusID.ToString()), tempTicket.SecureID, GoodsHelper.GoodsToString(tempTicket.FullSecureID), UsersHelper.UserIDToFullName(tempTicket.UserID.ToString()), tempTicket.UserID, UsersProfilesHelper.UserProfileIDToFullFamilyOrCompanyname(tempTicket.UserProfileID.ToString()), UsersProfilesHelper.UserProfileToPhone(tempTicket.UserProfileID.ToString()), CityHelper.CityIDToCityNameWithotCustom(tempTicket.CityID.ToString()), tempTicket.CityID, tempTicket.RecipientFirstName + " " + tempTicket.RecipientLastName + " " + tempTicket.RecipientThirdName, tempTicket.RecipientPhone + ";" + tempTicket.RecipientPhoneTwo, DriversHelper.DriverIdToName(tempTicket.DriverID.ToString()) ), emailList); } //если текущий статус изменен на новый "Отказ (в пути)", то величину "За услугу (GruzobozCost)" делим попалам if (nStatusId == 17 && cStatusId != 17) { var tempTicket = new Tickets { ID = ticket.ID }; tempTicket.GetById(); if (tempTicket.GruzobozCost != null) { ticket.GruzobozCost = MoneyMethods.MoneyRounder100(Convert.ToDecimal(tempTicket.GruzobozCost / 2)); } } //фиксирование в заявке даты возврата, если заявка перешла из старого статуса в новый статус 8, 15, 16, 9 if ((nStatusId == 8 && cStatusId != 8) || (nStatusId == 9 && cStatusId != 9) || (nStatusId == 15 && cStatusId != 15) || (nStatusId == 16 && cStatusId != 16)) { ticket.ReturnDate = DateTime.Now; } #endregion return(null); //возвращаем null, что равно отсутствию ошибок }
protected void Page_Load(object sender, EventArgs e) { AppKey = Globals.Settings.AppServiceSecureKey; var controlTicketID = String.Empty; var idListString = Request.QueryString["id"]; if (!String.IsNullOrEmpty(idListString)) { List <string> idList = idListString.Split('-').ToList(); var sqlString = String.Empty; foreach (var id in idList) { sqlString = sqlString + "T.ID = " + id + " OR "; controlTicketID = id; } bool withoutDriver = false; var fullSqlString = "SELECT * FROM `tickets` as T JOIN `city` as C on T.CityID = C.ID WHERE " + sqlString.Remove(sqlString.Length - 3) + "ORDER BY C.Name ASC"; var dm = new DataManager(); var dataset = dm.QueryWithReturnDataSet(fullSqlString); Iterator = 1; dataset.Tables[0].Columns.Add("PNumber", typeof(String)); foreach (DataRow row in dataset.Tables[0].Rows) { row["PNumber"] = Iterator++; var driverID = row["DriverID"].ToString(); if ((driverID == "0" || driverID == "-1") && withoutDriver == false) { withoutDriver = true; } } lvAllPrint.DataSource = dataset; lvAllPrint.DataBind(); var ticket = new Tickets { ID = Convert.ToInt32(controlTicketID) }; ticket.GetById(); if (withoutDriver == false) { DriverName = lblDriver.Text = DriversHelper.DriverIDToFioToPrint(ticket.DriverID.ToString()); } else { DriverName = lblDriver.Text = String.Empty; } lblTrack.Text = lblTrack2.Text = CityHelper.CityToTrack(Convert.ToInt32(ticket.CityID), ticket.ID.ToString()); lblOperatorName.Text = CityHelper.CityToTrackOperatorName(Convert.ToInt32(ticket.CityID)); lblOperatorPhone.Text = CityHelper.CityToTrackOperatorPhone(Convert.ToInt32(ticket.CityID)); Inpdate.Text = dm.QueryWithReturnDataSet("SELECT `MapDate` FROM `printdata`").Tables[0].Rows[0][0] .ToString(); } if (String.IsNullOrEmpty(idListString) || lvAllPrint.Items.Count == 0) { Page.Visible = false; Response.Write(Resources.PrintResources.PrintMapEmptyText); } }