| | |
| | | { |
| | | //new一个新逻辑对象; |
| | | //新增正常自动化入口 |
| | | Common.Logic.CurrentLogic = new Common.Logic(); |
| | | Common.Logic.CurrentLogic.IsEnable = 1;//默认为开 |
| | | Common.Logic.CurrentLogic.LogicType = 0;//标记逻辑类型 |
| | | Common.Logic.CurrentLogic.LogicName = Language.StringByID(MyInternationalizationString.automation1); |
| | | var addLogicPage = new AddLogicPage(); |
| | | //Common.Logic.CurrentLogic = new Common.Logic(); |
| | | //Common.Logic.CurrentLogic.IsEnable = 1;//默认为开 |
| | | //Common.Logic.CurrentLogic.LogicType = 0;//标记逻辑类型 |
| | | //Common.Logic.CurrentLogic.LogicName = Language.StringByID(MyInternationalizationString.automation1); |
| | | //var addLogicPage = new AddLogicPage(); |
| | | //UserView.HomePage.Instance.AddChidren(addLogicPage); |
| | | //UserView.HomePage.Instance.PageIndex += 1; |
| | | //addLogicPage.Show(); |
| | | |
| | | |
| | | var addLogicPage = new SoneLogicList(); |
| | | UserView.HomePage.Instance.AddChidren(addLogicPage); |
| | | UserView.HomePage.Instance.PageIndex += 1; |
| | | addLogicPage.Show(); |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | break; |
| | | case 1: |
| | |
| | | break; |
| | | case 2: |
| | | { |
| | | |
| | | if (doorLock == null)
|
| | | {
|
| | | ///防止抛异常
|
| | | doorLock = new DoorLock();
|
| | | } |
| | | Send.CurrentDoorLock = doorLock; |
| | | Common.Logic.LogicDviceList.Clear(); |
| | | if (Common.Logic.LogicDviceList.Count == 0) |
| | | { |
| | |
| | | Dictionary<string, object> actionsInfo = new Dictionary<string, object>(); |
| | | actionsInfo.Add("LinkType", 8); |
| | | actionsInfo.Add("DeviceAddr", doorLock.DeviceAddr); |
| | | actionsInfo.Add("Epoint", doorLock.DeviceEpoint); |
| | | actionsInfo.Add("Epoint", "200"); |
| | | actionsInfo.Add("PassData", "055704010113");//默认门锁常关 |
| | | |
| | | //new一个新逻辑对象; |
| | |
| | | Automationview(logicScrolView, no); |
| | | CommonPage.Loading.Hide(); |
| | | } |
| | | static RowLayout selectedRow = new RowLayout() { Tag = "0" };//记录左滑状态 |
| | | /// <summary> |
| | | /// 加载自动化列表界面 |
| | | /// </summary> |
| | | /// <param name="refresview">Refresview.</param> |
| | | |
| | | static RowLayout selectedRow = new RowLayout() { Tag="0"};//记录左滑状态 |
| | | |
| | | private static async void Automationview(VerticalRefreshLayout refresview, bool no) |
| | | { |
| | | refresview.RemoveAll(); |
| | |
| | | actionsInfo.Add("LinkType", 8); |
| | | actionsInfo.Add("DeviceAddr", common.DeviceAddr); |
| | | actionsInfo.Add("Epoint", common.DeviceEpoint); |
| | | actionsInfo.Add("PassData", "055704010113");//默认门锁常关 |
| | | actionsInfo.Add("PassData", "055704010113");//默认门锁常关e |
| | | |
| | | Common.Logic currentLogic = new Common.Logic(); |
| | | currentLogic.IsEnable = 1;//默认为开 |
| | |
| | | currentLogic.LogicName = Language.StringByID(R.MyInternationalizationString.openmode); |
| | | currentLogic.Conditions.Add(timeConditionsInfo); |
| | | currentLogic.Actions.Add(actionsInfo); |
| | | Exist(3);//查找是否存在设置过失效时间(有的话删除,再添加) |
| | | var logicIfon = await Send.AddModifyLogic(currentLogic); |
| | | if (logicIfon != null && logicIfon.LogicId != 0) |
| | | { |
| | | return true; |
| | | //添加门锁失效时间的历史记录
|
| | | UserCenter.HdlDeviceDoorLockLogic.Current.AddDoorHistoryLog((DoorLock)common, 9003, timeVlaue.ToString());
|
| | | return true;//表示添加成功; |
| | | } |
| | | return false; |
| | | return false;//表示添加失败; |
| | | |
| | | } |
| | | |
| | | ///<summary> |
| | | /// s-one门锁是否存在自动化的方法; |
| | | /// 注意(参数2;3):valueInt=3是删除设置失效时间自动化;valueInt=2判断是否存在自动化; |
| | | /// 返回值:0不存在;1存在;2删除成功;3删除失败; |
| | | /// 注意(参数:2-自动化;3-失效时间自动化);
|
| | | /// 返回值:0不存在;其它值都存在; |
| | | /// </summary> |
| | | public static async System.Threading.Tasks.Task<int> Exist(int valueInt = 2) |
| | | { |
| | |
| | | var Idlist = await Send.GetLogicId(valueInt); |
| | | if (Idlist.Count != 0) |
| | | { |
| | | if (valueInt == 3) |
| | | { |
| | | for (int i = 0; i < Idlist.Count; i++) |
| | | { |
| | | //valueInt=3一条特殊的自动化(用来设置失效时间) |
| | | var d=await Send.DelLogic(Idlist[i]); |
| | | if (d != 0) |
| | | { |
| | | //删除成功 |
| | | exist = 2; |
| | | } |
| | | else |
| | | { |
| | | //删除失败 |
| | | exist = 3; |
| | | } |
| | | return exist; |
| | | //默认取第一个逻辑ID |
| | | exist = Idlist[0]; |
| | | |
| | | } |
| | | } |
| | | exist = 1; |
| | | } |
| | | return exist; |
| | | } |
| | | |
| | | |
| | | ///<summary>
|
| | | ///获取逻辑信息 |
| | | /// 返回值:null不存在;其它值都存在; |
| | | /// </summary>
|
| | | public static async System.Threading.Tasks.Task<Common.Logic> GetLogicIfon()
|
| | | {
|
| | | Common.Logic logic = null; |
| | | var Idlist = await Send.GetLogicId(3);
|
| | | if (Idlist.Count != 0)
|
| | | { |
| | | //默认取第一个逻辑ID(时效性只有一条逻辑) |
| | | int exist = Idlist[0]; |
| | | logic = await Send.GetLogic(exist, 3); |
| | | } |
| | | return logic; |
| | | } |
| | | } |
| | | } |
| | | |