进项票判断

product
Vayne 2 years ago
parent 726bd6f076
commit 8208585f72

@ -24,6 +24,7 @@ import jnpf.poundlist.service.PoundlistService;
import jnpf.purchaseback.entity.PurchaseorderEntity; import jnpf.purchaseback.entity.PurchaseorderEntity;
import jnpf.purchaseback.service.PurchaseorderService; import jnpf.purchaseback.service.PurchaseorderService;
import jnpf.purchaseorder.entity.Purchaseorder_item0Entity; import jnpf.purchaseorder.entity.Purchaseorder_item0Entity;
import jnpf.purchaseorder.service.Purchaseorder_item0Service;
import jnpf.purchaseorder.service.PurchaseorderitemService; import jnpf.purchaseorder.service.PurchaseorderitemService;
import jnpf.supplier.entity.SupplierEntity; import jnpf.supplier.entity.SupplierEntity;
import jnpf.supplier.service.SupplierService; import jnpf.supplier.service.SupplierService;
@ -57,6 +58,7 @@ import jnpf.util.GeneraterSwapUtil;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.*; import java.util.*;
import java.util.stream.Collectors;
import jnpf.util.file.UploadUtil; import jnpf.util.file.UploadUtil;
import jnpf.util.enums.FileTypeEnum; import jnpf.util.enums.FileTypeEnum;
@ -103,6 +105,8 @@ public class InvoicesController {
private ContractFileService contractFileService; private ContractFileService contractFileService;
@Autowired @Autowired
private SupplierService supplierService; private SupplierService supplierService;
@Autowired
private Purchaseorder_item0Service purchaseorder_item0Service;
/** /**
* *
* *
@ -143,20 +147,20 @@ public class InvoicesController {
@PostMapping @PostMapping
@Transactional @Transactional
public ActionResult create(@RequestBody @Valid InvoicesCrForm invoicesCrForm) throws DataException { public ActionResult create(@RequestBody @Valid InvoicesCrForm invoicesCrForm) throws DataException {
String mainId =RandomUtil.uuId(); String mainId = RandomUtil.uuId();
UserInfo userInfo=userProvider.get(); UserInfo userInfo = userProvider.get();
//invoicesCrForm.setDocumentNo(generaterSwapUtil.getBillNumber("yffp", false)); //invoicesCrForm.setDocumentNo(generaterSwapUtil.getBillNumber("yffp", false));
InvoicesEntity entity = JsonUtil.getJsonToBean(invoicesCrForm, InvoicesEntity.class); InvoicesEntity entity = JsonUtil.getJsonToBean(invoicesCrForm, InvoicesEntity.class);
entity.setId(mainId); entity.setId(mainId);
invoicesService.save(entity); invoicesService.save(entity);
List<InvoicesItem1Entity> InvoicesItem1List = JsonUtil.getJsonToList(invoicesCrForm.getInvoicesitem1List(),InvoicesItem1Entity.class); List<InvoicesItem1Entity> InvoicesItem1List = JsonUtil.getJsonToList(invoicesCrForm.getInvoicesitem1List(), InvoicesItem1Entity.class);
for(InvoicesItem1Entity entitys : InvoicesItem1List){ for (InvoicesItem1Entity entitys : InvoicesItem1List) {
entitys.setId(RandomUtil.uuId()); entitys.setId(RandomUtil.uuId());
entitys.setInvoicesId(entity.getId()); entitys.setInvoicesId(entity.getId());
invoicesItem1Service.save(entitys); invoicesItem1Service.save(entitys);
} }
List<InvoicesItem0Entity> InvoicesItem0List = JsonUtil.getJsonToList(invoicesCrForm.getInvoicesitem0List(),InvoicesItem0Entity.class); List<InvoicesItem0Entity> InvoicesItem0List = JsonUtil.getJsonToList(invoicesCrForm.getInvoicesitem0List(), InvoicesItem0Entity.class);
for(InvoicesItem0Entity entitys : InvoicesItem0List){ for (InvoicesItem0Entity entitys : InvoicesItem0List) {
entitys.setId(RandomUtil.uuId()); entitys.setId(RandomUtil.uuId());
entitys.setInvoicesId(entity.getId()); entitys.setInvoicesId(entity.getId());
invoicesItem0Service.save(entitys); invoicesItem0Service.save(entitys);
@ -167,28 +171,37 @@ public class InvoicesController {
purchaseorderEntity.setInvoiceAmount(entity.getInvoiceAmount()); purchaseorderEntity.setInvoiceAmount(entity.getInvoiceAmount());
purchaseorderEntity.setInvoiceNum(entity.getInvoiceQuantity()); purchaseorderEntity.setInvoiceNum(entity.getInvoiceQuantity());
purchaseorderService.updateById(purchaseorderEntity); purchaseorderService.updateById(purchaseorderEntity);
List<Purchaseorder_item0Entity> Purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(entity.getPurchaseorderId()); List<Purchaseorder_item0Entity> Purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(entity.getPurchaseorderId());
List<PoundlistEntity> poundlistEntityList = purchaseorderitemService.getPoundList(entity.getPurchaseorderId()); List<PoundlistEntity> poundlistEntityList = purchaseorderitemService.getPoundList(entity.getPurchaseorderId());
Purchaseorder_item0Entity orderItem = Purchaseorder_item0List.stream().filter(item0 -> ObjectUtil.equals(item0.getPoundlistId(), poundlistEntityList.get(0).getId())).findAny().get(); if (purchaseorderEntity.getAmount().compareTo(entity.getInvoiceAmount()) == 0) {
BigDecimal total = orderItem.getAmount(); for (PoundlistEntity poundlistEntity: poundlistEntityList) {
int i = 0; poundlistEntity.setIsInvoicing("1");
while (entity.getInvoiceAmount().compareTo(total) >= 0){ poundlistEntity.setInputDate(new Date());
i++;
if(i < poundlistEntityList.size()){
String poundlistId = poundlistEntityList.get(i).getId();
orderItem = Purchaseorder_item0List.stream().filter(item0 -> ObjectUtil.equals(item0.getPoundlistId(), poundlistId)).findAny().get();
total = total.add(orderItem.getAmount());
}else{
break;
} }
} poundlistService.updateBatchById(poundlistEntityList);
for (int j = 0;j<poundlistEntityList.size();j++) { }else {
if(j < i){ Purchaseorder_item0Entity orderItem = Purchaseorder_item0List.stream().filter(item0 -> ObjectUtil.equals(item0.getPoundlistId(), poundlistEntityList.get(0).getId())).findAny().get();
poundlistEntityList.get(j).setIsInvoicing("1"); BigDecimal total = orderItem.getAmount();
poundlistEntityList.get(j).setInputDate(new Date()); int i = 0;
while (entity.getInvoiceAmount().compareTo(total) >= 0) {
i++;
if (i < poundlistEntityList.size()) {
String poundlistId = poundlistEntityList.get(i).getId();
orderItem = Purchaseorder_item0List.stream().filter(item0 -> ObjectUtil.equals(item0.getPoundlistId(), poundlistId)).findAny().get();
total = total.add(orderItem.getAmount());
} else {
break;
}
}
for (int j = 0; j < poundlistEntityList.size(); j++) {
if (j < i) {
poundlistEntityList.get(j).setIsInvoicing("1");
poundlistEntityList.get(j).setInputDate(new Date());
}
poundlistEntityList.get(j).setPurchaseStatus("1");
poundlistService.updateById(poundlistEntityList.get(j));
} }
poundlistEntityList.get(j).setPurchaseStatus("1");
poundlistService.updateById(poundlistEntityList.get(j));
} }
return ActionResult.success("创建成功"); return ActionResult.success("创建成功");
} }

Loading…
Cancel
Save