gdoo/app/Gdoo/CustomerCost/views/cost/index.blade.php

94 lines
3.5 KiB
PHP

<div class="gdoo-list-page" id="{{$header['master_table']}}-page">
<div class="gdoo-list panel">
<div class="gdoo-list-header">
<gdoo-grid-header :header="header" :grid="grid" :action="action" />
</div>
<div class='gdoo-list-grid'>
<div id="{{$header['master_table']}}-grid" class="ag-theme-balham"></div>
</div>
</div>
</div>
<script>
Vue.createApp({
components: {
gdooGridHeader,
},
setup(props, ctx) {
var table = '{{$header["master_table"]}}';
var config = new gdoo.grid(table);
var grid = config.grid;
grid.remoteDataUrl = '{{url()}}';
var action = config.action;
// 详情页打开方式
action.dialogType = 'layer';
// 双击行执行的方法
action.rowDoubleClick = function (data) {
if (data.master_id > 0) {
var index = data.master_sn.indexOf('QTFY');
if (index >= 0) {
data.src_type_id = 46;
}
if (data.src_type_id == 46) {
top.addTab('customerCost/cost/show?id=' + data.master_id, 'customerCost_cost_show', '其他费用');
}
if (data.src_type_id == 55) {
top.addTab('promotion/review/show?id=' + data.src_id, 'promotion_review_show', '促销核销');
}
if (data.src_type_id == 57) {
top.addTab('approach/review/show?id=' + data.src_id, 'approach_review_show', '进店核销');
}
if (data.src_type_id == 87) {
top.addTab('customerCost/compen/show?id=' + data.master_id, 'customerCost_compen_show', '合同补损');
}
if (data.src_type_id == 88) {
top.addTab('customerCost/rebate/show?id=' + data.master_id, 'customerCost_rebate_show', '合同返利');
}
if (data.src_type_id == 86) {
top.addTab('customerCost/adjust/show?id=' + data.master_id, 'customerCost_adjust_show', '费用调整');
}
}
};
// 关闭费用
action.close = function(data) {
var me = this;
var grid = config.grid;
var selections = grid.api.getSelectedRows();
if (selections.length != 1) {
toastrError('只能选择一行记录');
return;
}
formDialog({
title: '关闭费用',
url: app.url('customerCost/cost/close', {id: selections[0].id}),
storeUrl: app.url('customerCost/cost/close'),
id: 'customer_cost_data_form-close',
dialogClass:'modal-sm',
success: function(res) {
toastrSuccess(res.data);
grid.remoteData();
$(this).dialog("close");
},
error: function(res) {
toastrError(res.data);
}
});
}
var setup = config.setup;
Vue.onMounted(function() {
var gridDiv = config.div(136);
// 初始化数据
grid.remoteData({page: 1}, function(res) {
config.init(res);
});
});
return setup;
}
}).mount("#{{$header['master_table']}}-page");
</script>