| | |
| | | import com.vincent.rsf.server.common.domain.BaseParam; |
| | | import com.vincent.rsf.server.common.domain.KeyValVo; |
| | | import com.vincent.rsf.server.common.domain.PageParam; |
| | | import com.vincent.rsf.server.manager.entity.AsnOrderItem; |
| | | import com.vincent.rsf.server.manager.entity.Purchase; |
| | | import com.vincent.rsf.server.manager.service.AsnOrderItemService; |
| | | import com.vincent.rsf.server.manager.service.PurchaseService; |
| | | import com.vincent.rsf.server.system.constant.SerialRuleCode; |
| | | import com.vincent.rsf.server.system.controller.BaseController; |
| | | import com.vincent.rsf.server.system.utils.SerialRuleUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.security.access.prepost.PreAuthorize; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @RestController |
| | | public class PurchaseController extends BaseController { |
| | | |
| | | @Autowired |
| | | private PurchaseService purchaseService; |
| | | |
| | | @Autowired |
| | | private AsnOrderItemService asnOrderItemService; |
| | | |
| | | @PreAuthorize("hasAuthority('manager:purchase:list')") |
| | | @PostMapping("/purchase/page") |
| | |
| | | purchase.setCreateTime(new Date()); |
| | | purchase.setUpdateBy(getLoginUserId()); |
| | | purchase.setUpdateTime(new Date()); |
| | | if (StringUtils.isBlank(purchase.getCode())) { |
| | | String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_ORDER_PO_CODE, purchase); |
| | | purchase.setCode(ruleCode); |
| | | } |
| | | |
| | | if (!purchaseService.save(purchase)) { |
| | | return R.error("Save Fail"); |
| | | } |
| | |
| | | @OperationLog("Delete ERP采购单") |
| | | @PostMapping("/purchase/remove/{ids}") |
| | | public R remove(@PathVariable Long[] ids) { |
| | | List<Purchase> purchases = purchaseService.listByIds(Arrays.asList(ids)); |
| | | Set<String> stringSet = purchases.stream().map(Purchase::getCode).collect(Collectors.toSet()); |
| | | List<AsnOrderItem> orderItems = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>().in(AsnOrderItem::getPoCode, stringSet)); |
| | | if (!orderItems.isEmpty()) { |
| | | return R.error("单据有已生成的收货单明细,不可执行删除操作!!"); |
| | | } |
| | | if (!purchaseService.removeByIds(Arrays.asList(ids))) { |
| | | return R.error("Delete Fail"); |
| | | } |