//出生证明添加申请页 define(["knockout"],function(ko){ return function(context){ var me = this; var dataValidateFlag = false; var randomNameFlag = false; var priceFlag = false; var changeRandomNameFlag = false; me.member = ko.observable({}); //获取价格参数 me.getPrice = ko.observable({}); //随机犬名数据 me.nameList = ko.observableArray([]); //毛色数据 me.colorList = ko.observableArray([]); //是否加急默认值 提交 me.member().urgent="0"; //是否加急默认值 价格 me.getPrice().urgent="0"; //新生犬信息数组 me.member().dogBirthCertificateArray = []; //获取价格 me.nowPrice = ko.observable("0"); //优惠价格 me.couponPrice = ko.observable("0"); //优惠后总价格 me.couponTotalPrice = ko.observable("0"); //获取数量 me.nowNum = ko.observable("0"); //可用优惠劵数量 me.couponNum = ko.observable("0"); //可用最大优惠劵数量 me.couponMaxNum = ko.observable("0"); //单优惠劵价格 me.couponOnePrice = ko.observable("0"); //选择优惠劵数量 me.nowCouponNum = ko.observable("0"); //新生犬优惠劵数量 me.member().useCouponNum = ko.observable("0"); //是否展开注意事项 me.isOpen = ko.observable(false); me.isShow = function(){ me.isOpen(!me.isOpen()); } //数量下拉列表 me.nums = ko.observable([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]); //申请信息列表 me.applyData = ko.observable({}) /** * 获取申请信息 */ me.getDog = function(id){ util.sendAjax({ url:'dog/dognewborn/'+id, data:{}, async:true, loadFlag:true, type:'GET', cache:false, success:function(json){ if(json.rc==0){ me.applyData(json.data); }else{ layer.msg("信息获取失败:"+json.msg); } } }); } /** * 毛色的显隐 */ me.showColor = function(data,event){ if($(event.target).siblings(".qypop").css("display")=="block"){ $(event.target).siblings(".qypop").css("display","none"); $(event.target).siblings(".qypop").css("zIndex","0"); }else{ $(event.target).siblings(".qypop").css("display","block"); $(event.target).siblings(".qypop").css("zIndex","1"); } $(".qypop").not($(event.target).siblings(".qypop")).css("display","none"); }; //检查同胞犬数 me.checkSameBatchNum = function(){ var fmdogBreedCertifiedCode = $("#fmdogBreedCertifiedCode").html(); var maleNum = $("#maleNum").val(); var femaleNum = $("#femaleNum").val(); var sendData = {fmdogBreedCertifiedCode:fmdogBreedCertifiedCode,maleNum:maleNum,femaleNum:femaleNum}; var flag = false; util.sendAjax({ url:'dog/birthcertificate/checkSameBatchNum', data:sendData, async:false, loadFlag:true, type:'GET', cache:false, success:function(data){ if(data.rc==0){ if(data.data.rc){ flag = true; } else { flag = false; layer.msg("同胞犬数不符合要求:"+data.data.msg); } }else{ layer.msg("同胞犬数不符合要求:"+data.msg); flag = false; } } }); return flag; } //检查加急是否免费 me.getUrgentFreeFlag = function(){ util.sendAjax({ url:'dog/birthcertificate/getUrgentFreeFlag', data:{}, loadFlag:true, type:'GET', cache:false, success:function(json){ if(json.rc==0){ $("#isUrgent").removeAttr("class"); $("#noUrgent").removeAttr("class"); if(json.data.urgentFreeFlag){ $("#urgentFreeShow").html(json.data.msg); $("#urgentFreeShow").css("display","inline-block"); $("#isUrgent").attr("class","active"); $("#showIsUrgent").css("display","inline-block"); me.member().urgent="1"; me.getPrice().urgent="1" }else{ $("#noUrgent").attr("class","active"); me.member().urgent="0"; me.getPrice().urgent="0"; } }else{ } } }); } /** * 随机犬名 */ me.randomName = function(dogBreed,breedCertifiedCode){ if(me.checkSameBatchNum()){ $("#showNumber").removeClass(); $("#showNumber").css("display","inline-block"); randomNameFlag = true; }else{ $("#maleNum").val("0"); $("#femaleNum").val("0"); $("#showNumber").addClass("error"); $("#showNumber").css("display","inline-block"); $("#nameList").html(""); randomNameFlag = false; return; } var maleNum = $("#maleNum").val(); var femaleNum = $("#femaleNum").val(); if(maleNum || femaleNum){ var sendData = {}; sendData["femaleNum"] = femaleNum; sendData["maleNum"] = maleNum; me.getPrice().num = parseInt(maleNum) + parseInt(femaleNum); me.nowNum(parseInt(maleNum) + parseInt(femaleNum)); util.sendAjax({ url:'dog/birthcertificate/randomName', data:sendData, async:true, loadFlag:true, type:'GET', cache:false, success:function(data){ if(data.rc==0){ me.nameList(data.list); me.member().dogBirthCertificateArray = []; data.list.map(function(value,index){ //per新生犬信息数组 var nowObj = {} value.dogGender=="0"?nowObj["dogGender"]="1":nowObj["dogGender"]="2"; nowObj["dogEnName"] = value.dogName ; $(".dogNames").eq(index).on("blur",function(){ nowObj["dogEnName"] = $(".dogNames").eq(index).val(); }) me.member().dogBirthCertificateArray.push(nowObj); randomNameFlag = true; }); }else{ layer.msg("随机犬名失败:"+data.msg); randomNameFlag = false; } } }); } /** * 获取毛色 */ util.sendAjax({ url:'dog/dogcolormark/'+dogBreed, data:{}, async:true, loadFlag:true, type:'GET', cache:false, success:function(data){ if(data.rc==0){ me.colorList(data.list); }else{ layer.msg("毛色获取失败:"+data.msg); } } }); //获取价格 me.lastGetPrice(breedCertifiedCode) } /** * 清空数量 */ me.clearNum = function() { $("#maleNum").val("0"); $("#femaleNum").val("0"); $("#nameList").html(""); $("#showNumber").addClass("error"); $("#showNumber").css("display","inline-block"); } /** * 获取价格 提交 是否加急 */ me.isUrgent = function(type,breedCertifiedCode){ $("#isUrgent").removeAttr("class"); $("#noUrgent").removeAttr("class"); $("#"+type).attr("class","active"); if(type=="isUrgent"){ me.member().urgent="1"; me.getPrice().urgent="1" $("#showIsUrgent").css("display","block"); }else{ me.member().urgent="0"; me.getPrice().urgent="0"; $("#showIsUrgent").css("display","none"); } me.lastGetPrice(breedCertifiedCode); } /** * 申请缴费 */ me.applyBirthcertificate = function(breedCertifiedCode){ //幼犬出生日期 var val = $("#birthdate").val(); me.member().dogBirthday = val; if(util.isVal(val)==""){ layer.msg("出生日期不能为空!"); return; } var dogBirthCertificateArray = me.member().dogBirthCertificateArray; if(util.isVal(dogBirthCertificateArray)==[]){ layer.msg("幼犬信息组不能为空!"); return; } //var dogNum = me.getPrice().num; //if(dogNum!=undefined&&dogNum>10){ // layer.msg("同胞犬数和需小于等于10!"); // return; //} //配种证明编号 me.member().fmdogBreedCertifiedCode = breedCertifiedCode; me.member().useCouponNum = me.nowCouponNum()+""; var updateData = me.member(); util.sendAjax({ url:'dog/birthcertificate', data: JSON.stringify(updateData), async:true, loadFlag:true, type:'POST', cache:false, success:function(json){ if(json.rc==0){ context.app.changeCart(); layer.alert('业务添加成功,是否跳转到业务核对页面进行支付?', { time: 0 //不自动关闭 ,btn: ['跳转', '取消'] ,yes: function(index){ layer.close(index); location.href = location.href.split("#")[0]+"#/order/check?isnew=true"; util.setLSItem("newmodel","birthcertificateapply") } }); // layer.alert('该身份识别登记卡激活时间为150天,请在有效激活期内登录CKU会员中心进行激活,逾期需通过地方俱乐部线下审核激活。', { // time: 0 //不自动关闭 // ,btn: ['确定'] // ,yes: function(index){ // layer.alert('业务添加成功,是否跳转到业务核对页面进行支付?', { // time: 0 //不自动关闭 // ,btn: ['跳转', '取消'] // ,yes: function(index){ // layer.close(index); // location.href = location.href.split("#")[0]+"#/order/check?isnew=true"; // util.setLSItem("newmodel","birthcertificateapply") // } // }); // }, // cancel:function(index){ // layer.alert('业务添加成功,是否跳转到业务核对页面进行支付?', { // time: 0 //不自动关闭 // ,btn: ['跳转', '取消'] // ,yes: function(index){ // layer.close(index); // location.href = location.href.split("#")[0]+"#/order/check?isnew=true"; // util.setLSItem("newmodel","birthcertificateapply") // } // }); // } // }); }else{ layer.msg("登记卡申请失败:"+json.msg); } } }); }; /** * 选择毛色 */ me.getDogColor = function(data,event){ // $("#dogColor li a").removeAttr("class"); //$(event.target).parent("a").attr("class","active"); var color = $(event.target).text(); if($(event.target).siblings(".qypop").css("display")=="block"){ } $(event.target).parents(".qypop").siblings(".dogColor").text(color); $(event.target).parents(".qypop").css("display","none"); var index = $(event.target).parents(".indexMark").index(); //给新生犬信息数组添加犬毛色 me.member().dogBirthCertificateArray[index]["colorFlag"] = data.dogColorMarkCode; $(".showMark:eq("+index+")").html(""); $(".showMark:eq("+index+")").append(""); } /** *获取价格 */ me.lastGetPrice = function(breedCertifiedCode){ if(me.getPrice().num){ me.getPrice().fmdogBreedCertifiedCode = breedCertifiedCode; me.getPrice().num = parseInt($("#maleNum").val()) + parseInt($("#femaleNum").val()); var sendData = me.getPrice(); util.sendAjax({ url:'dog/birthcertificate/getPrice', data:sendData, async:true, loadFlag:true, type:'GET', cache:false, success:function(json){ if(json.rc==0){ me.nowPrice(json.data.price) priceFlag = true; }else{ priceFlag = false; layer.msg("获取价格失败:"+json.msg); } } }); } //获取优惠劵 me.getCoupon(); } //获取优惠劵 me.getCoupon = function(){ util.sendAjax({ url:'coupon/getCoupon?type=dogBirthCertificate', data:{}, async:true, loadFlag:true, type:'GET', cache:false, success:function(json){ if(json.rc==0){ if(json.data.couponCount<=0){ $("#couponTable").css("display","none"); $("#couponP").css("display","none"); }else{ $("#couponTable").css("display",""); $("#couponP").css("display",""); me.couponNum(json.data.couponCount); me.couponOnePrice(json.data.couponOnePrice+".00"); var num=me.getPrice().num;//公母数 var couponNum =me.couponNum();//剩余优惠劵数 if(couponNum!='0'){ if(num>=couponNum){ me.couponMaxNum=couponNum; $("#points").attr("max",couponNum); }else { me.couponMaxNum=num; $("#points").attr("max",num); } var b = $('#nonuse').prop("checked"); if(b){//没选中 不触发计算优惠 me.nowCouponNum(0); me.couponChoose(0); }else{ me.nowCouponNum(1); me.couponChoose(1); } } } }else{ layer.msg("获取优惠劵失败:"+json.msg); } } }); } //选择优惠劵后的价格 me.couponChoose = function(num){ //优惠价格 me.couponPrice(parseInt(num) * parseFloat(me.couponOnePrice())); //优惠后总价格 me.couponTotalPrice(parseInt(me.nowPrice()) - parseInt(me.couponPrice())); me.couponPrice("- "+me.couponPrice()+".00"); me.couponTotalPrice(me.couponTotalPrice()+".00"); } me.changeRandomName = function(val){ var index = $(event.target).parents(".indexMark").index(); me.member().dogBirthCertificateArray[index]["dogEnName"] = val; changeRandomNameFlag = true; } //选择优惠劵后数量事件 me.changeCouponNum = function(){ var num = parseInt(me.nowCouponNum()); if(isNaN(num)){//输入非数字则转为1; me.nowCouponNum("1"); num=1; } var max = parseInt(me.couponMaxNum); if(num<0||num>max){ layer.msg("只能输入1-"+max+"之间的优惠劵数量!"); me.nowCouponNum(max); $("#points").val(max); return; } me.couponChoose(num); } //选择使用和不使用优惠劵的事件 me.changeUseing = function(){ var b = $('#nonuse').prop("checked");//$("input[type='checkbox']").is(':checked'); if(b){//选中 $("#points").attr("disabled",true); me.nowCouponNum(0); me.couponChoose(0); }else{ $("#points").attr("disabled",false); me.nowCouponNum(1); me.couponChoose(1); } } $(function(){ var obj = util.getQueryString(); me.getDog(obj.id); me.getUrgentFreeFlag(); }) context.app.loading(false); context.app.isShop(false); } }); //时间校验 function dateCall(dp){ var fmdogBreedCertifiedCode = $("#fmdogBreedCertifiedCode").html(); var dogBirthday = dp.cal.getDateStr(); //console.log(dogBirthday +"==="+fmdogBreedCertifiedCode); var sendData = {fmdogBreedCertifiedCode:fmdogBreedCertifiedCode,dogBirthday:dogBirthday}; util.sendAjax({ url:'dog/birthcertificate/checkDogBirthday', data:sendData, async:true, loadFlag:true, type:'GET', cache:false, success:function(json){ if(json.rc==0){ if(json.data.rc){ $("#birthdateShow").removeClass(); $("#birthdateShow").css("display","inline-block"); dataValidateFlag = true; } else { layer.msg("出生日期不符合要求:
"+json.data.msg); $("#birthdateShow").addClass("error"); $("#birthdateShow").css("display","inline-block"); $("#birthdate").val(''); dataValidateFlag = false; } }else{ layer.msg("出生日期不符合要求:
"+json.msg); $("#birthdateShow").css("display","none"); $("#birthdate").val(''); dataValidateFlag = false; } } }); }