コード例 #1
0
        public bool EditTicketTmpl(sys_form_tmpl tmpl, sys_form_tmpl_ticket tmplTicket, List <UserDefinedFieldValue> udfValue, List <CheckListDto> checkList, long userId)
        {
            var user = UserInfoBLL.GetUserInfo(userId);
            sys_form_tmpl_ticket_dal sfttDal = new sys_form_tmpl_ticket_dal();
            var oldtmplTicket = sfttDal.FindNoDeleteById(tmplTicket.id);

            if (oldtmplTicket == null || user == null)
            {
                return(false);
            }
            if (!EditFormTmpl(tmpl, userId))
            {
                return(false);
            }
            tmplTicket.update_time    = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);
            tmplTicket.update_user_id = userId;
            sfttDal.Update(tmplTicket);
            OperLogBLL.OperLogUpdate <sys_form_tmpl_ticket>(tmplTicket, oldtmplTicket, tmplTicket.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET, "");

            var udf_ticket_list = new UserDefinedFieldsBLL().GetUdf(DicEnum.UDF_CATE.TICKETS);

            if (udf_ticket_list != null && udf_ticket_list.Count > 0)
            {
                new UserDefinedFieldsBLL().UpdateUdfValue(DicEnum.UDF_CATE.FORM_TICKET, udf_ticket_list, tmplTicket.id, udfValue, user, DicEnum.OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_EXT);
            }

            CheckManage(checkList, tmplTicket.id, userId);

            return(true);
        }
コード例 #2
0
        public void CheckManage(List <CheckListDto> ckList, long ticketId, long userId)
        {
            sys_form_tmpl_ticket_checklist_dal stcDal = new sys_form_tmpl_ticket_checklist_dal();
            var thisTicket = new sys_form_tmpl_ticket_dal().FindNoDeleteById(ticketId);

            if (thisTicket == null)
            {
                return;
            }
            var oldCheckList = stcDal.GetCheckByTicket(ticketId);
            var timeNow      = Tools.Date.DateHelper.ToUniversalTimeStamp(DateTime.Now);

            if (oldCheckList != null && oldCheckList.Count > 0)
            {
                if (ckList != null && ckList.Count > 0)
                {
                    var editList = ckList.Where(_ => _.ckId > 0).ToList();
                    var addList  = ckList.Where(_ => _.ckId < 0).ToList();
                    if (editList != null && editList.Count > 0)
                    {
                        foreach (var thisEnt in editList)
                        {
                            var oldThisEdit = oldCheckList.FirstOrDefault(_ => _.id == thisEnt.ckId);
                            var thisEdit    = stcDal.FindNoDeleteById(thisEnt.ckId);
                            if (oldThisEdit != null && thisEdit != null)
                            {
                                oldCheckList.Remove(oldThisEdit);
                                thisEdit.is_competed    = (sbyte)(thisEnt.isComplete ? 1 : 0);
                                thisEdit.is_important   = (sbyte)(thisEnt.isImport ? 1 : 0);
                                thisEdit.item_name      = thisEnt.itemName;
                                thisEdit.kb_article_id  = thisEnt.realKnowId;
                                thisEdit.sort_order     = thisEnt.sortOrder;
                                thisEdit.update_user_id = userId;
                                thisEdit.update_time    = timeNow;
                                stcDal.Update(thisEdit);
                                OperLogBLL.OperLogUpdate <sys_form_tmpl_ticket_checklist>(thisEdit, oldThisEdit, thisEdit.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_CHECKLIST, "");
                            }
                        }
                    }
                    if (addList != null && addList.Count > 0)
                    {
                        foreach (var thisEnt in addList)
                        {
                            var thisCheck = new sys_form_tmpl_ticket_checklist()
                            {
                                id                  = stcDal.GetNextIdCom(),
                                is_competed         = (sbyte)(thisEnt.isComplete ? 1 : 0),
                                is_important        = (sbyte)(thisEnt.isImport ? 1 : 0),
                                item_name           = thisEnt.itemName,
                                kb_article_id       = thisEnt.realKnowId,
                                update_user_id      = userId,
                                update_time         = timeNow,
                                create_time         = timeNow,
                                create_user_id      = userId,
                                form_tmpl_ticket_id = ticketId,
                                sort_order          = thisEnt.sortOrder,
                            };
                            stcDal.Insert(thisCheck);
                            OperLogBLL.OperLogAdd <sys_form_tmpl_ticket_checklist>(thisCheck, thisCheck.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_CHECKLIST, "");
                        }
                    }
                }
                if (oldCheckList.Count > 0)
                {
                    oldCheckList.ForEach(_ =>
                    {
                        stcDal.SoftDelete(_, userId);
                        OperLogBLL.OperLogDelete <sys_form_tmpl_ticket_checklist>(_, _.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_CHECKLIST, "");
                    });
                }
            }
            else
            {
                if (ckList != null && ckList.Count > 0)
                {
                    foreach (var thisEnt in ckList)
                    {
                        var thisCheck = new sys_form_tmpl_ticket_checklist()
                        {
                            id                  = stcDal.GetNextIdCom(),
                            is_competed         = (sbyte)(thisEnt.isComplete ? 1 : 0),
                            is_important        = (sbyte)(thisEnt.isImport ? 1 : 0),
                            item_name           = thisEnt.itemName,
                            kb_article_id       = thisEnt.realKnowId,
                            update_user_id      = userId,
                            update_time         = timeNow,
                            create_time         = timeNow,
                            create_user_id      = userId,
                            form_tmpl_ticket_id = ticketId,
                            sort_order          = thisEnt.sortOrder,
                        };
                        stcDal.Insert(thisCheck);
                        OperLogBLL.OperLogAdd <sys_form_tmpl_ticket_checklist>(thisCheck, thisCheck.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET_CHECKLIST, "");
                    }
                }
            }
        }