procedura di aggiornamento listini
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
This commit is contained in:
@@ -4,6 +4,7 @@ import it.integry.common.var.CommonConstants;
|
||||
import it.integry.ems.product.dto.DuplicaListinoDTO;
|
||||
import it.integry.ems.product.dto.InsertPromoRequestDTO;
|
||||
import it.integry.ems.product.dto.InsertPromoResponseDTO;
|
||||
import it.integry.ems.product.dto.InsertVariazioniRequestDTO;
|
||||
import it.integry.ems.product.importaz.dto.Lisv4LisaDTO;
|
||||
import it.integry.ems.product.importaz.service.Lisv4LisaService;
|
||||
import it.integry.ems.product.service.ListiniVenditaServices;
|
||||
@@ -100,10 +101,10 @@ public class ListiniVenditaController {
|
||||
}
|
||||
|
||||
@RequestMapping(value = "insertVariazioni", method = RequestMethod.POST)
|
||||
public ServiceRestResponse insertPromo(@RequestParam(CommonConstants.PROFILE_DB) String config,
|
||||
@RequestBody List<MtbLisvData> mtbLisvData) throws Exception {
|
||||
public ServiceRestResponse insertVariazioni(@RequestParam(CommonConstants.PROFILE_DB) String config,
|
||||
@RequestBody InsertVariazioniRequestDTO insertVariazioniRequestDTO) throws Exception {
|
||||
|
||||
return ServiceRestResponse.createPositiveResponse(listiniVenditaServices.inserisciVariazioni(mtbLisvData));
|
||||
return ServiceRestResponse.createPositiveResponse(listiniVenditaServices.inserisciVariazioni(insertVariazioniRequestDTO));
|
||||
}
|
||||
|
||||
@RequestMapping(value = "aggiorna4Lisa", method = RequestMethod.POST)
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
package it.integry.ems.product.dto;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import it.integry.ems_model.entity.MtbLisvData;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
||||
public class InsertVariazioniRequestDTO {
|
||||
|
||||
private LocalDate dataValidita;
|
||||
|
||||
private List<String> listini;
|
||||
private List<MtbLisvData> mtbLisvData;
|
||||
|
||||
public LocalDate getDataValidita() {
|
||||
return dataValidita;
|
||||
}
|
||||
|
||||
public InsertVariazioniRequestDTO setDataValidita(LocalDate dataValidita) {
|
||||
this.dataValidita = dataValidita;
|
||||
return this;
|
||||
}
|
||||
|
||||
public List<String> getListini() {
|
||||
return listini;
|
||||
}
|
||||
|
||||
public InsertVariazioniRequestDTO setListini(List<String> listini) {
|
||||
this.listini = listini;
|
||||
return this;
|
||||
}
|
||||
|
||||
public List<MtbLisvData> getMtbLisvData() {
|
||||
return mtbLisvData;
|
||||
}
|
||||
|
||||
public InsertVariazioniRequestDTO setMtbLisvData(List<MtbLisvData> mtbLisvData) {
|
||||
this.mtbLisvData = mtbLisvData;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
@@ -3,12 +3,10 @@ package it.integry.ems.product.service;
|
||||
import com.annimon.stream.Stream;
|
||||
import it.integry.common.var.CommonConstants;
|
||||
import it.integry.ems.Import.dto.AnomalieDTO;
|
||||
import it.integry.ems.document.service.ManutenzioneProduzioniService;
|
||||
import it.integry.ems.exception.MissingDataException;
|
||||
import it.integry.ems.javabeans.RequestDataDTO;
|
||||
import it.integry.ems.product.dto.DuplicaListinoDTO;
|
||||
import it.integry.ems.product.dto.InsertPromoRequestDTO;
|
||||
import it.integry.ems.product.dto.InsertPromoResponseDTO;
|
||||
import it.integry.ems.product.dto.ListiniVenditaAllinePrezziDTO;
|
||||
import it.integry.ems.product.dto.*;
|
||||
import it.integry.ems.product.importaz.service.ImportAnagListiniService;
|
||||
import it.integry.ems.product.importaz.service.ImportListiniVenditaService;
|
||||
import it.integry.ems.service.EmsServices;
|
||||
@@ -68,6 +66,7 @@ public class ListiniVenditaServices {
|
||||
private final Logger logger = LogManager.getLogger();
|
||||
@Autowired
|
||||
private SetupGest setupGest;
|
||||
private ManutenzioneProduzioniService manutenzioneProduzioniService;
|
||||
|
||||
|
||||
public void allinemanetoPrezziArtEqui(Date dataValidita, ListiniVenditaAllinePrezziDTO datiInput) throws Exception {
|
||||
@@ -917,21 +916,41 @@ public class ListiniVenditaServices {
|
||||
return InsertPromoResponse;
|
||||
}
|
||||
|
||||
public List<EntityBase> inserisciVariazioni(List<MtbLisvData> mtbLisvData) throws Exception {
|
||||
Map<VtbListData, List<MtbLisvData>> elencoVariazioni = mtbLisvData.stream().collect(Collectors.groupingBy(
|
||||
x -> new VtbListData()
|
||||
.setCodVlis(x.getCodVlis())
|
||||
.setDataIniz(x.getDataIniz())
|
||||
));
|
||||
public List<EntityBase> inserisciVariazioni(InsertVariazioniRequestDTO insertVariazioniRequestDTO) throws Exception {
|
||||
if (insertVariazioniRequestDTO.getMtbLisvData().stream().anyMatch(x->UtilityString.isNullOrEmpty(x.getCodVlis())) &&
|
||||
(insertVariazioniRequestDTO.getListini() == null || insertVariazioniRequestDTO.getListini().isEmpty()) ) {
|
||||
throw new Exception("Inserire almeno un listino o un articolo con codice listino");
|
||||
}
|
||||
|
||||
|
||||
List<EntityBase> entityList = new ArrayList<>();
|
||||
for (VtbListData vtbListData : elencoVariazioni.keySet()) {
|
||||
vtbListData.setOperation(OperationType.INSERT_OR_UPDATE);
|
||||
List<MtbLisvData> mtbLisvDataList = elencoVariazioni.get(vtbListData);
|
||||
mtbLisvDataList.stream().forEach(x->x.setOperation(OperationType.INSERT_OR_UPDATE));
|
||||
vtbListData.setMtbLisvData(mtbLisvDataList);
|
||||
entityList.add(vtbListData);
|
||||
if (insertVariazioniRequestDTO.getMtbLisvData().stream().anyMatch(x->!UtilityString.isNullOrEmpty(x.getCodVlis())) ) {
|
||||
Map<VtbListData, List<MtbLisvData>> elencoVariazioni = insertVariazioniRequestDTO.getMtbLisvData().stream().collect(Collectors.groupingBy(
|
||||
x -> new VtbListData()
|
||||
.setCodVlis(x.getCodVlis())
|
||||
.setDataIniz(x.getDataIniz()==null?
|
||||
UtilityLocalDate.localDateToDate(insertVariazioniRequestDTO.getDataValidita())
|
||||
: x.getDataIniz())
|
||||
));
|
||||
|
||||
|
||||
for (VtbListData vtbListData : elencoVariazioni.keySet()) {
|
||||
vtbListData.setOperation(OperationType.INSERT_OR_UPDATE);
|
||||
List<MtbLisvData> mtbLisvDataList = elencoVariazioni.get(vtbListData);
|
||||
mtbLisvDataList.stream().forEach(x -> x.setOperation(OperationType.INSERT_OR_UPDATE));
|
||||
vtbListData.setMtbLisvData(mtbLisvDataList);
|
||||
entityList.add(vtbListData);
|
||||
}
|
||||
} else {
|
||||
for (String codVlis : insertVariazioniRequestDTO.getListini()) {
|
||||
VtbListData vtbListData = new VtbListData()
|
||||
.setCodVlis(codVlis)
|
||||
.setDataIniz(UtilityLocalDate.localDateToDate(insertVariazioniRequestDTO.getDataValidita()));
|
||||
vtbListData.setMtbLisvData(insertVariazioniRequestDTO.getMtbLisvData());
|
||||
vtbListData.setOperation(OperationType.INSERT_OR_UPDATE);
|
||||
entityList.add(vtbListData);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
List<EntityBase> entityRet = entityProcessor.processEntityList(entityList, true);
|
||||
|
||||
Reference in New Issue
Block a user