private void DeleteRows(List <DataGridViewRow> rows) { if (rows.Count == 0) { return; } if (MessageBox.Show("确定删除超级密码?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK) { List <Maticsoft.Model.SMT_SUPER_PWD> pwds = new List <Maticsoft.Model.SMT_SUPER_PWD>(); foreach (var item in rows) { List <Maticsoft.Model.SMT_SUPER_PWD> models = (List <Maticsoft.Model.SMT_SUPER_PWD>)item.Tag; pwds.AddRange(models); } CtrlWaiting waiting = new CtrlWaiting(() => { try { Maticsoft.BLL.SMT_SUPER_PWD pwdbll = new Maticsoft.BLL.SMT_SUPER_PWD(); foreach (var item in pwds) { pwdbll.Delete(item.ID); } Maticsoft.BLL.SMT_SUPER_PWD pwdBll = new Maticsoft.BLL.SMT_SUPER_PWD(); var models = pwdbll.GetModelList(""); try { UploadPrivate.UploadPwds(models); } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "上传密码发生异常:" + ex.Message); log.Error("上传密码发生异常:", ex); } this.Invoke(new Action(() => { foreach (var item in rows) { dgvData.Rows.Remove(item); } })); } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "删除超级密码异常:" + ex.Message); log.Error("删除超级密码异常:", ex); } }); waiting.Show(this); } }
private void doDelete(List <Maticsoft.Model.SMT_STAFF_FACEDEV> list, bool research, params DataGridViewRow[] rows) { if (DialogResult.Cancel == MessageBox.Show("确定删除选择" + list.Count + "项的授权?", "确认", MessageBoxButtons.OKCancel)) { return; } CtrlWaiting waiting = new CtrlWaiting(() => { string errMsg = ""; try { var sdfs = UploadPrivate.DeleteFace(list, out errMsg); if (sdfs != null && sdfs.Count > 0) { foreach (var item in sdfs) { Maticsoft.BLL.SMT_STAFF_FACEDEV bll = new Maticsoft.BLL.SMT_STAFF_FACEDEV(); bll.Delete(item.STAFF_ID, item.FACEDEV_ID); } if (research) { DoSearch(null, null, null); } else if (rows != null) { this.Invoke(new Action(() => { try { foreach (var item in rows) { dgvStaffs.Rows.Remove(item); } } catch (Exception) { } })); } } } catch (System.Exception ex) { WinInfoHelper.ShowInfoWindow(this, "删除存在异常:" + ex.Message + "," + errMsg); } }); waiting.Show(this); }
private void DoRemoteOpen() { var doors = GetSelectDoors(); if (doors.Count == 0) { WinInfoHelper.ShowInfoWindow(this, "请选择门禁!"); return; } CtrlWaiting waiting = new CtrlWaiting(() => { UploadPrivate.RemoteOpenDoors(doors); }); waiting.Show(this); }
private void biCheckState_Click(object sender, EventArgs e) { CtrlWaiting waiting = new CtrlWaiting(() => { try { UploadPrivate.CheckFaceState(); } catch (Exception) {} finally { DoSearch(null, null, null); } }); waiting.Show(this); }
private void DoUpload(List <Maticsoft.Model.SMT_SUPER_PWD> pwds) { if (pwds.Count == 0) { WinInfoHelper.ShowInfoWindow(this, "未选择任何可上传密码!"); return; } CtrlWaiting waiting = new CtrlWaiting(() => { try { UploadPrivate.UploadPwds(pwds); } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "上传密码发生异常:" + ex.Message); log.Error("上传密码发生异常1:", ex); } }); waiting.Show(this); }
private void biUploadSelect_Click(object sender, EventArgs e) { List <Maticsoft.Model.SMT_CTRLR_TASK> tasks = GetTasks(false); if (tasks.Count == 0) { WinInfoHelper.ShowInfoWindow(this, "没有选择定时任务待上传!"); return; } CtrlWaiting waiting = new CtrlWaiting(() => { try { UploadPrivate.UploadTimeTasks(tasks); } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "上传定时任务发生异常:" + ex.Message); log.Error("上传定时任务发生异常:", ex); } }); waiting.Show(this); }
private void tsmiRemoteOpen_Click(object sender, EventArgs e) { if (_rightClick == null || _rightClick.Door == null || !(_rightClick.Door is Maticsoft.Model.SMT_DOOR_INFO)) { return; } var door = (Maticsoft.Model.SMT_DOOR_INFO)_rightClick.Door; var doors = new List <Maticsoft.Model.SMT_DOOR_INFO>() { door }; if (doors.Count == 0) { WinInfoHelper.ShowInfoWindow(this, "请选择门禁!"); return; } CtrlWaiting waiting = new CtrlWaiting(() => { UploadPrivate.RemoteOpenDoors(doors); }); waiting.Show(this); }
private void DoUpload(List <Maticsoft.Model.SMT_STAFF_FACEDEV> list, bool bforce, bool bcancel, params DataGridViewRow[] rows) { List <Maticsoft.Model.SMT_STAFF_FACEDEV> addmodels = new List <Maticsoft.Model.SMT_STAFF_FACEDEV>(); List <Maticsoft.Model.SMT_STAFF_FACEDEV> updatemodels = new List <Maticsoft.Model.SMT_STAFF_FACEDEV>(); List <Maticsoft.Model.SMT_STAFF_FACEDEV> deletemodels = new List <Maticsoft.Model.SMT_STAFF_FACEDEV>(); foreach (var item in list) { if (bcancel && item.IS_UPLOAD) { deletemodels.Add(item); } else { if (item.IS_UPLOAD) { updatemodels.Add(item); } else { addmodels.Add(item); } } } CtrlWaiting waiting = new CtrlWaiting(() => { string errMsg = ""; bool ret = false; List <Maticsoft.Model.SMT_STAFF_FACEDEV> dels = null; if (bcancel && deletemodels.Count > 0) { dels = UploadPrivate.DeleteFace(deletemodels, out errMsg); if (!string.IsNullOrWhiteSpace(errMsg)) { WinInfoHelper.ShowInfoWindow(this, "权限删除存在异常:" + errMsg); } } else { SmartAccess.Common.Datas.UploadPrivate.CancelObject cancelObject = new UploadPrivate.CancelObject(); if (bforce) { ret = UploadPrivate.UploadFace(cancelObject, list, null, out errMsg); } else { ret = UploadPrivate.UploadFace(cancelObject, addmodels, updatemodels, out errMsg); } if (!ret || !string.IsNullOrWhiteSpace(errMsg)) { WinInfoHelper.ShowInfoWindow(this, "权限上传存在异常:" + errMsg); } } if (rows != null && rows.Length > 0) { this.Invoke(new Action(() => { foreach (var row in rows) { Maticsoft.Model.SMT_STAFF_FACEDEV item = (Maticsoft.Model.SMT_STAFF_FACEDEV)row.Tag; string state = ""; if (item.IS_FORBIDDEN) { state = "已禁用"; } else if (item.IS_UPLOAD) { state = "已上传"; } else { if (item.PHOTO == null || item.PHOTO.Length == 0) { state = "未上传(无照片)"; } else { state = "未上传"; } } row.Cells[4].Value = state; row.Cells[8].Value = item.IS_UPLOAD ? "重上传" : "上传"; } })); } else { DoSearch(null, null, null); } }); waiting.Show(this); }
private void DoSave(bool isupload = false) { if (dgvSelected.Rows.Count == 0) { if (_inprivateStaffInfos.Count == 0) { WinInfoHelper.ShowInfoWindow(this, "请至少选一个授权的人员!"); return; } } var hasPrivates = _inprivateStaffInfos.ToList(); List <Maticsoft.Model.SMT_STAFF_INFO> staffInfos = new List <Maticsoft.Model.SMT_STAFF_INFO>(); foreach (DataGridViewRow item in dgvSelected.Rows) { staffInfos.Add((Maticsoft.Model.SMT_STAFF_INFO)item.Tag); } CtrlWaiting waiting = new CtrlWaiting(() => { Maticsoft.BLL.SMT_STAFF_FACEDEV sfbll = new Maticsoft.BLL.SMT_STAFF_FACEDEV(); List <Maticsoft.Model.SMT_STAFF_FACEDEV> addmodels = new List <Maticsoft.Model.SMT_STAFF_FACEDEV>(); List <Maticsoft.Model.SMT_STAFF_FACEDEV> updatemodels = new List <Maticsoft.Model.SMT_STAFF_FACEDEV>(); List <Maticsoft.Model.SMT_STAFF_FACEDEV> deletemodels = new List <Maticsoft.Model.SMT_STAFF_FACEDEV>(); try { foreach (var staff in staffInfos) { foreach (var dev in _selectDevices) { var model = sfbll.GetModel(staff.ID, dev.ID); if (model == null) { model = new Maticsoft.Model.SMT_STAFF_FACEDEV(); model.ADD_TIME = DateTime.Now; model.END_VALID_TIME = dtpEnd.Value.Date + new TimeSpan(23, 59, 59); model.FACEDEV_ID = dev.ID; model.IS_UPLOAD = false; model.STAFF_DEV_ID = Guid.NewGuid().ToString("N"); model.STAFF_ID = staff.ID; model.START_VALID_TIME = dtpStart.Value.Date; model.UPLOAD_TIME = DateTime.Now; sfbll.Add(model); } else { hasPrivates.RemoveAll(m => m.ID == model.STAFF_ID); model.START_VALID_TIME = dtpStart.Value.Date; model.END_VALID_TIME = dtpEnd.Value.Date + new TimeSpan(23, 59, 59); if (string.IsNullOrWhiteSpace(model.STAFF_DEV_ID)) { model.STAFF_DEV_ID = Guid.NewGuid().ToString("N"); } sfbll.Update(model); } model.STAFF_INFO = staff; model.FACERECG_DEVICE = dev; if (!model.IS_UPLOAD) { addmodels.Add(model); } } } foreach (var item in hasPrivates) { foreach (var dev in _selectDevices) { var model = sfbll.GetModel(item.ID, dev.ID); if (model != null) { deletemodels.Add(model); } } } } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "保存异常:" + ex.Message); log.Error("保存异常:", ex); return; } if (deletemodels.Count > 0) { string errMsg = ""; var delre = UploadPrivate.DeleteFace(deletemodels, out errMsg); if (delre != null && delre.Count > 0) { foreach (var item in delre) { sfbll.Delete(item.STAFF_ID, item.FACEDEV_ID); } } } if (isupload) { string errMsg = ""; SmartAccess.Common.Datas.UploadPrivate.CancelObject cancelObject = new UploadPrivate.CancelObject(); bool ret = UploadPrivate.UploadFace(cancelObject, addmodels, updatemodels, out errMsg); if (!ret || !string.IsNullOrWhiteSpace(errMsg)) { WinInfoHelper.ShowInfoWindow(this, "保存成功,部分权限上传异常:" + errMsg); } } this.Invoke(new Action(() => { this.DialogResult = DialogResult.OK; this.Close(); })); }); waiting.Show(this); }
private void biDelete_Click(object sender, EventArgs e) { if (dgvData.SelectedRows.Count > 0) { if (MessageBox.Show("确定删除选择任务?", "提示", MessageBoxButtons.OKCancel) == DialogResult.Cancel) { return; } List <Maticsoft.Model.SMT_CTRLR_TASK> tasks = new List <Maticsoft.Model.SMT_CTRLR_TASK>(); List <DataGridViewRow> rows = new List <DataGridViewRow>(); foreach (DataGridViewRow item in dgvData.SelectedRows) { tasks.Add((Maticsoft.Model.SMT_CTRLR_TASK)item.Tag); rows.Add(item); } List <Maticsoft.Model.SMT_CTRLR_TASK> alltasks = new List <Maticsoft.Model.SMT_CTRLR_TASK>(); foreach (DataGridViewRow item in dgvData.Rows) { if (tasks.Contains((Maticsoft.Model.SMT_CTRLR_TASK)item.Tag)) { continue; } alltasks.Add((Maticsoft.Model.SMT_CTRLR_TASK)item.Tag); } CtrlWaiting waiting = new CtrlWaiting(() => { try { try { UploadPrivate.DeleteTimeTasks(tasks); if (alltasks.Count > 0) { UploadPrivate.UploadTimeTasks(alltasks); } } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "删除控制器定时任务发生异常:" + ex.Message); log.Error("上传定时任务发生异常:", ex); return; } Maticsoft.BLL.SMT_CTRLR_TASK taskBll = new Maticsoft.BLL.SMT_CTRLR_TASK(); string ids = ""; foreach (var item in tasks) { ids += item.ID + ","; } ids = ids.TrimEnd(','); taskBll.DeleteList(ids); this.Invoke(new Action(() => { foreach (var item in rows) { dgvData.Rows.Remove(item); } })); } catch (Exception ex) { log.Error("删除任务异常:", ex); WinInfoHelper.ShowInfoWindow(this, "删除任务异常!" + ex.Message); } }); waiting.Show(this); } }
private void DoSaveDoors(List <Maticsoft.Model.SMT_DOOR_INFO> doors, bool upload = false) { if (dtpStart.Value.Date > dtpEnd.Value.Date) { WinInfoHelper.ShowInfoWindow(this, "起始时间不能小于结束时间!"); return; } int timenum = 0; ComboBoxItem cbi = (ComboBoxItem)cbTimeNum.SelectedItem; if (cbi.Tag is Maticsoft.Model.SMT_TIMESCALE_INFO) { Maticsoft.Model.SMT_TIMESCALE_INFO tsInfo = (Maticsoft.Model.SMT_TIMESCALE_INFO)cbi.Tag; timenum = tsInfo.TIME_NO; } else { timenum = 1; } CtrlWaiting ctrlWaiting = new CtrlWaiting("正在保存...", () => { try { Maticsoft.BLL.SMT_STAFF_DOOR sdBLL = new Maticsoft.BLL.SMT_STAFF_DOOR(); var sdList = sdBLL.GetModelList("STAFF_ID=" + staffInfo.ID); List <Maticsoft.Model.SMT_DOOR_INFO> tempDoors = new List <Maticsoft.Model.SMT_DOOR_INFO>(); tempDoors.AddRange(doors); foreach (var item in sdList) { var sc = doors.Find(m => m.ID == item.DOOR_ID); if (sc == null) //权限删除 { sdBLL.Delete(item.STAFF_ID, item.DOOR_ID); //删除权限 } else { item.TIME_NUM = timenum; item.IS_UPLOAD = false; sdBLL.Update(item); tempDoors.Remove(sc); } } foreach (var item in tempDoors) //添加的权限 { Maticsoft.Model.SMT_STAFF_DOOR newSd = new Maticsoft.Model.SMT_STAFF_DOOR(); newSd.ADD_TIME = DateTime.Now; newSd.DOOR_ID = item.ID; newSd.IS_UPLOAD = false; newSd.UPLOAD_TIME = DateTime.Now; newSd.STAFF_ID = staffInfo.ID; newSd.TIME_NUM = timenum; sdBLL.Add(newSd); } if (staffInfo.VALID_STARTTIME != dtpStart.Value || staffInfo.VALID_ENDTIME != dtpEnd.Value) { Maticsoft.BLL.SMT_STAFF_INFO staffBll = new Maticsoft.BLL.SMT_STAFF_INFO(); staffInfo.VALID_STARTTIME = dtpStart.Value.Date; staffInfo.VALID_ENDTIME = dtpEnd.Value.Date + new TimeSpan(23, 59, 59); staffBll.Update(staffInfo); } if (upload) { string errMsg; bool ret = UploadPrivate.Upload(staffInfo, out errMsg); if (ret && errMsg != "") { WinInfoHelper.ShowInfoWindow(this, "上传权限存在异常:" + errMsg); log.Warn("上传权限存在异常:" + errMsg); return; } else if (!ret) { return; } else { WinInfoHelper.ShowInfoWindow(null, "上传权限结束!"); } } this.Invoke(new Action(() => { this.DialogResult = DialogResult.OK; this.Close(); })); } catch (System.Exception ex) { log.Error("保存异常:", ex); WinInfoHelper.ShowInfoWindow(this, "保存异常:" + ex.Message); } }); ctrlWaiting.Show(this); }
private void DoSave(bool isupload = false) { if (dgvSelected.Rows.Count == 0) { WinInfoHelper.ShowInfoWindow(this, "请至少选一个待复制的人员!"); return; } List <Maticsoft.Model.SMT_STAFF_INFO> staffInfos = new List <Maticsoft.Model.SMT_STAFF_INFO>(); foreach (DataGridViewRow item in dgvSelected.Rows) { staffInfos.Add((Maticsoft.Model.SMT_STAFF_INFO)item.Tag); } CtrlWaiting waiting = new CtrlWaiting(() => { Maticsoft.BLL.SMT_STAFF_DOOR sdbll = new Maticsoft.BLL.SMT_STAFF_DOOR(); try { foreach (var item in staffInfos) { var olddoors = sdbll.GetModelList("STAFF_ID=" + item.ID); var notexist = olddoors.FindAll(m => { return(!_staffDoors.Exists(n => n.DOOR_ID == m.DOOR_ID)); }); foreach (var old in notexist) { sdbll.Delete(old.STAFF_ID, old.DOOR_ID); olddoors.Remove(old); } notexist = _staffDoors.FindAll(m => { return(!olddoors.Exists(n => n.DOOR_ID == m.DOOR_ID)); }); foreach (var newdoor in notexist) { sdbll.Add(new Maticsoft.Model.SMT_STAFF_DOOR() { ADD_TIME = DateTime.Now, IS_UPLOAD = false, STAFF_ID = item.ID, UPLOAD_TIME = DateTime.Now, DOOR_ID = newdoor.DOOR_ID, TIME_NUM = newdoor.TIME_NUM }); } } } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "保存异常:" + ex.Message); log.Error("保存异常:", ex); return; } if (isupload) { string errMsg = ""; bool ret = UploadPrivate.Upload(staffInfos, out errMsg); if (!ret || !string.IsNullOrWhiteSpace(errMsg)) { WinInfoHelper.ShowInfoWindow(this, "保存成功,部分权限上传异常:" + errMsg); } } this.Invoke(new Action(() => { this.Close(); })); }); waiting.Show(this); }
private void DoSave(bool isupload = false) { if (dgvSelected.Rows.Count == 0) { WinInfoHelper.ShowInfoWindow(this, "请至少选一个人员!"); return; } if (cbIsValidValid.Checked && ( (dtValidStart.LockUpdateChecked && dtValidStart.IsEmpty) || (dtValidEnd.LockUpdateChecked && dtValidEnd.IsEmpty) ) ) { WinInfoHelper.ShowInfoWindow(this, "请设置选择有效的开始或结束时间!"); return; } bool isvaliddatechanged = false; if (cbIsValidValid.Checked && ( (dtValidStart.LockUpdateChecked && !dtValidStart.IsEmpty) || (dtValidEnd.LockUpdateChecked && !dtValidEnd.IsEmpty) ) ) { isvaliddatechanged = true; } if (isvaliddatechanged) { if (cbIsValidValid.Checked && dtValidStart.LockUpdateChecked && dtValidEnd.LockUpdateChecked && dtValidStart.Value > dtValidEnd.Value) { WinInfoHelper.ShowInfoWindow(this, "结束时间不能小于开始时间!"); return; } } if (!isvaliddatechanged && !cbisForbidden.Checked) { WinInfoHelper.ShowInfoWindow(this, "请选择要修改的信息!"); return; } List <Maticsoft.Model.SMT_STAFF_INFO> staffInfos = new List <Maticsoft.Model.SMT_STAFF_INFO>(); foreach (DataGridViewRow item in dgvSelected.Rows) { staffInfos.Add((Maticsoft.Model.SMT_STAFF_INFO)item.Tag); } CtrlWaiting waiting = new CtrlWaiting(() => { Maticsoft.BLL.SMT_STAFF_INFO staffBll = new Maticsoft.BLL.SMT_STAFF_INFO(); try { foreach (var item in staffInfos) { if (isvaliddatechanged) { if (dtValidStart.LockUpdateChecked && !dtValidStart.IsEmpty) { item.VALID_STARTTIME = dtValidStart.Value.Date; } if (dtValidEnd.LockUpdateChecked && !dtValidEnd.IsEmpty) { item.VALID_ENDTIME = dtValidEnd.Value.Date + new TimeSpan(23, 59, 59); } } if (cbisForbidden.Checked) { item.IS_FORBIDDEN = !cbNormal.Checked; } staffBll.Update(item); } } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "保存异常:" + ex.Message); log.Error("保存异常:", ex); return; } if (isupload) { string errMsg = ""; bool ret = UploadPrivate.Upload(staffInfos, out errMsg); if (!ret || !string.IsNullOrWhiteSpace(errMsg)) { WinInfoHelper.ShowInfoWindow(this, "保存成功,部分权限上传异常:" + errMsg); } } this.Invoke(new Action(() => { this.Close(); })); }); waiting.Show(this); }
private void DoSave(bool upload) { try { if (!CheckInput()) { return; } Maticsoft.Model.SMT_CONTROLLER_INFO ctrlInfo = new Maticsoft.Model.SMT_CONTROLLER_INFO(); if (_ctrlr != null) { ctrlInfo.MAC = _ctrlr.MAC; ctrlInfo.ID = _ctrlr.ID; ctrlInfo.MASK = _ctrlr.MASK; ctrlInfo.ORG_ID = _ctrlr.ORG_ID; ctrlInfo.ORDER_VALUE = _ctrlr.ORDER_VALUE; ctrlInfo.CTRLR_MODEL = _ctrlr.CTRLR_MODEL; ctrlInfo.DRIVER_DATE = _ctrlr.DRIVER_DATE; ctrlInfo.DRIVER_VERSION = _ctrlr.DRIVER_VERSION; ctrlInfo.GATEWAY = _ctrlr.GATEWAY; } else { ctrlInfo.ID = -1; } ctrlInfo.SN_NO = tbCtrlrSn.Text.Trim(); ctrlInfo.IS_ENABLE = cbCtrlrEnable.Checked; string name = tbCtrlName.Text.Trim(); if (name == "") { name = ctrlInfo.SN_NO; } ctrlInfo.NAME = name; ctrlInfo.IP = ipCtrlr.Value; ctrlInfo.PORT = iiPort.Value; ctrlInfo.CTRLR_DESC = tbDesc.Text.Trim(); ctrlInfo.CTRLR_TYPE = (int)_lastType; ctrlInfo.AREA_ID = -1; if (cboTreeArea.SelectedNode != null && cboTreeArea.SelectedNode.Tag is Maticsoft.Model.SMT_CONTROLLER_ZONE) { var area = cboTreeArea.SelectedNode.Tag as Maticsoft.Model.SMT_CONTROLLER_ZONE; ctrlInfo.AREA_ID = area.ID; ctrlInfo.AREA_NAME = area.ZONE_NAME; } List <DoorNameAttriData> doorNameDatas = doorNameAttriGroup.GetDatas(); List <DoorReaderAttriData> doorReaderDatas = doorReaderAttriGroup.GetDatas(); List <Maticsoft.Model.SMT_DOOR_INFO> doors = new List <Maticsoft.Model.SMT_DOOR_INFO>(); foreach (var item in doorNameDatas) { Maticsoft.Model.SMT_DOOR_INFO door = new Maticsoft.Model.SMT_DOOR_INFO(); door.CTRL_ID = ctrlInfo.ID; door.CTRL_DELAY_TIME = item.doorSecond; door.CTRL_DOOR_INDEX = item.doorNo; door.CTRL_STYLE = item.doorCtrlType; door.IS_ALLOW_VISITOR = item.visitor; if (_ctrlr != null) { var old = _ctrlr.DOOR_INFOS.Find(m => m.CTRL_DOOR_INDEX == item.doorNo); if (old != null) { door.ID = old.ID; door.DOOR_DESC = old.DOOR_DESC; } } else { door.ID = -1; door.DOOR_DESC = ""; } door.DOOR_NAME = item.doorName; DoorReaderAttriData reader1 = doorReaderDatas.Find(m => m.doorNo == item.doorNo && m.isEnter1); DoorReaderAttriData reader2 = doorReaderDatas.Find(m => m.doorNo == item.doorNo && !m.isEnter1); door.IS_ATTENDANCE1 = reader1 == null ? false : reader1.isAttend; door.IS_ATTENDANCE2 = reader2 == null ? false : reader2.isAttend; door.IS_ENABLE = item.doorEnable; door.IS_ENTER1 = reader1 == null ? false : reader1.isEnter; door.IS_ENTER2 = reader2 == null ? false : reader2.isEnter; doors.Add(door); } CtrlWaiting ctrlWaiting = new CtrlWaiting(() => { try { Maticsoft.BLL.SMT_CONTROLLER_INFO ctrlBll = new Maticsoft.BLL.SMT_CONTROLLER_INFO(); var exists = ctrlBll.GetModelList("SN_NO='" + ctrlInfo.SN_NO + "'"); if (ctrlInfo.ID != -1) { if (exists.Count > 0) { if (exists[0].ID != ctrlInfo.ID) { WinInfoHelper.ShowInfoWindow(this, "已存在控制器序列号:" + ctrlInfo.SN_NO); return; } } ctrlBll.Update(ctrlInfo); ctrlInfo.DOOR_INFOS = _ctrlr.DOOR_INFOS; _ctrlr = ctrlInfo; } else { if (exists.Count > 0) { WinInfoHelper.ShowInfoWindow(this, "已存在控制器序列号:" + ctrlInfo.SN_NO); return; } ctrlInfo.ID = ctrlBll.Add(ctrlInfo); _ctrlr = ctrlInfo; } if (_lastType != ControllerDoorType.Elevator)//非电梯控制器 { Maticsoft.BLL.SMT_DOOR_INFO doorBll = new Maticsoft.BLL.SMT_DOOR_INFO(); foreach (var item in doors) { var edoors = doorBll.GetModelList("CTRL_ID=" + ctrlInfo.ID + " and " + " CTRL_DOOR_INDEX=" + item.CTRL_DOOR_INDEX); if (edoors.Count > 0) { item.ID = edoors[0].ID; doorBll.Update(item); } else { item.CTRL_ID = ctrlInfo.ID; item.ID = doorBll.Add(item); } } _ctrlr.DOOR_INFOS = doors; if (upload) { string errMsg = null; if (UploadPrivate.UploadByCtrlr(_ctrlr, out errMsg, doors, true)) { if (errMsg != "") { WinInfoHelper.ShowInfoWindow(this, "设置控制器" + (_ctrlr.IS_ENABLE ? "启用" : "禁用") + "异常:" + errMsg); return; } } else { WinInfoHelper.ShowInfoWindow(this, "设置控制器" + (_ctrlr.IS_ENABLE ? "启用" : "禁用") + "异常:" + errMsg); return; } Controller c = ControllerHelper.ToController(_ctrlr); //设置门控制方式 foreach (var item in doors) { using (IAccessCore access = new WGAccess()) { bool ret = access.SetDoorControlStyle(c, (int)item.CTRL_DOOR_INDEX, (DoorControlStyle)item.CTRL_STYLE, item.CTRL_DELAY_TIME); if (!ret) { WinInfoHelper.ShowInfoWindow(this, "上传门控制方式失败!"); return; } } } } } this.Invoke(new Action(() => { this.DialogResult = DialogResult.OK; this.Close(); })); } catch (Exception ex) { log.Error("保存异常:" + ex.Message, ex); WinInfoHelper.ShowInfoWindow(this, "保存异常:" + ex.Message); } }); ctrlWaiting.Show(this); } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "保存异常:" + ex.Message); log.Error("保存异常:" + ex.Message, ex); } }
private void DoApply(bool upload = false, bool isclose = false) { List <Maticsoft.Model.SMT_ALARM_SETTING> settings = new List <Maticsoft.Model.SMT_ALARM_SETTING>(); foreach (DataGridViewRow item in dgvData.Rows) { Maticsoft.Model.SMT_ALARM_SETTING alarmSetting = (Maticsoft.Model.SMT_ALARM_SETTING)item.Tag; alarmSetting.CTRL_FORCE_PWD = tbForcePwd.Text.Trim(); alarmSetting.ENABLE_FORCE_PWD = (bool)selectRow.Cells[2].Value; alarmSetting.ENABLE_CLOSED_TIMEOUT = (bool)selectRow.Cells[3].Value; alarmSetting.ENABLE_FORCE_ACCESS = (bool)selectRow.Cells[4].Value; alarmSetting.ENABLE_FORCE_CLOSE = (bool)selectRow.Cells[5].Value; alarmSetting.ENABLE_INVALID_CARD = (bool)selectRow.Cells[6].Value; alarmSetting.ENABLE_FIRE = (bool)selectRow.Cells[7].Value; alarmSetting.ENABLE_STEAL = (bool)selectRow.Cells[8].Value; alarmSetting.ENABLE_FORCE_CARD = (bool)selectRow.Cells[9].Value; if (iUnClosedTimeOut.ValueObject == null) { alarmSetting.NOT_CLOSED_TIMEOUT = 25; } else { alarmSetting.NOT_CLOSED_TIMEOUT = iUnClosedTimeOut.Value; } settings.Add(alarmSetting); } Maticsoft.Model.SMT_ALARM_SETTING selectSetting = null; if (selectRow != null) { selectSetting = (Maticsoft.Model.SMT_ALARM_SETTING)selectRow.Tag; } List <Maticsoft.Model.SMT_ALARM_CONNECT> conns = new List <Maticsoft.Model.SMT_ALARM_CONNECT>(); if (selectSetting != null) { for (int i = 0; i < ports.Count; i++) { Maticsoft.Model.SMT_ALARM_CONNECT conn = ports[i].AlarmConnect; if (conn != null) { conn.OUT_PORT = i + 1; conn.CTRL_ID = selectSetting.CTRL_ID; conns.Add(conn); } } } CtrlWaiting waiting = new CtrlWaiting(() => { try { Maticsoft.BLL.SMT_ALARM_SETTING settingBll = new Maticsoft.BLL.SMT_ALARM_SETTING(); foreach (var item in settings) { settingBll.Update(item); } if (selectSetting != null) { Maticsoft.DBUtility.DbHelperSQL.ExecuteSql("delete from SMT_ALARM_CONNECT where CTRL_ID=" + selectSetting.CTRL_ID); Maticsoft.BLL.SMT_ALARM_CONNECT connBll = new Maticsoft.BLL.SMT_ALARM_CONNECT(); foreach (var item in conns) { item.ID = connBll.Add(item); } } if (upload) { //上传 UploadPrivate.UploadAlarmSetting(settings); } WinInfoHelper.ShowInfoWindow(this, "保存成功!"); if (isclose) { this.BeginInvoke(new Action(() => { this.Close(); })); } } catch (Exception ex) { WinInfoHelper.ShowInfoWindow(this, "保存报警设置异常!" + ex.Message); log.Error("保存报警设置异常:", ex); } }); waiting.Show(this); }
private void DoSaveDevices(List <Maticsoft.Model.SMT_FACERECG_DEVICE> devices, bool upload = false) { if (dtpStart.Value.Date > dtpEnd.Value.Date) { WinInfoHelper.ShowInfoWindow(this, "起始时间不能小于结束时间!"); return; } CtrlWaiting ctrlWaiting = new CtrlWaiting("正在保存...", () => { try { Maticsoft.BLL.SMT_STAFF_FACEDEV sfBLL = new Maticsoft.BLL.SMT_STAFF_FACEDEV(); var sfList = sfBLL.GetModelList("STAFF_ID=" + _staffInfo.ID); List <Maticsoft.Model.SMT_FACERECG_DEVICE> tempDevs = new List <Maticsoft.Model.SMT_FACERECG_DEVICE>(); tempDevs.AddRange(devices); List <Maticsoft.Model.SMT_STAFF_FACEDEV> addPrivates = new List <Maticsoft.Model.SMT_STAFF_FACEDEV>(); List <Maticsoft.Model.SMT_STAFF_FACEDEV> updatePrivates = new List <Maticsoft.Model.SMT_STAFF_FACEDEV>(); List <Maticsoft.Model.SMT_STAFF_FACEDEV> delPrivates = new List <Maticsoft.Model.SMT_STAFF_FACEDEV>(); foreach (var item in sfList) { var sc = devices.Find(m => m.ID == item.FACEDEV_ID); if (sc == null)//不存在,则权限删除 { delPrivates.Add(item); // sfBLL.Delete(item.STAFF_ID, item.FACEDEV_ID);//删除权限 } else { item.START_VALID_TIME = dtpStart.Value.Date; item.END_VALID_TIME = dtpEnd.Value.Date + new TimeSpan(23, 59, 59); if (_staffInfo.VALID_STARTTIME.Date > item.START_VALID_TIME.Date) { item.START_VALID_TIME = _staffInfo.VALID_STARTTIME.Date; } if (_staffInfo.VALID_ENDTIME.Date < item.END_VALID_TIME.Date) { item.END_VALID_TIME = _staffInfo.VALID_ENDTIME.Date + new TimeSpan(23, 59, 59); } sfBLL.Update(item); tempDevs.Remove(sc); if (!item.IS_UPLOAD) { addPrivates.Add(item); } else { if (_imageChanged) { addPrivates.Add(item); } else { updatePrivates.Add(item); } } } } foreach (var item in tempDevs)//添加的权限 { Maticsoft.Model.SMT_STAFF_FACEDEV newSd = new Maticsoft.Model.SMT_STAFF_FACEDEV(); newSd.ADD_TIME = DateTime.Now; newSd.FACEDEV_ID = item.ID; newSd.IS_UPLOAD = false; newSd.UPLOAD_TIME = DateTime.Now; newSd.STAFF_ID = _staffInfo.ID; newSd.STAFF_DEV_ID = Guid.NewGuid().ToString("N"); newSd.START_VALID_TIME = dtpStart.Value.Date; newSd.END_VALID_TIME = dtpEnd.Value.Date + new TimeSpan(23, 59, 59); if (_staffInfo.VALID_STARTTIME.Date > newSd.START_VALID_TIME.Date) { newSd.START_VALID_TIME = _staffInfo.VALID_STARTTIME.Date; } if (_staffInfo.VALID_ENDTIME.Date < newSd.END_VALID_TIME.Date) { newSd.END_VALID_TIME = _staffInfo.VALID_ENDTIME.Date + new TimeSpan(23, 59, 59); } sfBLL.Add(newSd); addPrivates.Add(newSd); } if (upload) { string errMsg; if (delPrivates.Count > 0) { var delResults = UploadPrivate.DeleteFace(delPrivates, out errMsg); if (delResults != null && delResults.Count > 0) { foreach (var item in delResults) { Maticsoft.BLL.SMT_STAFF_FACEDEV bll = new Maticsoft.BLL.SMT_STAFF_FACEDEV(); bll.Delete(item.STAFF_ID, item.FACEDEV_ID); } } } errMsg = ""; if (addPrivates.Count > 0 || updatePrivates.Count > 0) { SmartAccess.Common.Datas.UploadPrivate.CancelObject cancelObject = new UploadPrivate.CancelObject(); bool ret = UploadPrivate.UploadFace(cancelObject, addPrivates, updatePrivates, out errMsg); if (ret && errMsg != "") { WinInfoHelper.ShowInfoWindow(this, "上传权限存在异常:" + errMsg); log.Warn("上传权限存在异常:" + errMsg); return; } } WinInfoHelper.ShowInfoWindow(null, "上传权限结束!"); } this.Invoke(new Action(() => { this.DialogResult = DialogResult.OK; this.Close(); })); } catch (System.Exception ex) { log.Error("保存异常:", ex); WinInfoHelper.ShowInfoWindow(this, "保存异常:" + ex.Message); } }); ctrlWaiting.Show(this); }