public List <UserLogRecord> GetUserLog(DateTime _startDate, DateTime _endDate, string _userName, string _context) { List <UserLogRecord> _ret = new List <UserLogRecord>(); string _sql = SQL_GetUserLog; if (_userName.Trim().Length > 0) { _sql += string.Format(" and yhid in (select yhid from qx2_yhxx t where yhm = '{0}' or xm = '{1}') ", _userName, _userName); } if (_context.Trim().Length > 0) { _sql += " and (CZXXNR like '%" + _context + "%' ) "; } _sql += " order by CZSJ DESC "; OracleParameter[] _param = { new OracleParameter(":KSRQ", OracleDbType.Date), new OracleParameter(":JSRQ", OracleDbType.Date) }; _param[0].Value = _startDate; _param[1].Value = _endDate; OracleDataReader dr = OracleHelper.ExecuteReader(OracleHelper.ConnectionStringProfile, CommandType.Text, _sql, _param); while (dr.Read()) { UserLogRecord _mitem = new UserLogRecord( dr.IsDBNull(0) ? "" : dr.GetString(0), dr.IsDBNull(1) ? "" : dr.GetDecimal(1).ToString(), dr.IsDBNull(9) ? "" : dr.GetString(9), dr.IsDBNull(3) ? "" : dr.GetString(3), dr.IsDBNull(4) ? "" : dr.GetString(4), dr.IsDBNull(5) ? "" : dr.GetString(5), dr.IsDBNull(6) ? "" : dr.GetString(6), dr.IsDBNull(2) ? DateTime.MinValue : dr.GetDateTime(2), dr.IsDBNull(7) ? 0 : Convert.ToInt32(dr.GetDecimal(7)), dr.IsDBNull(8) ? "" : dr.GetString(8) ); _ret.Add(_mitem); } dr.Close(); return(_ret); }
public MonorailMailer EnableChanged(IEnablable item, string comment = null) { Template = "EnableChanged"; To = Config != null ? Config.RegisterListEmail : "*****@*****.**"; From = "*****@*****.**"; var lastDisable = "неизвестно"; var reasonDisable = "неизвестно"; var type = ""; var clazz = NHibernateUtil.GetClass(item); if (clazz == typeof(User)) { type = "пользователя"; var user = (User)item; PropertyBag["service"] = user.RootService; var disable = UserLogRecord.LastOff(user.Id); if (disable != null) { lastDisable = String.Format("{0} пользователем {1}", disable.LogTime, disable.OperatorName); if (!item.Enabled) { disable.Comment = comment; disable.Save(); } reasonDisable = disable.Comment; } } if (clazz == typeof(Address)) { type = "адреса"; var address = (Address)item; PropertyBag["service"] = address.Client; var disable = ArHelper.WithSession(session => AddressLogRecord.LastOff(session, address.Id)); if (disable != null) { lastDisable = String.Format("{0} пользователем {1}", disable.LogTime, disable.OperatorName); if (!item.Enabled) { disable.Comment = comment; ActiveRecordMediator.Save(disable); } reasonDisable = disable.Comment; } } if (clazz == typeof(Client)) { type = "клиента"; var client = ActiveRecordMediator <Client> .FindByPrimaryKey(((Service)item).Id); PropertyBag["service"] = client; var disable = ClientLogRecord.LastOff(client); if (disable != null) { lastDisable = String.Format("{0} пользователем {1}", disable.LogTime, disable.OperatorName); if (!item.Enabled) { disable.Comment = comment; disable.Save(); } reasonDisable = disable.Comment; } } if (clazz == typeof(Supplier)) { type = "поставщика"; PropertyBag["service"] = item; var disable = DbSession.Query <SupplierLog>().Where(s => s.Supplier == (Supplier)item && s.Disabled != null && s.Disabled == true).OrderByDescending(s => s.LogTime).FirstOrDefault(); if (disable != null) { lastDisable = String.Format("{0} пользователем {1}", disable.LogTime, disable.OperatorName); if (!item.Enabled) { disable.Comment = comment; DbSession.Save(disable); } reasonDisable = disable.Comment; } } if (item.Enabled) { Subject = String.Format("Возобновлена работа {0}", type); } else { Subject = String.Format("Приостановлена работа {0}", type); } if (!string.IsNullOrEmpty(lastDisable)) { PropertyBag["lastDisable"] = lastDisable; } PropertyBag["item"] = item; PropertyBag["admin"] = SecurityContext.Administrator; if (!string.IsNullOrEmpty(reasonDisable)) { PropertyBag["reasonDisable"] = reasonDisable; } return(this); }