|
@@ -2,878 +2,940 @@
|
|
|
* 商品模型
|
|
|
*/
|
|
|
define(['base', '$', 'api'], function (base, $, api) {
|
|
|
- var Product = function () {
|
|
|
- if (typeof Product.instance === 'object') {
|
|
|
- return Product.instance;
|
|
|
- }
|
|
|
- Product.instance = this;
|
|
|
- this.storagePrefix = 'product_';//存储前缀
|
|
|
- this.products = []; //产品
|
|
|
- this.productDic = {}; //商品对象
|
|
|
- this.extraProductDic = {}; //商品对象
|
|
|
- this.productGroup = { //商品分组
|
|
|
- 1: [], //洗澡-钟点工
|
|
|
- 2: [], //剪毛-除螨杀菌
|
|
|
- 3: [], //美容-深度清洁
|
|
|
- 4: [], //洁牙-住家保姆
|
|
|
- 5: [], //SPA-日常清洁
|
|
|
- 6: [], //训犬-育儿嫂
|
|
|
- 7: [], //断尾-月子套餐
|
|
|
- 8: [], //碳酸浴-金牌月嫂
|
|
|
- 9: [] //驱虫-催乳服务
|
|
|
- };
|
|
|
- this.extraProductGroup = { //商品分组
|
|
|
- 1: [], //洗澡-钟点工
|
|
|
- 2: [], //剪毛-除螨杀菌
|
|
|
- 3: [], //美容-深度清洁
|
|
|
- 4: [], //洁牙-住家保姆
|
|
|
- 5: [], //SPA-日常清洁
|
|
|
- 6: [], //训犬-育儿嫂
|
|
|
- 7: [], //断尾-月子套餐
|
|
|
- 8: [], //碳酸浴-金牌月嫂
|
|
|
- 9: [] //驱虫-催乳服务
|
|
|
- };
|
|
|
- this.precedence = 40; // 加急
|
|
|
- this.extraService = [];//额外的服务
|
|
|
- this.offDay = [];//休息日
|
|
|
-
|
|
|
- /* 我新加的 */
|
|
|
- this.list = [
|
|
|
- {
|
|
|
- id: '57e0dffc9f5160dd048b4568',
|
|
|
- name: '日常清洁',
|
|
|
- extra: [
|
|
|
- {
|
|
|
- price: 98,
|
|
|
- type: '一室一卫'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 118,
|
|
|
- type: '一室两卫'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 138,
|
|
|
- type: '两室两卫'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 158,
|
|
|
- type: '三室两卫'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 228,
|
|
|
- type: '四室三卫'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 298,
|
|
|
- type: '200-250平'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 398,
|
|
|
- type: '250-300平'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 498,
|
|
|
- type: '三层别墅'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 598,
|
|
|
- type: '四层别墅'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 2000,
|
|
|
- type: '其他'
|
|
|
- }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- id: '57e0e0189f5160dc048b4568',
|
|
|
- name: '深度清洁',
|
|
|
- extra: [
|
|
|
- {
|
|
|
- price: 388,
|
|
|
- type: '厨房清洁'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 288,
|
|
|
- type: '客厅清洁'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 188,
|
|
|
- type: '卧室清洁'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 188,
|
|
|
- type: '卫生间清洁'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 2000,
|
|
|
- type: '其他'
|
|
|
- }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- id: '57e0e0369f5160b1048b456b',
|
|
|
- name: '除螨杀菌',
|
|
|
- extra: [
|
|
|
- {
|
|
|
- price: 80,
|
|
|
- type: '儿童床'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 160,
|
|
|
- type: '整套布艺沙发'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 100,
|
|
|
- type: '布艺窗帘'
|
|
|
- },
|
|
|
- {
|
|
|
- price: 2000,
|
|
|
- type: '其他'
|
|
|
- }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- id: '57eb9a369f5160cc048b4794',
|
|
|
- name: '钟点工',
|
|
|
- price: 35
|
|
|
- }
|
|
|
- ];
|
|
|
- };
|
|
|
-
|
|
|
- Product.prototype = new base();
|
|
|
-
|
|
|
-
|
|
|
- //获得第一批
|
|
|
- Product.prototype.getGroupStep = function (type) {
|
|
|
- var steps = [];
|
|
|
-
|
|
|
- switch(type){
|
|
|
- case 1:
|
|
|
- steps = [
|
|
|
- '洗澡前全套12项健康检查',
|
|
|
- '家具遮挡、所有用具专业消毒',
|
|
|
- '毛发梳理、皮肤按摩、深层清洁',
|
|
|
- '毛发护理、吹风拉毛、修剪指甲',
|
|
|
- '耳道清洁、滴眼液、口腔护理(猫除外)',
|
|
|
- '挤肛门腺(猫除外)、剃脚底毛等(猫除外)',
|
|
|
- '加送指甲精磨,精油全身按摩',
|
|
|
- '结束后用具再次消毒、清洁环境'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 2:
|
|
|
- steps = [
|
|
|
- '洗澡前全套12项健康检查',
|
|
|
- '家具遮挡、所有用具专业消毒',
|
|
|
- '毛发梳理、皮肤按摩、深层清洁',
|
|
|
- '毛发护理、吹风拉毛、修剪指甲',
|
|
|
- '耳道清洁、滴眼液、口腔护理(猫除外)',
|
|
|
- '挤肛门腺(猫除外)、剃脚底毛等(猫除外)',
|
|
|
- '加送指甲精磨,精油全身按摩',
|
|
|
- '结束后再次用具消毒、清理环境卫生'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 3:
|
|
|
- steps = [
|
|
|
- '洗澡前全套12项健康检查',
|
|
|
- '家具遮挡、所有用具专业消毒',
|
|
|
- '毛发梳理、皮肤按摩、深层清洁',
|
|
|
- '毛发护理、吹风拉毛、修剪指甲',
|
|
|
- '耳道清洁、滴眼液、口腔护理(猫除外)',
|
|
|
- '挤肛门腺(猫除外)、剃脚底毛等(猫除外)',
|
|
|
- '加送指甲精磨,精油全身按摩',
|
|
|
- '结束后用具再次消毒、清洁环境'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 4:
|
|
|
- steps = [
|
|
|
- '准备工具,安抚爱宠',
|
|
|
- '清洁牙齿,去除软垢',
|
|
|
- '精华按摩,推牙结石',
|
|
|
- '全面清洁,注入精华',
|
|
|
- '打扫卫生,清洁环境'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 5:
|
|
|
- steps = [
|
|
|
- '安抚爱宠,检查皮屑、被毛',
|
|
|
- '梳理毛发,去除起球、打结',
|
|
|
- '全身涂抹,扶养泥糅合均匀',
|
|
|
- '温水冲洗,香波护理毛发',
|
|
|
- '吹干毛发,再次精心刷毛',
|
|
|
- '清洁环境,不留一根毛发'
|
|
|
- ];
|
|
|
- break;
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
-
|
|
|
- return steps;
|
|
|
- };
|
|
|
-
|
|
|
- //描述
|
|
|
- Product.prototype.getGroupDesc = function (type) {
|
|
|
- var descs = [];
|
|
|
- var notes = [];
|
|
|
- switch(type){
|
|
|
- case 1: // 洗澡-钟点工
|
|
|
- descs = [
|
|
|
- '1.疫苗未完成或完成一周内的幼犬猫不提供服务;',
|
|
|
- '2.怀孕、哺乳期间的犬猫不提供服务;',
|
|
|
- '3.高龄犬猫(10岁以上)不提供服务;',
|
|
|
- '4.具有强烈攻击性的犬猫不提供服务;',
|
|
|
- '5.10kg以上狗狗和8kg以上猫猫不提供服务。'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '若您家中有多只犬猫需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
- '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
- '狗狗开毛结超过20分钟以上,将按60元/小时收费。',
|
|
|
- '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 2: // 剃光-除螨杀菌
|
|
|
- descs = [
|
|
|
- '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
- '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
- '3.高龄犬(10岁以上)不提供服务;',
|
|
|
- '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
- '5.10kg以上狗狗不提供服务。'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
- '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
- '狗狗开毛结超过20分钟以上,将按60元/小时收费。',
|
|
|
- '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ]
|
|
|
- break;
|
|
|
- case 3: // 美容-深度清洁
|
|
|
- descs = [
|
|
|
- '1.疫苗未完成或完成一周内的幼犬猫不提供服务;',
|
|
|
- '2.怀孕、哺乳期间的犬猫不提供服务;',
|
|
|
- '3.高龄犬猫(10岁以上)不提供服务;',
|
|
|
- '4.具有强烈攻击性的犬猫不提供服务;',
|
|
|
- '5.10kg以上狗狗和8kg以上猫猫不提供服务。'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '若您家中有多只犬猫需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
- '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
- '狗狗开毛结超过20分钟以上,将按60元/小时收费。',
|
|
|
- '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 4: // 洁牙-住家保姆
|
|
|
- descs = [
|
|
|
- '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
- '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
- '3.高龄犬(10岁以上)不提供服务;',
|
|
|
- '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
- '5.10kg以上狗狗不提供服务;',
|
|
|
- '6.有严重牙病或牙齿松动的狗狗不提供服务。'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '根据狗狗饮食习惯、口腔卫生和牙齿状况的不同,建议每年做2~4次洁齿SPA。',
|
|
|
- '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
- '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
- '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 5: // SPA-日常清洁
|
|
|
- descs = [
|
|
|
- '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
- '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
- '3.高龄犬(10岁以上)不提供服务;',
|
|
|
- '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
- '5.10kg以上狗狗不提供服务;',
|
|
|
- '6.身上有皮肤病或伤口的狗狗不提供服务。'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
- '浴泥SPA和浴盐SPA为二选一项目,下单的时候请在备注栏写明您想预约的服务(如浴盐SPA),如未注明将以壹管家客服安排为准。',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
- '狗狗开毛结超过20分钟以上,将按60元/小时收费。',
|
|
|
- '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 6: // 训犬-育儿嫂
|
|
|
- descs = [
|
|
|
- '1.需提前一周预约;',
|
|
|
- '2.上门训犬的时间:两个小时左右;',
|
|
|
- '3.疫苗未完成或完成一周内的幼犬暂不提供服务;'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '上门服务后一周内,宠物主人可以寻求电话指导;',
|
|
|
- '不良行为不是一天就形成的,纠正需要时间,后续需要主人不断调教训练,壹管家不对狗狗的最终结果负责;',
|
|
|
- '如有特殊要求,提交订单时请在“备注”一栏填写 您的具体要求;',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额;',
|
|
|
- '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 7: // 断尾-月子套餐
|
|
|
- descs = [
|
|
|
- '1.本服务只限出生后3-7天的幼犬;',
|
|
|
- '2.服务前,主人须签订《断尾告知书》,告知服务人员需要留几节尾骨,方可进行下一步断尾服务;'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '由于个体差异较大,宠物断尾还是有一定风险性的,对于无法预见的意外情况,服务人员将及时处理,力争将风险降到最低限度;',
|
|
|
- '气门芯脱落后,宠物主人须及时通知壹管家客服,因宠物主人操作不当导致幼犬尾部发炎,本公司不承担任何责任;',
|
|
|
- '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求;',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额;',
|
|
|
- '请提前三天预约,预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 8: // 碳酸浴-金牌月嫂
|
|
|
- descs = [
|
|
|
- '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
- '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
- '3.高龄犬(10岁以上)不提供服务;',
|
|
|
- '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
- '5.10kg以上狗狗不提供服务;'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '受皮肤病困扰的狗狗,建议(每7-10天)进行一次碳酸浴疗程;',
|
|
|
- '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单;',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额;',
|
|
|
- '狗狗开毛结超过20分钟以上,将按60元/小时收取;',
|
|
|
- '请提前1天预约,预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 11: // 驱虫-催乳服务
|
|
|
- descs = [
|
|
|
- '1.疫苗未完成或完成一周内的幼犬猫不提供服务;',
|
|
|
- '2.怀孕、哺乳期间的犬猫不提供服务;',
|
|
|
- '3.高龄犬猫(10岁以上)不提供服务;',
|
|
|
- '4.具有强烈攻击性的犬猫不提供服务;',
|
|
|
- '5.10kg以上狗狗和8kg以上猫猫不提供服务。'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '若进行犬猫体外驱虫,请勿在用药前后48小时内清洗,并避免动物舔食。',
|
|
|
- '若您家中有多只犬猫需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
- '驱虫为附加服务项目,须选择一项主服务项目(洗澡、美容、剃光、SPA、洁牙),方可预约。',
|
|
|
- '一般在幼犬猫断奶后就应首次驱虫,幼犬猫最好每月驱虫1次,成年犬猫每3个月驱虫1次。',
|
|
|
- '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
- '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 12: // 药浴
|
|
|
- descs = [
|
|
|
- '1.疫苗未完成或完成一周内的幼犬猫不提供服务;',
|
|
|
- '2.怀孕、哺乳期间的犬猫不提供服务;',
|
|
|
- '3.高龄犬猫(10岁以上)不提供服务;',
|
|
|
- '4.具有强烈攻击性的犬猫不提供服务;',
|
|
|
- '5.10kg以上狗狗和8kg以上猫猫不提供服务。'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '若您家中有多只犬猫需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
- '药浴为附加服务项目,须选择一项主服务项目(洗澡、美容、剃光),方可预约。',
|
|
|
- '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
- '狗狗开毛结超过20分钟以上,将按60元/小时收取。',
|
|
|
- '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 13: // 染色
|
|
|
- descs = [
|
|
|
- '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
- '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
- '3.高龄犬(10岁以上)不提供服务;',
|
|
|
- '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
- '5.10kg以上狗狗不提供服务。'
|
|
|
- ];
|
|
|
- notes = [
|
|
|
- '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
- '一次性局部染色为附加服务项目,须选择一项主服务项目(洗澡、美容、剃光、SPA),方可预约。',
|
|
|
- '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
- '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
- '狗狗开毛结超过20分钟以上,将按60元/小时收取。',
|
|
|
- '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ var Product = function () {
|
|
|
+ if (typeof Product.instance === 'object') {
|
|
|
+ return Product.instance;
|
|
|
+ }
|
|
|
+ Product.instance = this;
|
|
|
+ this.storagePrefix = 'product_';//存储前缀
|
|
|
+ this.products = []; //产品
|
|
|
+ this.productDic = {}; //商品对象
|
|
|
+ this.extraProductDic = {}; //商品对象
|
|
|
+ this.productGroup = { //商品分组
|
|
|
+ 1: [], //洗澡-钟点工
|
|
|
+ 2: [], //剪毛-除螨杀菌
|
|
|
+ 3: [], //美容-深度清洁
|
|
|
+ 4: [], //洁牙-住家保姆
|
|
|
+ 5: [], //SPA-日常清洁
|
|
|
+ 6: [], //训犬-育儿嫂
|
|
|
+ 7: [], //断尾-月子套餐
|
|
|
+ 8: [], //碳酸浴-金牌月嫂
|
|
|
+ 9: [] //驱虫-催乳服务
|
|
|
+ };
|
|
|
+ this.extraProductGroup = { //商品分组
|
|
|
+ 1: [], //洗澡-钟点工
|
|
|
+ 2: [], //剪毛-除螨杀菌
|
|
|
+ 3: [], //美容-深度清洁
|
|
|
+ 4: [], //洁牙-住家保姆
|
|
|
+ 5: [], //SPA-日常清洁
|
|
|
+ 6: [], //训犬-育儿嫂
|
|
|
+ 7: [], //断尾-月子套餐
|
|
|
+ 8: [], //碳酸浴-金牌月嫂
|
|
|
+ 9: [] //驱虫-催乳服务
|
|
|
+ };
|
|
|
+ this.precedence = 40; // 加急
|
|
|
+ this.extraService = [];//额外的服务
|
|
|
+ this.offDay = [];//休息日
|
|
|
+
|
|
|
+ /* 我新加的 */
|
|
|
+ this.list = [
|
|
|
+ {
|
|
|
+ id: '57e0dffc9f5160dd048b4568',
|
|
|
+ name: '日常清洁',
|
|
|
+ desc: [
|
|
|
+ {
|
|
|
+ "type": 1,
|
|
|
+ "content": "http://odqeoyzxd.bkt.clouddn.com/image/image_rc.jpg"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "type": 2,
|
|
|
+ "content": "日常清洁"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ extra: [
|
|
|
+ {
|
|
|
+ price: 98,
|
|
|
+ type: '一室一卫'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 118,
|
|
|
+ type: '一室两卫'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 138,
|
|
|
+ type: '两室两卫'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 158,
|
|
|
+ type: '三室两卫'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 228,
|
|
|
+ type: '四室三卫'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 298,
|
|
|
+ type: '200-250平'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 398,
|
|
|
+ type: '250-300平'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 498,
|
|
|
+ type: '三层别墅'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 598,
|
|
|
+ type: '四层别墅'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 2000,
|
|
|
+ type: '其他'
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: '57e0e0189f5160dc048b4568',
|
|
|
+ name: '深度清洁',
|
|
|
+ desc: [
|
|
|
+ {
|
|
|
+ "type": 1,
|
|
|
+ "content": "http://odqeoyzxd.bkt.clouddn.com/image/image_cm.jpg"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "type": 2,
|
|
|
+ "content": "深度清洁"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ extra: [
|
|
|
+ {
|
|
|
+ price: 388,
|
|
|
+ type: '厨房清洁'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 288,
|
|
|
+ type: '客厅清洁'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 188,
|
|
|
+ type: '卧室清洁'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 188,
|
|
|
+ type: '卫生间清洁'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 2000,
|
|
|
+ type: '其他'
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: '57e0e0369f5160b1048b456b',
|
|
|
+ name: '除螨杀菌',
|
|
|
+ desc: [
|
|
|
+ {
|
|
|
+ "type": 1,
|
|
|
+ "content": "http://odqeoyzxd.bkt.clouddn.com/image/image_sj.jpg"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "type": 2,
|
|
|
+ "content": "除螨杀菌"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ extra: [
|
|
|
+ {
|
|
|
+ price: 80,
|
|
|
+ type: '儿童床'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 160,
|
|
|
+ type: '整套布艺沙发'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 100,
|
|
|
+ type: '布艺窗帘'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ price: 2000,
|
|
|
+ type: '其他'
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: '57eb9a369f5160cc048b4794',
|
|
|
+ name: '钟点工',
|
|
|
+ desc: [
|
|
|
+ {
|
|
|
+ "type": 1,
|
|
|
+ "content": "http://odqeoyzxd.bkt.clouddn.com/image/image_rc.jpg"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "type": 2,
|
|
|
+ "content": "日常清洁"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ price: 35
|
|
|
+ }
|
|
|
];
|
|
|
- break;
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
- return {
|
|
|
- descs: descs,
|
|
|
- notes: notes
|
|
|
};
|
|
|
- };
|
|
|
-
|
|
|
- //获得商品照片组
|
|
|
- Product.prototype.getGroupPics = function (type) {
|
|
|
- var imglists = [];
|
|
|
- switch(type){
|
|
|
- case 1:// 洗澡-钟点工
|
|
|
- imglists = [
|
|
|
- '20151030-1-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 2: // 剃光-除螨杀菌
|
|
|
- imglists = [
|
|
|
- '20151030-2-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 3:// 美容-深度清洁
|
|
|
- imglists = [
|
|
|
- '20151030-3-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 4:// 洁牙-住家保姆
|
|
|
- imglists = [
|
|
|
- '20151030-4-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 5:// SPA-日常清洁
|
|
|
- imglists = [
|
|
|
- '20151202-5-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 6:// 训犬-育儿嫂
|
|
|
- imglists = [
|
|
|
- '20151224-6-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 7:// 断尾-月子套餐
|
|
|
- imglists = [
|
|
|
- '20160106-7-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 8:// 碳酸浴-金牌月嫂
|
|
|
- imglists = [
|
|
|
- '20160111-8-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 11:// 驱虫-催乳服务
|
|
|
- imglists = [
|
|
|
- '20151030-6-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 12:
|
|
|
- imglists = [
|
|
|
- '20151030-7-1.jpg'
|
|
|
- ];
|
|
|
- break;
|
|
|
- case 13:
|
|
|
- imglists = [
|
|
|
- '20151030-8-1.jpg'
|
|
|
- ];
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
- return {
|
|
|
- imglists: imglists,
|
|
|
- url: 'http://wozhua-others.qiniudn.com'
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- //得到商品名称组
|
|
|
- Product.prototype.getGroupName = function (type) {
|
|
|
- var name = '';
|
|
|
-
|
|
|
- switch(type){
|
|
|
- case 1:
|
|
|
- name = '宠物洗澡';/*宠物洗澡*/
|
|
|
- break;
|
|
|
- case 2:
|
|
|
- name = '宠物剃光';/*宠物剃光*/
|
|
|
- break;
|
|
|
- case 3:
|
|
|
- name = '宠物美容';/*宠物美容*/
|
|
|
- break;
|
|
|
- case 4:
|
|
|
- name = '宠物洁牙';/*宠物洁牙*/
|
|
|
- break;
|
|
|
- case 5:
|
|
|
- name = '宠物SPA';/*宠物SPA*/
|
|
|
- break;
|
|
|
- case 6:
|
|
|
- name = '宠物训犬';/*宠物训犬*/
|
|
|
- break;
|
|
|
- case 7:
|
|
|
- name = '宠物断尾';/*宠物断尾*/
|
|
|
- break;
|
|
|
- case 8:
|
|
|
- name = '碳酸浴';/*碳酸浴*/
|
|
|
- break;
|
|
|
- case 11:
|
|
|
- name = '宠物驱虫';/*宠物驱虫*/
|
|
|
- break;
|
|
|
- case 12:
|
|
|
- name = '宠物药浴';/*宠物药浴*/
|
|
|
- break;
|
|
|
- case 13:
|
|
|
- name = '一次性局部染色';/*一次性局部染色*/
|
|
|
- break;
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
|
|
|
- return name;
|
|
|
- };
|
|
|
-
|
|
|
- //获得详细的组名
|
|
|
- Product.prototype.getGroupFullName = function (type) {
|
|
|
- var name = '';
|
|
|
-
|
|
|
- switch(type){
|
|
|
- case 1:
|
|
|
- name = '宠物洗澡';/*宠物洗澡*/
|
|
|
- break;
|
|
|
- case 2:
|
|
|
- name = '宠物剃光';/*宠物剃光*/
|
|
|
- break;
|
|
|
- case 3:
|
|
|
- name = '宠物美容(含洗澡)';/*宠物美容(含洗澡)*/
|
|
|
- break;
|
|
|
- case 4:
|
|
|
- name = '宠物洁牙';/*宠物洁牙*/
|
|
|
- break;
|
|
|
- case 5:
|
|
|
- name = 'SPA';/*SPA*/
|
|
|
- break;
|
|
|
- case 6:
|
|
|
- name = '训犬';/*训犬*/
|
|
|
- break;
|
|
|
- case 7:
|
|
|
- name = '断尾';/*断尾*/
|
|
|
- break;
|
|
|
- case 8:
|
|
|
- name = '碳酸浴';/*碳酸浴*/
|
|
|
- break;
|
|
|
- case 9:
|
|
|
- name = '助产';/*助产*/
|
|
|
- break;
|
|
|
- case 11:
|
|
|
- name = '宠物驱虫';/*宠物驱虫*/
|
|
|
- break;
|
|
|
- case 12:
|
|
|
- name = '宠物药浴';/*宠物药浴*/
|
|
|
- break;
|
|
|
- case 13:
|
|
|
- name = '宠物染色';/**/
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
+ Product.prototype = new base();
|
|
|
+
|
|
|
+
|
|
|
+ //获得第一批
|
|
|
+ Product.prototype.getGroupStep = function (type) {
|
|
|
+ var steps = [];
|
|
|
+
|
|
|
+ switch (type) {
|
|
|
+ case 1:
|
|
|
+ steps = [
|
|
|
+ '洗澡前全套12项健康检查',
|
|
|
+ '家具遮挡、所有用具专业消毒',
|
|
|
+ '毛发梳理、皮肤按摩、深层清洁',
|
|
|
+ '毛发护理、吹风拉毛、修剪指甲',
|
|
|
+ '耳道清洁、滴眼液、口腔护理(猫除外)',
|
|
|
+ '挤肛门腺(猫除外)、剃脚底毛等(猫除外)',
|
|
|
+ '加送指甲精磨,精油全身按摩',
|
|
|
+ '结束后用具再次消毒、清洁环境'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ steps = [
|
|
|
+ '洗澡前全套12项健康检查',
|
|
|
+ '家具遮挡、所有用具专业消毒',
|
|
|
+ '毛发梳理、皮肤按摩、深层清洁',
|
|
|
+ '毛发护理、吹风拉毛、修剪指甲',
|
|
|
+ '耳道清洁、滴眼液、口腔护理(猫除外)',
|
|
|
+ '挤肛门腺(猫除外)、剃脚底毛等(猫除外)',
|
|
|
+ '加送指甲精磨,精油全身按摩',
|
|
|
+ '结束后再次用具消毒、清理环境卫生'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ steps = [
|
|
|
+ '洗澡前全套12项健康检查',
|
|
|
+ '家具遮挡、所有用具专业消毒',
|
|
|
+ '毛发梳理、皮肤按摩、深层清洁',
|
|
|
+ '毛发护理、吹风拉毛、修剪指甲',
|
|
|
+ '耳道清洁、滴眼液、口腔护理(猫除外)',
|
|
|
+ '挤肛门腺(猫除外)、剃脚底毛等(猫除外)',
|
|
|
+ '加送指甲精磨,精油全身按摩',
|
|
|
+ '结束后用具再次消毒、清洁环境'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ steps = [
|
|
|
+ '准备工具,安抚爱宠',
|
|
|
+ '清洁牙齿,去除软垢',
|
|
|
+ '精华按摩,推牙结石',
|
|
|
+ '全面清洁,注入精华',
|
|
|
+ '打扫卫生,清洁环境'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ steps = [
|
|
|
+ '安抚爱宠,检查皮屑、被毛',
|
|
|
+ '梳理毛发,去除起球、打结',
|
|
|
+ '全身涂抹,扶养泥糅合均匀',
|
|
|
+ '温水冲洗,香波护理毛发',
|
|
|
+ '吹干毛发,再次精心刷毛',
|
|
|
+ '清洁环境,不留一根毛发'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
|
|
|
- return name;
|
|
|
- };
|
|
|
+ return steps;
|
|
|
+ };
|
|
|
|
|
|
- //获得产品称号
|
|
|
- Product.prototype.getProductTitle = function (type) {
|
|
|
- var title = {
|
|
|
- name: '',
|
|
|
- className: ''
|
|
|
- }
|
|
|
- switch(type) {
|
|
|
- case 1:
|
|
|
- title.name = '洗澡';
|
|
|
- title.className = 'pic-xizao'
|
|
|
- break;
|
|
|
- case 2:
|
|
|
- title.name = '剃光';
|
|
|
- title.className = 'pic-tiguang';
|
|
|
- break;
|
|
|
- case 3:
|
|
|
- title.name = '美容';
|
|
|
- title.className = 'pic-meirong';
|
|
|
- break;
|
|
|
- case 4:
|
|
|
- title.name = '洁牙';
|
|
|
- title.className = 'pic-jieya';
|
|
|
- break;
|
|
|
- case 5:
|
|
|
- title.name = 'SPA';
|
|
|
- title.className = 'pic-spa';
|
|
|
- break;
|
|
|
- case 6:
|
|
|
- title.name = '训犬';
|
|
|
- title.className = 'pic-xunquan';
|
|
|
- break;
|
|
|
- case 7:
|
|
|
- title.name = '断尾';
|
|
|
- title.className = 'pic-duanwei';
|
|
|
- break;
|
|
|
- case 8:
|
|
|
- title.name = '碳酸浴';
|
|
|
- title.className = 'pic-tansuanyu';
|
|
|
- break;
|
|
|
- case 9:
|
|
|
- title.name = '助产';
|
|
|
- title.className = 'pic-zhuchan';
|
|
|
- break;
|
|
|
- case 11:
|
|
|
- title.name = '驱虫';
|
|
|
- title.className = 'pic-quchong';
|
|
|
- break;
|
|
|
- case 12:
|
|
|
- title.name = '药浴';
|
|
|
- title.className = 'pic-yaoyu';
|
|
|
- break;
|
|
|
- case 13:
|
|
|
- title.name = '一次性局部染色';
|
|
|
- title.className = 'pic-ranse';
|
|
|
- break;
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
- return title;
|
|
|
- }
|
|
|
-
|
|
|
- //获得微信分享
|
|
|
- Product.prototype.getWXShare = function (type) {
|
|
|
- var title = {
|
|
|
- name: '',
|
|
|
- className: ''
|
|
|
- }
|
|
|
- switch(type) {
|
|
|
- case 1:
|
|
|
- title.name = '洗澡';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-xizao.jpg'
|
|
|
- break;
|
|
|
- case 2:
|
|
|
- title.name = '剃光';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-tiguang.jpg';
|
|
|
- break;
|
|
|
- case 3:
|
|
|
- title.name = '美容';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-meirong.jpg';
|
|
|
- break;
|
|
|
- case 4:
|
|
|
- title.name = '洁牙';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-jieya.jpg';
|
|
|
- break;
|
|
|
- case 5:
|
|
|
- title.name = 'SPA';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-spa.jpg';
|
|
|
- break;
|
|
|
- case 6:
|
|
|
- title.name = '训犬';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-xunquan.jpg';
|
|
|
- break;
|
|
|
- case 7:
|
|
|
- title.name = '断尾';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-duanwei.jpg';
|
|
|
- break;
|
|
|
- case 8:
|
|
|
- title.name = '碳酸浴';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-tansuanyu.jpg';
|
|
|
- break;
|
|
|
- case 9:
|
|
|
- title.name = '助产';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-zhuchan.jpg';
|
|
|
- break;
|
|
|
- case 11:
|
|
|
- title.name = '驱虫';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-quchong.jpg';
|
|
|
- break;
|
|
|
- case 12:
|
|
|
- title.name = '药浴';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-yaoyu.jpg';
|
|
|
- break;
|
|
|
- case 13:
|
|
|
- title.name = '染色';
|
|
|
- title.className = 'http://wozhua-others.qiniudn.com/icon-ranse.jpg';
|
|
|
- break;
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
- return title;
|
|
|
- }
|
|
|
-
|
|
|
- //获得产品列表
|
|
|
- Product.prototype.getProductList = function (type, petID) {
|
|
|
- var productList = [];
|
|
|
- if (this.productGroup.hasOwnProperty(type)) {//自己的属性
|
|
|
- var petList = this.productGroup[type];//产品组
|
|
|
- for (var i in petList) {//宠物列表
|
|
|
- var petInfo = petList[i];//宠物信息
|
|
|
- if (!petID || petInfo.id == petID) {//宠物ID
|
|
|
- for (var j in petInfo.products) {
|
|
|
- if ($.inArray(petInfo.products[j], productList) == -1) {
|
|
|
- productList.push(petInfo.products[j]);//产品列表
|
|
|
- }
|
|
|
- }
|
|
|
- if (petID) {
|
|
|
- break;
|
|
|
- }
|
|
|
+ //描述
|
|
|
+ Product.prototype.getGroupDesc = function (type) {
|
|
|
+ var descs = [];
|
|
|
+ var notes = [];
|
|
|
+ switch (type) {
|
|
|
+ case 1: // 洗澡-钟点工
|
|
|
+ descs = [
|
|
|
+ '1.疫苗未完成或完成一周内的幼犬猫不提供服务;',
|
|
|
+ '2.怀孕、哺乳期间的犬猫不提供服务;',
|
|
|
+ '3.高龄犬猫(10岁以上)不提供服务;',
|
|
|
+ '4.具有强烈攻击性的犬猫不提供服务;',
|
|
|
+ '5.10kg以上狗狗和8kg以上猫猫不提供服务。'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '若您家中有多只犬猫需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
+ '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
+ '狗狗开毛结超过20分钟以上,将按60元/小时收费。',
|
|
|
+ '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 2: // 剃光-除螨杀菌
|
|
|
+ descs = [
|
|
|
+ '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
+ '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
+ '3.高龄犬(10岁以上)不提供服务;',
|
|
|
+ '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
+ '5.10kg以上狗狗不提供服务。'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
+ '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
+ '狗狗开毛结超过20分钟以上,将按60元/小时收费。',
|
|
|
+ '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ]
|
|
|
+ break;
|
|
|
+ case 3: // 美容-深度清洁
|
|
|
+ descs = [
|
|
|
+ '1.疫苗未完成或完成一周内的幼犬猫不提供服务;',
|
|
|
+ '2.怀孕、哺乳期间的犬猫不提供服务;',
|
|
|
+ '3.高龄犬猫(10岁以上)不提供服务;',
|
|
|
+ '4.具有强烈攻击性的犬猫不提供服务;',
|
|
|
+ '5.10kg以上狗狗和8kg以上猫猫不提供服务。'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '若您家中有多只犬猫需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
+ '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
+ '狗狗开毛结超过20分钟以上,将按60元/小时收费。',
|
|
|
+ '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 4: // 洁牙-住家保姆
|
|
|
+ descs = [
|
|
|
+ '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
+ '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
+ '3.高龄犬(10岁以上)不提供服务;',
|
|
|
+ '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
+ '5.10kg以上狗狗不提供服务;',
|
|
|
+ '6.有严重牙病或牙齿松动的狗狗不提供服务。'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '根据狗狗饮食习惯、口腔卫生和牙齿状况的不同,建议每年做2~4次洁齿SPA。',
|
|
|
+ '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
+ '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
+ '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 5: // SPA-日常清洁
|
|
|
+ descs = [
|
|
|
+ '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
+ '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
+ '3.高龄犬(10岁以上)不提供服务;',
|
|
|
+ '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
+ '5.10kg以上狗狗不提供服务;',
|
|
|
+ '6.身上有皮肤病或伤口的狗狗不提供服务。'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
+ '浴泥SPA和浴盐SPA为二选一项目,下单的时候请在备注栏写明您想预约的服务(如浴盐SPA),如未注明将以壹管家客服安排为准。',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
+ '狗狗开毛结超过20分钟以上,将按60元/小时收费。',
|
|
|
+ '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 6: // 训犬-育儿嫂
|
|
|
+ descs = [
|
|
|
+ '1.需提前一周预约;',
|
|
|
+ '2.上门训犬的时间:两个小时左右;',
|
|
|
+ '3.疫苗未完成或完成一周内的幼犬暂不提供服务;'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '上门服务后一周内,宠物主人可以寻求电话指导;',
|
|
|
+ '不良行为不是一天就形成的,纠正需要时间,后续需要主人不断调教训练,壹管家不对狗狗的最终结果负责;',
|
|
|
+ '如有特殊要求,提交订单时请在“备注”一栏填写 您的具体要求;',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额;',
|
|
|
+ '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 7: // 断尾-月子套餐
|
|
|
+ descs = [
|
|
|
+ '1.本服务只限出生后3-7天的幼犬;',
|
|
|
+ '2.服务前,主人须签订《断尾告知书》,告知服务人员需要留几节尾骨,方可进行下一步断尾服务;'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '由于个体差异较大,宠物断尾还是有一定风险性的,对于无法预见的意外情况,服务人员将及时处理,力争将风险降到最低限度;',
|
|
|
+ '气门芯脱落后,宠物主人须及时通知壹管家客服,因宠物主人操作不当导致幼犬尾部发炎,本公司不承担任何责任;',
|
|
|
+ '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求;',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额;',
|
|
|
+ '请提前三天预约,预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 8: // 碳酸浴-金牌月嫂
|
|
|
+ descs = [
|
|
|
+ '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
+ '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
+ '3.高龄犬(10岁以上)不提供服务;',
|
|
|
+ '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
+ '5.10kg以上狗狗不提供服务;'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '受皮肤病困扰的狗狗,建议(每7-10天)进行一次碳酸浴疗程;',
|
|
|
+ '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单;',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额;',
|
|
|
+ '狗狗开毛结超过20分钟以上,将按60元/小时收取;',
|
|
|
+ '请提前1天预约,预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 11: // 驱虫-催乳服务
|
|
|
+ descs = [
|
|
|
+ '1.疫苗未完成或完成一周内的幼犬猫不提供服务;',
|
|
|
+ '2.怀孕、哺乳期间的犬猫不提供服务;',
|
|
|
+ '3.高龄犬猫(10岁以上)不提供服务;',
|
|
|
+ '4.具有强烈攻击性的犬猫不提供服务;',
|
|
|
+ '5.10kg以上狗狗和8kg以上猫猫不提供服务。'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '若进行犬猫体外驱虫,请勿在用药前后48小时内清洗,并避免动物舔食。',
|
|
|
+ '若您家中有多只犬猫需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
+ '驱虫为附加服务项目,须选择一项主服务项目(洗澡、美容、剃光、SPA、洁牙),方可预约。',
|
|
|
+ '一般在幼犬猫断奶后就应首次驱虫,幼犬猫最好每月驱虫1次,成年犬猫每3个月驱虫1次。',
|
|
|
+ '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
+ '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 12: // 药浴
|
|
|
+ descs = [
|
|
|
+ '1.疫苗未完成或完成一周内的幼犬猫不提供服务;',
|
|
|
+ '2.怀孕、哺乳期间的犬猫不提供服务;',
|
|
|
+ '3.高龄犬猫(10岁以上)不提供服务;',
|
|
|
+ '4.具有强烈攻击性的犬猫不提供服务;',
|
|
|
+ '5.10kg以上狗狗和8kg以上猫猫不提供服务。'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '若您家中有多只犬猫需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
+ '药浴为附加服务项目,须选择一项主服务项目(洗澡、美容、剃光),方可预约。',
|
|
|
+ '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
+ '狗狗开毛结超过20分钟以上,将按60元/小时收取。',
|
|
|
+ '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 13: // 染色
|
|
|
+ descs = [
|
|
|
+ '1.疫苗未完成或完成一周内的幼犬不提供服务;',
|
|
|
+ '2.怀孕、哺乳期间的母犬不提供服务;',
|
|
|
+ '3.高龄犬(10岁以上)不提供服务;',
|
|
|
+ '4.具有强烈攻击性的狗狗不提供服务;',
|
|
|
+ '5.10kg以上狗狗不提供服务。'
|
|
|
+ ];
|
|
|
+ notes = [
|
|
|
+ '若您家中有多只狗狗需要同时预约的话,请您选择相应的宠物类型和服务时间分别下单。',
|
|
|
+ '一次性局部染色为附加服务项目,须选择一项主服务项目(洗澡、美容、剃光、SPA),方可预约。',
|
|
|
+ '如有特殊要求,提交订单时请在“备注”一栏填写您的具体要求。',
|
|
|
+ '预约时间两小时内取消订单或宠物具有攻击性无法正常服务的,将扣除50%订单金额。',
|
|
|
+ '狗狗开毛结超过20分钟以上,将按60元/小时收取。',
|
|
|
+ '预约时间仅供参考,具体上门时间请以壹管家客服安排为准。'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
}
|
|
|
- }
|
|
|
- }
|
|
|
- return productList;
|
|
|
- };
|
|
|
-
|
|
|
-
|
|
|
- //宠物名字
|
|
|
- Product.prototype.getPetName = function (type, petID) {
|
|
|
- var petName = '';
|
|
|
- if (this.productGroup.hasOwnProperty(type)) {//产品组自己的属性为 TYEP
|
|
|
- var petList = this.productGroup[type];
|
|
|
- for (var i in petList) {//宠物列表
|
|
|
- var petInfo = petList[i];
|
|
|
- if (petInfo.id == petID) {//判断ID一致赋予宠物名字
|
|
|
- petName = petInfo['name'];
|
|
|
- break;
|
|
|
+ return {
|
|
|
+ descs: descs,
|
|
|
+ notes: notes
|
|
|
+ };
|
|
|
+ };
|
|
|
+
|
|
|
+ //获得商品照片组
|
|
|
+ Product.prototype.getGroupPics = function (type) {
|
|
|
+ var imglists = [];
|
|
|
+ switch (type) {
|
|
|
+ case 1:// 洗澡-钟点工
|
|
|
+ imglists = [
|
|
|
+ '20151030-1-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 2: // 剃光-除螨杀菌
|
|
|
+ imglists = [
|
|
|
+ '20151030-2-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 3:// 美容-深度清洁
|
|
|
+ imglists = [
|
|
|
+ '20151030-3-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 4:// 洁牙-住家保姆
|
|
|
+ imglists = [
|
|
|
+ '20151030-4-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 5:// SPA-日常清洁
|
|
|
+ imglists = [
|
|
|
+ '20151202-5-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 6:// 训犬-育儿嫂
|
|
|
+ imglists = [
|
|
|
+ '20151224-6-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 7:// 断尾-月子套餐
|
|
|
+ imglists = [
|
|
|
+ '20160106-7-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 8:// 碳酸浴-金牌月嫂
|
|
|
+ imglists = [
|
|
|
+ '20160111-8-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 11:// 驱虫-催乳服务
|
|
|
+ imglists = [
|
|
|
+ '20151030-6-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 12:
|
|
|
+ imglists = [
|
|
|
+ '20151030-7-1.jpg'
|
|
|
+ ];
|
|
|
+ break;
|
|
|
+ case 13:
|
|
|
+ imglists = [
|
|
|
+ '20151030-8-1.jpg'
|
|
|
+ ];
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return {
|
|
|
+ imglists: imglists,
|
|
|
+ url: 'http://wozhua-others.qiniudn.com'
|
|
|
}
|
|
|
- }
|
|
|
}
|
|
|
- return petName;
|
|
|
- };
|
|
|
|
|
|
+ //得到商品名称组
|
|
|
+ Product.prototype.getGroupName = function (type) {
|
|
|
+ var name = '';
|
|
|
+
|
|
|
+ switch (type) {
|
|
|
+ case 1:
|
|
|
+ name = '宠物洗澡';
|
|
|
+ /*宠物洗澡*/
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ name = '宠物剃光';
|
|
|
+ /*宠物剃光*/
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ name = '宠物美容';
|
|
|
+ /*宠物美容*/
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ name = '宠物洁牙';
|
|
|
+ /*宠物洁牙*/
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ name = '宠物SPA';
|
|
|
+ /*宠物SPA*/
|
|
|
+ break;
|
|
|
+ case 6:
|
|
|
+ name = '宠物训犬';
|
|
|
+ /*宠物训犬*/
|
|
|
+ break;
|
|
|
+ case 7:
|
|
|
+ name = '宠物断尾';
|
|
|
+ /*宠物断尾*/
|
|
|
+ break;
|
|
|
+ case 8:
|
|
|
+ name = '碳酸浴';
|
|
|
+ /*碳酸浴*/
|
|
|
+ break;
|
|
|
+ case 11:
|
|
|
+ name = '宠物驱虫';
|
|
|
+ /*宠物驱虫*/
|
|
|
+ break;
|
|
|
+ case 12:
|
|
|
+ name = '宠物药浴';
|
|
|
+ /*宠物药浴*/
|
|
|
+ break;
|
|
|
+ case 13:
|
|
|
+ name = '一次性局部染色';
|
|
|
+ /*一次性局部染色*/
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
|
|
|
+ return name;
|
|
|
+ };
|
|
|
|
|
|
- Product.prototype.getProductPrice = function (productID) {
|
|
|
- var productInfo = this.productDic[productID];//产品中心
|
|
|
- if (!productInfo) {
|
|
|
- return '';
|
|
|
- } else {
|
|
|
- return productInfo.price + '元';//产品价格
|
|
|
- }
|
|
|
- };
|
|
|
-
|
|
|
- //获得宠物服务类型
|
|
|
- //productType-产品类型
|
|
|
- Product.prototype.getPetServiceType = function (productType, productID) {
|
|
|
- var petServiceType = '';
|
|
|
- this.productGroup[productType].forEach(function(e) {//遍历函数
|
|
|
- if (e.id == productID) {//id一致则将服务类型赋值给petServiceType
|
|
|
- petServiceType = e.service_type
|
|
|
- }
|
|
|
- });
|
|
|
- return petServiceType;
|
|
|
- };
|
|
|
-
|
|
|
- //获得额外的服务类型
|
|
|
- //checkedName - 检查名称
|
|
|
- Product.prototype.getExtraServiceList = function (type, petName, checkedName) {
|
|
|
- var extraServiceTmp = [];
|
|
|
- var extraServiceList = this.extraProductGroup[type];//额外额产品组
|
|
|
- for(var i in extraServiceList) {
|
|
|
- if (extraServiceList[i].pet_types[0].name == petName) {//pet_types 宠物类型
|
|
|
- var seleted = false;
|
|
|
- if (extraServiceList[i].name == checkedName) {//如果额外的服务类型与检查的一致
|
|
|
- seleted = true;
|
|
|
+ //获得详细的组名
|
|
|
+ Product.prototype.getGroupFullName = function (type) {
|
|
|
+ var name = '';
|
|
|
+
|
|
|
+ switch (type) {
|
|
|
+ case 1:
|
|
|
+ name = '宠物洗澡';
|
|
|
+ /*宠物洗澡*/
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ name = '宠物剃光';
|
|
|
+ /*宠物剃光*/
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ name = '宠物美容(含洗澡)';
|
|
|
+ /*宠物美容(含洗澡)*/
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ name = '宠物洁牙';
|
|
|
+ /*宠物洁牙*/
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ name = 'SPA';
|
|
|
+ /*SPA*/
|
|
|
+ break;
|
|
|
+ case 6:
|
|
|
+ name = '训犬';
|
|
|
+ /*训犬*/
|
|
|
+ break;
|
|
|
+ case 7:
|
|
|
+ name = '断尾';
|
|
|
+ /*断尾*/
|
|
|
+ break;
|
|
|
+ case 8:
|
|
|
+ name = '碳酸浴';
|
|
|
+ /*碳酸浴*/
|
|
|
+ break;
|
|
|
+ case 9:
|
|
|
+ name = '助产';
|
|
|
+ /*助产*/
|
|
|
+ break;
|
|
|
+ case 11:
|
|
|
+ name = '宠物驱虫';
|
|
|
+ /*宠物驱虫*/
|
|
|
+ break;
|
|
|
+ case 12:
|
|
|
+ name = '宠物药浴';
|
|
|
+ /*宠物药浴*/
|
|
|
+ break;
|
|
|
+ case 13:
|
|
|
+ name = '宠物染色';/**/
|
|
|
+ default:
|
|
|
+ break;
|
|
|
}
|
|
|
- //额外的服务参数
|
|
|
- var extraServiceParam = {
|
|
|
- name: extraServiceList[i].name,//名字
|
|
|
- price: extraServiceList[i].price,//价格
|
|
|
- id: extraServiceList[i].id,//ID
|
|
|
- serviceType: extraServiceList[i].service_type,//服务类型
|
|
|
- seleted: seleted//选择
|
|
|
+
|
|
|
+ return name;
|
|
|
+ };
|
|
|
+
|
|
|
+ //获得产品称号
|
|
|
+ Product.prototype.getProductTitle = function (type) {
|
|
|
+ var title = {
|
|
|
+ name: '',
|
|
|
+ className: ''
|
|
|
+ }
|
|
|
+ switch (type) {
|
|
|
+ case 1:
|
|
|
+ title.name = '洗澡';
|
|
|
+ title.className = 'pic-xizao'
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ title.name = '剃光';
|
|
|
+ title.className = 'pic-tiguang';
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ title.name = '美容';
|
|
|
+ title.className = 'pic-meirong';
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ title.name = '洁牙';
|
|
|
+ title.className = 'pic-jieya';
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ title.name = 'SPA';
|
|
|
+ title.className = 'pic-spa';
|
|
|
+ break;
|
|
|
+ case 6:
|
|
|
+ title.name = '训犬';
|
|
|
+ title.className = 'pic-xunquan';
|
|
|
+ break;
|
|
|
+ case 7:
|
|
|
+ title.name = '断尾';
|
|
|
+ title.className = 'pic-duanwei';
|
|
|
+ break;
|
|
|
+ case 8:
|
|
|
+ title.name = '碳酸浴';
|
|
|
+ title.className = 'pic-tansuanyu';
|
|
|
+ break;
|
|
|
+ case 9:
|
|
|
+ title.name = '助产';
|
|
|
+ title.className = 'pic-zhuchan';
|
|
|
+ break;
|
|
|
+ case 11:
|
|
|
+ title.name = '驱虫';
|
|
|
+ title.className = 'pic-quchong';
|
|
|
+ break;
|
|
|
+ case 12:
|
|
|
+ title.name = '药浴';
|
|
|
+ title.className = 'pic-yaoyu';
|
|
|
+ break;
|
|
|
+ case 13:
|
|
|
+ title.name = '一次性局部染色';
|
|
|
+ title.className = 'pic-ranse';
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
}
|
|
|
- extraServiceTmp.push(extraServiceParam);//额外的服务数组
|
|
|
- };
|
|
|
+ return title;
|
|
|
}
|
|
|
- return extraServiceTmp
|
|
|
- }
|
|
|
-
|
|
|
- //获取列表
|
|
|
- Product.prototype.getList = function (type, callback) {
|
|
|
- var that = this;
|
|
|
- api.getProductList({//获得产品列表
|
|
|
- type: type
|
|
|
- }, function (res) {
|
|
|
- if (res.success) {
|
|
|
- that.products = res.data.products;//产品
|
|
|
- that.productList = {};//产品列表
|
|
|
- that.productGroup[type] = [];//产品组
|
|
|
-
|
|
|
- var petDic = {};//宠物DIC
|
|
|
- var productDatas = res['data']['products'];//产品数据
|
|
|
- var extraroducts = res['data']['extra_products'];//额外的服务
|
|
|
- that.extraService = extraroducts;
|
|
|
-
|
|
|
- for (var i = 0, len = productDatas.length; i < len; i++) {
|
|
|
- var eachProduct = productDatas[i];//每个产品
|
|
|
- var petIDs = [];//宠物ID
|
|
|
-
|
|
|
- that.productDic[eachProduct.id] = {//每个产品的ID
|
|
|
- petIDs: petIDs,
|
|
|
- maxWeight: eachProduct.max_weight,
|
|
|
- minWeight: eachProduct.min_weight,
|
|
|
- // price: parseFloat(eachProduct.price).toFixed(2)
|
|
|
- price: parseFloat(eachProduct.price)
|
|
|
- // 价格不要加小数点后两位
|
|
|
- };
|
|
|
+
|
|
|
+ //获得微信分享
|
|
|
+ Product.prototype.getWXShare = function (type) {
|
|
|
+ var title = {
|
|
|
+ name: '',
|
|
|
+ className: ''
|
|
|
}
|
|
|
+ switch (type) {
|
|
|
+ case 1:
|
|
|
+ title.name = '洗澡';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-xizao.jpg'
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ title.name = '剃光';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-tiguang.jpg';
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ title.name = '美容';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-meirong.jpg';
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ title.name = '洁牙';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-jieya.jpg';
|
|
|
+ break;
|
|
|
+ case 5:
|
|
|
+ title.name = 'SPA';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-spa.jpg';
|
|
|
+ break;
|
|
|
+ case 6:
|
|
|
+ title.name = '训犬';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-xunquan.jpg';
|
|
|
+ break;
|
|
|
+ case 7:
|
|
|
+ title.name = '断尾';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-duanwei.jpg';
|
|
|
+ break;
|
|
|
+ case 8:
|
|
|
+ title.name = '碳酸浴';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-tansuanyu.jpg';
|
|
|
+ break;
|
|
|
+ case 9:
|
|
|
+ title.name = '助产';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-zhuchan.jpg';
|
|
|
+ break;
|
|
|
+ case 11:
|
|
|
+ title.name = '驱虫';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-quchong.jpg';
|
|
|
+ break;
|
|
|
+ case 12:
|
|
|
+ title.name = '药浴';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-yaoyu.jpg';
|
|
|
+ break;
|
|
|
+ case 13:
|
|
|
+ title.name = '染色';
|
|
|
+ title.className = 'http://wozhua-others.qiniudn.com/icon-ranse.jpg';
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return title;
|
|
|
+ }
|
|
|
|
|
|
- for (var petID in petDic) {
|
|
|
- that.productGroup[type].push(petDic[petID]);
|
|
|
+ //获得产品列表
|
|
|
+ Product.prototype.getProductList = function (type, petID) {
|
|
|
+ var productList = [];
|
|
|
+ if (this.productGroup.hasOwnProperty(type)) {//自己的属性
|
|
|
+ var petList = this.productGroup[type];//产品组
|
|
|
+ for (var i in petList) {//宠物列表
|
|
|
+ var petInfo = petList[i];//宠物信息
|
|
|
+ if (!petID || petInfo.id == petID) {//宠物ID
|
|
|
+ for (var j in petInfo.products) {
|
|
|
+ if ($.inArray(petInfo.products[j], productList) == -1) {
|
|
|
+ productList.push(petInfo.products[j]);//产品列表
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (petID) {
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- if (typeof (callback) == 'function') {
|
|
|
- callback(res);
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
- //列出所有的产品
|
|
|
- Product.prototype.getListAll = function (userID, callback) {
|
|
|
- var that = this;
|
|
|
- api.getProductList({
|
|
|
- user_id: userID,
|
|
|
- // type: type
|
|
|
- }, function (res) {
|
|
|
- if (res.success) {
|
|
|
- that.productList = {};
|
|
|
-
|
|
|
- var petDic = {};
|
|
|
- var productDatas = res['data']['products'];
|
|
|
- var extraroducts = res['data']['extra_products'];
|
|
|
- // that.extraService = extraroducts;
|
|
|
-
|
|
|
- for(var i in that.productGroup) {
|
|
|
- that.productGroup[i] = [];
|
|
|
+ return productList;
|
|
|
+ };
|
|
|
+
|
|
|
+
|
|
|
+ //宠物名字
|
|
|
+ Product.prototype.getPetName = function (type, petID) {
|
|
|
+ var petName = '';
|
|
|
+ if (this.productGroup.hasOwnProperty(type)) {//产品组自己的属性为 TYEP
|
|
|
+ var petList = this.productGroup[type];
|
|
|
+ for (var i in petList) {//宠物列表
|
|
|
+ var petInfo = petList[i];
|
|
|
+ if (petInfo.id == petID) {//判断ID一致赋予宠物名字
|
|
|
+ petName = petInfo['name'];
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+ return petName;
|
|
|
+ };
|
|
|
|
|
|
- for(var i in that.extraProductGroup) {
|
|
|
- that.extraProductGroup[i] = [];
|
|
|
+
|
|
|
+ Product.prototype.getProductPrice = function (productID) {
|
|
|
+ var productInfo = this.productDic[productID];//产品中心
|
|
|
+ if (!productInfo) {
|
|
|
+ return '';
|
|
|
+ } else {
|
|
|
+ return productInfo.price + '元';//产品价格
|
|
|
}
|
|
|
+ };
|
|
|
+
|
|
|
+ //获得宠物服务类型
|
|
|
+ //productType-产品类型
|
|
|
+ Product.prototype.getPetServiceType = function (productType, productID) {
|
|
|
+ var petServiceType = '';
|
|
|
+ this.productGroup[productType].forEach(function (e) {//遍历函数
|
|
|
+ if (e.id == productID) {//id一致则将服务类型赋值给petServiceType
|
|
|
+ petServiceType = e.service_type
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return petServiceType;
|
|
|
+ };
|
|
|
|
|
|
- for (var i = 0, len = productDatas.length; i < len; i++) {
|
|
|
- var eachProduct = productDatas[i];
|
|
|
- that.productGroup[eachProduct['type']].push(eachProduct);
|
|
|
- var petIDs = [];
|
|
|
-
|
|
|
-
|
|
|
- that.productDic[eachProduct.id] = {//产品中心
|
|
|
- petIDs: petIDs,//宠物ID
|
|
|
- maxWeight: eachProduct.max_weight,//产品最大
|
|
|
- minWeight: eachProduct.min_weight,//产品最小
|
|
|
- // price: parseFloat(eachProduct.price).toFixed(2)
|
|
|
- price: parseFloat(eachProduct.price)//解析产品价格
|
|
|
- // 价格不要加小数点后两位
|
|
|
- };
|
|
|
+ //获得额外的服务类型
|
|
|
+ //checkedName - 检查名称
|
|
|
+ Product.prototype.getExtraServiceList = function (type, petName, checkedName) {
|
|
|
+ var extraServiceTmp = [];
|
|
|
+ var extraServiceList = this.extraProductGroup[type];//额外额产品组
|
|
|
+ for (var i in extraServiceList) {
|
|
|
+ if (extraServiceList[i].pet_types[0].name == petName) {//pet_types 宠物类型
|
|
|
+ var seleted = false;
|
|
|
+ if (extraServiceList[i].name == checkedName) {//如果额外的服务类型与检查的一致
|
|
|
+ seleted = true;
|
|
|
+ }
|
|
|
+ //额外的服务参数
|
|
|
+ var extraServiceParam = {
|
|
|
+ name: extraServiceList[i].name,//名字
|
|
|
+ price: extraServiceList[i].price,//价格
|
|
|
+ id: extraServiceList[i].id,//ID
|
|
|
+ serviceType: extraServiceList[i].service_type,//服务类型
|
|
|
+ seleted: seleted//选择
|
|
|
+ }
|
|
|
+ extraServiceTmp.push(extraServiceParam);//额外的服务数组
|
|
|
+ }
|
|
|
+ ;
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
- // for (var petID in petDic) {
|
|
|
- // that.productGroup[eachProduct['type']].push(petDic[petID]);
|
|
|
- // }
|
|
|
- }
|
|
|
- if (typeof (callback) == 'function') {
|
|
|
- callback(res);
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
- Product.prototype.suitableService = function (type, name) {
|
|
|
- // 某个主服务里面 是否有某个附加服务
|
|
|
- var suitableService = this.productGroup;
|
|
|
- var suitableServiceTmp = this.extraProductGroup;
|
|
|
- for(var i in suitableService) {//合适的服务
|
|
|
- suitableService[i][0]['suitable'] = false;
|
|
|
- for(var j in suitableServiceTmp[i]) {
|
|
|
- if (suitableServiceTmp[i][j].name == name) {
|
|
|
- suitableService[i][0]['suitable'] = true;
|
|
|
+ return extraServiceTmp
|
|
|
+ }
|
|
|
+
|
|
|
+ //获取列表
|
|
|
+ Product.prototype.getList = function (type, callback) {
|
|
|
+ var that = this;
|
|
|
+ api.getProductList({//获得产品列表
|
|
|
+ type: type
|
|
|
+ }, function (res) {
|
|
|
+ if (res.success) {
|
|
|
+ that.products = res.data.products;//产品
|
|
|
+ that.productList = {};//产品列表
|
|
|
+ that.productGroup[type] = [];//产品组
|
|
|
+
|
|
|
+ var petDic = {};//宠物DIC
|
|
|
+ var productDatas = res['data']['products'];//产品数据
|
|
|
+ var extraroducts = res['data']['extra_products'];//额外的服务
|
|
|
+ that.extraService = extraroducts;
|
|
|
+
|
|
|
+ for (var i = 0, len = productDatas.length; i < len; i++) {
|
|
|
+ var eachProduct = productDatas[i];//每个产品
|
|
|
+ var petIDs = [];//宠物ID
|
|
|
+
|
|
|
+ that.productDic[eachProduct.id] = {//每个产品的ID
|
|
|
+ petIDs: petIDs,
|
|
|
+ maxWeight: eachProduct.max_weight,
|
|
|
+ minWeight: eachProduct.min_weight,
|
|
|
+ // price: parseFloat(eachProduct.price).toFixed(2)
|
|
|
+ price: parseFloat(eachProduct.price)
|
|
|
+ // 价格不要加小数点后两位
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ for (var petID in petDic) {
|
|
|
+ that.productGroup[type].push(petDic[petID]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (typeof (callback) == 'function') {
|
|
|
+ callback(res);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ //列出所有的产品
|
|
|
+ Product.prototype.getListAll = function (userID, callback) {
|
|
|
+ var that = this;
|
|
|
+ api.getProductList({
|
|
|
+ user_id: userID,
|
|
|
+ // type: type
|
|
|
+ }, function (res) {
|
|
|
+ if (res.success) {
|
|
|
+ that.productList = {};
|
|
|
+
|
|
|
+ var petDic = {};
|
|
|
+ var productDatas = res['data']['products'];
|
|
|
+ var extraroducts = res['data']['extra_products'];
|
|
|
+ // that.extraService = extraroducts;
|
|
|
+
|
|
|
+ for (var i in that.productGroup) {
|
|
|
+ that.productGroup[i] = [];
|
|
|
+ }
|
|
|
+
|
|
|
+ for (var i in that.extraProductGroup) {
|
|
|
+ that.extraProductGroup[i] = [];
|
|
|
+ }
|
|
|
+
|
|
|
+ for (var i = 0, len = productDatas.length; i < len; i++) {
|
|
|
+ var eachProduct = productDatas[i];
|
|
|
+ that.productGroup[eachProduct['type']].push(eachProduct);
|
|
|
+ var petIDs = [];
|
|
|
+
|
|
|
+
|
|
|
+ that.productDic[eachProduct.id] = {//产品中心
|
|
|
+ petIDs: petIDs,//宠物ID
|
|
|
+ maxWeight: eachProduct.max_weight,//产品最大
|
|
|
+ minWeight: eachProduct.min_weight,//产品最小
|
|
|
+ // price: parseFloat(eachProduct.price).toFixed(2)
|
|
|
+ price: parseFloat(eachProduct.price)//解析产品价格
|
|
|
+ // 价格不要加小数点后两位
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ // for (var petID in petDic) {
|
|
|
+ // that.productGroup[eachProduct['type']].push(petDic[petID]);
|
|
|
+ // }
|
|
|
+ }
|
|
|
+ if (typeof (callback) == 'function') {
|
|
|
+ callback(res);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ Product.prototype.suitableService = function (type, name) {
|
|
|
+ // 某个主服务里面 是否有某个附加服务
|
|
|
+ var suitableService = this.productGroup;
|
|
|
+ var suitableServiceTmp = this.extraProductGroup;
|
|
|
+ for (var i in suitableService) {//合适的服务
|
|
|
+ suitableService[i][0]['suitable'] = false;
|
|
|
+ for (var j in suitableServiceTmp[i]) {
|
|
|
+ if (suitableServiceTmp[i][j].name == name) {
|
|
|
+ suitableService[i][0]['suitable'] = true;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
+ return suitableService;
|
|
|
}
|
|
|
- return suitableService;
|
|
|
- }
|
|
|
|
|
|
- return new Product();
|
|
|
+ return new Product();
|
|
|
})
|