-Fix cp1251 to utf-8 decode
This commit is contained in:
miroman-afk
2022-01-29 02:10:47 +03:00
parent fb3a28e74e
commit de0e951ca1
9 changed files with 112 additions and 9 deletions

View File

@@ -1 +0,0 @@
{"status":"success","version":"1.6","file":"http:\/\/portal.hrc.by\/uploads\/modules\/v1\/1.6\/build.zip","name":"v1"}

View File

@@ -1 +0,0 @@
{"status":"success","version":"1.6","file":"http:\/\/portal.hrc.by\/uploads\/modules\/v1\/1.6\/build.zip","name":"v1"}

View File

@@ -20,6 +20,7 @@ class POSTRestoreShift extends HRCCommand implements HRCCommandInterface {
protected $signature = 'postrestoreshift';
public function command($input, $output = null) {
function dirDel($dir) {
$d = opendir($dir);
while (($entry = readdir($d)) !== false) {
@@ -40,7 +41,41 @@ class POSTRestoreShift extends HRCCommand implements HRCCommandInterface {
$nowTime = time();
$update = true;
$alph = [
"А",
"Б",
"В",
"Г",
"Д",
"Е",
"Ё",
"Ж",
"З",
"И",
"Й",
"К",
"Л",
"М",
"Н",
"О",
"П",
"Р",
"С",
"Т",
"У",
"Ф",
"Х",
"Ц",
"Ч",
"Ш",
"Щ",
"Ъ",
"Ы",
"Ь",
"Э",
"Ю",
"Я",
];
$exchange_shifts = ExchangeShifts::where('id', '=', $shift_id)->first();
$exchange_orders = ExchangeOrders::where('shift_id', '=', $shift_id)->get();
$exchange_items = ExchangeItems::where('shift_id', '=', $shift_id)->get();
@@ -106,7 +141,45 @@ class POSTRestoreShift extends HRCCommand implements HRCCommandInterface {
$shift_online_order->opened = $exchange_order["opened"];
$shift_online_order->order_sum = $exchange_order["order_sum"];
$shift_online_order->params_code = $exchange_order["params_id"];
$shift_online_order->place_name = $exchange_order["place_name"];
$place_name_bd = $exchange_order["place_name"];
$place_name_d = mb_convert_encoding($place_name_bd, "CP1251", "UTF-8");
foreach ($alph as $key => $letter) {
$haystack = $place_name_d;
$needle = $letter;
$pos = strripos($haystack, $needle);
if ($pos === false) {
$after_conv = false;
} else {
$after_conv = true;
break;
}
}
if (!$after_conv) {
foreach ($alph as $key => $letter) {
$haystack = $place_name_bd;
$needle = $letter;
$pos = strripos($haystack, $needle);
if ($pos === false) {
$before_conv = false;
} else {
$before_conv = true;
break;
}
}
}
if ($after_conv) {
$place_name_decoded = $place_name_d;
} elseif ($before_conv) {
$place_name_decoded = $place_name_bd;
} else {
$place_name_decoded = $place_name_bd;
}
$shift_online_order->place_name = $place_name_decoded;
$shift_online_order->presale = $exchange_order["presale"];
$shift_online_order->sale_sum = $exchange_order["sale_sum"];
$shift_online_order->self = $exchange_order["self"];
@@ -176,6 +249,7 @@ class POSTRestoreShift extends HRCCommand implements HRCCommandInterface {
$shift_online_deleted_item->units_id = $exchange_deleted_item["units_id"];
$shift_online_deleted_item->save();
}
$exc_time = time();
$diff_time = $exc_time - $nowTime;
$terminal_online = TerminalUpdate::where('method', 'online')->where('terminal_id', $exchange_shifts['terminal_id'])->first();

View File

@@ -123,7 +123,7 @@
$scope.total = data.total;
$('#report-out').modal();
}
}
}, function (data) {
$scope.update();
@@ -131,6 +131,8 @@
};
$scope.restoreShift = function (shift) {
$('#preload-modal').modal();
Notification.primary('Дождитесь загрузки! Страница обновится автоматически.');
smartRequest.post('v1/restoreshift', {
shift_id: shift.id
}, function (data) {
@@ -138,11 +140,9 @@
$scope.response = data.message;
if (data.status == 'success') {
Notification.success(data.message);
console.log(data.status);
console.log(data.message);
setTimeout(function() {
location.reload();
}, 5000);
}, 1000);
}
if ($scope.status == 'error') {
Notification.error(data.message);

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -111,9 +111,13 @@
</div>
<div class="modal fade" id="report-out" data-backdrop="true">
<div ui-include="'../views/out.html'"></div>
<div ui-include="'../views/reports/items/out.html'"></div>
</div>
<div class="modal fade" id="reImport" data-backdrop="true">
<div ui-include="'../views/shifts/reimport.html'"></div>
</div>
<div class="modal fade" id="preload-modal" data-backdrop="true">
<div ui-include="'../views/shifts/preload.html'"></div>
</div>

View File

@@ -0,0 +1,5 @@
<div class="ng-scope">
<div id="loader-wrapper">
<div id="loader"></div>
</div>
</div>

View File

@@ -0,0 +1,22 @@
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Выберите диапазон дат для повторной выгрузки файлов реализаций</h5>
</div>
<div class="modal-body text-center p-lg" style="height: 366px">
<div style="position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 9999;
background-image: url('../views/shifts/images/350.gif');
background-repeat: no-repeat;
background-color: #FFF;
background-position: center;"></div>
</div>
</div>
</div>