address.js 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. /**
  2. * 地址模型
  3. */
  4. define(['base', '$', 'native', 'api', 'user', 'config'], function (base, $, native, api, user) {
  5. var Address = function () {
  6. if (typeof Address.instance === 'object') {
  7. return Address.instance;
  8. }
  9. Address.instance = this;
  10. this.storagePrefix = 'address_';
  11. this.list = [];
  12. this.defaultAddress = {};
  13. };
  14. Address.prototype = new base();
  15. //添加地址
  16. Address.prototype.addAddress = function (data, callback) {
  17. var that = this;
  18. api.addAddress(data, function (res) {
  19. // if (res.success) {
  20. // }
  21. if (typeof(callback) == 'function') {
  22. callback(res);
  23. }
  24. });
  25. };
  26. //获取列表
  27. Address.prototype.getList = function (data, callback) {
  28. var that = this;
  29. api.getAddressList(//获取地址列表
  30. data
  31. , function (res) {
  32. if (res.success) {
  33. that.list = res.data;
  34. that.defaultAddress = that.list[0];
  35. }
  36. if (typeof(callback) == 'function') {
  37. callback(res);
  38. }
  39. });
  40. };
  41. //编辑地址
  42. Address.prototype.editAddress = function (data, callback) {
  43. var that = this;
  44. api.editAddress(data, function (res) {
  45. if (res.success) {
  46. that.list = res.data;
  47. that.defaultAddress = that.list[0];
  48. }
  49. if (typeof(callback) == 'function') {
  50. callback(res);
  51. }
  52. });
  53. }
  54. //删除地址
  55. Address.prototype.deleteAddress = function (userId, addressId, callback) {
  56. var that = this;
  57. api.deleteAddress({
  58. address_id: addressId,
  59. user_id: userId,
  60. request_from: 'weixin'//请求微信
  61. }, function (res) {
  62. if (res.success) {
  63. that.list = res.data;
  64. that.defaultAddress = that.list[0];
  65. }
  66. if (typeof(callback) == 'function') {
  67. callback(res);
  68. }
  69. })
  70. }
  71. return new Address();
  72. })