package com.klp.erp.controller; import com.klp.common.annotation.Log; import com.klp.common.annotation.RepeatSubmit; import com.klp.common.core.controller.BaseController; import com.klp.common.core.domain.R; import com.klp.common.core.validate.AddGroup; import com.klp.common.core.validate.EditGroup; import com.klp.common.enums.BusinessType; import com.klp.erp.domain.bo.ErpSupplierTransactionBo; import com.klp.erp.domain.vo.ErpSupplierTransactionVo; import com.klp.erp.service.IErpSupplierTransactionService; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.util.Arrays; import java.util.List; import java.util.Map; /** * 供应商往来流水 * * @author klp */ @Validated @RequiredArgsConstructor @RestController @RequestMapping("/erp/supplierTxn") public class ErpSupplierTransactionController extends BaseController { private final IErpSupplierTransactionService txnService; /** 某供应商的往来流水(含逐笔余额) */ @GetMapping("/list") public R> list(@RequestParam("supplierId") Long supplierId) { return R.ok(txnService.queryBySupplier(supplierId)); } /** 某供应商的往来汇总 */ @GetMapping("/summary") public R> summary(@RequestParam("supplierId") Long supplierId) { return R.ok(txnService.summary(supplierId)); } @Log(title = "供应商往来", businessType = BusinessType.INSERT) @RepeatSubmit @PostMapping public R add(@Validated(AddGroup.class) @RequestBody ErpSupplierTransactionBo bo) { return toAjax(txnService.insertByBo(bo)); } @Log(title = "供应商往来", businessType = BusinessType.UPDATE) @RepeatSubmit @PutMapping public R edit(@Validated(EditGroup.class) @RequestBody ErpSupplierTransactionBo bo) { return toAjax(txnService.updateByBo(bo)); } @Log(title = "供应商往来", businessType = BusinessType.DELETE) @DeleteMapping("/{txnIds}") public R remove(@NotEmpty(message = "主键不能为空") @PathVariable Long[] txnIds) { return toAjax(txnService.deleteByIds(Arrays.asList(txnIds))); } }