aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.DAL.Remote/DB/RML.cs
blob: 17eb2ec6647f64d74e4f054c7cb7c8e4d5c96d5b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated from a template.
//
//     Manual changes to this file may cause unexpected behavior in your application.
//     Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace Tango.DAL.Remote.DB
{
    using System;
    using System.Collections.Generic;
    
    public partial class RML
    {
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
        public RML()
        {
            this.CATS = new HashSet<CAT>();
            this.COLOR_CATALOGS_ITEMS_RECIPES = new HashSet<COLOR_CATALOGS_ITEMS_RECIPES>();
            this.JOBS = new HashSet<JOB>();
            this.LIQUID_TYPES_RMLS = new HashSet<LIQUID_TYPES_RMLS>();
            this.PROCESS_PARAMETERS_TABLES_GROUPS = new HashSet<PROCESS_PARAMETERS_TABLES_GROUPS>();
            this.RMLS_SPOOLS = new HashSet<RMLS_SPOOLS>();
            this.SITES_RMLS = new HashSet<SITES_RMLS>();
        }
    
        public int ID { get; set; }
        public string GUID { get; set; }
        public System.DateTime LAST_UPDATED { get; set; }
        public string NAME { get; set; }
        public string DISPLAY_NAME { get; set; }
        public string MANUFACTURER { get; set; }
        public int CODE { get; set; }
        public double WHITE_POINT_L { get; set; }
        public double WHITE_POINT_A { get; set; }
        public double WHITE_POINT_B { get; set; }
        public string MEDIA_MATERIAL_GUID { get; set; }
        public string MEDIA_PURPOSE_GUID { get; set; }
        public string MEDIA_CONDITION_GUID { get; set; }
        public string LINEAR_MASS_DENSITY_UNIT_GUID { get; set; }
        public string FIBER_SHAPE_GUID { get; set; }
        public string FIBER_SYNTH_GUID { get; set; }
        public double FIBER_SIZE { get; set; }
        public int NUMBER_OF_FIBERS { get; set; }
        public int PLIES_PER_FIBER { get; set; }
        public int PLIES_PER_THREAD { get; set; }
        public bool TWISTED { get; set; }
        public bool AIR_ENTANGLEMENT { get; set; }
        public bool LUBRICANT { get; set; }
        public double TENSILE_STRENGTH { get; set; }
        public double ELONGATION_AT_BREAK_PERCENTAGE { get; set; }
        public double ESTIMATED_THREAD_DIAMETER { get; set; }
        public int RANK { get; set; }
        public byte[] THUMBNAIL { get; set; }
        public string CCT_GUID { get; set; }
        public int COLOR_CONVERSION_VERSION { get; set; }
        public int HEAD_TYPE { get; set; }
        public int QUALIFICATION_LEVEL { get; set; }
        public Nullable<System.DateTime> QUALIFICATION_DATE { get; set; }
        public string SPOOLS_CALIBRATIONS_STRING { get; set; }
        public int FEEDER_P { get; set; }
        public int FEEDER_I { get; set; }
        public int FEEDER_D { get; set; }
        public int PULLER_P { get; set; }
        public int PULLER_I { get; set; }
        public int PULLER_D { get; set; }
        public int WINDER_P { get; set; }
        public int WINDER_I { get; set; }
        public int WINDER_D { get; set; }
        public bool BYPASS_ROCKERS { get; set; }
    
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<CAT> CATS { get; set; }
        public virtual CCT CCT { get; set; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<COLOR_CATALOGS_ITEMS_RECIPES> COLOR_CATALOGS_ITEMS_RECIPES { get; set; }
        public virtual FIBER_SHAPES FIBER_SHAPES { get; set; }
        public virtual FIBER_SYNTHS FIBER_SYNTHS { get; set; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<JOB> JOBS { get; set; }
        public virtual LINEAR_MASS_DENSITY_UNITS LINEAR_MASS_DENSITY_UNITS { get; set; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<LIQUID_TYPES_RMLS> LIQUID_TYPES_RMLS { get; set; }
        public virtual MEDIA_CONDITIONS MEDIA_CONDITIONS { get; set; }
        public virtual MEDIA_MATERIALS MEDIA_MATERIALS { get; set; }
        public virtual MEDIA_PURPOSES MEDIA_PURPOSES { get; set; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<PROCESS_PARAMETERS_TABLES_GROUPS> PROCESS_PARAMETERS_TABLES_GROUPS { get; set; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<RMLS_SPOOLS> RMLS_SPOOLS { get; set; }
        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
        public virtual ICollection<SITES_RMLS> SITES_RMLS { get; set; }
    }
}
an>headzone5temp > MaxAllowedTemperature) status = ERROR_CODE__INVALID_PARAMETER; if (ProcessParams->headzone6temp > MaxAllowedTemperature) status = ERROR_CODE__INVALID_PARAMETER; if (status != 0) { status = ERROR_CODE__INVALID_PARAMETER; ReportWithPackageFilter(InitFilter,"HandleProcessParameters Temperature too high",__FILE__,(int)__LINE__,(int)status,RpWarning,(int)0,0); usnprintf(ProcessErrorMsg, 50, "ProcessParameters Temperature too high"); return status; } if (ProcessParams) { memcpy (&ProcessParametersKeep,ProcessParams,sizeof(ProcessParameters)); } if (saveData == true) { if ((ProcessParams->dryerzone1temp > 0.1)||(ProcessParams->headzone2temp > 0.1)||(ProcessParams->headzone3temp > 0.1)||(ProcessParams->headzone1temp > 0.1))//NOT turning off heaters { Bytes = sizeof(ProcessParameters); FileWrite(ProcessParams,Bytes,ProcessParamsConfigPath,BIOS_WAIT_FOREVER); MCU_E2PromProgramChunk(PROCESS_PARAMATERS_IN_EEPROM,4,&Bytes); MCU_E2PromProgramChunk(PROCESS_PARAMATERS_IN_EEPROM+4, Bytes, ProcessParams); /*EraseFlashSection(PROCESS_PARAMETERS_MAP_IN_FLASH); ReadAppAndProgram(PROCESS_PARAMETERS_MAP_IN_FLASH, 4,&Bytes); ReadAppAndProgram(PROCESS_PARAMETERS_MAP_IN_FLASH+4, Bytes, ProcessParams);*/ REPORT_MSG(Bytes,"Bytes write to flash"); } else { if (ProcessParams->has_headairflow == false) ProcessParams->headairflow = headairflow; if (ProcessParams->has_lblowerflow == false) ProcessParams->lblowerflow = headBlowersFlow[HEAD_FAN_LEFT]; if (ProcessParams->has_rblowerflow == false) ProcessParams->rblowerflow = headBlowersFlow[HEAD_FAN_RIGHT]; if (ProcessParams->has_feedertension == false) ProcessParams->feedertension = feedertension; if (ProcessParams->has_windertension == false) ProcessParams->windertension = windertension; if (ProcessParams->has_pullertension == false) ProcessParams->pullertension = pullertension; ReportWithPackageFilter(InitFilter,"HandleProcessParameters temp off blower on",__FILE__,(int)__LINE__,(int)ProcessParams->headairflow,RpWarning,(int)ProcessParametersKeep.headairflow,0); } } HeatersStopControlOnHeatersOff(ProcessParams); dyeingspeed = ProcessParams->dyeingspeed; dryerbufferlength = ProcessParams->dryerbufferlength; dryerbufferMeters = dryerbufferlength*0.76+0.9; dryerbufferCentimeters = dryerbufferlength*76+90; mininkuptake = ProcessParams->mininkuptake; feedertension = ProcessParams->feedertension; pullertension = ProcessParams->pullertension; windertension = ProcessParams->windertension; headairflow = ProcessParams->headairflow; dryerairflow = ProcessParams->dryerairflow; pressurebuildup = ProcessParams->pressurebuildup; dryerzone1temp = ProcessParams->dryerzone1temp; if (MachineReadyForHeating == false) { ReportWithPackageFilter(InitFilter,"HandleProcessParameters Init not ready",__FILE__,(int)__LINE__,(int)status,RpWarning,(int)GetMachineState(),0); status = ERROR_CODE__GENERAL_ERROR; usnprintf(ProcessErrorMsg, 50, "ProcessParameters Init not ready"); return status; } //Report("drier buffer length",__FILE__,(int)dryerbufferlength,(int)dryerbufferMeters*100,RpWarning,(int)dryerbufferCentimeters,0); ReportWithPackageFilter(InitFilter,"HandleProcessParameters Head type",__FILE__,(int)headairflow,(int)Head_Type,RpWarning,(int)dryerbufferCentimeters,0); WHS_Set_SetPoint_Q_value(headairflow); if (ProcessParams->mixertemp>1) status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__MixerHeater, true,ProcessParams->mixertemp); else status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__MixerHeater, false,ProcessParams->mixertemp); if (ProcessParams->headzone1temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1, true,ProcessParams->headzone1temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1, false,ProcessParams->headzone1temp); } if (ProcessParams->headzone2temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2, true,ProcessParams->headzone2temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2, false,ProcessParams->headzone2temp); } if (ProcessParams->headzone3temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3, true,ProcessParams->headzone3temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3, false,ProcessParams->headzone3temp); } if(Head_Type != HEAD_TYPE_ARC) { Trigger_HeaterWriting(); if (ProcessParams->headzone4temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4, true,ProcessParams->headzone4temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4, false,ProcessParams->headzone4temp); } if (ProcessParams->headzone5temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ5, true,ProcessParams->headzone5temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ5, false,ProcessParams->headzone5temp); } if (ProcessParams->headzone6temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ6, true,ProcessParams->headzone6temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ6, false,ProcessParams->headzone6temp); } } if (ProcessParams->dryerzone1temp>1) status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__DryerAirTemperature, true,ProcessParams->dryerzone1temp); else status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__DryerAirTemperature, false,ProcessParams->dryerzone1temp); if(Head_Type == HEAD_TYPE_FLAT) { if (ProcessParams->headzone7temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ7, true,ProcessParams->headzone7temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ7, false,ProcessParams->headzone7temp); } Trigger_HeaterWriting(); if (ProcessParams->headzone8temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ8, true,ProcessParams->headzone8temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ8, false,ProcessParams->headzone8temp); } if (ProcessParams->headzone9temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ9, true,ProcessParams->headzone9temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ9, false,ProcessParams->headzone9temp); } if (ProcessParams->headzone10temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ10, true,ProcessParams->headzone10temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ10, false,ProcessParams->headzone10temp); } Trigger_HeaterWriting(); if (ProcessParams->headzone11temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ11, true,ProcessParams->headzone11temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ11, false,ProcessParams->headzone11temp); } if (ProcessParams->headzone12temp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ12, true,ProcessParams->headzone12temp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ12, false,ProcessParams->headzone12temp); } } if(Head_Type == HEAD_TYPE_ARC) { Trigger_HeaterWriting(); if (ProcessParams->rblowertemp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadCoverHeater1, true,ProcessParams->rblowertemp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadCoverHeater1, false,ProcessParams->rblowertemp); } Trigger_HeaterWriting(); if (ProcessParams->lblowertemp>1) { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadCoverHeater2, true,ProcessParams->lblowertemp); } else { status |= HeaterCommandRequestMessage(HARDWARE_PID_CONTROL_TYPE__HeadCoverHeater2, false,ProcessParams->lblowertemp); } status |= HeadBlowerCommandRequestMessage(HEAD_FAN_RIGHT, ProcessParams->rblowerflow); status |= HeadBlowerCommandRequestMessage(HEAD_FAN_LEFT, ProcessParams->lblowerflow); Trigger_HeaterWriting(); } if (status) { ReportWithPackageFilter(InitFilter,"HandleProcessParameters start heaters error",__FILE__,(int)__LINE__,(int)status,RpWarning,(int)GetMachineState(),0); status = ERROR_CODE__JOB_TEMPERATURE_ALARM; usnprintf(ProcessErrorMsg, 50, "ProcessParameters start heaters error"); } return status;//status; } void ProcessRequestFunc(MessageContainer* requestContainer) { MessageContainer responseContainer; uint8_t* container_buffer; uint32_t status = 0; UploadProcessParametersRequest* request = upload_process_parameters_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data); ProcessParameters* ProcessParams = request->processparameters; //////////////////////////////////////////////////////////////////////// /*UploadProcessParametersRequest* requesttest; uint8_t* buffer = NULL; uint32_t Bytes = 0; ProcessParameters* ProcessParamsTest; FileRead(ProcessParamsConfigPath, &Bytes, &buffer); requesttest = upload_process_parameters_request__unpack(NULL, Bytes, buffer); // ProcessParameters* ProcessParams = process_parameters__unpack(NULL, Bytes, buffer); if (requesttest) { ProcessParamsTest = request->processparameters; } free (buffer); upload_process_parameters_request__free_unpacked(requesttest,NULL); */ ///////////////////////////////////////////////////////// UploadProcessParametersResponse response = UPLOAD_PROCESS_PARAMETERS_RESPONSE__INIT; responseContainer = createContainer(MESSAGE_TYPE__UploadProcessParametersResponse, requestContainer->token, true, &response, &upload_process_parameters_response__pack, &upload_process_parameters_response__get_packed_size); //REPORT_MSG (ProcessParams->dryerzone1temp,"Process Params Dryer"); PowerIdleOutOfIdleState(); if (status == 0) status = HandleProcessParameters(ProcessParams,true); if ((status)&&(status != ERROR_CODE__GENERAL_ERROR)) //ignore init not ready result { responseContainer.has_error = true; responseContainer.error = (ErrorCode)status; responseContainer.errormessage = ProcessErrorMsg; } container_buffer = my_malloc(message_container__get_packed_size(&responseContainer)); size_t container_size = message_container__pack(&responseContainer, container_buffer); my_free(responseContainer.data.data); SendChars(container_buffer, container_size); upload_process_parameters_request__free_unpacked(request,NULL); } uint32_t LoadProcessParamsFromFile(void) { FRESULT Fresult = FR_OK; uint8_t* buffer = NULL; uint32_t Bytes = 0; Fresult = FileRead(ProcessParamsConfigPath, &Bytes, &buffer); if (Fresult == FR_OK) { ProcessParameters* ProcessParams = (ProcessParameters*)buffer; if (ProcessParams!=NULL) { if ((ProcessParams->dryerzone1temp > 0.1)||(ProcessParams->headzone2temp > 0.1)||(ProcessParams->headzone3temp > 0.1)||(ProcessParams->headzone4temp > 0.1))//NOT turning off heaters { Bytes = sizeof(ProcessParameters); MCU_E2PromProgramChunk(PROCESS_PARAMATERS_IN_EEPROM,4,&Bytes); MCU_E2PromProgramChunk(PROCESS_PARAMATERS_IN_EEPROM+4, Bytes, ProcessParams); /*EraseFlashSection(PROCESS_PARAMETERS_MAP_IN_FLASH); ReadAppAndProgram(PROCESS_PARAMETERS_MAP_IN_FLASH, 4,&Bytes); ReadAppAndProgram(PROCESS_PARAMETERS_MAP_IN_FLASH+4, Bytes, ProcessParams);*/ REPORT_MSG(Bytes,"ProcessParameters Bytes write to flash"); free (buffer); } } else { Report("process parameters not loaded",__FILE__,__LINE__,(int)0,RpWarning,(int)0,0); return ERROR; } } return Fresult; } uint32_t ProcessParamsInit(void) { FRESULT Fresult = FR_NOT_READY; uint32_t Bytes; ProcessParameters ProcessParams; //memcpy(&Bytes,(void *)PROCESS_PARAMETERS_MAP_IN_FLASH,sizeof(Bytes)); MCU_E2PromReadChunk(PROCESS_PARAMATERS_IN_EEPROM,4,&Bytes); REPORT_MSG(Bytes,"Bytes read from EEPROM"); if ((Bytes)&&(Bytes < 1000)) { //ProcessParameters* ProcessParams = (ProcessParameters *)(PROCESS_PARAMETERS_MAP_IN_FLASH+4); MCU_E2PromReadChunk(PROCESS_PARAMATERS_IN_EEPROM+4,Bytes,&ProcessParams); Fresult = HandleProcessParameters(&ProcessParams,false); } else { if (LoadProcessParamsFromFile()==OK) { MCU_E2PromReadChunk(PROCESS_PARAMATERS_IN_EEPROM,4,&Bytes); //memcpy(&Bytes,(void *)PROCESS_PARAMETERS_MAP_IN_FLASH,sizeof(Bytes)); REPORT_MSG(Bytes,"ProcessParams Bytes read from EEPROM"); if ((Bytes)&&(Bytes < 1000)) { MCU_E2PromReadChunk(PROCESS_PARAMATERS_IN_EEPROM+4,Bytes,&ProcessParams); //ProcessParameters* ProcessParams = (ProcessParameters *)(PROCESS_PARAMETERS_MAP_IN_FLASH+4); Fresult = HandleProcessParameters(&ProcessParams,false); } } } return Fresult; }