コード例 #1
0
        public async Task <dynamic> CreateTicket([FromBody] SupportCreateModel ticket)
        {
            var steamId = User.GetSteamId();

            if (!ModelState.IsValid)
            {
                return(BadRequest(ticket));
            }

            var res = await _ticketService.AdminCreateTicket(new AdminCreateTicketRequest
            {
                Message = new InputMessage
                {
                    MessageBody = ticket.Message,
                    Name        = ticket.Name
                },
                SteamId = ticket.SteamId,
                Title   = ticket.Title
            });

            if (res.DataCase == SingleTicketResponse.DataOneofCase.Error)
            {
                return(new ObjectResult(res.Error)
                {
                    StatusCode = 503
                });
            }

            return(Ok(res));
        }
コード例 #2
0
 public IActionResult CreateSupport(SupportCreateModel model)
 {
     Facade.SupportFacade support = new Facade.SupportFacade();
     if (!support.Create(model))
     {
         return(FailMessage(support.Msg));
     }
     return(SuccessMessage("创建工单成功!"));
 }
コード例 #3
0
        /// <summary>
        /// 消息推送表
        /// </summary>
        /// <param name="model"></param>
        /// <param name="sid"></param>
        /// <returns></returns>
        private bool InsertPush(SupportCreateModel model, int sid)
        {
            if (model.Push == null)
            {
                return(true);
            }

            TASM_SUPPORT_PUSH_Da da        = new TASM_SUPPORT_PUSH_Da();
            TASM_SUPPORT_PUSH    pushModel = new TASM_SUPPORT_PUSH()
            {
                SID        = sid,
                CC         = model.Push.CC,
                CONDUCTOR  = model.Push.CONDUCTOR,
                CONTENT    = model.Push.CONTENT,
                CREATETIME = DateTime.Now,
                POINT      = (int)Entites.SupportHisType.创建工单,
                STATUS     = 0,
                TID        = sid
            };

            return(da.CurrentDb.Insert(pushModel));
        }
コード例 #4
0
        /// <summary>
        /// 修改附件归属
        /// </summary>
        /// <param name="model"></param>
        /// <param name="sid"></param>
        /// <returns></returns>
        private bool UpdateAttachment(SupportCreateModel model, int sid)
        {
            if (model.Filelist == null || model.Filelist.Count <= 0)
            {
                return(true);
            }

            foreach (var item in model.Filelist)
            {
                TASM_ATTACHMENTManager manager  = new TASM_ATTACHMENTManager();
                TASM_ATTACHMENT        attModel = manager.CurrentDb.GetById(item.ID);
                attModel.TYPE = 1;
                attModel.PID  = sid;

                if (!manager.CurrentDb.Update(attModel))
                {
                    Msg = "修改附近信息失败!";
                    return(false);
                }
            }

            return(true);
        }
コード例 #5
0
        /// <summary>
        /// 创建工单主表
        /// </summary>
        /// <param name="model"></param>
        /// <param name="da"></param>
        /// <param name="sid"></param>
        /// <param name="supportModel"></param>
        /// <returns></returns>
        private bool InsertSupport(SupportCreateModel model, TASM_SUPPORT_Da da, ref int sid, ref TASM_SUPPORT supportModel)
        {
            TASM_PROJECTManager projectda    = new TASM_PROJECTManager();
            TASM_PROJECT        projectmodel = projectda.CurrentDb.GetById(model.ProjectId);

            string code = projectmodel.CODE + "-" + da.SelectSupprotCodeIndex();

            supportModel = new TASM_SUPPORT()
            {
                CREATOR    = model.CreatorId,
                CONDUCTOR  = model.ConductorId,
                CONTENT    = model.Content,
                CREATETIME = DateTime.Now,
                FINDATE    = model.FindDate,

                MEMBERID = 0,

                PROJECT  = model.ProjectId,
                SEVERITY = model.Severity,
                STATUS   = 0,
                TITLE    = model.Title,
                TYPE     = model.Type,
                STATE    = 0,
                MID      = model.Mid,
                CODE     = code
            };

            sid = da.CurrentDb.InsertReturnIdentity(supportModel);

            if (sid <= 0)
            {
                Msg = "添加操作历史失败!";
                return(false);
            }
            return(true);
        }
コード例 #6
0
        /// <summary>
        /// 创建工单
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool Create(SupportCreateModel model)
        {
            DataAccess.TASM_SUPPORT_Da da = new TASM_SUPPORT_Da();
            try
            {
                da.Db.BeginTran();

                Logger.LogInformation("=====开始创建工单========");

                int          sid          = 0;
                TASM_SUPPORT supportModel = new TASM_SUPPORT();

                //插入工单表
                if (!InsertSupport(model, da, ref sid, ref supportModel))
                {
                    Logger.LogInformation("插入工单表失败");
                    da.Db.RollbackTran();
                    return(false);
                }

                //插入操作历史表
                if (!InsertHistory(supportModel, sid))
                {
                    Logger.LogInformation("插入历史表失败");
                    da.Db.RollbackTran();
                    return(false);
                }

                //添加处理人表
                if (!InsertPersonal(supportModel, sid))
                {
                    Logger.LogInformation("插入处理人表失败");
                    da.Db.RollbackTran();
                    return(false);
                }


                //修改附件信息
                if (!UpdateAttachment(model, sid))
                {
                    Logger.LogInformation("修改附件信息失败");
                    da.Db.RollbackTran();
                    return(false);
                }

                //添加推送消息
                if (!InsertPush(model, sid))
                {
                    Logger.LogInformation("添加推送消息失败");
                    da.Db.RollbackTran();
                    return(false);
                }

                //发送通知-----非推送消息,推送消息 需要windows服务去跑
                if (!PushMessage(sid, da))
                {
                    Logger.LogInformation("推送消息失败");
                    da.Db.RollbackTran();
                    return(false);
                }


                Logger.LogInformation("=====结束创建工单========");
                da.Db.CommitTran();

                this.Msg = "创建成功!";
                return(true);
            }
            catch (Exception e)
            {
                da.Db.RollbackTran();
                Logger.LogInformation("" + e);
                this.Msg = "创建工单失败!";
                return(false);
            }
        }