/// <summary>
        /// 用户解除绑定
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult UnBindUser(string id)
        {
            //TODO 获取当前登录用户的报修单位ID
            var dlgInf = new DlgConfirmInfo();

            using (var db = new MbContext())
            {
                var model = db.UseCompanyUser.FirstOrDefault(x => x.UserId == id && x.UseCompanyId == CurrentUser.User.UseCompanyId);
                if (model != null)
                {
                    //获取用户信息,更新单位信息
                    var user = db.User.FirstOrDefault(x => x.UserId == id);
                    user.UseCompanyId     = null;
                    user.UseCompanyUserId = null;

                    db.UseCompanyUser.Remove(model);
                }
                if (db.SaveChanges() > 0)
                {
                    dlgInf.Title   = "成功";
                    dlgInf.Content = "解除绑定成功";
                    dlgInf.Type    = InfoType.Success;

                    return(View("dlg_confirm_info", dlgInf));
                }
                dlgInf.Title   = "失败";
                dlgInf.Content = "解除绑定失败";
                dlgInf.Type    = InfoType.Error;
                return(View("dlg_confirm_info", dlgInf));
            }
        }
Exemple #2
0
        /// <summary>
        /// 绑定用户
        /// </summary>
        /// <param name="userId"></param>
        /// <returns></returns>
        public ActionResult BindUser(string userId)
        {
            var dlgInf = new DlgConfirmInfo();

            //TODO 获取当前登录用户的报修单位ID
            using (var db = new MbContext())
            {
                //DOTO是否存在报修单位
                var useCompanyUser =
                    db.UseCompanyUser
                    .FirstOrDefault(x => x.UserId == userId);

                //DOTO是否存在服务单位
                var serviceCompanyUser =
                    db.ServiceCompanyUser
                    .FirstOrDefault(x => x.UserId == userId);

                if (serviceCompanyUser != null)
                {
                    dlgInf.Title   = "失败";
                    dlgInf.Content = "该用户已被绑定";
                    dlgInf.Type    = InfoType.Error;
                    return(View("dlg_confirm_info", dlgInf));
                }

                if (useCompanyUser != null)
                {
                    dlgInf.Title   = "失败";
                    dlgInf.Content = "该用户已绑定其他单位";
                    dlgInf.Type    = InfoType.Error;
                    return(View("dlg_confirm_info", dlgInf));
                }
                string ServiceCompanyUserId = SequNo.NewId;
                db.ServiceCompanyUser.Add(new ServiceCompanyUser()
                {
                    ServiceCompanyUserId = ServiceCompanyUserId,
                    ServiceCompanyId     = CurrentUser.User.ServiceCompanyId,
                    UserId     = userId,
                    CreateTime = DateTime.Now,
                });
                //获取用户信息,更新单位信息
                var user = db.User.FirstOrDefault(x => x.UserId == userId);
                user.ServiceCompanyId     = CurrentUser.User.ServiceCompanyId;
                user.ServiceCompanyUserId = ServiceCompanyUserId;
                if (db.SaveChanges() > 0)
                {
                    dlgInf.Title   = "成功";
                    dlgInf.Content = "绑定成功";
                    dlgInf.Type    = InfoType.Success;

                    return(View("dlg_confirm_info", dlgInf));
                }
                dlgInf.Title   = "失败";
                dlgInf.Content = "绑定失败";
                dlgInf.Type    = InfoType.Error;
                return(View("dlg_confirm_info", dlgInf));
            }
        }
Exemple #3
0
        public ActionResult Cancel(string id)
        {
            var dlgInf = new DlgConfirmInfo();

            using (var db = new MbContext())
            {
                return(ResultError("操作失败"));
            }
        }
Exemple #4
0
        public ActionResult DispatchOrderToUser(string RepairOrderId, long ServiceUserId, string UserName, string UserPhone)
        {
            try
            {
                string repairUserId = "";
                var    repairType   = RepairType.App;

                string sCompanyId = "";
                var    dlgInf     = new DlgConfirmInfo();
                var    flag       = os.Dispatch(RepairOrderId, CurrentUser.User.UserId, ServiceUserId, UserName, UserPhone, ref sCompanyId, ref repairUserId, ref repairType);
                if (flag)
                {
                    dlgInf.Title   = "成功";
                    dlgInf.Content = "派单成功";
                    dlgInf.Type    = InfoType.Success;
                    //发送短信

                    SMSManager.Instance.SendNotify(UserPhone, RepairOrderId.ToString());
                    //判断报修终端
                    if (repairType == RepairType.Wx)
                    {
                        //发送公共号消息

                        new Task(new Action(() =>
                        {
                            var resultMsg = os.SendWxTmpMsg(repairUserId, RepairOrderId, OrderState.Created);
                            Logger.InfoFormat("微信消息推送{0}===={1}", RepairOrderId, resultMsg);
                        })).Start();
                    }
                }
                else
                {
                    dlgInf.Title   = "错误";
                    dlgInf.Content = "服务器繁忙,请稍后再试试.";
                    dlgInf.Type    = InfoType.Error;
                }
                return(View("dlg_confirm_info", dlgInf));
            }
            catch (Exception e)
            {
                Logger.Error("派单异常", e);

                return(ResultSuccess("服务器繁忙,请稍后再试试."));
            }
        }
        /// <summary>
        /// 通过
        /// </summary>
        /// <returns></returns>
        public ActionResult PassedConMng(string uid)
        {
            using (var db = new MbContext())
            {
                var model = db.JoinCompany.FirstOrDefault(t => t.UseCompanyId == uid && t.ServiceCompanyId == CurrentUser.User.ServiceCompanyId);
                model.State = CompanySginState.Passed.ToString();

                db.SaveChanges();
            }


            var dlgInf = new DlgConfirmInfo();

            //todo 报修单位向维修单位发起签约申请
            dlgInf.Title   = "通过";
            dlgInf.Content = "操作成功";
            dlgInf.Type    = InfoType.Success;
            return(View("dlg_confirm_info", dlgInf));
        }
Exemple #6
0
        /// <summary>
        /// 合作单位解绑
        /// </summary>
        /// <returns></returns>
        public ActionResult DelConMng(string sid)
        {
            using (var db = new MbContext())
            {
                var model = db.JoinCompany.FirstOrDefault(t => t.ServiceCompanyId == sid && t.UseCompanyId == CurrentUser.User.UseCompanyId);

                db.JoinCompany.Remove(model);

                db.SaveChanges();
            }


            var dlgInf = new DlgConfirmInfo();
            //todo 报修单位向维修单位发起签约申请

            dlgInf.Title = "解绑";
            dlgInf.Content = "解绑成功";
            dlgInf.Type = InfoType.Success;
            return View("dlg_confirm_info", dlgInf);
        }
Exemple #7
0
        /// <summary>
        /// 申请
        /// </summary>
        /// <param name="sid"></param>
        /// <returns></returns>
        public ActionResult ApplyConMng(string sid)
        {
            var dlgInf = new DlgConfirmInfo();

            using (var db = new MbContext())
            {
                var model = db.JoinCompany.FirstOrDefault(t => t.ServiceCompanyId == sid && t.UseCompanyId == CurrentUser.User.UseCompanyId);

                if (model != null)
                {
                    //DOTO  已经存在 不允许签约
                    dlgInf.Title = "签约";
                    dlgInf.Content = "此单位已签约";
                    dlgInf.Type = InfoType.Error;
                    return View("dlg_confirm_info", dlgInf);
                }

                db.JoinCompany.Add(new JoinCompany
                {
                    UseCompanyId = CurrentUser.User.UseCompanyId,
                    ServiceCompanyId = sid,
                    State = CompanySginState.Waitting.ToString(),
                    CreateTime = DateTime.Now
                });

                db.SaveChanges();
            }


            //todo 报修单位向维修单位发起签约申请

            dlgInf.Title = "签约";
            dlgInf.Content = "签约申请已发送";
            dlgInf.Type = InfoType.Success;
            return View("dlg_confirm_info", dlgInf);
        }