public Operation <WarehouseProcessView> WarehouseProcessEnd(int ProcessId) { Operation <WarehouseProcessView> operation = new Operation <WarehouseProcessView>(); try { using (IDbConnection dbConnection = connection) { dbConnection.Open(); IDbTransaction transaction = dbConnection.BeginTransaction(); var existingProc = dbConnection.Get <WarehouseProcessView>(ProcessId, transaction); if (existingProc.StatusId != 15) { transaction.Commit(); dbConnection.Close(); return(operation); } WarehouseProcess warehouseProcess = dbConnection.Get <WarehouseProcess>(ProcessId, transaction); warehouseProcess.StatusId = 16; warehouseProcess.ProcessEndDate = DateTime.Now; dbConnection.Update(warehouseProcess, transaction); transaction.Commit(); operation.Value = dbConnection.Get <WarehouseProcessView>(ProcessId); dbConnection.Close(); operation.Successful = true; } } catch (Exception gex) { operation.Fail = gex.Message; } return(operation); }
public Operation <WarehouseProcessView> PostWarehouseProcess(WarehouseProcessView warehouseProcess) { Operation <WarehouseProcessView> operation = new Operation <WarehouseProcessView>(); try { using (IDbConnection dbConnection = connection) { dbConnection.Open(); IDbTransaction transaction = dbConnection.BeginTransaction(); warehouseProcess.StatusId = 14; WarehouseProcess warehouseProcessModel = warehouseProcess.GetEligibleOjbect <WarehouseProcess>(); warehouseProcessModel.Id = Convert.ToInt32(GetNewNumber(7, transaction)); warehouseProcess.Id = warehouseProcessModel.Id; dbConnection.Insert(warehouseProcessModel, transaction); warehouseProcess.Fiches.ForEach(x => x.ProcessId = warehouseProcessModel.Id); dbConnection.Insert(warehouseProcess.Fiches, transaction); transaction.Commit(); dbConnection.Close(); operation.Value = warehouseProcess; operation.Successful = true; } } catch (Exception gex) { operation.Fail = gex.Message; } return(operation); }
public Operation <WarehouseProcessView> WarehouseProcessBegin(int ProcessId) { Operation <WarehouseProcessView> operation = new Operation <WarehouseProcessView>(); try { using (IDbConnection dbConnection = connection) { dbConnection.Open(); IDbTransaction transaction = dbConnection.BeginTransaction(); var existingProc = dbConnection.Get <WarehouseProcessView>(ProcessId, transaction); if (existingProc.StatusId != 14) { transaction.Commit(); dbConnection.Close(); return(operation); } var lst = dbConnection.Query <int>(@"select Distinct ServiceItemId from FicheLineService where FicheLineId IN (select Id from FicheLine where FicheId IN (select FicheId from WarehouseProcessFiche where ProcessId = @ProcessId ))", new { ProcessId }, transaction); foreach (int itemId in lst) { dbConnection.Insert(new WarehouseProcessDetail { ServiceItemId = itemId, ProcessId = ProcessId }, transaction); } WarehouseProcess warehouseProcess = dbConnection.Get <WarehouseProcess>(ProcessId, transaction); warehouseProcess.StatusId = 15; warehouseProcess.ProcessBeginDate = DateTime.Now; dbConnection.Update(warehouseProcess, transaction); transaction.Commit(); operation.Value = dbConnection.Get <WarehouseProcessView>(ProcessId); dbConnection.Close(); operation.Successful = true; } } catch (Exception gex) { operation.Fail = gex.Message; } return(operation); }