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, ""); } } } }
/// <summary> /// 删除模板 /// </summary> public bool DeleteTmpl(long id, long userId) { var tmpl = _dal.FindNoDeleteById(id); if (tmpl == null) { return(true); } _dal.SoftDelete(tmpl, userId); OperLogBLL.OperLogDelete <sys_form_tmpl>(tmpl, tmpl.id, userId, OPER_LOG_OBJ_CATE.FROM, ""); if (tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.OPPORTUNITY) { var oppoTmp = GetOpportunityTmpl(tmpl.id); if (oppoTmp != null) { new sys_form_tmpl_opportunity_dal().SoftDelete(oppoTmp, userId); OperLogBLL.OperLogDelete <sys_form_tmpl_opportunity>(oppoTmp, oppoTmp.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_OPPORTUNITY, ""); } } else if (tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.PROJECT_NOTE || tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.TASK_NOTE || tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.TICKET_NOTE) { var noteTmp = GetNoteTmpl(tmpl.id); if (noteTmp != null) { new sys_form_tmpl_activity_dal().SoftDelete(noteTmp, userId); OperLogBLL.OperLogDelete <sys_form_tmpl_activity>(noteTmp, noteTmp.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_ACTIVITY, ""); } } else if (tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.QUICK_CALL) { var quickCallTmp = GetQuickCallTmpl(tmpl.id); if (quickCallTmp != null) { new sys_form_tmpl_quick_call_dal().SoftDelete(quickCallTmp, userId); OperLogBLL.OperLogDelete <sys_form_tmpl_quick_call>(quickCallTmp, quickCallTmp.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_QUICK_CALL, ""); } } else if (tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.QUOTE) { var quoteTmp = GetQuoteTmpl(tmpl.id); if (quoteTmp != null) { new sys_form_tmpl_quote_dal().SoftDelete(quoteTmp, userId); OperLogBLL.OperLogDelete <sys_form_tmpl_quote>(quoteTmp, quoteTmp.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_QUOTE, ""); } } else if (tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.RECURRING_TICKET) { var recTicketTmp = GetRecTicketTmpl(tmpl.id); if (recTicketTmp != null) { new sys_form_tmpl_recurring_ticket_dal().SoftDelete(recTicketTmp, userId); OperLogBLL.OperLogDelete <sys_form_tmpl_recurring_ticket>(recTicketTmp, recTicketTmp.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_RECURRING_TICKET, ""); } } else if (tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.SERVICE_CALL) { var callTmp = GetServiceCallTmpl(tmpl.id); if (callTmp != null) { new sys_form_tmpl_service_call_dal().SoftDelete(callTmp, userId); OperLogBLL.OperLogDelete <sys_form_tmpl_service_call>(callTmp, callTmp.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_SERVICE_CALL, ""); } } else if (tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.TASK_TIME_ENTRY || tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.TICKET_TIME_ENTRY) { var entryTmpl = GetWorkEntryTmpl(tmpl.id); if (entryTmpl != null) { new sys_form_tmpl_work_entry_dal().SoftDelete(entryTmpl, userId); OperLogBLL.OperLogDelete <sys_form_tmpl_work_entry>(entryTmpl, entryTmpl.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_WORK_ENTRY, ""); } } else if (tmpl.form_type_id == (int)DicEnum.FORM_TMPL_TYPE.TICKET) { var ticketTmpl = GetTicketTmpl(tmpl.id); if (ticketTmpl != null) { new sys_form_tmpl_ticket_dal().SoftDelete(ticketTmpl, userId); OperLogBLL.OperLogDelete <sys_form_tmpl_ticket>(ticketTmpl, ticketTmpl.id, userId, OPER_LOG_OBJ_CATE.SYS_FORM_TMPL_TICKET, ""); sys_form_tmpl_ticket_checklist_dal stcDal = new sys_form_tmpl_ticket_checklist_dal(); var oldCheckList = stcDal.GetCheckByTicket(ticketTmpl.id); 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, ""); }); } } } return(true); }