|
@@ -1,32 +1,192 @@
|
|
|
-var shoppingCart = new Vue({
|
|
|
- el: "#shoppingCart",
|
|
|
+var shoppingConfirm = new Vue({
|
|
|
+ el: "#shoppingConfirm",
|
|
|
data: {
|
|
|
userId: 0,
|
|
|
userIdentity: '',
|
|
|
userToken: '',
|
|
|
- type: '',
|
|
|
- listData: [],
|
|
|
- kindCount: 0,
|
|
|
- totalCount: 0,
|
|
|
- totalPrice: 0
|
|
|
+ optionData:'',
|
|
|
+ subType:'',//跳转类型
|
|
|
+ cartType:'',//提交订单类型
|
|
|
+ goodsList:[],//商品列表
|
|
|
+ isEmpty:false,//是否显示列表
|
|
|
+ allPrice:'',//订单总价格
|
|
|
+ allCount:'',//订单总数量
|
|
|
+ productKind:'',//商品种类
|
|
|
+ payAllPrice:'',//支付价格
|
|
|
+ surplusMoney:0.00,//显示勾选后的剩余抵扣
|
|
|
+ userMoney:0.00, //显示可使用余额
|
|
|
+ deductMoney:0.00,//显示已使用的余额
|
|
|
+ productIds:'',//商品ID
|
|
|
+ productCount:'',//提交订单的商品数量
|
|
|
+ addressList:[],//收货地址
|
|
|
+ addressData:{},//初始化地址信息
|
|
|
+ isAddType:'',
|
|
|
+ addAddressData:{
|
|
|
+ addressID:'',
|
|
|
+ allAddress:'所在地区',
|
|
|
+ userID: '', //用户id ,只在新增收货地址时传
|
|
|
+ shouHuoRen: '', //收货人
|
|
|
+ mobile:'', //收货人手机
|
|
|
+ townID:'', //区ID
|
|
|
+ address: '', //地址
|
|
|
+ defaultFlag:0, //是否默认收货地址(0 不是默认,1 默认)
|
|
|
+ },//初始化地址信息
|
|
|
+ addressID:'',//地址ID
|
|
|
+ townID:'',//区ID
|
|
|
+ freightText:'',
|
|
|
+ freightMoney:'',
|
|
|
+ selectedFreight:'',//默认邮费
|
|
|
+ hanldFreePostFlag:'',//
|
|
|
+ hanldFreight:'',//
|
|
|
+ isRequest:false,
|
|
|
+ isFiexdClass:'float',
|
|
|
+ isDefaultFlag:false,
|
|
|
+ isShowAddress:false,
|
|
|
+ isShowInvoice:false,
|
|
|
+ isShowBalance:false,
|
|
|
+ isShwoAddModel:false,
|
|
|
+ isShowCascader:false,
|
|
|
+ isConDisabled:false,
|
|
|
+ isSubDisabled:false,
|
|
|
+ isCheckedBalabce:false,
|
|
|
+ isDefaultChecked:false,
|
|
|
+ isAddressListLength:false,
|
|
|
+ balanceDeductionFlag:2,
|
|
|
+ invoiceType:'1',
|
|
|
+ invoiceTitle:0,
|
|
|
+ goodRemark:[],
|
|
|
+ optionList:['到付'],
|
|
|
+ ProvinceList:[],
|
|
|
+ cityArray:[],
|
|
|
+ townArray:[],
|
|
|
+ currentTab:0,
|
|
|
+ choseAddressText:'',//选取的地址信息
|
|
|
+ freightData:'',//运费信息
|
|
|
+ invoiceData:{
|
|
|
+ id:'',
|
|
|
+ invoiceTitle:'', //单位名称
|
|
|
+ corporationTaxNum:'',//纳税人识别号
|
|
|
+ registeredAddress: '',//单位地址
|
|
|
+ registeredPhone:'', //注册电话
|
|
|
+ openBank:'', //开户银行
|
|
|
+ bankAccountNo: '' ,//银行账号
|
|
|
+ type:0
|
|
|
+ }, //初始化发票信息
|
|
|
+ orderInfo:[],//提交的商品信息
|
|
|
+ payInfo:{}, //订单信息
|
|
|
+ addTabList:[
|
|
|
+ {name:'省'},
|
|
|
+ {name:'区'},
|
|
|
+ {name:'市'}
|
|
|
+ ],
|
|
|
+ addressFrom: {
|
|
|
+ name:'',
|
|
|
+ province: '',
|
|
|
+ city: '',
|
|
|
+ town: ''
|
|
|
+ },
|
|
|
+ invoiceTypeList:[
|
|
|
+ {value:'1',name:'不开发票'},
|
|
|
+ {value:'2',name:'普通发票'},
|
|
|
+ {value:'3',name:'增值税发票'}
|
|
|
+ ],
|
|
|
+ invoiceTitleList:[
|
|
|
+ {value:'0',name:'个人'},
|
|
|
+ {value:'1',name:'公司'},
|
|
|
+ ],
|
|
|
+ peopleInvoiceData:{
|
|
|
+ invoiceTitle:'', //单位名称
|
|
|
+ invoiceContent:'明细', //商品明细
|
|
|
+ corporationTaxNum:'',//纳税人识别号
|
|
|
+ invoiceTitleType:'0'//发票抬头类型 1企业 0个人
|
|
|
+ },
|
|
|
+ checkedAddressItemIndex:0,
|
|
|
},
|
|
|
computed: {
|
|
|
|
|
|
},
|
|
|
methods: {
|
|
|
- getConfirmList: function (productIds, productCount) {
|
|
|
+ getAddressList:function(userID,pageSize){//获取收货地址
|
|
|
var _self = this;
|
|
|
- if(this.userId ===0){return;}
|
|
|
- tokenAjax("get", "/order/confirm", {
|
|
|
- userId: _self.userId,
|
|
|
- count: productCount,
|
|
|
- productIds: productIds
|
|
|
- } ,function (r) {
|
|
|
- if (r.code === 0 && r.data) {
|
|
|
- _self.listData = r.data.list;
|
|
|
+ OrderApi.GetAddressList({userID:userID,pageNum:1,pageSize:pageSize},function (response) {
|
|
|
+ if(response.code == 0){
|
|
|
+ var data = response.data;
|
|
|
+ if(data.results != ''){
|
|
|
+ _self.addressList = [];
|
|
|
+ _self.addressList = data.results;
|
|
|
+ _self.addressData = data.results[0];
|
|
|
+ _self.addressID = data.results[0].addressID;
|
|
|
+ _self.townID = data.results[0].townID;
|
|
|
+ // _self.getFreightData();
|
|
|
+ _self.isAddressListLength = false;
|
|
|
+ }else{
|
|
|
+ _self.isAddType == 'add';
|
|
|
+ _self.isAddressListLength = true;
|
|
|
+ _self.addressData = _self.addressData;
|
|
|
+ _self.GetProvinceFn()
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ CAIMEI.Alert(response.msg, '确定', false);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ getConfirmInfo: function (productIds, productCount) {
|
|
|
+ var _self = this;
|
|
|
+ if(_self.userId ===0){return;}
|
|
|
+ OrderApi.GetOrderConfirmInfo({userId: _self.userId,count: productCount,productIds: productIds},function(response){
|
|
|
+ if (response.code === 0 && response.data) {
|
|
|
+ var data = response.data;
|
|
|
+ _self.isRequest = true;
|
|
|
+ // _self.goodsList = data.shopList;
|
|
|
+ // _self.allPrice = data.productTotalFee;
|
|
|
+ // _self.allCount = data.productCount;
|
|
|
+ // _self.payAllPrice = data.productTotalFee;
|
|
|
+ // _self.productKind = data.productKind;
|
|
|
+ // _self.userMoney = data.userMoney;
|
|
|
+ _self.getAddressList(_self.userId,20);
|
|
|
+ }else{
|
|
|
+ CAIMEI.Alert(response.msg, '确定', false);
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ getFreightData :function(){//获取邮费信息
|
|
|
+ var _self = this;
|
|
|
+ var params ={userId:_self.userID,productIds:_self.productIds,totalPrice:_self.allPrice,townId:_self.addressData.townID};
|
|
|
+ OrderApi.GetOrderPostage(params,function (response) {
|
|
|
+ if(response.code == 0){
|
|
|
+ _self.freightData = response.data;
|
|
|
+ _self.hanldFreePostFlag = response.data.freePostFlag;
|
|
|
+ _self.hanldFreight = response.data.freight;
|
|
|
+ switch(_self.freightData.freePostFlag){
|
|
|
+ case 0:
|
|
|
+ _self.freightText = '包邮';
|
|
|
+ _self.freightData.freight = 0;
|
|
|
+ break;
|
|
|
+ case 1:
|
|
|
+ _self.freightText = '';
|
|
|
+ _self.freightMoney = _self.freightData.freight;
|
|
|
+ var key = '到付';
|
|
|
+ _self.optionList = [key];
|
|
|
+ _self.optionList.unshift(_self.orderPriceToFixed(_self.freightMoney));
|
|
|
+ _self.selectedFreight = _self.optionList[0];
|
|
|
+ break;
|
|
|
+ case -1:
|
|
|
+ _self.freightText = '到付';
|
|
|
+ _self.freightData.freight = 0;
|
|
|
+ break;
|
|
|
+ };
|
|
|
+ if(_self.hanldFreePostFlag == 1){
|
|
|
+ _self.payAllPrice = _self.allPrice + response.data.freight;
|
|
|
+ _self.attributePallPrice();
|
|
|
+ }else{
|
|
|
+ _self.payAllPrice = _self.allPrice;
|
|
|
+ _self.attributePallPrice();
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ CAIMEI.Alert(response.msg, '确定', false);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
toggleThisLadder: function(event){
|
|
|
var el = event.currentTarget;
|
|
|
if($(el).hasClass("on")){
|
|
@@ -44,27 +204,185 @@ var shoppingCart = new Vue({
|
|
|
},
|
|
|
submitOrder: function(){
|
|
|
|
|
|
- }
|
|
|
+ },
|
|
|
+ GetProvinceFn: function(){//获取全部省份
|
|
|
+ var _self = this;
|
|
|
+ PublicApi.GetProvince({},function(response){
|
|
|
+ if(response.code == 0){
|
|
|
+ _self.ProvinceList =response.data;
|
|
|
+ }else{
|
|
|
+ CAIMEI.Alert(response.msg,'确定',false);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ ChangeProvince:function () {//选择省份
|
|
|
+ var _self = this;
|
|
|
+ _self.addressFrom.province = event.target.value;
|
|
|
+ if(_self.addressFrom.province==''){//省为请选择时市区初始化
|
|
|
+ _self.cityArray=[];
|
|
|
+ _self.townArray=[];
|
|
|
+ _self.addAddressData.townID=''
|
|
|
+ }else {
|
|
|
+ _self.ChangeGetcity();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ ChangeGetcity:function(event){//加载市
|
|
|
+ var _self = this;
|
|
|
+ PublicApi.GetCity({ provinceId: _self.addressFrom.province },function(response){
|
|
|
+ if(response.code == 0 ){
|
|
|
+ _self.cityArray = response.data;
|
|
|
+ _self.addressFrom.city = event.target.value;
|
|
|
+ if(_self.addressFrom.city==''){
|
|
|
+ _self.townArray=[];
|
|
|
+ }else {
|
|
|
+ _self.ChangeGetcTown();
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ CAIMEI.Alert(response.msg,'确定',false);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ ChangeGetcTown:function(event){//选择地区
|
|
|
+ var _self = this;
|
|
|
+ PublicApi.GetTown({ cityId: _self.addressFrom.city },function(response){
|
|
|
+ if(response.code == 0 ){
|
|
|
+ _self.townArray = response.data;
|
|
|
+ _self.addAddressData.townID = event.target.value;
|
|
|
+ console.log(_self.addAddressData.townID)
|
|
|
+ }else{
|
|
|
+ CAIMEI.Alert(response.msg,'确定',false);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ settingDefaultFlag :function(){//添加&&编辑 保存 设置默认地址按钮
|
|
|
+ var _self = this;
|
|
|
+ _self.isDefaultFlag=! _self.isDefaultFlag;
|
|
|
+ if(_self.isDefaultFlag){
|
|
|
+ _self.addAddressData.defaultFlag = '1';
|
|
|
+ }else{
|
|
|
+ _self.addAddressData.defaultFlag = '0';
|
|
|
+ }
|
|
|
+ },
|
|
|
+ settingDefaultFlag :function(){//添加&&编辑 保存 设置默认地址按钮
|
|
|
+ var _self = this;
|
|
|
+ _self.isDefaultFlag=! _self.isDefaultFlag;
|
|
|
+ if(_self.isDefaultFlag){
|
|
|
+ _self.addAddressData.defaultFlag = '1';
|
|
|
+ }else{
|
|
|
+ _self.addAddressData.defaultFlag = '0';
|
|
|
+ }
|
|
|
+ },
|
|
|
+ addAddressFn :function(){//添加新的地址
|
|
|
+ var _self = this;
|
|
|
+ _self.addAddressData={
|
|
|
+ addressID:'',
|
|
|
+ allAddress:'',
|
|
|
+ userID: '', //用户id ,只在新增收货地址时传
|
|
|
+ shouHuoRen: '', //收货人
|
|
|
+ mobile:'', //收货人手机
|
|
|
+ townID:'', //区ID
|
|
|
+ address: '', //地址
|
|
|
+ defaultFlag:0, //是否默认收货地址(0 不是默认,1 默认)
|
|
|
+ };
|
|
|
+ _self.isAddType = 'add';
|
|
|
+ _self.isShwoAddModel = true;
|
|
|
+ },
|
|
|
+ editAddress :function(item){//编辑地址
|
|
|
+ var _self = this;
|
|
|
+ if(_self.defaultFlag =='1'){
|
|
|
+ _self.isDefaultChecked = true;
|
|
|
+ }else{
|
|
|
+ _self.isDefaultChecked = false;
|
|
|
+ }
|
|
|
+ _self.isAddType = 'edit';
|
|
|
+ _self.isShwoAddModel = true;
|
|
|
+ _self.addAddressData = item;
|
|
|
+ _self.addAddressData.allAddress=item.province+''+item.city+''+item.town;
|
|
|
+ },
|
|
|
+ ConfirmAddressFn :function(){//保存地址
|
|
|
+ var _self = this;
|
|
|
+ console.log( _self.isAddType);
|
|
|
+ if(_self.addAddressData.townID == ""){
|
|
|
+ CAIMEI.dialog('请选择所在地区');
|
|
|
+ return;
|
|
|
+ };
|
|
|
+ if(_self.addAddressData.address == ""){
|
|
|
+ CAIMEI.dialog('请填写详细地址');
|
|
|
+ return;
|
|
|
+ };
|
|
|
+ if(_self.addAddressData.shouHuoRen == ""){
|
|
|
+ CAIMEI.dialog('请输入收货人姓名');
|
|
|
+ return;
|
|
|
+ };
|
|
|
+ if(_self.addAddressData.mobile == ""){
|
|
|
+ CAIMEI.dialog('请输入收货人手机号');
|
|
|
+ return;
|
|
|
+ };
|
|
|
+ if( _self.isAddType == 'add'){
|
|
|
+ var params = {
|
|
|
+ userID:_self.userId , //用户id ,只在新增收货地址时传
|
|
|
+ shouHuoRen:_self.addAddressData.shouHuoRen ,//收货人
|
|
|
+ townID:_self.addAddressData.townID, //区ID
|
|
|
+ address:_self.addAddressData.address,//地址
|
|
|
+ mobile:_self.addAddressData.mobile, //手机
|
|
|
+ defaultFlag:_self.addAddressData.defaultFlag//是否默认收货地址(0 不是默认,1 默认)
|
|
|
+ };
|
|
|
+ // console.log('ADD',params);
|
|
|
+ }else{
|
|
|
+ var params = {
|
|
|
+ addressID:_self.addAddressData.addressID,//编辑保存地址ID
|
|
|
+ userID:_self.userId , //用户id ,只在新增收货地址时传
|
|
|
+ shouHuoRen:_self.addAddressData.shouHuoRen ,//收货人
|
|
|
+ townID:_self.addAddressData.townID, //区ID
|
|
|
+ address:_self.addAddressData.address,//地址
|
|
|
+ mobile:_self.addAddressData.mobile, //手机
|
|
|
+ defaultFlag:_self.addAddressData.defaultFlag//是否默认收货地址(0 不是默认,1 默认)
|
|
|
+ };
|
|
|
+ }
|
|
|
+ _self.isConDisabled = true;
|
|
|
+ OrderApi.AddSaveAddress(params,function(response){
|
|
|
+ if(response.code == 0){
|
|
|
+ CAIMEI.dialog('保存成功');
|
|
|
+ _self.getAddressList(_self.userID,20);
|
|
|
+ _self.isShwoAddModel = false;
|
|
|
+ _self.isConDisabled = false;
|
|
|
+ }else{
|
|
|
+ CAIMEI.Alert(response.msg,'确定',false);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ CancelAddressFn:function(){
|
|
|
+ this.isAddressListLength = false;
|
|
|
+ },
|
|
|
+ ShowCheckedAddressFn :function(){//显示地址列表
|
|
|
+ this.isShowAddress = true;
|
|
|
+ },
|
|
|
+ HideCheckedAddressFn :function(){//显示地址列表
|
|
|
+ this.isShowAddress = false;
|
|
|
+ },
|
|
|
+ ShowAddAddressFn :function(){//显示地址列表
|
|
|
+ this.isAddressListLength = true;
|
|
|
+ },
|
|
|
},
|
|
|
created: function () {
|
|
|
- this.type = getUrlParam("type") ? getUrlParam("type")*1 : "";
|
|
|
+ this.subType = getUrlParam("type") ? getUrlParam("type")*1 : "";
|
|
|
if(globalUserData){
|
|
|
this.userId = globalUserData.userId;
|
|
|
this.userIdentity = globalUserData.identity;
|
|
|
this.userToken = globalUserData.token;
|
|
|
- // type:(1购物车提交[对应表cm_cart],2直接购买提交, 3协销下单)
|
|
|
- if(this.type === 1) {
|
|
|
+ // subType:(1购物车提交[对应表cm_cart],2直接购买提交)
|
|
|
+ if(this.subType === 1) {
|
|
|
var productIds = window.localStorage.getItem("shoppingProductIds");
|
|
|
// 获取列表数据
|
|
|
- this.getConfirmList(productIds, null);
|
|
|
- }else if(this.type === 2){
|
|
|
+ this.getConfirmInfo(productIds, null);
|
|
|
+ }else if(this.subType === 2){
|
|
|
var productId = getUrlParam("id");
|
|
|
var count = getUrlParam("count");
|
|
|
if(productId && count) {
|
|
|
// 获取列表数据
|
|
|
- this.getConfirmList(productId, count);
|
|
|
+ this.getConfirmInfo(productId, count);
|
|
|
}else{
|
|
|
- alertInfo("参数错误,请重新提交订单!");
|
|
|
+ CAIMEI.Alert('参数错误,请重新提交订单!', '确定', false);
|
|
|
}
|
|
|
}
|
|
|
}
|