public ActionResult CreateMenuQY(Senparc.Weixin.QY.GetMenuResultFull resultFull) { WC_OfficalAccountsModel model = account_BLL.GetCurrentAccount(); string token = model.AccessToken; try { QyJsonResult result = null; //普通接口 Senparc.Weixin.QY.Entities.Menu.ButtonGroup buttonGroup = Senparc.Weixin.QY.CommonAPIs.CommonApi.GetMenuFromJsonResult(resultFull).menu; result = Senparc.Weixin.QY.CommonAPIs.CommonApi.CreateMenu(token, Convert.ToInt32(model.OfficalId), buttonGroup); var json = new { Success = result.errmsg == "ok", Message = "菜单更新成功。普通自定义菜单接口" }; return(Json(json)); } catch (Exception ex) { var json = new { Success = false, Message = string.Format("更新失败:{0}。普通自定义菜单接口", ex.Message) }; return(Json(json)); } }
public static QyCallResult ToQyCallResult(this QyJsonResult result) { return(new QyCallResult() { Code = (int)result.errcode, CodeRemark = result.errcode.ToString(), Msg = result.errmsg }); }
public QyJsonResult WX_DelUser(string strUserName) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { Ret = MailListApi.DeleteMember(GetToken(), strUserName); } return(Ret); }
public QyJsonResult WX_DelMenu(int agentId) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { Ret = CommonApi.DeleteMenu(GetToken(agentId.ToString()), agentId); } return(Ret); }
public QyJsonResult WX_DelTag(int strBQCode) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { Ret = MailListApi.DeleteTag(GetToken(), strBQCode); } return(Ret); }
public QyJsonResult WX_CreateTag(JH_Auth_Role Model) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { Ret = MailListApi.CreateTag(GetToken(), Model.RoleName, Model.WXBQCode); } return(Ret); }
public QyJsonResult WX_DelBranch(string strDeptCode) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { Ret = MailListApi.DeleteDepartment(GetToken(), strDeptCode); } return(Ret); }
public QyJsonResult WX_GetDepartmentList() { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { Ret = MailListApi.GetDepartmentList(GetToken()); } return(Ret); }
public QyJsonResult WX_DelTagMember(int strBQCode, string[] userList) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { Ret = MailListApi.DelTagMember(GetToken(), strBQCode, userList); } return(Ret); }
public QyJsonResult WX_CreateMenu(int agentId, Senparc.Weixin.QY.Entities.Menu.ButtonGroup buttonData) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { Ret = CommonApi.CreateMenu(GetToken(agentId.ToString()), agentId, buttonData); } return(Ret); }
public QyJsonResult WX_GetDepartmentMember(int depid) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { Ret = MailListApi.GetDepartmentMember(GetToken(), depid, 1, 0); } return(Ret); }
public QyJsonResult WX_UpdateTag(JH_Auth_Role Model) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { int bqid = Int32.Parse(Model.WXBQCode.ToString()); Ret = MailListApi.UpdateTag(GetToken(), bqid, Model.RoleName); } return(Ret); }
public QyJsonResult WX_AddTagMember(JH_Auth_UserRole Model) { var role = new JH_Auth_RoleB().GetEntity(p => p.RoleCode == Model.RoleCode); QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { string[] userList = { Model.UserName }; int bqid = Int32.Parse(role.WXBQCode.ToString()); Ret = MailListApi.AddTagMember(GetToken(), bqid, userList, null); } return(Ret); }
public QyJsonResult WX_UpdateBranch(JH_Auth_Branch Model) { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { int pid = 0; var bm = new JH_Auth_BranchB().GetEntity(p => p.DeptCode == Model.DeptRoot && p.ComId == Model.ComId); if (bm != null) { pid = Int32.Parse(bm.WXBMCode.ToString()); } Ret = MailListApi.UpdateDepartment(GetToken(), Model.WXBMCode.ToString(), Model.DeptName, pid, Model.DeptShort); } return(Ret); }
public ActionResult UpdateUser(QyUserModel model) { #region 校验 var account = GetAccount(model.corpid); if (account == null) { LogWriter.Info(string.Format("corpid为“{0}”的GetUser获取失败,原因:企业号不存在", model.corpid)); return(Json(new { errorcode = "500", errormsg = "企业号不存在", })); } if (!ValidateAccessToken(account, model.accesstoken)) { LogWriter.Info(string.Format("corpid为“{0}”的GetUser获取失败,原因:accesstoken错误", model.corpid)); return(Json(new { errorcode = "500", errormsg = "非法访问", })); } #endregion #region 获取用户信息 var wxFO = Formula.FormulaHelper.CreateFO <WxFO>(); QyJsonResult userinfo = null; try { userinfo = wxFO.UpdateUser(model.corpid, model.userid, model.name, model.department, model.position, model.mobile, model.email, model.weixinid, model.enable, null, model.gender, model.avatar_mediaid, model.extattr); } catch (Exception ex) { return(Json(new { errorcode = "500", errormsg = ex.Message, })); } #endregion return(Json(userinfo)); }
public ActionResult UpdateDepartment(QyOrgModel model) { #region 校验 var account = GetAccount(model.corpid); if (account == null) { LogWriter.Info(string.Format("corpid为“{0}”的UpdateDepartment获取失败,原因:企业号不存在", model.corpid)); return(Json(new { errorcode = "500", errormsg = "企业号不存在", })); } if (!ValidateAccessToken(account, model.accesstoken)) { LogWriter.Info(string.Format("corpid为“{0}”的UpdateDepartment获取失败,原因:accesstoken错误", model.corpid)); return(Json(new { errorcode = "500", errormsg = "非法访问", })); } #endregion #region 获取用户信息 var wxFO = Formula.FormulaHelper.CreateFO <WxFO>(); QyJsonResult userinfo = null; try { userinfo = wxFO.UpdateDepartment(model.corpid, (model.id ?? -1).ToString(), model.name, model.parentid, model.order); } catch (Exception ex) { return(Json(new { errorcode = "500", errormsg = ex.Message, })); } #endregion return(Json(userinfo)); }
public ActionResult DeleteUser(QyUserModel model) { #region 校验 var account = GetAccount(model.corpid); if (account == null) { LogWriter.Info(string.Format("corpid为“{0}”的GetUser获取失败,原因:企业号不存在", model.corpid)); return(Json(new { errorcode = "500", errormsg = "企业号不存在", })); } if (!ValidateAccessToken(account, model.accesstoken)) { LogWriter.Info(string.Format("corpid为“{0}”的GetUser获取失败,原因:accesstoken错误", model.corpid)); return(Json(new { errorcode = "500", errormsg = "非法访问", })); } #endregion #region 获取用户信息 var wxFO = Formula.FormulaHelper.CreateFO <WxFO>(); QyJsonResult userinfo = null; try { userinfo = wxFO.DeleteUser(model.corpid, model.userid); } catch (Exception ex) { return(Json(new { errorcode = "500", errormsg = ex.Message, })); } #endregion return(Json(userinfo)); }
/// <summary> /// 删除成员 /// </summary> /// <param name="QyID">企业ID</param> /// <param name="userId">员工UserID。必须企业内唯一</param> /// <returns></returns> public QyJsonResult DeleteUser(string QyID, string userId) { QyJsonResult result = null; try { result = MailListApi.DeleteMember(GetAccessToken(QyID), userId); } catch (Exception ex) { LogWriter.Error(ex, string.Format("删除QyID为{0}的成员失败", QyID)); result = MailListApi.DeleteMember(GetAccessToken(QyID, true), userId); } if (result.errcode != ReturnCode_QY.请求成功) { LogWriter.Info(string.Format("删除QyID为{0}的成员失败,原因:{1}", QyID, result.errmsg)); } return(result); }
/// <summary> /// 更新组织 /// </summary> /// <param name="QyID">企业ID</param> /// <param name="id">部门id</param> /// <param name="name">更新的部门名称。长度限制为0~64个字符。修改部门名称时指定该参数</param> /// <param name="parentId">父亲部门id。根部门id为1 </param> /// <param name="order">在父部门中的次序。从1开始,数字越大排序越靠后</param> /// <returns></returns> public QyJsonResult UpdateDepartment(string QyID, string id, string name, int parentId, int order = 1) { QyJsonResult result = null; try { result = MailListApi.UpdateDepartment(GetAccessToken(QyID), id, name, parentId, order); } catch (Exception ex) { LogWriter.Error(ex, string.Format("更新QyID为{0}的部门失败", QyID)); result = MailListApi.UpdateDepartment(GetAccessToken(QyID, true), id, name, parentId, order); } if (result.errcode != ReturnCode_QY.请求成功) { LogWriter.Info(string.Format("更新QyID为{0}的部门失败,原因:{1}", QyID, result.errmsg)); } return(result); }
/// <summary> /// 更新成员 /// </summary> /// <param name="QyID">企业ID</param> /// <param name="userId">员工UserID。必须企业内唯一</param> /// <param name="name">成员名称。长度为1~64个字符</param> /// <param name="department">成员所属部门id列表。注意,每个部门的直属员工上限为1000个</param> /// <param name="position">职位信息。长度为0~64个字符</param> /// <param name="mobile">手机号码。必须企业内唯一</param> /// <param name="tel">办公电话。长度为0~64个字符</param> /// <param name="email">邮箱。长度为0~64个字符。必须企业内唯一</param> /// <param name="weixinId">微信号。必须企业内唯一</param> /// <returns></returns> public QyJsonResult UpdateUser(string QyID, string userId, string name, int[] department = null, string position = null, string mobile = null, string email = null, string weixinId = null, int enable = 1, string tel = null, int gender = 0, string avatarMediaid = null, Extattr extattr = null) { QyJsonResult result = null; try { result = MailListApi.UpdateMember(GetAccessToken(QyID), userId, name, department, position, mobile, email, weixinId, enable, tel, gender, avatarMediaid, extattr); } catch (Exception ex) { LogWriter.Error(ex, string.Format("更新QyID为{0}的成员失败", QyID)); result = MailListApi.UpdateMember(GetAccessToken(QyID, true), userId, name, department, position, mobile, email, weixinId, enable, tel, gender, avatarMediaid, extattr); } if (result.errcode != ReturnCode_QY.请求成功) { LogWriter.Info(string.Format("更新QyID为{0}的成员失败,原因:{1}", QyID, result.errmsg)); } return(result); }
public QyJsonResult WX_CreateUser(JH_Auth_User Model) { try { QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { int[] Branch = { new JH_Auth_BranchB().GetEntity(d => d.DeptCode == Model.BranchCode).WXBMCode.Value }; Ret = MailListApi.CreateMember(GetToken(), Model.UserName, Model.UserRealName, Branch, Model.zhiwu, Model.mobphone, Model.mailbox, Model.weixinnum); } return(Ret); } catch (Exception ex) { QyJsonResult Ret = new QyJsonResult(); new QJY.API.JH_Auth_LogB().Insert(new QJY.Data.JH_Auth_Log() { CRDate = DateTime.Now, LogContent = Model.UserName + "新增错误:" + ex.ToString() }); return(Ret); } }
public QyJsonResult WX_WxCreateMenuNew(int agentId, string ModelCode, ref List <Senparc.Weixin.QY.Entities.Menu.BaseButton> lm) { string strMenuURL = Qyinfo.WXUrl.TrimEnd('/') + "/View_Mobile/UI/UI_COMMON.html"; QyJsonResult Ret = new QyJsonResult(); if (Qyinfo.IsUseWX == "Y") { var list = new JH_Auth_CommonB().GetEntities(p => p.ModelCode == ModelCode && p.TopID == 0 && p.Type == "1").OrderBy(p => p.Sort); foreach (var l in list) { string url = string.Empty; string key = string.Empty; if (string.IsNullOrEmpty(l.MenuCode)) { url = strMenuURL + "?funcode=" + l.ModelCode + "&corpId=" + Qyinfo.corpId; key = l.ModelCode; } else { url = strMenuURL + "?funcode=" + l.ModelCode + "_" + l.MenuCode + "&corpId=" + Qyinfo.corpId; key = l.ModelCode + "_" + l.MenuCode; } var list1 = new JH_Auth_CommonB().GetEntities(p => p.ModelCode == ModelCode && p.TopID == l.ID && p.Type == "1").OrderBy(p => p.Sort); if (list1.Count() == 0) { lm.Add(GetButton(l.Type, l.MenuName, url, key)); } else { Senparc.Weixin.QY.Entities.Menu.SubButton scb = new Senparc.Weixin.QY.Entities.Menu.SubButton(); scb.name = l.MenuName; foreach (var l1 in list1) { string url1 = string.Empty; string key1 = string.Empty; if (string.IsNullOrEmpty(l1.MenuCode)) { url1 = strMenuURL + "?funcode=" + l1.ModelCode + "&corpId=" + Qyinfo.corpId; key1 = l1.ModelCode; } else { url1 = strMenuURL + "?funcode=" + l1.ModelCode + "_" + l1.MenuCode + "&corpId=" + Qyinfo.corpId; key1 = l1.ModelCode + "_" + l1.MenuCode; } switch (l1.Type) { case "1": //跳转URL Senparc.Weixin.QY.Entities.Menu.SingleViewButton svb = new Senparc.Weixin.QY.Entities.Menu.SingleViewButton(); svb.name = l1.MenuName; svb.type = "view"; svb.url = url1; scb.sub_button.Add(svb); break; case "2": //点击推事件 Senparc.Weixin.QY.Entities.Menu.SingleClickButton skb = new Senparc.Weixin.QY.Entities.Menu.SingleClickButton(); skb.name = l1.MenuName; skb.type = "click"; skb.key = key1; scb.sub_button.Add(skb); break; case "3": //扫码推事件 Senparc.Weixin.QY.Entities.Menu.SingleScancodePushButton spb = new Senparc.Weixin.QY.Entities.Menu.SingleScancodePushButton(); spb.name = l1.MenuName; spb.type = "scancode_push"; spb.key = key1; scb.sub_button.Add(spb); break; case "4": //扫码推事件且弹出“消息接收中”提示框 Senparc.Weixin.QY.Entities.Menu.SingleScancodeWaitmsgButton swb = new Senparc.Weixin.QY.Entities.Menu.SingleScancodeWaitmsgButton(); swb.name = l1.MenuName; swb.type = "scancode_waitmsg"; swb.key = key1; scb.sub_button.Add(swb); break; case "5": //弹出系统拍照发图 Senparc.Weixin.QY.Entities.Menu.SinglePicSysphotoButton ssb = new Senparc.Weixin.QY.Entities.Menu.SinglePicSysphotoButton(); ssb.name = l1.MenuName; ssb.type = "pic_sysphoto"; ssb.key = key1; scb.sub_button.Add(ssb); break; case "6": //弹出拍照或者相册发图 Senparc.Weixin.QY.Entities.Menu.SinglePicPhotoOrAlbumButton sab = new Senparc.Weixin.QY.Entities.Menu.SinglePicPhotoOrAlbumButton(); sab.name = l1.MenuName; sab.type = "pic_photo_or_album"; sab.key = key1; scb.sub_button.Add(sab); break; case "7": //弹出微信相册发图器 Senparc.Weixin.QY.Entities.Menu.SinglePicWeixinButton sxb = new Senparc.Weixin.QY.Entities.Menu.SinglePicWeixinButton(); sxb.name = l1.MenuName; sxb.type = "pic_weixin"; sxb.key = key1; scb.sub_button.Add(sxb); break; case "8": //弹出地理位置选择器 Senparc.Weixin.QY.Entities.Menu.SingleLocationSelectButton slb = new Senparc.Weixin.QY.Entities.Menu.SingleLocationSelectButton(); slb.name = l1.MenuName; slb.type = "location_select"; slb.key = key1; scb.sub_button.Add(slb); break; } } lm.Add(scb); } } if (lm.Count > 0) { Senparc.Weixin.QY.Entities.Menu.ButtonGroup buttonData = new Senparc.Weixin.QY.Entities.Menu.ButtonGroup(); buttonData.button = lm; //Ret = CommonApi.CreateMenu(accesstoken, agentId, buttonData); Ret = WX_CreateMenu(agentId, buttonData); } } return(Ret); }