mirror of
https://github.com/OpenXE-org/OpenXE.git
synced 2025-03-05 22:49:48 +01:00
Produktion minidetail
This commit is contained in:
parent
ba31fc62cf
commit
7c468dbced
@ -1,281 +1,29 @@
|
|||||||
<style>
|
[MESSAGE]
|
||||||
|
<div class="col-xs-14 col-md-6 col-md-height">
|
||||||
|
<div class="inside inside-full-height">
|
||||||
.auftraginfo_cell {
|
<legend [ARTIKEL_MENGE_VISIBLE]>{|Produktionsfortschritt|}</legend>
|
||||||
color: #636363;border: 1px solid #ccc;padding: 5px;
|
<table width="100%" border="0">
|
||||||
}
|
<tr [ARTIKEL_MENGE_VISIBLE]>
|
||||||
|
<td>{|Geplant|}:</td>
|
||||||
.auftrag_cell {
|
<td>[MENGE_GEPLANT]</td>
|
||||||
color: #636363;border: 1px solid #fff;padding: 0px; margin:0px;
|
<td>{|Offen:|}</td>
|
||||||
}
|
<td>[MENGE_OFFEN]</td>
|
||||||
|
</tr>
|
||||||
</style>
|
<tr [ARTIKEL_MENGE_VISIBLE]>
|
||||||
|
<td>{|Produziert|}:</td>
|
||||||
|
<td>[MENGE_PRODUZIERT]</td>
|
||||||
<table width="100%" border="0" cellpadding="10" cellspacing="5">
|
<td>{|Reserviert:|}</td>
|
||||||
<tr valign="top">
|
<td>[MENGE_RESERVIERT]</td>
|
||||||
<td width="">
|
</tr>
|
||||||
|
<tr [ARTIKEL_MENGE_VISIBLE]>
|
||||||
<br>
|
<td>{|Erfolgreich|}:</td>
|
||||||
<center>[MENU]</center>
|
<td>[MENGEERFOLGREICH]</td>
|
||||||
<br>
|
<td>{|Produzierbar:|}</td>
|
||||||
|
<td>[MENGE_PRODUZIERBAR]</td>
|
||||||
<h2 class="greyh2">Artikel für Produktion</h2>
|
</tr>
|
||||||
<div style="padding:10px;">[ARTIKEL]</div>
|
</tr>
|
||||||
[MINIDETAILNACHARTIKEL]
|
<td>{|Ausschuss|}:</td>
|
||||||
<h2 class="greyh2">Externe Produktionsschritte</h2>
|
<td>[MENGEAUSSCHUSS]</td>
|
||||||
<div style="padding:10px;" id="[RAND]bestellungen">[BESTELLUNGEN]</div>
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
<h2 class="greyh2">Zeiterfassung</h2>
|
|
||||||
<div style="padding:10px;">[ZEITERFASSUNG]</div>
|
|
||||||
<h2 class="greyh2">Arbeitsschritte</h2>
|
|
||||||
<div style="padding:10px;">[ARBEITSSCHRITTE]</div>
|
|
||||||
<h2 class="greyh2">Abschlussbemerkung</h2>
|
|
||||||
<div style="padding:10px;">[ABSCHLUSSBEMERKUNG]</div>
|
|
||||||
<div style="padding:10px;">
|
|
||||||
<table width="100%>">
|
|
||||||
<tr>
|
|
||||||
<td>Zeit Geplant in Stunden</td>
|
|
||||||
<td>Zeit Tatsächlich in Stunden</td>
|
|
||||||
<td>Arbeitsplatzgruppe Kosten Geplant in EUR</td>
|
|
||||||
<td>Arbeitsplatzgruppe Kosten Tatsächlich in EUR</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="greybox" width="25%">[ZEITGEPLANT]</td>
|
|
||||||
<td class="greybox" width="25%">[ZEITGEBUCHT]</td>
|
|
||||||
<td class="greybox" width="25%">[KOSTENGEPLANT]</td>
|
|
||||||
<td class="greybox" width="25%">[KOSTENGEBUCHT]</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td width="450">
|
|
||||||
<div style="overflow:auto; min-width:450px; max-height:550px;">
|
|
||||||
<div style="background-color:white">
|
|
||||||
|
|
||||||
<h2 class="greyh2">Produktionszentrum</h2>
|
|
||||||
<div style="padding:10px;">
|
|
||||||
<center>
|
|
||||||
[BUTTONS]
|
|
||||||
</center>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div style="background-color:white">
|
|
||||||
<h2 class="greyh2">Protokoll</h2>
|
|
||||||
<div style="padding:10px;">
|
|
||||||
[PROTOKOLL]
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--
|
|
||||||
<h2 class="greyh2">Datei Anhang</h2>
|
|
||||||
<div style="padding:10px;">[DATEIANHANGLISTE]</div>
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!--
|
|
||||||
<h2 class="greyh2">Arbeitsschritte</h2>
|
|
||||||
<div style="padding:10px">
|
|
||||||
<table width="100%>">
|
|
||||||
<tr><td>Fertigstellung in %</td><td>Anzahl Schritte</td></tr>
|
|
||||||
<tr>
|
|
||||||
<td class="greybox" width="25%">[DECKUNGSBEITRAG]</td>
|
|
||||||
<td class="greybox" width="25%">[DBPROZENT]</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
-->
|
|
||||||
|
|
||||||
|
|
||||||
<h2 class="greyh2">Abschluss Bericht</h2>
|
|
||||||
<div style="padding:10px;">
|
|
||||||
<table width="100%>">
|
|
||||||
<tr>
|
|
||||||
<td>Menge Geplant</td>
|
|
||||||
<td>Menge Ausschuss</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="greybox" width="25%">[MENGEGEPLANT]</td>
|
|
||||||
<td class="greybox" width="25%">[MENGEAUSSCHUSS]</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 class="greyh2">Deckungsbeitrag</h2>
|
|
||||||
<div style="padding:10px">
|
|
||||||
<table width="100%>">
|
|
||||||
<tr>
|
|
||||||
<td>Deckungsbeitrag in EUR</td>
|
|
||||||
<td>DB in %</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="greybox" width="25%">[DECKUNGSBEITRAG]</td>
|
|
||||||
<td class="greybox" width="25%">[DBPROZENT]</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<div id="[RAND]createdocdialog">
|
|
||||||
<form id="[RAND]createdocfrom">
|
|
||||||
<fieldset><legend>{|Artikel|}</legend>
|
|
||||||
<div id="[RAND]createdocdialoginfo"></div>
|
|
||||||
|
|
||||||
<input type="hidden" name="[RAND]createdocsid" id="[RAND]createdocsid" />
|
|
||||||
<table class="mkTable" width="100%" id="[RAND]createdocdialogtable">
|
|
||||||
</table>
|
</table>
|
||||||
</fieldset>
|
|
||||||
<fieldset><legend>{|Bestellung bei externen Produzent|}</legend>
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<td nowrap>
|
|
||||||
<input type="radio" id="[RAND]createdoctypecreatebestellung" name="[RAND]createdoctypebestellungtyp" value="createbestellung" checked="checked" />
|
|
||||||
<label for="[RAND]createdoctypecreatebestellung">{|neue Bestellung anlegen|}</label>
|
|
||||||
<label for="[RAND]createdocadresse">{|bei Lieferant|}:</label>
|
|
||||||
</td><td nowrap>
|
|
||||||
<input type="text" id="[RAND]createdocadresse" name="[RAND]createdocadresse" size="30" />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr class="[RAND]createdoctypetrlieferant"><td></td></tr>
|
|
||||||
<tr>
|
|
||||||
<td>
|
|
||||||
<input type="radio" id="[RAND]createdoctypeaddtobestellung" name="[RAND]createdoctypebestellungtyp" value="addtobestellung" /> <label for="[RAND]createdoctypeaddtobestellung">{|zu bestehender Bestellung anlegen|}:</label>
|
|
||||||
</td><td>
|
|
||||||
<input id="[RAND]createdocbestellung" name="[RAND]createdocbestellung" type="text" size="30"/>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr id="[RAND]createdoctrbestellungnoprice">
|
|
||||||
<td colspan="2">
|
|
||||||
<input type="checkbox" id="[RAND]createdoctypebestellungnoprice" name="[RAND]createdoctypebestellungnoprice" value="1" [NEWSUPPLIERSORDERHASPRICE]/>
|
|
||||||
<label for="[RAND]createdoctypebestellungnoprice">{|Preis für Hauptprodukt nicht setzen|}</label>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</fieldset>
|
|
||||||
<fieldset><legend>{|Beistellen des Materials|}</legend>
|
|
||||||
<table>
|
|
||||||
<tr id="[RAND]createdoctrtypebestellung">
|
|
||||||
<td colspan="2">
|
|
||||||
<input type="radio" id="[RAND]createdoctypebestellung" name="[RAND]createdoctype" value="bestellung" checked="checked" />
|
|
||||||
<label for="[RAND]createdoctypebestellung">{|Artikel sofort auslagern (basierend auf Bestellung)|}</label>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr id="[RAND]createdoctrtypeauftrag">
|
|
||||||
<td colspan="2">
|
|
||||||
<input type="radio" id="[RAND]createdoctypeauftrag" name="[RAND]createdoctype" value="auftrag" />
|
|
||||||
<label for="[RAND]createdoctypeauftrag">{|Auftrag für Beistellung anlegen|}</label>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</fieldset>
|
|
||||||
|
|
||||||
<fieldset><legend>{|Produktion|}</legend>
|
|
||||||
<table>
|
|
||||||
<tr id="[RAND]createdoctrprodstarten">
|
|
||||||
<td colspan="2">
|
|
||||||
<input type="checkbox" id="[RAND]createdocstartprod" name="[RAND]createdocstartprod" value="1" />
|
|
||||||
<label for="[RAND]createdocstartprod">{|Produktion starten|}</label>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</fieldset>
|
|
||||||
</form>
|
|
||||||
</div>
|
</div>
|
||||||
<script type="application/javascript">
|
|
||||||
[AUTOCOMPLETE]
|
|
||||||
$(document).ready(function() {
|
|
||||||
$('#[RAND]createdocdialog').dialog(
|
|
||||||
{
|
|
||||||
modal: true,
|
|
||||||
autoOpen: false,
|
|
||||||
minWidth: 940,
|
|
||||||
title: 'Auftrag/Bestellung anlegen',
|
|
||||||
buttons: {
|
|
||||||
'OK': function () {
|
|
||||||
var $addr = $('#[RAND]createdocadresse');
|
|
||||||
var $best = $('#[RAND]createdocbestellung');
|
|
||||||
var allempty = ($($addr).val()+'' === '') &&
|
|
||||||
($($best).length === 0 || $($best).val()+'' === '');
|
|
||||||
if(allempty) {
|
|
||||||
alert('Bitte eine Adresse oder Bestellung auswählen');
|
|
||||||
} else {
|
|
||||||
if($('#[RAND]createdoctypebestellung').prop('checked') || $('#[RAND]createdoctypeauftrag').prop('checked')) {
|
|
||||||
$.ajax({
|
|
||||||
url: 'index.php?module=produktion&action=edit&cmd=createdocument&id=[ID]&frame=[FRAMEPARAM]',
|
|
||||||
type: 'POST',
|
|
||||||
dataType: 'json',
|
|
||||||
data: $('#[RAND]createdocfrom').serialize(),
|
|
||||||
success: function (data) {
|
|
||||||
//$('#[RAND]createdocdialog').dialog('close');
|
|
||||||
$('#[RAND]createdocdialoginfo').html(typeof data.html != 'undefined'? data.html:'');
|
|
||||||
if(data.html != '') {
|
|
||||||
$('input.[RAND]createdoc').remove();
|
|
||||||
}
|
|
||||||
$('#[RAND]createdocdialog').dialog('close');
|
|
||||||
if(typeof data.deliverynoteinfo != 'undefined') {
|
|
||||||
$('#[RAND]bestellungen').html(data.deliverynoteinfo);
|
|
||||||
bindButton[RAND]();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
beforeSend: function () {
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
'ABBRECHEN': function () {
|
|
||||||
$(this).dialog('close');
|
|
||||||
}
|
|
||||||
},
|
|
||||||
close: function (event, ui) {
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
bindButton[RAND]();
|
|
||||||
});
|
|
||||||
|
|
||||||
function bindButton[RAND](){
|
|
||||||
$('input.[RAND]createdoc').on('click', function () {
|
|
||||||
$('#[RAND]createdocsid').val($(this).data('sid'));
|
|
||||||
|
|
||||||
$.ajax({
|
|
||||||
url: 'index.php?module=produktion&action=edit&cmd=gettableforcreatedocument&id=[ID]',
|
|
||||||
type: 'POST',
|
|
||||||
dataType: 'json',
|
|
||||||
data: {sid: $(this).data('sid'),rand:'[RAND]'},
|
|
||||||
success: function (data) {
|
|
||||||
$('#[RAND]createdocdialoginfo').html(typeof data.info != 'undefined'? data.info:'');
|
|
||||||
$('#[RAND]createdocdialogtable').html(data.html);
|
|
||||||
$('#[RAND]createdocadresse').val(data.adresse);
|
|
||||||
$('#[RAND]createdocbestellung').html(data.bestellung);
|
|
||||||
$('#[RAND]createdocauftrag').html(data.auftrag);
|
|
||||||
$('#[RAND]createdocdialog').dialog('open');
|
|
||||||
if(data.displayprodstart) {
|
|
||||||
$('#[RAND]createdoctrprodstarten').show();
|
|
||||||
} else {
|
|
||||||
$('#[RAND]createdoctrprodstarten').hide();
|
|
||||||
}
|
|
||||||
addClicklupe();
|
|
||||||
lupeclickevent();
|
|
||||||
|
|
||||||
// AutoComplete-Ergebnisboxen an Dialog-Fenster anhängen.
|
|
||||||
// Ansonsten wird AutoComplete-Ergebnis evtl. nicht sichtbar unterhalb des Dialog-Fensters angezeigt.
|
|
||||||
var $uiDialog = $('#[RAND]createdocdialog').first();
|
|
||||||
$($uiDialog).find('input.ui-autocomplete-input').autocomplete('option', 'appendTo', $uiDialog);
|
|
||||||
},
|
|
||||||
beforeSend: function () {
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
</script>
|
|
||||||
|
@ -18,6 +18,7 @@ class Produktion {
|
|||||||
$this->app->ActionHandler("create", "produktion_edit"); // This automatically adds a "New" button
|
$this->app->ActionHandler("create", "produktion_edit"); // This automatically adds a "New" button
|
||||||
$this->app->ActionHandler("edit", "produktion_edit");
|
$this->app->ActionHandler("edit", "produktion_edit");
|
||||||
$this->app->ActionHandler("copy", "produktion_copy");
|
$this->app->ActionHandler("copy", "produktion_copy");
|
||||||
|
$this->app->ActionHandler("minidetail", "produktion_minidetail");
|
||||||
$this->app->ActionHandler("delete", "produktion_delete");
|
$this->app->ActionHandler("delete", "produktion_delete");
|
||||||
$this->app->DefaultActionHandler("list");
|
$this->app->DefaultActionHandler("list");
|
||||||
$this->app->ActionHandlerListen($app);
|
$this->app->ActionHandlerListen($app);
|
||||||
@ -140,6 +141,9 @@ class Produktion {
|
|||||||
}
|
}
|
||||||
// END Toggle filters
|
// END Toggle filters
|
||||||
|
|
||||||
|
$moreinfo = true; // Allow drop down details
|
||||||
|
$menucol = 14; // For moredata
|
||||||
|
|
||||||
if ($where=='0') {
|
if ($where=='0') {
|
||||||
$where = " p.status IN ('freigegeben','gestartet')";
|
$where = " p.status IN ('freigegeben','gestartet')";
|
||||||
}
|
}
|
||||||
@ -1105,6 +1109,40 @@ class Produktion {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function produktion_minidetail($parsetarget='',$menu=true) {
|
||||||
|
|
||||||
|
$id = $this->app->Secure->GetGET('id');
|
||||||
|
|
||||||
|
$fortschritt = $this->MengeFortschritt($id, 0);
|
||||||
|
|
||||||
|
if (!empty($fortschritt)) {
|
||||||
|
$this->app->Tpl->Set('MENGE_GEPLANT',$fortschritt['geplant']);
|
||||||
|
$this->app->Tpl->Set('MENGE_PRODUZIERT',$fortschritt['produziert']);
|
||||||
|
$this->app->Tpl->Set('MENGE_OFFEN',$fortschritt['offen']);
|
||||||
|
$this->app->Tpl->Set('MENGE_RESERVIERT',$fortschritt['reserviert']);
|
||||||
|
$this->app->Tpl->Set('MENGE_PRODUZIERBAR',$fortschritt['produzierbar']);
|
||||||
|
$this->app->Tpl->Set('MENGEERFOLGREICH',$fortschritt['erfolgreich']);
|
||||||
|
$this->app->Tpl->Set('MENGEAUSSCHUSS',$fortschritt['ausschuss']);
|
||||||
|
|
||||||
|
if ($fortschritt['produziert'] > $fortschritt['geplant']) {
|
||||||
|
$msg .= "<div class=\"info\">Planmenge überschritten.</div>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->app->Tpl->Set("FORTSCHRITT",'immer');
|
||||||
|
|
||||||
|
if($parsetarget=='')
|
||||||
|
{
|
||||||
|
$this->app->Tpl->Output('produktion_minidetail.tpl');
|
||||||
|
$this->app->ExitXentral();
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->app->Tpl->Parse($parsetarget,'produktion_minidetail.tpl');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get all paramters from html form and save into $input
|
* Get all paramters from html form and save into $input
|
||||||
*/
|
*/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user