/*Funcion: Validar operacion Param: OperationValidateView Return: true / false */ public OperationValidateView ValidateOperationProcessProduct(OperationInsertView view, List<String> EquipmentIDList) { OperationDao Dao = new OperationDao(); view.OperationProcessId = getOperationProcessIdByLastProduct(view); OperationValidateView result = new OperationValidateView(); result.state = true; for (int i = 0; i < EquipmentIDList.Count(); i++) { DataTable DaoResult = Dao.ValidateOperationProcessProduct(view, EquipmentIDList[i]); int cont = 0; foreach (DataRow row in DaoResult.Rows) { if (DaoResult.Columns.Contains("cont") && row["cont"] != DBNull.Value) { cont = Convert.ToInt32(row["cont"]); } } System.Diagnostics.Debug.WriteLine("Cont: "+cont); if (cont >= 1) { result.EquipmentId = EquipmentIDList[i]; result.state = false; break; } } return result; }
/*Funcion: Insertar operacion de un equipo Param: OperationEquipmentInsertView, AuditDataFromWeb Return: status */ public int getOperationID(OperationInsertView operation) { OperationDao Dao = new OperationDao(); DataTable DaoResult = Dao.getOperationID(operation.ProcessId,operation.ProductLineId); int position = 0; foreach (DataRow row in DaoResult.Rows) { if (DaoResult.Columns.Contains("position") && row["position"] != DBNull.Value) { position = Convert.ToInt32(row["position"]); } } return position; }
/*Funcion: Insertar una operaciom Param: OperationInsertView, AuditDataFromWeb Return: status */ public CUDView insertOperation(OperationInsertView operation, AuditDataFromWeb audit) { OperationDao Dao = new OperationDao(); operation.ID = getOperationID(operation); operation.OperationProcessId = getOperationProcessIdByLastProduct(operation); List<String> state = Dao.insertOperation(operation); CUDView logic = CUDVerifyLogic.verifierInsertPKReturnMSQL("insert", state); if (logic.insert == true) { AuditService auditservice = new AuditService(); String Action = "Insert new operation"; String NewValues = "OperationId: " + logic.insertPK + ", ID: " + operation.ID + ", OperationName: " + operation.OperationName + ", OperationProcessId: " + operation.OperationProcessId + ", OperationTypeId: " + operation.OperationTypeId + ", ProcessId: " + operation.ProcessId + ", ProductLineId: " + operation.ProductLineId; auditservice.formInsert(Action, NewValues, audit); } return logic; }
/*Funcion: Valida el nombre de la operacion Param: OperationInsertView Return: status */ public bool validateName(OperationInsertView operation) { OperationDao Dao = new OperationDao(); DataTable DaoResult = Dao.validateName(operation); int cant = 0; foreach (DataRow row in DaoResult.Rows) { if (DaoResult.Columns.Contains("cant") && row["cant"] != DBNull.Value) { cant = Convert.ToInt32(row["cant"]); } } if (cant == 0) { return true; } else { return false; } }
/*Funcion: Insertar operacion de un equipo Param: OperationEquipmentInsertView, AuditDataFromWeb Return: status */ public int getOperationProcessIdByLastProduct(OperationInsertView operation) { int OperationProcessId = 0; if (operation.Type == "Operation1") { OperationProcessId = 1; } else if (operation.Type == "Operation2") { OperationProcessId = 2; } return OperationProcessId; }
private void saveAuxiliar() { if (ProductText.SelectedItem != null & ProcessText.SelectedItem != null & OperationTypeText.SelectedItem != null) { if (ProductText.SelectedItem.Value != "" & ProcessText.SelectedItem.Value != "" & OperationTypeText.SelectedItem.Value != "" & OperationText.Text != "") { OperationService operationService = new OperationService(); OperationInsertView insertOperation = new OperationInsertView(); insertOperation.OperationName = OperationText.Text; insertOperation.OperationTypeId = Int32.Parse(OperationTypeText.SelectedItem.Value); insertOperation.ProcessId = Int32.Parse(ProcessText.SelectedItem.Value); insertOperation.ProductLineId = Int32.Parse(ProductText.SelectedItem.Value); CUDView crud = operationService.insertOperation(insertOperation); int idOperation = Int32.Parse(crud.insertPK); if (crud.insert == false) { this.Page.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert('Could not insert the Operation')", true); } else { List<OperationEquipmentView> insertlist = (List<OperationEquipmentView>)(HttpContext.Current.Session["listUpdateEquipment"]); foreach (OperationEquipmentView item in insertlist) { OperationEquipmentInsertView insert = new OperationEquipmentInsertView(); insert.EquipmentId = item.EquipmentId; insert.OperationId = idOperation; operationService.insertOperationEquipment(insert); } clearFields(); fillTable(); } } else { this.Page.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert('Please complete all fields.')", true); } } else { this.Page.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert('Please complete all fields.')", true); } }
/* Funcion: Inserta nuevas Operaciones Param: OperationProcessId, Id, ProcessId,OperationName,OperationTypeId, ProductLineId Return: PK, Status, Error */ public List<String> insertOperation(OperationInsertView operation) { return context.insertPKReturnMSQL("exec insertOperation @OperationProcessId ="+operation.OperationProcessId+ ",@ID="+ operation.ID + " , @ProcessId =" + operation.ProcessId + " , @OperationName = '" + operation.OperationName + "',@OperationTypeId = " + operation.OperationTypeId + ",@ProductLineId = " + operation .ProductLineId+ ";"); }
/* Funcion: Obtiene la cantidad de operaciones que coinciden con los param Param: OperationProcessId, ProcessId, ProductLineId, EquipmentID Return: contador con la cantidad de filas que coinciden */ public DataTable ValidateOperationProcessProduct(OperationInsertView view, String EquipmentID) { /* System.Diagnostics.Debug.WriteLine("Exec ValidateOperationProcessProductEquipment @OperationProcessId=" + view.OperationProcessId + ",@ProcessId=" + view.ProcessId + ",@ProductLineId=" + view.ProductLineId + ",@EquipmentId='" + EquipmentID + "';");*/ return context.selectMSQL("Exec ValidateOperationProcessProductEquipment @OperationProcessId="+ view.OperationProcessId + ",@ProcessId="+ view.ProcessId + ",@ProductLineId="+ view.ProductLineId + ",@EquipmentId='"+EquipmentID+"';"); }
/* Funcion: Verifica el nombre de la operacion Param: OperationName, ProcessId, ProductLineId Return: Lista Operation */ public DataTable validateName(OperationInsertView operation) { return context.selectMSQL("EXEC validateName @OperationName='"+operation.OperationName+"', @ProcessId="+ operation.ProcessId + ", @ProductLineId="+ operation.ProductLineId + ";"); }