Planning Purchase Request

This commit is contained in:
walid seghier
2022-06-27 15:15:11 +01:00
parent 76a2511f4a
commit 2c45dedeb0
4 changed files with 32 additions and 0 deletions

View File

@@ -19,6 +19,7 @@ package com.axelor.apps.purchase.service;
import com.axelor.apps.purchase.db.PurchaseOrder;
import com.axelor.apps.purchase.db.PurchaseRequest;
import com.axelor.auth.db.User;
import com.axelor.exception.AxelorException;
import java.util.List;
@@ -28,6 +29,8 @@ public interface PurchaseRequestService {
public void acceptRequest(List<PurchaseRequest> purchaseRequests);
public void purchaseRequestsAssignedToUser(List<Long> requestIds, User user);
public List<PurchaseOrder> generatePo(
List<PurchaseRequest> purchaseRequests, Boolean groupBySupplier, Boolean groupByProduct)
throws AxelorException;

View File

@@ -26,6 +26,7 @@ import com.axelor.apps.purchase.db.repo.PurchaseOrderLineRepository;
import com.axelor.apps.purchase.db.repo.PurchaseOrderRepository;
import com.axelor.apps.purchase.db.repo.PurchaseRequestRepository;
import com.axelor.auth.AuthUtils;
import com.axelor.auth.db.User;
import com.axelor.exception.AxelorException;
import com.google.inject.Inject;
import com.google.inject.persist.Transactional;
@@ -210,4 +211,16 @@ public class PurchaseRequestServiceImpl implements PurchaseRequestService {
update.executeUpdate();
}
}
@Override
@Transactional
public void purchaseRequestsAssignedToUser(List<Long> requestIds, User user) {
for (int i = 0; i < requestIds.size(); i++) {
long requestId = ((Number) requestIds.get(i)).longValue();
PurchaseRequest purchaseRequest = purchaseRequestRepo.find(requestId);
purchaseRequest.setAssignedToUser(user);
purchaseRequestRepo.save(purchaseRequest);
}
}
}

View File

@@ -23,6 +23,7 @@ import com.axelor.apps.purchase.db.repo.PurchaseRequestRepository;
import com.axelor.apps.purchase.exception.IExceptionMessage;
import com.axelor.apps.purchase.service.PurchaseRequestService;
import com.axelor.apps.tool.StringTool;
import com.axelor.auth.db.User;
import com.axelor.exception.AxelorException;
import com.axelor.exception.db.repo.TraceBackRepository;
import com.axelor.i18n.I18n;
@@ -133,4 +134,17 @@ public class PurchaseRequestController {
}
}
}
public void purchaseRequestsAssignedToUser(ActionRequest request, ActionResponse response) {
List<Long> requestIds = (List<Long>) request.getContext().get("_ids");
User user = (User) request.getContext().get("assignedToUser");
if (requestIds != null && !requestIds.isEmpty()) {
Beans.get(PurchaseRequestService.class).purchaseRequestsAssignedToUser(requestIds, user);
response.setCanClose(true);
}
}
}

View File

@@ -29,6 +29,8 @@
<date name="requestDate" title="request Date" />
<date name="requestedDelay" title="requested Delay"/>
<many-to-one name="assignedToUser" title="Buyer" ref="com.axelor.auth.db.User"/>
<unique-constraint columns="purchaseRequestSeq"/>
<extra-code>