/**
   * action method for editing PurchaseOrderItemReceipt
   *
   * @param mapping
   * @param form
   * @param request
   * @param response
   * @return
   * @throws Exception
   */
  public ActionForward edit(
      ActionMapping mapping,
      ActionForm form,
      HttpServletRequest request,
      HttpServletResponse response)
      throws Exception {
    PurchaseOrderItemReceipt poir = getPurchaseOrderItemReceiptFromRequest(request);
    this.checkEditPower(poir, request);
    this.putReceiverNoToRequest(poir.getPurchaseOrderItem(), request);
    this.putMaxQtyToRequest(poir.getPurchaseOrderItem(), poir, request);

    if (!isBack(request)) {
      BeanForm purchaseOrderItemReceiptForm =
          (BeanForm) getForm("/updatePurchaseOrderItemReceipt", request);
      purchaseOrderItemReceiptForm.populateToForm(poir);
    }

    this.setAdding(false, request);

    if (this.isRequestor(poir.getPurchaseOrderItem(), request)) {
      if (poir.getReceiveDate1() != null)
        request.setAttribute("x_receiveDate", poir.getReceiveDate1());
      else request.setAttribute("x_receiveDate", new Date());
    } else {
      if (poir.getReceiveDate2() != null)
        request.setAttribute("x_receiveDate", poir.getReceiveDate2());
      else request.setAttribute("x_receiveDate", new Date());
    }

    return mapping.findForward("page");
  }
 private void checkDeletePower(PurchaseOrderItemReceipt poir, HttpServletRequest request) {
   this.checkViewPower(poir.getPurchaseOrderItem(), request);
   if (poir.isFinished()) throw new ActionException("purchaseOrderItemReceipt.delete.finished");
 }