them filters trong form dong bo
This commit is contained in:
parent
cb6c8fba32
commit
d296533184
|
@ -401,11 +401,16 @@ class ListManagementController extends Controller {
|
|||
])
|
||||
]
|
||||
])), true);
|
||||
$filters = [];
|
||||
foreach ($datas['data'] as $key => $value) {
|
||||
$filters[$value['code']] = $value['code'] . " - " . $value['name'] . " - " . $value['department'];
|
||||
}
|
||||
Yii::$app->response->format = "json";
|
||||
return [
|
||||
"title" => "<i class='fa fa-download'></i> Đồng bộ từ máy chủ",
|
||||
"form" => $this->renderPartial("list-server", [
|
||||
"datas" => $datas['data'],
|
||||
"filters" => $filters,
|
||||
"allID" => ListManagement::getAllID()
|
||||
])
|
||||
];
|
||||
|
@ -633,10 +638,16 @@ class ListManagementController extends Controller {
|
|||
public function actionSyncToServer() {
|
||||
if (Yii::$app->request->isAjax) {
|
||||
Yii::$app->response->format = "json";
|
||||
$datas = ListManagement::find()->orderBy(["code" => SORT_ASC])->all();
|
||||
$filters = [];
|
||||
foreach ($datas as $key => $value) {
|
||||
$filters[$value->code] = $value->code . " - " . $value->name . " - " . $value->address;
|
||||
}
|
||||
return [
|
||||
"title" => "<i class='fa fa-upload'></i> Đồng bộ lên máy chủ",
|
||||
"form" => $this->renderPartial("list-to-server", [
|
||||
"datas" => ListManagement::find()->orderBy(["code" => SORT_ASC])->all()
|
||||
"datas" => $datas,
|
||||
"filters" => $filters
|
||||
])
|
||||
];
|
||||
}
|
||||
|
|
|
@ -28,9 +28,12 @@
|
|||
.select2-container {
|
||||
width: 100% !important;
|
||||
}
|
||||
.select2-container--default .select2-selection--single, .select2-selection .select2-selection--single{
|
||||
#form-add-staff .select2-container--default .select2-selection--single, .select2-selection .select2-selection--single{
|
||||
border-color: green;
|
||||
}
|
||||
.select2-container--default .select2-selection--single, .select2-selection .select2-selection--single{
|
||||
height: 34px !important;
|
||||
}
|
||||
</style>
|
||||
<input type="hidden" value="{Url::to(["/list-management/add"])}" name="create_url">
|
||||
<input type="hidden" value="{Url::to(["/list-management/update"])}" name="update_url">
|
||||
|
@ -227,7 +230,7 @@
|
|||
</div>
|
||||
<div class="row hidden">
|
||||
<div class="col-md-4 text-right">ID</div>
|
||||
<div class="col-md-8">
|
||||
<div class="col-md-8" id="form-add-staff">
|
||||
<select name='Code' id='Code' onchange="chooseStaff(this);" data-href="{Url::to("/list-management/choose-staff")}">
|
||||
<option value=""></option>
|
||||
{html_options options=$staffArray}
|
||||
|
|
|
@ -1,3 +1,21 @@
|
|||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<div class="input-group-addon">Tìm kiếm</div>
|
||||
<select class="form-control" id="filter-from-server" onchange="filters(this);">
|
||||
<option value=""></option>
|
||||
{html_options options=$filters}
|
||||
</select>
|
||||
<div class="input-group-btn">
|
||||
<button class="btn btn-default" data-toggle="tooltip" title="Hủy bỏ tìm kiếm" onclick="removeFilters();">
|
||||
<i class="fa fa-remove"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="max-height: 750px;overflow-y: auto;">
|
||||
<table class="table table-bordered table-striped">
|
||||
<thead>
|
||||
|
@ -12,7 +30,7 @@
|
|||
</thead>
|
||||
<tbody id="sync-lists">
|
||||
{foreach from=$datas item=arr}
|
||||
<tr onclick="choooseToSync(this);" style="cursor: pointer;" class="{if !in_array($arr.idStaff,$allID)}not-in-list{/if}" data-stt="false" data-id="{$arr.idStaff}">
|
||||
<tr id="filters-{$arr.code}" onclick="choooseToSync(this);" style="cursor: pointer;" class="filters {if !in_array($arr.idStaff,$allID)}not-in-list{/if}" data-stt="false" data-id="{$arr.idStaff}">
|
||||
<td>
|
||||
<div id="full-data-{$arr.idStaff}" class="hidden">{json_encode($arr)}</div>
|
||||
{$arr.idStaff}
|
||||
|
@ -52,13 +70,13 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="col-md-5 text-right">
|
||||
<button class="btn btn-default" onclick="checkAllNotInList();">
|
||||
<button class="btn btn-default btn-select" onclick="checkAllNotInList();">
|
||||
Chọn đối tượng chưa tồn tại
|
||||
</button>
|
||||
<button class="btn btn-default" onclick="checkAllSync(true);">
|
||||
<button class="btn btn-default btn-select" onclick="checkAllSync(true);">
|
||||
Chọn tất cả
|
||||
</button>
|
||||
<button class="btn btn-default" onclick="checkAllSync(false);">
|
||||
<button class="btn btn-default btn-select" onclick="checkAllSync(false);">
|
||||
Bỏ chọn tất cả
|
||||
</button>
|
||||
<button class="btn btn-primary" onclick="_syncFromServer();">
|
||||
|
|
|
@ -1,3 +1,21 @@
|
|||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<div class="input-group-addon">Tìm kiếm</div>
|
||||
<select class="form-control" id="filter-from-server" onchange="filters(this);">
|
||||
<option value=""></option>
|
||||
{html_options options=$filters}
|
||||
</select>
|
||||
<div class="input-group-btn">
|
||||
<button class="btn btn-default" data-toggle="tooltip" title="Hủy bỏ tìm kiếm" onclick="removeFilters();">
|
||||
<i class="fa fa-remove"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="max-height: 750px;overflow-y: auto;">
|
||||
<table class="table table-bordered table-striped">
|
||||
<thead>
|
||||
|
@ -13,7 +31,7 @@
|
|||
</thead>
|
||||
<tbody id="sync-lists">
|
||||
{foreach from=$datas item=arr}
|
||||
<tr onclick="choooseToSync(this);" style="cursor: pointer;" data-stt="false" data-id="{$arr->code}">
|
||||
<tr id="filters-{$arr.code}" class="filters" onclick="choooseToSync(this);" style="cursor: pointer;" data-stt="false" data-id="{$arr->code}">
|
||||
<td>{$arr->code}</td>
|
||||
<td>{$arr->name}</td>
|
||||
<td>{$arr->gender}</td>
|
||||
|
@ -49,10 +67,10 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="col-md-4 text-right">
|
||||
<button class="btn btn-default" onclick="checkAllSync(true);">
|
||||
<button class="btn btn-default btn-select" onclick="checkAllSync(true);">
|
||||
Chọn tất cả
|
||||
</button>
|
||||
<button class="btn btn-default" onclick="checkAllSync(false);">
|
||||
<button class="btn btn-default btn-select" onclick="checkAllSync(false);">
|
||||
Bỏ chọn tất cả
|
||||
</button>
|
||||
<button class="btn btn-primary" onclick="_syncToServer();">
|
||||
|
|
|
@ -411,6 +411,9 @@ function _syncFromServerForm(e) {
|
|||
success: function (data) {
|
||||
common.modalBlock(false);
|
||||
common.modalOpenFullScreen(data.form, data.title);
|
||||
$("#filter-from-server").select2({
|
||||
placeholder: "Tìm kiếm theo ID hoặc tên"
|
||||
});
|
||||
},
|
||||
error: function (jqXHR, textStatus, errorThrown) {
|
||||
common.modalBlock(false);
|
||||
|
@ -512,6 +515,9 @@ function _syncToServerForm(e) {
|
|||
success: function (data) {
|
||||
common.modalBlock(false);
|
||||
common.modalOpenFullScreen(data.form, data.title);
|
||||
$("#filter-from-server").select2({
|
||||
placeholder: "Tìm kiếm theo ID hoặc tên"
|
||||
});
|
||||
},
|
||||
error: function (jqXHR, textStatus, errorThrown) {
|
||||
common.modalBlock(false);
|
||||
|
@ -570,3 +576,25 @@ function syncFeatureToServer(id, fullData) {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
function filters(e) {
|
||||
var id = $(e).val();
|
||||
if (id === "") {
|
||||
$(".filters").removeClass("hidden");
|
||||
$(".btn-select").removeClass("hidden");
|
||||
checkAllSync(false);
|
||||
} else {
|
||||
$(".filters").addClass("hidden");
|
||||
$("#filters-" + id).removeClass("hidden");
|
||||
$(".btn-select").addClass("hidden");
|
||||
checkAllSync(false);
|
||||
choooseToSync($("#filters-" + id));
|
||||
}
|
||||
}
|
||||
|
||||
function removeFilters() {
|
||||
$(".filters").removeClass("hidden");
|
||||
$(".btn-select").removeClass("hidden");
|
||||
$("#filter-from-server").val('').trigger('change');
|
||||
checkAllSync(false);
|
||||
}
|
Loading…
Reference in New Issue
Block a user