Example #1
0
        /// <summary>
        /// 发送通知
        /// </summary>
        /// <param name="sid"></param>
        /// <param name="da">不在同一个事务中,查询不到id</param>
        /// <returns></returns>
        private bool PushMessage(int sid, TASM_SUPPORT_Da da)
        {
            if (Entites.AppConfig.IsPush == false)
            {
                Logger.LogInformation("不发送消息通知,若需要请打开配置文件");
                return(true);
            }
            try
            {
                var model = da.SelectBySid4Push(sid);

                string title = $"您有一份新的任务,问题管理表编号[{model.CODE}],请登录售后管理系统查看详情。";

                StringBuilder content = new StringBuilder();

                content.AppendLine($"项目名称:{model.PROJECTNAME}[{model.PROJECTCODE}]");
                content.AppendLine($"问题机型:{model.MACHINENAME}[{model.MACHINESERIAL}]");

                content.AppendLine($"问题类型:{ Enum.GetName(typeof(SupportProblemType), model.TYPE)}");

                content.AppendLine($"当前处理人:{model.CONDUCTORNAME}");

                content.AppendLine($"流程节点:{Enum.GetName(typeof(SupportendPoint), model.STATUS).Replace('_', '>')}");

                content.AppendLine($"问题描述:{model.CONTENT}");

                PushHelper.PushWeChat(model.ConductorWorkId, title, content.ToString());
                return(true);
            }
            catch (Exception e)
            {
                Logger.LogInformation("" + e);
                return(false);
            }
        }
Example #2
0
        public IActionResult SupportUpdate(TASM_SUPPORT info)
        {
            TASM_SUPPORT_Da support = new TASM_SUPPORT_Da();

            TASM_SUPPORT_HIS_Da his = new TASM_SUPPORT_HIS_Da();

            var hisModel = his.SelectBySidType(info.SID, 0);

            support.Db.BeginTran();

            hisModel.PRE_USER  = info.CREATOR;
            hisModel.NEXT_USER = info.CONDUCTOR;

            if (his.Db.Updateable(hisModel).ExecuteCommand() < 1)
            {
                support.Db.RollbackTran();
                return(FailMessage());
            }


            if (support.Db.Updateable(info).ExecuteCommand() < 1)
            {
                support.Db.RollbackTran();
                return(FailMessage());
            }

            support.Db.CommitTran();
            return(SuccessMessage());
        }
Example #3
0
        /// <summary>
        /// 生成工单编号
        /// </summary>
        /// <param name="projectcode"></param>
        /// <returns></returns>
        public string GetSupportCode(string projectcode)
        {
            TASM_SUPPORT_Da da   = new TASM_SUPPORT_Da();
            string          code = projectcode + "-" + da.SelectSupprotCodeIndex();

            return(code);
        }
Example #4
0
        public IActionResult SupportInfo(int sid)
        {
            TASM_SUPPORT_Da support = new TASM_SUPPORT_Da();
            var             model   = support.SelectById(sid);

            return(SuccessResult(model));
        }
Example #5
0
 private bool UpdateSupport(TASM_SUPPORT supportModel, TASM_SUPPORT_Da support_manager, int nextUser, int supportStatus, int pmcId)
 {
     supportModel.MEMBERID  = pmcId;
     supportModel.STATUS    = supportStatus;                 //修改工单状态
     supportModel.CONDUCTOR = nextUser;                      //工单流转到下一处理人员, 修改处理人员,此处 PMC处理人员 和 下一处理人员共用一个字段
     supportModel.STATE     = 1;                             //工单处理中
     return(support_manager.CurrentDb.Update(supportModel)); //修改工单表
 }
Example #6
0
        /// <summary>
        /// 创建工单
        /// </summary>
        /// <param name="daSupport"></param>
        /// <param name="item"></param>
        /// <returns></returns>

        private bool CreateSupport(TASM_SUPPORT_Da daSupport, ExcelModel item, ref int sid, ref TASM_SUPPORT supportModel)
        {
            try
            {
                logger.Info("===创建工单开始===!");

                //step1 添加工单主表,
                supportModel = new Entites.CodeGenerator.TASM_SUPPORT();

                supportModel.CREATOR    = GetUserIdByName(item.CreateName); //工单初始创建人
                supportModel.CONTENT    = item.Content;                     //问题描述
                supportModel.TYPE       = item.SupportType;
                supportModel.SEVERITY   = item.Severity;
                supportModel.FINDATE    = ConventDateTime(item.Createtime);
                supportModel.CONDUCTOR  = GetUserIdByName(item.ConductorName);
                supportModel.STATUS     = item.EndPiont;
                supportModel.STATE      = item.ConductorStatus;
                supportModel.MID        = GetsMachineByName(item.MachineCode);
                supportModel.CODE       = GetSupportCode(Project.CODE);
                supportModel.TITLE      = "导入数据";
                supportModel.CREATETIME = DateTime.Now;

                sid = daSupport.Db.Insertable(supportModel).ExecuteReturnIdentity();

                logger.Info("插入工单表");

                //step2 添加历史表


                TASM_SUPPORT_HIS_Da supportHis      = new TASM_SUPPORT_HIS_Da();
                TASM_SUPPORT_HIS    supportHisModel = new TASM_SUPPORT_HIS();

                supportHisModel.SID         = sid;
                supportHisModel.PRE_USER    = supportModel.CREATOR;   //上一处理人
                supportHisModel.NEXT_USER   = supportModel.CONDUCTOR; //下一处理人
                supportHisModel.PRE_STATUS  = 0;                      //上一状态,订单初始创建,为0
                supportHisModel.NEXT_STATUS = 0;                      //下一状态,订单初始创建 下一状态为 现场处理,状态0,此处创建订单不做为状态,默认创建 和 创建后未处理状态都是0
                supportHisModel.TYPE        = 0;                      //类型,也代表着是哪个表的数据 初始为0
                supportHisModel.TID         = sid;                    //数据id 根据type 那张表,看是哪一条数据。
                supportHisModel.REMARKS     = "工单创建,等待技术处理,导入数据";
                supportHisModel.CREATETIME  = DateTime.Now;
                supportHis.Db.Insertable(supportHisModel);

                logger.Info("插入历史表:创建工单");



                logger.Info("===创建工单结束===!");
                return(true);
            }
            catch (Exception ex)
            {
                logger.Error("创建工单失败" + ex);
                return(false);
            }
        }
Example #7
0
        public IActionResult ListSupport(ApiListModelBase model)
        {
            TASM_SUPPORT_Da da = new TASM_SUPPORT_Da();

            SqlSugar.PageModel p = new SqlSugar.PageModel();
            p.PageIndex = model.pageindex;
            p.PageSize  = model.pagesize;


            List <TASM_SUPPORT> list = da.ListByWhere(model.keywords, ref p);

            return(SuccessResultList(list, p));
        }
Example #8
0
        private bool UpdateSupport(TASM_SUPPORT supportModel, TASM_SUPPORT_Da support_manager, int nextUser, int supportStatus, int pid)
        {
            supportModel.MEMBERID  = pid;
            supportModel.STATUS    = supportStatus; //修改工单状态
            supportModel.CONDUCTOR = nextUser;      //工单流转到下一处理人员, 修改处理人员,此处 PMC处理人员 和 下一处理人员共用一个字段

            if (supportModel.STATUS == 6 || supportModel.STATUS == 7)
            {
                supportModel.STATE     = 2;                    //工单已完成, 工单状态 只有创建时,是待办, 技术处理之后 就变成 处理中了,
                supportModel.CONDUCTOR = supportModel.CREATOR; //工单,完成之后,没有下一处理人, 处理人变成创建人,但不产生新的personal数据
            }

            return(support_manager.CurrentDb.Update(supportModel)); //修改工单表
        }
Example #9
0
        public IActionResult GetReportCount()
        {
            TASM_PROJECTManager project = new TASM_PROJECTManager();
            int pcount = project.SelectProjectCount();

            TASM_MACHINEManager machine = new TASM_MACHINEManager();
            int mcount = machine.SelectMachineCount();

            TASM_SUPPORT_Da support = new TASM_SUPPORT_Da();
            int             scount  = support.SelectSupportCount();

            var details = support.SelectCount();

            int cpnumber = (int)((Convert.ToDecimal(details.Complete) / Convert.ToDecimal(scount)) * 100);   //工单完成率,百分比

            return(Json(new { ProjectCount = pcount, MachineCount = mcount, SupportCount = scount, SupportWaite = details.Wait, SupportBeing = details.Being, SupportComplete = details.Complete, Cpnumber = cpnumber }));
        }
Example #10
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);
        }
Example #11
0
        private void btn_star_ClickAsync(object sender, EventArgs e)
        {
            //若有缺失用户直接指定 曾丽蓉


            string filepath = this.tb_filePath.Text;

            IExcelImporter Importer = new ExcelImporter();

            var result = Importer.Import <ExcelModel>(filepath);


            if (result.Result.Data == null)
            {
                MessageBox.Show("读取excel失败!");
                return;
            }


            List <ExcelModel> list = result.Result.Data.ToList();



            //TODO:  将excel 拆成5张表

            TASM_SUPPORT_Da daSupport = new TASM_SUPPORT_Da();

            daSupport.Db.BeginTran();   //事务开

            try
            {
                int i = 0;

                foreach (var item in list)
                {
                    i++;
                    logger.Info("===============导入开始==============" + i);
                    Log("===============导入开始==============" + i);


                    int          sid          = 0; //工单id
                    TASM_SUPPORT supportModel = new TASM_SUPPORT();

                    Log("No:" + i + "创建工单-开始");
                    if (!CreateSupport(daSupport, item, ref sid, ref supportModel))
                    {
                        daSupport.Db.RollbackTran();
                        logger.Info("===============导入失败====创建工单失败==========" + item.Content);
                        Log("No:" + i + "创建工单-失败");
                        continue;
                    }
                    Log("No:" + i + "创建工单-结束");



                    //判断是否有现场处理节点,
                    if (item.IsDisposerPoint.Trim() == "否" || string.IsNullOrWhiteSpace(item.IsDisposerPoint))
                    {
                        //没有的话,继续下一条
                        Log("===============导入结束=========没有Disposer节点=====" + i);
                        continue;
                    }



                    Log("No:" + i + "现场处理-开始");
                    if (!CreateDisposer(supportModel, item, sid))
                    {
                        daSupport.Db.RollbackTran();
                        logger.Info("===============导入失败====创建现场处理失败==========" + item.Content);
                        Log("No:" + i + "现场处理-失败");
                        continue;
                    }
                    Log("No:" + i + "现场处理-结束");



                    if (item.IsPmcPoint.Trim() == "否" || string.IsNullOrWhiteSpace(item.IsPmcPoint))
                    {
                        //没有的话,继续下一条
                        Log("===============导入结束=========没有Pmc节点=====" + i);
                        continue;
                    }

                    Log("No:" + i + "PMC处理-开始");

                    if (!CreatePmcOrder(supportModel, item, sid))
                    {
                        daSupport.Db.RollbackTran();
                        logger.Info("===============导入失败====PMC处理失败==========" + item.Content);
                        Log("No:" + i + "PMC处理失败-失败");
                        continue;
                    }

                    Log("No:" + i + "PMC处理-结束");


                    if (item.IsSitePoint == "否" || string.IsNullOrWhiteSpace(item.IsSitePoint))
                    {
                        //没有的话,继续下一条
                        Log("===============导入结束=========没有site节点=====" + i);
                        continue;
                    }


                    Log("No:" + i + "现场处理-开始");
                    if (!CreateSiteCheck(supportModel, item, sid))
                    {
                        daSupport.Db.RollbackTran();
                        logger.Info("===============导入失败====现场处理失败==========" + item.Content);
                        Log("No:" + i + "现场处理失败-失败");
                        continue;
                    }
                    Log("No:" + i + "现场处理-结束");



                    if (item.IsPrincipalPoint == "否" || string.IsNullOrWhiteSpace(item.IsPrincipalPoint))
                    {
                        Log("===============导入结束=========没有principal节点=====" + i);
                        continue;
                    }


                    if (!CreatePrincipal(supportModel, item, sid))
                    {
                        daSupport.Db.RollbackTran();
                        logger.Info("===============导入失败====审核失败==========" + item.Content);
                        Log("No:" + i + "审核处理失败-失败");
                        continue;
                    }



                    Log("===============导入结束==============" + i);
                    logger.Info("===============导入结束==============" + i);
                }
            }
            catch (Exception ex)
            {
                daSupport.Db.RollbackTran();
                logger.Info("程序异常,外层捕捉:" + ex);
            }
        }
Example #12
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);
            }
        }
Example #13
0
        /// <summary>
        /// 删除工单
        /// </summary>
        /// <param name="sid"></param>
        /// <returns></returns>
        public bool Delete(int sid)
        {
            TASM_SUPPORT_Da support = new TASM_SUPPORT_Da();

            support.Db.BeginTran();

            try
            {
                if (!support.CurrentDb.DeleteById(sid))
                {
                    support.Db.RollbackTran();
                    this.Msg = "删除工单主表失败";
                    Logger.LogInformation("删除工单主表失败!");
                    return(false);
                }


                TASM_SUPPORT_DISPOSER_Da disposer = new TASM_SUPPORT_DISPOSER_Da();

                if (disposer.Db.Queryable <TASM_SUPPORT_DISPOSER>().Where(s => s.SID == sid).Count() > 0)
                {
                    if (disposer.Db.Deleteable <TASM_SUPPORT_DISPOSER>().Where(s => s.SID == sid).ExecuteCommand() <= 0)
                    {
                        support.Db.RollbackTran();
                        this.Msg = "删除责任人处理失败";
                        Logger.LogInformation("删除责任人处理失败!");
                        return(false);
                    }
                }



                TASM_SUPPORT_PMC_Da pmc = new TASM_SUPPORT_PMC_Da();

                if (pmc.Db.Queryable <TASM_SUPPORT_PMC>().Where(s => s.SID == sid).Count() > 0)
                {
                    if (pmc.Db.Deleteable <TASM_SUPPORT_PMC>().Where(s => s.SID == sid).ExecuteCommand() <= 0)
                    {
                        support.Db.RollbackTran();
                        this.Msg = "售后内勤删除失败!";
                        Logger.LogInformation("售后内勤删除失败!");
                        return(false);
                    }
                }


                TASM_SUPPORT_SITE_Da site = new TASM_SUPPORT_SITE_Da();

                if (site.Db.Queryable <TASM_SUPPORT_SITE>().Where(s => s.SID == sid).Count() > 0)
                {
                    if (site.Db.Deleteable <TASM_SUPPORT_SITE>().Where(s => s.SID == sid).ExecuteCommand() <= 0)
                    {
                        support.Db.RollbackTran();
                        this.Msg = "删除现场信息失败!";
                        Logger.LogInformation("删除现场信息失败!");
                        return(false);
                    }
                }

                TASM_SUPPORT_PRINCIPAL_Da principal = new TASM_SUPPORT_PRINCIPAL_Da();

                if (principal.Db.Queryable <TASM_SUPPORT_PRINCIPAL>().Where(s => s.SID == sid).Count() > 0)
                {
                    if (principal.Db.Deleteable <TASM_SUPPORT_PRINCIPAL>().Where(s => s.SID == sid).ExecuteCommand() <= 0)
                    {
                        support.Db.RollbackTran();
                        this.Msg = "删除审核信息失败!";
                        Logger.LogInformation("删除审核信息失败!");
                        return(false);
                    }
                }



                TASM_SUPPORT_HIS_Da his = new TASM_SUPPORT_HIS_Da();

                if (his.Db.Queryable <TASM_SUPPORT_HIS>().Where(s => s.SID == sid).Count() > 0)
                {
                    if (his.Db.Deleteable <TASM_SUPPORT_HIS>().Where(s => s.SID == sid).ExecuteCommand() <= 0)
                    {
                        support.Db.RollbackTran();
                        this.Msg = "删除审核信息失败!";
                        Logger.LogInformation("删除审核信息失败!");
                        return(false);
                    }
                }



                TASM_SUPPORT_PERSONAL_Da personal = new TASM_SUPPORT_PERSONAL_Da();

                if (personal.Db.Queryable <TASM_SUPPORT_PERSONAL>().Where(s => s.SID == sid).Count() > 0)
                {
                    if (personal.Db.Deleteable <TASM_SUPPORT_PERSONAL>().Where(s => s.SID == sid).ExecuteCommand() <= 0)
                    {
                        support.Db.RollbackTran();
                        this.Msg = "删除审核信息失败!";
                        Logger.LogInformation("删除审核信息失败!");
                        return(false);
                    }
                }



                TASM_SUPPORT_PUSH_Da push = new TASM_SUPPORT_PUSH_Da();

                if (push.Db.Queryable <TASM_SUPPORT_PUSH>().Where(s => s.SID == sid).Count() > 0)
                {
                    if (push.Db.Deleteable <TASM_SUPPORT_PUSH>().Where(s => s.SID == sid).ExecuteCommand() <= 0)
                    {
                        support.Db.RollbackTran();
                        this.Msg = "删除审核信息失败!";
                        Logger.LogInformation("删除审核信息失败!");
                        return(false);
                    }
                }



                support.Db.CommitTran();
                return(true);
            }
            catch (Exception e)
            {
                Logger.LogInformation(e.ToString());
                support.Db.RollbackTran();
                return(false);
            }
        }
Example #14
0
        private void btn_star_Click(object sender, EventArgs e)
        {
            logger.Debug("Debug");
            logger.Info("Info");
            logger.Error("Error");
            logger.Warn("Warn");


            string filepath = this.tb_filePath.Text;

            IExcelImporter Importer = new ExcelImporter();

            var result = Importer.Import <ExcelModel>(filepath);


            if (result.Result.Data == null)
            {
                MessageBox.Show("读取excel失败!" + result.Result.Exception);
                return;
            }


            List <ExcelModel> list = result.Result.Data.ToList();


            int i = 0;

            foreach (var item in list)
            {
                TASM_SUPPORT_Da daSupport = new TASM_SUPPORT_Da();
                daSupport.Db.BeginTran();   //事务开

                i++;
                logger.Info("===============导入开始==============" + i);
                Log("===============导入开始==============" + i);


                int          sid          = 0; //工单id
                TASM_SUPPORT supportModel = new TASM_SUPPORT();

                Log("No:" + i + "创建工单-开始");
                if (!CreateSupport(daSupport, item, ref sid, ref supportModel))
                {
                    logger.Info("===============导入失败====创建工单失败==========" + item.Content);
                    Log("No:" + i + "创建工单-失败");
                    Log("===============导入失败====创建工单失败==========" + item.Content);
                    daSupport.Db.RollbackTran();
                    continue;
                }
                Log("No:" + i + "创建工单-结束 sid:" + sid);



                //判断是否有技术处理节点,
                if (item.IsDisposerPoint.Trim() == "否" || string.IsNullOrWhiteSpace(item.IsDisposerPoint))
                {
                    //没有的话,继续下一条
                    Log("===============导入结束=========没有Disposer节点=====" + i);
                    logger.Info("===============导入结束=========没有Disposer节点=====" + i);
                    daSupport.Db.CommitTran();
                    continue;
                }



                Log("No:" + i + "技术处理-开始");
                if (!CreateDisposer(supportModel, item, sid))
                {
                    logger.Info("===============导入失败====创建技术处理失败==========" + item.Content);
                    Log("No:" + i + "技术处理-失败");
                    Log("===============导入失败====创建技术处理失败==========" + item.Content);
                    daSupport.Db.RollbackTran();
                    continue;
                }
                Log("No:" + i + "技术处理-结束" + sid);



                //既没有PMC节点 也没有 site节点,则表示  没有PMC处理,也没有 现场处理,则该订单直接判断,审核环节也不要了, 直接下一条
                if ((item.IsPmcPoint.Trim() == "否" || string.IsNullOrWhiteSpace(item.IsPmcPoint)) && (item.IsSitePoint == "否" || string.IsNullOrWhiteSpace(item.IsSitePoint)))
                {
                    //没有的话,继续下一条
                    Log("===============导入结束=========没有Pmc节点=====" + i);
                    logger.Info("===============导入结束=========没有Pmc节点=====" + i);
                    daSupport.Db.CommitTran();
                    continue;
                }

                // 如果是有PMC 节点, 则插入PMC节点, 该情况可能发生,没有PMC节点,但是有site节点。所以 这里判断有PMC则插入,没有则还是要下去判断site节点。
                if (item.IsPmcPoint.Trim() == "是")
                {
                    Log("No:" + i + "PMC处理-开始");

                    if (!CreatePmcOrder(supportModel, item, sid))
                    {
                        logger.Info("===============导入失败====PMC处理失败==========" + item.Content);
                        Log("No:" + i + "PMC处理失败-失败");
                        Log("===============导入失败====PMC处理失败==========" + item.Content);
                        daSupport.Db.RollbackTran();
                        continue;
                    }

                    Log("No:" + i + "PMC处理-结束");
                }



                if (item.IsSitePoint == "否" || string.IsNullOrWhiteSpace(item.IsSitePoint))
                {
                    //没有的话,继续下一条
                    logger.Info("===============导入结束=========没有site节点=====" + i);
                    Log("===============导入结束=========没有site节点=====" + i);

                    daSupport.Db.CommitTran();
                    continue;
                }


                Log("No:" + i + "现场处理-开始");
                if (!CreateSiteCheck(supportModel, item, sid))
                {
                    logger.Info("===============导入失败====现场处理失败==========" + item.Content);

                    Log("No:" + i + "现场处理失败-失败");
                    Log("===============导入失败====现场处理失败==========" + item.Content);
                    daSupport.Db.RollbackTran();
                    continue;
                }
                Log("No:" + i + "现场处理-结束");



                if (item.IsPrincipalPoint == "否" || string.IsNullOrWhiteSpace(item.IsPrincipalPoint))
                {
                    logger.Info("===============导入结束=========没有principal节点=====" + i);
                    Log("===============导入结束=========没有principal节点=====" + i);
                    daSupport.Db.CommitTran();
                    continue;
                }


                if (!CreatePrincipal(supportModel, item, sid))
                {
                    logger.Info("===============导入失败====审核失败==========" + item.Content);
                    Log("No:" + i + "审核处理失败-失败");
                    Log("===============导入失败====审核失败==========" + item.Content);
                    daSupport.Db.RollbackTran();
                    continue;
                }

                daSupport.Db.CommitTran();

                Log("===============导入结束==============" + i);
                logger.Info("===============导入结束==============" + i);
            }
        }
Example #15
0
        public IActionResult SelectCount()
        {
            TASM_SUPPORT_Da da = new TASM_SUPPORT_Da();

            return(SuccessResult(da.SelectCount()));
        }
Example #16
0
        public bool Create(AddPmcCheckModel model)
        {
            TASM_SUPPORT_PMC_Da manager = new TASM_SUPPORT_PMC_Da();

            try
            {
                manager.Db.BeginTran();

                int pmcId = 0;
                //1,添加 PMC处理表数据
                if (!InsertPmc(model, manager, ref pmcId))
                {
                    this.Msg = "创建PMC处理信息失败!";
                    manager.Db.RollbackTran();
                    return(false);
                }



                TASM_SUPPORT_Da support_manager = new TASM_SUPPORT_Da();
                var             supportModel    = support_manager.CurrentDb.GetById(model.SID); //工单id 查询工单信息

                //2,当前处理人员发生修改,新增一条 修改记录 history
                if (!InsertHistory(model, manager, supportModel, pmcId, model.SUPPORTSTATUS, model.NEXTUSER))
                {
                    this.Msg = "创建操作历史失败!";
                    manager.Db.RollbackTran();
                    return(false);
                }



                //3,新的处理人员再新增一条 处理信息(顺序不能变) 取了工单处理人,为个人处理表的创建人,顺序不能变
                if (!InsertPersonal(supportModel.CONDUCTOR, model.NEXTUSER, model.SUPPORTSTATUS, model.SID))
                {
                    this.Msg = "分发工单失败!";
                    manager.Db.RollbackTran();
                    return(false);
                }


                //4,修改工单表的状态
                if (!UpdateSupport(supportModel, support_manager, model.NEXTUSER, model.SUPPORTSTATUS, pmcId))
                {
                    this.Msg = "修改工单信息失败!";
                    manager.Db.RollbackTran();
                    return(false);
                }


                //5,修改个人信息处理表
                if (!UpdatePersonal(model.PERSONALID))
                {
                    this.Msg = "修改个人处理状态失败!";
                    manager.Db.RollbackTran();
                    return(false);
                }



                //6,添加推送消息
                if (!InsertPush(model, pmcId))
                {
                    this.Msg = "修改个人处理状态失败!";
                    manager.Db.RollbackTran();
                    return(false);
                }

                //7,发送通知
                if (!PushMessage(model.SID, support_manager))
                {
                    Logger.LogInformation("推送消息失败");
                    manager.Db.RollbackTran();
                    return(false);
                }

                manager.Db.CommitTran();

                return(true);
            }
            catch (Exception e)
            {
                manager.Db.RollbackTran();
                return(false);
            }
        }