public override MessageRecorder <bool> Create(Customer model) { var r = new MessageRecorder <bool>(); model.CreatedAt = Now; model.CreatedBy = AccountNo; using (var conn = ConnectionManager.Open()) { var trans = conn.BeginTransaction(); var query = new Criteria <Customer>() .Where(m => m.No, Op.Eq, model.No) .Or(m => m.Name, Op.Eq, model.Name) .Desc(m => m.No); if (conn.Exists(query)) { trans.Rollback(); return(r.Error("保存失败")); } var effectedCount = conn.Insert(model, trans); if (effectedCount == -1) { trans.Rollback(); return(r.Error("保存失败")); } //var r2 = conn.Insert(model.Customers); //var count = model.Customers.Count; //if (r2 != count) //{ // trans.Rollback(); // return r.Error("保存失败"); //} trans.Commit(); } return(r.SetValue(!r.HasError)); }
/// <summary> /// 添加 /// </summary> /// <param name="model"></param> /// <returns></returns> public override MessageRecorder <bool> Create(DevRoom model) { var r = new MessageRecorder <bool>(); model.CreatedAt = Now; model.CreatedBy = AccountNo; using (var conn = ConnectionManager.Open()) { var trans = conn.BeginTransaction(); var query = new Criteria <DevRoom>() .Where(m => m.No, Op.Eq, model.No) .Or(m => m.Name, Op.Eq, model.Name) .Desc(m => m.No); if (conn.Exists(query)) { trans.Rollback(); return(r.Error("保存失败")); } var effectedCount = conn.Insert(model, trans); if (effectedCount == -1) { trans.Rollback(); return(r.Error("保存失败")); } trans.Commit(); } r.Append(AccessoryService.ClearExpiration(model.Pic)); return(r.SetValue(!r.HasError)); }
/// <summary> /// 根据经纪人编号获取所有楼盘信息 /// </summary> /// <param name="brokerNo">经纪人编号</param> /// <returns></returns> public MessageRecorder <IList <Project> > GetHouseByBrokerNo(string brokerNo) { var r = new MessageRecorder <IList <Project> >() { Value = new List <Project>() }; if (string.IsNullOrEmpty(brokerNo)) { return(r.Error("请指定经纪人")); } using (var conn = ConnectionManager.Open()) { var refQuery = new Criteria <HouseBrokerRef>() .Where(m => m.BrokerNo, Op.Eq, brokerNo) .Asc(m => m.CreatedAt); var proNos = conn.Query(refQuery).Select(m => m.ProjectNo).ToList(); if (proNos.IsNullOrEmpty()) { return(r); } var projectList = new Criteria <Project>() .And(m => m.No, Op.In, proNos); var list = conn.Query(projectList); return(r.SetValue(list)); } }
/// <summary> /// 添加 /// </summary> /// <param name="model"></param> /// <returns></returns> public override MessageRecorder <bool> Create(HouseBrokerRef model) { var r = new MessageRecorder <bool>(); model.CreatedAt = Now; model.CreatedBy = AccountNo; using (var conn = ConnectionManager.Open()) { var trans = conn.BeginTransaction(); var query = new Criteria <HouseBrokerRef>() .Where(m => m.BrokerNo, Op.Eq, model.BrokerNo) .And(m => m.ProjectNo, Op.Eq, model.ProjectNo); if (conn.Exists(query)) { trans.Rollback(); return(r.Error("保存失败")); } var effectedCount = conn.Insert(model, trans); if (effectedCount == -1) { trans.Rollback(); return(r.Error("保存失败")); } trans.Commit(); } return(r.SetValue(!r.HasError)); }
/// <summary> /// 根据经纪人编号查询所属公司信息 /// </summary> /// <returns></returns> public MessageRecorder <BrokerageFirm> GetByNo(string brokerNo) { var r = new MessageRecorder <BrokerageFirm>(); if (string.IsNullOrEmpty(brokerNo)) { return(r.Error("经纪人编号无效!")); } using (var conn = ConnectionManager.Open()) { var brokerQuery = new Criteria <Broker>() .Where(m => m.No, Op.Eq, brokerNo) .Desc(m => m.No); var broker = conn.Get(brokerQuery); if (broker == null) { return(r.Error("程序错误,请重新登录后重试!")); } var firmQuery = new Criteria <BrokerageFirm>() .Where(m => m.FirmNo, Op.Eq, broker.FirmNo) .Desc(m => m.FirmNo); var firm = conn.Get(firmQuery); if (firm == null) { r.SetValue(new BrokerageFirm()); } r.SetValue(firm); return(r); } }
public MessageRecorder <bool> Delete(long[] ids) { var mr = new MessageRecorder <bool>(); using (var conn = ConnectionManager.Open()) { var trans = conn.BeginTransaction(); var query = new Criteria <Account>() .Where(m => m.Id, Op.In, ids) .And("`no` NOT IN (SELECT `AccountNo` FROM `base_account_role_ref` WHERE `RoleNo` NOT IN('BranchAdmin', 'BranchStaff'))"); var models = conn.Query(query); var isOk = models.All(m => conn.Delete(m, trans)); if (isOk) { trans.Commit(); foreach (var model in models) { mr.Append(AccessoryService.DeleteObject(model.Photo)); } mr.SetValue(!mr.HasError); } else { trans.Rollback(); } return(mr); } }
public MessageRecorder <Account> GetAccountByMobileNo(string mobileNo) { var r = new MessageRecorder <Account>(); if (string.IsNullOrEmpty(mobileNo)) { return(r.Error("请输入手机号码")); } using (var conn = ConnectionManager.Open()) { var query = new Criteria <Account>() .Or(m => m.Phone, Op.Eq, mobileNo) .Or(m => m.Phone2, Op.Eq, mobileNo) .Or(m => m.Phone3, Op.Eq, mobileNo) .Limit(1); var model = conn.Query(query).FirstOrDefault(); if (model != null) { var roleQuery = new Criteria <AccountRoleRef>() .Where(m => m.AccountNo, Op.Eq, model.No); model.RoleRefs = conn.Query(roleQuery); } return(r.SetValue(model)); } }
public override MessageRecorder <bool> Update(Branch model) { var r = new MessageRecorder <bool>(); model.UpdatedAt = Now; model.UpdatedBy = AccountNo; using (var conn = ConnectionManager.Open()) { var trans = conn.BeginTransaction(); var query = new Criteria <Branch>() .Where(m => m.No, Op.Eq, model.No) .Or(m => m.Name, Op.Eq, model.Name) .And(m => m.Id, Op.NotEq, model.Id); if (conn.Exists(query)) { trans.Rollback(); return(r.Error("编号或者名称重复")); } var effectedCount = conn.Update(model, trans); if (!effectedCount) { trans.Rollback(); return(r.Error("保存失败")); } trans.Commit(); return(r.SetValue(true)); } }
public static MessageRecorder <bool> Delete <TModel>(long[] ids) where TModel : class { var r = new MessageRecorder <bool>(); if (ids.IsNullOrEmpty()) { return(r.Error("ids没有指定值")); } Register <TModel>(); using (var conn = ConnectionManager.Open()) { var trans = conn.BeginTransaction(); var models = conn.Query <TModel>( $"SELECT * FROM `{NamingHelper.MapClassToTable(typeof (TModel).FullName)}` WHERE `id` in ({string.Join(",", ids)})"); if (models.IsNullOrEmpty()) { return(r.SetValue(true).Info("已被删除")); } trans.Commit(); return(r.SetValue(true).Info("删除成功")); } }
public override MessageRecorder <bool> Create(Developer model) { var r = new MessageRecorder <bool>(); model.CreatedAt = Now; model.CreatedBy = AccountNo; using (var conn = ConnectionManager.Open()) { var trans = conn.BeginTransaction(); var query = new Criteria <Developer>() .Where(m => m.No, Op.Eq, model.No) .Or(m => m.Name, Op.Eq, model.Name); if (conn.Exists(query)) { trans.Rollback(); return(r.Error("编号或者名称重复")); } var effectedCount = conn.Insert(model, trans); if (effectedCount == -1) { trans.Rollback(); return(r.Error("保存失败")); } trans.Commit(); return(r.SetValue(true)); } }
public void StopRecording() { msgRecorder = null; if (GameGUI.Inst.guiLayer != null) { GameGUI.Inst.guiLayer.SendGuiLayerRecordingStop(); } }
public IHttpActionResult GetFirmAll() { var r = new MessageRecorder <IList <BrokerageFirm> >(); var u = Request.GetQueryString("u"); var service = new BrokerageFirmService(u); r.SetValue(service.GetAll()); return(Ok(r)); }
/// <summary> /// 修改 /// </summary> /// <param name="model"></param> /// <returns></returns> public override MessageRecorder <bool> Update(Project model) { var r = new MessageRecorder <bool>(); model.CreatedAt = Now; model.CreatedBy = AccountNo; string oldKey; using (var conn = ConnectionManager.Open()) { var trans = conn.BeginTransaction(); var query = new Criteria <Project>() .Where(m => m.No, Op.Eq, model.No) .Or(m => m.Name, Op.Eq, model.Name) .And(m => m.Id, Op.NotEq, model.Id); if (conn.Exists(query)) { trans.Rollback(); return(r.Error("编号或者名称重复")); } var obj = new Criteria <Project>() .Where(m => m.Id, Op.Eq, model.Id) .Select(m => m.AddrPic); oldKey = conn.ExecuteScalarEx <string>(obj.ToSelectSql()); var effectedCount = conn.Update(model, trans); if (!effectedCount) { trans.Rollback(); return(r.Error("保存失败")); } foreach (var projectInfo in model.ProjectInfos) { projectInfo.UpdatedAt = Now; projectInfo.UpdatedBy = AccountNo; projectInfo.DpNo = model.No; } var effectedCount2 = conn.Update(model.ProjectInfos, trans); if (!effectedCount2) { trans.Rollback(); return(r.Error("保存失败")); } trans.Commit(); } if (!Equals(oldKey, model.AddrPic)) { r.Append(AccessoryService.DeleteObject(oldKey)); r.Append(AccessoryService.ClearExpiration(model.AddrPic)); } return(r.SetValue(!r.HasError)); }
public virtual MessageRecorder <bool> Create(TModel model) { var r = new MessageRecorder <bool>(); using (var conn = ConnectionManager.Open()) { var effectedCount = conn.Insert(model); return(r.SetValue(effectedCount > -1)); } }
public IHttpActionResult SetFirm() { var r = new MessageRecorder <IList <BrokerageFirm> >(); var u = Request.GetQueryString("u"); var n = Request.GetQueryString("n"); var service = new BrokerService(); var a = service.UpdateFirm(u, n); return(Ok(a)); }
/// <summary> /// 删除账号 /// </summary> /// <param name="no"></param> /// <param name="projectNo"></param> /// <returns></returns> public MessageRecorder <bool> Remove(string no, string projectNo) { var mr = new MessageRecorder <bool>(); if (string.IsNullOrEmpty(no)) { return(mr.Error("请指定账号")); } if (string.IsNullOrEmpty(projectNo)) { return(mr.Error("请指定楼盘编号号")); } using (var conn = ConnectionManager.Open()) { var trans = conn.BeginTransaction(); var accountQuery = new Criteria <PropertyAdvisor>() .Where(m => m.No, Op.Eq, no) .And(m => m.ProjectNo, Op.Eq, projectNo); var account = conn.Get(accountQuery); if (account != null) { var effectedCount1 = conn.Delete(account, trans); if (!effectedCount1) { trans.Rollback(); return(mr.Error("删除失败")); } } var query = new Criteria <PropertyAdvisor>() .Where(m => m.No, Op.Eq, no) .Desc(m => m.No) .Limit(1); if (!conn.Exists(query)) { var q1 = new Criteria <AccountRoleRef>() .Where(m => m.AccountNo, Op.Eq, no) .And(m => m.BranchNo, Op.Eq, "420100") .And(m => m.RoleNo, Op.Eq, "PropertyStaff"); var r2 = conn.Execute(q1.ToDeleteSql(), null, trans); if (r2 == -1) { trans.Rollback(); return(mr.Error("账户已经存在,不能重复创建")); } } trans.Commit(); return(mr.SetValue(true)); } }
public MessageRecorder <IList <Customer> > GetAllCustomer() { var r = new MessageRecorder <IList <Customer> >(); var customerAll = GetAll(); if (!customerAll.Any()) { return(r.Error("没有客户信息")); } return(r.SetValue(customerAll)); }
/// <summary> /// 获取所有经纪人与房源关系信息 /// </summary> /// <returns></returns> public MessageRecorder <IList <HouseBrokerRef> > GetAllHouse() { var r = new MessageRecorder <IList <HouseBrokerRef> >(); var projectAll = GetAll(); if (!projectAll.Any()) { return(r.Error("没有任何房源!")); } return(r.SetValue(projectAll)); }
/// <summary> /// 返回成功结果 /// </summary> /// <typeparam name="TModel">模型泛型</typeparam> /// <param name="model">消息记录模型实例</param> /// <param name="func">消息记录模型转换函数</param> /// <returns></returns> public IHttpActionResult Ok <TModel>(MessageRecorder <TModel> model, Func <TModel, object> func = null) { var obj = new Dictionary <string, object> { { "HasError", model.HasError }, { "Errors", model.Errors.Select(m => m.Message).ToList() }, { "Model", model.Value == null ? null : func?.Invoke(model.Value) ?? model.Value } }; return(Ok(obj)); }
/// <summary> /// 检查账户是否存在 /// </summary> /// <param name="username"></param> /// <returns></returns> public MessageRecorder <bool> IsExists(string username) { var r = new MessageRecorder <bool>(); if (string.IsNullOrEmpty(username)) { return(r.Error("请输入账户名")); } var account = GetAll().FirstOrDefault(m => m.ValidNos.Contains(username)); return(r.SetValue(account != null)); }
public IHttpActionResult GetHouseById(string id) { var mr = new MessageRecorder <Project>(); if (id.IsNullOrEmpty()) { return(Ok(mr.Error("楼盘编号无效"))); } var service = new ProjectService(); var r = service.GetByNo(id); return(Ok(mr.SetValue(r))); }
/// <summary> /// 上传一个新文件 /// </summary> public MessageRecorder <bool> PutObject(string key, string file, ObjectMetadata om = null) { var r = new MessageRecorder <bool>(); try { _client.PutObject(BucketName, key, file, om); return(r.Info("上传文件成功").SetValue(true)); } catch (Exception ex) { return(r.Error($"上传文件失败. 原因:{ex.Message}")); } }
/// <summary> /// 设置存储空间ACL的值 /// </summary> public MessageRecorder <bool> SetBucketAcl(CannedAccessControlList cac) { var r = new MessageRecorder <bool>(); try { _client.SetBucketAcl(BucketName, cac); return(r.Info("设置存储空间权限成功").SetValue(true)); } catch (Exception ex) { return(r.Error($"设置存储空间权限失败. 原因:{ex.Message}")); } }
/// <summary> /// 获取元数据 /// </summary> /// <param name="key"></param> /// <returns></returns> public MessageRecorder <ObjectMetadata> GetObjectMetadata(string key) { var r = new MessageRecorder <ObjectMetadata>(); try { r.Value = _client.GetObjectMetadata(BucketName, key); return(r.Info("获取文件元数据成功")); } catch (Exception ex) { return(r.Error($"获取文件元数据失败. 原因:{ex.Message}")); } }
/// <summary> /// 删除文件 /// </summary> public MessageRecorder <bool> DeleteObject(string key) { var r = new MessageRecorder <bool>(); try { _client.DeleteObject(BucketName, key); return(r.Info("删除文件成功").SetValue(true)); } catch (Exception ex) { return(r.Error($"删除文件失败. 原因:{ex.Message}")); } }
public IHttpActionResult Get() { var m = Request.GetQueryString("m"); var mr = new MessageRecorder <bool>(); //TODO 更新本周推客数量、活跃客户数、成交金额 var now = DateTime.Now; return(Ok(mr, n => new { TuikeAmount = 0 + now.Hour * 100 + now.Minute, ActiveCustomer = now.Hour * 100 + +now.Minute * 2 + now.Second, TotalSales = now.Hour * 200 + +now.Minute * 50 + now.Second * 10, AlertCount = now.Minute % 10 })); }
/// <summary> /// 获取存储空间ACL的值 /// </summary> public MessageRecorder <IList <Permission> > GetBucketAcl() { var r = new MessageRecorder <IList <Permission> >(); try { var result = _client.GetBucketAcl(BucketName); r.Value = result.Grants.Select(m => m.Permission).ToList(); return(r); } catch (Exception ex) { return(r.Error($"获取存储空间权限失败. 原因:{ex.Message}")); } }
/// <summary> /// 上传附件 /// </summary> /// <param name="request">HttpRequest</param> /// <param name="inputName">获取指定Input控件的文件</param> /// <returns>上传结果信息</returns> public static MessageRecorder <IList <string> > Upload( HttpRequestBase request, string inputName = null) { var mr = new MessageRecorder <IList <string> > { Value = new List <string>() }; var service = new AliyunOssService(); for (var i = 0; i < request.Files.Count; i++) { var upload = request.Files.AllKeys[i]; //如果指定了Input名称,则寻找对应的Input执行上传操作 if (Equals(upload, inputName)) { continue; } var file = request.Files[i]; if (file == null) { continue; } if (file.ContentLength <= 0) { continue; } // Uploaded file // Use the following properties to get file's name, size and MIMEType //int fileSize = file.ContentLength; //string fileName = file.FileName; //string mimeType = file.ContentType; var metadata = new ObjectMetadata { ExpirationTime = DateTime.Now.AddDays(1), ContentLength = file.InputStream.Length, ContentType = file.ContentType, ContentDisposition = file.FileName }; var key = Guid.NewGuid().ToString("N"); var mr2 = service.PutObject(key, file.InputStream, metadata); mr.Append(mr2); mr.Value.Add(key); } return(mr); }
public static MessageRecorder <TModel> Load <TModel>(long id) where TModel : class { var r = new MessageRecorder <TModel>(); Register <TModel>(); using (var conn = ConnectionManager.Open()) { var model = conn.Get <TModel>(id); //var model = conn.Query<TModel>( // $"SELECT * FROM `{NamingHelper.MapClassToTable(typeof(TModel).FullName)}` WHERE `id` = {id}") // .FirstOrDefault(); return(r.SetValue(model)); } }
public void Init(string recordingFilename, bool ignoreMessages = true, bool recordMyActions = true) { mIgnoreMessages = ignoreMessages; mRecordMyActions = recordMyActions; if (recordingFilename == "") { recordingFilename = MessageRecorder.GetDefaultFileName(); } mRecordingFilename = System.IO.Path.GetFullPath(recordingFilename); DataMessageManager.Inst.StartRecording(recordingFilename, mIgnoreMessages); if (GameManager.InBatchMode()) { InvokeRepeating("InactivityCheck", 0, 0.1f * minInactivityTimeForFile); InvokeRepeating("KeepAlive", 20, 4 * 60); } }