using Edu.Common.Enum.User; using Edu.Model.Entity.User; using Edu.Model.ViewModel.User; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; namespace Edu.Repository.User { /// /// 审批条件扩展 /// public partial class Rb_Workflow_ConditionRepository : BaseRepository { /// /// 根据模板id获取信息 /// /// /// public List GetConditionByTemplateId(int templateId) { return Get($"SELECT * from rb_workflow_condition c where c.TemplateId = {templateId}").ToList(); } /// /// 获取模版下默认审核条件 /// /// /// public List GetDefaultCondition(int TemplateId) { return Get($@"select c.*,t.TemplateType from Rb_Workflow_Condition c left join rb_workflow_template t on c.TemplateId=t.Id where c.Sort=0 and c.TemplateId={TemplateId}").ToList(); } /// /// 获取模版下分条件审核条件 /// /// /// public List GetOtherConditionList(int TemplateId) { return Get($@"select * from Rb_Workflow_Condition where Sort!=0 and TemplateId={TemplateId} order by Sort asc").ToList(); } /// /// 删除条件表下所有的审核人 抄送人 /// /// /// 事务对象 /// public int DelConditionAuditAndUser(int ConditionId,IDbTransaction trans) { string str = $@"DELETE rb_workflow_audituser from rb_workflow_audituser,rb_workflow_audit where rb_workflow_audituser.AuditId=rb_workflow_audit.Id and rb_workflow_audit.ConditionId={ConditionId} and rb_workflow_audituser.EmType=1;"; str += $@"DELETE from rb_workflow_audit where rb_workflow_audit.ConditionId={ConditionId};"; str += $@"DELETE from rb_workflow_AuditUser where rb_workflow_AuditUser.AuditId={ConditionId} and rb_workflow_audituser.EmType=2;"; return Execute(str, trans); } /// /// 删除分条件 /// /// /// public int DelOtherCondition(int ConditionId) { string str = $@"DELETE rb_workflow_audituser from rb_workflow_audituser,rb_workflow_audit where rb_workflow_audituser.AuditId=rb_workflow_audit.Id and rb_workflow_audit.ConditionId={ConditionId} and rb_workflow_audituser.EmType=1;"; str += $@"DELETE from rb_workflow_audit where rb_workflow_audit.ConditionId={ConditionId};"; str += $@"DELETE from rb_workflow_AuditUser where rb_workflow_AuditUser.AuditId={ConditionId} and rb_workflow_audituser.EmType=2;"; str += $@"DELETE from rb_workflow_condition where rb_workflow_condition.Id={ConditionId};"; return Execute(str); } /// /// 获取模版下最大的优先级 /// /// /// public int GetConditionSortMax(int TemplateId) { object val = ExecuteScalar($@" select Max(Sort) from rb_workflow_condition where TemplateId={TemplateId}"); if (val != null && val.ToString() != "") { return Convert.ToInt32(val); } else { return 0; } } /// /// 获取模版下最大的优先级 /// /// /// /// public int GetDefaultConditionDistinct(int TemplateId,int ConditionId) { string sql = $@" select count(*) from rb_workflow_condition where Sort=0 and TemplateId={TemplateId}"; if (ConditionId > 0) { sql= $@" select count(*) from rb_workflow_condition where Sort=0 and TemplateId={TemplateId} and Id!={ConditionId}"; } object val = ExecuteScalar(sql); if (val != null && val.ToString() != "") { return Convert.ToInt32(val); } else { return 0; } } } }