| | |
| | | <el-table-column |
| | | label="小计"> |
| | | <template slot-scope="scope"> |
| | | {{scope.row.zkPrice * scope.row.count }} |
| | | {{(scope.row.zkPrice * scope.row.count).toFixed(2) }} |
| | | </template> |
| | | </el-table-column> |
| | | |
| | |
| | | |
| | | <li>订单总金额:{{order.total}}</li> |
| | | |
| | | <li>整单折扣:<span class="arrears" v-if="order.zkTotal != null">{{order.total - order.zkTotal}}</span></li> |
| | | <li>整单折扣:<span class="arrears" v-if="order.zkTotal != null">{{(order.total - order.zkTotal).toFixed(2)}}</span></li> |
| | | <!-- <li v-if="order.arrears>0">订单欠款:<span class="arrears">{{order.arrears}}</span></li>--> |
| | | <!-- <li v-if="order.arrears<0">找零:<span class="arrears">{{order.arrears}}</span></li>--> |
| | | </ul> |
| | |
| | | title="业绩设置" |
| | | :visible.sync="drawer" |
| | | :direction="direction" |
| | | size="50%" |
| | | size="90%" |
| | | > |
| | | <el-row> |
| | | <el-col :span="24"> |
| | |
| | | |
| | | <el-row type="flex" align="middle" style="padding: 10px 0;"> |
| | | <el-col :span="5" style="text-align: center;">收款方式</el-col> |
| | | <el-col class="paymethod" :span="15"> |
| | | <el-col class="paymethod" :span="18"> |
| | | <el-row> |
| | | <ul> |
| | | <span v-for="(item, index) in payMethods"> |
| | |
| | | @check="(click, checked,$item)=>{handleCheckChange(click, checked,$item)}" |
| | | :props="defaultProps"> |
| | | </el-tree> |
| | | <li :class="{active : item.isActive}" slot="reference" @click="payMethodSelect(item, index)">{{item.value}}</li> |
| | | <li :class="{active : item.isActive}" slot="reference" @click="payMethodSelect(item, index)"><div style=" height:30px; line-height: 30px; display: flex; align-items: center"><img style="width: 25px; height: 25px; align-items: center;" :src="item.img"><span style="margin-left: 5px;">{{item.value}}</span></div></li> |
| | | </el-popover> |
| | | </span> |
| | | </ul> |
| | |
| | | <el-row style="line-height: 50px;" v-for="(item, index) in payMoneys"> |
| | | <el-col :span="6" style="text-align: right; padding-right: 10px; font-size: 12px;">{{item.value}}</el-col> |
| | | <el-col :span="8"><el-input v-model="item.money"></el-input></el-col> |
| | | <el-col :span="6" style="margin-left: 10px;" v-if="item.type == '储值卡'">{{item.isGift == 1 ? '赠送余额' : '余额' }}:<span class="arrears">¥ {{item.balance}}</span></el-col> |
| | | <el-col :span="8" style="margin-left: 10px;" v-if="item.type == '储值卡'">{{item.isGift == 1 ? '赠送余额' : '余额' }}:<span class="arrears">¥ {{item.balance}}</span></el-col> |
| | | </el-row> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | direction: 'rtl', |
| | | //当前登录用户 |
| | | loginUser: {}, |
| | | staffUser:{}, |
| | | //业绩用户列表 |
| | | userList: [], |
| | | order: { |
| | |
| | | vipLoading: false, |
| | | payMethods: [{ |
| | | value: '现金支付', |
| | | img: '/images/pay/cash.png', |
| | | isActive: false, |
| | | type: '现金支付' |
| | | }, { |
| | | value: '微信', |
| | | img: '/images/pay/wechat.png', |
| | | isActive: false, |
| | | type: '微信' |
| | | }, { |
| | | value: '支付宝', |
| | | img: '/images/pay/zhifubao.png', |
| | | isActive: false, |
| | | type: '支付宝' |
| | | }, { |
| | | value: '银行卡', |
| | | img: '/images/pay/yinlian.png', |
| | | isActive: false, |
| | | type: '银行卡' |
| | | }, { |
| | | value: '团购', |
| | | img: '/images/pay/tuan.png', |
| | | isActive: false, |
| | | type: '团购' |
| | | }, { |
| | | value: '储值卡', |
| | | img: '/images/pay/card.png', |
| | | isActive: false, |
| | | type: '储值卡' |
| | | }, { |
| | | },{ |
| | | value: '欠款', |
| | | img: '/images/pay/qian.png', |
| | | isActive: false, |
| | | type: '欠款' |
| | | },], |
| | |
| | | created: function () { |
| | | let _this = this; |
| | | |
| | | //获取登录用户信息 |
| | | AjaxProxy.requst({ |
| | | app: _this, |
| | | url: basePath + '/admin/getLoginUser', |
| | | callback: function (data) { |
| | | _this.loginUser = data.mapInfo.user; |
| | | |
| | | if (id) { |
| | | //加载订单信息 |
| | | AjaxProxy.requst({ |
| | | app: _this, |
| | | url: basePath + '/admin/order/findOrderById/' + id, |
| | | callback: function (data) { |
| | | _this.order = data.rows[0]; |
| | | //修改支付金额 |
| | | _this.changeVip(_this.order.vipId); |
| | | let items = _this.order.items; |
| | | let orderPayMoney = 0; |
| | | //设置欠款订单设置欠款金额等于支付金额,非欠款订单设置折扣金额等于支付金额 |
| | | items.forEach(item => { |
| | | if (item.arrears > 0) { |
| | | item.payMoney = item.arrears; |
| | | } else { |
| | | item.payMoney = item.zkPrice; |
| | | } |
| | | orderPayMoney += item.payMoney; |
| | | |
| | | //业绩设置 |
| | | _this.achieveList.push({ |
| | | orderItem: item, |
| | | staff: _this.loginUser, |
| | | saleId: _this.loginUser.suId, |
| | | achieveMoney: item.payMoney, |
| | | commission : 0, |
| | | t3 : '现金业绩', |
| | | isShare: false, |
| | | }); |
| | | }); |
| | | _this.order.payMoney = orderPayMoney; |
| | | } |
| | | }); |
| | | |
| | | } else { |
| | | //获取门店信息 |
| | | AjaxProxy.requst({ |
| | | app: _this, |
| | | url: basePath + '/admin/shopInfo/findUserShop', |
| | | callback: function (data) { |
| | | _this.order.shopName = data.rows[0].shopName; |
| | | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | |
| | | } |
| | | }); |
| | | |
| | | _this.initMethod() |
| | | if (vipId) { |
| | | _this.changeVip(vipId); |
| | | } |
| | |
| | | }, |
| | | |
| | | methods: { |
| | | initMethod() { |
| | | let _this = this; |
| | | |
| | | //获取登录用户信息 |
| | | AjaxProxy.requst({ |
| | | app: _this, |
| | | url: basePath + '/admin/getLoginUser', |
| | | callback: function (data) { |
| | | _this.loginUser = data.mapInfo.user; |
| | | |
| | | if (id) { |
| | | //加载订单信息 |
| | | AjaxProxy.requst({ |
| | | app: _this, |
| | | url: basePath + '/admin/order/findOrderById/' + id, |
| | | callback: function (data) { |
| | | _this.order = data.rows[0]; |
| | | //修改支付金额 |
| | | _this.changeVip(_this.order.vipId); |
| | | |
| | | AjaxProxy.requst({ |
| | | app: _this, |
| | | url: basePath + '/admin/getUserById?id='+_this.order.staffId, |
| | | callback: function (data) { |
| | | _this.staffUser = data.mapInfo.user; |
| | | |
| | | let items = _this.order.items; |
| | | let orderPayMoney = 0; |
| | | //设置欠款订单设置欠款金额等于支付金额,非欠款订单设置折扣金额等于支付金额 |
| | | items.forEach(item => { |
| | | if (item.arrears > 0) { |
| | | item.payMoney = item.arrears; |
| | | } else { |
| | | item.payMoney = item.zkPrice; |
| | | } |
| | | orderPayMoney += item.payMoney; |
| | | item.uuid = MTools.uuid(); |
| | | //业绩设置 |
| | | _this.achieveList.push({ |
| | | orderItem: item, |
| | | staff: _this.staffUser, |
| | | saleId: _this.staffUser.suId, |
| | | achieveMoney: item.payMoney, |
| | | commission : 0, |
| | | t3 : '现金业绩', |
| | | isShare: false, |
| | | }); |
| | | }); |
| | | _this.order.payMoney = orderPayMoney; |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | } else { |
| | | //获取门店信息 |
| | | AjaxProxy.requst({ |
| | | app: _this, |
| | | url: basePath + '/admin/shopInfo/findUserShop', |
| | | callback: function (data) { |
| | | _this.order.shopName = data.rows[0].shopName; |
| | | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | //取消订单 |
| | | closeFram() { |
| | |
| | | } |
| | | item.count = 1; |
| | | |
| | | |
| | | //加入业绩 |
| | | this.achieveList.push({ |
| | | orderItem: item, |
| | | staff: this.loginUser, |
| | | saleId: this.loginUser.suId, |
| | | achieveMoney: item.payMoney, |
| | | t3 : '现金业绩', |
| | | commission : 0, |
| | | isShare: false, |
| | | }); |
| | | if (this.staffUser.suId) { |
| | | //加入业绩 |
| | | this.achieveList.push({ |
| | | orderItem: item, |
| | | staff: this.staffUser, |
| | | saleId: this.staffUser.suId, |
| | | achieveMoney: item.payMoney, |
| | | t3: '现金业绩', |
| | | commission: 0, |
| | | isShare: false, |
| | | }); |
| | | } else { |
| | | //加入业绩 |
| | | this.achieveList.push({ |
| | | orderItem: item, |
| | | staff: this.loginUser, |
| | | saleId: this.loginUser.suId, |
| | | achieveMoney: item.payMoney, |
| | | t3: '现金业绩', |
| | | commission: 0, |
| | | isShare: false, |
| | | }); |
| | | } |
| | | this.order.items.push(item); |
| | | } |
| | | |
| | |
| | | callback: function (data) { |
| | | let order = data.rows[0]; |
| | | console.log("order", order); |
| | | _this.order.zkTotal = order.zkTotal; |
| | | _this.order.total = order.total; |
| | | _this.order.zkTotal = order.zkTotal.toFixed(2); |
| | | _this.order.total = order.total.toFixed(2); |
| | | |
| | | //支付金额计算 |
| | | _this.order.items.forEach(item => { |
| | | let count = parseFloat(item.count); |
| | | let zkPrice = parseFloat(item.zkPrice); |
| | | |
| | | if (optionType != 1) { |
| | | // if (optionType != 1) { |
| | | //直接修改支付金额不重置支付金额 |
| | | item.payMoney = zkPrice * count; |
| | | } |
| | | // } |
| | | _this.order.payMoney += parseFloat(item.payMoney); |
| | | |
| | | _this.achieveList.forEach(achieve=>{ |
| | | if(achieve.orderItem==item){ |
| | | achieve.achieveMoney=item.payMoney; |
| | | } |
| | | }) |
| | | }); |
| | | _this.order.payMoney = _this.order.payMoney.toFixed(2); |
| | | //计算欠款 |
| | | // _this.order.arrears = _this.order.zkTotal - _this.order.payMoney; |
| | | // if (_this.order.arrears < 0) { |
| | |
| | | } |
| | | if (item.uuid == achieve.orderItem.uuid) { |
| | | let achieveNew = { |
| | | uuid:item.uuid, |
| | | beaultId: achieve.saleId, |
| | | t1: achieve.achieveMoney, |
| | | t3: achieve.t3, |
| | | projPercentage: achieve.commission, |
| | | }; |
| | | item.achaeveList.push(achieveNew); |
| | | |
| | | var flag = true; |
| | | for(var j = 0; j < item.achaeveList.length; j++) { |
| | | if(item.achaeveList[j].uuid == achieveNew.uuid && item.achaeveList[j].beaultId == achieveNew.beaultId) { |
| | | flag = false; |
| | | break; |
| | | } |
| | | } |
| | | |
| | | if (flag) { |
| | | item.achaeveList.push(achieveNew); |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | }) |
| | | |
| | | console.log(_this.order); |
| | | //校验业绩金额 |
| | | if (_this.checkAchieve()) { |
| | | let url = basePath + "/admin/order/payOrder"; |
| | |
| | | if (submitType == 1) { |
| | | if (_this.printPaper) { |
| | | _this.print(); |
| | | } else { |
| | | _this.$message.success({ |
| | | message : data.info, |
| | | duration : 1000, |
| | | onClose() { |
| | | _this.closeFram(); |
| | | } |
| | | }); |
| | | } |
| | | _this.closeFram(); |
| | | |
| | | // _this.$confirm('结算成功,是否立刻打印小票?', '提示', { |
| | | // confirmButtonText: '打印', |
| | | // cancelButtonText: '取消', |
| | |
| | | } else { |
| | | _this.$message.success(data.info); |
| | | } |
| | | |
| | | if(parent.myGrid) { |
| | | parent.myGrid.serchData(); |
| | | } |
| | |
| | | } |
| | | } else { |
| | | Vue.set(item,'isActive',true); |
| | | var hasAmount = 0; |
| | | for(var i = 0; i < payMoneys.length; i++) { |
| | | hasAmount += parseFloat(payMoneys[i].money); |
| | | } |
| | | if (_this.order.payMoney - hasAmount > 0) { |
| | | Vue.set(item, 'money', _this.order.payMoney - hasAmount); |
| | | } |
| | | _this.payMoneys.push(item); |
| | | } |
| | | }); |