public async Task <ActionResult> Delete(string id)
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            if (string.IsNullOrEmpty(id))
            {
                return(RedirectToAction("Index", "LoginUI"));
            }
            long pwdID = 0;

            if (long.TryParse(id, out pwdID) == false)
            {
                return(Content("入参错误", "text/html"));
            }
            using (mlrmsEntities db = new mlrmsEntities())
            {
                sysadmin matchOne = db.sysadmin.Where(m => m.AdminID == pwdID).ToList().First();
                db.sysadmin.Attach(matchOne);
                db.Entry(matchOne).State = System.Data.Entity.EntityState.Deleted;
                await db.SaveChangesAsync();

                return(RedirectToAction("", "administrator"));
            }
        }
 public ActionResult Reset(string id)
 {
     try
     {
         using (mlrmsEntities db = new mlrmsEntities())
         {
             int ID  = int.Parse(id);
             var usr = db.sysadmin.Where(m => m.AdminID == ID).First();
             usr.AdminPwd = EncryptHelper.GetEncrypt("123456");
             db.sysadmin.Attach(usr);
             db.Entry(usr).State = System.Data.Entity.EntityState.Modified;
             int result = db.SaveChanges();
             if (result > 0)
             {
                 return(Content("True", "text/html"));
             }
             else
             {
                 return(Content("False", "text/html"));
             }
         }
     }
     catch (Exception ex)
     {
         LogHelper.Error("密码重置出错:" + ex.Message);
         return(Content("False", "text/html"));
     }
 }
Exemple #3
0
        public async Task <ActionResult> Delete(string id, string serialCode, string port)
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            if (string.IsNullOrEmpty(id))
            {
                return(RedirectToAction("Index", "Device"));
            }
            int slaveID     = int.Parse(id);
            int servicePort = int.Parse(port);

            using (mlrmsEntities db = new mlrmsEntities())
            {
                device matchOne = db.device.Where(m => m.slaveid == slaveID && m.servicecode == serialCode && m.port == servicePort).ToList().First();
                db.device.Attach(matchOne);
                db.Entry(matchOne).State = System.Data.Entity.EntityState.Deleted;
                await db.SaveChangesAsync();

                //通知客户端已经移除;
                MvcApplication.Client.Refresh(slaveID, false);
            }
            return(RedirectToAction("Index", "Device"));
        }
Exemple #4
0
        public ActionResult Index()
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            using (mlrmsEntities db = new mlrmsEntities())
            {
                var userList = db.sysadmin.Where(m => m.AdminCode == name);
                if (userList == null || userList.Count() <= 0)
                {
                    return(Content("Not Found", "text/html"));
                }
                sysadmin item    = userList.First();
                Manager  manager = new Manager();
                manager.UserCode = item.AdminCode;
                manager.UserName = item.AdminName;
                manager.AdminId  = item.AdminID;
                return(View(manager));
            }
        }
Exemple #5
0
        public List <ElectricParas> GetAllAttendanceInfos(string beginTime1, string endTime1, string searchkey, string slaveCode)
        {
            DateTime             dtStart     = DateTime.Parse(beginTime1);
            DateTime             dtEnd       = DateTime.Parse(endTime1);
            int                  slaveID     = int.Parse(slaveCode);
            List <ElectricParas> attendances = new List <ElectricParas>();

            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    IQueryable <ElectricParas> dynamicAttendance = null;
                    if (slaveCode != "0")
                    {
                        dynamicAttendance = (from dev in db.device
                                             join itm in db.eletricmeterstatistics
                                             on dev.slaveid equals itm.slaveid
                                             where dev.type == 4
                                             where (dev.slaveid == slaveID)
                                             where (itm.time >= dtStart && itm.time <= dtEnd)
                                             //where (dev.name.ToLower().Contains(searchkey.ToLower()))
                                             select new ElectricParas
                        {
                            electricAmount = itm.eletricamount,
                            slaveID = itm.slaveid,
                            name = dev.name,
                            time = itm.time,
                        }).OrderByDescending(m => m.time);
                    }
                    else
                    {
                        dynamicAttendance = (from dev in db.device
                                             join itm in db.eletricmeterstatistics
                                             on dev.slaveid equals itm.slaveid
                                             where dev.type == 4
                                             where (itm.time >= dtStart && itm.time <= dtEnd)
                                             //where (dev.name.ToLower().Contains(searchkey.ToLower()))
                                             select new ElectricParas
                        {
                            electricAmount = itm.eletricamount,
                            slaveID = itm.slaveid,
                            name = dev.name,
                            time = itm.time,
                        }).OrderByDescending(m => m.time);
                    }
                    attendances = dynamicAttendance.ToList();
                    if (attendances == null || attendances.Count == 0)
                    {
                        return(null);
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("获取用电量信息失败", ex);
            }
            return(attendances);
        }
        // GET: SerialPort
        public ActionResult Index(string searchkey, string index)
        {
            string name, error;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out LoginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = LoginName;
            }
            if (string.IsNullOrEmpty(index))
            {
                index = "1";
            }
            if (searchkey == string.Empty)
            {
                return(RedirectToAction("", "Device"));
            }
            if (searchkey == null)
            {
                searchkey = string.Empty;
            }


            DeviceQueryCondition condition = new DeviceQueryCondition();

            condition.searchkey     = searchkey;
            ViewData["requestData"] = condition;
            List <serialservice> totalList = null;

            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    int totalCount = db.serialservice.Count();
                    if (totalCount == 0)
                    {
                        return(View());
                    }
                    PageModel page = new PageModel()
                    {
                        SearchKeyWord = searchkey, SearchType = 0, CurrentIndex = Int32.Parse(index), TotalCount = totalCount
                    };
                    totalList             = db.serialservice.Where(p => p.name.ToLower().Contains(searchkey.ToLower()) || p.code.ToString().Contains(searchkey.ToLower())).OrderBy(m => m.name).Skip((page.CurrentIndex - 1) * page.PageSize).Take(page.PageSize).ToList();
                    ViewData["pagemodel"] = page;
                    return(View(totalList));
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("设备列表加载失败", ex);
                return(View());
            }
        }
Exemple #7
0
        public async Task <ActionResult> Index(Manager info)
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            try
            {
                if (ModelState.IsValid)
                {
                    using (mlrmsEntities db = new mlrmsEntities())
                    {
                        var userList = db.sysadmin.Where(m => m.AdminID == info.AdminId);
                        if (userList == null || userList.Count() <= 0)
                        {
                            return(Content("Not Found", "text/html"));
                        }
                        sysadmin item = userList.First();
                        string   pwd  = EncryptHelper.GetEncrypt(info.Passwd);
                        if (pwd != item.AdminPwd)   //如果密码验证不通过
                        {
                            ModelState.AddModelError("Passwd", "密码错误");
                            return(View());
                        }
                        item.AdminPwd = EncryptHelper.GetEncrypt(info.NewPwd);
                        db.sysadmin.Attach(item);
                        db.Entry(item).State = System.Data.Entity.EntityState.Modified;
                        await db.SaveChangesAsync();

                        ViewData["status"] = "true";
                        return(RedirectToAction("Logout", "LoginUI"));
                    }
                }
            }
            catch
            {
                ViewData["status"] = "false";
            }
            Manager manager = new Manager();

            manager.UserName = info.UserName;
            //系统登出
            return(View(manager));
        }
Exemple #8
0
        public ActionResult Operate(string id)
        {
            string     name, error, loginName;
            DeviceInfo info = null;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            try
            {
                string[] ss         = id.Split('#');
                int      slaveID    = int.Parse(ss[0]);
                string   serialCode = ss[1];
                int      serialPort = int.Parse(ss[2]);
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    info = (from dev in db.device
                            where dev.slaveid == slaveID && dev.port == serialPort && dev.servicecode == serialCode
                            select new DeviceInfo
                    {
                        slaveID = dev.slaveid,
                        note = dev.note,
                        devName = dev.name,
                        type = dev.type,
                        subType = (int)dev.subtype,
                    }).First();
                }
                if (info != null)
                {
                    info.subTypeName = EnumParser.SubTypeParser(info.subType);
                }
                EngineData data = HashGetEngineData.GetData(slaveID);
                info.runStatus = data.State;
                info.SetMode   = data.Mode.ToString();
                info.SetTemp   = data.Temp.ToString();
            }
            catch (Exception ex)
            {
                LogHelper.Error("打开配置页面失败", ex);
            }
            return(View(info));
        }
Exemple #9
0
        public ActionResult Index(sysadmin user)
        {
            if (string.IsNullOrEmpty(user.AdminCode))
            {
                return(Content("false:用户名不能为空", "text/html"));
            }
            if (string.IsNullOrEmpty(user.AdminPwd))
            {
                return(Content("false:密码不能为空", "text/html"));
            }
            if (user.AdminCode.Length > 30)
            {
                return(Content("false:用户名长度不能超过30", "text/html"));
            }
            if (user.AdminPwd.Length > 32)
            {
                return(Content("false:密码长度不能超过32", "text/html"));
            }
            string encryptStr = EncryptHelper.GetEncrypt(user.AdminPwd);

            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    if (db.sysadmin.Where(m => (m.AdminCode == user.AdminCode) && (m.AdminPwd == encryptStr)).Count() > 0)
                    {
                        System.Text.Encoding enc         = System.Text.Encoding.GetEncoding("gb2312");
                        string encodeStr                 = HttpUtility.UrlEncode(user.AdminCode, enc);
                        System.Web.HttpCookie authCookie = new System.Web.HttpCookie("bemlogin", encodeStr);
                        authCookie.Expires = DateTime.Now.AddMinutes(30);
                        System.Web.HttpContext.Current.Response.Cookies.Add(authCookie);
                        //return RedirectToAction("Index", "Device");
                        return(Content("true:登录成功", "text/html"));
                    }
                    else
                    {
                        return(Content("false:用户名或密码错误", "text/html"));
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("系统登录失败", ex);
                return(Content("false:数据库连接失败,请检查配置", "text/html"));
            }
        }
        public async Task <ActionResult> Create(NewAdmin info)
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    var userList = db.sysadmin.Where(m => m.AdminCode == info.UserCode);

                    if (userList.Count() > 0)
                    {
                        ModelState.AddModelError("UserCode", "该管理员已存在");
                        return(View(info));
                    }
                    sysadmin item = new sysadmin();
                    item.AdminName  = info.UserName;
                    item.CreateDate = DateTime.Now;
                    item.AdminCode  = info.UserCode;
                    item.AdminType  = 1;
                    item.AdminPwd   = EncryptHelper.GetEncrypt("123456");
                    db.sysadmin.Add(item);

                    int result = await db.SaveChangesAsync();

                    return(RedirectToAction("", "administrator"));
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("创建管理员失败", ex);
                ViewData["status"] = "false";
            }
            return(View(info));
        }
        public ActionResult Index()
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    //读取非超级管理员
                    var userList = from adm in db.sysadmin
                                   where adm.AdminType != 0
                                   select new SysAdminEx
                    {
                        AdminID    = adm.AdminID,
                        AdminCode  = adm.AdminCode,
                        AdminName  = adm.AdminName,
                        AdminPwd   = adm.AdminPwd,
                        AdminType  = adm.AdminType,
                        CreateDate = adm.CreateDate
                    };

                    if (userList.Count() <= 0)
                    {
                        return(View());
                    }
                    return(View(userList.ToList()));
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("数据库读取失败", ex);
                return(Content("数据库读取失败"));
            }
        }
        public async Task <ActionResult> Delete(string id)
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            if (string.IsNullOrEmpty(id))
            {
                return(RedirectToAction("Index", "serialport"));
            }
            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    if (db.device.Where(m => m.servicecode == id).Count() > 0)
                    {
                        return(Content("1", "text/html"));
                    }
                    else
                    {
                        serialservice matchOne = db.serialservice.Where(m => m.code == id).ToList().First();
                        db.serialservice.Attach(matchOne);
                        db.Entry(matchOne).State = System.Data.Entity.EntityState.Deleted;
                        await db.SaveChangesAsync();

                        return(Content("0", "text/html"));
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("串口服务器删除异常", ex);
                return(Content("2", "text/html"));
            }
        }
        public async Task <ActionResult> Create(serialservice info)
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            if (ModelState.IsValid)
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    if (db.serialservice.Where(m => m.code == info.code || m.name == info.name).Count() > 0)
                    {
                        ModelState.AddModelError("Title", "相同设备编号或设备名称的串口服务器已存在,请更换后重新添加");
                        return(View(info));
                    }

                    try
                    {
                        db.serialservice.Add(info);
                        await db.SaveChangesAsync();

                        //MvcApplication.Client.Refresh(dev.slaveid, true);
                        return(RedirectToAction("Index", "serialport"));
                    }
                    catch
                    {
                        ModelState.AddModelError("Title", "数据保存失败");
                        return(View(info));
                    }
                }
            }
            return(View(info));
        }
Exemple #14
0
        public ActionResult CheckData(string userName, string userPwd)
        {
            if (string.IsNullOrEmpty(userName))
            {
                ModelState.AddModelError("UserName", "用户名不能为空");
                return(View("Index"));
            }
            if (string.IsNullOrEmpty(userPwd))
            {
                ModelState.AddModelError("Passwd", "密码不能为空");
                return(View("Index"));
            }
            if (userName.Length > 30)
            {
                ModelState.AddModelError("UserName", "用户名长度不能超过30");
                return(View("Index"));
            }
            if (userPwd.Length > 32)
            {
                ModelState.AddModelError("Passwd", "密码长度不能超过32");
                return(View("Index"));
            }
            string encryptStr = EncryptHelper.GetEncrypt(userPwd);

            using (mlrmsEntities db = new mlrmsEntities())
            {
                if (db.sysadmin.Where(m => (m.AdminName == userName) && (m.AdminPwd == encryptStr)).Count() > 0)
                {
                    return(Content("True", "text/html"));
                }
                else
                {
                    ModelState.AddModelError("Title", "用户名或密码错误");
                    return(View("Index"));
                }
            }
        }
Exemple #15
0
        public List <HeatPumpParas> GetAllAttendanceInfos(string beginTime1, string endTime1, string searchkey, string slaveCode)
        {
            DateTime             dtStart     = DateTime.Parse(beginTime1);
            DateTime             dtEnd       = DateTime.Parse(endTime1);
            int                  slaveID     = int.Parse(slaveCode);
            List <HeatPumpParas> attendances = new List <HeatPumpParas>();

            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    IQueryable <HeatPumpParas> dynamicAttendance = null;
                    if (slaveCode != "0")
                    {
                        dynamicAttendance = (from heatPump in db.device
                                             join dev in db.heatmeterstatistics
                                             on heatPump.slaveid equals dev.slaveid into h
                                             from c in h.DefaultIfEmpty()
                                             where (heatPump.servicecode == c.servicecode && heatPump.port == c.port)
                                             where heatPump.type == 2
                                             where c.slaveid == slaveID
                                             where (c.time >= dtStart && c.time <= dtEnd)
                                             where (heatPump.name.ToLower().Contains(searchkey.ToLower()))
                                             select new HeatPumpParas
                        {
                            coldEnergy = c.coldenergy,
                            warmEnergy = c.warmenergy,
                            slaveID = heatPump.slaveid,
                            name = heatPump.name,
                            type = heatPump.type,
                            time = c.time,
                            subType = heatPump.subtype
                        }).OrderByDescending(m => m.time);
                    }
                    else
                    {
                        dynamicAttendance = (from heatPump in db.device
                                             join dev in db.heatmeterstatistics
                                             on heatPump.slaveid equals dev.slaveid into h
                                             from c in h.DefaultIfEmpty()
                                             where (heatPump.servicecode == c.servicecode && heatPump.port == c.port)
                                             where heatPump.type == 2
                                             where (c.time >= dtStart && c.time <= dtEnd)
                                             where (heatPump.name.ToLower().Contains(searchkey.ToLower()))
                                             select new HeatPumpParas
                        {
                            coldEnergy = c.coldenergy,
                            warmEnergy = c.warmenergy,
                            slaveID = heatPump.slaveid,
                            name = heatPump.name,
                            type = heatPump.type,
                            time = c.time,
                            subType = heatPump.subtype
                        }).OrderByDescending(m => m.time);
                    }
                    attendances = dynamicAttendance.ToList();
                    if (attendances == null || attendances.Count == 0)
                    {
                        return(null);
                    }
                    foreach (var item in attendances)
                    {
                        item.typeName    = EnumParser.TypeParser(item.type);
                        item.subTypeName = item.subType.HasValue ? EnumParser.SubTypeParser(item.subType.Value) : string.Empty;
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("获取热泵记录失败", ex);
            }
            return(attendances);
        }
Exemple #16
0
        public ActionResult Index(string searchkey, string index, int?searchType)
        {
            string name, error;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out LoginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = LoginName;
            }
            if (string.IsNullOrEmpty(index))
            {
                index = "1";
            }
            if (searchkey == string.Empty)
            {
                return(RedirectToAction("", "Device"));
            }
            if (searchkey == null)
            {
                searchkey = string.Empty;
            }

            if (searchType == null)
            {
                searchType = (int)QueryDeviceSubType.ALL;
            }

            DeviceQueryCondition condition = new DeviceQueryCondition();

            condition.searchkey = searchkey;
            if (string.IsNullOrEmpty(searchkey))
            {
                searchType = (int)QueryDeviceSubType.ALL;  //当searchkey为空时,默认加载全部
            }
            condition.queryType     = (QueryDeviceSubType)searchType;
            ViewData["requestData"] = condition;
            List <device> totalList = null;

            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    int totalCount = db.device.Count();
                    if (totalCount == 0)
                    {
                        return(View());
                    }
                    PageModel page = new PageModel()
                    {
                        SearchKeyWord = searchkey, SearchType = searchType, CurrentIndex = Int32.Parse(index), TotalCount = totalCount
                    };
                    totalList = db.device.Where(p => p.name.ToLower().Contains(searchkey.ToLower()) || p.slaveid.ToString().Contains(searchkey.ToLower())).OrderBy(m => m.type).Skip((page.CurrentIndex - 1) * page.PageSize).Take(page.PageSize).ToList();
                    pageList  = new List <DeviceInfo>();
                    foreach (var item in totalList)
                    {
                        DeviceInfo info = new DeviceInfo();
                        info.slaveID     = item.slaveid;
                        info.note        = item.note;
                        info.devName     = item.name;
                        info.serviceCode = item.servicecode;
                        info.serviceName = item.servicename;
                        info.port        = item.port;
                        info.runStatus   = 1;
                        info.type        = item.type;
                        info.typeName    = EnumParser.TypeParser(item.type);
                        info.subType     = item.subtype.HasValue ?item.subtype.Value : -1;
                        info.subTypeName = EnumParser.SubTypeParser(info.subType);
                        pageList.Add(info);
                    }
                    ViewData["pagemodel"] = page;
                    return(View(pageList));
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("设备列表加载失败", ex);
                return(View());
            }
        }
Exemple #17
0
        public async Task <ActionResult> Create(DeviceInfo info, string dptName1List, string subList, string serialList)
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            info.type = int.Parse(dptName1List);
            if (info.type == (int)DeviceType.MainEngine || info.type == (int)DeviceType.WaterPump)
            {
                info.subType = int.Parse(subList);
            }
            List <DeviceEnumType> list = new List <DeviceEnumType>();

            list.Add(new DeviceEnumType()
            {
                code = "1", name = "热泵主机"
            });
            list.Add(new DeviceEnumType()
            {
                code = "3", name = "水表"
            });
            list.Add(new DeviceEnumType()
            {
                code = "4", name = "电表"
            });
            list.Add(new DeviceEnumType()
            {
                code = "2", name = "热能表"
            });

            SelectList dptSelectlist1 = new SelectList(list, "code", "name", dptName1List);

            ViewData["dptName1List"] = dptSelectlist1;

            List <DeviceEnumType> list2 = new List <DeviceEnumType>();

            list2.Add(new DeviceEnumType()
            {
                code = "5", name = "25P"
            });
            list2.Add(new DeviceEnumType()
            {
                code = "6", name = "50P"
            });

            SelectList dptSelectlist2 = new SelectList(list2, "code", "name", subList);

            ViewData["subList"] = dptSelectlist2;

            SelectList    serialListx = null;
            serialservice seviceItem  = null;

            using (mlrmsEntities db = new mlrmsEntities())
            {
                var slist = db.serialservice.ToList();

                serialListx            = new SelectList(slist, "code", "name", serialList);
                ViewData["serialList"] = serialListx;
                if (slist != null || slist.Count > 0)
                {
                    seviceItem = slist.Where(m => m.code == serialList).First();
                }
            }
            if (info.port > seviceItem.portcount)
            {
                ModelState.AddModelError("Title", "配置的端口号不能大于该串口服务器的串口数,请重新配置");
                return(View(info));
            }
            info.serviceCode = seviceItem.code;
            info.serviceName = seviceItem.name;

            if (ModelState.IsValid)
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    if (db.device.Where(m => m.port == info.port && m.servicecode == info.serviceCode).Count() > 0)
                    {
                        ModelState.AddModelError("Title", "串口服务器的端口已配置,请更换端口号重新添加");
                        return(View(info));
                    }
                    if (db.device.Where(m => m.slaveid == info.slaveID && m.port == info.port && m.servicecode == info.serviceCode).Count() > 0)
                    {
                        ModelState.AddModelError("Title", "相同设备地址的设备已存在,请更换设备地址后重新添加");
                        return(View(info));
                    }

                    device dev = new device();
                    dev.note        = info.note;
                    dev.slaveid     = info.slaveID;
                    dev.servicecode = info.serviceCode;
                    dev.servicename = info.serviceName;
                    dev.port        = info.port;
                    dev.type        = int.Parse(dptName1List);
                    dev.subtype     = info.subType == 0 ? null : (int?)int.Parse(subList);
                    dev.name        = info.devName;
                    dev.note        = info.note;
                    db.device.Add(dev);
                    try
                    {
                        await db.SaveChangesAsync();

                        MvcApplication.Client.Refresh(dev.slaveid, true);
                        return(RedirectToAction("Index", "Device"));
                    }
                    catch
                    {
                        ModelState.AddModelError("Title", "数据保存失败");
                        return(View(info));
                    }
                }
            }
            return(View(info));
        }
Exemple #18
0
        public ActionResult Create()
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            List <DeviceEnumType> list = new List <DeviceEnumType>();

            list.Add(new DeviceEnumType()
            {
                code = "1", name = "热泵"
            });
            list.Add(new DeviceEnumType()
            {
                code = "3", name = "水表"
            });
            list.Add(new DeviceEnumType()
            {
                code = "4", name = "电表"
            });
            list.Add(new DeviceEnumType()
            {
                code = "5", name = "水泵"
            });

            SelectList dptSelectlist1 = new SelectList(list, "code", "name");

            ViewData["dptName1List"] = dptSelectlist1;
            SelectList serialList = null;

            List <DeviceEnumType> list2 = new List <DeviceEnumType>();

            list2.Add(new DeviceEnumType()
            {
                code = "5", name = "25P"
            });
            list2.Add(new DeviceEnumType()
            {
                code = "6", name = "50P"
            });

            SelectList dptSelectlist2 = new SelectList(list2, "code", "name");

            ViewData["subList"] = dptSelectlist2;
            using (mlrmsEntities db = new mlrmsEntities())
            {
                var    slist = db.serialservice.Select(m => new { code = m.code, name = m.name }).ToList();
                string code  = slist.First().code;
                serialList             = new SelectList(slist, "code", "name", code);
                ViewData["serialList"] = serialList;
            }
            return(View());
        }
Exemple #19
0
        public List <WaterPumpParas> GetAllAttendanceInfos(string beginTime1, string endTime1, string searchkey, string slaveCode)
        {
            DateTime dtStart = DateTime.Parse(beginTime1);
            DateTime dtEnd   = DateTime.Parse(endTime1);
            int      slaveID = int.Parse(slaveCode);
            List <WaterPumpParas> attendances = new List <WaterPumpParas>();

            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    IQueryable <WaterPumpParas> dynamicAttendance = null;
                    if (slaveCode != "0")
                    {
                        dynamicAttendance = (from heatPump in db.devices
                                             join bd in db.hmbindings
                                             on heatPump.slaveid equals bd.bindingid
                                             join dev in db.heatmeterstatistics
                                             on bd.hmid equals dev.slaveid
                                             where heatPump.type == 5
                                             where (heatPump.slaveid == slaveID)
                                             where (dev.time >= dtStart && dev.time <= dtEnd)
                                             where (heatPump.name.ToLower().Contains(searchkey.ToLower()))
                                             select new WaterPumpParas
                        {
                            coldEnergy = dev.coldenergy,
                            warmEnergy = dev.warmenergy,
                            slaveID = heatPump.slaveid,
                            name = heatPump.name,
                            time = dev.time,
                        }).OrderByDescending(m => m.time);
                    }
                    else
                    {
                        dynamicAttendance = (from heatPump in db.devices
                                             join bd in db.hmbindings
                                             on heatPump.slaveid equals bd.bindingid
                                             join dev in db.heatmeterstatistics
                                             on bd.hmid equals dev.slaveid
                                             where heatPump.type == 5
                                             where (dev.time >= dtStart && dev.time <= dtEnd)
                                             where (heatPump.name.ToLower().Contains(searchkey.ToLower()))
                                             select new WaterPumpParas
                        {
                            coldEnergy = dev.coldenergy,
                            warmEnergy = dev.warmenergy,
                            slaveID = heatPump.slaveid,
                            name = heatPump.name,
                            time = dev.time,
                        }).OrderByDescending(m => m.time);
                    }
                    attendances = dynamicAttendance.ToList();
                    if (attendances == null || attendances.Count == 0)
                    {
                        return(null);
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("获取水泵能耗记录失败", ex);
            }
            return(attendances);
        }
Exemple #20
0
        // GET: AttendanceAccount
        public ActionResult Index(string beginTime1, string endTime1, string searchkey, string dptName1List, string index)
        {
            string name, error, loginName;

            if (CookieHelper.HasCookie(out name, out error) == false)
            {
                return(RedirectToAction("", "LoginUI"));
            }
            else
            {
                new RoleHelper().GetRoles(name, out role, out department1Code, out loginName);
                ViewData["VisitorRole"] = role;
                ViewData["username"]    = loginName;
            }
            DateTime dt = DateTime.Now;

            if (string.IsNullOrEmpty(beginTime1) && string.IsNullOrEmpty(endTime1))
            {
                beginTime1 = dt.ToString("yyyy/MM/01 00:00");
                endTime1   = dt.ToString("yyyy/MM/dd 23:59");
            }

            if (string.IsNullOrEmpty(searchkey))
            {
                searchkey = string.Empty;
            }
            if (string.IsNullOrEmpty(index))
            {
                index = "1";
            }
            if (string.IsNullOrEmpty(dptName1List))
            {
                dptName1List = "0";
            }
            AttendanceQueryCondition requestData = new AttendanceQueryCondition();  //回传给界面显示用

            requestData.timeStart1  = beginTime1;
            requestData.timeEnd1    = endTime1;
            requestData.searchKey   = searchkey;
            requestData.department1 = dptName1List;
            ViewData["requestData"] = requestData;
            List <WaterMeterParas> attendanceResults = new List <WaterMeterParas>();

            try
            {
                SelectList dptSelectlist1 = null;
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    var dptList = db.device.Where(m => m.type == 3).Select(m => new { slaveid = m.slaveid, devname = m.name }).ToList();
                    dptList.Insert(0, new { slaveid = 0, devname = "全部" });
                    int waterCode = int.Parse(dptName1List);
                    dptSelectlist1           = new SelectList(dptList, "slaveid", "devname", waterCode);
                    ViewData["dptName1List"] = dptSelectlist1;
                }
                if (DateTime.Parse(beginTime1) > DateTime.Parse(endTime1))
                {
                    ViewData["timeValid"] = true;
                    return(View());
                }
                attendanceResults = GetPageAttendanceInfos(Convert.ToInt32(index), beginTime1, endTime1, searchkey, dptName1List);
            }
            catch (Exception ex)
            {
                //记录日志
                LogHelper.Error("水表记录读取异常", ex);
            }
            if (attendanceResults == null || attendanceResults.Count == 0)
            {
                return(View());
            }
            PageModelV2 page = null;

            page = new PageModelV2()
            {
                SearchKeyWord = searchkey, DptName = dptName1List, BeginTime = beginTime1, EndTime = endTime1, CurrentIndex = Int32.Parse(index), TotalCount = totalCount
            };
            ViewData["pagemodel"] = page;
            return(View(attendanceResults));
        }
Exemple #21
0
        public List <WaterMeterParas> GetPageAttendanceInfos(int index, string beginTime1, string endTime1, string searchkey, string slaveCode)
        {
            DateTime dtStart = DateTime.Parse(beginTime1);
            DateTime dtEnd   = DateTime.Parse(endTime1);
            int      slaveID = int.Parse(slaveCode);
            List <WaterMeterParas> attendances = new List <WaterMeterParas>();

            try
            {
                using (mlrmsEntities db = new mlrmsEntities())
                {
                    IQueryable <WaterMeterParas> dynamicAttendance = null;
                    if (slaveCode != "0")
                    {
                        if (index == 1)
                        {
                            totalCount = (from dev in db.device
                                          join water in db.watermeterstatistics
                                          on dev.slaveid equals water.slaveid
                                          where dev.type == 3
                                          where (dev.slaveid == slaveID)
                                          where (water.time >= dtStart && water.time <= dtEnd)
                                          //where (dev.name.ToLower().Contains(searchkey.ToLower()))
                                          select dev).Count();
                        }
                        dynamicAttendance = (from dev in db.device
                                             join water in db.watermeterstatistics
                                             on dev.slaveid equals water.slaveid
                                             where dev.type == 3
                                             where (dev.slaveid == slaveID)
                                             where (water.time >= dtStart && water.time <= dtEnd)
                                             //where (dev.name.ToLower().Contains(searchkey.ToLower()))
                                             select new WaterMeterParas
                        {
                            waterPara = water.wateramount,
                            slaveID = water.slaveid,
                            name = dev.name,
                            time = water.time,
                        }).OrderByDescending(m => m.time).Skip((index - 1) * page_size).Take(page_size);
                    }
                    else
                    {
                        if (index == 1)
                        {
                            totalCount = (from dev in db.device
                                          join water in db.watermeterstatistics
                                          on dev.slaveid equals water.slaveid
                                          where dev.type == 3
                                          where (water.time >= dtStart && water.time <= dtEnd)
                                          where (dev.name.ToLower().Contains(searchkey.ToLower()))
                                          select dev).Count();
                        }
                        dynamicAttendance = (from dev in db.device
                                             join water in db.watermeterstatistics
                                             on dev.slaveid equals water.slaveid
                                             where dev.type == 3
                                             where (water.time >= dtStart && water.time <= dtEnd)
                                             where (dev.name.ToLower().Contains(searchkey.ToLower()))
                                             select new WaterMeterParas
                        {
                            waterPara = water.wateramount,
                            slaveID = water.slaveid,
                            name = dev.name,
                            time = water.time,
                        }).OrderByDescending(m => m.time).Skip((index - 1) * page_size).Take(page_size);
                    }
                    attendances = dynamicAttendance.ToList();
                    if (attendances == null || attendances.Count == 0)
                    {
                        return(null);
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error("获取用水量信息失败", ex);
            }
            return(attendances);
        }