function PackageComponent(option) {
var _el = option.el;
var _package = option.package;
this.app = new Vue({
el: _el,
template: `
`
,
data: {
info: {
dialogIndex: 0,
dialogOpen: false,
dialogData: {},
package: [],
},
},
mounted: function () {
var that = this
that.initPackages();
},
computed: {},
filters: {},
methods: {
initPackages: function () {
this.info.package = _package;
},
editPackageRule: function (obj, index) {
this.info.dialogIndex = index;
this.info.dialogOpen = true;
this.info.dialogData = $.extend(true, {}, obj);
$("body").addClass("over-hide");//避免滚动穿透,直接禁止body滚动
},
deletePackageRule: function (obj, index) {
var that = this;
var info = that.info
info['package'].splice(index, 1);
},
closeRulePanel: function () {
this.info.dialogOpen = false;
$("body").removeClass("over-hide");//恢复body滚动
},
savePackageRule: function () {
var that = this;
var info = that.info
var dialogData = info.dialogData;
var packages = info['package']
if (!dialogData.startTime) {
mui.toast("开始时间不能为空");
return;
}
if (!isMoney(dialogData.unitPrice)) {
mui.toast("单价不能为空");
return;
}
if (!isMoney(dialogData.parkingFee)) {
mui.toast("停车费不能为空");
return;
}
if (!isMoney(dialogData.serviceFee)) {
mui.toast("服务费不能为空");
return;
}
packages[info.dialogIndex] = $.extend(true, {}, info.dialogData);
info.dialogOpen = false;
$("body").removeClass("over-hide");//恢复body滚动
},
addPackageRule: function () {
var that = this;
var info = that.info
var packages = info['package']
info.dialogIndex = packages.length;
info.dialogOpen = true;
$("body").addClass("over-hide");//避免滚动穿透,直接禁止body滚动
info.dialogData = {
startTime: "",
unitPrice: "",
parkingFee: "",
serviceFee: "",
};
},
}
});
}
PackageComponent.prototype.getPackage = function () {
return this.app.info.package;
};