/// <summary> /// ��ȡ�û����� /// </summary> /// <param name="uid">�û�id</param> /// <returns>Ӱ������</returns> public XYECOM.Model.UserData GetItem(Int64 uid) { SqlParameter[] parm = new SqlParameter[] { new SqlParameter ("@strwhere"," where uid="+ uid), new SqlParameter ("@strTableName","xy_userdata"), new SqlParameter ("@strOrder","") }; Model.UserData info = null; using (SqlDataReader reader = XYECOM.Core.Data.SqlHelper.ExecuteReader(CommandType.StoredProcedure, "XYP_SelectByWhere", parm)) { if (reader.Read()) { info = new XYECOM.Model.UserData(); info.Id = XYECOM.Core.MyConvert.GetInt32(reader["id"].ToString()); info.Uid = XYECOM.Core.MyConvert.GetInt32(reader["uid"].ToString()); info.Companyids = reader["companyids"].ToString(); } } return info; }
/// <summary> /// �Ƿ���Բ鿴��ϵ��ʽ /// </summary> /// <param name="infoUserId">��Ϣ������Id</param> /// <param name="loginUserId">��ǰ��¼�û�Id</param> /// <param name="item">��ϵ��ʽ�����������ҳ�棩</param> /// <returns>�Ƿ���Բ鿴��ϵ��ʽ</returns> public static Model.ContactsControlRetrunValue IsViewContact(long infoUserId, long loginUserId, XYECOM.Model.ContactsControlItem item) { if (infoUserId <= 0) return XYECOM.Model.ContactsControlRetrunValue.CanNotSee; if (item == XYECOM.Model.ContactsControlItem.Null) return XYECOM.Model.ContactsControlRetrunValue.CanNotSee; if (infoUserId == loginUserId) return XYECOM.Model.ContactsControlRetrunValue.CanSee; XYECOM.Business.UserReg userRegBLL = new XYECOM.Business.UserReg(); XYECOM.Configuration.WebInfo webInfo = XYECOM.Configuration.WebInfo.Instance; //��ǰ��Ϣ�����ߵ�ע����Ϣ XYECOM.Model.UserRegInfo infoUserRegInfo = userRegBLL.GetItem(infoUserId); //��ǰ��¼�û���ע����Ϣ XYECOM.Model.UserRegInfo curLoginUserRegInfo = null; Model.ContactsControlRetrunValue returnValue = XYECOM.Model.ContactsControlRetrunValue.Null; bool isLogin = false; if (loginUserId > 0) { //��ǰ��¼�û���ע����Ϣ curLoginUserRegInfo = userRegBLL.GetItem(loginUserId); if (curLoginUserRegInfo != null) isLogin = true; } if (!isLogin) { if (webInfo.IsGuestLookLinkInfo) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee;//���Բ鿴 else returnValue = XYECOM.Model.ContactsControlRetrunValue.CanNotSee;//�����Բ鿴 } //��ǰ��Ϣ�����߲�Ϊ���ҵ�ǰ��¼�û�Ϊ��ҵ��Աʱ if (infoUserRegInfo != null) { //�����˶��ܲ鿴 switch (item) { case XYECOM.Model.ContactsControlItem.SellOffer: //��Ӧ if (infoUserRegInfo.GradePopedomInfo.SeeBySellOffer) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.BuyOffer: //�� if (infoUserRegInfo.GradePopedomInfo.SeeByBuyOffer) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.SellMachining: //�ṩ�ӹ� if (infoUserRegInfo.GradePopedomInfo.SeeBySellMachining) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.BuyMaching: //Ѱ��ӹ� if (infoUserRegInfo.GradePopedomInfo.SeeByBuyMachining) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.SellInvestment: //���� if (infoUserRegInfo.GradePopedomInfo.SeeBySellBusiness) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.BuyInvestment: //���� if (infoUserRegInfo.GradePopedomInfo.SeeByBuyBusiness) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.SellService: //�ṩ���� if (infoUserRegInfo.GradePopedomInfo.SeeBySellService) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.BuyService: // Ѱ����� if (infoUserRegInfo.GradePopedomInfo.SeeByBuyService) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.Brand: // Ʒ�� if (infoUserRegInfo.GradePopedomInfo.SeeByBrand) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.Company: // ��ҵ if (infoUserRegInfo.GradePopedomInfo.SeeByCompany) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; default: returnValue = XYECOM.Model.ContactsControlRetrunValue.CanNotSee; break; } } //�����ǰ�û��ѵ�¼��Ϊ���˻�Աʱ�����������ϵ��ʽ if (curLoginUserRegInfo != null && !curLoginUserRegInfo.Type) returnValue = XYECOM.Model.ContactsControlRetrunValue.PopedomTooLow; //��ǰ�û��ѵ�¼��Ϊ��ҵ��Ա������֮ǰ�жϽ��Ϊ���ܲ鿴��ϵ��ʽʱ�����ж� if (isLogin && curLoginUserRegInfo.Type && returnValue != XYECOM.Model.ContactsControlRetrunValue.CanSee) { if (curLoginUserRegInfo != null) { //loginuid = curLoginUserRegInfo.U_ID; //if (id == 0) uid = curLoginUserRegInfo.U_ID; returnValue = XYECOM.Model.ContactsControlRetrunValue.PopedomTooLow; switch (item) { case XYECOM.Model.ContactsControlItem.SellOffer: //��Ӧ if(curLoginUserRegInfo.GradePopedomInfo.UGP_IsSupplyLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.BuyOffer: //�� if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsBuyLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.SellMachining: //�ṩ�ӹ� if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsSupplyMachiningLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.BuyMaching: //Ѱ��ӹ� if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsBuyMachiningLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.SellInvestment: //���� if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsBuinessLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.BuyInvestment: //���� if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsSurrogateLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.SellService: //�ṩ���� if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsSupplyServerLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.BuyService: // Ѱ����� if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsBuyServerLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.Brand: // Ʒ�� if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsBrandLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.Job: // �˲� if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsJobLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; case XYECOM.Model.ContactsControlItem.Company: // ��ҵ if (curLoginUserRegInfo.GradePopedomInfo.UGP_IsCompanyLinkMathod) returnValue = XYECOM.Model.ContactsControlRetrunValue.CanSee; break; } } } //�жϿ��Բ鿴������ҵ���� if (isLogin && returnValue == XYECOM.Model.ContactsControlRetrunValue.CanSee && curLoginUserRegInfo.Type && !curLoginUserRegInfo.GradePopedomInfo.SeeContactsNum.Equals(0)) { if (returnValue == XYECOM.Model.ContactsControlRetrunValue.CanSee) { XYECOM.Business.UserData userdataBLL = new XYECOM.Business.UserData(); XYECOM.Model.UserData userdatainfo = new XYECOM.Model.UserData(); userdatainfo = userdataBLL.GetItem(loginUserId); if (userdatainfo == null) { XYECOM.Model.UserData udinfo = new XYECOM.Model.UserData(); udinfo.Uid = loginUserId; udinfo.Companyids = infoUserId + ","; userdataBLL.Insert(udinfo); } else { String[] ids = userdatainfo.Companyids.Split(','); String isHave = ""; for (int k = 0; k < (ids.Length - 1); k++) { if (ids[k].Equals(infoUserId.ToString())) { isHave = "1"; break; } } if (!isHave.Equals("1")) { XYECOM.Business.UserInfo infoBLL = new XYECOM.Business.UserInfo(); XYECOM.Model.UserInfo uinfo = new XYECOM.Model.UserInfo(); uinfo = infoBLL.GetItem(Convert.ToInt64(loginUserId)); int num = XYECOM.Business.UserGradePopedom.SeeContactsNum(uinfo.RegInfo.GradeId); if ((userdatainfo.Companyids.Split(',').Length) <= num) { userdatainfo.Uid = loginUserId; userdatainfo.Companyids = userdatainfo.Companyids + infoUserId + ","; userdataBLL.Insert(userdatainfo); } else { returnValue = XYECOM.Model.ContactsControlRetrunValue.PopedomTooLow; } } } } } return returnValue; }