Files
Backend-Api/ServiceHost/Areas/Admin/Pages/Company/FilePage/Sessions.cshtml

526 lines
18 KiB
Plaintext

@page
@using _0_Framework.Application
@model ServiceHost.Areas.Admin.Pages.Company.FilePage.SessionsModel
@{
//var currentYear = new PersianDateTime(DateTime.Now).Year;
Layout = "Shared/_AdminLayout";
ViewData["title"] = "جلسات";
}
<style>
.thh0 {
width: 8px !important;
}
.thh {
width: 40px !important;
}
.thh2 {
width: 130px !important;
}
.thhNastionalId {
width: 30px !important;
}
.inpt {
width: 100%;
border: 1px solid #c7c7c7;
}
.searchpanel {
background-color: #747272;
}
.select2-container .select2-selection--single {
height: 34px;
}
table tbody tr {
height: 33.64px;
}
table.dataTable tbody > tr > td p {
font-size: 12px !important;
text-align: center !important;
vertical-align: middle;
}
table.table-bordered tbody td {
border-bottom-width: 1.5px;
}
table.dataTable thead > tr > th {
padding-left: 8px;
padding-right: 8px;
padding-top: 30px;
vertical-align: middle;
}
.ionRad {
border-radius: 8px !important;
padding: 1px 5px;
}
.ionSize {
font-size: 14.5px !important;
top: 2px !important;
position: relative;
}
#datatable td {
font-size: 12px;
}
.flex-center {
display: flex;
/* align-items:baseline */
}
.width-5 {
width: 5%
}
.width-4 {
width: 4%
}
.width-6 {
width: 6%
}
.width-10 {
width: 10%
}
.width-15 {
width: 15%
}
.btn-style {
padding: 4px 12px;
font-size: 12px
}
/* Responsive override from 768px and up */
@@media (max-width: 1200px) {
.btn-style {
padding: 4px 9px;
font-size: 9px
}
}
@@media (max-width: 768px) {
.width-4 {
width: 5% !important
}
.width-6 {
width: 15% !important
}
.width-15 {
width: 25% !important;
}
.width-5 {
width: 10% !important
}
.width-10 {
width: 20% !important
}
.btn-style {
padding: 4px 8px;
font-size: 9px
}
}
</style>
<div class="row">
<div class="col-sm-12">
<div class="panel-group panel-group-joined" id="accordion-test">
<div class="panel panel-default" style="border-radius: 15px !important;">
<div class="panel-heading" style="background-color: #545353 !important">
<h4 class="panel-title" style="color: #edebeb !important; display: inline;">
<a data-toggle="collapse" data-parent="#accordion-test" href="#collapseOne" class="collapsed" style="display: inline;">
جستجوی جلسات
</a>
</h4>
</div>
<div id="collapseOne" class="panel-collapse collapse in ">
<div class="panel-body" style="padding-top: 15px; padding-bottom: 15px;">
<div class="row">
<div class="col-sm-12">
<form class="form-inline" role="form" method="GET" name="search-theme-form" id="search-theme-form" autocomplete="off">
<input type="text" asp-for="searchModel.IsSearched" value="true" hidden>
<div class="form-group col-sm-12">
<div class="row">
<div class="col-sm-2 pull-right m-b-15">
<select class="form-control select-city" data-val="false" asp-for="searchModel.File.ArchiveNo" style="width: 100%">
<option value="-1">شماره بایگانی</option>
@foreach (var item in Model.searchModel.ArchiveNo_FileClass_UserIdList)
{
<option value="@item.ArchiveNo">@item.ArchiveNo</option>
}
</select>
</div>
<div class="col-sm-2 pull-right m-b-15">
<select class="form-control select-city" asp-for="searchModel.File.FileClass" style="width: 100%">
<option value="">کلاسه پرونده</option>
@foreach (var item in Model.searchModel.ArchiveNo_FileClass_UserIdList)
{
<option value="@item.FileClass">@item.FileClass</option>
}
</select>
</div>
<div class="col-sm-2 pull-right m-b-15">
<select class="form-control select-city" asp-for="searchModel.UserId_RequesterOrSummoned" style="width: 100%">
<option value="">موکل</option>
@foreach (var item in Model.searchModel.UsersList)
{
<option value="@item.Id-@item.RequesterOrSummoned">@item.FullName</option>
}
</select>
</div>
<div class="col-sm-2 pull-right m-b-15">
<select class="form-control select-city" asp-for="searchModel.Board.BoardType_Id" style="width: 100%">
<option value="0">مرحله رسیدگی</option>
<option value="1">تشخیص</option>
<option value="2">حل اختلاف</option>
</select>
</div>
<div class="col-sm-12"></div>
<div class="col-sm-1 pull-right m-b-15">
<select class="form-control select-city" asp-for="searchModel.Year" style="width: 100%">
<option value="0">سال</option>
@for (var k = Model.Year; k > 1370; k--)
{
<option value="@k">@k</option>
}
</select>
</div>
<div class="col-sm-1 pull-right m-b-15">
<select class="form-control select-city" asp-for="searchModel.Month" style="width: 100%">
<option value="0">ماه</option>
@for (var k = 1; k <= 12; k++)
{
<option value="@k">@k</option>
}
</select>
</div>
<div class="col-sm-1 pull-right m-b-15">
<select class="form-control select-city" asp-for="searchModel.Day" style="width: 100%">
<option value="0">روز</option>
@for (var k = 1; k <= 31; k++)
{
<option value="@k">@k</option>
}
</select>
</div>
<div class="col-sm-1 pull-right m-b-15">
<input class="form-control inpt" asp-for="searchModel.Time" placeholder="ساعت" style="width: 100%">
</div>
<div class="col-sm-2 pull-right m-b-15">
<select class="form-control select-city" asp-for="searchModel.Status" style="width: 100%">
<option value="0">هردو</option>
<option value="1">انجام نشده</option>
<option value="2">انجام شده</option>
</select>
</div>
<div class="col-sm-2 pull-right m-b-15">
<input class="form-control inpt" asp-for="searchModel.Board.BoardChairman" placeholder="رئیس هیات" style="width: 100%">
</div>
</div>
<div class="row" style="margin-top: 15px">
<div class="col-lg-9">
</div>
<div class="col-lg-3">
<button type="submit" class="btn btn-success btn-rounded waves-effect waves-light m-b-5" style="border-bottom-left-radius: 0px; border-top-left-radius: 0px; background-color: #950000; border-color: #950000; font-family: 'Web_Yekan' !important; margin-left: -3px"> <i class="fa fa-search" style="padding-left: 3px; font-size: 14px;"></i> جستجو</button>
<a class="btn btn-info btn-rounded waves-effect waves-light m-b-5" style="border-bottom-right-radius: 0px; border-top-right-radius: 0px; background-color: #545353; border-color: #545353; font-family: 'Web_Yekan' !important;" asp-page="./Sessions">مشاهده همه</a>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-sm-12">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title"><i class="fa fa-list" style="padding-left: 3px; font-size: 14px"></i> لیست جلسات</h3>
</div>
<div class="panel-body">
<div class="row ">
<div class="col-sm-12 col-sm-12 col-xs-12">
<div class="table-responsive">
<table id="datatable" class="table table-striped table-bordered">
<div class=" flex-center" style="direction: rtl !important; width: 100%; margin: 0 !important;">
<div class="width-4" style="display: flex;justify-content: center;align-items:center ; text-align: center;border: 1px solid #ddd;border-left: none; ; padding:10px 0 ">#</div>
<div class="width-6" style="display: flex;justify-content: center;align-items:center ; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none; color: #666;padding: 15px ">شماره بایگانی</div>
<div class="hidden-xs" style="display: flex;justify-content: center;align-items:center; width: 10%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666!important ">کلاسه پرونده</div>
<div class="width-15" style="display: flex;justify-content: center;align-items:center ; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ;">موکل</div>
<div class="width-15" style="display: flex;justify-content: center;align-items:center; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; ">طرف مقابل</div>
<div class="width-5" style="display: flex;justify-content: center;align-items:center ; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; ">ساعت</div>
<div class="hidden-xs" style="display: flex;justify-content: center;align-items:center; width:20%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; ">مرجع رسیدگی</div>
<div class="hidden-xs" style="display: flex;justify-content: center;align-items:center; width: 5%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; ">مرحله رسیدگی</div>
<div class="hidden-xs" style="display: flex;justify-content: center;align-items:center; width: 5%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; ">شعبه</div>
<div class="hidden-xs" style="display: flex;justify-content: center;align-items:center; width: 10%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ;">رئیس هیات</div>
<div class="width-10" style="display: flex;justify-content: center;align-items:center ; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ;"></div>
</div>
<tbody>
@{
var i = 1;
}
@foreach (var item in Model.viewModels)
{
<div style="display: flex;justify-content: center; align-items: center; text-align: center; height: 30px; line-height: 30px; font-size: small; padding: 0; color: white; background: #b70505; border: none; white-space: nowrap">@item.FullDate</div>
@for (var k = 0; k < 10; k++)
{
<div style="display: none;"></div>
}
@foreach (var ps in item.SessionsList)
{
<div class="row flex-center" style="direction: rtl !important; width: 100%; margin: 0 !important;">
<div class="width-4" style="display: flex;justify-content: center; align-items: center; text-align: center;border: 1px solid #ddd;border-left: none; ; padding:7px 0 ">
<p>@i</p>
</div>
<div class="width-6" style="display: flex;justify-content: center; align-items: center; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; padding:7px 0 ">
<p style="text-align: center">@ps.File.ArchiveNo</p>
</div>
<div class="hidden-xs" style="display: flex;justify-content: center; align-items: center; width: 10%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666!important ; padding:7px 0 ">
<p style="text-align: center">@ps.File.FileClass</p>
</div>
<div class="width-15" style="display: flex;justify-content: center; align-items: center; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; padding:7px 0 ">
<p>@ps.File.ClientFullName</p>
</div>
<div class="width-15" style="display: flex;justify-content: center; align-items: center; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; padding:7px 0 ">
<p>@ps.File.OppositePersonFullName</p>
</div>
<div class="width-5" style="display: flex;justify-content: center; align-items: center; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ;padding:7px 0 ">
<p style="text-align: center">@ps.Session.Time</p>
</div>
<div class="hidden-xs" style="display: flex;justify-content: center; align-items: center;width:20%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; padding:7px 0 ">
<p>@ps.File.ProceederReference</p>
</div>
<div class="hidden-xs" style="display: flex;justify-content: center; align-items: center;width: 5%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ; padding:7px 0 ">
<p>@(ps.Board.BoardType_Id == 1 ? "تشخیص" : "حل اختلاف")</p>
</div>
<div class="hidden-xs" style="display: flex;justify-content: center; align-items: center;width: 5%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ;padding:7px 0 ">
<p>@ps.Board.Branch</p>
</div>
<div class="hidden-xs" style="display: flex;justify-content: center; align-items: center;width: 10%; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ;padding:7px 0 ">
<p>@ps.Board.BoardChairman</p>
</div>
<div class="width-10" style="display: flex;justify-content: center; align-items: center; font-size: 10px; text-align: center;border: 1px solid #ddd;border-left: none;color: #666 ;padding:7px 0 ">
@if (ps.Session.Status == 1)
{
if (ps.Session.Date == DateTime.Now.ToFarsi())
{
<a class="btn btn-success btn-rounded btn-sm btn-style" onclick="SetSessionStatus(@ps.Session.Id, 2)">انجام شد</a>
}
}
else
{
<a class="btn btn-primary btn-rounded btn-sm btn-style" onclick="SetSessionStatus(@ps.Session.Id, 1)">انجام شده</a>
}
</div>
</div>
i++;
}
}
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@section Script {
<script src="~/AdminTheme/assets/js/site4.js"></script>
<script src="~/adminTheme/assets/datatables/jquery.dataTables.min.js"></script>
<script src="~/adminTheme/assets/datatables/dataTables.bootstrap.js"></script>
<script type="text/javascript">
$(document).ready(function () {
//$('#datatable').dataTable({
// "lengthMenu": [[25, 10, 50, 100, -1], [25, 10, 50, 100, "All"]]
//});
//$('#datatable2').dataTable({
// "lengthMenu": [[25, 10, 50, 100, -1], [25, 10, 50, 100, "All"]]
//});
const URL = "";
});
function SetSessionStatus(psId, status) {
$.ajax({
//contentType: 'application/json; charset=utf-8',
dataType: 'json',
type: 'POST',
url: '@Url.Page("./Sessions", "SetSessionStatus")',
headers: { "RequestVerificationToken": $('@Html.AntiForgeryToken()').val() },
data: {
"psId": psId,
"status": status
},
success: function (response) {
console.log(response);
if (response.isSuccedded) {
$.Notification.autoHideNotify('success', 'top center', 'پیام سیستم ', response.message);
setTimeout(function () {
window.location.reload();
},
1000);
} else
$.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', response.message);
},
failure: function (response) {
console.log(5, response);
alert("خطایی رخ داده است. لطفا با مدیر سیستم تماس بگیرید");
}
});
}
var listArray = [];
//TODO restore
@foreach (var item in Model.searchModel.ArchiveNo_FileClass_UserIdList)
{
@:listArray.push({ ArchiveNo: @item.ArchiveNo, FileClass: "@item.FileClass", UserId: @item.UserId });
}
$('#searchModel_File_ArchiveNo').on('select2:select',
function (e) {
//loadDataByArchiveNo()
});
$('#searchModel_File_FileClass').on('select2:select',
function (e) {
//loadDataByFileClass()
});
$('#searchModel_UserId').on('select2:select',
function (e) {
//loadDataByUserId()
});
function loadDataByArchiveNo() {
const archiveNo = $('#searchModel_File_ArchiveNo').val();
if (archiveNo == "") {
$("#searchModel_File_FileClass").val("").trigger('change');
$("#searchModel_UserId").val(0).trigger('change');
return;
}
for (let i = 0; i < listArray.length; i++) {
if (listArray[i].ArchiveNo == archiveNo) {
$("#searchModel_File_FileClass").val(listArray[i].FileClass).trigger('change');
$("#searchModel_UserId").val(listArray[i].UserId).trigger('change');
}
}
}
function loadDataByFileClass() {
const fileClass = $('#searchModel_File_FileClass').val();
if (fileClass == "") {
$("#searchModel_File_ArchiveNo").val("").trigger('change');
$("#searchModel_UserId").val(0).trigger('change');
return;
}
for (let i = 0; i < listArray.length; i++) {
if (listArray[i].FileClass == fileClass) {
$("#searchModel_File_ArchiveNo").val(listArray[i].ArchiveNo).trigger('change');
$("#searchModel_UserId").val(listArray[i].UserId).trigger('change');
}
}
}
function loadDataByUserId() {
const userId = $('#searchModel_UserId').val();
//if (userId == 0) {
// $("#searchModel_File_ArchiveNo").val("").trigger('change');
// $("#searchModel_File_FileClass").val("").trigger('change');
// return;
//}
for (let i = 0; i < listArray.length; i++) {
if (listArray[i].UserId == userId) {
$("#searchModel_File_ArchiveNo").val(listArray[i].ArchiveNo).trigger('change');
$("#searchModel_File_FileClass").val(listArray[i].FileClass).trigger('change');
return;
}
}
$("#searchModel_File_ArchiveNo").val("").trigger('change');
$("#searchModel_File_FileClass").val("").trigger('change');
return;
}
</script>
}