예제 #1
0
        [Route("newtask/{plane}/{dest}")] //ВНЕШКА  этот пост используется сторонними системами, для постановки задания
        public string Post(int plane, int dest)
        {
            var bl         = new BusLog();
            var Busses     = new List <Bus>();
            var filebusses = new FileCSV();

            Busses = filebusses.ReadFromCSVBus();
            if (Busses.Count == 0)
            {
                bl.WriteToLog("Шесть автобусов на стоянке. ID автобусов от 1 до 6");
                for (var j = 1; j <= 6; j++)
                {
                    var bus = new Bus()
                    {
                        busId = j, isFree = 1
                    };
                    Busses.Add(bus);
                    filebusses.WriteToCSVBus(j, 1);
                }
            }
            bl.WriteToLog("Получено задание. ID самолета - " + plane);
            int i = 0;

            while (i < Busses.Count() && Busses[i].isFree != 1)
            {
                i++;
            }
            if (Busses[i].isFree == 1)
            {
                bl.WriteToLog("Для самолета " + plane + " назначен автобус. ID автобуса - " + Busses[i].busId + ". Вместимость - 30 пассажиров.");
                var filetasks = new FileCSV();
                Busses[i].planeId = plane;
                Busses[i].dest    = dest;
                filetasks.ChangeBusStatusCSV(Busses[i].busId);
                if (dest == 0)
                {
                    Busses[i].AllowMoving("BGR", "GT1");
                    Busses[i].SendLocation("BGR", "GT1", "Moving");
                }
                else
                {
                    Busses[i].FindPlaneLocationCode();
                    Busses[i].AllowMoving("BGR", Busses[i].planelocationcode);
                    Busses[i].SendLocation("BGR", Busses[i].planelocationcode, "Moving");
                }
                Thread busthread;
                busthread = new Thread(new ThreadStart(Busses[i].Execute));
                busthread.Start();
                return("busID=" + Busses[i].busId + ";amountPassengers=30;flagMoving=true");
            }
            else
            {
                bl.WriteToLog("Нет свободных автобусов для самолета " + plane);
                return("1");
            }
        }
예제 #2
0
        public static void Main(string[] args)
        {
            var file = new FileCSV();

            file.ClearAll();
            var blog = new BusLog();

            blog.ClearAll();
            CreateWebHostBuilder(args).Build().Run();
        }
예제 #3
0
    private void LogBus(string type, string content)
    {
        BusLog log = new BusLog();

        log.Operator = this.Operator.OperatorName;
        log.Des1     = this.lbIdCard.Text.Trim();
        log.Des2     = this.lbDabh.Text.Trim();
        log.Content  = content;
        log.BusType  = type;
        FT.DAL.Orm.SimpleOrmOperator.Create(log);
    }
예제 #4
0
    public static bool ResetPwd(int id, string newpwd)
    {
        bool result = DataAccessFactory.GetDataAccess().ExecuteSql("update table_users set c_pwd='" + SecurityFactory.GetSecurity().Encrypt(newpwd) + "' where id=" + id);

        if (result)
        {
            BusLog log = new BusLog();
            log.BusType = "重设密码";
            log.Content = "admin修改ID为" + id + "的密码";
            BusLogOperator.InitByLoginUser(log);
            SimpleOrmOperator.Create(log);
            //log.Operator=
        }
        return(result);
    }
예제 #5
0
        [Route("setpassenger")] //ВНЕШКА  этот пост используется системой пассажир для посадки в автобус
        public void Post([FromBody] ValueTuple <Guid, Guid> pastuple)
        {
            var filepassangers = new FileCSV();
            var bl             = new BusLog();
            var pas            = new Passanger();

            byte[] p    = pastuple.Item1.ToByteArray();
            int    pint = BitConverter.ToInt32(p, 0);

            byte[] b    = pastuple.Item2.ToByteArray();
            int    bint = BitConverter.ToInt32(b, 0);


            pas.passangerId = pint;
            pas.busId       = bint;
            bl.WriteToLog("Автобус " + bint + " принялна борт пассажира " + pint + ".");
            filepassangers.WriteToCSVPassanger(pas);
        }
예제 #6
0
    public static string ChangePwd(UserObject user,string oldpwd, string newpwd)
    {
        if(user.Password!=SecurityFactory.GetSecurity().Encrypt(oldpwd))
        {
            return "旧密码输入错误!";
        }
        bool result=DataAccessFactory.GetDataAccess().ExecuteSql("update table_users set c_pwd='"+SecurityFactory.GetSecurity().Encrypt(newpwd)+"' where id="+user.Id);
        if (result)
        {
            BusLog log = new BusLog();
            log.BusType = "修改密码";
            log.Content = user.FullName+"修改自己的密码";
            BusLogOperator.InitByLoginUser(log);
            //log.Operator=
            return string.Empty;

        }
        else
            return "修改密码失败!";
    }
예제 #7
0
    public static string ChangePwd(UserObject user, string oldpwd, string newpwd)
    {
        if (user.Password != SecurityFactory.GetSecurity().Encrypt(oldpwd))
        {
            return("旧密码输入错误!");
        }
        bool result = DataAccessFactory.GetDataAccess().ExecuteSql("update table_users set c_pwd='" + SecurityFactory.GetSecurity().Encrypt(newpwd) + "' where id=" + user.Id);

        if (result)
        {
            BusLog log = new BusLog();
            log.BusType = "修改密码";
            log.Content = user.FullName + "修改自己的密码";
            BusLogOperator.InitByLoginUser(log);
            //log.Operator=
            return(string.Empty);
        }
        else
        {
            return("修改密码失败!");
        }
    }
예제 #8
0
 private void LogBus(string type, string content)
 {
     BusLog log = new BusLog();
     log.Operator = this.Operator.OperatorName;
     log.Des1 = this.lbIdCard.Text.Trim();
     log.Des2 = this.lbDabh.Text.Trim();
     log.Content = content;
     log.BusType = type;
     FT.DAL.Orm.SimpleOrmOperator.Create(log);
 }
예제 #9
0
 public static void InitByLoginUser(BusLog log)
 {
     log.DepId = "-1";
     log.Operator = "admin";
 }
예제 #10
0
 public static void InitByLoginUser(BusLog log)
 {
     log.DepId    = "-1";
     log.Operator = "admin";
 }
예제 #11
0
    public static bool ResetPwd(int id,string newpwd)
    {
        bool result = DataAccessFactory.GetDataAccess().ExecuteSql("update table_users set c_pwd='" + SecurityFactory.GetSecurity().Encrypt(newpwd) + "' where id=" + id);
        if (result)
        {
            BusLog log = new BusLog();
            log.BusType = "重设密码";
            log.Content ="admin修改ID为"+id+"的密码";
            BusLogOperator.InitByLoginUser(log);
            SimpleOrmOperator.Create(log);
            //log.Operator=

        }
        return result;
    }