public List <SYNCOperation> GetList(TableObject table) { string CacheEnable = ConfigurationManager.AppSettings["CacheEnable"]; string key = CacheUtility.GetKey(table); object obj = CacheUtility.Get(key); if (obj != null) { return((List <SYNCOperation>)obj); } string sqlStr = "select * from SYNCOperation where LastModified>@LastModified"; List <SqlParameter> pms = new List <SqlParameter>(); pms.Add(new SqlParameter("LastModified", table.LastModified)); List <SYNCOperation> list = SYNCOperationBLL.Search(sqlStr, pms.ToArray()); if (list.Count > 0) { byte[] b = new byte[8]; if (CacheUtility.GetCollectionKey(table.LastModified) == CacheUtility.GetCollectionKey(b)) { CacheUtility.Insert(key, list); } else { if (CacheEnable == "true") { CacheUtility.Insert(key, list); } } } return(list); }
public ActionResult Upadate(long AssignID) { PadSYNC.Model.AssignCourse ac = PadSYNC.BLL.AssignCourseBLL.GetById(AssignID); try { ac.Gid = Guid.NewGuid(); //新增必须为0,不为0会更改原纪录 ac.AssignID = 0; //排课状态为排定 ac.AsignStatus = 1; //5表示来源是Pad ac.CourseSourceType = 5; //异常类型 ac.AbnormalReasonType = 0; string json = JsonConvert.SerializeObject(ac); SYNCOperation op = new SYNCOperation(); op.Id = ac.AssignID; op.Gid = ac.Gid; op.Name = "AssignCourse"; op.Status = 0; SYNCOperationBLL.Insert(op); Send.Push(json); string result = "Success"; return(Content(result, "application/json")); } catch (Exception ex) { return(Content(ex.Message, "application/json")); } //return View(); }
public void UpdateTable(string tableName, string data) { List <SYNCOperation> list = JsonConvert.DeserializeObject <List <SYNCOperation> >(data); foreach (SYNCOperation item in list) { SYNCOperationBLL.Save(item); } ; //Common.UpdateTableVersion("CloudCourse.dbo.SYNCOperation"); }
public ActionResult UpdateCourseInOne(string data) { string result = "Failed"; try { List <PadSYNC.Model.AssignCourse> list = JsonConvert.DeserializeObject <List <PadSYNC.Model.AssignCourse> >(data); //测试消息队列用 // List<PadSYNC.Model.AssignCourse> list = AssignCourseBLL.Search(@"select top 5 starttime,endtime,* from [CloudCourse].[dbo].[AssignCourse] // where SchoolID=18 and studentuserid=1303839 // order by assignid desc"); if (list != null) { foreach (PadSYNC.Model.AssignCourse ac in list) { //ac.Gid = Guid.NewGuid(); //新增必须为0,不为0会更改原纪录 //ac.AssignID = 0; //排课状态为排定 //ac.AsignStatus = 1; //5表示来源是Pad //ac.CourseSourceType = 5; //异常类型 //ac.AbnormalReasonType = 0; string json = JsonConvert.SerializeObject(ac); SYNCOperation op = new SYNCOperation(); op.Id = ac.AssignID; op.Gid = ac.Gid; op.Name = "AssignCourse"; op.Status = 0; SYNCOperationBLL.Insert(op); Send.Push(json); result = "Success"; } } } catch (Exception ex) { result = ex.Message; } return(Content(result)); }
static void Main(string[] args) { //test //Test(); //return; //GetAC(); //return; //test over string hostName = ConfigurationManager.AppSettings["RabbitMQHostName"]; string userName = ConfigurationManager.AppSettings["RabbitMQUserName"]; string password = ConfigurationManager.AppSettings["RabbitMQPassword"]; var factory = new ConnectionFactory() { HostName = hostName, UserName = userName, Password = password }; factory.AutomaticRecoveryEnabled = true; using (var connection = factory.CreateConnection()) { using (var channel = connection.CreateModel()) { channel.QueueDeclare("AssignCourseSYNC", true, false, false, null); var consumer = new QueueingBasicConsumer(channel); channel.BasicConsume("AssignCourseSYNC", false, consumer); Console.WriteLine(" [*] Waiting for messages." + "To exit press CTRL+C"); while (true) { var ea = (BasicDeliverEventArgs)consumer.Queue.Dequeue(); Console.WriteLine("获得消息*---*" + ea.DeliveryTag); var body = ea.Body; var message = Encoding.UTF8.GetString(body); PadSYNC.Model.AssignCourse ac = null; SYNCOperation op = null; //清除消息队列用 //channel.BasicAck(ea.DeliveryTag, false); //continue; try { #region 处理消息 ac = JsonConvert.DeserializeObject <PadSYNC.Model.AssignCourse>(message); //ac.Gid = new Guid("D67C7F51-29A1-4CA8-ACDF-08512FB3E8DF"); op = SYNCOperationBLL.GetById(ac.Gid); //op.Id = ac.AssignID; AssignCourseDataContract acdc = Translate.TranslateAssignCourseEntityToGuest(ac); bool b = false; string result = ""; AssignCourseServiceClient client = new AssignCourseServiceClient(); Console.WriteLine("处理消息*---*" + ea.DeliveryTag); if (ac.PadOperType == 0) { b = client.AddNewAssignCourseRetErrowString(out result, acdc); } else { List <CancelReasonConditionsDataContract> CancelReasonConditionsList = new List <CancelReasonConditionsDataContract>(); CancelReasonConditionsDataContract cancelReasonConditions = new CancelReasonConditionsDataContract(); cancelReasonConditions.AssignID = ac.AssignID; cancelReasonConditions.Reason = ""; CancelReasonConditionsList.Add(cancelReasonConditions); CancelReasonConditionsDataContract[] arr = CancelReasonConditionsList.ToArray(); b = client.CancleAssignCourse(arr, 0, 0, 1); result = "取消失败"; } if (b) { result = "Success"; op.Status = 1; } else { op.Status = 2; op.Content = result; } Console.WriteLine("处理成功 {0}", op.Gid + "*---*" + result); channel.BasicAck(ea.DeliveryTag, false); #endregion } catch (Exception ex) { if (op != null) { op.Status = 2; op.Content = ex.Message; } Console.WriteLine("处理失败 {0}", "*---*" + ex.Message); } if (op != null) { SYNCOperationBLL.Save(op); } //Thread.Sleep(3000); } } } }