public DingDingKqUserOper(DdOperator _ddoper, DingDingKqContext _dkc, AttContext _ac) { DdOper = _ddoper; dpr = new DeptProvider(DdOper); Dkc = _dkc; Ac = _ac; }
public Form1() { InitializeComponent(); //ddoper.CorpId = "ding9936f1c1a7d506d9acaaa37764f94726"; //ddoper.CorpSecret = "FJi_OKqaRYt3t5s8Z5R7FtuflLyEGzZXD9yMfL2aSRZBTarrKs43Ub5oorVEEn5l"; ddoper.AgentID = ConfigHelper.AppSettings("AgentID"); ddoper.AppKey = ConfigHelper.AppSettings("AppKey"); ddoper.AppSecret = ConfigHelper.AppSettings("AppSecret"); dpr = new DeptProvider(ddoper); ddoper.SetDept(dpr.GetDepts()); ddcio = new DinDingCheckInOutOper(ddoper, dkc, new AttContext()); aro = new AttRecordOper(ddoper); ddcio.GetCheckInOutRecord = aro.GetCheckInOutRecord; }
/// <summary> /// 同步钉钉用户和部门 /// </summary> /// <param name="ddOper"></param> public static List <User> SyncUserDept(IDdOper ddOper) { SunginDataContext sc = new SunginDataContext(); DeptProvider dProvider = new DeptProvider(ddOper); List <User> uList = new List <User>(); List <Dept> depts = dProvider.GetDepts(); depts.ForEach(p => { var deptUserList = dProvider.GetDeptUserList(p.DeptID); deptUserList.ForEach(d => { d.DepartName = p.DeptName; var u = uList.SingleOrDefault(t => t.DdId == d.DdId); if (u == null) { uList.Add(d); } else { u.DepartName = u.DepartName + ',' + d.DepartName; } if (d.IsLeader) { p.DeptAdminDdId = d.DdId; } }); }); new DeptOper().SyncDepts(depts); new UserOper().SyncUsers(uList); UrOper uroper = new UrOper(); uList.ForEach(p => { uroper.AddDefalutUR(p); }); ddOper.SetDept(depts); return(uList); }