Esempio n. 1
0
        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));
            }
        }
Esempio n. 2
0
        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));
            }
        }
Esempio n. 3
0
        /// <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));
        }
Esempio n. 4
0
        /// <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);
            }
        }
Esempio n. 5
0
        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));
        }
Esempio n. 6
0
        /// <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));
        }
Esempio n. 7
0
        /// <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));
        }
        /// <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));
            }
        }
Esempio n. 9
0
        /// <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));
            }
        }
Esempio n. 10
0
        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));
            }
        }
Esempio n. 11
0
        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("删除成功"));
            }
        }
Esempio n. 12
0
        /// <summary>
        /// 切换经纪人收藏楼盘状态(收藏、解除)
        /// </summary>
        /// <returns>返回切换后的状态(True:代表收藏;False:代表解除)</returns>
        public MessageRecorder <bool> ChangeStatus(string brokerNo, string projectNo)
        {
            var r = new MessageRecorder <bool>();

            if (brokerNo.IsNullOrEmpty())
            {
                return(r.Error("经纪人编号无效"));
            }
            if (projectNo.IsNullOrEmpty())
            {
                return(r.Error("楼盘编号无效"));
            }
            //根据经纪人编号获取所有楼盘信息
            var house    = GetHouseByBrokerNo(brokerNo).Value;
            var yesHouse = house.Where(m => m.No.Equals(projectNo)).ToList();
            var model    = new HouseBrokerRef
            {
                ProjectNo = projectNo,
                BrokerNo  = brokerNo,
                CreatedAt = DateTime.Now,
                CreatedBy = "root"
            };

            if (!yesHouse.Any())
            {
                if (Create(model).HasError)
                {
                    return(r.Error("收藏失败!"));
                }
                r.SetValue(true);
            }
            else
            {
                var refQuery = new Criteria <HouseBrokerRef>()
                               .Where(m => m.ProjectNo, Op.Eq, projectNo)
                               .And(m => m.BrokerNo, Op.Eq, brokerNo)
                               .Asc(m => m.CreatedAt);
                var refB = ConnectionManager.Open().Query(refQuery).FirstOrDefault();
                if (Delete(refB).HasError)
                {
                    return(r.Error("解除收藏失败!"));
                }
                r.SetValue(false);
            }
            return(r);
        }
Esempio n. 13
0
        /// <summary>
        /// 根据经纪人编号查询所属公司信息
        /// </summary>
        /// <returns></returns>
        public MessageRecorder <BrokerageFirm> UpdateFirm(string u, string n)
        {
            var r = new MessageRecorder <BrokerageFirm>();

            if (string.IsNullOrEmpty(u))
            {
                return(r.Error("经纪人编号无效!"));
            }
            if (string.IsNullOrEmpty(n))
            {
                return(r.Error("公司编号无效!"));
            }
            using (var conn = ConnectionManager.Open())
            {
                return(r);
            }
        }
Esempio n. 14
0
        /// <summary>
        /// 代码验证
        /// </summary>
        /// <param name="phoneNo">手机号码</param>
        /// <param name="uuid">业务代码</param>
        /// <param name="code">验证码</param>
        /// <returns></returns>
        public MessageRecorder <bool> AuthCode(string phoneNo, string uuid, string code)
        {
            var mr = new MessageRecorder <bool>();

            using (var conn = ConnectionManager.Open())
            {
                var trans = conn.BeginTransaction();
                var query = new Criteria <VerificationCode>()
                            .Where(m => m.Uuid, Op.Eq, uuid);
                var model = conn.Get(query, trans);
                if (model == null)
                {
                    return(mr.Error("业务代码无效"));
                }

                if (model.VerifyAt.HasValue)
                {
                    return(mr.Error("业务代码已失效"));
                }

                if (!Equals(model.PhoneNo, phoneNo))
                {
                    return(mr.Error("手机号码不匹配"));
                }
                if (!Equals(model.Code, code))
                {
                    return(mr.Error("验证码不匹配"));
                }


                model.VerifyAt = DateTime.Now;

                if (!conn.Update(model, trans))
                {
                    trans.Rollback();
                    return(mr.Error($"记录 {model.Uuid} 验证时间失败"));
                }

                trans.Commit();
            }
            return(mr.SetValue(true));
        }
Esempio n. 15
0
        public MessageRecorder <IList <Customer> > GetAllCustomer()
        {
            var r           = new MessageRecorder <IList <Customer> >();
            var customerAll = GetAll();

            if (!customerAll.Any())
            {
                return(r.Error("没有客户信息"));
            }
            return(r.SetValue(customerAll));
        }
Esempio n. 16
0
        /// <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));
        }
Esempio n. 17
0
        /// <summary>
        /// 修改密码
        /// </summary>
        /// <param name="username"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public MessageRecorder <bool> UpdatePassword(string username, string password)
        {
            var r = new MessageRecorder <bool>();

            if (string.IsNullOrEmpty(username))
            {
                return(r.Error("请设置用户名"));
            }
            if (string.IsNullOrEmpty(password))
            {
                return(r.Error("请设置密码"));
            }

            using (var conn = ConnectionManager.Open())
            {
                var trans = conn.BeginTransaction();
                var query = new Criteria <Account>()
                            .Or(m => m.No, Op.Eq, username)
                            .Or(m => m.Email, Op.Eq, username)
                            .Or(m => m.Phone, Op.Eq, username)
                            .Or(m => m.Phone2, Op.Eq, username)
                            .Or(m => m.Phone3, Op.Eq, username);
                var model = conn.Get(query);
                if (model == null)
                {
                    trans.Rollback();
                    return(r.Error("账户不存在"));
                }

                model.Password = password;

                var effectedCount = conn.Update(model, trans);
                if (!effectedCount)
                {
                    trans.Rollback();
                    return(r.Error("保存失败"));
                }
                trans.Commit();
                return(r.SetValue(true));
            }
        }
Esempio n. 18
0
        /// <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));
        }
Esempio n. 19
0
        /// <summary>
        /// 切换经纪人收藏楼盘状态(收藏、解除)
        /// </summary>
        /// <returns>返回切换后的状态(True:代表收藏;False:代表解除)</returns>
        public MessageRecorder <bool> IsCollect(string brokerNo, string projectNo)
        {
            var r = new MessageRecorder <bool>();

            using (var conn = ConnectionManager.Open())
            {
                if (brokerNo.IsNullOrEmpty())
                {
                    return(r.Error("经纪人编号无效"));
                }
                if (projectNo.IsNullOrEmpty())
                {
                    return(r.Error("楼盘编号无效"));
                }
                //根据经纪人编号获取所有楼盘信息
                var refQuery = new Criteria <HouseBrokerRef>()
                               .Where(m => m.ProjectNo, Op.Eq, projectNo)
                               .And(m => m.BrokerNo, Op.Eq, brokerNo)
                               .Asc(m => m.CreatedAt);
                r.SetValue(conn.Query(refQuery).Any());
                return(r);
            }
        }
Esempio n. 20
0
        /// <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}"));
            }
        }
Esempio n. 21
0
        /// <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}"));
            }
        }
Esempio n. 22
0
        /// <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}"));
            }
        }
Esempio n. 23
0
        /// <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}"));
            }
        }
Esempio n. 24
0
        /// <summary>
        /// 序号递增
        /// </summary>
        /// <param name="no"></param>
        /// <param name="step"></param>
        /// <returns></returns>
        public static MessageRecorder <string> Inc(string no, int step = 1)
        {
            var r = new MessageRecorder <string>();

            if (string.IsNullOrWhiteSpace(no))
            {
                return(r.Error("编号格式错误"));
            }
            r.Value = Regex.Replace(no, @"^(.*)(\d+)$",
                                    x =>
            {
                var prefix = x.Groups[1].Value;
                var noStr  = x.Groups[2].Value;
                int noInt;
                if (int.TryParse(noStr, out noInt))
                {
                    return(string.Concat(prefix, (noInt + step).ToString().PadLeft(noStr.Length, '0')));
                }
                r.Error("编号格式不正确");
                return(noStr);
            });
            return(r);
        }
Esempio n. 25
0
        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)));
        }
Esempio n. 26
0
        /// <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}"));
            }
        }
Esempio n. 27
0
        public MessageRecorder <Account> Auth(string username, string password)
        {
            var r = new MessageRecorder <Account>();

            if (string.IsNullOrEmpty(username))
            {
                return(r.Error("请输入账户名"));
            }
            if (string.IsNullOrEmpty(password))
            {
                return(r.Error("请输入密码"));
            }
            var account = GetAll().FirstOrDefault(m => m.ValidNos.Contains(username));

            if (account == null)
            {
                return(r.Error("账户名或者密码不匹配"));
            }

            if (!account.AuthPassword(password))
            {
                account.ErrLoginCount++;
                account.ErrLoginAt = Now;
                r.Append(Update(account));
                return(r.Error("密码不正确"));
            }

            account.LastLoginAt   = Now;
            account.ErrLoginCount = 0;
            r.Append(UpdateLoginInfo(account));


            var model = GetAccount(account.No);

            return(r.SetValue(model));
        }
Esempio n. 28
0
        public IHttpActionResult Get()
        {
            var m = Request.GetQueryString("m");
            var t = Request.GetQueryString("t");

            // 注册为经纪人
            if ("register".Equals(t))
            {
                var accountService = new AccountService();
                var r1             = accountService.GetAccountByMobileNo(m);
                if (r1.HasError)
                {
                    return(Ok(r1));
                }
                if (r1.Value != null && r1.Value.IsBroker())
                {
                    return(Ok(r1.Error("账户已经存在")));
                }

                var service = new VerificationCodeService();
                var r2      = service.MakeCode(AlidayuService.CodeType.Register, null, m);
                return(Ok(r2, n => n.Uuid));
            }

            // 重置密码
            if ("reset_password".Equals(t))
            {
                var accountService = new AccountService();
                var r1             = accountService.IsExists(m);
                if (r1.HasError)
                {
                    return(Ok(r1));
                }
                if (!r1.Value)
                {
                    return(Ok(r1.Error("账户不存在")));
                }

                var service = new VerificationCodeService();
                var r2      = service.MakeCode(AlidayuService.CodeType.ResetPass, null, m);
                return(Ok(r2, n => n.Uuid));
            }

            var mr = new MessageRecorder <string>();

            return(Ok(mr.Error("请求类型不正确")));
        }
Esempio n. 29
0
        /// <summary>
        /// 根据楼盘编号获取所有关系经纪人的信息
        /// </summary>
        /// <param name="houseNo">楼盘编号</param>
        /// <returns></returns>
        public MessageRecorder <IList <Broker> > GetBrokerByHouseNo(string houseNo)
        {
            var r = new MessageRecorder <IList <Broker> >();

            using (var conn = ConnectionManager.Open())
            {
                var refQuery = new Criteria <HouseBrokerRef>()
                               .Where(m => m.ProjectNo, Op.Eq, houseNo)
                               .Asc(m => m.CreatedAt);
                var proNos     = conn.Query(refQuery).Select(m => m.ProjectNo).ToList();
                var brokerList = new Criteria <Broker>()
                                 .And(m => m.No, Op.In, proNos);
                var list = conn.Query(brokerList);
                if (!list.Any())
                {
                    return(r.Error("没有任何房源!"));
                }
                return(r.SetValue(list));
            }
            ;
        }
Esempio n. 30
0
        /// <summary>
        /// 修改元数据
        /// </summary>
        /// <param name="key"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        public MessageRecorder <bool> ModifyObjectMeta(string key,
                                                       Action <ObjectMetadata> action)
        {
            var r = new MessageRecorder <bool>();

            try
            {
                var meta    = _client.GetObjectMetadata(BucketName, key);
                var newMeta = new ObjectMetadata {
                    ContentLength = meta.ContentLength
                };
                if (!string.IsNullOrEmpty(meta.ContentType))
                {
                    newMeta.ContentType = meta.ContentType;
                }
                if (!string.IsNullOrEmpty(meta.CacheControl))
                {
                    newMeta.CacheControl = meta.CacheControl;
                }
                if (!string.IsNullOrEmpty(meta.ContentDisposition))
                {
                    newMeta.ContentDisposition = meta.ContentDisposition;
                }
                if (!string.IsNullOrEmpty(meta.ContentEncoding))
                {
                    newMeta.ContentEncoding = meta.ContentEncoding;
                }
                //TODO 等待修复取值错误
                //newMeta.ExpirationTime = meta.ExpirationTime;
                action?.Invoke(newMeta);
                _client.ModifyObjectMeta(BucketName, key, newMeta);
                return(r.Info("修改文件元数据成功").SetValue(true));
            }
            catch (Exception ex)
            {
                return(r.Error($"修改文件元数据失败. 原因:{ex.Message}"));
            }
        }