Esempio n. 1
0
        private bool InsertPmc(TASM_SUPPORT_PMC model, TASM_SUPPORT_PMC_Da manager, ref int pmcId)
        {
            model.CREATETIME = DateTime.Now;
            model.STATUS     = 0;

            pmcId = manager.Db.Insertable(model).ExecuteReturnIdentity();;
            return(pmcId > 0);
        }
Esempio n. 2
0
        private bool InsertHistory(TASM_SUPPORT_PMC model, TASM_SUPPORT_PMC_Da manager, TASM_SUPPORT supportModel, int pmcId, int supportStatus, int nextUser)
        {
            TASM_SUPPORT_HIS_Da his_manager = new TASM_SUPPORT_HIS_Da();
            TASM_SUPPORT_HIS    hisModel    = new TASM_SUPPORT_HIS();

            hisModel.CREATETIME = DateTime.Now;
            hisModel.PRE_USER   = supportModel.CONDUCTOR;
            hisModel.NEXT_USER  = nextUser;

            hisModel.SID        = model.SID;
            hisModel.REMARKS    = "PMC已处理,等待现场处理";
            hisModel.PRE_STATUS = supportModel.STATUS;

            hisModel.NEXT_STATUS = supportStatus;
            hisModel.TYPE        = (int)SupportHisType.PMC跟进;; //tasm_disposer表
            hisModel.TID         = pmcId;

            return(his_manager.CurrentDb.Insert(hisModel));
        }
Esempio n. 3
0
        public IActionResult PmcUpdate(HisPmcModel info)
        {
            TASM_SUPPORT_PMC_Da pmc = new TASM_SUPPORT_PMC_Da();

            TASM_SUPPORT_HIS_Da his = new TASM_SUPPORT_HIS_Da();

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

            pmc.Db.BeginTran();

            hisModel.NEXT_USER = int.Parse(info.NEXT_USER);

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

            TASM_SUPPORT_PMC model = new TASM_SUPPORT_PMC()
            {
                BOOKNO    = info.BOOKNO,
                CONSIGNEE = info.CONSIGNEE,
                ID        = info.TID,
                DELIVERY  = DateTime.Parse(info.DELIVERY),
                SENDDATE  = DateTime.Parse(info.SENDDATE),
                SENDNO    = info.SENDNO,
                REMARKS   = info.REMARKS
            };


            if (pmc.Db.Updateable(model).ExecuteCommand() < 1)
            {
                pmc.Db.RollbackTran();
                return(FailMessage());
            }

            pmc.Db.CommitTran();

            return(SuccessMessage());
        }
Esempio n. 4
0
        /// <summary>
        /// PMC处理
        /// </summary>
        /// <param name="supportModel"></param>
        /// <param name="item"></param>
        /// <param name="sid"></param>
        /// <returns></returns>
        private bool CreatePmcOrder(TASM_SUPPORT supportModel, ExcelModel item, int sid)
        {
            try
            {
                logger.Info("===创建PMC处理开始===!");
                DataAccess.TASM_SUPPORT_PMC_Da supportPmcOrder = new TASM_SUPPORT_PMC_Da();

                TASM_SUPPORT_PMC pmcModel = new TASM_SUPPORT_PMC();
                pmcModel.BOOKNO     = item.BookNo;
                pmcModel.DELIVERY   = ConventDateTime(item.Delivery);
                pmcModel.SENDDATE   = ConventDateTime(item.SendDate);
                pmcModel.SENDNO     = item.SendNo;
                pmcModel.CONSIGNEE  = item.Consignee;
                pmcModel.STATUS     = 0;
                pmcModel.CREATETIME = DateTime.Now;
                pmcModel.REMARKS    = "导入数据";

                int pmcid = supportPmcOrder.Db.Insertable(pmcModel).ExecuteReturnIdentity();

                logger.Info("插入PMC处理表,处理完成");


                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.CONDUCTOR; //上一处理人
                supportHisModel.NEXT_USER   = supportModel.CONDUCTOR; //下一处理人
                supportHisModel.PRE_STATUS  = 1;                      //上一状态,订单初始创建,为0
                supportHisModel.NEXT_STATUS = 2;                      //下一状态,订单初始创建 下一状态为 现场处理,状态0,此处创建订单不做为状态,默认创建 和 创建后未处理状态都是0
                supportHisModel.TYPE        = 2;                      //类型,也代表着是哪个表的数据 初始为0
                supportHisModel.TID         = pmcid;                  //数据id 根据type 那张表,看是哪一条数据。
                supportHisModel.REMARKS     = "PMC已处理,等待现场处理,导入数据";
                supportHisModel.CREATETIME  = DateTime.Now;
                supportHis.Db.Insertable(supportHisModel);
                logger.Info("插入历史表,PMC处理完成");



                TASM_SUPPORT_PERSONAL_Da supportPersonal = new TASM_SUPPORT_PERSONAL_Da();
                TASM_SUPPORT_PERSONAL    personalModel   = new TASM_SUPPORT_PERSONAL();

                personalModel.CID        = supportModel.CONDUCTOR;
                personalModel.DID        = supportModel.CONDUCTOR;
                personalModel.CREATETIME = DateTime.Now;
                personalModel.SID        = sid;
                personalModel.STATUS     = 2;
                personalModel.TID        = 2;
                personalModel.CREATETIME = DateTime.Now;
                personalModel.REMARKS    = "数据导入";

                supportPersonal.Db.Insertable(personalModel);

                logger.Info("插入个人处理表,PMC处理完成");



                logger.Info("===创建PMC处理结束===!");
                return(true);
            }
            catch (Exception ex)
            {
                logger.Error("创建Pmc失败" + ex);
                return(false);
            }
        }
Esempio n. 5
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);
            }
        }
Esempio n. 6
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);
            }
        }