Commit 2ced1d48 authored by guoyou's avatar guoyou

发布会奖品设置,延期租车

parent 3a30a8f6
...@@ -131,3 +131,11 @@ export function exportExcel(query) { ...@@ -131,3 +131,11 @@ export function exportExcel(query) {
responseType: 'blob' responseType: 'blob'
}); });
} }
export function postponeApi(param) {
return fetch({
url: 'api/order/baseOrder/bg/delay-rent-order',
method: 'post',
data: param
});
}
...@@ -55,16 +55,18 @@ ...@@ -55,16 +55,18 @@
<li v-for="(item,index) in table" :key="index"> <li v-for="(item,index) in table" :key="index">
<!-- 序号 --> <!-- 序号 -->
<p>宫格{{item.serialNumber}}</p> <p>宫格{{item.serialNumber}}</p>
<!-- 奖品类型 --> <!-- 奖品类型 -->
<p> <p>
<el-select v-model="item.prizeGoodsType" clearable placeholder="请选择"> <el-select v-model="item.prizeGoodsType" clearable placeholder="请选择" @visible-change="discount(index)">
<el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id"></el-option> <el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select> </el-select>
</p> </p>
<!-- 奖品名称 --> <!-- 奖品名称 -->
<p> <p>
<el-input v-model="item.name" placeholder v-if="item.prizeGoodsType != 2"></el-input> <el-input v-model="item.name" placeholder v-if="item.prizeGoodsType != 2" ref="prizeName"></el-input>
<el-select v-model="item.goodsId" clearable placeholder="请选择" v-else> <el-select v-model="item.goodsId" clearable placeholder="请选择" v-else ref="prizeTicket">
<el-option v-for="item in couponData" :key="item.id" :label="item.title" :value="item.id"></el-option> <el-option v-for="item in couponData" :key="item.id" :label="item.title" :value="item.id"></el-option>
</el-select> </el-select>
</p> </p>
...@@ -76,21 +78,21 @@ ...@@ -76,21 +78,21 @@
:show-file-list="false" :show-file-list="false"
:on-success="(response, file, fileList,id)=> handleSuccess(response, file, fileList,index)" :on-success="(response, file, fileList,id)=> handleSuccess(response, file, fileList,index)"
> >
<img v-if="item.iconPath" :src="item.iconPath" style="width:50px;height:30px" /> <img v-if="item.iconPath" :src="item.iconPath" style="width:50px;height:30px" ref="prizeImg"/>
<i v-else class="el-icon-plus avatar-uploader-icon"></i> <i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload> </el-upload>
</p> </p>
<!-- 奖品数量 --> <!-- 奖品数量 -->
<p> <p>
<el-input v-model="item.totalStock" placeholder></el-input> <el-input v-model="item.totalStock" placeholder ref="prizeNumber"></el-input>
</p> </p>
<!-- 中奖概率 --> <!-- 中奖概率 -->
<p> <p>
<el-input v-model="item.probability" placeholder></el-input> <el-input v-model="item.probability" placeholder ref="prizeTheory"></el-input>
</p> </p>
<!-- 最大中奖数 --> <!-- 最大中奖数 -->
<p> <p>
<el-input v-model="item.dayMaxUse" placeholder></el-input> <el-input v-model="item.dayMaxUse" placeholder ref="prizeNumberMax"></el-input>
</p> </p>
</li> </li>
</ul> </ul>
...@@ -99,15 +101,6 @@ ...@@ -99,15 +101,6 @@
</p> </p>
</el-dialog> </el-dialog>
<!-- <el-upload
class="avatar-uploader"
:action="BASE_API + '/api/universal/file/app/unauth/admin/upload'"
:show-file-list="false"
:on-success="demo"
>
<img v-if="demoImg" :src="demoImg" style="width:50px;height:30px" />
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload> -->
</div> </div>
</template> </template>
<script> <script>
...@@ -234,6 +227,17 @@ export default { ...@@ -234,6 +227,17 @@ export default {
this.getTitleFn() this.getTitleFn()
}, },
methods: { methods: {
//优惠券
discount(val){
this.table[val].name = ''
this.table[val].goodsId = ''
// if (!this.table[val].goodsId ||) {
// this.table[val].goodsId = ''
// console.log(this.table);
// }
},
//图片上传
handleSuccess(res, file,list,id) { handleSuccess(res, file,list,id) {
this.table[id].iconPath = res.data this.table[id].iconPath = res.data
}, },
...@@ -338,6 +342,11 @@ export default { ...@@ -338,6 +342,11 @@ export default {
infoPrize().then(data => { infoPrize().then(data => {
if (val == 1) { if (val == 1) {
if (data.data.onlinePrize != '') if (data.data.onlinePrize != '')
data.data.onlinePrize.forEach(element => {
if (!element.goodsId) {
element.goodsId = ''
}
});
this.table = data.data.onlinePrize this.table = data.data.onlinePrize
} else { } else {
if (data.data.localePrize != '') if (data.data.localePrize != '')
...@@ -347,35 +356,63 @@ export default { ...@@ -347,35 +356,63 @@ export default {
}, },
//保存 //保存
save() { save() {
let params = [] var flig = true;
this.table.forEach(element => { this.table.forEach(element => {
let defaults = { if(element.prizeGoodsType == 1 || element.prizeGoodsType === ''){
serialNumber: element.serialNumber, if (element.name === '' || element.iconPath === '' || element.totalStock === '' || element.probability === '' || element.dayMaxUse === '') {
name: element.name, flig = false
iconPath: element.iconPath, return false
dayMaxUse: element.dayMaxUse, }
totalStock: element.totalStock,
probability: element.probability,
type: this.or,
prizeGoodsType: element.prizeGoodsType,
goodsId: element.goodsId,
id: element.id
} }
params.push(defaults) if(element.prizeGoodsType == 2 || element.prizeGoodsType === ''){
}) if (element.goodsId === '' || element.iconPath === '' || element.totalStock === '' || element.probability === '' || element.dayMaxUse === '') {
savePrize(params).then(data => { flig = false
if (data.status == 200) { return false
this.$message.success('设置成功') }
this.dialogVisible = false
} else {
this.$message.error(data.message)
} }
}) if(element.prizeGoodsType == 0 || element.prizeGoodsType === ''){
if (element.name === '' || element.iconPath === '' || element.probability === '') {
flig = false
return false
}
}
if(!flig){
return true
}
});
if(flig){
let params = []
this.table.forEach(element => {
let defaults = {
serialNumber: element.serialNumber,
name: element.name,
iconPath: element.iconPath,
dayMaxUse: element.dayMaxUse,
totalStock: element.totalStock,
probability: element.probability,
type: this.or,
prizeGoodsType: element.prizeGoodsType,
goodsId: element.goodsId,
id: element.id
}
params.push(defaults)
})
savePrize(params).then(data => {
if (data.status == 200) {
this.$message.success('设置成功')
this.dialogVisible = false
} else {
this.$message.error(data.message)
}
})
}else{
this.$message('必填项不能为空')
}
}, },
//优惠券列表 //优惠券列表
getTitleFn() { getTitleFn() {
getTitle().then(data => { getTitle().then(data => {
console.log(data)
if (data.status == 200) { if (data.status == 200) {
this.couponData = data.data this.couponData = data.data
} else { } else {
...@@ -386,7 +423,7 @@ export default { ...@@ -386,7 +423,7 @@ export default {
} }
} }
</script> </script>
<style> <style scoped>
.el-dialog--small { .el-dialog--small {
width: 60% !important; width: 60% !important;
} }
......
...@@ -123,7 +123,9 @@ ...@@ -123,7 +123,9 @@
<td> <td>
<el-button size="small" type="text" v-if="orderDetailInfo.status==4" @click="resetCar">重新配车</el-button> <el-button size="small" type="text" v-if="orderDetailInfo.status==4" @click="resetCar">重新配车</el-button>
</td> </td>
<td></td> <td>
<el-button size="small" type="text" v-if="orderDetailInfo.status==5" @click="postponePop = true">延期还车</el-button>
</td>
<td></td> <td></td>
<td> <td>
<el-button <el-button
...@@ -202,6 +204,17 @@ ...@@ -202,6 +204,17 @@
<el-button style="margin-top:20px" type="primary" @click="confirm('returnForm')">确定</el-button> <el-button style="margin-top:20px" type="primary" @click="confirm('returnForm')">确定</el-button>
</el-form> </el-form>
</el-dialog> </el-dialog>
<!-- 延期还车 -->
<div class="modal_modal" v-show="postponePop"></div>
<el-dialog title="延期还车" :visible.sync="postponePop" :append-to-body="true" :modal="false" @close="closePostpone">
<el-date-picker
v-model="delayEndTime"
type="datetime"
placeholder="选择日期时间">
</el-date-picker>
<el-button style="margin-top:20px" type="primary" @click="postponeBtn">确定</el-button>
</el-dialog>
</el-dialog> </el-dialog>
</template> </template>
...@@ -211,7 +224,7 @@ import ElInput from '../../../../node_modules/element-ui/packages/input/src/inpu ...@@ -211,7 +224,7 @@ import ElInput from '../../../../node_modules/element-ui/packages/input/src/inpu
import ElCol from 'element-ui/packages/col/src/col' import ElCol from 'element-ui/packages/col/src/col'
import ElFormItem from '../../../../node_modules/element-ui/packages/form/src/form-item.vue' import ElFormItem from '../../../../node_modules/element-ui/packages/form/src/form-item.vue'
import ElForm from '../../../../node_modules/element-ui/packages/form/src/form.vue' import ElForm from '../../../../node_modules/element-ui/packages/form/src/form.vue'
import { editObj } from 'api/vehicle/vehicleInfo' import { editObj,postponeApi} from 'api/vehicle/vehicleInfo'
import { getAll, updateEndCompany } from 'api/base_info/branch_company' import { getAll, updateEndCompany } from 'api/base_info/branch_company'
import {getYMD} from 'src/utils/dateUtils' import {getYMD} from 'src/utils/dateUtils'
export default { export default {
...@@ -225,6 +238,8 @@ export default { ...@@ -225,6 +238,8 @@ export default {
}, },
data() { data() {
return { return {
delayEndTime:null,//延期还车时间
postponePop:false,
returnForm: { returnForm: {
endCompanyId: '' endCompanyId: ''
}, },
...@@ -271,7 +286,32 @@ export default { ...@@ -271,7 +286,32 @@ export default {
this.getAllFn() this.getAllFn()
}, },
methods: { methods: {
//延期还车弹窗关闭
closePostpone(){
this.delayEndTime = null
},
//延期还车
postponeBtn(){
if (!this.delayEndTime) {
this.$message.error("延期时间不能为空")
return false
}else{
let time = new Date(this.delayEndTime).getTime()
let params = {
no:this.orderDetailInfo.no,
delayEndTime:time,
needDamageSafe:1
}
postponeApi(params).then(data=>{
if (data.status == 200) {
this.postponePop = false
this.$message.success('操作成功')
}else{
this.$message.error(data.message)
}
})
}
},
orderInfo(val) { orderInfo(val) {
if (this.orderDetailInfo.costDetail.children) { if (this.orderDetailInfo.costDetail.children) {
let info = this.orderDetailInfo.costDetail.children.filter(item=>item.key == val) let info = this.orderDetailInfo.costDetail.children.filter(item=>item.key == val)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment