Merge remote-tracking branch 'origin/develop' into feature/scada-ui

This commit is contained in:
Paolo Possanzini
2019-01-22 13:06:10 +01:00
13 changed files with 115 additions and 28 deletions
+14 -10
View File
@@ -20,11 +20,13 @@ namespace Client.Utils
public static String CEF_LOCALES_PATH = BASE_PATH + "CEF\\Resources\\locales";
public static String CEF_EXCEPTIONLOG_PATH = BASE_PATH + "ExceptionLog";
public static String errorPageFile = BASE_PATH + "error.pg";
public static String JOB_OPENING_PATH = "C:\\CMS\\ACTIVE\\TMP\\clientTmpJob\\";
//Config Names
<<<<<<< HEAD
public static String JOB_OPENING_PATH = "C:\\CMS\\ACTIVE\\TMP\\clientTmpJob\\";
=======
public static String JOB_OPENING_PATH = "C:\\CMS\\Active\\TMP\\clientTmpJob\\";
>>>>>>> feature/Scada
//Config Names
public const string CONFIG_KEY = "Config";
public const string CLIENT_CONFIG_KEY = "Client";
public const string CONNECTION_CONFIG_KEY = "Connection";
@@ -74,12 +76,14 @@ namespace Client.Utils
public const string KEYB_EXE_NAME = "OSK.EXE";
public const string KEYB_PROC_NAME = "OSK";
public const string StartingPage = "index.html";
public const string StartingPage = "index.html";
public const string UPLOAD_PAGE = "/api/file_manager/upload";
public const string UPLOAD_ADD_QUEUE = "/api/file_manager/queue/add";
public const string UPLOAD_ADD_QUEUE = "/api/file_manager/queue/add";
public const string ConfigPage = "api/configuration/client";
public const string errorPageUrl = @"error://error/";
public static string[] JOB_EXTENSIONS = { ".job", ".zip" };
public const string errorPageUrl = @"error://error/";
public static string[] JOB_EXTENSIONS = { ".job", ".zip" };
}
}
public static String JOB_OPENING_PATH = "C:\\CMS\\ACTIVE\\TMP\\clientTmpJob\\";
Binary file not shown.
+4 -1
View File
@@ -43,7 +43,10 @@ namespace Step.Config
}
catch (Exception ex)
{
ExceptionManager.Manage(ERROR_LEVEL.FATAL, ex.Message);
var message = ex.Message;
if (ex.InnerException != null)
message += "\n"+ex.InnerException.Message;
ExceptionManager.Manage(ERROR_LEVEL.FATAL, message);
}
}
+1
View File
@@ -211,6 +211,7 @@
<modal_add_offset_tool_id>Id Offset</modal_add_offset_tool_id>
<modal_add_offset_tool_abbreviation>Offset %d</modal_add_offset_tool_abbreviation>
<tooling_families_label_add>Crea una nuova famiglia</tooling_families_label_add>
<load_depot_error_fit>Spazio troppo piccolo per caricare questo utensile</load_depot_error_fit>
<!-- Tool Manager - Modals Labels -->
<depot_action_loading_header>Caricamento Utensile</depot_action_loading_header>
+1
View File
@@ -210,6 +210,7 @@
<modal_add_offset_tool_id>Offset Id</modal_add_offset_tool_id>
<modal_add_offset_tool_abbreviation>Offset %d</modal_add_offset_tool_abbreviation>
<tooling_families_label_add>Create new Family</tooling_families_label_add>
<load_depot_error_fit>The space to load this tools is not enough</load_depot_error_fit>
<!-- Tool Manager - Modals Labels -->
<depot_action_loading_header>Loading Tool</depot_action_loading_header>
+18 -3
View File
@@ -629,12 +629,24 @@
color: @color-warm-grey;
}
input{
width: 288px;
width: 272px;
height: 44px;
border-radius: 2px;
box-shadow: inset 0 1px 3px 0 @color-black-50;
border: solid 1px @color-silver;
font-size: 18px;
line-height: 1.11;
color: @color-greyish-brown;
padding-left: 16px;
}
input::placeholder{
color: @color-silver;
}
input.mx-input{
height: 48px;
width: 288px;
box-shadow: 0 1px 2px @color-black-40;
color: @color-greyish-brown;
}
}
.filter-text{
@@ -661,6 +673,7 @@
button.btn{
padding: 0;
width: 48px;
font-size: 23px;
}
}
.multiselect{
@@ -683,7 +696,8 @@
font-size: 18px;
line-height: 1.11;
color: @color-greyish-brown;
cursor: pointer;
box-shadow: 0 1px 2px @color-black-40;
border-radius: 2px;
option{
display: none;
}
@@ -700,7 +714,8 @@
font-size: 18px;
line-height: 1.11;
color: @color-greyish-brown;
cursor: pointer;
box-shadow: 0 1px 2px @color-black-40;
border-radius: 2px;
option{
display: none;
}
@@ -894,6 +894,12 @@
color: @color-cyan-blue;
margin-top: 20px;
flex-flow: column;
.error{
margin-top: 74px;
color: #a10518;
font-size: 22px;
font-weight: bold;
}
.load-depot-box-select {
margin-top: 15px;
}
+34 -3
View File
@@ -845,6 +845,12 @@
margin-top: 20px;
flex-flow: column;
}
.modal.load-depot .load-depot-box .error {
margin-top: 74px;
color: #a10518;
font-size: 22px;
font-weight: bold;
}
.modal.load-depot .load-depot-box .load-depot-box-select {
margin-top: 15px;
}
@@ -4333,12 +4339,32 @@ footer .container button.big:before {
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-type input,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-date-range input,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-user input {
width: 288px;
width: 272px;
height: 44px;
border-radius: 2px;
box-shadow: inset 0 1px 3px 0 rgba(0, 0, 0, 0.5);
border: solid 1px #bbbcbc;
font-size: 18px;
line-height: 1.11;
color: #4b4b4b;
padding-left: 16px;
}
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-text input::placeholder,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-state input::placeholder,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-type input::placeholder,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-date-range input::placeholder,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-user input::placeholder {
color: #bbbcbc;
}
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-text input.mx-input,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-state input.mx-input,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-type input.mx-input,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-date-range input.mx-input,
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-user input.mx-input {
height: 48px;
width: 288px;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
color: #4b4b4b;
}
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .filter-text {
margin-left: 0;
@@ -4368,6 +4394,7 @@ footer .container button.big:before {
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .group-button button.btn {
padding: 0;
width: 48px;
font-size: 23px;
}
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .multiselect {
z-index: 100;
@@ -4384,11 +4411,13 @@ footer .container button.big:before {
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .selectBox select {
width: 100%;
padding: 8px;
cursor: pointer;
height: 49px;
font-size: 18px;
line-height: 1.11;
color: #4b4b4b;
cursor: pointer;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
border-radius: 2px;
}
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .selectBox select option {
display: none;
@@ -4400,11 +4429,13 @@ footer .container button.big:before {
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .selectBoxU select {
width: 100%;
padding: 8px;
cursor: pointer;
height: 49px;
font-size: 18px;
line-height: 1.11;
color: #4b4b4b;
cursor: pointer;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
border-radius: 2px;
}
.alarm-history-container .alarm-history-body .alarm-history-body-left .alarm-history-left-filter .selectBoxU select option {
display: none;
@@ -49,7 +49,8 @@ export default class AlarmHistory extends Vue {
user: 1,
title: "",
sources: [this.$options.filters.localize("alarm_history_filter_nc", "NC"),this.$options.filters.localize("alarm_history_filter_plc", "PLC")],
multiUser: [this.$options.filters.localize("alarm_history_users_not_user", "Nessun utente")]
multiUser: [this.$options.filters.localize("alarm_history_users_not_user", "Nessun utente")],
interval: [new Date(new Date().setDate(new Date().getDate() - 6)),new Date(new Date().setDate(new Date().getDate() + 1))]
};
//sources: Array<string> = [
@@ -11,7 +11,7 @@
<div class="alarm-history-left-filter">
<div class="filter-text">
<label>{{'alarm_history_body_filter' | localize("Filtro")}}</label>
<input type="text" v-model="filter.title">
<input type="text" v-model="filter.title" :placeholder="'alarm_history_body_filter_placeholder' | localize('Filtra per titolo allarme')">
</div>
<!--<div class="filter-type">
<label>{{'alarm_history_body_filter_type' | localize("Tipo")}}</label>
@@ -64,7 +64,7 @@
<label>{{'alarm_history_body_user' | localize("Utente")}}</label>
<div class="selectBoxU" @click="openSelectStateU()">
<select id="selectListCheckboxes">
<option><span v-for="(item, index) in filter.multiUser" :key="item" >{{'maintenance_state_'+item | localize(item)}}{{(index==filter.multiUser.length-1)?'':', '}}</span></option>
<option><span v-for="(item, index) in filter.multiUser" :key="item" >{{'alarm_history_users_'+item | localize(item)}}{{(index==filter.multiUser.length-1)?'':', '}}</span></option>
<div class="overSelect"></div>
</select>
</div>
@@ -3,6 +3,8 @@ import { ModalHelper, Modal } from "src/components/modals"
import { DepotService } from 'src/services/depotService';
import { Factory, MessageService } from 'src/_base';
import { inputBox } from "src/modules/base-components/cards";
import { store, AppModel } from "src/store";
import { ToolingGetters,toolingActions } from "src/store/tooling.store";
export default {
@@ -12,7 +14,9 @@ export default {
return {
toolSelected: {},
positionId: null,
magazineId: null
magazineId: null,
magInfo: null,
fitInPosition: true
}
},
computed: {
@@ -32,8 +36,13 @@ export default {
new DepotService().GetToolAvailable();
else
new DepotService().GetNcToolAvailable();
})
this.magazineId = ModalHelper.loadDepotModal.magazineId;
this.positionId = ModalHelper.loadDepotModal.positionId;
if(this.magazineId)
this.magInfo = (this.$store.state as AppModel).tooling.magazines.find(d => d.id == this.magazineId);
},
methods: {
close() {
@@ -50,10 +59,13 @@ export default {
this.magazineId = ModalHelper.loadDepotModal.magazineId;
this.positionId = ModalHelper.loadDepotModal.positionId;
new DepotService().AddToolToDepot(this.magazineId, this.positionId, { toolId: this.toolSelected.id }).then(response => {
Factory.Get(MessageService).deleteChannel("esc_pressed");
Factory.Get(MessageService).deleteChannel("esc_pressed");
if(this.magInfo)
toolingActions.updateBusyStatusPositions(store,this.magInfo.type,(this.$store.state as AppModel).depot.depot);
ModalHelper.HideModal();
});
console.log(this.toolSelected);
},
calcItemName(shank) {
if (shank.childsTools && shank.childsTools.length > 1)
@@ -73,5 +85,13 @@ export default {
else
return this.familyNameFromId(id);
}
},
watch: {
toolSelected: function (val) {
if(this.toolSelected && this.positionId){
toolingActions.setCanLoadTool(store, this.toolSelected.rightSize,this.toolSelected.leftSize,this.magInfo.type,(this.$store.state as AppModel).depot.depot);
this.fitInPosition = (this.$store.state as AppModel).tooling.magPosDepot[this.positionId -1].canLoadTool;
}
}
}
};
@@ -5,9 +5,11 @@
<label>{{'load_depot_lbl_select' | localize("Seleziona l'utensile da aggiungere")}}</label>
<div class="load-depot-box-select">
<input-box type="select" :title="'load_depot_select_title' | localize('Utensile')" v-model="toolSelected">
<option v-if="isSiemens()" v-for="s in availableMultiTools" :key="s.id" :value="s">{{s.name}} - {{'tooling_shank_abbreviation' | localize('S%d',s.id)}}</option>
<option v-if="isSiemens()" v-for="s in availableMultiTools" :key="s.id" :value="s">
{{s.name}} - {{'tooling_shank_abbreviation' | localize('S%d',s.id)}}
</option>
<option v-if="isSiemens() && isPositionCompatible(s)" v-for="s in availableTools" :key="s.id" :value="s">
{{s.familyName}} - {{'tooling_tool_abbreviation' | localize('T%d',s.id)}}
{{s.familyName}} - {{'tooling_tool_abbreviation' | localize('DP%d',s.childId)}}
</option>
<option v-if="!isSiemens() && isPositionCompatible(s)" v-for="s in availableTools" :key="s.id" :value="s">
@@ -17,11 +19,14 @@
<!-- <select>
</select> -->
</div>
<div v-if="toolSelected && !fitInPosition" class="error">
{{'load_depot_error_fit' | localize('Spazio troppo piccolo per caricare questo utensile')}}
</div>
</div>
<footer>
<div class="pull-right">
<button class="btn" @click="close()">{{'load_depot_btn_cancel' | localize("Annulla")}}</button>
<button class="btn btn-success" @click="save()" :disabled="!toolSelected.id">{{'load_depot_btn_confirm' | localize("Conferma")}}</button>
<button class="btn btn-success" @click="save()" :disabled="!toolSelected.id || !fitInPosition">{{'load_depot_btn_confirm' | localize("Conferma")}}</button>
</div>
</footer>
</modal>
@@ -9,7 +9,7 @@
<div class="title" :class="{'disabled':disabled}" v-if="physicalType==4"><img src="assets/icons/MagPos/Loader-Spindle.png" /></div>
<div class="title" :class="{'disabled':disabled}" v-if="physicalType==5"><img src="assets/icons/MagPos/Transfer.png" /></div>
<div class="title" :class="{'disabled':disabled}" v-if="physicalType==7"><img src="assets/icons/MagPos/Loader-User.png" /></div>
<button v-if="editable" :disabled="magposOccupied" class="btn" @click="onClick()"><i class="fa fa-plus"></i></button>
<button v-if="editable" :disabled="magposOccupied || disabled" class="btn" @click="onClick()"><i class="fa fa-plus"></i></button>
</header>
<section :class="{'disabled':disabled}">
<slot></slot>