发布2.3测试版

This commit is contained in:
乐风 2021-05-02 05:55:42 +08:00
parent 8732c85312
commit ef8224d20e
83 changed files with 635 additions and 1361 deletions

View File

@ -1,7 +1,7 @@
# Gdoo协同办公 # Gdoo协同办公
<p align="center"> <p align="center">
<a href="http://www.gdoo.net"><img src="https://img.shields.io/badge/version-beta2.2.x-%23ff0000" alt="Build Status" /></a> <a href="http://www.gdoo.net"><img src="https://img.shields.io/badge/version-beta2.3.x-%23ff0000" alt="Build Status" /></a>
<a href="http://www.gdoo.net"><img src="https://img.shields.io/badge/laravel-8.0-%23ef3b2d" alt="laravel framework" /></a> <a href="http://www.gdoo.net"><img src="https://img.shields.io/badge/laravel-8.0-%23ef3b2d" alt="laravel framework" /></a>
<a href="http://www.gdoo.net"><img src="https://img.shields.io/badge/MYSQL-8.0-%2300758f" alt="License" /></a> <a href="http://www.gdoo.net"><img src="https://img.shields.io/badge/MYSQL-8.0-%2300758f" alt="License" /></a>
<a href="http://www.gdoo.net"><img src="https://img.shields.io/badge/Licence-Apache2.0-blue.svg?style=flat" /></a> <a href="http://www.gdoo.net"><img src="https://img.shields.io/badge/Licence-Apache2.0-blue.svg?style=flat" /></a>

View File

@ -129,7 +129,7 @@ class ApproachController extends WorkflowController
public function print() public function print()
{ {
$this->layout = 'layouts.print_html'; $this->layout = 'layouts.print_html';
print_prince($this->create('print')); return $this->create('print');
} }
// 关闭操作 // 关闭操作
@ -205,8 +205,8 @@ class ApproachController extends WorkflowController
'); ');
$rows = $model->get(); $rows = $model->get();
$rows = Grid::dataFilters($rows, $header); $rows = Grid::dataFilters($rows, $header);
return $rows;
} else { } else {
$model = DB::table('approach_data') $model = DB::table('approach_data')
->leftJoin('product', 'product.id', '=', 'approach_data.product_id') ->leftJoin('product', 'product.id', '=', 'approach_data.product_id')
->leftJoin('approach', 'approach.id', '=', 'approach_data.approach_id') ->leftJoin('approach', 'approach.id', '=', 'approach_data.approach_id')
@ -234,8 +234,8 @@ class ApproachController extends WorkflowController
product.weight product.weight
"); ");
$rows = $model->get(); $rows = $model->get();
return ['data' => $rows];
} }
return $this->json($rows, true);
} }
return $this->render([ return $this->render([

View File

@ -120,7 +120,7 @@ class ReviewController extends WorkflowController
public function print() public function print()
{ {
$this->layout = 'layouts.print_html'; $this->layout = 'layouts.print_html';
print_prince($this->create('print')); return $this->create('print');
} }
// 批量编辑 // 批量编辑

View File

@ -135,7 +135,7 @@ gdoo.event.set('approach_data.product_id', {
// 选择客户事件 // 选择客户事件
gdoo.event.set('approach.customer_id', { gdoo.event.set('approach.customer_id', {
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#customer_region_region_id').val(row.region_id); $('#customer_region_region_id').val(row.region_id);
$('#customer_region_region_id_text').val(row.region_id_name || ''); $('#customer_region_region_id_text').val(row.region_id_name || '');
$('#approach_phone').val(row.tel); $('#approach_phone').val(row.tel);
@ -157,7 +157,7 @@ gdoo.event.set('approach.market_name', {
query.customer_id = customer_id; query.customer_id = customer_id;
}, },
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#approach_market_fax').val(row.fax); $('#approach_market_fax').val(row.fax);
$('#approach_market_totol').val(row.market_count); $('#approach_market_totol').val(row.market_count);
$('#approach_single_cast').val(row.single_cast); $('#approach_single_cast').val(row.single_cast);

View File

@ -68,7 +68,7 @@ var params = JSON.parse('{{json_encode($query)}}');
}; };
mGrid.onRowDoubleClicked = function (row) { mGrid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, mGrid); var ret = gdoo.dialogSelected(event, params, option, mGrid);
if (ret === true) { if (ret === true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close'); $('#gdoo-dialog-' + params.dialog_index).dialog('close');
} }

View File

@ -18,7 +18,7 @@ var $ref_approach_data = null;
var params = JSON.parse('{{json_encode($query)}}'); var params = JSON.parse('{{json_encode($query)}}');
(function($) { (function($) {
params['master'] = 1; params['master'] = 1;
var mGridDiv = document.querySelector("#ref_approach");
var mGrid = new agGridOptions(); var mGrid = new agGridOptions();
mGrid.remoteDataUrl = '{{url()}}'; mGrid.remoteDataUrl = '{{url()}}';
@ -59,16 +59,19 @@ var params = JSON.parse('{{json_encode($query)}}');
}; };
mGrid.onRowDoubleClicked = function (row) { mGrid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, mGrid); var ret = gdoo.dialogSelected(event, params, option, mGrid);
if (ret == true) { if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close'); $('#gdoo-dialog-' + params.dialog_index).dialog('close');
} }
}; };
gdoo.dialogs[option.id] = mGrid;
new agGrid.Grid(mGridDiv, mGrid);
mGrid.remoteData();
$ref_approach = mGrid; $ref_approach = mGrid;
gdoo.dialogs[option.id] = mGrid;
var mGridDiv = document.querySelector("#ref_approach");
new agGrid.Grid(mGridDiv, mGrid);
mGrid.remoteData();
params['master'] = 0; params['master'] = 0;
var sGridDiv = document.querySelector("#ref_approach_data"); var sGridDiv = document.querySelector("#ref_approach_data");
@ -101,9 +104,10 @@ var params = JSON.parse('{{json_encode($query)}}');
} }
}; };
new agGrid.Grid(sGridDiv, sGrid);
sGrid.remoteData();
$ref_approach_data = sGrid; $ref_approach_data = sGrid;
new agGrid.Grid(sGridDiv, sGrid);
sGrid.remoteData();
var data = JSON.parse('{{json_encode($search["forms"])}}'); var data = JSON.parse('{{json_encode($search["forms"])}}');
var search = $('#dialog-approach-search-form').searchForm({ var search = $('#dialog-approach-search-form').searchForm({

View File

@ -126,7 +126,7 @@ class PriceController extends DefaultController
} else { } else {
$rows = []; $rows = [];
} }
return $this->json($rows, true); return $rows;
} }
public function referCustomer() public function referCustomer()

View File

@ -13,45 +13,23 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'name', headerName: '姓名', minWidth: 160}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'name', headerName: '姓名', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'phone', headerName: '手机', width: 160}, {suppressMenu: true, cellClass:'text-center', field: 'phone', headerName: '手机', width: 160},
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 80} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 80}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -8,22 +8,17 @@
<script> <script>
(function ($) { (function ($) {
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '客户名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '客户名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'code', headerName: '客户编码', width: 60}, {suppressMenu: true, cellClass:'text-center', field: 'code', headerName: '客户编码', width: 60},
{suppressMenu: true, cellClass:'text-center', cellRenderer: statusRenderer, field: 'status', headerName: '状态', width: 60}, {suppressMenu: true, cellClass:'text-center', cellRenderer: statusRenderer, field: 'status', headerName: '状态', width: 60},
@ -39,30 +34,11 @@
} }
} }
grid.onRowClicked = function(row) {
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}"); var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
// 数据载入成功
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({
data: data data: data

View File

@ -11,17 +11,12 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: false, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: false, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, field: 'name', headerName: '名称', width: 100}, {suppressMenu: true, field: 'name', headerName: '名称', width: 100},
@ -29,30 +24,11 @@
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData(); grid.remoteData();
// 数据载入成功
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({
data: data data: data

View File

@ -13,48 +13,23 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'name', headerName: '姓名', minWidth: 160}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'name', headerName: '姓名', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'phone', headerName: '手机', width: 160}, {suppressMenu: true, cellClass:'text-center', field: 'phone', headerName: '手机', width: 160},
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 80} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 80}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
// 数据载入成功
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({
data: data data: data

View File

@ -83,7 +83,7 @@ var params = {customer_id: customer_id};
// 选择客户事件 // 选择客户事件
gdoo.event.set('customer_price.customer_id', { gdoo.event.set('customer_price.customer_id', {
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
params['customer_id'] = row.id; params['customer_id'] = row.id;
$.post(app.url('customer/price/list'), params, function(res) { $.post(app.url('customer/price/list'), params, function(res) {
if (res.data.length > 0) { if (res.data.length > 0) {

View File

@ -11,17 +11,12 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{field:'product_id', hide: true}, {field:'product_id', hide: true},
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: true, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: true, suppressSizeToFit: true, sortable: false, width: 40},
@ -34,21 +29,7 @@
{headerName:'备注', field:'remark', width: 200}, {headerName:'备注', field:'remark', width: 200},
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#aike-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData(); grid.remoteData();

View File

@ -11,17 +11,11 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.autoGroupColumnDef = { grid.autoGroupColumnDef = {
headerName: '名称', headerName: '名称',
@ -41,30 +35,11 @@
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
); );
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData(); grid.remoteData();
// 数据载入成功
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({
data: data data: data

View File

@ -17,7 +17,7 @@
query(params) { query(params) {
}, },
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#customer_tax_class_id').val(row.class_id); $('#customer_tax_class_id').val(row.class_id);
$('#customer_tax_class_id_text').val(row.class_id_name); $('#customer_tax_class_id_text').val(row.class_id_name);

View File

@ -8,22 +8,17 @@
<script> <script>
(function ($) { (function ($) {
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '开票名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '开票名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'code', headerName: '开票编码', width: 80}, {suppressMenu: true, cellClass:'text-center', field: 'code', headerName: '开票编码', width: 80},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'customer_name', headerName: '客户名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'customer_name', headerName: '客户名称', minWidth: 160},
@ -41,28 +36,10 @@
} }
} }
grid.onRowClicked = function(row) {
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}"); var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -15,12 +15,7 @@ class Controller extends BaseController
/** /**
* @var 程序版本 * @var 程序版本
*/ */
public $version = '<a target="_blank" href="http://www.gdoo.net">Gdoo</a> 2.2.2'; public $version = '2.3.1';
/**
* @var 开发商名称
*/
public $powered = 'Gdoo';
/** /**
* @var 配置参数 * @var 配置参数
@ -62,22 +57,18 @@ class Controller extends BaseController
// 获取配置数据 // 获取配置数据
$this->setting = Setting::where('type', 'system')->pluck('value', 'key'); $this->setting = Setting::where('type', 'system')->pluck('value', 'key');
$this->setting['powered'] = $this->powered;
$this->dbType = env('DB_CONNECTION'); $this->dbType = env('DB_CONNECTION');
$this->ret = RetService::make(); $this->ret = RetService::make();
View::share([ View::share([
'title' => 'Gdoo', 'version' => $this->version,
'setting' => $this->setting, 'setting' => $this->setting,
'public_url' => URL::to('/'), 'public_url' => URL::to('/'),
'upload_url' => URL::to('/uploads'), 'upload_url' => URL::to('/uploads'),
'static_url' => URL::to('/static'), 'static_url' => URL::to('/static'),
'asset_url' => URL::to('/assets'), 'asset_url' => URL::to('/assets'),
'licenseType' => env('LICENSE_TYPE'),
'resVersion' => $this->resVersion,
'version' => $this->version,
]); ]);
} }

View File

@ -1,9 +1,3 @@
<style>
.close-header { margin: 0 15px 0; }
</style>
<button type="button" data-dismiss="dialog" class="close close-header">&times;</button>
<ul class="nav nav-tabs padder m-t" id="api-dialog"> <ul class="nav nav-tabs padder m-t" id="api-dialog">
<li class="active"><a href="#modal-department" data-toggle="tab">部门</a></li> <li class="active"><a href="#modal-department" data-toggle="tab">部门</a></li>
<li><a href="#modal-role" data-toggle="tab">角色</a></li> <li><a href="#modal-role" data-toggle="tab">角色</a></li>
@ -15,7 +9,29 @@
<script> <script>
(function($) { (function($) {
var params = {{json_encode($gets)}}; var params = JSON.parse('{{json_encode($gets)}}');
var option = gdoo.formKey(params);
var doc = getIframeDocument(params.iframe_id);
if (doc) {
var $option_id = $('#' + option.id, doc);
var $option_text = $('#'+option.id + '_text', doc);
} else {
var $option_id = $('#' + option.id);
var $option_text = $('#' + option.id + '_text');
}
var id = $option_id.val();
var text = $option_text.val();
var res = {};
if (id) {
var ids = id.split(',');
var texts = text.split(',');
for (var i = 0; i < ids.length; i++) {
res[ids[i]] = texts[i];
}
}
dialogCacheSelected[option.id] = res;
var routes = { var routes = {
'#modal-user': 'user/user/dialog', '#modal-user': 'user/user/dialog',
'#modal-role': 'user/role/dialog', '#modal-role': 'user/role/dialog',
@ -28,6 +44,7 @@
function loadData(target) { function loadData(target) {
params['prefix'] = 1; params['prefix'] = 1;
params['is_org'] = 1;
$.get(app.url(routes[target], params), function(html) { $.get(app.url(routes[target], params), function(html) {
$('#tab-content').html(html); $('#tab-content').html(html);
}); });

View File

@ -114,7 +114,7 @@
<form method="post" id="widget-edit" name="widget_edit"> <form method="post" id="widget-edit" name="widget_edit">
<div class="quick-edit"> <div class="quick-edit">
<div class="row row-sm"> <div class="row row-sm">
<gdooDraggable <gdoo-draggable
v-model="menus" v-model="menus"
item-key="id" item-key="id"
group="menus" group="menus"
@ -131,7 +131,7 @@
<div class="title">{{element.name}}</div> <div class="title">{{element.name}}</div>
</div> </div>
</template> </template>
</gdooDraggable> </gdoo-draggable>
<div class="quick-edit-text"> <div class="quick-edit-text">
<a href="javascript:;" @click="quickAdd"> <a href="javascript:;" @click="quickAdd">
<div class="quick-icon quick-edit-add"> <div class="quick-icon quick-edit-add">
@ -143,7 +143,7 @@
</div> </div>
</div> </div>
<gdooDraggable <gdoo-draggable
class="row row-sm todo-edit" class="row row-sm todo-edit"
v-model="infos" v-model="infos"
handle=".todo-edit-l-t" handle=".todo-edit-l-t"
@ -176,10 +176,10 @@
</div> </div>
</div> </div>
</template> </template>
</gdooDraggable> </gdoo-draggable>
<div class="row row-sm widget-edit"> <div class="row row-sm widget-edit">
<gdooDraggable <gdoo-draggable
class="col-xs-12 col-sm-8" class="col-xs-12 col-sm-8"
v-model="leftWidgets" v-model="leftWidgets"
handle=".panel-heading" handle=".panel-heading"
@ -207,9 +207,9 @@
</div> </div>
</div> </div>
</template> </template>
</gdooDraggable> </gdoo-draggable>
<gdooDraggable <gdoo-draggable
class="col-xs-12 col-sm-4" class="col-xs-12 col-sm-4"
v-model="rightWidgets" v-model="rightWidgets"
handle=".panel-heading" handle=".panel-heading"
@ -237,17 +237,18 @@
</div> </div>
</div> </div>
</template> </template>
</gdooDraggable> </gdoo-draggable>
</div> </div>
</div> </div>
</div> </div>
@endverbatim @endverbatim
<script> <script>
var configData = {{$json}}; var configData = {{$json}};
var settingWidget = Vue.createApp({ var settingWidget = Vue.createApp({
components: { components: {
gdooDraggable gdooDraggable,
}, },
data() { data() {
return { return {

View File

@ -291,7 +291,7 @@ a { outline: none; }
<div class="dashboard-footer"> <div class="dashboard-footer">
<div class="box"> <div class="box">
{{$version}} {{$licenseType ? $licenseType : '开源版'}} {{$version}}
</div> </div>
</div> </div>

View File

@ -2,7 +2,7 @@
<html> <html>
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<title>{{$setting['title']}} - Powered By {{$setting['powered']}}</title> <title>{{$setting['title']}} - {{$powered}}</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=yes" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=yes" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

View File

@ -5,7 +5,7 @@
软件版本 软件版本
</td> </td>
<td align="left" style="border-top:0;"> <td align="left" style="border-top:0;">
{{$version}} {{$licenseType ? $licenseType : '开源版'}} {{$version}}
</td> </td>
</tr> </tr>
<tr> <tr>

View File

@ -1074,7 +1074,7 @@ class FieldService
'multi' => $multi, 'multi' => $multi,
'prefix' => 1, 'prefix' => 1,
'name' => $key_name, 'name' => $key_name,
'title' => '', 'title' => '组织架构',
'url' => 'index/api/dialog', 'url' => 'index/api/dialog',
'id' => $attr_id, 'id' => $attr_id,
'toggle' => 'dialog-view' 'toggle' => 'dialog-view'

View File

@ -110,19 +110,17 @@
<input type="checkbox" @if($permission['data'][$submodel->table][$field->field]['s'] == 1) checked @endif class="field-secret" data-key="{{$submodel->table}}_{{$field->field}}" id="{{$submodel->table}}_{{$field->field}}_secret" name="data[{{$submodel->table}}][{{$field->field}}][s]" value="1"> <input type="checkbox" @if($permission['data'][$submodel->table][$field->field]['s'] == 1) checked @endif class="field-secret" data-key="{{$submodel->table}}_{{$field->field}}" id="{{$submodel->table}}_{{$field->field}}_secret" name="data[{{$submodel->table}}][{{$field->field}}][s]" value="1">
</td> </td>
<td> <td>
@if($field['form_type'] == 'auto' || $field['form_type'] == 'date')
<label title="锁定将不允许修改宏控件的值">
<input type="checkbox" value="1" @if($permission['data'][$submodel->table][$field->field]['m'] == 1) checked @endif name="data[{{$submodel->table}}][{{$field->field}}][m]"> 锁定
</label>
@else
<select multiple data-placeholder="选择验证规则" class="form-control input-sm input-inline input-select2" name="data[{{$submodel->table}}][{{$field->field}}][v][]"> <select multiple data-placeholder="选择验证规则" class="form-control input-sm input-inline input-select2" name="data[{{$submodel->table}}][{{$field->field}}][v][]">
<option value=""></option> <option value=""></option>
@foreach($regulars as $key => $regular) @foreach($regulars as $key => $regular)
<option @if(in_array($key, (array)$permission['data'][$submodel->table][$field->field]['v'])) selected @endif value="{{$key}}">{{$regular}}</option> <option @if(in_array($key, (array)$permission['data'][$submodel->table][$field->field]['v'])) selected @endif value="{{$key}}">{{$regular}}</option>
@endforeach @endforeach
</select> </select>
@endif @if($field['form_type'] == 'auto' || $field['form_type'] == 'date')
<label title="锁定将不允许修改宏控件的值">
<input type="checkbox" value="1" @if($permission['data'][$submodel->table][$field->field]['m'] == 1) checked @endif name="data[{{$submodel->table}}][{{$field->field}}][m]"> 锁定
</label>
@else
</td> </td>
</tr> </tr>

View File

@ -53,14 +53,7 @@
@endif @endif
</div> </div>
@endforeach @endforeach
@endforeach @endforeach
<div class="list-group-item fld field" data-col="12" data-hidden="0" data-readonly="0" data-role_name="" data-role_id="" data-id="0" data-type="0" data-field="{flowlog}">
<div class="title">流程记录</div>
<i class="move fa fa-w fa-arrows"></i>
<i class="remove fa fa-w fa-remove" title="删除"></i>
<div class="desc"></div>
</div>
</ul> </ul>
</div> </div>
<div class="tab-pane" id="2"> <div class="tab-pane" id="2">
@ -186,24 +179,24 @@
<div class="panel-body field-attr"> <div class="panel-body field-attr">
<form method="post" id="myform" name="myform"> <form method="post" id="myform" name="myform">
<div class="form-group"> <div class="form-group">
<label for="set_col">视图名称 <span class="red">*</span></label> <label for="set_col"><span class="red">*</span> 名称</label>
<div class="form-text"> <div class="form-text">
<input type="text" id="name" name="name" value="{{$template['name']}}" class="form-control input-sm"> <input type="text" id="name" name="name" value="{{$template['name']}}" class="form-control input-sm">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="set_col">视图编码 <span class="red">*</span></label> <label for="set_col">
<span class="red">*</span> 编码
<a class="hinted" href="javascript:;" title="视图前缀:{{$master_model['table']}}_"><i class="fa fa-question-circle"></i></a>
</label>
<div class="form-text"> <div class="form-text">
<div class="input-group"> <input type="text" id="code" name="code" value="{{$template['code']}}" class="form-control input-sm">
<span class="input-group-addon" style="display:inline-block;overflow:hidden;white-space:nowrap;width:100px;text-overflow:ellipsis;">{{$master_model['table']}}_</span>
<input type="text" id="code" name="code" value="{{$template['code']}}" class="form-control input-sm">
</div>
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="set_col">视图类型 <span class="red">*</span></label> <label for="set_col"><span class="red">*</span> 类型</label>
<div class="form-text"> <div class="form-text">
<select multiple="multiple" class="input-select2 form-control input-sm" id="type" name="type[]" data-width="100%"> <select multiple="multiple" class="input-select2 form-control input-sm" id="type" name="type[]" data-width="100%">
<option value="create" @if(in_array('create', $template['type'])) selected @endif>新增</option> <option value="create" @if(in_array('create', $template['type'])) selected @endif>新增</option>
@ -215,7 +208,7 @@
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="set_col">权限范围</label> <label for="set_col">权限</label>
<div class="form-text"> <div class="form-text">
{{App\Support\Dialog::search($template, 'id=receive_id&name=receive_name&multi=1')}} {{App\Support\Dialog::search($template, 'id=receive_id&name=receive_name&multi=1')}}
</div> </div>
@ -472,7 +465,7 @@
@verbatim @verbatim
<div id="app"> <div id="app">
<div class="dragDemo"> <div class="dragDemo">
<gdooDraggable class="list-group" <gdoo-draggable class="list-group"
element="div" element="div"
v-model="listLeft" v-model="listLeft"
:move="onMove" :move="onMove"
@ -482,8 +475,8 @@
<div v-for="(item, key) in listLeft" :key="key"> <div v-for="(item, key) in listLeft" :key="key">
{{item.name}}-{{item.value}} {{item.name}}-{{item.value}}
</div> </div>
</gdooDraggable> </gdoo-draggable>
<gdooDraggable class="list-group" <gdoo-draggable class="list-group"
element="div" element="div"
v-model="listLeft1" v-model="listLeft1"
:move="onMove" :move="onMove"
@ -493,8 +486,8 @@
<div v-for="(item, key) in listLeft1" :key="key"> <div v-for="(item, key) in listLeft1" :key="key">
{{item.name}}-{{item.value}} {{item.name}}-{{item.value}}
</div> </div>
</gdooDraggable> </gdoo-draggable>
<gdooDraggable class="list-group" <gdoo-draggable class="list-group"
element="div" element="div"
v-model="listRight" v-model="listRight"
:move="onMove" :move="onMove"
@ -581,7 +574,8 @@ color: #555;
<script> <script>
var fields = JSON.parse('{{$template["tpl"]}}'); var fields = '{{$template["tpl"]}}';
fields = fields ? JSON.parse(fields) : {};
var activeField = null; var activeField = null;
@ -594,7 +588,9 @@ function setCol(v) {
function setField(f, v) { function setField(f, v) {
if (f == 'title') { if (f == 'title') {
activeField.find('.title').text(v); if (v) {
activeField.find('.title').text(v);
}
} }
activeField.attr('data-' + f, v); activeField.attr('data-' + f, v);
} }
@ -629,7 +625,6 @@ var sortableOptions = {
if(ui.item.data('type') == 1) { if(ui.item.data('type') == 1) {
droppedFieldsBox.find('.desc-sublist:not(.ui-sortable)').sortable(sortableOptions); droppedFieldsBox.find('.desc-sublist:not(.ui-sortable)').sortable(sortableOptions);
} }
}, },
start: function (event, ui) { start: function (event, ui) {
ui.item.removeClass('list-group-item'); ui.item.removeClass('list-group-item');
@ -928,6 +923,8 @@ function getColumns() {
function getColumn(me) { function getColumn(me) {
var column = {}; var column = {};
me.find('.model-title').remove();
column.field = me.attr('data-field'); column.field = me.attr('data-field');
column.css = me.attr('data-css'); column.css = me.attr('data-css');
column.hidden = me.attr('data-hidden'); column.hidden = me.attr('data-hidden');

View File

@ -19,7 +19,7 @@
<div class="panel-heading"> <div class="panel-heading">
<div>字段列表</div> <div>字段列表</div>
</div> </div>
<gdooDraggable class="list-group" <gdoo-draggable class="list-group"
v-model="listLeft" v-model="listLeft"
item-key="name" item-key="name"
group="people" group="people"
@ -31,7 +31,7 @@
{{element.name}} {{element.name}}
</a> </a>
</template> </template>
</gdooDraggable> </gdoo-draggable>
</div> </div>
</div> </div>
@ -41,7 +41,7 @@
<div>字段列表</div> <div>字段列表</div>
</div> </div>
<gdooDraggable class="list-group" <gdoo-draggable class="list-group"
v-model="listRight" v-model="listRight"
item-key="name" item-key="name"
group="people" group="people"
@ -52,7 +52,7 @@
{{element.name}} {{element.name}}
</a> </a>
</template> </template>
</gdooDraggable> </gdoo-draggable>
</div> </div>
</div> </div>
</div> </div>
@ -68,29 +68,29 @@
<div class="panel-body"> <div class="panel-body">
<div class="form-group"> <div class="form-group">
<label>视图名称 <span class="red">*</span></label> <label><span class="red">*</span> 名称</label>
<input type="text" id="name" name="name" value="{{$template['name']}}" class="form-control input-sm"> <input type="text" id="name" name="name" value="{{$template['name']}}" class="form-control input-sm">
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="set_col">视图编码 <span class="red">*</span></label> <label for="set_col">
<span class="red">*</span> 编码
<a class="hinted" href="javascript:;" title="视图前缀:{{$master_model['table']}}_"><i class="fa fa-question-circle"></i></a>
</label>
<div class="form-text"> <div class="form-text">
<div class="input-group"> <input type="text" id="code" name="code" value="{{$template['code']}}" class="form-control input-sm">
<span class="input-group-addon">{{$model['table']}}_</span>
<input type="text" id="code" name="code" value="{{$template['code']}}" class="form-control input-sm">
</div>
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label>视图类型</label> <label>类型</label>
<select multiple="multiple" class="input-select2 form-control input-sm" id="type" name="type[]" data-width="100%"> <select multiple="multiple" class="input-select2 form-control input-sm" id="type" name="type[]" data-width="100%">
<option value="list" @if(in_array('list', $template['type'])) selected @endif>列表</option> <option value="list" @if(in_array('list', $template['type'])) selected @endif>列表</option>
<option value="dialog" @if(in_array('dialog', $template['type'])) selected @endif>对话框</option> <option value="dialog" @if(in_array('dialog', $template['type'])) selected @endif>对话框</option>
</select> </select>
</div> </div>
<div class="form-group"> <div class="form-group">
<label>权限范围 <span class="red">*</span></label> <label>权限<span class="red">*</span></label>
{{App\Support\Dialog::search($template, 'id=receive_id&name=receive_name&multi=1')}} {{App\Support\Dialog::search($template, 'id=receive_id&name=receive_name&multi=1')}}
</div> </div>
<div class="form-group"> <div class="form-group">
@ -139,7 +139,6 @@
} }
</style> </style>
<script> <script>
var template = JSON.parse('{{json_encode($template, JSON_UNESCAPED_UNICODE)}}'); var template = JSON.parse('{{json_encode($template, JSON_UNESCAPED_UNICODE)}}');
var rightIndex = -1; var rightIndex = -1;
var vueData = { var vueData = {

View File

@ -204,7 +204,7 @@ class SampleApplyController extends WorkflowController
public function print() public function print()
{ {
$this->layout = 'layouts.print_html'; $this->layout = 'layouts.print_html';
print_prince($this->create('print')); return $this->create('print');
} }
// 关闭 // 关闭

View File

@ -98,7 +98,7 @@ var form_action = '{{$action}}';
query(params) { query(params) {
}, },
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#customer_order_type_id').val(row.type_id); $('#customer_order_type_id').val(row.type_id);
$('#customer_order_type_id_select').val(row.type_id); $('#customer_order_type_id_select').val(row.type_id);
$('#customer_region_region_id').val(row.region_id); $('#customer_region_region_id').val(row.region_id);
@ -148,7 +148,7 @@ var form_action = '{{$action}}';
query.customer_id = get_customer_id(); query.customer_id = get_customer_id();
}, },
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
if (row.id.indexOf('draft_') == 0) { if (row.id.indexOf('draft_') == 0) {
return true; return true;
} }
@ -193,10 +193,11 @@ var form_action = '{{$action}}';
editable: { editable: {
product_name(params) { product_name(params) {
var data = params.data; var data = params.data;
// 费用不能编辑产品 // 费用不能编辑
if (data.product_code == '99001') { if (data.product_code == '99001') {
return false; return false;
} }
var customer_id = get_customer_id(); var customer_id = get_customer_id();
if (customer_id.trim() == '') { if (customer_id.trim() == '') {
toastrError('请先选择客户'); toastrError('请先选择客户');
@ -249,7 +250,6 @@ var form_action = '{{$action}}';
toastrError('请先选择客户'); toastrError('请先选择客户');
return; return;
} }
var buttons = [{ var buttons = [{
text: "取消", text: "取消",
'class': "btn-default", 'class': "btn-default",
@ -284,7 +284,6 @@ var form_action = '{{$action}}';
} }
}); });
} }
$.dialog({ $.dialog({
title: '促销列表', title: '促销列表',
url: '{{url("promotion/promotion/serviceSaleOrder")}}?customer_id=' + customer_id, url: '{{url("promotion/promotion/serviceSaleOrder")}}?customer_id=' + customer_id,

View File

@ -11,19 +11,14 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var multiple = params.multi == 0 ? false : true;
var grid = new agGridOptions(); var grid = new agGridOptions();
var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.suppressRowClickSelection = true;
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', field: 'sn', headerName: '单据编号', minWidth: 160}, {suppressMenu: true, cellClass:'text-center', field: 'sn', headerName: '单据编号', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'created_at', headerName: '单据日期', width: 140}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'created_at', headerName: '单据日期', width: 140},
{suppressMenu: true, cellClass:'text-center', field: 'customer_code', headerName: '客户编号', width: 120}, {suppressMenu: true, cellClass:'text-center', field: 'customer_code', headerName: '客户编号', width: 120},
@ -32,28 +27,10 @@
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 80} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 80}
]; ];
grid.onRowClicked = function(row) {
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}"); var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -55,7 +55,7 @@ var $promotion_customer_order_data = null;
}; };
mGrid.onRowDoubleClicked = function (row) { mGrid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, mGrid); var ret = gdoo.dialogSelected(event, params, option, mGrid);
if (ret == true) { if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close'); $('#gdoo-dialog-' + params.dialog_index).dialog('close');
} }
@ -67,7 +67,7 @@ var $promotion_customer_order_data = null;
mGrid.remoteData(); mGrid.remoteData();
mGrid.remoteAfterSuccess = function() { mGrid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, mGrid); gdoo.dialogInitSelected(params, option, mGrid);
} }
params['master'] = 0; params['master'] = 0;

View File

@ -11,17 +11,11 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.suppressRowClickSelection = true;
grid.autoGroupColumnDef = { grid.autoGroupColumnDef = {
headerName: '名称', headerName: '名称',
@ -42,27 +36,10 @@
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
); );
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData(); grid.remoteData();
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -43,10 +43,9 @@
<script> <script>
(function ($) { (function ($) {
var treeOptions = new agGridOptions(); var treeGrid = new agGridOptions();
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}-tree");
treeOptions.autoGroupColumnDef = { treeGrid.autoGroupColumnDef = {
headerName: '产品类别', headerName: '产品类别',
width: 250, width: 250,
sortable: false, sortable: false,
@ -55,43 +54,39 @@
suppressCount: false, suppressCount: false,
} }
}; };
treeOptions.rowSelection = 'single'; treeGrid.rowSelection = 'single';
treeOptions.enableCellTextSelection = false; treeGrid.enableCellTextSelection = false;
treeOptions.treeData = true; treeGrid.treeData = true;
treeOptions.groupDefaultExpanded = 1; treeGrid.groupDefaultExpanded = 1;
treeOptions.getDataPath = function(data) { treeGrid.getDataPath = function(data) {
return data.tree_path; return data.tree_path;
}; };
treeOptions.columnDefs = []; treeGrid.columnDefs = [];
treeOptions.onRowClicked = function (params) { treeGrid.onRowClicked = function (params) {
var query = {}; var query = {};
query['category_id'] = params.data.id; query['category_id'] = params.data.id;
query['page'] = 1; query['page'] = 1;
grid.remoteData(query); grid.remoteData(query);
}; };
treeOptions.remoteDataUrl = "{{url('category')}}?type=1"; treeGrid.remoteDataUrl = "{{url('category')}}?type=1";
new agGrid.Grid(gridDiv, treeOptions); var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}-tree");
new agGrid.Grid(gridDiv, treeGrid);
treeOptions.remoteData(); treeGrid.remoteData();
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.suppressRowClickSelection = true;
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '存货编码', width: 100}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '存货编码', width: 100},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '产品名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '产品名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'spec', headerName: '规格型号', width: 100}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'spec', headerName: '规格型号', width: 100},
@ -99,27 +94,10 @@
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -43,10 +43,9 @@
<script> <script>
(function ($) { (function ($) {
var treeOptions = new agGridOptions(); var treeGrid = new agGridOptions();
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}-tree");
treeOptions.autoGroupColumnDef = { treeGrid.autoGroupColumnDef = {
headerName: '产品类别', headerName: '产品类别',
width: 250, width: 250,
sortable: false, sortable: false,
@ -55,42 +54,37 @@
suppressCount: false, suppressCount: false,
} }
}; };
treeOptions.treeData = true; treeGrid.treeData = true;
treeOptions.groupDefaultExpanded = 1; treeGrid.groupDefaultExpanded = 1;
treeOptions.getDataPath = function(data) { treeGrid.getDataPath = function(data) {
return data.tree_path; return data.tree_path;
}; };
treeOptions.columnDefs = []; treeGrid.columnDefs = [];
treeOptions.rowSelection = 'single'; treeGrid.rowSelection = 'single';
treeOptions.enableCellTextSelection = false; treeGrid.enableCellTextSelection = false;
treeOptions.onRowClicked = function (params) { treeGrid.onRowClicked = function (params) {
var query = {}; var query = {};
query['category_id'] = params.data.id; query['category_id'] = params.data.id;
query['page'] = 1; query['page'] = 1;
grid.remoteData(query); grid.remoteData(query);
}; };
treeOptions.remoteDataUrl = "{{url('category')}}"; treeGrid.remoteDataUrl = "{{url('category')}}";
new agGrid.Grid(gridDiv, treeOptions); var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}-tree");
treeOptions.remoteData(); new agGrid.Grid(gridDiv, treeGrid);
treeGrid.remoteData();
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.suppressRowClickSelection = true;
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, suppressSizeToFit: true, cellRenderer: 'htmlCellRenderer', field: 'images', headerName: '图片', width: 40}, {suppressMenu: true, cellClass:'text-center', sortable: false, suppressSizeToFit: true, cellRenderer: 'htmlCellRenderer', field: 'images', headerName: '图片', width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '存货编码', width: 100}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '存货编码', width: 100},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '产品名称', minWidth: 140}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '产品名称', minWidth: 140},
@ -101,27 +95,10 @@
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -11,45 +11,22 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var option = gdoo.dialogInit(params, grid);
var multiple = params.multi == 0 ? false : true;
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', field: 'name', headerName: '名称', width: 200}, {suppressMenu: true, cellClass:'text-center', field: 'name', headerName: '名称', width: 200},
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData(); grid.remoteData();
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -162,9 +162,9 @@ class PromotionController extends WorkflowController
$this->layout = 'layouts.print_html'; $this->layout = 'layouts.print_html';
$form = Form::make($header); $form = Form::make($header);
$form['template']['name'] = '促销申请'; $form['template']['name'] = '促销申请';
print_prince($this->display([ return $this->display([
'form' => $form, 'form' => $form,
], 'print')); ], 'print');
} }
// 赠品促销参照到订单 // 赠品促销参照到订单
@ -433,7 +433,7 @@ class PromotionController extends WorkflowController
$rows = $model->get(); $rows = $model->get();
$rows = Grid::dataFilters($rows, $header); $rows = Grid::dataFilters($rows, $header);
return $rows;
} else { } else {
$model = DB::table('promotion_data') $model = DB::table('promotion_data')
@ -464,8 +464,8 @@ class PromotionController extends WorkflowController
promotion_data.id as apply_data_id promotion_data.id as apply_data_id
"); ");
$rows = $model->get(); $rows = $model->get();
return ['data' => $rows];
} }
return $this->json($rows, true);
} }
return $this->render([ return $this->render([

View File

@ -121,7 +121,7 @@ class ReviewController extends WorkflowController
public function print() public function print()
{ {
$this->layout = 'layouts.print_html'; $this->layout = 'layouts.print_html';
print_prince($this->create('print')); return $this->create('print');
} }
// 批量编辑 // 批量编辑

View File

@ -169,7 +169,7 @@ gdoo.event.set('promotion.order_id', {
// 选择客户事件 // 选择客户事件
gdoo.event.set('promotion.customer_id', { gdoo.event.set('promotion.customer_id', {
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#customer_region_region_id').val(row.region_id); $('#customer_region_region_id').val(row.region_id);
$('#customer_region_region_id_text').val(row.region_id_name || ''); $('#customer_region_region_id_text').val(row.region_id_name || '');
$('#promotion_phone').val(row.tel); $('#promotion_phone').val(row.tel);

View File

@ -27,7 +27,6 @@ var params = JSON.parse('{{json_encode($query)}}');
var event = gdoo.event.get(option.key); var event = gdoo.event.get(option.key);
event.trigger('query', params); event.trigger('query', params);
var mGridDiv = document.querySelector("#ref_promotion");
var mGrid = new agGridOptions(); var mGrid = new agGridOptions();
mGrid.remoteDataUrl = '{{url()}}'; mGrid.remoteDataUrl = '{{url()}}';
mGrid.remoteParams = params; mGrid.remoteParams = params;
@ -64,20 +63,20 @@ var params = JSON.parse('{{json_encode($query)}}');
}; };
mGrid.onRowDoubleClicked = function (row) { mGrid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, mGrid); var ret = gdoo.dialogSelected(event, params, option, mGrid);
if (ret == true) { if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close'); $('#gdoo-dialog-' + params.dialog_index).dialog('close');
} }
}; };
gdoo.dialogs[option.id] = mGrid; gdoo.dialogs[option.id] = mGrid;
var mGridDiv = document.querySelector("#ref_promotion");
new agGrid.Grid(mGridDiv, mGrid); new agGrid.Grid(mGridDiv, mGrid);
mGrid.remoteData(); mGrid.remoteData();
$ref_promotion = mGrid; $ref_promotion = mGrid;
params['master'] = 0; params['master'] = 0;
var sGridDiv = document.querySelector("#ref_promotion_data");
var sGrid = new agGridOptions(); var sGrid = new agGridOptions();
sGrid.remoteDataUrl = '{{url()}}'; sGrid.remoteDataUrl = '{{url()}}';
sGrid.remoteParams = params; sGrid.remoteParams = params;
@ -108,7 +107,9 @@ var params = JSON.parse('{{json_encode($query)}}');
} }
}; };
var sGridDiv = document.querySelector("#ref_promotion_data");
new agGrid.Grid(sGridDiv, sGrid); new agGrid.Grid(sGridDiv, sGrid);
sGrid.remoteData(); sGrid.remoteData();
$ref_promotion_data = sGrid; $ref_promotion_data = sGrid;

View File

@ -11,19 +11,14 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'code', headerName: '编码', width: 60}, {suppressMenu: true, cellClass:'text-center', field: 'code', headerName: '编码', width: 60},
{suppressMenu: true, cellClass:'text-center', cellRenderer: statusRenderer, field: 'status', headerName: '状态', width: 60}, {suppressMenu: true, cellClass:'text-center', cellRenderer: statusRenderer, field: 'status', headerName: '状态', width: 60},
@ -39,31 +34,11 @@
} }
} }
grid.onRowClicked = function(row) {
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}"); var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
// 数据载入成功
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({
data: data data: data

View File

@ -1,5 +1,4 @@
<div id="div1"> <div id="div1">
<div style="line-height:40px;font-size:14pt;" align=center><strong><font>{{$setting['print_title']}}产成品调拨单</font></strong></div>
<table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;"> <table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;">
<tbody> <tbody>
<tr> <tr>
@ -46,7 +45,7 @@
<td></td> <td></td>
<td></td> <td></td>
<td></td> <td></td>
<td tdata="Sum" format="#,##0.00" align="right"><font id="id01">###</font></td> <td tdata="Sum" format="#,##0.00" align="right"><font id="id01">@number($rows->sum('quantity'), 2)</font></td>
<td></td> <td></td>
<td></td> <td></td>
</tfoot> </tfoot>
@ -60,49 +59,6 @@
<tr> <tr>
<td width="40%">制单人:{{$master['created_by']}}</td> <td width="40%">制单人:{{$master['created_by']}}</td>
<td width="40%">库管员:</td> <td width="40%">库管员:</td>
<td width="20%" align="right"><font tdata="PageNO">##</font>页,<font tdata="PageCount">##</font></span>页</td>
</tr> </tr>
</table> </table>
</div> </div>
<script type="text/javascript" src="{{$asset_url}}/vendor/LodopFuncs.js"></script>
<script type="text/javascript">
var LODOP;
function print280() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 2700, "CreateCustomPage");
LODOP.ADD_PRINT_TABLE(90, "4%", "92%", 460, document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(10, "4%", "92%", 115, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(555, "4%","92%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType", 1);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", 1);
LODOP.PREVIEW();
};
function print93() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 930, "CreateCustomPage");
LODOP.ADD_PRINT_TABLE(85, "4%", "92%", 465, document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(10, "4%", "92%", 115, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(550, "4%","92%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType", 1);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", 1);
LODOP.PREVIEW();
};
</script>

View File

@ -1,5 +1,4 @@
<div id="div1"> <div id="div1">
<div style="line-height:40px;font-size:14pt;" align=center><strong><font>{{$setting['print_title']}}产成品调拨单</font></strong></div>
<table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;"> <table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;">
<tbody> <tbody>
<tr> <tr>
@ -42,8 +41,8 @@ td { padding: 5px; }
<td align="center">{{$row['product_name']}}</td> <td align="center">{{$row['product_name']}}</td>
<td align="center">{{$row['product_spec']}}</td> <td align="center">{{$row['product_spec']}}</td>
<td align="center">{{$row['product_unit']}}</td> <td align="center">{{$row['product_unit']}}</td>
<td align="right"><strong style="font-size:18px;">@number($row['quantity'], 2)</strong></td> <td align="right">@number($row['quantity'], 2)</td>
<td align="center"><strong style="font-size:18px;">{{$row['batch_sn']}}</strong></td> <td align="center">{{$row['batch_sn']}}</td>
<td align="center">{{$row['posname']}}</td> <td align="center">{{$row['posname']}}</td>
</tr> </tr>
@endforeach @endforeach
@ -53,7 +52,7 @@ td { padding: 5px; }
<td></td> <td></td>
<td></td> <td></td>
<td></td> <td></td>
<td tdata="Sum" format="#,##0.00" align="right"><font id="id01">###</font></td> <td tdata="Sum" format="#,##0.00" align="right"><font id="id01">@number($rows->sum('quantity'), 2)</font></td>
<td></td> <td></td>
<td></td> <td></td>
</tfoot> </tfoot>
@ -66,62 +65,9 @@ td { padding: 5px; }
<table width="100%" border="0" style="border:0;" cellspacing="0" cellpadding="0"> <table width="100%" border="0" style="border:0;" cellspacing="0" cellpadding="0">
<tr> <tr>
<td width="25%">制单人:{{$master['created_by']}}</td> <td width="25%">制单人:{{$master['created_by']}}</td>
<td width="25%">会计:李彩</td> <td width="25%">会计:</td>
<td width="25%">发货:</td> <td width="25%">发货:</td>
<td width="25%">仓管:</td> <td width="25%">仓管:</td>
</tr> </tr>
</table> </table>
</div> </div>
<div id="div3">
<table width="100%" style="LINE-HEIGHT:30px;font-size:11pt;" cellspacing="0" cellpadding="0" style="border-collapse:collapse">
<tr>
<td width="100%" align="center"><font tdata="PageNO">##</font>页,<font tdata="PageCount">##</font></span>页</td>
</tr>
</table>
</div>
<script type="text/javascript" src="{{$asset_url}}/vendor/LodopFuncs.js"></script>
<script type="text/javascript">
var LODOP;
function print280() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 2700, "CreateCustomPage");
var strStyle = "<style> table,td,th {border-width:1px;border-style:solid;border-collapse:collapse}</style>"
LODOP.ADD_PRINT_TABLE(105, "4%", "92%", 430, document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(10, "4%", "92%", 115, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(10, "4%","92%", 54, document.getElementById("div4").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", 1);
LODOP.ADD_PRINT_HTM('96%', "4%", "92%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType", 1);
LODOP.PREVIEW();
};
function print140() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 1400, "CreateCustomPage");
LODOP.ADD_PRINT_TABLE(105, "4%", "92%", 440, document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(10, "4%", "92%", 115, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(10, "4%","92%", 54, document.getElementById("div4").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", 1);
LODOP.ADD_PRINT_HTM('92%', "4%","92%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType", 1);
LODOP.PREVIEW();
};
</script>

View File

@ -41,7 +41,7 @@ var $ref_stock_select = null;
}; };
grid.onRowDoubleClicked = function (row) { grid.onRowDoubleClicked = function (row) {
var ret = writeSelected(); var ret = dialogSelected();
if (ret == true) { if (ret == true) {
$('#gdoo-dialog-stock_select').dialog('close'); $('#gdoo-dialog-stock_select').dialog('close');
} }
@ -50,7 +50,7 @@ var $ref_stock_select = null;
/** /**
* 写入选中 * 写入选中
*/ */
function writeSelected() { function dialogSelected() {
var rows = grid.api.getSelectedRows(); var rows = grid.api.getSelectedRows();
if (typeof window.stockRowsSelected == 'function') { if (typeof window.stockRowsSelected == 'function') {
return window.stockRowsSelected.call(grid, rows); return window.stockRowsSelected.call(grid, rows);

View File

@ -172,7 +172,7 @@ gdoo.event.set('stock_cancel_data.poscode', {
// 选择客户事件 // 选择客户事件
gdoo.event.set('stock_cancel.customer_id', { gdoo.event.set('stock_cancel.customer_id', {
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#stock_cancel_order_type_id').val(row.type_id); $('#stock_cancel_order_type_id').val(row.type_id);
$('#stock_cancel_order_type_id_select').val(row.type_id); $('#stock_cancel_order_type_id_select').val(row.type_id);

View File

@ -13,47 +13,23 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var option = gdoo.dialogInit(params, grid);
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var multiple = params.multi == 0 ? false : true;
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.suppressRowClickSelection = true;
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 100}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 100},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'name', headerName: '名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'name', headerName: '名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -436,7 +436,7 @@ var grid = null;
// 选择客户事件 // 选择客户事件
gdoo.event.set('stock_delivery.customer_id', { gdoo.event.set('stock_delivery.customer_id', {
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#stock_delivery_order_type_id').val(row.type_id); $('#stock_delivery_order_type_id').val(row.type_id);
$('#stock_delivery_order_type_id_select').val(row.type_id); $('#stock_delivery_order_type_id_select').val(row.type_id);
@ -455,7 +455,7 @@ var grid = null;
query(query) { query(query) {
}, },
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#stock_delivery_freight_short_car').val(row.short_car_sn); $('#stock_delivery_freight_short_car').val(row.short_car_sn);
return true; return true;
} }
@ -467,7 +467,7 @@ var grid = null;
query(query) { query(query) {
}, },
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#stock_delivery_freight_logistics_phone').val(row.business_phone); $('#stock_delivery_freight_logistics_phone').val(row.business_phone);
return true; return true;
} }

View File

@ -11,20 +11,14 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = false; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true; grid.rowSelection = 'single';
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: false, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'sn', type:'sn', suppressSizeToFit: true, headerName: '', width: 40}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'sn', type:'sn', suppressSizeToFit: true, headerName: '', width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'warehouse_code', headerName: '仓库编码', width: 60}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'warehouse_code', headerName: '仓库编码', width: 60},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'warehouse_name', headerName: '仓库名称', width: 100}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'warehouse_name', headerName: '仓库名称', width: 100},
@ -39,27 +33,10 @@
{suppressMenu: true, cellClass:'text-right', sortable: false, field: 'ky_num', type:'number', headerName: '可用数量', width: 80}, {suppressMenu: true, cellClass:'text-right', sortable: false, field: 'ky_num', type:'number', headerName: '可用数量', width: 80},
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -1,5 +1,4 @@
<div id="div1"> <div id="div1">
<div style="line-height:40px;font-size:14pt;" align=center><strong><font>{{$setting['print_title']}}{{$form['template']['name']}}</font></strong></div>
<table width="100%"> <table width="100%">
<tbody> <tbody>
<tr> <tr>
@ -102,62 +101,9 @@
<table width="100%"> <table width="100%">
<tr> <tr>
<td width="25%">制单:{{$master['created_by']}}</td> <td width="25%">制单:{{$master['created_by']}}</td>
<td width="25%">财务:李彩</td> <td width="25%">财务:</td>
<td width="25%">发货:</td> <td width="25%">发货:</td>
<td width="25%">仓管:</td> <td width="25%">仓管:</td>
</tr> </tr>
</table> </table>
</div> </div>
<div id="div4">
<div align="center"><font tdata="PageNO">##</font>页,<font tdata="PageCount">##</font></span>页</div>
</div>
<script language="javascript" src="{{$asset_url}}/vendor/LodopFuncs.js"></script>
<script language="javascript" type="text/javascript">
var LODOP;
function print280() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 2700, "CreateCustomPage");
var strStyle = "<style> table,td,th {border-width:1px;border-style:solid;border-collapse:collapse}</style>";
LODOP.ADD_PRINT_TABLE(125, "4%", "92%", 400, strStyle + document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(10, "4%", "92%", 120, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(10, 0, "92%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", -2);
LODOP.ADD_PRINT_HTM('96%', "4%","92%", 22, document.getElementById("div4").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.PREVIEW();
};
function print140() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 1400, "CreateCustomPage");
var strStyle = "<style> table,td,th {border-width:1px;border-style:solid;border-collapse:collapse}</style>";
LODOP.ADD_PRINT_TABLE(125, "4%", "92%", 410, strStyle + document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(10, "4%", "92%", 120, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(10, 0, "92%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", -2);
LODOP.ADD_PRINT_HTM('93%', "4%","92%", 22, document.getElementById("div4").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.PREVIEW();
};
</script>

View File

@ -273,7 +273,7 @@ var grid = null;
query(query) { query(query) {
}, },
onSelect(row) { onSelect(row) {
if (row.id) { if (row) {
$('#stock_direct_order_type_id').val(row.type_id); $('#stock_direct_order_type_id').val(row.type_id);
$('#stock_direct_order_type_id_select').val(row.type_id); $('#stock_direct_order_type_id_select').val(row.type_id);

View File

@ -1,5 +1,4 @@
<div id="div1"> <div id="div1">
<div style="line-height:40px;font-size:14pt;" align=center><strong><font>{{$setting['print_title']}}发货单</font></strong></div>
<table width="100%"> <table width="100%">
<tbody> <tbody>
<tr> <tr>
@ -102,62 +101,9 @@
<table width="100%"> <table width="100%">
<tr> <tr>
<td width="25%">制单:{{$master['created_by']}}</td> <td width="25%">制单:{{$master['created_by']}}</td>
<td width="25%">财务:李彩</td> <td width="25%">财务:</td>
<td width="25%">发货:</td> <td width="25%">发货:</td>
<td width="25%">仓管:</td> <td width="25%">仓管:</td>
</tr> </tr>
</table> </table>
</div> </div>
<div id="div4">
<div align="center"><font tdata="PageNO">##</font>页,<font tdata="PageCount">##</font></span>页</div>
</div>
<script language="javascript" src="{{$asset_url}}/vendor/LodopFuncs.js"></script>
<script language="javascript" type="text/javascript">
var LODOP;
function print280() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 2700, "CreateCustomPage");
var strStyle = "<style> table,td,th {border-width:1px;border-style:solid;border-collapse:collapse}</style>";
LODOP.ADD_PRINT_TABLE(125, "4%", "92%", 400, strStyle + document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(10, "4%", "92%", 120, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(10, 0, "92%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", -2);
LODOP.ADD_PRINT_HTM('96%', "4%","92%", 22, document.getElementById("div4").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.PREVIEW();
};
function print140() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 1400, "CreateCustomPage");
var strStyle = "<style> table,td,th {border-width:1px;border-style:solid;border-collapse:collapse}</style>";
LODOP.ADD_PRINT_TABLE(125, "4%", "92%", 400, strStyle + document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(10, "4%", "92%", 120, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(10, 0, "92%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", -2);
LODOP.ADD_PRINT_HTM('93%', "4%","92%", 22, document.getElementById("div4").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.PREVIEW();
};
</script>

View File

@ -11,46 +11,23 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = false; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true; grid.rowSelection = 'single';
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: false, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 60}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 60},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -11,46 +11,23 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = false; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true; grid.rowSelection = 'single';
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: false, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 60}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 60},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -1,5 +1,4 @@
<div id="div1"> <div id="div1">
<div style="line-height:40px;font-size:14pt;" align=center><strong><font>{{$setting['print_title']}}{{$form['template']['name']}}</font></strong></div>
<table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;"> <table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;">
<tbody> <tbody>
<tr> <tr>
@ -47,7 +46,7 @@ td { padding: 2px; }
<td></td> <td></td>
<td></td> <td></td>
<td></td> <td></td>
<td tdata="Sum" format="#,##0.00" align="right"><font id="id01">###</font></td> <td tdata="Sum" format="#,##0.00" align="right"><font id="id01">@number($rows->sum('quantity'), 2)</font></td>
<td></td> <td></td>
<td></td> <td></td>
</tfoot> </tfoot>
@ -59,29 +58,6 @@ td { padding: 2px; }
<tr> <tr>
<td width="40%">制单人:{{auth()->user()->name}}</td> <td width="40%">制单人:{{auth()->user()->name}}</td>
<td width="40%">交货人:</td> <td width="40%">交货人:</td>
<td width="20%" align="right"><font tdata="PageNO">##</font>页,<font tdata="PageCount">##</font></span>页</td>
</tr> </tr>
</table> </table>
</div> </div>
<script language="javascript" src="{{$asset_url}}/vendor/LodopFuncs.js"></script>
<script language="javascript" type="text/javascript">
var LODOP;
function PrintMytable() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 930, "CreateCustomPage");
var strStyle="<style> table,td,th {border-width:1px;border-style:solid;border-collapse:collapse}</style>"
LODOP.ADD_PRINT_TABLE(75, "6%", "88%", 475, strStyle + document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(0, "6%", "88%", 109, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(555, "6%","88%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType", 1);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", 1);
LODOP.PREVIEW();
};
</script>

View File

@ -1,5 +1,4 @@
<div id="div1"> <div id="div1">
<div style="line-height:40px;font-size:14pt;" align=center><strong><font>{{$setting['print_title']}}{{$form['template']['name']}}</font></strong></div>
<table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;"> <table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;">
<tbody> <tbody>
<tr> <tr>
@ -47,7 +46,7 @@ td { padding: 2px; }
<td></td> <td></td>
<td></td> <td></td>
<td></td> <td></td>
<td tdata="Sum" format="#,##0.00" align="right"><font id="id01">###</font></td> <td tdata="Sum" format="#,##0.00" align="right"><font id="id01">@number($rows->sum('quantity'), 2)</font></td>
<td></td> <td></td>
<td></td> <td></td>
</tfoot> </tfoot>
@ -59,29 +58,6 @@ td { padding: 2px; }
<tr> <tr>
<td width="40%">制单人:{{$master['created_by']}}</td> <td width="40%">制单人:{{$master['created_by']}}</td>
<td width="40%">收货人:</td> <td width="40%">收货人:</td>
<td width="20%" align="right"><font tdata="PageNO">##</font>页,<font tdata="PageCount">##</font></span>页</td>
</tr> </tr>
</table> </table>
</div> </div>
<script language="javascript" src="{{$asset_url}}/vendor/LodopFuncs.js"></script>
<script language="javascript" type="text/javascript">
var LODOP;
function print93() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 930, "CreateCustomPage");
var strStyle="<style> table,td,th {border-width:1px;border-style:solid;border-collapse:collapse}</style>"
LODOP.ADD_PRINT_TABLE(75, "4%", "92%", 475, strStyle + document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(0, "4%", "92%", 109, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(555, "4%","92%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType", 1);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", 1);
LODOP.PREVIEW();
};
</script>

View File

@ -1,5 +1,4 @@
<div id="div1"> <div id="div1">
<div style="line-height:40px;font-size:14pt;" align=center><strong><font>{{$setting['print_title']}}{{$form['template']['name']}}</font></strong></div>
<table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;"> <table border=0 cellspacing=0 cellpadding=0 width="100%" style="font-size:11pt;">
<tbody> <tbody>
<tr> <tr>
@ -57,31 +56,8 @@ td { padding: 2px; }
<div id="div3"> <div id="div3">
<table width="100%" style="LINE-HEIGHT:30px;font-size:11pt;" cellspacing="0" cellpadding="0" style="border-collapse:collapse"> <table width="100%" style="LINE-HEIGHT:30px;font-size:11pt;" cellspacing="0" cellpadding="0" style="border-collapse:collapse">
<tr> <tr>
<td width="40%">制单人:{{auth()->user()->name}}</td> <td width="40%">制单人:{{$master['created_by']}}</td>
<td width="40%">交货人:</td> <td width="40%">交货人:</td>
<td width="20%" align="right"><font tdata="PageNO">##</font>页,<font tdata="PageCount">##</font></span>页</td>
</tr> </tr>
</table> </table>
</div> </div>
<script language="javascript" src="{{$asset_url}}/vendor/LodopFuncs.js"></script>
<script language="javascript" type="text/javascript">
var LODOP;
function print93() {
LODOP = getLodop();
LODOP.PRINT_INIT("{{$form['template']['name']}}");
LODOP.SET_PRINT_PAGESIZE(0, 2100, 930, "CreateCustomPage");
var strStyle="<style> table,td,th {border-width:1px;border-style:solid;border-collapse:collapse}</style>"
LODOP.ADD_PRINT_TABLE(75, "6%", "88%", 475, strStyle + document.getElementById("div2").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"Vorient", 3);
LODOP.ADD_PRINT_HTM(0, "6%", "88%", 109, document.getElementById("div1").innerHTML);
LODOP.SET_PRINT_STYLEA(0, "ItemType", 1);
LODOP.SET_PRINT_STYLEA(0, "LinkedItem", 1);
LODOP.ADD_PRINT_HTM(555, "6%","88%", 54, document.getElementById("div3").innerHTML);
LODOP.SET_PRINT_STYLEA(0,"ItemType", 1);
LODOP.SET_PRINT_STYLEA(0,"LinkedItem", 1);
LODOP.PREVIEW();
};
</script>

View File

@ -13,48 +13,23 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 100}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 100},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'name', headerName: '名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'name', headerName: '名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
// 数据载入成功
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({
data: data data: data

View File

@ -11,49 +11,24 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = false; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true; grid.rowSelection = 'single';
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: false, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 60}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'code', headerName: '编码', width: 60},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
// 数据载入成功
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({
data: data data: data

View File

@ -11,17 +11,11 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.autoGroupColumnDef = { grid.autoGroupColumnDef = {
headerName: '名称', headerName: '名称',
@ -41,30 +35,11 @@
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData(); grid.remoteData();
// 数据载入成功
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({
data: data data: data

View File

@ -151,6 +151,7 @@ class AuthController extends Controller
} }
return $this->display([ return $this->display([
'log' => $log, 'log' => $log,
'version' => '121212121',
'show_captcha' => $show_captcha, 'show_captcha' => $show_captcha,
]); ]);
} }

View File

@ -11,17 +11,11 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.autoGroupColumnDef = { grid.autoGroupColumnDef = {
headerName: '名称', headerName: '名称',
@ -40,30 +34,11 @@
grid.columnDefs = []; grid.columnDefs = [];
grid.columnDefs.push({suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}); grid.columnDefs.push({suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60});
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData(); grid.remoteData();
// 数据载入成功
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({
data: data data: data

View File

@ -13,44 +13,21 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', field: 'name', headerName: '名称', width: 200}, {suppressMenu: true, cellClass:'text-center', field: 'name', headerName: '名称', width: 200},
{suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60} {suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}
]; ];
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData(); grid.remoteData();
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -11,17 +11,11 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.autoGroupColumnDef = { grid.autoGroupColumnDef = {
headerName: '名称', headerName: '名称',
@ -40,27 +34,10 @@
grid.columnDefs = []; grid.columnDefs = [];
grid.columnDefs.push({suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60}); grid.columnDefs.push({suppressMenu: true, cellClass:'text-center', field: 'id', headerName: 'ID', width: 60});
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData(); grid.remoteData();
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -1,15 +1,5 @@
<div class="wrapper-xs"> <div class="wrapper-xs">
<form id="dialog-{{$search['query']['id']}}-search-form" class="form-inline" method="get"> <form id="dialog-{{$search['query']['id']}}-search-form" class="form-inline" method="get">
<!--
<div class="btn-group" data-toggle="buttons">
<label class="btn btn-sm btn-default active">
<input type="radio" name="group_id" value="1">用户
</label>
<label class="btn btn-sm btn-default">
<input type="radio" name="group_id" value="2">客户
</label>
</div>
-->
@include('searchForm3') @include('searchForm3')
</form> </form>
</div> </div>
@ -21,19 +11,13 @@
var search = JSON.parse('{{json_encode($search)}}'); var search = JSON.parse('{{json_encode($search)}}');
var params = search.query; var params = search.query;
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var grid = new agGridOptions(); var grid = new agGridOptions();
var multiple = params.multi == 0 ? false : true; var option = gdoo.dialogInit(params, grid);
grid.remoteDataUrl = '{{url()}}'; grid.remoteDataUrl = '{{url()}}';
grid.remoteParams = params; grid.remoteParams = params;
grid.suppressRowClickSelection = true;
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.columnDefs = [ grid.columnDefs = [
{suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: multiple, suppressSizeToFit: true, sortable: false, width: 40}, {suppressMenu: true, cellClass:'text-center', checkboxSelection: true, headerCheckboxSelection: grid.multiple, suppressSizeToFit: true, sortable: false, width: 40},
{suppressMenu: true, cellClass:'text-center', sortable: false, field: 'username', headerName: '用户名', width: 60}, {suppressMenu: true, cellClass:'text-center', sortable: false, field: 'username', headerName: '用户名', width: 60},
{suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160}, {suppressMenu: true, cellClass:'text-left', sortable: false, field: 'name', headerName: '名称', minWidth: 160},
{suppressMenu: true, cellClass:'text-center', cellRenderer: statusRenderer, field: 'status', headerName: '状态', width: 60}, {suppressMenu: true, cellClass:'text-center', cellRenderer: statusRenderer, field: 'status', headerName: '状态', width: 60},
@ -49,27 +33,10 @@
} }
} }
grid.onRowClicked = function(row) { var gridDiv = document.querySelector("#dialog-{{$search['query']['id']}}");
var selected = row.node.isSelected();
if (selected === false) {
row.node.setSelected(true, true);
}
};
grid.onRowDoubleClicked = function (row) {
var ret = gdoo.writeSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
gdoo.dialogs[option.id] = grid;
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.remoteData({page: 1}); grid.remoteData({page: 1});
grid.remoteAfterSuccess = function() {
gdoo.initSelected(params, option, grid);
}
var data = search.forms; var data = search.forms;
var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({ var search = $("#dialog-{{$search['query']['id']}}-search-form").searchForm({

View File

@ -54,7 +54,6 @@ class Kernel extends HttpKernel
*/ */
protected $routeMiddleware = [ protected $routeMiddleware = [
'auth' => \App\Http\Middleware\Authenticate::class, 'auth' => \App\Http\Middleware\Authenticate::class,
'json' => \App\Http\Middleware\JsonResponse::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class, 'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class, 'can' => \Illuminate\Auth\Middleware\Authorize::class,
@ -63,5 +62,6 @@ class Kernel extends HttpKernel
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class, 'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
'json' => \App\Http\Middleware\JsonResponse::class,
]; ];
} }

View File

@ -9,10 +9,10 @@ class JsonResponse
{ {
public function handle(Request $request, Closure $next) public function handle(Request $request, Closure $next)
{ {
$data = $next($request); $response = $next($request);
if ($data instanceof \Illuminate\Http\JsonResponse) { if ($response instanceof \Illuminate\Http\JsonResponse) {
$data->setEncodingOptions(JSON_UNESCAPED_UNICODE); $response->setEncodingOptions(JSON_UNESCAPED_UNICODE);
} }
return $data; return $response;
} }
} }

View File

@ -49,6 +49,8 @@ class AppServiceProvider extends ServiceProvider
*/ */
public function boot() public function boot()
{ {
require_once __DIR__.'/../gdoo.php';
Paginator::defaultView('vendor/pagination/gdoo'); Paginator::defaultView('vendor/pagination/gdoo');
Event::listen(StatementPrepared::class, function ($event) { Event::listen(StatementPrepared::class, function ($event) {
$event->statement->setFetchMode(\PDO::FETCH_ASSOC); $event->statement->setFetchMode(\PDO::FETCH_ASSOC);

View File

@ -2,6 +2,22 @@
use Illuminate\Support\Arr; use Illuminate\Support\Arr;
/**
* 公共文件目录
*/
function public_path($path = '')
{
return base_path('public').($path ? '/'.$path : $path);
}
/**
* 文件上传目录
*/
function upload_path($path = '')
{
return public_path('uploads').($path ? '/'.$path : $path);
}
// 序号规则生成 // 序号规则生成
function make_sn($config, $update = false) function make_sn($config, $update = false)
{ {

28
app/gdoo.php Normal file
View File

@ -0,0 +1,28 @@
<?php
require __DIR__.'/macros.php';
require __DIR__.'/sql.php';
View::composer('*', function ($view) {
$shared = View::getShared();
$licenseType = env('LICENSE_TYPE', '开源版');
$view->with('title', 'Gdoo');
$view->with('powered', 'Powered By Gdoo');
$view->with('version', '<a target="_blank" href="http://www.gdoo.net">Gdoo</a> '.$shared['version'].' '.$licenseType);
});
/*
* 判断是否为empty
*/
function not_empty($data)
{
return !empty($data);
}
/*
* 主动抛出异常
*/
function abort_error($message, $code = 200)
{
throw new App\Exceptions\AbortException($message, $code);
}

View File

@ -1,33 +0,0 @@
<?php
/**
* 公共文件目录
*/
function public_path($path = '')
{
return base_path('public').($path ? '/'.$path : $path);
}
/**
* 文件上传目录
*/
function upload_path($path = '')
{
return public_path('uploads').($path ? '/'.$path : $path);
}
/*
* 主动抛出异常
*/
function abort_error($message, $code = 200)
{
throw new App\Exceptions\AbortException($message, $code);
}
/*
* 判断是否为empty
*/
function not_empty($data)
{
return !empty($data);
}

View File

@ -158,15 +158,7 @@ Builder::macro('search', function ($search) {
if (strpos($search['field'], '.status') !== false && $value == '-4') { if (strpos($search['field'], '.status') !== false && $value == '-4') {
$this->where($this->from.'.is_close', 1); $this->where($this->from.'.is_close', 1);
} }
elseif ($condition == 'between') {
elseif (strpos($search['field'], 'tax_id') !== false) {
if ($this->from == 'customer_order' || $this->from == 'stock_delivery' || $this->from == 'stock_direct') {
$this->where($search['field'], $value);
} else {
$customer_ids = DB::table('customer_tax')->where('id', $value)->pluck('customer_id');
$this->whereIn($this->from.'.customer_id', $customer_ids);
}
} elseif ($condition == 'between') {
$this->whereBetween($search['field'], $value); $this->whereBetween($search['field'], $value);
} elseif ($search['condition'] == 'date2') { } elseif ($search['condition'] == 'date2') {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -100,7 +100,7 @@
]; ];
grid.onRowClicked = function (row) { grid.onRowClicked = function (row) {
var ret = grid.writeSelected(row.data); var ret = grid.dialogSelected(row.data);
if (ret) { if (ret) {
hideDropMenu($input, options); hideDropMenu($input, options);
} }
@ -109,7 +109,7 @@
/** /**
* 写入选中 * 写入选中
*/ */
grid.writeSelected = function(selectedRow) { grid.dialogSelected = function(selectedRow) {
var ret = true; var ret = true;
var list = gdoo.forms[params.form_id]; var list = gdoo.forms[params.form_id];
var links = list.links[params.id]; var links = list.links[params.id];

View File

@ -39,7 +39,8 @@ function gridForm(table, options) {
var event = gdoo.event.get('grid.' + table); var event = gdoo.event.get('grid.' + table);
var editable = event.editable || {}; var editable = event.args.editable || {};
grid.defaultColDef.editable = function(params) { grid.defaultColDef.editable = function(params) {
if (params.node.rowPinned) { if (params.node.rowPinned) {
return false; return false;
@ -93,14 +94,14 @@ function gridForm(table, options) {
new agGrid.Grid(gridDiv, grid); new agGrid.Grid(gridDiv, grid);
grid.api.dialogSelected = function(query) { grid.api.dialogSelected = function(query, selectedRows) {
var dialogEvent = gdoo.event.get(query.form_id + '.' + query.id); var dialogEvent = gdoo.event.get(query.form_id + '.' + query.id);
var links = options.links[query.id]; var links = options.links[query.id];
var dialog = gdoo.dialogs[query.form_id + '_' + query.id]; //var dialogGrid = gdoo.dialogs[query.form_id + '_' + query.id];
//var selectedRows = dialogGrid.getSelectedRows();
var selectedRows = dialog.getSelectedRows();
var store = grid.api.memoryStore; var store = grid.api.memoryStore;
var rows = []; var rows = [];
grid.api.forEachNode(function(rowNode, index) { grid.api.forEachNode(function(rowNode, index) {

View File

@ -91,7 +91,7 @@
]; ];
grid.onRowClicked = function (row) { grid.onRowClicked = function (row) {
var ret = grid.writeSelected([row.data]); var ret = grid.dialogSelected([row.data]);
if (ret) { if (ret) {
hideSuggest($input, options); hideSuggest($input, options);
} }
@ -100,7 +100,7 @@
/** /**
* 写入选中 * 写入选中
*/ */
grid.writeSelected = function(rows) { grid.dialogSelected = function(rows) {
var params = grid.remoteParams; var params = grid.remoteParams;
var sid = params.prefix == 1 ? 'sid' : 'id'; var sid = params.prefix == 1 ? 'sid' : 'id';
var id = []; var id = [];

View File

@ -47,25 +47,96 @@
} }
}; };
/**
* 对话框初始化
*/
gdoo.dialogInit = function(params, grid) {
var option = gdoo.formKey(params);
var event = gdoo.event.get(option.key);
event.trigger('query', params);
// 键盘按下和弹起事件
var ctrlNotActive = true;
document.onkeydown = function (event) {
event = event || window.event;
if (event.keyCode == 17) {
ctrlNotActive = false;
}
}
document.onkeyup = function (event) {
event = event || window.event;
if (event.keyCode == 17) {
ctrlNotActive = true;
}
}
var multiple = params.multi == 0 ? false : true;
// 点击行不勾选
grid.suppressRowClickSelection = true;
// 多选还是单选
grid.rowSelection = multiple ? 'multiple' : 'single';
grid.multiple = multiple;
grid.onRowClicked = function(row) {
var selected = row.node.isSelected();
if (multiple) {
if (selected === false) {
row.node.setSelected(true, ctrlNotActive);
}
if (selected === true && ctrlNotActive === false) {
row.node.setSelected(false, false);
}
} else {
if (selected === false) {
row.node.setSelected(true, true);
}
}
};
grid.onRowSelected = function(row) {
if (params.is_grid) {
} else {
var sid = params.prefix == 1 ? 'sid' : 'id';
var res = dialogCacheSelected[option.id];
if (row.node.isSelected()) {
res[row.data[sid]] = row.data.name;
} else {
delete res[row.data[sid]];
}
dialogCacheSelected[option.id] = res;
}
}
grid.onRowDoubleClicked = function () {
var ret = gdoo.dialogSelected(event, params, option, grid);
if (ret == true) {
$('#gdoo-dialog-' + params.dialog_index).dialog('close');
}
};
// 数据加载后执行
grid.remoteAfterSuccess = function() {
gdoo.dialogInitSelected(params, option, grid);
}
gdoo.dialogs[option.id] = grid;
return option;
}
/** /**
* 对话框字段写入选中 * 对话框字段写入选中
*/ */
gdoo.writeSelected = function(event, params, option, grid) { gdoo.dialogSelected = function(event, params, option, grid) {
var rows = grid.api.getSelectedRows(); var rows = grid.api.getSelectedRows();
if (params.is_grid) { if (params.is_grid) {
var list = gdoo.forms[params.form_id]; var list = gdoo.forms[params.form_id];
list.api.dialogSelected(params); list.api.dialogSelected(params, rows);
} else { } else {
var sid = params.prefix == 1 ? 'sid' : 'id'; var sid = params.prefix == 1 ? 'sid' : 'id';
var multiple = params.multi == 0 ? false : true; var multiple = params.multi == 0 ? false : true;
var id = [];
var text = [];
$.each(rows, function(k, row) {
id.push(row[sid]);
text.push(row.name);
});
var doc = getIframeDocument(params.iframe_id); var doc = getIframeDocument(params.iframe_id);
if (doc) { if (doc) {
var $option_id = $('#' + option.id, doc); var $option_id = $('#' + option.id, doc);
@ -75,8 +146,14 @@
var $option_text = $('#' + option.id + '_text'); var $option_text = $('#' + option.id + '_text');
} }
$option_id.val(id.join(',')); var res = dialogCacheSelected[option.id] || {};
$option_text.val(text.join(','));
$.each(rows, function(k, row) {
res[row[sid]] = row.name;
});
$option_id.val(Object.keys(res).join(','));
$option_text.val(Object.values(res).join(','));
if (event.exist('onSelect')) { if (event.exist('onSelect')) {
return event.trigger('onSelect', multiple ? rows : rows[0]); return event.trigger('onSelect', multiple ? rows : rows[0]);
@ -88,29 +165,38 @@
/** /**
* 初始化选择 * 初始化选择
*/ */
gdoo.initSelected = function(params, option, grid) { gdoo.dialogInitSelected = function(params, option, grid) {
if (params.is_grid) { if (params.is_grid) {
} else { } else {
var sid = params.prefix == 1 ? 'sid' : 'id';
var doc = getIframeDocument(params.iframe_id); var doc = getIframeDocument(params.iframe_id);
if (doc) { if (doc) {
var $option_id = $('#' + option.id, doc); var $option_id = $('#' + option.id, doc);
var $option_text = $('#'+option.id + '_text', doc);
} else { } else {
var $option_id = $('#' + option.id); var $option_id = $('#' + option.id);
var $option_text = $('#' + option.id + '_text');
} }
var sid = params.prefix == 1 ? 'sid' : 'id'; if (params.is_org) {
var id = $option_id.val(); var res = dialogCacheSelected[option.id];
var rows = {}; } else {
if (id) { var id = $option_id.val();
var ids = id.split(','); var text = $option_text.val();
for (var i = 0; i < ids.length; i++) { var res = {};
rows[ids[i]] = ids[i]; if (id) {
var ids = id.split(',');
var texts = text.split(',');
for (var i = 0; i < ids.length; i++) {
res[ids[i]] = texts[i];
}
} }
dialogCacheSelected[option.id] = res;
} }
grid.api.forEachNode(function(node) { grid.api.forEachNode(function(node) {
var key = node.data[sid]; var key = node.data[sid];
if (rows[key] != undefined) { if (res[key] != undefined) {
node.setSelected(true); node.setSelected(true);
} }
}); });

View File

@ -1,4 +1,5 @@
var select2List = {}; var select2List = {};
var dialogCacheSelected = {};
$(function() { $(function() {
@ -127,12 +128,19 @@ $(function() {
url: url, url: url,
dialogClass: 'modal-lg', dialogClass: 'modal-lg',
buttons: [{ buttons: [{
text: "确定", text: '取消',
'class': "btn-default", class: 'btn-default',
click: function() { click: function() {
var list = gdoo.dialogs[option.id]; var me = this;
if (list) { $(me).dialog("close");
var ret = gdoo.writeSelected(event, params, option, list); }
},{
text: "确定",
'class': "btn-info",
click: function() {
var grid = gdoo.dialogs[option.id];
if (grid) {
var ret = gdoo.dialogSelected(event, params, option, grid);
if (ret === true) { if (ret === true) {
$(this).dialog("close"); $(this).dialog("close");
} }

View File

@ -31,8 +31,6 @@ if (file_exists(__DIR__.'/../storage/framework/maintenance.php')) {
| |
*/ */
require __DIR__.'/../app/helpers.php';
require __DIR__.'/../app/sql.php';
require __DIR__.'/../app/Support/helpers.php'; require __DIR__.'/../app/Support/helpers.php';
require __DIR__.'/../vendor/autoload.php'; require __DIR__.'/../vendor/autoload.php';

View File

@ -1,7 +1,7 @@
{ {
"/assets/dist/bundle.min.js": "/assets/dist/bundle.min.js?id=91de744571d14310c12f", "/assets/dist/bundle.min.js": "/assets/dist/bundle.min.js?id=29a199441a88a73be4c8",
"/assets/dist/vendor.min.js": "/assets/dist/vendor.min.js?id=29c59d13160c6607b4af", "/assets/dist/vendor.min.js": "/assets/dist/vendor.min.js?id=29c59d13160c6607b4af",
"/assets/dist/gdoo.min.js": "/assets/dist/gdoo.min.js?id=41c03fad45a93b2c4a16", "/assets/dist/gdoo.min.js": "/assets/dist/gdoo.min.js?id=10ad64a993592703c0a5",
"/assets/dist/index.min.js": "/assets/dist/index.min.js?id=e68deaa21814b7ec0d1c", "/assets/dist/index.min.js": "/assets/dist/index.min.js?id=e68deaa21814b7ec0d1c",
"/assets/dist/vendor.min.css": "/assets/dist/vendor.min.css?id=99a58728a17257718260", "/assets/dist/vendor.min.css": "/assets/dist/vendor.min.css?id=99a58728a17257718260",
"/assets/dist/gdoo.min.css": "/assets/dist/gdoo.min.css?id=644acfd8367a5dd5a096", "/assets/dist/gdoo.min.css": "/assets/dist/gdoo.min.css?id=644acfd8367a5dd5a096",

View File

@ -5,6 +5,7 @@ window.Vue = Vue;
// 第三方全局模块 // 第三方全局模块
import draggable from 'vuedraggable'; import draggable from 'vuedraggable';
draggable.name = 'gdoo-draggable';
window.gdooDraggable = draggable; window.gdooDraggable = draggable;
// 自定义全局模块 // 自定义全局模块

View File

@ -4,7 +4,7 @@
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>{{$setting['title']}} - Powered By {{$setting['powered']}}</title> <title>{{$setting['title']}} - {{$powered}}</title>
<link href="{{mix('/assets/dist/vendor.min.css')}}" rel="stylesheet" type="text/css" /> <link href="{{mix('/assets/dist/vendor.min.css')}}" rel="stylesheet" type="text/css" />
<link href="{{mix('/assets/dist/gdoo.min.css')}}" rel="stylesheet" type="text/css" /> <link href="{{mix('/assets/dist/gdoo.min.css')}}" rel="stylesheet" type="text/css" />

View File

@ -238,7 +238,7 @@ body {
<div class="main"> <div class="main">
<div class="main-container"> <div class="main-container">
<div class="title">{{$setting['print_title']}}{{$form['template']['name']}}</div> <div class="title">{{$setting['print_title']}}{{$form['template']['name'] ? $form['template']['name'] : $template['name']}}</div>
<div> <div>
{{$content}} {{$content}}
</div> </div>

View File

@ -7,8 +7,6 @@ function exception_error_handler($errno, $errstr, $errfile, $errline) {
} }
set_error_handler("exception_error_handler"); set_error_handler("exception_error_handler");
require __DIR__.'/../app/macros.php';
$uris = []; $uris = [];
foreach (['module', 'controller', 'action'] as $key => $uri) { foreach (['module', 'controller', 'action'] as $key => $uri) {