public bool AddNewTask(string newtaskName, string newrouteName, string shipName, string loginName, string points) { waterdataEntities entity = new waterdataEntities(); RouteService routeservice = new RouteService(); users user = entity.users.FirstOrDefault(s => s.login_name == loginName); task task = entity.task.FirstOrDefault(s => s.task_name == newtaskName && s.user_id == user.user_id); route route = entity.route.FirstOrDefault(s => s.route_name == newrouteName); ship ship = entity.ship.FirstOrDefault(s => s.ship_name == s.ship_name && s.company_id == user.company_id); if (task != null || route != null) { return(false); } if (routeservice.AddRoute(loginName, newrouteName, points)) { route newroute = entity.route.SingleOrDefault(s => s.route_name == newrouteName && s.user_id == user.user_id); task newTask = new task() { ship_id = ship.ship_id, task_name = newtaskName, route_id = newroute.route_id, user_id = user.user_id, create_time = DateTime.Now }; entity.task.Add(newTask); entity.SaveChanges(); } else { return(false); } return(true); }
/// <summary> /// APP获取最新任务 /// </summary> /// <param name="shipId"></param> /// <returns></returns> public List <AppWaterData> AppGetWaterData(int shipId, int parameterId) { waterdataEntities entity = new waterdataEntities(); task lastTask = entity.task.Where(s => s.ship_id == shipId).OrderByDescending(s => s.create_time).First(); IQueryable <water_data> waterdata = entity.water_data.Where(s => s.parameter_id == parameterId && s.task_id == lastTask.task_id); List <AppWaterData> waterdatas = new List <AppWaterData>(); foreach (var item in waterdata) { if (item.longitude.ToString() != "0.0" && item.latitude.ToString() != "0.0") { waterdatas.Add(new AppWaterData() { TaskId = item.task_id.ToString(), TaskName = item.task.task_name, ParameterId = item.parameter_id.ToString(), ParameterName = item.parameter.parameter_name, ParameterValue = item.parameter_value.ToString(), Longitude = item.longitude.ToString(), Latitude = item.latitude.ToString(), CreateTime = item.create_time.ToString() }); } } return(waterdatas); }
public List <Task> GetTaskBySTN(string shipName, string taskName, string loginName, int page, int limit) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); ship objship = entity.ship.SingleOrDefault(s => s.ship_name == shipName); IQueryable <task> query = entity.task.Where(s => s.user_id == objuser.user_id && s.ship_id == objship.ship_id && s.task_name == taskName).OrderByDescending(s => s.create_time); List <Task> tasks = new List <Task>(); foreach (var item in query) { tasks.Add(new Task() { ShipName = item.ship.ship_name, TaskName = item.task_name, RouteName = item.route.route_name, CreateTime = item.create_time.ToString() }); } int strat = (page - 1) * limit; int end = strat + limit; List <Task> newtasks = new List <Task>(); for (int i = strat; i < end && i < tasks.Count; i++) { newtasks.Add(tasks[i]); } return(newtasks); }
public bool AddRoute(string loginName, string routeName, string points) { waterdataEntities entity = new waterdataEntities(); string newpoints = points.Replace("lng", "Longitude"); points = newpoints.Replace("lat", "Latitude"); List <Point> objpoints = JsonConvert.DeserializeObject <List <Point> >(points); for (int i = 0; i < objpoints.Count; i++) { objpoints[i].Sequence = (i + 1).ToString(); } string jsonroute = JsonConvert.SerializeObject(objpoints); users user = entity.users.FirstOrDefault(s => s.login_name == loginName); route myroute = entity.route.SingleOrDefault(s => s.route_name == routeName); if (myroute != null) { return(false); } route newroute = new route() { route_name = routeName, user_id = user.user_id, route_points = jsonroute }; entity.route.Add(newroute); entity.SaveChanges(); return(true); }
public bool TaskBind(string loginName, string newtaskName, string routeName, string shipName) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); task mytask = entity.task.SingleOrDefault(s => s.task_name == newtaskName && s.user_id == objuser.user_id); ship ship = entity.ship.FirstOrDefault(s => s.ship_name == s.ship_name && s.company_id == objuser.company_id); if (mytask == null) { route myroute = entity.route.SingleOrDefault(s => s.route_name == routeName && s.user_id == objuser.user_id); if (myroute != null) { task newtask = new task() { ship_id = ship.ship_id, user_id = objuser.user_id, route_id = myroute.route_id, task_name = newtaskName, create_time = DateTime.Now }; entity.task.Add(newtask); entity.SaveChanges(); return(true); } } else { return(false); } return(false); }
public List <WaterData> GetDataByTN(string loginName, string taskName) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); task task = entity.task.FirstOrDefault(s => s.task_name == taskName && s.user_id == objuser.user_id); IQueryable <water_data> dataquery = entity.water_data.Where(s => s.task_id == task.task_id).OrderByDescending(s => s.create_time); List <WaterData> datas = new List <WaterData>(); string parametername = null; foreach (var data in dataquery) { parametername = ToChinese(data.parameter.parameter_name); datas.Add(new WaterData() { TaskId = task.task_id.ToString(), TaskName = task.task_name, ParameterId = data.parameter_id.ToString(), ParameterName = parametername, ParameterValue = data.parameter_value.ToString(), Longitude = data.longitude.ToString(), Latitude = data.latitude.ToString(), CreateTime = data.create_time.ToString(), WaterDataId = data.watedata_id.ToString() }); } return(datas); }
/// <summary> /// 修改船体信息 /// </summary> /// <param name="shipName"></param> /// <param name="companyName"></param> /// <param name="devicesrial"></param> /// <param name="newshipName"></param> /// <param name="newcompanyName"></param> /// <param name="newdevicesrial"></param> /// <returns></returns> public bool UpdateShip(string shipName, string companyName, string devicesrial, string newshipName, string newcompanyName, string newdevicesrial, string newReminder) { waterdataEntities entity = new waterdataEntities(); entity.Configuration.ValidateOnSaveEnabled = false; bool result = false; ship objship = entity.ship.FirstOrDefault(s => s.ship_name == shipName && s.company.company_name == companyName && s.device_serial == devicesrial); if (objship != null) { if (newshipName != null) { objship.ship_name = newshipName; result = true; } if (newcompanyName != null) { company objcompany = entity.company.SingleOrDefault(s => s.company_name == newcompanyName);//如果公司存在 objship.company_id = objcompany.company_id; result = true; } if (newdevicesrial != null) { objship.device_serial = newdevicesrial; result = true; } if (newReminder != null) { objship.reminder = newReminder; result = true; } entity.SaveChanges(); } return(result); }
/// <summary> /// 根据任务名称获取水质数据 /// </summary> /// <param name="loginName"></param> /// <param name="taskName"></param> /// <returns></returns> public List <WaterData> GetExDataByTN(string loginName, string taskName, int page, int limit) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); task task = entity.task.FirstOrDefault(s => s.task_name == taskName && s.user_id == objuser.user_id); IQueryable <water_data> dataquery = entity.water_data.Where(s => s.task_id == task.task_id && (s.parameter_value > s.parameter.uplimit || s.parameter_value < s.parameter.lowlimit)).OrderByDescending(s => s.create_time); List <WaterData> datas = new List <WaterData>(); string parametername = null; foreach (var data in dataquery) { parametername = ToChinese(data.parameter.parameter_name); datas.Add(new WaterData() { TaskId = task.task_id.ToString(), TaskName = task.task_name, ParameterId = data.parameter_id.ToString(), ParameterName = parametername, ParameterValue = data.parameter_value.ToString(), Longitude = data.longitude.ToString(), Latitude = data.latitude.ToString(), CreateTime = data.create_time.ToString(), WaterDataId = data.watedata_id.ToString() }); } int strat = (page - 1) * limit; int end = strat + limit; List <WaterData> newdatas = new List <WaterData>(); for (int i = strat; i < end && i < datas.Count; i++) { newdatas.Add(datas[i]); } return(newdatas); }
public List <WaterData> GetAllExData(string loginName) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); IQueryable <task> taskquery = entity.task.Where(s => s.user_id == objuser.user_id); List <WaterData> datas = new List <WaterData>(); string parametername = null; foreach (var task in taskquery) { IQueryable <water_data> dataquery = entity.water_data.Where(s => s.task_id == task.task_id && (s.parameter_value > s.parameter.uplimit || s.parameter_value < s.parameter.lowlimit)); foreach (var data in dataquery) { parametername = ToChinese(data.parameter.parameter_name); datas.Add(new WaterData() { WaterDataId = data.watedata_id.ToString(), TaskId = task.task_id.ToString(), TaskName = task.task_name, ParameterId = data.parameter_id.ToString(), ParameterName = parametername, ParameterValue = data.parameter_value.ToString(), Longitude = data.longitude.ToString(), Latitude = data.latitude.ToString(), CreateTime = data.create_time.ToString() }); } } return(datas); }
public int GetExDataByPTNCount(string loginName, string parameterName, string taskName) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); string englishparameter = ToEnglish(parameterName); parameter objparameter = entity.parameter.SingleOrDefault(s => s.parameter_name == englishparameter && s.company_id == objuser.company_id); task task = entity.task.FirstOrDefault(s => s.task_name == taskName && s.user_id == objuser.user_id); IQueryable <water_data> dataquery = entity.water_data.Where(s => s.task_id == task.task_id && s.parameter_id == objparameter.parameter_id && (s.parameter_value > s.parameter.uplimit || s.parameter_value < s.parameter.lowlimit)); List <WaterData> datas = new List <WaterData>(); foreach (var data in dataquery) { datas.Add(new WaterData() { TaskId = task.task_id.ToString(), TaskName = task.task_name, ParameterId = data.parameter_id.ToString(), ParameterName = data.parameter.parameter_name.ToString(), ParameterValue = data.parameter_value.ToString(), Longitude = data.longitude.ToString(), Latitude = data.latitude.ToString() }); } return(datas.Count); }
/// <summary> /// 获取所有数据条数 /// </summary> /// <param name="loginName"></param> /// <returns></returns> public int GetAllDataCount(string loginName) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); IQueryable <task> taskquery = entity.task.Where(s => s.user_id == objuser.user_id); List <WaterData> datas = new List <WaterData>(); foreach (var task in taskquery) { IQueryable <water_data> dataquery = entity.water_data.Where(s => s.task_id == task.task_id); foreach (var data in dataquery) { datas.Add(new WaterData() { TaskId = task.task_id.ToString(), TaskName = task.task_name, ParameterId = data.parameter_id.ToString(), ParameterName = data.parameter.parameter_name.ToString(), ParameterValue = data.parameter_value.ToString(), Longitude = data.longitude.ToString(), Latitude = data.latitude.ToString(), CreateTime = data.create_time.ToString() }); } } return(datas.Count); }
public bool SendParameter(int shipId, string str) { string[] strs = str.Split('|'); foreach (var item in strs) { waterdataEntities entity = new waterdataEntities(); task lasttask = entity.task.Where(s => s.ship_id == shipId && s.route_id != null).OrderByDescending(s => s.create_time).First(); ship ship = entity.ship.SingleOrDefault(s => s.ship_id == shipId); WaterData waterdata = DataParse.dealSensorData(item); parameter parameter = entity.parameter.SingleOrDefault(s => s.parameter_name == waterdata.ParameterName && s.company_id == ship.company_id); waterdata.ParameterId = parameter.parameter_id.ToString(); waterdata.TaskId = lasttask.task_id.ToString(); water_data newdata = new water_data() { task_id = Convert.ToInt32(waterdata.TaskId), parameter_id = Convert.ToInt32(waterdata.ParameterId), parameter_value = Convert.ToDouble(waterdata.ParameterValue), longitude = Convert.ToDouble(waterdata.Longitude), latitude = Convert.ToDouble(waterdata.Latitude), create_time = DateTime.Now }; entity.water_data.Add(newdata); entity.SaveChanges(); } return(true); }
public int GetAllRouteCount(string loginName) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); IQueryable <route> query = entity.route.Where(s => s.user_id == objuser.user_id); return(query.Count()); }
public bool UpDataParameter(int ParameterId, string uplimit, string lowlimit) { waterdataEntities entity = new waterdataEntities(); parameter objparameter = entity.parameter.SingleOrDefault(s => s.parameter_id == ParameterId); objparameter.uplimit = Convert.ToInt32(uplimit); objparameter.lowlimit = Convert.ToInt32(lowlimit); entity.SaveChanges(); return(true); }
public List <Point> GetRoutePoint(string loginName, string routeName) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); route objroute = entity.route.SingleOrDefault(s => s.route_name == routeName && s.user_id == objuser.user_id); List <Point> points = new List <Point>(); string pointstr = objroute.route_points; points = JsonConvert.DeserializeObject <List <Point> >(pointstr); return(points); }
/// <summary> /// app获取树莓派发送到数据库的指令 /// </summary> /// <param name="shipId"></param> /// <returns></returns> public ReturnData AppGetRenturnData(int shipId) { waterdataEntities entity = new waterdataEntities(); return_data commands = entity.return_data.Where(s => s.ship_id == shipId).OrderByDescending(s => s.create_time).First(); ReturnData retrundata = new ReturnData() { Message = commands.message, CreateTime = commands.create_time.ToString() }; return(retrundata); }
public bool UpDateUserInfo(string loginName, string newUserName, string newCompanyName, string newphone, string newaddress) { waterdataEntities entity = new waterdataEntities(); users objusers = entity.users.SingleOrDefault(s => s.login_name == loginName); objusers.user_name = newUserName; objusers.company.company_name = newCompanyName; objusers.company.company_phone = newphone; objusers.company.company_address = newaddress; entity.SaveChanges(); return(true); }
public bool UpdataPassWord(string loginName, string password, string newpassword) { waterdataEntities entity = new waterdataEntities(); users objusers = entity.users.SingleOrDefault(s => s.login_name == loginName); if (objusers.login_password == password) { objusers.login_password = newpassword; entity.SaveChanges(); return(true); } return(false); }
public bool RouteChange(string taskName, string routeName, string loginName, string shipName) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); task mytask = entity.task.SingleOrDefault(s => s.task_name == taskName && s.user_id == objuser.user_id); route route = entity.route.SingleOrDefault(s => s.route_name == routeName && s.user_id == objuser.user_id); ship ship = entity.ship.SingleOrDefault(s => s.ship_name == shipName && s.company_id == objuser.company_id); mytask.ship_id = ship.ship_id; mytask.route_id = route.route_id; entity.SaveChanges(); return(true); }
/// <summary> /// 删除船体信息 /// </summary> /// <param name="shipName"></param> /// <param name="companyName"></param> /// <returns></returns> public bool DeleteShip(string shipName, string companyName) { waterdataEntities entity = new waterdataEntities(); bool result = false; ship objship = entity.ship.FirstOrDefault(s => s.ship_name == shipName && s.company.company_name == companyName); if (objship != null) { entity.ship.Remove(objship); entity.SaveChanges(); result = true; } return(result); }
public bool DeleteData(int waterdataId) { waterdataEntities entity = new waterdataEntities(); bool result = false; water_data waterdata = entity.water_data.SingleOrDefault(s => s.watedata_id == waterdataId); if (waterdata != null) { entity.water_data.Remove(waterdata); entity.SaveChanges(); result = true; } return(result); }
/// <summary> /// 登录 /// </summary> /// <param name="loginName"></param> /// <param name="loginPassword"></param> /// /// <param name="companyName"></param> /// <returns></returns> public bool Login(string loginName, string loginPassword) { waterdataEntities entity = new waterdataEntities(); users objusers = entity.users.SingleOrDefault(s => s.login_name == loginName && s.login_password == loginPassword); if (objusers != null) { return(true); } else { return(false); } }
/// <summary> /// app发送指令 /// </summary> /// <param name="shipId"></param> /// <param name="comm"></param> /// <returns></returns> public bool AppSendCommand(int shipId, string comm) { waterdataEntities entity = new waterdataEntities(); command newcommand = new command() { ship_id = shipId, command1 = comm, create_time = DateTime.Now }; entity.command.Add(newcommand); entity.SaveChanges(); return(true); }
/// <summary> /// APP获取最新路径 /// </summary> /// <param name="shipId"></param> /// <returns></returns> public AppRoute AppGetLastRoute(int shipId) { waterdataEntities entity = new waterdataEntities(); task lastTask = entity.task.Where(s => s.ship_id == shipId).OrderByDescending(s => s.create_time).First(); route lastRoute = entity.route.SingleOrDefault(s => s.route_id == lastTask.route_id); AppRoute Route = new AppRoute() { RoueteId = lastRoute.route_id.ToString(), RoueteName = lastRoute.route_name, RoutePoints = lastRoute.route_points }; return(Route); }
public List <Route> GetAllRoute(string loginName, int page, int limit) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); IQueryable <route> query = entity.route.Where(s => s.user_id == objuser.user_id); List <Route> route = new List <Route>(); foreach (var item in query) { task mytask = entity.task.Where(s => s.route_id == item.route_id).OrderByDescending(s => s.create_time).FirstOrDefault(); if (mytask == null) { route.Add(new Route() { RouteId = "", RoutePoints = "", UserId = "", RouteName = item.route_name, ShipName = "", TaskName = "", }); } else { route.Add(new Route() { RouteId = "", RoutePoints = "", UserId = "", RouteName = item.route_name, ShipName = mytask.ship.ship_name, TaskName = mytask.task_name }); } } if (page == -1) { return(route); } int strat = (page - 1) * limit; int end = strat + limit; List <Route> newroutes = new List <Route>(); for (int i = strat; i < end && i < route.Count; i++) { newroutes.Add(route[i]); } return(newroutes); }
/// <summary> /// app获取用户信息 /// </summary> /// <param name="loginName"></param> /// <returns></returns> public AppUser AppGetUserEntity(string loginName) { waterdataEntities entity = new waterdataEntities(); users objusers = entity.users.SingleOrDefault(s => s.login_name == loginName); AppUser user = new AppUser { UserId = objusers.user_id.ToString(), LoginName = objusers.login_name, LoginPassword = null, CompanyId = objusers.company_id.ToString(), UserName = objusers.user_name }; return(user); }
/// <summary> /// 删除任务 /// </summary> /// <param name="shipName"></param> /// <param name="taskName"></param> /// <param name="loginName"></param> /// <returns></returns> public bool DeleteTask(string shipName, string taskName, string loginName) { waterdataEntities entity = new waterdataEntities(); users objuser = entity.users.SingleOrDefault(s => s.login_name == loginName); ship objship = entity.ship.SingleOrDefault(s => s.ship_name == shipName); bool result = false; task objtask = entity.task.FirstOrDefault(s => s.user_id == objuser.user_id && s.ship_id == objship.ship_id && s.task_name == taskName); if (objship != null) { entity.task.Remove(objtask); entity.SaveChanges(); result = true; } return(result); }
/// <summary> /// 获取当前用户信息 /// </summary> /// <param name="loginName"></param> /// <returns></returns> public Users GetUserEntity(string loginName) { waterdataEntities entity = new waterdataEntities(); users objusers = entity.users.SingleOrDefault(s => s.login_name == loginName); Users user = new Users { LoginName = objusers.login_name, LoginPassword = null, CompanyId = objusers.company_id.ToString(), UserName = objusers.user_name, CompanyName = objusers.company.company_name, CompanyAdress = objusers.company.company_address, CellPhone = objusers.company.company_phone }; return(user); }
/// <summary> /// app获取用户路径 /// </summary> /// <param name="shipId"></param> /// <returns></returns> public List <AppRoute> AppGetRoute(int userId) { waterdataEntities entity = new waterdataEntities(); IQueryable <route> query = entity.route.Where(s => s.user_id == userId); List <AppRoute> routes = new List <AppRoute>(); foreach (var item in query) { routes.Add(new AppRoute() { RoueteId = item.route_id.ToString(), RoueteName = item.route_name, RoutePoints = item.route_points }); } return(routes); }
/// <summary> /// 树莓派发送消息 /// </summary> /// <param name="shipId"></param> /// <param name="message"></param> /// <returns></returns> public bool SendMessage(int shipId, string message) { waterdataEntities entity = new waterdataEntities(); string[] messages = message.Split('|'); foreach (var item in messages) { return_data returndata = new return_data() { ship_id = shipId, message = item, create_time = DateTime.Now }; entity.return_data.Add(returndata); entity.SaveChanges(); } return(true); }