use of me.kadarh.mecaworks.domain.others.Stock in project mecaworks by KadarH.
the class StockManagerServiceImpl method doMiseAjour.
private void doMiseAjour(Long idc, Stock stock) {
List<Stock> list = stockRepo.findAllByChantierAfterStockReel(idc, stockRepo.findLastStockReel(idc).get().getDate());
// Au debut ce stock = stock reel
Stock stockInitial = stockRepo.findLastStockReel(idc).get();
list.remove(stockInitial);
Stock stock2;
// On boucle, pour chaque stock on remplace le
for (int i = 0; i < list.size(); i++) {
stock2 = stockRepo.getOne(list.get(i).getId());
if (stock.getTypeBon().equals(TypeBon.BE))
stock2.setStockC(stockInitial.getStockC() - list.get(i).getQuantite());
if (stock.getTypeBon().equals(TypeBon.BF))
stock2.setStockC(stockInitial.getStockC() + list.get(i).getQuantite());
if (stock.getTypeBon().equals(TypeBon.BL)) {
if (list.get(i).getSortieL() != 0 && list.get(i).getSortieL() != null)
stock2.setStockC(stockInitial.getStockC() - list.get(i).getQuantite());
if (list.get(i).getEntreeL() != 0 && list.get(i).getEntreeL() != null)
stock2.setStockC(stockInitial.getStockC() + list.get(i).getQuantite());
}
list.set(i, stock2);
stockInitial = list.get(i);
}
stockRepo.saveAll(list);
}
use of me.kadarh.mecaworks.domain.others.Stock in project mecaworks by KadarH.
the class BonEnginServiceImpl method insertStock.
private void insertStock(BonEngin bonEngin) {
Stock stock = new Stock();
stock.setChantier(bonEngin.getChantierTravail());
stock.setDate(bonEngin.getDate());
stock.setSortieE(bonEngin.getQuantite());
stock.setStockReel(stockService.getLastStock().getStockReel() + bonEngin.getQuantite());
stockService.add(stock);
}
use of me.kadarh.mecaworks.domain.others.Stock in project mecaworks by KadarH.
the class BonFournisseurServiceImpl method insertStock_Fournisseur.
public void insertStock_Fournisseur(BonFournisseur bonFournisseur) {
Stock stock = new Stock();
Chantier chantier = bonFournisseur.getChantier();
stock.setChantier(chantier);
stock.setDate(bonFournisseur.getDate());
stock.setEntreeF(bonFournisseur.getQuantite());
stock.setQuantite(stock.getEntreeF());
stock.setId_Bon(bonFournisseur.getId());
stock.setTypeBon(TypeBon.BF);
if (stockService.getLastStock(chantier) != null)
stock.setStockC(stockService.getLastStock(chantier).getStockC() + bonFournisseur.getQuantite());
else
stock.setStockC(bonFournisseur.getChantier().getStock() + bonFournisseur.getQuantite());
stock = stockService.add(stock);
stockManagerService.addStockUpdate(bonFournisseur.getChantier().getId(), null, stock, TypeBon.BF);
}
use of me.kadarh.mecaworks.domain.others.Stock in project mecaworks by KadarH.
the class ChantierServiceImpl method update.
/**
* updating the chantier
*
* @param chantier
* @return
*/
@Override
public Chantier update(Chantier chantier) {
log.info("Service= ChantierServiceImpl - calling methode update");
try {
Chantier old = get(chantier.getId());
if (chantier.getNom() != null) {
old.setNom(chantier.getNom());
}
if (chantier.getAdresse() != null) {
old.setAdresse(chantier.getAdresse());
}
if (chantier.getStock() != null) {
if (!chantier.getStock().equals(old.getStock())) {
Stock stock = new Stock();
stock.setDate(LocalDate.now());
stock.setStockC(chantier.getStock());
stock.setStockReel(chantier.getStock());
stock.setChantier(old);
Stock stockC = stockService.getLastStock(chantier);
if (stockC != null) {
if (stockC.getStockC() < chantier.getStock())
stock.setEcart_plus(chantier.getStock() - stockC.getStockC());
else if (stockC.getStockC() > chantier.getStock())
stock.setEcart_moins(stockC.getStockC() - chantier.getStock());
} else {
stock.setEcart_moins(0);
stock.setEcart_plus(0);
}
stockService.add(stock);
}
old.setStock(chantier.getStock());
}
return chantierRepo.save(old);
} catch (Exception e) {
log.debug("cannot update Chantier , failed operation");
throw new OperationFailedException("La modification du Chantier a echouée ", e);
}
}
use of me.kadarh.mecaworks.domain.others.Stock in project mecaworks by KadarH.
the class ChantierServiceImpl method add.
/**
* @param chantier to add
* @return the chantier
*/
@Override
public Chantier add(Chantier chantier) {
log.info("Service= ChantierServiceImpl - calling methode add");
try {
Stock stock = new Stock();
stock.setDate(LocalDate.now());
stock.setStockC(chantier.getStock());
stock.setStockReel(chantier.getStock());
stock.setChantier(chantier);
stock.setEcart_plus(0);
stock.setEcart_moins(0);
stockService.add(stock);
return chantierRepo.save(chantier);
} catch (Exception e) {
log.debug("cannot add chantier , failed operation");
throw new OperationFailedException("L'ajout du Chantier a echouée ", e);
}
}
Aggregations