| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899 |
- @extends('layouts.base')
- @section('title', "供应链-批量下单")
- @section('content')
- <style>
- .rightlist #app .rightlist-head{line-height:50px;padding:15px 0;}
- .rightlist #app{margin-left:30px;}
- .rightlist #app .el-breadcrumb{padding:30px 0;font-size:16px;}
- /* .el-form-item__label{padding-right:30px;} */
- .tip{font-size:12px;color:#999;font-weight:500}
- .rightlist-head-con{padding-right:20px;font-size:16px;color:#888;}
- /* .rightlist-head-con{float:left;padding-right:20px;font-size:16px;color:#888;} */
- .el-tag{font-weight:700;font-size:15px;margin-bottom:30px;}
- .el-icon-edit{font-size:16px;padding:0 15px;color:#409EFF;cursor: pointer;}
- /* 滑块选择小白点 */
- .el-switch.is-checked .el-switch__core::after {left: 100%;margin-left: -17px;}
- .el-switch__core::after {content: "";position: absolute;top: 1px;left: 1px;border-radius: 100%;transition: all .3s;width: 16px;height: 16px;background-color: #fff;}
- .tip1{font-size:12px;color:red;font-weight:500}
- [v-cloak]{
- display:none;
- }
- /* 计数器样式 */
- .el-input-number__decrease, .el-input-number__increase {width: 25px;}
- .el-input-number .el-input__inner {padding-left: 0px;padding-right: 0px;}
- </style>
- <div class="rightlist">
- <div id="app" v-cloak v-loading="loading">
- <el-breadcrumb separator-class="el-icon-arrow-right">
- <el-breadcrumb-item><a href="{{ yzWebFullUrl('plugin.help-user-buying.admin.index.index') }}">返回选择</a></el-breadcrumb-item>
- <el-breadcrumb-item>[[goods.title?goods.title:'平台自营']]</el-breadcrumb-item>
- </el-breadcrumb>
- <el-row :gutter="50">
- <!-- left -->
- <el-col :span="12">
- <div>
- <div style="background:#f9f9f9;padding:15px 10px;font-weight:900;border:1px solid #e9e9e9;">
- 会员信息
- </div>
- <div style="border:1px solid #e9e9e9;">
- <el-form :model="member" ref="member" label-width="20%" style="padding-top:50px;">
- <el-form-item label="客户">
- <el-input v-model="member.nickname" disabled style="width:70%"></el-input><br>
- <img :src="member.avatar_image" style="width:70px;height:70px;">
- </el-form-item>
- <el-form-item label="配送方式">
- <el-radio v-for="(item,index) in deliveryMethod" :key="index" v-model.number="dispatch_type_id" :label="item.value">[[item.name]]</el-radio>
- </el-form-item>
- <el-form-item label="收件人">
- <el-input v-model="member.member_address.username" style="width:70%"></el-input>
- </el-form-item>
- <el-form-item label="联系电话">
- <el-input v-model="member.member_address.mobile" style="width:70%"></el-input>
- </el-form-item>
- <el-form-item label="所在区域" v-loading="all_loading">
- <el-select v-model="member.member_address.province" placeholder="请选择省" clearable style="width:20%" @change="changeProvince()" value-key="id">
- <el-option v-for="item in province_list" :key="item.id" :label="item.areaname" :value="item"></el-option>
- </el-select>
- <el-select v-model="member.member_address.city" placeholder="请选择市" clearable style="width:20%" value-key="id" @change="changeCity()">
- <el-option v-for="item in city_list" :key="item.id" :label="item.areaname" :value="item"></el-option>
- </el-select>
- <el-select v-model="member.member_address.district" placeholder="请选择区" clearable style="width:20%" value-key="id" @change="changeDistrict()">
- <el-option v-for="item in district_list" :key="item.id" :label="item.areaname" :value="item"></el-option>
- </el-select>
- <el-select v-if="is_street" v-model="member.member_address.street" placeholder="请选择街道" clearable style="width:20%" value-key="id">
- <el-option v-for="item in street_list" :key="item.id" :label="item.areaname" :value="item"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="详细地址">
- <el-input v-model="member.member_address.address" style="width:70%"></el-input>
- </el-form-item>
- <el-form-item label="">
- <el-button type="primary" @click="showMemberAddressList()" size="small">其他地址</el-button>
- </el-form-item>
- </el-form>
- </div>
- </div>
- </el-col>
- <!-- right -->
- <el-col :span="12">
- <div v-for="(item,index) in orders_list" style="margin-bottom:20px;">
- <div style="background:#f9f9f9;padding:15px 10px;font-weight:900;border:1px solid #e9e9e9;">
- 订单信息
- </div>
- <!-- 表格start -->
- <el-table :data="item.order_goods" style="width: 100%;border:1px solid #e9e9e9" v-loading="loading" max-height="400">
- <el-table-column prop="id" label="商品名称" min-width="150">
- <template slot-scope="scope">
- <div style="overflow:hidden;white-space:nowrap;text-overflow:ellipsis;">
- <div>[[scope.row.title]]</div>
- </div>
- </template>
- </el-table-column>
- <el-table-column prop="options" label="规格" max-width="120" align="center">
- <template slot-scope="scope">
- <div>[[scope.row.goods_option_title?scope.row.goods_option_title:'']]</div>
- </template>
- </el-table-column>
- <el-table-column prop="goods_price" label="单价" width="120" align="center">
- <template slot-scope="scope">
- <div>[[scope.row.goods_price/scope.row.total]]</div>
- </template>
- </el-table-column>
- <el-table-column label="数量" prop="total" max-width="120" align="center"></el-table-column>
-
- </el-table>
- <!-- 表格end -->
- <div>
- <div style="background:#f9f9f9;padding:15px 10px;font-weight:900;border:1px solid #e9e9e9">
- 优惠抵扣信息
- </div>
- <div style="border:1px solid #e9e9e9;font-weight:900;line-height:50px">
- <div v-for="(item1,index1) in item.order_deductions" :key="index1">
- <div style="padding-left:2.5%;display:inline-block;width:70%">可用[[item1.coin]][[item1.name]] 抵扣[[item1.amount]]元</div>
- <div style="padding-rifht:2.5%;display:inline-block;width:25%;text-align:right">
- <el-switch v-model="item1.checked" @change="changePoint()"></el-switch>
- </div>
- </div>
- </div>
-
- </div>
- </div>
- <div>
- <div style="background:#f9f9f9;padding:15px 10px;font-weight:900;border:1px solid #e9e9e9;margin-top:30px;">
- 优惠抵扣信息
- </div>
- <div style="border:1px solid #e9e9e9;font-weight:900;line-height:50px">
-
- <div>
- <div style="padding-left:2.5%;display:inline-block;width:70%">优惠券 [[total_coupons]]张可用</div>
- <div style="padding-rifht:2.5%;display:inline-block;width:25%;text-align:right">
- <span style="color:#409EFF;cursor:pointer" @click="is_discounts=true">
- [[used_coupons==0?'未使用':'已使用'+used_coupons+'张']]
- </span>
- </div>
- </div>
- </div>
- <div style="background:#f9f9f9;padding:15px 10px;font-weight:900;border:1px solid #e9e9e9;">
- <span v-for="(item,index) in amount_items">
- <span>[[item.name]]:<span style="color:red">¥[[item.amount]]</span></span>
- </span>
- <span>合计:<span style="color:red">¥[[total_price]] </span></span>
-
- </div>
- <el-button align="center" @click="order">立即下单</el-button>
-
- </div>
- </el-col>
- </el-row>
- <!-- 选择优惠券弹出框 -->
- <el-dialog title="选择优惠券" :visible.sync="is_discounts" v-loading="loading">
- <div>
- <template>
- <!-- 表格start -->
- <el-table :data="discounts_list" style="width: 100%;" max-height="500" ref="table" v-loading="table_loading">
- <el-table-column width="55">
- <template slot-scope="scope">
- <el-checkbox v-model="scope.row.checked" @change="changeDiscounts()" :disabled="scope.row.valid==false"></el-checkbox>
- </template>
- </el-table-column>
- <el-table-column prop="belongs_to_coupon.name" label="优惠券名称" min-width="120" align="center"> </el-table-column>
- <el-table-column prop="details" label="优惠详情" min-width="120" align="center">
- <template slot-scope="scope">
- <div>
- <span v-if="scope.row.belongs_to_coupon.enough==0">不限 </span>
- <span v-else>满[[scope.row.belongs_to_coupon.enough可用]] </span>
- <span v-if="scope.row.belongs_to_coupon.discount=='0.00'">立减[[scope.row.belongs_to_coupon.deduct]]元 </span>
- <span v-else>打[[scope.row.belongs_to_coupon.discount]]折 </span>
- </div>
- </template>
- </el-table-column>
- </el-table>
- <!-- 表格end -->
- </template>
- </div>
- <span slot="footer" class="dialog-footer">
- <!-- <el-button @click="is_discounts = false">取 消</el-button> -->
- <el-button type="primary" @click="is_discounts = false">确 定</el-button>
- </span>
- </el-dialog>
- <!-- 选择支付方式弹出框 -->
- <el-dialog title="确认付款" :visible.sync="is_pay" v-loading="loading">
- <div style="text-align:center;line-height:40px;font-weight:600;">
- <div>会员余额:[[pay.credit2]]</div>
- <div> 支付流水号:[[pay.pay_sn]]</div>
- <div> 支付金额:<span style="color:red">[[pay.amount]]</span>元</div>
- <div>
- <el-button v-for="(item1,index1) in buttons" :key="index1" @click="confirmPay(item1)">[[item1.name]]</el-button>
- </div>
- </div>
- <span slot="footer" class="dialog-footer">
- <el-button @click="jump">取 消</el-button>
- <!-- <el-button type="primary" @click="is_discounts = false">确 定</el-button> -->
- </span>
- </el-dialog>
- <!-- 选择收货地址 -->
- <el-dialog :visible.sync="modal_member_address_list" width="900px" title="选择收货地址">
- <div style="overflow:auto">
- <el-table :data="member_address_list" style="width: 100%;overflow:auto">
- <el-table-column prop="username" label="姓名" align="center"></el-table-column>
- <el-table-column prop="mobile" label="手机号" align="center"></el-table-column>
- <el-table-column prop="address_info" label="地址" align="center"></el-table-column>
- <el-table-column prop="" label="操作" align="center">
- <template slot-scope="scope">
- <el-button @click="selectSendAddress(scope.row)">选择</el-button>
- </template>
- </el-table-column>
- </el-table>
- </div>
- <span slot="footer" class="dialog-footer">
- <el-button @click="modal_member_address_list = false">取 消</el-button>
- </span>
- </el-dialog>
- <el-dialog :visible.sync="yz_supply_pay_order_show" width="750px" title="汇聚充值">
- <el-row style="margin-left: 15%;margin-bottom:15px; ">
- <el-input v-model="rechargePrice" placeholder="" style="width:70%;"></el-input>
- <el-button type="primary" @click="yzSupplyRecharge()">充值</el-button>
- </el-row>
- <div v-if="rechargePriceCodeUrl != ''" >
- <div style="display: flex;justify-content: center; margin-bottom: 10px;">
- <img :src="this.rechargePriceCodeUrl" alt="" style="width:150px;height:150px;border-radius: 5px;cursor: pointer;">
- </div>
- <p style="color: red;" align="center">*充值之后,自动提交本订单,请检查是否存在未自动提交订单</p>
- </div>
- <div style="height:300px;overflow:auto" id="close-order">
- <div style="background:#eff3f6;border-radius:8px;padding:20px 10px;color:#000;font-weight:500;line-height:36px;">
- <div style="font-size:16px;font-weight:600;color:#000">信息:部分订单中台余额不足支付失败</div>
- <div>
- <div style="display:inline-block;width:150px;text-align:right;margin-right:30px">汇聚余额</div>
- <div style="display:inline-block;">[[balance?balance:0]]</div>
- </div>
- <div>
- <div style="display:inline-block;width:150px;text-align:right;margin-right:30px">订单金额</div>
- <div style="display:inline-block;">[[order_price?order_price:"获取失败"]]</div>
- </div>
- </div>
- </div>
- <span slot="footer" class="dialog-footer">
- <el-button @click="yz_supply_pay_order_show = false">取 消</el-button>
- </span>
- </el-dialog>
- </div>
- @include("Yunshop\YzSupply::admin.order.vue.aggregateYzSupplyOperation")
- <script>
- var app = new Vue({
- el:"#app",
- delimiters: ['[[', ']]'],
- data() {
- let request = {!! $request !!};
- console.log(request);
- let order_type = request.order_type;
- let member = {!! $member !!};
- let middleground_configuration_id = {!! $middleground_configuration_id !!};
- console.log(member);
- // 'deliveryMethod' => json_encode($deliveryMethod)
- let deliveryMethod = {!! $deliveryMethod !!};
- console.log(deliveryMethod);
- if(member.member_address.length==0){
- member.member_address = {
- address: "",
- city: "",
- city_id: 0,
- district: "",
- district_id: 0,
- mobile: "",
- province: "",
- province_id: 0,
- street: "",
- street_id: 0,
- username: "",
- };
- }
- let is_street = {!! $is_street !!};
- console.log(is_street)
- let order_url = {!! $order_url !!};
- console.log(order_url)
- let store = {!! $store?:'{id:0}' !!};
- return{
- create_order_id:0,
- order_price:0,
- balance:0,//中台汇聚余额
- yz_supply_pay_order_show:false,
- rechargePrice:0,//充值金额
- rechargePriceCodeUrl:"",
- pay_sn:"",//充值订单号
- order_ids:[],
- middleground_configuration_id:middleground_configuration_id,
- modal_member_address_list:false, //会员地址
- request_member_address_list:true, //是否请求获取地址
- member_address_list:{},
- value:"",//测试
- province_list:[],//省
- city_list:[],//市
- district_list:[],//区域
- street_list:[],//街道
- orders_list:[],//订单列表
- address:"",//用户信息,优惠选择必传
- amount_items:"",//总抵扣、总优惠等,优惠选择回传
- discounts_list:[],//优惠券列表
- store:store,//门店信息
- order_type:order_type,//订单类型。32门店,92供应商,0普通商品
- deliveryMethod:deliveryMethod,//配送方式列表
- dispatch_type_id:1,//配送方式,默认快递,值为1
- no_deduction_ids:0,//默认开启积分抵扣
- pay:{
- credit2:"",
- amount:"",
- pay_sn:"",
- id:0,
- },//支付信息
- buttons:[],//支付方式列表
- total_coupons:0,//优惠券共几张
- used_coupons:0,//优惠券使用几张
- total_price:"",//总价格
- all_loading:false,
- loading:false,
- goods:request,//商品信息
- member:member,//客户信息
- is_street:is_street,//是否开启街道
- order_url:order_url,//链接
- table_loading:false,
- category_list:[],
- form:{},
- is_discounts:false,//选择优惠券弹出框
- is_pay:false,//选择支付方式弹出框
- //分页
- total:0,
- per_size:0,
- current_page:0,
- rules:{},
- }
- },
- created() {
- let json = {};
- if(this.order_type == 0 || this.order_type==32) {
- json = {
- dispatch_type_id:this.dispatch_type_id,
- goods:JSON.stringify(this.goods.goods),
- address:{},
- orders:'[]',
- store_id:this.goods.owner_id,
- no_deduction_ids:this.no_deduction_ids,
- };
- }
- if(this.order_type == 92) {
- json = {
- dispatch_type_id:this.dispatch_type_id,
- goods:JSON.stringify(this.goods.goods),
- address:{},
- orders:'[]',
- no_deduction_ids:this.no_deduction_ids,
- // store_id:this.goods.owner_id,
- };
- }
- this.getOrderList(json);
- this.getDefaultDispatchTypeId();
- console.log(this.member);
- this.getProvince();
- this.changeProvince(this.member.member_address.province_id);
- this.changeCity(this.member.member_address.city_id);
- if(this.is_street) {
- this.changeDistrict(this.member.member_address.district_id);
- }
- this.all_loading = false;
- },
- methods: {
- getDefaultDispatchTypeId() {
- this.dispatch_type_id = this.deliveryMethod[0].value;
- },
- //选择收货地址
- selectSendAddress(row) {
- if(row.length != 0){
- this.member.member_address = row;
- this.modal_member_address_list = false;
- }
- },
- showMemberAddressList()
- {
- if (this.request_member_address_list) {
- this.$http.post("{!! yzWebFullUrl('plugin.yz-supply.admin.member-address.get-member-address-list') !!}",{member_id:this.member.uid}).then(response => {
- console.log(response);
- if(response.data.result==1){
- this.member_address_list = response.data.data;
- } else{
- that.$message.error(response.data);
- }
- this.modal_member_address_list = true;
- this.request_member_address_list = false;
- }),function(res){
- console.log(res);
- };
- } else {
- this.modal_member_address_list = true;
- }
- },
- getOrderList(json){
- var that = this;
- that.loading = true;
- json['type'] = 5;
- that.$http.post(this.order_url.pre_url,json).then(response => {
- console.log(response);
- if(response.data.result==1){
- console.log(response);
- that.total_coupons = response.data.data.discount.member_coupons.length;
- that.no_deduction_ids = response.data.data.discount.default_deduction ? response.data.data.discount.default_deduction : 0;
- that.used_coupons = 0;
- that.address = response.data.data.dispatch.default_member_address;
- that.amount_items = response.data.data.amount_items;
- that.orders_list = response.data.data.orders;
- that.total_price = response.data.data.total_price;
- that.discounts_list = response.data.data.discount.member_coupons;//优惠券
- if(that.discounts_list.length>0) {
- that.discounts_list.forEach((item,index) => {
- if(item.checked){
- that.used_coupons++;
- }
- })
- }
- }
- else{
- that.$message.error(response.data.msg);
- that.is_discounts = false;
- window.location.href="{!! yzWebUrl('plugin.yz-supply.admin.bulk-order.index') !!}" + "&middleground_configuration_id="+this.middleground_configuration_id;
- }
- that.loading = false;
- this.all_loading = false;
- }),function(res){
- console.log(res);
- that.loading = false;
- this.all_loading = false;
- };
- },
- // 获取省份信息
- getProvince() {
- var that = this;
- that.all_loading = true;
- that.$http.get("{!! yzWebFullUrl('plugin.yz-supply.admin.member-address.get-address',['type' => 'province']) !!}",).then(response => {
- console.log(response);
- if(response.data.result==1){
- this.province_list = response.data.data;
- // this.chooseProvince('city',this.member.member_address.province_id);
- }
- else{
- that.$message.error(response.data);
- that.all_loading = false;
- }
- that.all_loading = false;
- }),function(res){
- console.log(res);
- that.all_loading = false;
- };
- },
- // 省份改变
- changeProvince(parentid) {
- var that = this;
- if(!parentid) {
- parentid = that.member.member_address.province.id;
- that.member.member_address.city_id = 0;
- that.member.member_address.city = '';
- that.member.member_address.district_id = 0;
- that.member.member_address.district = '';
- that.member.member_address.street_id = 0;
- that.member.member_address.street = '';
- }
- that.all_loading = true;
- that.$http.get("{!! yzWebFullUrl('plugin.yz-supply.admin.member-address.get-address',['type' => 'city','parentid' => '']) !!}"+parentid).then(response => {
- console.log(response);
- if(response.data.result==1){
- this.city_list = response.data.data;
- }
- else{
- // that.$message.error(response.data);
- }
- that.all_loading = false;
- }),function(res){
- console.log(res);
- that.all_loading = false;
- };
- },
- // 城市改变
- changeCity(parentid) {
- var that = this;
- if(!parentid) {
- parentid = that.member.member_address.city.id;
- that.member.member_address.district_id = 0;
- that.member.member_address.district = '';
- that.member.member_address.street_id = 0;
- that.member.member_address.street = '';
- }
- that.all_loading = true;
- that.$http.get("{!! yzWebFullUrl('plugin.yz-supply.admin.member-address.get-address',['type' => 'district','parentid' => '']) !!}"+parentid).then(response => {
- if(response.data.result==1){
- that.district_list = response.data.data;
- }
- else{
- // that.$message.error(response.data);
- }
- that.all_loading = false;
- }),function(res){
- console.log(res);
- that.all_loading = false;
- };
- },
- // 区域改变
- changeDistrict(parentid) {
- var that = this;
- if(this.is_street) {
- if(!parentid) {
- parentid = that.member.member_address.district.id;
- that.member.member_address.street_id = 0;
- that.member.member_address.street = '';
- }
- that.all_loading = true;
- that.$http.get("{!! yzWebFullUrl('plugin.yz-supply.admin.member-address.get-address',['type' => 'street','parentid' => '']) !!}"+parentid).then(response => {
- if(response.data.result==1){
- that.street_list = response.data.data;
- }
- else{
- // that.$message.error(response.data);
- }
- that.all_loading = false;
- }),function(res){
- console.log(res);
- that.all_loading = false;
- };
- }
- },
- // 积分、爱心值修改
- changePoint() {
- var that = this;
- // 优惠券传值
- let arr = [];
- this.discounts_list.forEach((item,index) => {
- if(item.checked) {
- arr.push(item.id);
- }
- })
- let member_coupon_ids = arr.join(",")
- // 积分、爱心值传值
- var orders = [];
- for(let i=0;i<this.orders_list.length;i++) {
- orders.push({deduction_ids:[],pre_id:''})
- for(var j in this.orders_list[i].order_deductions) {
- if(this.orders_list[i].order_deductions[j].checked==true){
- orders[i].deduction_ids.push(this.orders_list[i].order_deductions[j].code)
- }
- }
- orders[i].pre_id = this.orders_list[i].pre_id
- }
- console.log(orders)
- let json = {
- goods:JSON.stringify(this.goods.goods),
- orders:JSON.stringify(orders),
- dispatch_type_id: this.dispatch_type_id,
- address: {},
- member_coupon_ids:member_coupon_ids,
- store_id:this.goods.owner_id,
- no_deduction_ids:this.no_deduction_ids,
- }
- this.getOrderList(json)
- },
- // 优惠券修改
- changeDiscounts() {
- console.log(this.orders_list)
- this.changePoint()
- },
- // 立即下单
- order() {
- let that = this;
- let address = {};
- // 收货信息数据处理
- if (this.dispatch_type_id == 1) {
- if(!that.verification()) {
- return;
- }
- if(this.member.member_address.province.id) {
- address.province = this.member.member_address.province.areaname;
- }
- else {
- address.province = this.member.member_address.province;
- }
- if(this.member.member_address.city.id) {
- address.city = this.member.member_address.city.areaname;
- }
- else {
- address.city = this.member.member_address.city;
- }
- if(this.member.member_address.district.id) {
- address.district = this.member.member_address.district.areaname;
- }
- else {
- address.district = this.member.member_address.district;
- }
- if(this.is_street){
- if(this.member.member_address.street.id) {
- address.street = this.member.member_address.street.areaname;
- }
- else {
- address.street = this.member.member_address.street;
- }
- }
- else{
- delete(address.street);
- }
- address.uid = this.member.member_address.uid;
- address.username = this.member.member_address.username;
- address.mobile = this.member.member_address.mobile;
- address.address = this.member.member_address.address;
- } else if (this.dispatch_type_id == 2) {
- if(!this.member.member_address.username) {
- this.$message.error("请输入收件人!");
- return;
- }
- if(!this.member.member_address.mobile) {
- this.$message.error("请输入联系电话!");
- return;
- }
- }
- // 优惠券传值
- let arr = [];
- this.discounts_list.forEach((item,index) => {
- if(item.checked) {
- arr.push(item.id);
- }
- })
- let member_coupon_ids = arr.join(",")
- // 积分、爱心值传值
- var orders = [];
- for(let i=0;i<this.orders_list.length;i++) {
- orders.push({deduction_ids:[],pre_id:''})
- for(var j in this.orders_list[i].order_deductions) {
- if(this.orders_list[i].order_deductions[j].checked==true){
- orders[i].deduction_ids.push(this.orders_list[i].order_deductions[j].code)
- }
- }
- orders[i].pre_id = this.orders_list[i].pre_id
- }
- console.log(orders)
- let json = {};
- if(this.order_type == 32) {
- json = {
- type:5,
- goods:JSON.stringify(this.goods.goods),
- orders:JSON.stringify(orders),
- dispatch_type_id: this.dispatch_type_id,
- address: JSON.stringify(address),
- member_coupon_ids:member_coupon_ids,
- store_id:this.goods.owner_id,
- };
- if (this.dispatch_type_id == 2) {
- json.address = {};
- json.mobile = this.member.member_address.mobile;
- json.realname = this.member.member_address.username;
- }
- } else {
- json = {
- type:5,
- goods:JSON.stringify(this.goods.goods),
- orders:JSON.stringify(orders),
- dispatch_type_id: this.dispatch_type_id,
- address: JSON.stringify(address),
- member_coupon_ids:member_coupon_ids,
- // store_id:this.goods.owner_id,
- }
- }
-
- that.loading = true;
- that.$http.post(this.order_url.create_url,json).then(response => {
- console.log(response);
- if(response.data.result==1){
- console.log(response.data.data.order_ids);
- this.order_ids = response.data.data.order_ids;
- that.getPayType(response.data.data.order_ids);
- }
- else{
- that.$message.error(response.data.msg);
- }
- that.loading = false;
- }),function(res){
- console.log(res);
- that.loading = false;
- };
- },
- getPayType(order_ids) {
- var that = this;
- that.loading = true;
- that.$http.post("{!! yzApiUrl('plugin.yz-supply.admin.album.user-merge-pay.index') !!}",{type:5,order_ids:order_ids}).then(response => {
- console.log(response);
- if(response.data.result==1){
- that.is_pay = true;
- let btns = response.data.data.buttons;
- for(let i in btns) {
- that.buttons.push(btns[i])
- }
- console.log(that.buttons);
- that.buttons = response.data.data.buttons;
- that.pay.credit2 = response.data.data.member.credit2;
- that.pay.amount = response.data.data.order_pay.amount;
- that.pay.pay_sn = response.data.data.order_pay.pay_sn;
- that.pay.id = response.data.data.order_pay.id;
- }
- else{
- that.$message.error(response.data.msg);
- }
- that.loading = false;
- }),function(res){
- console.log(res);
- that.loading = false;
- };
- },
- // 确认支付
- confirmPay(item) {
- var that = this;
- that.loading = true;
- // 余额支付
- that.$http.post("{!! yzApiUrl('plugin.yz-supply.admin.album.user-merge-pay.credit2') !!}",{type:5,order_pay_id:that.pay.id}).then(response => {
- console.log(response);
- if(response.data.result==1){
- that.$message.success(response.data.msg);
- // that.jump();
- that.verifyOrderPay();
- }
- else{
- that.$message.error(response.data.msg);
- }
- that.loading = false;
- }),function(res){
- console.log(res);
- that.loading = false;
- };
- },
- //验证订单在中台是否都支付成功
- verifyOrderPay(){
- var that = this;
- that.loading = true;
- // 余额支付
- that.$http.post("{!! yzApiUrl('plugin.yz-supply.admin.album.user-merge-pay.verify-order-pay') !!}",{order_ids:that.order_ids,middleground_configuration_id:that.middleground_configuration_id}).then(response => {
- console.log(response);
- if(response.data.result==1){
- if (response.data.data.price <= 0){
- that.$message.success("下单成功");
- that.jump();
- return
- }
- this.order_price = (response.data.data.price/100).toFixed(2);
- this.rechargePrice = this.order_price;
- this.balance = response.data.data.balance;
- this.yz_supply_pay_order_show = true;
- that.$message.success(response.data.msg);
- }
- else{
- that.$message.error(response.data.msg);
- }
- that.loading = false;
- }),function(res){
- console.log(res);
- that.loading = false;
- };
- },
- verification(){
- if(!this.member.member_address.username) {
- this.$message.error("请输入收件人!")
- return;
- }
- if(!this.member.member_address.mobile) {
- this.$message.error("请输入联系电话!")
- return;
- }
- if(!(/^1\d{10}$/.test(this.member.member_address.mobile))){
- this.$message.error("请输入正确的联系电话格式!")
- return;
- }
- if(!this.member.member_address.district){
- this.$message.error("请选择所在区域!")
- return;
- }
- if(this.is_street) {
- if(!this.member.member_address.street){
- this.$message.error("请选择所在区域!")
- return;
- }
- }
- if(!this.member.member_address.address){
- this.$message.error("请输入详细地址!")
- return;
- }
- return true;
- },
- jump() {
- window.location.href="{!! yzWebUrl('plugin.yz-supply.admin.bulk-order.index') !!}" + "&middleground_configuration_id="+this.middleground_configuration_id;
- },
- //获取充值状态
- getRechargeStatus(){
- this.$http.post('{!! yzWebFullUrl('plugin.yz-supply.admin.order-vue-list.get-recharge-status') !!}',{middleground_configuration_id:this.middleground_configuration_id,pay_sn:this.pay_sn}).then(function (response) {
- if (response.data.result) {
- console.log(response.data.data.data);
- //充值状态为0 充值弹窗显示,充值二维码存在 就一直轮询查询到充值成功为止
- if(response.data.data.data.pay_status == 0 ){
- if(this.yz_supply_pay_order_show != true || this.rechargePriceCodeUrl == ""){
- return;
- }
- setTimeout(() => {
- this.getRechargeStatus()
- }, 1000);
- return
- }
- this.yz_supply_pay_order_show = false;
- this.rechargePriceCodeUrl = "";
- this.createOrder1(this.create_order_id);
- this.$message({type: 'success',message: '充值成功'});
- } else{
- loading.close();
- this.$message({type: 'error',message: response.data.msg});
- }
- },function (response) {
- loading.close();
- this.$message({type: 'error',message: response.data.msg});
- }
- );
- },
- //充值
- yzSupplyRecharge(){
- if (this.rechargePrice <= 0){
- this.$message({type: 'error',message: "请输入充值金额"});
- return
- }
- this.rechargePriceCodeUrl = "";
- let loading = this.$loading({target:document.querySelector(".content"),background: 'rgba(0, 0, 0, 0)'});
- this.$http.post('{!! yzWebFullUrl('plugin.yz-supply.admin.order-vue-list.yz-supply-recharge-price') !!}',{middleground_configuration_id:this.middleground_configuration_id,recharge_price:this.rechargePrice}).then(function (response) {
- if (response.data.result) {
- this.rechargePriceCodeUrl = response.data.data.data.rd_Pic;
- this.pay_sn = response.data.data.data.r2_OrderNo;
- this.getRechargeStatus();
- console.log(response.data.data.data);
- loading.close();
- this.$message({type: 'success',message: '操作成功'});
- } else{
- loading.close();
- this.$message({type: 'error',message: response.data.msg});
- }
- },function (response) {
- loading.close();
- this.$message({type: 'error',message: response.data.msg});
- }
- );
- },
- //不需要确认框提交订单版本
- createOrder1() {
- let loading = this.$loading({target:document.querySelector(".content"),background: 'rgba(0, 0, 0, 0)'});
- this.$http.post('{!! yzWebFullUrl('plugin.yz-supply.admin.order-vue-list.create-orders') !!}',{order_ids:this.order_ids}).then(function (response) {
- if (response.data.result) {
- //代表需要支付
- if (response.data.data.length == 0){
- this.$message({type: 'success',message: '操作成功'});
- loading.close();
- this.jump();
- }else{
- this.$message({type: 'error',message: response.data.data.msg});
- }
- console.log(response.data);
- } else{
- this.$message({type: 'error',message: response.data.msg});
- loading.close();
- }
- },function (response) {
- this.$message({type: 'error',message: response.data.msg});
- loading.close();
- }
- );
- },
- },
- })
- </script>
- @endsection
|