Ejemplo n.º 1
0
        private void UpdateAuth(string cardPkId, IList <Device> devices)
        {
            var repo       = new BaseRepo <CardAuth>(dbCtx);
            var existsList = repo.Find(t => t.Card == cardPkId);

            foreach (var e in existsList)
            {
                repo.Delete(e);
            }

            if (devices != null && devices.Count > 0)
            {
                var updateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                foreach (var dev in devices)
                {
                    var entity = new CardAuth()
                    {
                        Card       = cardPkId,
                        Device     = dev.PkId,
                        UpdateTime = updateTime
                    };
                    entity.NewId();
                    repo.Add(entity);
                }
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Class Constructor
 /// </summary>
 public BitchUpdateEndTimeForm(EnmWorkerType WorkerType, List <CardInfo> Cards)
 {
     InitializeComponent();
     CardAuthEntity = new CardAuth();
     CurWorkerType  = WorkerType;
     CurCards       = Cards;
     Devices        = Common.CurUser.Role.Devices;
     TotalRecords   = new List <ValuesPair <DeviceInfo, CardAuthInfo, CardInfo, String, String> >();
     Text           = WorkerType == EnmWorkerType.WXRY ? String.Format("{0} - [外协人员]", Text) : String.Format("{0} - [正式员工]", Text);
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Class Constructor
 /// </summary>
 public BatchCancelCardAuthForm(EnmWorkerType WorkerType, List <CardInfo> Cards, List <NodeLevelInfo> Nodes, List <DepartmentInfo> Departments, List <OrgEmployeeInfo> OrgEmployees, List <OutEmployeeInfo> OutEmployees)
 {
     InitializeComponent();
     CardAuthEntity  = new CardAuth();
     CurWorkerType   = WorkerType;
     CurCards        = Cards;
     CurNodes        = Nodes;
     CurDepartments  = Departments;
     CurOrgEmployees = OrgEmployees;
     CurOutEmployees = OutEmployees;
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Class Constructor
 /// </summary>
 public CopyAuthForm()
 {
     InitializeComponent();
     CardAuthEntity = new CardAuth();
     OrgCards       = new List <CardInfo>();
     OutCards       = new List <CardInfo>();
     Nodes          = new List <NodeLevelInfo>();
     Departments    = new List <DepartmentInfo>();
     OrgEmployees   = new List <OrgEmployeeInfo>();
     OutEmployees   = new List <OutEmployeeInfo>();
 }
Ejemplo n.º 5
0
 /// <summary>
 /// Class Constructor
 /// </summary>
 public SaveCardAuthForm(EnmSaveBehavior Behavior, CardInfo Card, CardAuthInfo CardAuth, List <CardInfo> Cards, List <DepartmentInfo> Departments, List <OrgEmployeeInfo> OrgEmployees, List <OutEmployeeInfo> OutEmployees)
 {
     InitializeComponent();
     CardAuthEntity = new CardAuth();
     CurBehavior    = Behavior;
     CurCardAuth    = new CardAuthInfo();
     OriCardAuth    = CardAuth;
     CurCard        = Card;
     Common.CopyObjectValues(OriCardAuth, CurCardAuth);
     CurCards        = Cards;
     CurDepartments  = Departments;
     CurOrgEmployees = OrgEmployees;
     CurOutEmployees = OutEmployees;
     CurExistsCards  = new Dictionary <String, Int32>();
     Text            = Behavior == EnmSaveBehavior.Add ? "新增授权信息" : "编辑授权信息";
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Class Constructor
 /// </summary>
 public SaveCardDevAuthForm(EnmSaveBehavior Behavior, List <CardAuthInfo> CardAuth, List <NodeLevelInfo> Nodes)
 {
     InitializeComponent();
     CardAuthEntity = new CardAuth();
     CurBehavior    = Behavior;
     OriCardAuth    = CardAuth;
     CurCardAuth    = new List <CardAuthInfo>();
     CurNodes       = Nodes;
     foreach (var oc in OriCardAuth)
     {
         var newCardAuth = new CardAuthInfo();
         Common.CopyObjectValues(oc, newCardAuth);
         CurCardAuth.Add(newCardAuth);
     }
     Text           = Behavior == EnmSaveBehavior.Add ? "新增授权信息" : "编辑授权信息";
     CurExistsNodes = new Dictionary <Int32, String>();
 }
Ejemplo n.º 7
0
        /// <summary>
        /// Bind Auth To GridView.
        /// </summary>
        private void BindAuthToGridView()
        {
            TotalRecords.Clear();
            AuthGridView.Rows.Clear();
            if (!String.IsNullOrWhiteSpace(SearchTB.Text))
            {
                var auths = new CardAuth().GetCardAuthByCondition(Convert.ToInt32(SearchTypeCB.SelectedValue), CurWorkerType, SearchTB.Text.Trim());
                TotalRecords.AddRange(
                    from a in auths
                    join d in Devices.Values on a.DevId equals d.DevID
                    join c in CurCards on a.CardSn equals c.CardSn
                    orderby c.WorkerId
                    select new ValuesPair <DeviceInfo, CardAuthInfo, CardInfo, String, String> {
                    Value1 = d,
                    Value2 = a,
                    Value3 = c
                }
                    );
            }

            AuthGridView.RowCount = TotalRecords.Count;
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Form Load Event.
        /// </summary>
        private void CardAuthDetailDialog_Load(object sender, EventArgs e)
        {
            try {
                if (CurDevice != null)
                {
                    var auths = new CardAuth().GetDevCardAuth(CurDevice.DevID);
                    var cards = new Card().GetOrgCards(ComUtility.SuperRoleID);
                    cards.AddRange(new Card().GetOutCards(ComUtility.SuperRoleID));

                    if (auths != null && auths.Count > 0)
                    {
                        CurRecords = (from auth in auths
                                      join card in cards on auth.CardSn equals card.CardSn into tp
                                      from tc in tp.DefaultIfEmpty()
                                      orderby(tc != null ? tc.WorkerId : String.Empty), auth.CardSn
                                      select new IDValuePair <CardInfo, CardAuthInfo>(tc, auth)).ToList();
                    }
                    AuthGridView.RowCount = CurRecords.Count;
                }
            } catch (Exception err) {
                Common.WriteLog(DateTime.Now, EnmMsgType.Error, "System", "Delta.MPS.AccessSystem.CardAuthDetailDialog.Load", err.Message, err.StackTrace);
                MessageBox.Show(err.Message, "系统错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 9
0
        /// <summary>
        /// Query Button Click Event.
        /// </summary>
        private void QueryBtn_Click(object sender, EventArgs e)
        {
            try {
                CurRecords.Clear();
                EmpGridView.Rows.Clear();

                var departments = new List <String>();
                foreach (IDValuePair <String, String> dt in DeptLB.Items)
                {
                    departments.Add(dt.ID);
                }

                var cardType   = (Int32)CardTypeCB.SelectedValue;
                var queryIndex = (Int32)QueryTypeCB.SelectedValue;
                var queryText  = QueryTypeTB.Text;

                var result = Common.ShowWait(() => {
                    var employees = new Employee().GetOrgEmployees(Common.CurUser.Role.RoleID);
                    var cardAuths = new CardAuth().GetCardAuthCount();
                    var cards     = from c in Common.CurUser.Role.Cards
                                    join ca in cardAuths on c.CardSn equals ca.ID into tp
                                    from ta in tp.DefaultIfEmpty()
                                    where c.WorkerType != EnmWorkerType.WXRY
                                    select new {
                        Card = c,
                        Auth = ta
                    };

                    CurRecords = (from emp in employees
                                  join dep in departments on emp.DepId equals dep
                                  join c in cards on emp.EmpId equals c.Card.WorkerId into tp
                                  from tc in tp.DefaultIfEmpty()
                                  where cardType == 0 || (cardType == 1 && tc != null) || (cardType == 2 && tc == null)
                                  orderby emp.EmpId
                                  select new ValuesPair <OrgEmployeeInfo, CardInfo, Int32, object, object> {
                        Value1 = emp,
                        Value2 = tc != null ? tc.Card : null,
                        Value3 = tc != null && tc.Auth != null ? tc.Auth.Value : 0,
                        Value4 = null,
                        Value5 = null
                    }).ToList();

                    if (!String.IsNullOrWhiteSpace(queryText))
                    {
                        var filters = queryText.Split(new String[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
                        switch (queryIndex)
                        {
                        case 0:
                            CurRecords = CurRecords.FindAll(rec => {
                                foreach (var f in filters)
                                {
                                    if (rec.Value1.EmpId.Contains(f.Trim()))
                                    {
                                        return(true);
                                    }
                                }
                                return(false);
                            });
                            break;

                        case 1:
                            CurRecords = CurRecords.FindAll(rec => {
                                foreach (var f in filters)
                                {
                                    if (rec.Value1.EmpName.Equals(f.Trim(), StringComparison.CurrentCultureIgnoreCase))
                                    {
                                        return(true);
                                    }
                                }
                                return(false);
                            });
                            break;

                        case 2:
                            CurRecords = CurRecords.FindAll(rec => {
                                if (rec.Value2 == null)
                                {
                                    return(false);
                                }
                                foreach (var f in filters)
                                {
                                    if (rec.Value2.CardSn.Contains(f.Trim()))
                                    {
                                        return(true);
                                    }
                                }
                                return(false);
                            });
                            break;

                        default:
                            break;
                        }
                    }
                }, default(string), "正在查询,请稍后...", default(int), default(int));

                if (result == DialogResult.OK)
                {
                    EmpGridView.RowCount = CurRecords.Count;
                }
            } catch (Exception err) {
                Common.WriteLog(DateTime.Now, EnmMsgType.Error, "System", "Delta.MPS.AccessSystem.OrgEmployeeReportForm.DeptBtn.Click", err.Message, err.StackTrace);
                MessageBox.Show(err.Message, "系统错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 10
0
        /// <summary>
        /// Query Button Click Event.
        /// </summary>
        private void QueryBtn_Click(object sender, EventArgs e)
        {
            try {
                CurDevices.Clear();
                DevGridView.Rows.Clear();

                var area2Index = Area2NameCB.SelectedIndex;
                var area2Text  = Area2NameCB.Text.ToLower().Trim();
                var area2Value = Area2NameCB.SelectedValue != null ? (Int32)Area2NameCB.SelectedValue : -1;

                var area3Index = Area3NameCB.SelectedIndex;
                var area3Text  = Area3NameCB.Text.ToLower().Trim();
                var area3Value = Area3NameCB.SelectedValue != null ? (Int32)Area3NameCB.SelectedValue : -1;

                var staIndex = StaNameCB.SelectedIndex;
                var staText  = StaNameCB.Text.ToLower().Trim();
                var staValue = StaNameCB.SelectedValue != null ? (Int32)StaNameCB.SelectedValue : -1;

                var devIndex = DevNameCB.SelectedIndex;
                var devText  = DevNameCB.Text.ToLower().Trim();
                var devValue = DevNameCB.SelectedValue != null ? (Int32)DevNameCB.SelectedValue : -1;

                var result = Common.ShowWait(() => {
                    var devices = Common.CurUser.Role.Devices.Values.ToList();
                    if (area2Index == -1)
                    {
                        devices = devices.FindAll(rec => rec.Area2Name.ToLower().Contains(area2Text));
                    }

                    if (area2Index > 0)
                    {
                        devices = devices.FindAll(rec => rec.Area2ID == area2Value);
                    }

                    if (area3Index == -1)
                    {
                        devices = devices.FindAll(rec => rec.Area3Name.ToLower().Contains(area3Text));
                    }

                    if (area3Index > 0)
                    {
                        devices = devices.FindAll(rec => rec.Area3ID == area3Value);
                    }

                    if (staIndex == -1)
                    {
                        devices = devices.FindAll(rec => rec.StaName.ToLower().Contains(staText));
                    }

                    if (staIndex > 0)
                    {
                        devices = devices.FindAll(rec => rec.StaID == staValue);
                    }

                    if (devIndex == -1)
                    {
                        devices = devices.FindAll(rec => rec.DevName.ToLower().Contains(devText));
                    }

                    if (devIndex > 0)
                    {
                        devices = devices.FindAll(rec => rec.DevID == devValue);
                    }

                    if (devices.Count > 0)
                    {
                        var counts = new CardAuth().GetDevAuthCount();
                        CurDevices = (from dev in devices
                                      join cnt in counts on dev.DevID equals cnt.ID into tp
                                      from tc in tp.DefaultIfEmpty()
                                      select new IDValuePair <DeviceInfo, Int32>(dev, tc == null ? 0 : tc.Value)).ToList();
                    }
                }, default(string), "正在查询,请稍后...", default(int), default(int));

                if (result == DialogResult.OK)
                {
                    DevGridView.RowCount = CurDevices.Count;
                }
            } catch (Exception err) {
                Common.WriteLog(DateTime.Now, EnmMsgType.Error, "System", "Delta.MPS.AccessSystem.DeviceForm.QueryBtn.Click", err.Message, err.StackTrace);
                MessageBox.Show(err.Message, "系统错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }