MoK:
Distanz ist jetzt wie im FaC
This commit is contained in:
@@ -679,7 +679,7 @@
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<Grid>
|
||||
<dxg:GridControl MouseDoubleClick="grid_possibleDiagnosis_MouseDoubleClick" Name="grid_possibleDiagnosis">
|
||||
<dxg:GridControl MouseDoubleClick="grid_possibleDiagnosis_MouseDoubleClick" Name="grid_possibleDiagnosis" >
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn FieldName="Key" FixedWidth="True" Width="70" AllowResizing="True"
|
||||
AutoFilterCondition="Contains" Header="ICD 10" />
|
||||
|
||||
@@ -110,7 +110,11 @@ namespace BeWoPlanerMobil.Controllers
|
||||
if (customerOid > 0 && Model.Customers.Any(customer => customer.CustomerOid.Equals(customerOid.Value)))
|
||||
{
|
||||
Model.SelectedCustomerOid = customerOid;
|
||||
Model.SelectedCustomer = CustomerService.LoadCustomer(customerOid.Value);
|
||||
|
||||
Model.FolderTree = OperationsService.GetFolderTree(TableID.Customer, customerOid.Value);
|
||||
var customer = CustomerService.LoadCustomer(customerOid.Value);
|
||||
Model.ICD10Diagnosen = OperationsService.GetDiagiosisStringsForICD10Codes(customer.ICD10DiagnosisCodes);
|
||||
Model.SelectedCustomer = customer;
|
||||
}
|
||||
|
||||
return RedirectToActionPermanent("Customer");
|
||||
@@ -136,7 +140,14 @@ namespace BeWoPlanerMobil.Controllers
|
||||
{
|
||||
Model.FolderTree = OperationsService.GetFolderTree(TableID.Customer, selectedCustomerOid);
|
||||
Model.SelectedCustomerOid = selectedCustomerOid == -1 ? (long?)null : selectedCustomerOid;
|
||||
Model.SelectedCustomer = selectedCustomerOid != -1 ? CustomerService.LoadCustomer(selectedCustomerOid) : null;
|
||||
var customer = selectedCustomerOid != -1 ? CustomerService.LoadCustomer(selectedCustomerOid) : null;
|
||||
|
||||
if(!(customer is null))
|
||||
{
|
||||
Model.ICD10Diagnosen = OperationsService.GetDiagiosisStringsForICD10Codes(customer.ICD10DiagnosisCodes);
|
||||
}
|
||||
|
||||
Model.SelectedCustomer = customer;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -910,11 +910,11 @@ namespace BeWoPlanerMobil.Controllers
|
||||
}
|
||||
|
||||
var distanz = collection[FormCollectionConstants.DistanceKey];
|
||||
var distanceInMeters = 0;
|
||||
decimal? distanceInMeters = null;
|
||||
|
||||
if(!string.IsNullOrEmpty(distanz))
|
||||
{
|
||||
if(int.TryParse(distanz, out var parsedDistance))
|
||||
if(decimal.TryParse(distanz, out var parsedDistance))
|
||||
{
|
||||
distanceInMeters = parsedDistance;
|
||||
}
|
||||
@@ -991,7 +991,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
Model.NewServiceRecord.Start = zeitenFeld[0];
|
||||
Model.NewServiceRecord.End = zeitenFeld[1];
|
||||
|
||||
Model.NewServiceRecord.DistanceInMeter = distanceInMeters;
|
||||
Model.NewServiceRecord.DistanceInMeterDecimal = distanceInMeters;
|
||||
|
||||
if(Model.Employee.EmployeeOid.HasValue)
|
||||
{
|
||||
@@ -1338,7 +1338,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
item.End = Model.NewServiceRecord.End;
|
||||
item.Start = Model.NewServiceRecord.Start;
|
||||
item.RoundedDuration = roundedDuration;
|
||||
item.DistanceInMeter = Model.NewServiceRecord.DistanceInMeter;
|
||||
item.DistanceInMeterDecimal = Model.NewServiceRecord.DistanceInMeterDecimal;
|
||||
item.ServiceDescription = Model.NewServiceRecord.ServiceDescription;
|
||||
|
||||
item.ServiceRecordFormat = Model.NewServiceRecord.ServiceRecordFormat;
|
||||
@@ -2948,11 +2948,11 @@ namespace BeWoPlanerMobil.Controllers
|
||||
}
|
||||
|
||||
var distanz = formCollection[FormCollectionConstants.DistanceKey];
|
||||
var distanceInMeters = 0;
|
||||
decimal? distanceInMeters = null;
|
||||
|
||||
if(!string.IsNullOrEmpty(distanz))
|
||||
{
|
||||
if(int.TryParse(distanz, out var parsedDistance))
|
||||
if(decimal.TryParse(distanz, out var parsedDistance))
|
||||
{
|
||||
distanceInMeters = parsedDistance;
|
||||
}
|
||||
@@ -3024,7 +3024,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
Model.NewServiceRecord.Start = zeitenFeld[0];
|
||||
Model.NewServiceRecord.End = zeitenFeld[1];
|
||||
|
||||
Model.NewServiceRecord.DistanceInMeter = distanceInMeters;
|
||||
Model.NewServiceRecord.DistanceInMeterDecimal = distanceInMeters;
|
||||
|
||||
if(Model.Employee.EmployeeOid.HasValue)
|
||||
{
|
||||
@@ -3420,11 +3420,11 @@ namespace BeWoPlanerMobil.Controllers
|
||||
}
|
||||
|
||||
var distanz = formCollection[FormCollectionConstants.DistanceKey];
|
||||
var distanceInMeters = 0;
|
||||
decimal? distanceInMeters = null;
|
||||
|
||||
if(!string.IsNullOrEmpty(distanz))
|
||||
{
|
||||
if(int.TryParse(distanz, out var parsedDistance))
|
||||
if(decimal.TryParse(distanz, out var parsedDistance))
|
||||
{
|
||||
distanceInMeters = parsedDistance;
|
||||
}
|
||||
@@ -3509,7 +3509,7 @@ namespace BeWoPlanerMobil.Controllers
|
||||
IP = Request.UserHostAddress,
|
||||
Start = zeitenFeld[0],
|
||||
End = zeitenFeld[1],
|
||||
DistanceInMeter = distanceInMeters,
|
||||
DistanceInMeterDecimal = distanceInMeters,
|
||||
RoundedDuration = roundedDuration,
|
||||
SupportConcept = sc2cbRel.SupportConcept,
|
||||
CostBearer2SupportConceptOid = sc2cbRel.CostBearer2SupportConceptOid,
|
||||
|
||||
@@ -64,8 +64,6 @@ namespace BeWoPlanerMobil.Controllers
|
||||
// Hat man weder das Recht "HasRightMitarbeiterstundenkontoViewAll" noch "HasRightMitarbeiterstundenkontoViewTeams", sieht man die Teams gar nicht.
|
||||
// Hat man das Recht "HasRightMitarbeiterstundenkontoViewTeams", aber nicht das Recht "HasRightMitarbeiterstundenkontoViewAll", sieht man nur die Teams, deren Teamleiter man ist.
|
||||
|
||||
var test = EmployeeService.FindLeadingCompactTeamsOfEmployee(MobileSessionFacade.LoggedInCompactEmployee.EmployeeOid);
|
||||
|
||||
Model.AllTeams = AbstractModel.HasRightMitarbeiterstundenkontoViewAll
|
||||
? EmployeeService.GetAllActiveCompactTeamsForEmployee(MobileSessionFacade.LoggedInEmployee.EmployeeOid)
|
||||
: EmployeeService.FindLeadingCompactTeamsOfEmployee(MobileSessionFacade.LoggedInCompactEmployee.EmployeeOid);
|
||||
@@ -75,12 +73,6 @@ namespace BeWoPlanerMobil.Controllers
|
||||
Model.SelectedEmployeeOid = MobileSessionFacade.LoggedInCompactEmployee.EmployeeOid;
|
||||
}
|
||||
|
||||
// ToDo: Hat man das Recht "Nur Team" nicht, kann man nur die Teams sehen, bei denen man auch Leiter ist.
|
||||
if(!AbstractModel.HasRightMitarbeiterstundenkontoViewTeams)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
Model.ReportTypes = new List<SelectListItem>();
|
||||
|
||||
if(AbstractModel.HasRightToViewReports)
|
||||
|
||||
@@ -162,5 +162,7 @@ namespace BeWoPlanerMobil.Models
|
||||
return MobileSessionFacade.Tenant != "3010479871" && CheckForAtLeastOneRight(new[] { UserRightType.Mitarbeiterstundenkonto_ViewAll, UserRightType.Mitarbeiterstundenkonto_ViewTeams, UserRightType.Mitarbeiterstundenkonto_ViewSelf });
|
||||
}
|
||||
}
|
||||
|
||||
public static bool HasRightToViewDiagnosen => CheckRight(UserRightType.Customer_ViewDiagnosis);
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,9 @@ namespace BeWoPlanerMobil.Models
|
||||
}
|
||||
}
|
||||
|
||||
public JsonCustomer SelectedJsonCustomer => SelectedCustomer != null ? new JsonCustomer(SelectedCustomer, FolderTree) : null;
|
||||
public Dictionary<string, string> ICD10Diagnosen { get; set; }
|
||||
|
||||
public JsonCustomer SelectedJsonCustomer => SelectedCustomer != null ? new JsonCustomer(SelectedCustomer, FolderTree, ICD10Diagnosen) : null;
|
||||
|
||||
[Display(Name = "Filter")]
|
||||
public CustomerFilterEnum SelectedCustomerFilter { get; set; }
|
||||
|
||||
@@ -53,8 +53,11 @@ namespace BeWoPlanerMobil.Util
|
||||
|
||||
public Sex? CustomerSex { get; set; }
|
||||
|
||||
public JsonCustomer(CustomerDC customer, List<BeWoFolderDC> folderTree)
|
||||
public Dictionary<string, string> ICD10Diagnosen { get; set; } = new Dictionary<string, string>();
|
||||
|
||||
public JsonCustomer(CustomerDC customer, List<BeWoFolderDC> folderTree, Dictionary<string, string> icd10Diagnosen)
|
||||
{
|
||||
ICD10Diagnosen = icd10Diagnosen;
|
||||
Vorname = customer.FirstName;
|
||||
Nachname = customer.LastName;
|
||||
Geburtstag = customer.DateOfBirth?.ToShortDateString() ?? string.Empty;
|
||||
|
||||
@@ -344,7 +344,8 @@ namespace BeWoPlanerMobil.Util
|
||||
IsCreatedInMobileClient = true,
|
||||
WohnheimbuchungsOid = m.WohnheimbuchungsOid,
|
||||
DurationInStunden = m.DurationInStunden,
|
||||
ServiceRecordFormat = m.ServiceRecordFormat
|
||||
ServiceRecordFormat = m.ServiceRecordFormat,
|
||||
DistanceInMeterDecimal = m.DistanceInMeterDecimal
|
||||
};
|
||||
|
||||
return clone;
|
||||
|
||||
@@ -652,8 +652,8 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Medikamentenliste TODO: kollabierbar machen -->
|
||||
@if(Html.IsInDebugMode() && AbstractModel.IsAllowedToSeeMedikamentenliste && Html.IsInDebugMode())
|
||||
<!-- Medikamentenliste TODO: ÜBERARBEITEN -->
|
||||
@if(Html.IsInDebugMode() && AbstractModel.IsAllowedToSeeMedikamentenliste)
|
||||
{
|
||||
<div class="col-12 my-3">
|
||||
<div class="card w-100">
|
||||
@@ -673,7 +673,7 @@
|
||||
<div class="d-inline-flex">
|
||||
<i class="fas fa-chevron-down h-100 text-primary" id="chevron-customer-report"></i>
|
||||
</div>
|
||||
<div class="p2 d-inline-flex text-primary h-100">
|
||||
<div class="d-inline-flex text-primary h-100">
|
||||
<button type="button" class="btn btn-link">
|
||||
Medikamentenliste
|
||||
</button>
|
||||
@@ -691,7 +691,46 @@
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
|
||||
@if(Html.IsInDebugMode() && AbstractModel.HasRightToViewDiagnosen)
|
||||
{
|
||||
<div class="col-12 my-3">
|
||||
<div class="card w-100 h-100">
|
||||
<div class="card-header" onclick="cardHeaderClick('#chevron-customer-diagnosen', '#collapse-customer-diagnosen')">
|
||||
<div class="d-inline-flex">
|
||||
<i class="fas fa-chevron-down h-100 text-bewo-customer-card-header" id="chevron-customer-diagnosen"></i>
|
||||
</div>
|
||||
<div class="d-inline d-inline-flex text-bewo-customer-card-header h-100">
|
||||
<button type="button" class="btn btn-link text-bewo-customer-card-header">
|
||||
Diagnosen
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="collapse" id="collapse-customer-diagnosen">
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
@foreach(var code2Text in Model.SelectedJsonCustomer.ICD10Diagnosen)
|
||||
{
|
||||
<div class="row">
|
||||
<div class="col-auto">
|
||||
@code2Text.Key
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
@code2Text.Value
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
<!-- TODO: Hier weitermachen! -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
@@ -367,7 +367,7 @@
|
||||
}
|
||||
|
||||
function setInputFilter(durationId, distanceId, hoursMinutesDropdownBtnId) {
|
||||
$("#" + durationId + ", #" + distanceId).inputFilter(function(value) {
|
||||
$("#" + durationId).inputFilter(function (value) {
|
||||
var result = /^\d*$/;
|
||||
var dropdownButton = $("#" + hoursMinutesDropdownBtnId);
|
||||
|
||||
@@ -377,6 +377,10 @@
|
||||
|
||||
return result.test(value);
|
||||
});
|
||||
|
||||
$("#" + distanceId).inputFilter(function(value) {
|
||||
return /^-?\d*[.,]?\d*$/.test(value);
|
||||
});
|
||||
}
|
||||
|
||||
(function($) {
|
||||
|
||||
@@ -475,7 +475,6 @@
|
||||
</div>
|
||||
|
||||
<!-- Zeitraum wählen: [Von-Datum] bis [Bis-Datum] erster des Monats bis aktuelles Datum -->
|
||||
|
||||
var defaultStartDate = DateTime.Now.GetFirstOfMonth().ToShortDateString();
|
||||
var defaultEndDate = DateTime.Today.ToShortDateString();
|
||||
<div class="form-row" id="custom-interval-container">
|
||||
@@ -807,14 +806,14 @@
|
||||
@durationStr
|
||||
</div>
|
||||
</div>
|
||||
@if(Model.ShowDistanceField && serviceRecord.DistanceInMeter != null && serviceRecord.DistanceInMeter.Value > 0)
|
||||
@if(Model.ShowDistanceField && serviceRecord.DistanceInMeterDecimal != null && serviceRecord.DistanceInMeterDecimal.Value > 0)
|
||||
{
|
||||
<div class="row">
|
||||
<div class="col text-secondary">
|
||||
Gefahrene Kilometer:
|
||||
</div>
|
||||
<div class="col">
|
||||
@serviceRecord.DistanceInMeter.ToString()
|
||||
@string.Format("{0:0.##}", serviceRecord.DistanceInMeterDecimal)
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
@@ -1299,5 +1299,9 @@ namespace BeWo.Service.ServiceContracts
|
||||
[FaultContract(typeof(BeWoFault))]
|
||||
[OperationContract]
|
||||
SchedulerAppointmentDC GetRootAppointment(string recurrenceId);
|
||||
|
||||
[FaultContract(typeof(BeWoFault))]
|
||||
[OperationContract]
|
||||
Dictionary<string, string> GetDiagiosisStringsForICD10Codes(List<string> icd10Codes);
|
||||
}
|
||||
}
|
||||
@@ -7866,5 +7866,24 @@ namespace BeWo.Service.ServiceImplementations
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
|
||||
public Dictionary<string, string> GetDiagiosisStringsForICD10Codes(List<string> icd10Codes)
|
||||
{
|
||||
try
|
||||
{
|
||||
var result = new Dictionary<string, string>();
|
||||
|
||||
foreach(var code in icd10Codes)
|
||||
{
|
||||
result.AddIfNotIn(new KeyValuePair<string, string>(code, ICD10DAO.GetDiagnosisForCode(code)));
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
throw Utils.CreateBeWoFaultException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user