123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403 |
- package com.fjhx.sale.controller.contract;
- import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
- import com.baomidou.mybatisplus.core.toolkit.Wrappers;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.fjhx.account.entity.account.vo.AccountRunningWaterVo;
- import com.fjhx.flow.entity.flow.dto.FlowResult;
- import com.fjhx.item.entity.product.bo.ProductAnalysisBo;
- import com.fjhx.item.entity.product.dto.ProductInfoDto;
- import com.fjhx.item.entity.product.dto.ProductInfoSelectDto;
- import com.fjhx.sale.entity.contract.dto.*;
- import com.fjhx.sale.entity.contract.po.Contract;
- import com.fjhx.sale.entity.contract.vo.*;
- import com.fjhx.sale.entity.purchase.po.EhsdPurchase;
- import com.fjhx.sale.service.contract.ContractService;
- import com.ruoyi.common.core.domain.BaseSelectDto;
- import com.ruoyi.common.utils.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
- import javax.servlet.http.HttpServletResponse;
- import java.util.List;
- import java.util.Map;
- /**
- * <p>
- * 外销合同表 前端控制器
- * </p>
- *
- * @author
- * @since 2023-04-17
- */
- @RestController
- @RequestMapping("/contract")
- public class ContractController {
- @Autowired
- private ContractService contractService;
- /**
- * 外销合同表分页
- */
- @PostMapping("/page")
- public Page<ContractVo> page(@RequestBody ContractSelectDto dto) {
- return contractService.getPage(dto);
- }
- /**
- * 外销合同表头部统计
- */
- @PostMapping("/getHeadStatistic")
- public Map<String, Object> getHeadStatistic(@RequestBody ContractSelectDto dto) {
- return contractService.getHeadStatistic(dto);
- }
- /**
- * 外销合同与样品单合并分页
- */
- @PostMapping("/contractAndSamplePage")
- public Page<ContractVo> getContractAndSamplePage(@RequestBody ContractSelectDto dto) {
- return contractService.getContractAndSamplePage(dto);
- }
- /**
- * 外销合同表分页 不过滤权限
- */
- @PostMapping("/page1")
- public Page<ContractVo> page1(@RequestBody ContractSelectDto dto) {
- return contractService.getPage1(dto);
- }
- /**
- * 外销合同表明细
- */
- @PostMapping("/detail")
- public ContractVo detail(@RequestBody ContractSelectDto dto) {
- return contractService.detail(dto);
- }
- /**
- * 外销合同表新增
- */
- @PostMapping("/add")
- public void add(@RequestBody ContractDto contractDto) {
- contractService.add(contractDto);
- }
- // /**
- // * 外销合同表编辑
- // */
- // @PostMapping("/edit")
- // public void edit(@RequestBody ContractDto contractDto) {
- // contractService.edit(contractDto);
- // }
- /**
- * 外销合同作废
- */
- @PostMapping("/cancellation")
- public void cancellation(@RequestBody ContractDto contractDto) {
- contractService.cancellation(contractDto.getId());
- }
- /**
- * 修改合同代理费
- */
- @PostMapping("/modifyAgencyFee")
- public void modifyAgencyFee(@RequestBody ContractDto contractDto) {
- contractService.modifyAgencyFee(contractDto);
- }
- /**
- * 外销合同表删除
- */
- @PostMapping("/delete")
- public void delete(@RequestBody BaseSelectDto dto) {
- contractService.delete(dto.getId());
- }
- /**
- * 根据客户ID查询未包装的订单
- */
- @GetMapping("/getNoPackContractByCustomerId")
- public List<ContractVo> getNoPackContractByCustomerId(@RequestParam("customerId") String customerId) {
- return contractService.getNoPackContractByCustomerId(customerId);
- }
- /**
- * 根据合同id集合查询合同列表
- */
- @PostMapping("/getByIds")
- public List<Contract> getByIds(@RequestBody List<Long> ids) {
- return contractService.getByIds(ids);
- }
- /**
- * 销售合同pdf
- */
- @PostMapping("/getContractPdfInfo")
- public ContractPdfInfoVo getContractPdfInfo(@RequestBody ContractDto dto) {
- Long id;
- if (StringUtils.isNotEmpty(dto.getCode())) {
- Contract contract = contractService.getOne(Wrappers.<Contract>query().lambda().eq(Contract::getCode, dto.getCode()).last("limit 1"));
- id = ObjectUtils.isEmpty(contract) ? 0 : contract.getId();
- } else {
- id = dto.getId();
- }
- return contractService.getContractPdfInfo(id);
- }
- /**
- * 销售趋势(数据看板-产品分析页面)
- *
- * @param productInfoDto
- */
- @PostMapping("/saleTrend")
- public List<Map<String, Object>> saleTrend(@RequestBody ProductInfoSelectDto productInfoDto) {
- return contractService.saleTrend(productInfoDto);
- }
- /**
- * 销售统计(数据看板-销售分析页面开发)
- */
- @PostMapping("/salesStatistics")
- public Map<String, Object> salesStatistics(@RequestBody ContractDto dto) {
- return contractService.salesStatistics(dto);
- }
- /**
- * 国家销售统计(数据看板-销售分析页面开发)
- */
- @PostMapping("/countrySalesStatistics")
- public List<ContractDto> countrySalesStatistics(@RequestBody ContractDto dto) {
- return contractService.countrySalesStatistics(dto);
- }
- /**
- * 客户销售统计(数据看板-销售分析页面开发)
- */
- @PostMapping("/customSalesStatistics")
- public List<ContractDto> customSalesStatistics(@RequestBody ContractDto dto) {
- return contractService.customSalesStatistics(dto);
- }
- /**
- * 业务员销售统计(数据看板-销售分析页面开发)
- */
- @PostMapping("/salesmanSalesStatistics")
- public List<ContractDto> salesmanSalesStatistics(@RequestBody ContractDto dto) {
- return contractService.salesmanSalesStatistics(dto);
- }
- /**
- * 产品销售额统计(数据看板-销售分析页面开发)
- */
- @PostMapping("/productSalesStatistics")
- public List<ContractDto> productSalesStatistics(@RequestBody ContractDto dto) {
- return contractService.productSalesStatistics(dto);
- }
- /**
- * 产品销售量统计(数据看板-销售分析页面开发)
- */
- @PostMapping("/salesVolumeStatistics")
- public List<ContractDto> salesVolumeStatistics(@RequestBody ContractDto dto) {
- return contractService.salesVolumeStatistics(dto);
- }
- /**
- * 合同交接单
- */
- @PostMapping("/contractHandover")
- public void contractHandover(@RequestBody ContractDto dto) {
- contractService.contractHandover(dto);
- }
- /**
- * 合同销售统计(合同列表)
- */
- @PostMapping("/covenantStatistics")
- public Map<String, Object> covenantStatistics(@RequestBody ContractDto dto) {
- return contractService.covenantStatistics(dto);
- }
- /**
- * 利润预算
- */
- @PostMapping("/getProfitBudgetPage")
- public Page<ContractBudgetVo> getProfitBudgetPage(@RequestBody ContractSelectDto dto) {
- return contractService.getProfitBudgetPage(dto);
- }
- /**
- * 利润预算
- */
- @PostMapping("/getProfitBudgetHeadStatistic")
- public Map<String, Object> getProfitBudgetHeadStatistic(@RequestBody ContractSelectDto dto) {
- return contractService.getProfitBudgetHeadStatistic(dto);
- }
- /**
- * 利润结算
- */
- @PostMapping("/getProfitClearingPage")
- public Page<ContractBudgetVo> getProfitClearingPage(@RequestBody ContractSelectDto dto) {
- return contractService.getProfitClearingPage(dto);
- }
- /**
- * 销售合同-》到账完成
- */
- @PostMapping("/toTheAccount")
- public void toTheAccount(@RequestBody Contract dto) {
- contractService.toTheAccount(dto);
- }
- /**
- * 决策辅助
- */
- @PostMapping("/decisionAid")
- public DecisionAidVo decisionAid(@RequestBody DecisionAidDto dto) {
- return contractService.decisionAid(dto);
- }
- /**
- * 采购付款决策辅助
- */
- @PostMapping("/payDecisionAid")
- public PayDecisionAidVo payDecisionAid(@RequestBody PayDecisionAidDto dto) {
- return contractService.payDecisionAid(dto);
- }
- /**
- * 获取合同相关的所有版本列表
- */
- @PostMapping("/getVersionList")
- public List<ContractVo> getVersionList(@RequestBody ContractDto dto) {
- return contractService.getVersionList(dto.getId());
- }
- /**
- * 获取合同相关的所有版本列表
- */
- @PostMapping("/getPurchaseListByContractId")
- public List<EhsdPurchase> getPurchaseListByContractId(@RequestBody ContractDto dto) {
- return contractService.getPurchaseListByContractId(dto.getId());
- }
- /**
- * 根据合同id获取合同的资金流水信息
- */
- @PostMapping("/getAccountRunningWaterByContractId")
- public List<AccountRunningWaterVo> getAccountRunningWaterByContractId(@RequestBody ContractDto dto) {
- return contractService.getAccountRunningWaterByContractId(dto.getId());
- }
- /**
- * 外销跟单分页
- */
- @PostMapping("/exportCopy/page")
- public Page<ContractVo> exportCopyPage(@RequestBody ContractSelectDto dto) {
- return contractService.getExportCopyList(dto);
- }
- /**
- * 外销跟单备注
- */
- @PostMapping("/editContractRemark")
- public void editContractRemark(@RequestBody ContractVo contractVo) {
- contractService.editContractRemark(contractVo);
- }
- /**
- * 合同结清
- */
- @PostMapping("/settle")
- public void settle(@RequestBody ContractDto dto) {
- contractService.settle(dto);
- }
- /**
- * 产品分析
- */
- @PostMapping("/productAnalysis")
- public Page<ProductAnalysisBo> productAnalysis(@RequestBody ContractSelectDto dto) {
- return contractService.productAnalysis(dto);
- }
- /**
- * 产品价格提示
- */
- @PostMapping("/getProductPriceInfo")
- Map<Long, Map<String, Object>> getProductPriceInfo(@RequestBody ProductInfoDto dto) {
- return contractService.getProductPriceInfo(dto);
- }
- /**
- * 产品价格提示
- */
- @PostMapping("/updateProductionTag")
- void updateProductionTag(@RequestBody ContractDto dto) {
- contractService.updateProductionTag(dto);
- }
- /**
- * 销售出库
- */
- @PostMapping("/saleOutbound")
- public void saleOutbound(@RequestBody ContractOutboundInfoDto dto) {
- contractService.saleOutbound(dto);
- }
- /**
- * 生产终止
- */
- @PostMapping("/productionTermination")
- public void productionTermination(@RequestBody ContractDto dto) {
- contractService.productionTermination(dto);
- }
- /**
- * 合同附件
- */
- @PostMapping("/contractAttach")
- public void contractAttach(@RequestBody ContractDto dto) {
- contractService.contractAttach(dto);
- }
- @PostMapping("/excelExport")
- public void excelExport(HttpServletResponse httpServletResponse, @RequestBody ContractSelectDto dto) {
- contractService.excelExport(httpServletResponse, dto);
- }
- /**
- * 修改结算日期范围
- */
- @PostMapping("/editSettleDateRange")
- public void editSettleDateRange(@RequestBody ContractDto dto) {
- contractService.editSettleDateRange(dto);
- }
- /**
- * 下发待采购
- */
- @PostMapping("/createWaitMaterial")
- public void createWaitMaterial(@RequestBody ContractDto dto) {
- contractService.createWaitMaterial(dto.getId());
- }
- /**
- * 创建评审
- *
- * @return
- */
- @PostMapping("/createReview")
- public FlowResult createReview(@RequestBody ContractDto dto) {
- return contractService.createReview(dto);
- }
- }
|