1171 lines
34 KiB
Plaintext
1171 lines
34 KiB
Plaintext
@model AccountManagement.Application.Contracts.Account.AccountLeftWorkViewModel
|
||
@Html.AntiForgeryToken()
|
||
@{
|
||
<style>
|
||
.modal-dialog {
|
||
width: 60% !important;
|
||
}
|
||
.box{
|
||
|
||
background-color: #cee8d9;
|
||
align-items: center;
|
||
padding: 7px;
|
||
border-radius: 10px;
|
||
|
||
|
||
}
|
||
|
||
.box2{
|
||
|
||
background-color: #d8f1f1;
|
||
align-items: center;
|
||
padding: 7px;
|
||
border-radius: 10px;
|
||
|
||
|
||
}
|
||
.newWorkshop {
|
||
background-color: #bdf7c5;
|
||
align-items: center;
|
||
padding: 7px;
|
||
border-radius: 10px;
|
||
}
|
||
.deactiveWorkshop {
|
||
background-color: rgb(195,195,195);
|
||
align-items: center;
|
||
padding: 7px;
|
||
border-radius: 10px;
|
||
}
|
||
.mess {
|
||
height: 580px;
|
||
overflow-y: scroll;
|
||
background: aliceblue;
|
||
box-shadow: 0px 1px 15px 0 #b4c0b2;
|
||
border-radius: 20px;
|
||
margin-bottom: 20px;
|
||
padding: 15px;
|
||
font-size: 12px;
|
||
|
||
}
|
||
.date{
|
||
background-color: #fafafa;
|
||
color: rgba(0, 0, 0, 0.6);
|
||
font-size: 14px;
|
||
border: 1px solid #c7c7c7 !important;
|
||
-webkit-border-radius: 2px;
|
||
-moz-border-radius: 2px;
|
||
border-radius: 10px;
|
||
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
||
-moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
||
border: 1px solid #eee;
|
||
box-shadow: none;
|
||
text-align : center;
|
||
width: 98%
|
||
}
|
||
.select {
|
||
background-color: #fafafa;
|
||
color: rgba(0, 0, 0, 0.6);
|
||
font-size: 14px;
|
||
border: 1px solid #c7c7c7 !important;
|
||
-webkit-border-radius: 2px;
|
||
-moz-border-radius: 2px;
|
||
border-radius: 10px;
|
||
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
||
-moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
||
border: 1px solid #eee;
|
||
box-shadow: none;
|
||
text-align: center;
|
||
}
|
||
.mess::-webkit-scrollbar {
|
||
width: 6px;
|
||
}
|
||
|
||
.mess::-webkit-scrollbar-track {
|
||
background-color: #8bd8ed42;
|
||
border-radius: 12px;
|
||
}
|
||
|
||
.mess::-webkit-scrollbar-thumb {
|
||
background-color: #3159adb8;
|
||
border-radius: 12px;
|
||
}
|
||
.personleName {
|
||
position: fixed;
|
||
top: 7px;
|
||
right: 4%;
|
||
background-color: #d4d9d9;
|
||
padding: 0px 10px;
|
||
border-radius: 5px;
|
||
}
|
||
.mess::-webkit-scrollbar-thumb:hover {
|
||
background-color: #aaa;
|
||
}
|
||
|
||
.errored {
|
||
animation: shake 300ms;
|
||
box-shadow: inset 0 0 2px #eb3434, 0 0 5px #eb3434 !important;
|
||
border: 1px solid #eb3434 !important;
|
||
}
|
||
.checkbox-wrapper-10 {
|
||
position: relative;
|
||
right: 22%;
|
||
}
|
||
@@media screen and (max-width: 1920px) {
|
||
.modal-dialog {
|
||
width: 60% !important;
|
||
}
|
||
|
||
.checkbox-wrapper-10 {
|
||
position: relative;
|
||
right: 22%;
|
||
}
|
||
}
|
||
|
||
@@media screen and (max-width: 1440px) {
|
||
.modal-dialog {
|
||
width: 60% !important;
|
||
}
|
||
|
||
.checkbox-wrapper-10 {
|
||
position: relative;
|
||
right: 22%;
|
||
}
|
||
}
|
||
|
||
@@media screen and (max-width: 1360px) {
|
||
.modal-dialog {
|
||
width: 70% !important;
|
||
}
|
||
.personleName {
|
||
position: fixed;
|
||
top: 7px;
|
||
right: 5%;
|
||
background-color: #d4d9d9;
|
||
padding: 0px 10px;
|
||
border-radius: 5px;
|
||
}
|
||
|
||
.checkbox-wrapper-10 {
|
||
position: relative;
|
||
right: 18%;
|
||
}
|
||
}
|
||
|
||
|
||
@@media screen and (max-width: 992px) {
|
||
.modal-dialog {
|
||
width: 90% !important;
|
||
}
|
||
.personleName {
|
||
position: fixed;
|
||
top: 7px;
|
||
right: 5%;
|
||
background-color: #d4d9d9;
|
||
padding: 0px 10px;
|
||
border-radius: 5px;
|
||
|
||
}
|
||
.checkbox-wrapper-10 {
|
||
position: relative;
|
||
right: 15%;
|
||
}
|
||
}
|
||
|
||
@@media screen and (max-width: 767px) {
|
||
.modal-dialog {
|
||
width: 90% !important;
|
||
}
|
||
|
||
.workshopName {
|
||
margin-top: 10px;
|
||
background: #deebe3;
|
||
border-radius: 5px;
|
||
}
|
||
.personleName {
|
||
position: fixed;
|
||
top: 7px;
|
||
right: 12%;
|
||
background-color: #d4d9d9;
|
||
padding: 0px 10px;
|
||
border-radius: 5px;
|
||
}
|
||
|
||
.checkbox-wrapper-10 {
|
||
position: inherit;
|
||
}
|
||
}
|
||
</style>
|
||
<style>
|
||
.checkbox-wrapper-26 * {
|
||
-webkit-tap-highlight-color: transparent;
|
||
outline: none;
|
||
}
|
||
|
||
.checkbox-wrapper-26 input[type="checkbox"] {
|
||
display: none;
|
||
}
|
||
|
||
.checkbox-wrapper-26 label {
|
||
--size: 21px;
|
||
--shadow: calc(var(--size) * .07) calc(var(--size) * .1);
|
||
position: relative;
|
||
display: block;
|
||
width: var(--size);
|
||
height: var(--size);
|
||
margin: 0 auto;
|
||
background-color: #8db5d7;
|
||
border-radius: 50%;
|
||
cursor: pointer;
|
||
transition: 0.2s ease transform, 0.2s ease background-color, 0.2s ease box-shadow;
|
||
overflow: hidden;
|
||
z-index: 1;
|
||
}
|
||
|
||
.checkbox-wrapper-26 label:before {
|
||
content: "";
|
||
position: absolute;
|
||
top: 50%;
|
||
right: 0;
|
||
left: 0;
|
||
width: calc(var(--size) * .7);
|
||
height: calc(var(--size) * .7);
|
||
margin: 0 auto;
|
||
background-color: #fff;
|
||
transform: translateY(-50%);
|
||
border-radius: 50%;
|
||
|
||
transition: 0.2s ease width, 0.2s ease height;
|
||
}
|
||
|
||
.checkbox-wrapper-26 label:hover:before {
|
||
width: calc(var(--size) * .55);
|
||
height: calc(var(--size) * .55);
|
||
|
||
}
|
||
|
||
.checkbox-wrapper-26 label:active {
|
||
transform: scale(0.9);
|
||
}
|
||
|
||
.checkbox-wrapper-26 .tick_mark {
|
||
position: absolute;
|
||
top: -1px;
|
||
right: 0;
|
||
left: calc(var(--size) * -.05);
|
||
width: calc(var(--size) * .6);
|
||
height: calc(var(--size) * .6);
|
||
margin: 0 auto;
|
||
margin-left: calc(var(--size) * .14);
|
||
transform: rotateZ(-40deg);
|
||
}
|
||
|
||
.checkbox-wrapper-26 .tick_mark:before,
|
||
.checkbox-wrapper-26 .tick_mark:after {
|
||
content: "";
|
||
position: absolute;
|
||
background-color: #fff;
|
||
border-radius: 2px;
|
||
opacity: 0;
|
||
transition: 0.2s ease transform, 0.2s ease opacity;
|
||
}
|
||
|
||
.checkbox-wrapper-26 .tick_mark:before {
|
||
left: 0;
|
||
bottom: 0;
|
||
width: calc(var(--size) * .1);
|
||
height: calc(var(--size) * .3);
|
||
box-shadow: -2px 0 5px rgba(0, 0, 0, 0.23);
|
||
transform: translateY(calc(var(--size) * -.68));
|
||
}
|
||
|
||
.checkbox-wrapper-26 .tick_mark:after {
|
||
left: 0;
|
||
bottom: 0;
|
||
width: 100%;
|
||
height: calc(var(--size) * .1);
|
||
box-shadow: 0 3px 5px rgba(0, 0, 0, 0.23);
|
||
transform: translateX(calc(var(--size) * .78));
|
||
}
|
||
|
||
.checkbox-wrapper-26 input[type="checkbox"]:checked + label {
|
||
background-color: #07d410;
|
||
box-shadow: 0 var(--shadow) #92ff97;
|
||
}
|
||
|
||
.checkbox-wrapper-26 input[type="checkbox"]:checked + label:before {
|
||
width: 0;
|
||
height: 0;
|
||
}
|
||
|
||
.checkbox-wrapper-26 input[type="checkbox"]:checked + label .tick_mark:before,
|
||
.checkbox-wrapper-26 input[type="checkbox"]:checked + label .tick_mark:after {
|
||
transform: translate(0);
|
||
opacity: 1;
|
||
}
|
||
</style>
|
||
<style>
|
||
.checkbox-wrapper-10 .tgl {
|
||
display: none;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl,
|
||
.checkbox-wrapper-10 .tgl:after,
|
||
.checkbox-wrapper-10 .tgl:before,
|
||
.checkbox-wrapper-10 .tgl *,
|
||
.checkbox-wrapper-10 .tgl *:after,
|
||
.checkbox-wrapper-10 .tgl *:before,
|
||
.checkbox-wrapper-10 .tgl + .tgl-btn {
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl::-moz-selection,
|
||
.checkbox-wrapper-10 .tgl:after::-moz-selection,
|
||
.checkbox-wrapper-10 .tgl:before::-moz-selection,
|
||
.checkbox-wrapper-10 .tgl *::-moz-selection,
|
||
.checkbox-wrapper-10 .tgl *:after::-moz-selection,
|
||
.checkbox-wrapper-10 .tgl *:before::-moz-selection,
|
||
.checkbox-wrapper-10 .tgl + .tgl-btn::-moz-selection,
|
||
.checkbox-wrapper-10 .tgl::selection,
|
||
.checkbox-wrapper-10 .tgl:after::selection,
|
||
.checkbox-wrapper-10 .tgl:before::selection,
|
||
.checkbox-wrapper-10 .tgl *::selection,
|
||
.checkbox-wrapper-10 .tgl *:after::selection,
|
||
.checkbox-wrapper-10 .tgl *:before::selection,
|
||
.checkbox-wrapper-10 .tgl + .tgl-btn::selection {
|
||
background: none;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl + .tgl-btn {
|
||
outline: 0;
|
||
display: block;
|
||
width: 4em;
|
||
height: 2em;
|
||
position: relative;
|
||
cursor: pointer;
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl + .tgl-btn:after,
|
||
.checkbox-wrapper-10 .tgl + .tgl-btn:before {
|
||
position: relative;
|
||
display: block;
|
||
content: "";
|
||
width: 50%;
|
||
height: 100%;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl + .tgl-btn:after {
|
||
left: 0;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl + .tgl-btn:before {
|
||
display: none;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl:checked + .tgl-btn:after {
|
||
left: 50%;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl-flip + .tgl-btn {
|
||
padding: 2px;
|
||
transition: all 0.2s ease;
|
||
font-family: sans-serif;
|
||
perspective: 100px;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl-flip + .tgl-btn:after,
|
||
.checkbox-wrapper-10 .tgl-flip + .tgl-btn:before {
|
||
display: inline-block;
|
||
transition: all 0.4s ease;
|
||
width: 100%;
|
||
text-align: center;
|
||
position: absolute;
|
||
line-height: 2em;
|
||
font-weight: bold;
|
||
color: #fff;
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
-webkit-backface-visibility: hidden;
|
||
backface-visibility: hidden;
|
||
border-radius: 4px;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl-flip + .tgl-btn:after {
|
||
content: attr(data-tg-on);
|
||
background: #02C66F;
|
||
transform: rotateY(-180deg);
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl-flip + .tgl-btn:before {
|
||
background: #FF3A19;
|
||
content: attr(data-tg-off);
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl-flip + .tgl-btn:active:before {
|
||
transform: rotateY(-20deg);
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl-flip:checked + .tgl-btn:before {
|
||
transform: rotateY(180deg);
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl-flip:checked + .tgl-btn:after {
|
||
transform: rotateY(0);
|
||
left: 0;
|
||
background: #7FC6A6;
|
||
}
|
||
|
||
.checkbox-wrapper-10 .tgl-flip:checked + .tgl-btn:active:after {
|
||
transform: rotateY(20deg);
|
||
}
|
||
</style>
|
||
}
|
||
<div class="modal-header" style="border-bottom: unset">
|
||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true" style="right: 1%;">×</button>
|
||
<span class="personleName">@Model.AccountFullName</span>
|
||
</div>
|
||
|
||
<input type="hidden" id="currentAccountId" value="@Model.AccountId" asp-for="AccountId">
|
||
<div class="row box2" style="margin-top:17px; background-color: #d8e5f1 !important">
|
||
|
||
<div class="col-xs-12 col-sm-6 pull-right">
|
||
|
||
<div class="row">
|
||
<div class="col-xs-3 pull-right">
|
||
<span>شروع بکار</span> <span> </span><span>:</span>
|
||
</div>
|
||
<div class="col-xs-9 pull-right">
|
||
<span dir="ltr"> <input type="text" id="start" class="date" asp-for="StartDateFa" maxlength="10"></span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="col-xs-12 col-sm-6 pull-right">
|
||
<div class="row">
|
||
<div class="col-xs-3 pull-right">
|
||
<span>ترک کار</span> <span> </span><span>:</span>
|
||
</div>
|
||
<div class="col-xs-9 pull-right">
|
||
<span dir="ltr"> <input type="text" id="end" class="date" asp-for="LeftDateFa" maxlength="10"></span>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
</div>
|
||
<div class="row box2" style="margin-top: 6px;">
|
||
<div class="col-sm-6">
|
||
<span>کپی کارگاه ها به پرسنل دیگر</span>
|
||
|
||
<div class="form-group" style="width: 100% !important; margin: 0 auto;">
|
||
<select id="personId" class="select-city select" style="width: 100% !important; margin: 0 auto;" asp-items="@Model.AccountSelectList">
|
||
<option value="0" > پرسنل </option>
|
||
</select>
|
||
</div>
|
||
<a type="button" id="copyTo" class="btn btn-success red m-t-10">
|
||
<span>تایید</span>
|
||
</a>
|
||
</div>
|
||
<div class="col-sm-6">
|
||
<span>افزودن کارگاه جدید</span>
|
||
<div class="form-group" style="width: 100% !important; margin: 0 auto;">
|
||
<select id="addWorkshopId" class="select-city select" style="width: 100% !important; margin: 0 auto;" asp-items="@Model.WorkshopSelectList">
|
||
<option value="0"> کارگاه </option>
|
||
</select>
|
||
</div>
|
||
<a type="button" id="addWorkshop" class="btn btn-success red m-t-10">
|
||
<span>افزودن</span>
|
||
</a>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<div class="row box2" style="margin-top: 4px;font-size: 12px;background-color: #b5d6e3; padding: 7px 23px">
|
||
|
||
<div class="col-xs-12 col-sm-6" style="text-align: center">
|
||
<div class="row">
|
||
<div class="col-xs-3">
|
||
<span>وضعیت</span>
|
||
<div class="checkbox-wrapper-26">
|
||
<input onclick="activeAll(this)" type="checkbox" id="activation">
|
||
<label for="activation">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
</div>
|
||
</div>
|
||
<div class="col-xs-3">
|
||
<span>مالیات</span>
|
||
<div class="checkbox-wrapper-26">
|
||
<input onclick="selectAlltax(this)" type="checkbox" id="tax">
|
||
<label for="tax">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
</div>
|
||
</div>
|
||
<div class="col-xs-3">
|
||
<span>بیمه</span>
|
||
<div class="checkbox-wrapper-26">
|
||
<input onclick="selectAllInsurance(this)" type="checkbox" id="insurance">
|
||
<label for="insurance">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
</div>
|
||
</div>
|
||
<div class="col-xs-3">
|
||
<span>قرداد و تصفیه</span>
|
||
<div class="checkbox-wrapper-26">
|
||
<input onclick="selectAllContractAndCheckout(this)" type="checkbox" id="contractAndCheckout">
|
||
<label for="contractAndCheckout">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
<div class="col-xs-6 hidden-xs">
|
||
<span>نام کارگاه</span>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="row mess" id="dataFild" style="margin-top: 5px;">
|
||
|
||
@foreach (var item in @Model.WorkshopAccountlist)
|
||
{
|
||
<div class="row box wtr" style="margin-top: 3px; direction: rtl">
|
||
|
||
<div class="col-sm-6 ">
|
||
|
||
<div class="row">
|
||
<div class="col-xs-3">
|
||
<div class="checkbox-wrapper-10">
|
||
@if (@item.IsActiveSting == "true")
|
||
{
|
||
<input class="tgl tgl-flip" name="activeCh" onclick="selectOne(this)" value="true" checked="checked" id="activeation+@item.WorkshopId" type="checkbox">
|
||
<label class="tgl-btn" data-tg-off="عیرفعال" data-tg-on="فعال" for="activeation+@item.WorkshopId"></label>
|
||
}
|
||
else
|
||
{
|
||
<input class="tgl tgl-flip" name="activeCh" onclick="selectOne(this)" value="false" id="activeation+@item.WorkshopId" type="checkbox">
|
||
<label class="tgl-btn" data-tg-off="عیرفعال" data-tg-on="فعال" for="activeation+@item.WorkshopId"></label>
|
||
}
|
||
|
||
</div>
|
||
|
||
</div>
|
||
<div class="col-xs-3">
|
||
<div class="checkbox-wrapper-26">
|
||
|
||
@if (@item.Tax == "true")
|
||
{
|
||
<input type="checkbox" onclick="selectOne(this)" class="taxCh" value="true" checked="checked" id="tax+@item.WorkshopId">
|
||
<label for="tax+@item.WorkshopId">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
}
|
||
else
|
||
{
|
||
<input type="checkbox" onclick="selectOne(this)" class="taxCh" value="false" id="tax+@item.WorkshopId">
|
||
<label for="tax+@item.WorkshopId">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
}
|
||
</div>
|
||
</div>
|
||
<div class="col-xs-3">
|
||
<div class="checkbox-wrapper-26">
|
||
@if (@item.Insurance == "true")
|
||
{
|
||
<input type="checkbox" onclick="selectOne(this)" class="insuranceCh" value="true" checked="checked" id="insurance+@item.WorkshopId">
|
||
<label for="insurance+@item.WorkshopId">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
}
|
||
else
|
||
{
|
||
<input type="checkbox" onclick="selectOne(this)" class="insuranceCh" value="false" id="insurance+@item.WorkshopId">
|
||
<label for="insurance+@item.WorkshopId">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
}
|
||
|
||
</div>
|
||
</div>
|
||
<div class="col-xs-3">
|
||
<div class="checkbox-wrapper-26">
|
||
@if (@item.ContractAndCheckout == "true")
|
||
{
|
||
<input type="checkbox" onclick="selectOne(this)" class="contractCh" value="true" checked="checked" id="contractAndChekouts+@item.WorkshopId">
|
||
<label for="contractAndChekouts+@item.WorkshopId">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
}
|
||
else
|
||
{
|
||
<input type="checkbox" onclick="selectOne(this)" class="contractCh" value="false" id="contractAndChekouts+@item.WorkshopId">
|
||
<label for="contractAndChekouts+@item.WorkshopId">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
}
|
||
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</div>
|
||
<div class="col-sm-6 workshopName">
|
||
<span> @item.WorkshopName</span>
|
||
<input type="hidden" value="@item.WorkshopId" name="wid">
|
||
</div>
|
||
</div>
|
||
}
|
||
|
||
</div>
|
||
|
||
<div class="row">
|
||
<div class="col-xs-6 col-md-3 pull-left">
|
||
<a type="button" id="finalSave" class="btn btn-success btn-rounded pull-left m-b-10">ذخیره</a>
|
||
<button type="button" class="btn btn-default btn-rounded waves-effect waves-light pull-left m-b-10 m-l-10" data-dismiss="modal">بستن</button>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
<script src="/admintheme/js/jquery.mask_1.14.16.min.js"></script>
|
||
|
||
<script>
|
||
$(".date").mask("0000/00/00");
|
||
$("#start").keyup(function() {
|
||
const value = $(this).val();
|
||
const lengthValue = value.length;
|
||
if (lengthValue == 10) {
|
||
if (!dateValidCheck(this)) {
|
||
$(this).addClass("errored");
|
||
} else {
|
||
$(this).removeClass("errored");
|
||
|
||
}
|
||
} else if (lengthValue == 0) {
|
||
$(this).removeClass("errored");
|
||
}
|
||
});
|
||
$("#end").keyup(function() {
|
||
const value = $(this).val();
|
||
const lengthValue = value.length;
|
||
if (lengthValue == 10) {
|
||
if (!dateValidCheck(this)) {
|
||
$(this).addClass("errored");
|
||
} else {
|
||
$(this).removeClass("errored");
|
||
|
||
}
|
||
} else if (lengthValue == 0) {
|
||
$(this).removeClass("errored");
|
||
}
|
||
});
|
||
//Add New Workshop
|
||
$('#addWorkshop').on("click",
|
||
function() {
|
||
let addWorkshopId = Number($('#addWorkshopId').val());
|
||
var selectedWorkshop = document.getElementById('addWorkshopId');
|
||
let selectedWorkshopName = selectedWorkshop.options[selectedWorkshop.selectedIndex].text;
|
||
|
||
if (addWorkshopId == 0) {
|
||
$.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', "هیچ کارگاهی انتخاب نشده است");
|
||
} else {
|
||
$('.sweet-alert').removeClass("successSwall");
|
||
$('.sweet-alert').removeClass("errorSwall");
|
||
let fullName = $('.personleName').text();
|
||
var mess = ' آیا از افزودن کارگاه ' + ' ' + selectedWorkshopName + ' ' + ' به لیست کارگاه های' + ' ' + fullName + ' ' + 'اطمینان دارید ؟ ';
|
||
swal({
|
||
title: mess,
|
||
text: "",
|
||
type: "warning",
|
||
showCancelButton: true,
|
||
confirmButtonColor: "#DD6B55",
|
||
confirmButtonText: "بله",
|
||
cancelButtonText: "خیر",
|
||
closeOnConfirm: true
|
||
}, function (isConfirm) {
|
||
if (isConfirm) {
|
||
const newRow = `<div class="row newWorkshop wtr" style="margin-top: 3px; direction: rtl">
|
||
|
||
<div class="col-sm-6 ">
|
||
|
||
<div class="row">
|
||
<div class="col-xs-3">
|
||
|
||
</div>
|
||
<div class="col-xs-3">
|
||
<div class="checkbox-wrapper-26">
|
||
<input type="checkbox" onclick="selectOne(this)" class="taxCh" value="" id="tax+${addWorkshopId}">
|
||
<label for="tax+${addWorkshopId}">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="col-xs-3">
|
||
<div class="checkbox-wrapper-26">
|
||
<input type="checkbox" onclick="selectOne(this)" class="insuranceCh" value="" id="insurance+${addWorkshopId}">
|
||
<label for="insurance+${addWorkshopId}">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
<div class="col-xs-3">
|
||
<div class="checkbox-wrapper-26">
|
||
|
||
<input type="checkbox" onclick="selectOne(this)" class="contractCh" value="" id="contractAndChekouts+${addWorkshopId}">
|
||
<label for="contractAndChekouts+${addWorkshopId}">
|
||
<div class="tick_mark"></div>
|
||
</label>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
</div>
|
||
<div class="col-sm-6 workshopName">
|
||
<span> ${selectedWorkshopName}</span>
|
||
<input type="hidden" value="${addWorkshopId}" name="wid" />
|
||
</div>
|
||
</div>`;
|
||
$('#dataFild div:eq(0)').before(newRow);
|
||
var removeOption = selectedWorkshop.options[selectedWorkshop.selectedIndex];
|
||
removeOption.remove();
|
||
|
||
}
|
||
|
||
|
||
});
|
||
}
|
||
});
|
||
//copy workshops to new account
|
||
$('#copyTo').on("click",
|
||
function() {
|
||
let personnelId = Number($('#personId').val());
|
||
var selectedperson = document.getElementById('personId');
|
||
let selectedpersonName = selectedperson.options[selectedperson.selectedIndex];
|
||
|
||
let selectedPersonFullName = selectedpersonName.text;
|
||
if (personnelId == 0) {
|
||
$.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', "لطفا پرسنل انتخاب کنید");
|
||
} else {
|
||
$('.sweet-alert').removeClass("successSwall");
|
||
$('.sweet-alert').removeClass("errorSwall");
|
||
let fullName = $('.personleName').text();
|
||
var mess = ' آیا از کپی نمودن کارگاه های ' + ' ' + fullName + ' ' + ' برای' + ' ' + selectedPersonFullName + ' ' +'اطمینان دارید ؟ ';
|
||
console.log(mess);
|
||
swal({
|
||
title: mess,
|
||
text: "",
|
||
type: "warning",
|
||
showCancelButton: true,
|
||
confirmButtonColor: "#DD6B55",
|
||
confirmButtonText: "بله",
|
||
cancelButtonText: "خیر",
|
||
closeOnConfirm: true
|
||
}, function (isConfirm) {
|
||
if (isConfirm) {
|
||
console.log(selectedPersonFullName);
|
||
|
||
$.ajax({
|
||
//contentType: 'application/json; charset=utf-8',
|
||
async: false,
|
||
dataType: 'json',
|
||
type: 'GET',
|
||
url: '@Url.Page("/Accounts/Account/Index", "CopyWorkshopToNewAccount")',
|
||
headers: { "RequestVerificationToken": $('input[name="__RequestVerificationToken"]').val() },
|
||
data: { "currentAccountId": Number($('#currentAccountId').val()), "newAccountId": personnelId},
|
||
|
||
success: function (response) {
|
||
if (response.isSuccess) {
|
||
$.Notification.autoHideNotify('success', 'top center', 'پیام سیستم ', " کپی کارگاه ها با موفقیت انجام شد");
|
||
} else {
|
||
$.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', response.message);
|
||
}
|
||
},
|
||
failure: function (response) {
|
||
console.log(5, response);
|
||
|
||
}
|
||
});
|
||
}
|
||
|
||
|
||
});
|
||
}
|
||
});
|
||
|
||
//save
|
||
$('#finalSave').on("click",
|
||
function() {
|
||
var ajaxSend = true;
|
||
if ($("#start").hasClass("errored")) {
|
||
ajaxSend = false;
|
||
$.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', "تاریخ شروع بکار را بصورت صحیح وارد کنید");
|
||
}
|
||
|
||
if ($("#start").val() == "") {
|
||
$.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', "تاریخ شروع بکار خالی است");
|
||
ajaxSend = false;
|
||
}
|
||
|
||
|
||
if ($("#end").hasClass("errored")) {
|
||
$.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', "تاریخ ترک کار را بصورت صحیح وارد کنید");
|
||
ajaxSend = false;
|
||
}
|
||
|
||
var workshopAccountlistViewModel = [];
|
||
let accId = Number($('#currentAccountId').val());
|
||
$('#dataFild .wtr').each(function(i) {
|
||
const workshopAccountlist = {};
|
||
let wId = $(this).find("input[name=wid]").val();
|
||
let contractStr = $(this).find("input[class=contractCh]").val() == "" ? "false" : $(this).find("input[class=contractCh]").val();
|
||
let taxStr = $(this).find("input[class=taxCh]").val() == "" ? "false" : $(this).find("input[class=taxCh]").val();
|
||
let insuranceStr = $(this).find("input[class=insuranceCh]").val() == "" ? "false" : $(this).find("input[class=insuranceCh]").val();
|
||
let isActiveSt = $(this).find("input[name=activeCh]").val() == "" ? "false" : $(this).find("input[name=activeCh]").val();
|
||
console.log(isActiveSt);
|
||
// console.log(wId + " " + contractStr + " " + taxStr + " " + insuranceStr);
|
||
workshopAccountlist.WorkshopId = Number(wId);
|
||
workshopAccountlist.WorkshopName = "ttt";
|
||
workshopAccountlist.AccountId = accId;
|
||
workshopAccountlist.ContractAndCheckout = contractStr;
|
||
workshopAccountlist.Insurance = insuranceStr;
|
||
workshopAccountlist.Tax = taxStr;
|
||
workshopAccountlist.IsActiveSting = isActiveSt;
|
||
var test = [{id:12,workshopAccolist :[]}]
|
||
workshopAccountlistViewModel.push(workshopAccountlist);
|
||
});
|
||
if (ajaxSend) {
|
||
$.ajax({
|
||
async: false,
|
||
dataType: 'json',
|
||
type: 'POST',
|
||
url: '@Url.Page("/Accounts/Account/Index", "CreateAccountLeftWork")',
|
||
headers: { "RequestVerificationToken": $('input[name="__RequestVerificationToken"]').val() },
|
||
data: {
|
||
"workshopAccountlistViewModel": workshopAccountlistViewModel, "startDate": $("#start").val(), "leftDate": $("#end").val(), "accountId": accId},
|
||
success: function (response) {
|
||
if (response.isSuccess === true) {
|
||
$.Notification.autoHideNotify('success', 'top center', 'پیام سیستم ', response.mess);
|
||
} else {
|
||
|
||
|
||
$.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', response.mess);
|
||
}
|
||
},
|
||
failure: function (response) {
|
||
console.log(5, response);
|
||
|
||
}
|
||
}); //endOf Ajax
|
||
}
|
||
|
||
|
||
});
|
||
|
||
//OneSelect
|
||
|
||
function selectOne(source) {
|
||
|
||
if (source.checked == true) {
|
||
source.value = "true";
|
||
|
||
} else {
|
||
source.value = "false";
|
||
}
|
||
}
|
||
//GroupSelect
|
||
|
||
function selectAllContractAndCheckout(source) {
|
||
let checkboxes = document.getElementsByClassName('contractCh');
|
||
for (var i = 0, n = checkboxes.length; i < n; i++) {
|
||
checkboxes[i].checked = source.checked;
|
||
checkboxes[i].value = "false";
|
||
if (source.checked == true)
|
||
checkboxes[i].value = "true";
|
||
|
||
|
||
}
|
||
}
|
||
function selectAlltax(source) {
|
||
let checkboxes = document.getElementsByClassName('taxCh');
|
||
for (var i = 0, n = checkboxes.length; i < n; i++) {
|
||
checkboxes[i].checked = source.checked;
|
||
checkboxes[i].value = "false";
|
||
if (source.checked == true)
|
||
checkboxes[i].value = "true";
|
||
}
|
||
}
|
||
function selectAllInsurance(source) {
|
||
let checkboxes = document.getElementsByClassName('insuranceCh');
|
||
for (var i = 0, n = checkboxes.length; i < n; i++) {
|
||
checkboxes[i].checked = source.checked;
|
||
checkboxes[i].value = "false";
|
||
if (source.checked == true)
|
||
checkboxes[i].value = "true";
|
||
}
|
||
}
|
||
|
||
function activeAll(source) {
|
||
let checkboxes = document.getElementsByName('activeCh');
|
||
for (var i = 0, n = checkboxes.length; i < n; i++) {
|
||
checkboxes[i].checked = source.checked;
|
||
checkboxes[i].value = "false";
|
||
if (source.checked == true)
|
||
checkboxes[i].value = "true";
|
||
}
|
||
}
|
||
function dateValidcheck(inputField1) {
|
||
|
||
let persianNumbers = [/۰/g, /۱/g, /۲/g, /۳/g, /۴/g, /۵/g, /۶/g, /۷/g, /۸/g, /۹/g],
|
||
arabicNumbers = [/٠/g, /١/g, /٢/g, /٣/g, /٤/g, /٥/g, /٦/g, /٧/g, /٨/g, /٩/g],
|
||
fixNumbers = function(str) {
|
||
if (typeof str === 'string') {
|
||
for (let i = 0; i < 10; i++) {
|
||
str = str.replace(persianNumbers[i], i).replace(arabicNumbers[i], i);
|
||
}
|
||
}
|
||
return str;
|
||
};
|
||
let getdate = inputField1.value;
|
||
|
||
let m1, m2;
|
||
let y1, y2, y3, y4;
|
||
let d1, d2;
|
||
let s1, s2;
|
||
for (var i = 0; i < getdate.length; i++) {
|
||
if (i === 0) {
|
||
y1 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 1) {
|
||
y2 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 2) {
|
||
y3 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 3) {
|
||
y4 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 4) {
|
||
s1 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 5) {
|
||
m1 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 6) {
|
||
m2 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 7) {
|
||
s2 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 8) {
|
||
d1 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 9) {
|
||
d2 = fixNumbers(getdate[i]);
|
||
}
|
||
|
||
}
|
||
let yRes = y1 + y2 + y3 + y4;
|
||
let year = parseInt(yRes);
|
||
let mRes = m1 + m2;
|
||
let month = parseInt(mRes);
|
||
let dRes = d1 + d2;
|
||
let day = parseInt(dRes);
|
||
let fixResult = yRes + s1 + mRes + s2 + dRes;
|
||
let test1 = checkEnValid(inputField1.value);
|
||
|
||
let isValid = /^([1][3-4][0-9][0-9][/])([0][1-9]|[1][0-2])([/])([0][1-9]|[1-2][0-9]|[3][0-1])$/.test(fixResult);
|
||
|
||
|
||
if (isValid && test1) {
|
||
inputField1.style.backgroundColor = '#a6e9a6';
|
||
start1valid = true;
|
||
|
||
|
||
} else {
|
||
|
||
if (inputField1.value != "") {
|
||
inputField1.style.backgroundColor = '#f94c4c';
|
||
$.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', "لطفا تاریخ را بصورت صحیح وارد کنید");
|
||
start1valid = false;
|
||
}
|
||
|
||
|
||
}
|
||
return start1valid;
|
||
|
||
}
|
||
|
||
function checkEnValid(fixDate1) {
|
||
|
||
let persianNumbers = [/۰/g, /۱/g, /۲/g, /۳/g, /۴/g, /۵/g, /۶/g, /۷/g, /۸/g, /۹/g],
|
||
arabicNumbers = [/٠/g, /١/g, /٢/g, /٣/g, /٤/g, /٥/g, /٦/g, /٧/g, /٨/g, /٩/g],
|
||
fixNumbers = function(str) {
|
||
if (typeof str === 'string') {
|
||
for (let i = 0; i < 10; i++) {
|
||
str = str.replace(persianNumbers[i], i).replace(arabicNumbers[i], i);
|
||
}
|
||
}
|
||
return str;
|
||
};
|
||
let getdate = fixDate1;
|
||
|
||
let m1, m2;
|
||
let y1, y2, y3, y4;
|
||
let d1, d2;
|
||
for (let i = 0; i < getdate.length; i++) {
|
||
if (i === 0) {
|
||
y1 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 1) {
|
||
y2 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 2) {
|
||
y3 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 3) {
|
||
y4 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 5) {
|
||
m1 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 6) {
|
||
m2 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 8) {
|
||
d1 = fixNumbers(getdate[i]);
|
||
}
|
||
if (i === 9) {
|
||
d2 = fixNumbers(getdate[i]);
|
||
}
|
||
|
||
}
|
||
let yRes = y1 + y2 + y3 + y4;
|
||
let year = parseInt(yRes);
|
||
let mRes = m1 + m2;
|
||
let month = parseInt(mRes);
|
||
let dRes = d1 + d2;
|
||
let day = parseInt(dRes);
|
||
let kabiseh = false;
|
||
if (month <= 6 && day > 31) {
|
||
return false;
|
||
} else if (month > 6 && month < 12 && day > 30) {
|
||
return false;
|
||
} else if (month === 12) {
|
||
|
||
switch (year) {
|
||
case 1346:
|
||
kabiseh = true;
|
||
break;
|
||
case 1350:
|
||
kabiseh = true;
|
||
break;
|
||
case 1354:
|
||
kabiseh = true;
|
||
break;
|
||
case 1358:
|
||
kabiseh = true;
|
||
break;
|
||
case 1362:
|
||
kabiseh = true;
|
||
break;
|
||
case 1366:
|
||
kabiseh = true;
|
||
break;
|
||
case 1370:
|
||
kabiseh = true;
|
||
break;
|
||
case 1375:
|
||
kabiseh = true;
|
||
break;
|
||
case 1379:
|
||
kabiseh = true;
|
||
break;
|
||
case 1383:
|
||
kabiseh = true;
|
||
break;
|
||
case 1387:
|
||
kabiseh = true;
|
||
break;
|
||
case 1391:
|
||
kabiseh = true;
|
||
break;
|
||
case 1395:
|
||
kabiseh = true;
|
||
break;
|
||
case 1399:
|
||
kabiseh = true;
|
||
break;
|
||
case 1403:
|
||
kabiseh = true;
|
||
break;
|
||
case 1408:
|
||
kabiseh = true;
|
||
break;
|
||
case 1412:
|
||
kabiseh = true;
|
||
break;
|
||
case 1416:
|
||
kabiseh = true;
|
||
break;
|
||
case 1420:
|
||
kabiseh = true;
|
||
break;
|
||
case 1424:
|
||
kabiseh = true;
|
||
break;
|
||
case 1428:
|
||
kabiseh = true;
|
||
break;
|
||
case 1432:
|
||
kabiseh = true;
|
||
break;
|
||
case 1436:
|
||
kabiseh = true;
|
||
break;
|
||
case 1441:
|
||
kabiseh = true;
|
||
break;
|
||
case 1445:
|
||
kabiseh = true;
|
||
break;
|
||
default:
|
||
kabiseh = false;
|
||
|
||
}
|
||
if (kabiseh == true && day > 30) {
|
||
return false;
|
||
} else if (kabiseh == false && day > 29) {
|
||
return false;
|
||
} else {
|
||
return true;
|
||
}
|
||
} else {
|
||
return true;
|
||
}
|
||
|
||
|
||
}
|
||
</script>
|