/// <summary> /// 列出指定用户的所有默认地址(一般来说,一个会员只有一个默认地址,以列表方式查询以防数据有问题) /// </summary> /// <param name="owner_id"></param> /// <param name="owner_type"></param> /// <returns></returns> public bool ListDefaultAddress(int owner_id, Address_Owner_Type owner_type) { string sql_condition = string.Format("{0}=:{0} and {1}=:{1} and {2}=1 AND {3}=0", Tnet_Shipping_Address._OWNER_ID, Tnet_Shipping_Address._OWNER_TYPE, Tnet_Shipping_Address._IS_DEFAULT, Tnet_Shipping_Address._IS_DEL); AddParameter(Tnet_Shipping_Address._OWNER_ID, owner_id); AddParameter(Tnet_Shipping_Address._OWNER_TYPE, owner_type); return(ListByCondition(sql_condition)); }
public void GetListTest() { int ownerId = 3999999; Address_Owner_Type ownerType = Address_Owner_Type.个人用户; ConsigneeProvider provider = new ConsigneeProvider(); List <Winner.Consignee.Entities.AddressInfo> list = provider.List(ownerId, ownerType); Assert.IsTrue(list != null && list.Count > 0); }
/// <summary> /// 将默认地址设置为非默认 /// </summary> /// <param name="owner_id"></param> /// <param name="owner_Type"></param> /// <param name="rowCount"></param> /// <returns></returns> public bool UpdateAllAddressNotDefault(int owner_id, Address_Owner_Type owner_Type, int rowCount) { string updateSql = "UPDATE TNET_SHIPPING_ADDRESS SET {0}=0 WHERE {1}=:{1} AND {2}=:{2} AND {0}=1"; updateSql = string.Format(updateSql, Tnet_Shipping_Address._IS_DEFAULT, Tnet_Shipping_Address._OWNER_ID, Tnet_Shipping_Address._OWNER_TYPE); AddParameter(Tnet_Shipping_Address._OWNER_ID, owner_id); AddParameter(Tnet_Shipping_Address._OWNER_TYPE, owner_Type); return(ExecuteNonQuery(updateSql) == rowCount); }
/// <summary> /// 获取指定的收货地址列表,分页使用 IChangePage /// </summary> /// <param name="ownerId">拥有者ID</param> /// <param name="ownerType">拥有者类型</param> /// <param name="includeDel">是否包含已删除的数据</param> /// <returns></returns> public List <AddressInfo> List(int ownerId, Address_Owner_Type ownerType, bool includeDel = false) { var daAddressCollection = new Vnet_Full_AddressCollection(); daAddressCollection.ChangePage = this.ChangePage; daAddressCollection.ListByOwnerId_OwnerType(ownerId, ownerType, includeDel); var list = MapProvider.Map <AddressInfo>(daAddressCollection.DataTable); return(list); }
public void CreateTest() { int ownerId = 3999999; Address_Owner_Type ownerType = Address_Owner_Type.个人用户; string address = "新安街道留仙一路高新奇科技园"; string consigneeName = "Jason"; string mobileno = "18600001111"; int regionId = 2334; ConsigneeProvider provider = new ConsigneeProvider(); bool res = provider.Create(ownerId, ownerType, false, address, consigneeName, mobileno, regionId); Assert.IsTrue(res); }
/// <summary> /// 查询指定拥有者的所有收货地址信息,默认地址排最前,按添加时间降序 /// </summary> /// <param name="ownerId">拥有者ID</param> /// <param name="ownerType">拥有者类型</param> /// <param name="includeDel">是否包含已删除的数据</param> /// <returns></returns> public bool ListByOwnerId_OwnerType(int ownerId, Address_Owner_Type ownerType, bool includeDel = false) { string sql = "SELECT * FROM VNET_FULL_ADDRESS WHERE OWNER_ID=:OWNERID AND OWNER_TYPE=:OWNERTYPE"; if (!includeDel) { sql += " AND IS_DEL=0"; } sql += " ORDER BY IS_DEFAULT DESC,CREATE_TIME DESC"; AddParameter("OWNERID", ownerId); AddParameter("OWNERTYPE", ownerType); return(ListBySql(sql)); }
/// <summary> /// 获取指定的默认收货地址(如会员没有默认地址,首选最近添加的地址) /// </summary> /// <param name="ownerId">拥有者ID</param> /// <param name="ownerType">拥有者类型</param> /// <returns></returns> public AddressInfo GetDefault(int ownerId, Address_Owner_Type ownerType) { List <AddressInfo> list = List(ownerId, ownerType); if (list == null || list.Count == 0) { return(null); } AddressInfo defaultAddress = list.Find(it => it.IsDefault == 1); if (defaultAddress == null) { defaultAddress = list[0]; } return(defaultAddress); }
/// <summary> /// 创建收货地址 /// </summary> /// <param name="ownerId">收货地址拥有者</param> /// <param name="ownerType">收货地址拥有者类型</param> /// <param name="isDefault">是否设置为默认地址</param> /// <param name="address">详细地址信息</param> /// <param name="consigneeName">收件人姓名</param> /// <param name="mobileno">收件人联系电话</param> /// <param name="regionId">城市行政区ID</param> /// <param name="postCode">邮政编码</param> /// <param name="tagName">收货地址标签,家,公司等等地址标签</param> /// <returns></returns> public bool Create(int ownerId, Address_Owner_Type ownerType, bool isDefault, string address, string consigneeName, string mobileno, int regionId, string postCode = null, string tagName = null) { ShippingAddress shippingAddress = new ShippingAddress { Is_Default = isDefault ? 1 : 0, Is_Del = 0, Owner_Id = ownerId, Owner_Type = ownerType, Tag_Name = tagName, Consignee = new ConsigneeInfo { Address = address, Consignee_Name = consigneeName, Mobile_No = mobileno, Region_Id = regionId, Post_Code = postCode, } }; return(Create(shippingAddress)); }