Beispiel #1
0
        public string GetCardUserById(string loginIdentifer, string cardUserID)
        {
            JavaScriptObject obj2 = new JavaScriptObject();

            obj2.Add("Result", false);
            obj2.Add("Message", "");
            obj2.Add("CardUser", new JavaScriptObject());
            try
            {
                ResMsg msg = CommonUtil.CheckLoginState(loginIdentifer, true);
                if (!msg.Result)
                {
                    obj2["Message"] = msg.Message;
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                if ((cardUserID == null) || (cardUserID.Trim() == ""))
                {
                    obj2["Message"] = "用水户卡ID不能为空";
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                CardUser cardUser = CardUserModule.GetCardUserById(long.Parse(cardUserID));
                if (cardUser == null)
                {
                    obj2["Message"] = "ID为" + cardUserID + "用水户卡不存在";
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                obj2["Result"]   = true;
                obj2["CardUser"] = CardUserModule.CardUserToJson(cardUser);
            }
            catch (Exception exception)
            {
                obj2["Message"] = exception.Message;
            }
            return(JavaScriptConvert.SerializeObject(obj2));
        }
Beispiel #2
0
        private JavaScriptObject CardUserWaterLog(HttpRequest request)
        {
            string SerialNumber          = request["SerialNumber"] ?? "";
            string UserNo                = request["UserNo"] ?? "";
            string DeviceNo              = request["DeviceNo"] ?? "";
            string StartTime             = request["StartTime"] ?? "";
            string StartResidualWater    = request["StartResidualWater"] ?? "";
            string StartResidualElectric = request["StartResidualElectric"] ?? "";
            string EndTime               = request["EndTime"] ?? "";
            string EndResidualWater      = request["EndResidualWater"] ?? "";
            string EndResidualElectric   = request["EndResidualElectric"] ?? "";

            JavaScriptObject result = new JavaScriptObject();

            result.Add("Result", false);
            result.Add("Message", "");

            try
            {
                CardUser cu = CardUserModule.GetCardUserBySerialNumber(SerialNumber);
                if (cu == null)
                {
                    result["Message"] = "卡序列号" + SerialNumber + "的用水户不存在!";
                    return(result);
                }

                Device device = DeviceModule.GetDeviceByFullDeviceNo(DeviceNo);
                if (device == null)
                {
                    result["Message"] = "设备长编号" + DeviceNo + "不存在!";
                    return(result);
                }

                CardUserWaterLog cuwLog = new CardUserWaterLog();
                cuwLog.SerialNumber          = SerialNumber;
                cuwLog.WateUserId            = cu.WaterUserId;
                cuwLog.UserNo                = UserNo;
                cuwLog.DeviceId              = device.Id;
                cuwLog.DeviceNo              = DeviceNo;
                cuwLog.StartTime             = DateTime.Parse(StartTime);
                cuwLog.StartResidualWater    = decimal.Parse(StartResidualWater);
                cuwLog.StartResidualElectric = decimal.Parse(StartResidualElectric);
                cuwLog.EndTime               = DateTime.Parse(EndTime);
                cuwLog.EndResidualWater      = decimal.Parse(EndResidualWater);
                cuwLog.EndResidualElectric   = decimal.Parse(EndResidualElectric);
                cuwLog.WaterUsed             = decimal.Parse(EndResidualWater) - decimal.Parse(StartResidualWater);
                cuwLog.ElectricUsed          = decimal.Parse(EndResidualElectric) - decimal.Parse(StartResidualElectric);
                cuwLog.Duration              = Convert.ToDecimal((DateTime.Parse(EndTime) - DateTime.Parse(StartTime)).TotalSeconds);
                CardUserWaterLogModule.AddCardUserWaterLog(cuwLog);

                result["Result"] = true;
            }
            catch (Exception ex)
            {
                result["Message"] = "用户用水保存出错!";
                myLogger.Error(ex.Message);
            }

            return(result);
        }
Beispiel #3
0
        public string GetCardUsersByVillageId(string loginIdentifer, string villageId, bool isExport)
        {
            JavaScriptObject obj2  = new JavaScriptObject();
            JavaScriptArray  array = new JavaScriptArray();

            obj2.Add("Result", false);
            obj2.Add("Message", "");
            obj2.Add("CardUsers", array);
            try
            {
                ResMsg msg = CommonUtil.CheckLoginState(loginIdentifer, true);
                if (!msg.Result)
                {
                    obj2["Message"] = msg.Message;
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                if ((villageId == null) || (villageId.Trim() == ""))
                {
                    obj2["Message"] = "参数villageId不能为空";
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                if (DistrictModule.ReturnDistrictInfo(long.Parse(villageId)) == null)
                {
                    obj2["Message"] = "ID为" + villageId + "的村庄不存在";
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                //List<CardUser> liCardUsers = CardUserModule.GetCardUsersByDistrictId(long.Parse(villageId), true);
                //foreach (CardUser info in liCardUsers)
                //{
                //    array.Add(CardUserModule.CardUserToJson(info));
                //}
                List <WaterUser> liWaterUser = WaterUserModule.GetWaterUsersByDistrictId(long.Parse(villageId), true);
                foreach (WaterUser wui in liWaterUser)
                {
                    List <CardUser> liCardUsers = CardUserModule.GetCardUsersByWaterUserId(wui.id, true);
                    foreach (CardUser info in liCardUsers)
                    {
                        array.Add(CardUserModule.CardUserToJson(info));
                    }
                }
                obj2["Result"] = true;
            }
            catch (Exception exception)
            {
                obj2["Message"] = exception.Message;
            }
            return(JavaScriptConvert.SerializeObject(obj2));
        }
Beispiel #4
0
 private void button1_Click(object sender, EventArgs e)
 {
     this.label7.Text = "";
     try
     {
         CardUserModule.LoadCardUsers();
         this.label4.Text      = CardUserModule.GetAllCardUser(true).Count.ToString();
         this.label7.ForeColor = Color.Green;
         this.label7.Text      = "更新成功";
     }
     catch
     {
         this.label7.ForeColor = Color.Red;
         this.label7.Text      = "更新失败";
     }
 }
Beispiel #5
0
        //启动时,设备全部显示离线
        #region 2015-8-7 每次启动时,将登陆状态置为0
        void installDeviceState()
        {
            try
            {
                BaseModule.LoadBaseInfo();
                CardUserModule.LoadCardUsers();
                DistrictModule.UpdateLevelInfo();
                DistrictModule.UpdateDistrictInfo();

                //将在线状态置为0
                DeviceModule.SetOnline0();

                DeviceModule.LoadDevices();

                /*
                 * IList<Device> deviceList = DeviceModule.GetAllDevice();
                 *
                 * foreach (Device d in deviceList)
                 * {
                 *  if (d.Online == 1)
                 *  {
                 *      d.Online = 0;
                 *      DeviceModule.ModifyDevice(d);
                 *  }
                 * }
                 * */

                AlarmService.Init();
                int alarmCount = AlarmService.GetCount();
                //logHelper.Info("程序启动报警数量为:" + alarmCount);
                ShowLogData.add("程序启动报警数量为:" + alarmCount);
            }
            catch (Exception e)
            {
                if (showErrorLog)
                {
                    string error = string.Format("在将设备登陆状态置为0时,读取数据库时出错,错误信息{0}", e.Message);
                    logHelper.Error(error);
                }
            }
            finally
            {
            }
        }
Beispiel #6
0
        public string GetCardUsersByWaterUserIds(string loginIdentifer, string waterUserIds)
        {
            JavaScriptObject obj2  = new JavaScriptObject();
            JavaScriptArray  array = new JavaScriptArray();

            obj2.Add("Result", false);
            obj2.Add("Message", "");
            obj2.Add("CardUsers", array);
            try
            {
                ResMsg msg = CommonUtil.CheckLoginState(loginIdentifer, true);
                if (!msg.Result)
                {
                    obj2["Message"] = msg.Message;
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                if ((waterUserIds == null) || (waterUserIds.Trim() == ""))
                {
                    obj2["Message"] = "用水户ID不能为空";
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                foreach (string str in waterUserIds.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries))
                {
                    WaterUser wui = WaterUserModule.GetWaterUserById(long.Parse(str));
                    if (wui == null)
                    {
                        obj2["Message"] = "ID为" + str + "的用水户不存在";
                        return(JavaScriptConvert.SerializeObject(obj2));
                    }
                    List <CardUser> liCardUsers = CardUserModule.GetCardUsersByWaterUserId(wui.id, true);
                    foreach (CardUser info in liCardUsers)
                    {
                        array.Add(CardUserModule.CardUserToJson(info));
                    }
                }
                obj2["Result"] = true;
            }
            catch (Exception exception)
            {
                obj2["Message"] = exception.Message;
            }
            return(JavaScriptConvert.SerializeObject(obj2));
        }
Beispiel #7
0
        private void Refresh()
        {
            int i = 0;

            while (!isClose)
            {
                i++;
                if (i == 2 * 10)
                {
                    WaterUserModule.LoadWaterUsers();
                    CardUserModule.LoadCardUsers();
                    i = 0;
                }
                DeviceModule.LoadDevices();

                //间隔30秒
                Thread.Sleep(30 * 1000);
            }
        }
Beispiel #8
0
        //根据信息的种类 ,进行处理:1.数据信息,发送给DTU  2.控制命令,发送给WEB  3.设备列表,更新显示表格
        private void proxyProcess(DataTransfer transfer)
        {
            switch (transfer.TransferType)
            {
            case DataTransferType.DataTransferDataInfo:
            {
                DataTransferInfo info = transfer.TransferDataInfo;
                DeviceInfo       di   = new DeviceInfo();
                di.Parse(info.DeviceNo);
                string DeviceFullNo     = DeviceModule.DeviceNo_Hex2Normal(di.SerialString);
                string DeviceFullNoMain = DeviceModule.GetDeviceNoMain(DeviceFullNo);
                bridge.sendToDtu(DeviceFullNo, DeviceFullNoMain, info.Data, info.Offset, info.Length);
                break;
            }

            case DataTransferType.DataTransferCommand:
            {
                DTU.GateWay.Protocol.Command command = transfer.TransferCommand;
                bridge.sendToWeb(command.DeviceInfo.SerialLong, command);
                break;
            }

            case DataTransferType.DataTransferDeviceList:
            {
                Device      deviceList  = transfer.DeviceList;
                DeviceEvent deviceEvent = transfer.DeviceEvent;
                updateDeviceListInGridView(deviceList, deviceEvent);
                break;
            }

            case DataTransferType.DataTransferLog:
            {
                break;
            }

            case DataTransferType.DataTransferUpdateDevice:
            {
                string kt  = transfer.KeyType;
                string key = transfer.Key;
                if (SysCache.ShowInfoLog)
                {
                    ShowLogData.add("更新设备缓存:" + kt + "," + key);
                    logHelper.Info("更新设备缓存:" + kt + "," + key);
                }
                if (kt == "01")
                {
                    Device device = DeviceModule.GetDeviceByFullDeviceNo_DB(key);
                    if (device != null)
                    {
                        DeviceModule.UpdateDeviceInfo(device);
                        if (dtuServer != null)
                        {
                            dtuServer.updateDevice(device);
                        }

                        updateDeviceListInGridView(device, null);
                    }
                    else
                    {
                        if (SysCache.ShowInfoLog)
                        {
                            ShowLogData.add("更新设备缓存:" + kt + "," + key + " 无法更新设备不存在");
                            logHelper.Info("更新设备缓存:" + kt + "," + key + " 无法更新设备不存在");
                        }
                    }
                }
                else if (kt == "02")
                {
                    DeviceModule.RemoveDeviceInfo(key);
                    lock (this.deviceListsDataGridView)
                    {
                        int rows = this.deviceListsDataGridView.Rows.Count;
                        for (int i = 0; i < rows; i++)
                        {
                            object obj = this.deviceListsDataGridView.Rows[i].Cells[1].Value;
                            if (obj != null)
                            {
                                string val = obj.ToString();
                                if (val.Equals(key))
                                {
                                    this.deviceListsDataGridView.Rows.Remove(this.deviceListsDataGridView.Rows[i]);
                                    return;
                                }
                            }
                        }
                    }
                }
                break;
            }

            case DataTransferType.DataTransferUpdateCardUser:
            {
                string kt  = transfer.KeyType;
                string key = transfer.Key;
                ShowLogData.add("更新用户卡缓存:" + kt + "," + key);
                if (kt == "01")
                {
                    CardUser cardUser = CardUserModule.GetCardUserBySerialNumber_DB(key);
                    if (cardUser != null)
                    {
                        CardUserModule.UpdateCardUserInfo(cardUser);
                    }
                }
                else if (kt == "02")
                {
                    CardUserModule.RemoveCardUserInfo(key);
                }
                break;
            }

            case DataTransferType.DataTransferUpdateDistrict:
            {
                ShowLogData.add("更新地区缓存");
                initDistrictTree();
                break;
            }
            }
        }
        public string RefreshCache(string loginIdentifer, string CacheName)
        {
            JavaScriptObject obj2 = new JavaScriptObject();

            obj2["Result"]  = false;
            obj2["Message"] = "";
            LoginUser loginUser = GlobalAppModule.GetLoginUser(loginIdentifer);

            if (loginUser == null)
            {
                obj2["Message"] = "未登录";
                return(JavaScriptConvert.SerializeObject(obj2));
            }
            if (loginUser.LoginTimeout)
            {
                obj2["Message"] = "登录超时";
                return(JavaScriptConvert.SerializeObject(obj2));
            }
            loginUser.LastOperateTime = DateTime.Now;
            CommonUtil.WaitMainLibInit();

            GlobalAppModule.IsInitMainLib = true;
            try
            {
                if (CacheName == "基础信息")
                {
                    BaseModule.LoadBaseInfo();
                    MenuModule.MenuInit();
                    RoleModule.UpdateRoleInfo();
                    SysUserModule.UpdateUserInfo();
                    DeviceTypeCodeModule.LoadDeviceTypeCodeInfos();
                    PriceModule.LoadPriceTypes();
                    PriceModule.LoadPriceInfos();
                    CropModule.LoadUnitQuotaInfos();
                    obj2["Result"] = true;
                }
                else if (CacheName == "用水户")
                {
                    WaterUserModule.LoadWaterUsers();
                    obj2["Result"] = true;
                }
                else if (CacheName == "用户卡")
                {
                    CardUserModule.LoadCardUsers();
                    obj2["Result"] = true;
                }
                else if (CacheName == "设备")
                {
                    DeviceModule.LoadDevices();
                    obj2["Result"] = true;
                }
                else if (CacheName == "区域")
                {
                    DistrictModule.UpdateLevelInfo();
                    DistrictModule.UpdateDistrictInfo();
                    obj2["Result"] = true;
                }
                else
                {
                    obj2["Message"] = "参数错误!【" + CacheName + "】";
                }
            }
            catch (Exception ex)
            {
                obj2["Message"] = "刷新缓存【" + CacheName + "】出错!" + ex.Message;
            }

            GlobalAppModule.IsInitMainLib = false;
            return(JavaScriptConvert.SerializeObject(obj2));
        }
        public string WriteOffWaterUserByUserSerialNumber(string loginIdentifer, string userSerialNumber)
        {
            JavaScriptObject obj2 = new JavaScriptObject();

            obj2.Add("Result", false);
            obj2.Add("Message", "");
            try
            {
                ResMsg msg = CommonUtil.CheckLoginState(loginIdentifer, true);
                if (!msg.Result)
                {
                    obj2["Message"] = msg.Message;
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                LoginUser loginUser = GlobalAppModule.GetLoginUser(loginIdentifer);
                if ((userSerialNumber == null) || (userSerialNumber.Trim() == ""))
                {
                    obj2["Message"] = "用户卡号不能为空";
                    return(JavaScriptConvert.SerializeObject(obj2));
                }

                CardUser cu = CardUserModule.GetCardUserBySerialNumber(userSerialNumber);
                if (cu == null)
                {
                    obj2["Message"] = "卡号为" + userSerialNumber + "的用户卡不存在";
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                WaterUser wui = WaterUserModule.GetWaterUserById(cu.WaterUserId);
                if (wui == null)
                {
                    obj2["Message"] = "卡号为" + userSerialNumber + "的用水户不存在";
                    return(JavaScriptConvert.SerializeObject(obj2));
                }
                ResMsg msg1 = WaterUserModule.WriteOffWaterUserById(cu.WaterUserId);
                if (msg1.Result)//msg.Result
                {
                    obj2["Result"] = true;
                }
                else
                {
                    obj2["Message"] = msg.Message;
                }
                try
                {
                    //添加日志
                    WaterUserLog log = new WaterUserLog();
                    log.WaterUserId    = wui.id;
                    log.LogUserId      = loginUser.UserId;
                    log.LogUserName    = loginUser.LoginName;
                    log.LogAddress     = ToolsWeb.GetIP(context.Request);
                    log.LogTime        = loginUser.LastOperateTime;
                    log.LogType        = "注销";
                    log.LogContent     = msg.Message;
                    log.UserName       = wui.UserName;
                    log.Password       = wui.Password;
                    log.DistrictId     = wui.DistrictId;
                    log.TrueName       = wui.TrueName;
                    log.IdentityNumber = wui.IdentityNumber;
                    log.Telephone      = wui.Telephone;
                    log.Address        = wui.Address;
                    log.WaterQuota     = wui.WaterQuota;
                    log.ElectricQuota  = wui.ElectricQuota;
                    log.Remark         = wui.Remark;
                    log.水价ID           = wui.水价ID;
                    log.电价ID           = wui.电价ID;
                    log.State          = wui.State;
                    WaterUserLogModule.Add(log);
                }
                catch
                {
                }
            }
            catch (Exception exception)
            {
                obj2["Message"] = exception.Message;
            }
            return(JavaScriptConvert.SerializeObject(obj2));
        }
Beispiel #11
0
        protected void Application_Start(object sender, EventArgs e)
        {
            string path = Server.MapPath("~/");

            SysInfo.IsReg   = false;
            SysInfo.DRegStr = "jssl160721";
            SysInfo.RegStr  = SysInfo.DRegStr;

            if (SysInfo.IsReg)
            {
                myLogger.Info("判断注册!");

                SysInfo.SetFilePath(path);

                SysInfo.IsRegSuccess = false;
                string regStr = "";
                if (FileHelper.IsExists(SysInfo.fileName))
                {
                    regStr = FileHelper.ReadFile(SysInfo.fileName);
                }
                else
                {
                    regStr = "00000000000000000000000000000000";
                    FileHelper.writeFile(SysInfo.fileName, regStr);
                }

                if (regStr != SysInfo.GetRegStr2())
                {
                    myLogger.Info("注册码不对!序列号为:" + SysInfo.GetRegStr1());
                }
                else
                {
                    myLogger.Info("注册码正确");
                    SysInfo.IsRegSuccess = true;
                }
            }

            isClose = false;
            myLogger.Info("网站启动");

            DbHelperSQL.SetConnectionString(ConfigurationManager.AppSettings["ConnectionString"]);

            GlobalAppModule.IsInitMainLib = true;
            BaseModule.LoadBaseInfo();
            MenuModule.MenuInit();
            RoleModule.UpdateRoleInfo();
            SysUserModule.UpdateUserInfo();
            //SysUserConfigModule.LoadSysUserConfig();
            DeviceTypeCodeModule.LoadDeviceTypeCodeInfos();
            PriceModule.LoadPriceTypes();
            PriceModule.LoadPriceInfos();
            CropModule.LoadUnitQuotaInfos();
            DistrictModule.UpdateLevelInfo();
            DistrictModule.UpdateDistrictInfo();
            WaterUserModule.LoadWaterUsers();
            DeviceModule.LoadDevices();
            //Device_GroundWaterModule.LoadDevices();
            CardUserModule.LoadCardUsers();

            GlobalAppModule.IsInitMainLib = false;

            Thread thread = new Thread(new ThreadStart(testConnect));

            thread.Start();

            Thread threadDeleteXLS = new Thread(new ThreadStart(DeleteXLS));

            threadDeleteXLS.Start();

            Thread threadRefresh = new Thread(new ThreadStart(Refresh));

            threadRefresh.Start();

            myLogger.Info("网站启动完成!");
        }