| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412 |
- package com.ydtech.modules.fnc.controller;
- import com.ydtech.core.page.HttpResult;
- import com.ydtech.modules.base.controller.BaseController;
- import com.ydtech.modules.fnc.entity.InsPlyIncome;
- import com.ydtech.modules.fnc.entity.SettlementDocumentaryFeesEntity;
- import com.ydtech.modules.fnc.service.ImportAsyncService;
- import com.ydtech.modules.fnc.service.InsPlyIncomeService;
- import com.ydtech.modules.fnc.vo.InsPlyIncomeVo;
- import com.ydtech.modules.inv.model.dto.InsBxNoPlyIncomeExcelDto;
- import com.ydtech.modules.inv.model.dto.InsBxOtherExcelDto;
- import com.ydtech.modules.inv.model.dto.InsBxPlyIncomeExcelDto;
- import com.ydtech.modules.inv.model.dto.InsNoBxOtherExcelDto;
- import com.ydtech.modules.order.entity.BasePageResult;
- import com.ydtech.utils.SnowFlakeUtil;
- import com.ydtech.utils.StringUtils;
- import com.ydtech.utils.excel.ExcelEasypoiUtils;
- import io.swagger.annotations.*;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.util.CollectionUtils;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.multipart.MultipartFile;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import javax.validation.Valid;
- import java.io.IOException;
- import java.time.Period;
- import java.util.HashMap;
- import java.util.List;
- /**
- * <p>
- * 保司结算手续费 前端控制器
- * </p>
- *
- * @author gws
- * @since 2024-01-05
- */
- @RestController
- @Api(tags = "保司费用")
- @RequestMapping("/fnc/plyFee")
- public class InsPlyIncomeController extends BaseController {
- @Autowired
- private InsPlyIncomeService insPlyIncomeService;
- @Autowired
- private ImportAsyncService importAsyncService;
- /**
- * @return
- */
- @PostMapping("/queryPage")
- @ApiOperation(value = "[1]保司费用查询")
- public HttpResult<BasePageResult<InsPlyIncome>> queryPage(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
- if (StringUtils.isNullOrEmpty(insPlyIncomeVo.getCompanyId())
- && StringUtils.isNullOrEmpty(insPlyIncomeVo.getStartDate())
- && StringUtils.isNullOrEmpty(insPlyIncomeVo.getEndDate())
- && StringUtils.isNullOrEmpty(insPlyIncomeVo.getLicenseno())
- ) {
- return HttpResult.error("查询条件不能全为空!");
- }
- if (!StringUtils.isNullOrEmpty(insPlyIncomeVo.getStartDate())
- && !StringUtils.isNullOrEmpty(insPlyIncomeVo.getEndDate())
- && Period.between(insPlyIncomeVo.getStartDate(), insPlyIncomeVo.getEndDate()).getDays() > 100
- ) {
- return HttpResult.error("查询时间区间不能超过3个月!");
- }
- if (StringUtils.isNullOrEmpty(insPlyIncomeVo.getDeptId())) {
- insPlyIncomeVo.setDeptId(getDeptId());
- }
- HttpResult<BasePageResult<InsPlyIncome>> result = insPlyIncomeService.queryplyIncome(insPlyIncomeVo);
- return result;
- }
- @PostMapping("/query")
- @ApiOperation(value = "[1]保司费用查询new")
- public HttpResult<BasePageResult<InsPlyIncome>> query(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
- HttpResult<BasePageResult<InsPlyIncome>> result = insPlyIncomeService.queryNew(insPlyIncomeVo);
- return result;
- }
- @PostMapping("/totalAmount")
- @ApiModelProperty(value = "平台手续费合计金额")
- public HttpResult<HashMap<String, Object>> totalAmount(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
- if (!CollectionUtils.isEmpty(insPlyIncomeVo.getSelectIds())) {
- HashMap<String, Object> result = insPlyIncomeService.totalAmount(insPlyIncomeVo.getSelectIds());
- return HttpResult.ok(result);
- } else {
- return HttpResult.ok();
- }
- }
- @PostMapping("/totalPinAmount")
- @ApiModelProperty(value = "平台结算未结算接口")
- public HttpResult<List<InsPlyIncome>> totalPinAmount(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
- List<InsPlyIncome> result = insPlyIncomeService.totalPinAmount(insPlyIncomeVo);
- return HttpResult.ok(result);
- }
- @PostMapping("/bxTotalAmount")
- @ApiModelProperty(value = "保险手续费合计")
- public HttpResult<InsPlyIncome> bxTotalPinAmount(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
- InsPlyIncome result = insPlyIncomeService.bxTotalAmount(insPlyIncomeVo);
- return HttpResult.ok(result);
- }
- @PostMapping("/ptTotalAmount")
- @ApiModelProperty(value = "平台手续费合计")
- public HttpResult<InsPlyIncome> ptTotalAmount(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
- InsPlyIncome result = insPlyIncomeService.ptTotalAmount(insPlyIncomeVo);
- return HttpResult.ok(result);
- }
- @PutMapping("/balance")
- @ApiModelProperty(value = "结算手续费")
- public HttpResult<Object> balance(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- insPlyIncomeService.uodateBalance(insPlyIncomeVo);
- return HttpResult.ok("手续费结算成功");
- }
- @PostMapping("/totalQuery")
- @ApiOperation(value = "跟单费总数")
- public HttpResult<BasePageResult<InsPlyIncome>> totalQuery(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
- HttpResult<BasePageResult<InsPlyIncome>> result = insPlyIncomeService.totalQuery(insPlyIncomeVo);
- return result;
- }
- @PutMapping("/batchInvoic")
- @ApiModelProperty(value = "开票跟单费")
- public HttpResult<Object> batchInvoic(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.batchInvoic(insPlyIncomeVo);
- }
- @PutMapping("/singleInvoic")
- @ApiModelProperty(value = "批量开票跟单费")
- public HttpResult<Object> singleInvoic(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.singleInvoic(insPlyIncomeVo);
- }
- @PutMapping("/batchBalance")
- @ApiModelProperty(value = "批量结算跟单费")
- public HttpResult<Object> batchBalance(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.batchBalance(insPlyIncomeVo);
- }
- @PutMapping("/batchPinBalance")
- @ApiModelProperty(value = "平台批量结算")
- public HttpResult<Object> batchPinBalance(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.batchPinBalance(insPlyIncomeVo);
- }
- @PutMapping("/reconciliation")
- @ApiModelProperty(value = "对账")
- public HttpResult<Object> reconciliation(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.reconciliation(insPlyIncomeVo);
- }
- @PostMapping("/NonSettlementQuery")
- @ApiOperation(value = "非跟单查询")
- public HttpResult<BasePageResult<InsPlyIncome>> NonSettlementQuery(@Valid @RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- HttpResult<BasePageResult<InsPlyIncome>> result = insPlyIncomeService.nonSettlementQuery(insPlyIncomeVo);
- return result;
- }
- @PostMapping("/NonSettldetail")
- @ApiOperation(value = "非跟单明细查询")
- public HttpResult<List<InsPlyIncome>> NonSettldetail(@Valid @RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.nonSettldetail(insPlyIncomeVo);
- }
- @PostMapping("/importData")
- @ApiOperation(value = "手续费导入(excel)")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "file", value = "excel文件", required = true, dataType = "__file")
- })
- public HttpResult importData(@RequestParam MultipartFile multipartFile) {
- HashMap<String, Object> result = insPlyIncomeService.importData(multipartFile);
- return HttpResult.ok(result);
- }
- @PostMapping("/bxImportData")
- @ApiOperation(value = "保险手续费导入(excel)")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "file", value = "excel文件", required = true, dataType = "__file")
- })
- public HttpResult<String> bxImportData(@RequestParam MultipartFile multipartFile, @RequestParam("isNotCar") String isNotCar) {
- try {
- List<InsBxPlyIncomeExcelDto> dtoList = ExcelEasypoiUtils.importExcel(multipartFile, InsBxPlyIncomeExcelDto.class, 0, 1, 1);
- if (CollectionUtils.isEmpty(dtoList)) {
- return HttpResult.error("导入数据为空");
- }
- String taskId = String.valueOf(new SnowFlakeUtil().nextId());
- importAsyncService.importasync(dtoList, isNotCar, taskId);
- return HttpResult.ok(taskId);
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- }
- @PostMapping("/bxImportNoData")
- @ApiOperation(value = "保险非车手续费导入(excel)")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "file", value = "excel文件", required = true, dataType = "__file")
- })
- public HttpResult<String> bxImportNoData(@RequestParam MultipartFile multipartFile, @RequestParam("isNotCar") String isNotCar) {
- try {
- List<InsBxNoPlyIncomeExcelDto> dtoList = ExcelEasypoiUtils.importExcel(multipartFile, InsBxNoPlyIncomeExcelDto.class, 0, 1, 1);
- String taskId = String.valueOf(new SnowFlakeUtil().nextId());
- importAsyncService.bxImportNoData(dtoList, multipartFile, taskId);
- return HttpResult.ok(taskId);
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- }
- @PostMapping("/bxImportOther")
- @ApiOperation(value = "批量修改比例(excel)")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "file", value = "excel文件", required = true, dataType = "__file")
- })
- public HttpResult<HashMap<String, Object>> bxImportOther(@RequestParam MultipartFile multipartFile, @RequestParam("isNotCar") String isNotCar) {
- HashMap<String, Object> result = insPlyIncomeService.bxImportOther(multipartFile, isNotCar);
- return HttpResult.ok(result);
- }
- @PostMapping("/noBxImportOther")
- @ApiOperation(value = "非车批量修改比例(excel)")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "file", value = "excel文件", required = true, dataType = "__file")
- })
- public HttpResult<HashMap<String, Object>> noBxImportOther(@RequestParam MultipartFile multipartFile, @RequestParam("isNotCar") String isNotCar) {
- HashMap<String, Object> result = insPlyIncomeService.noBxImportOther(multipartFile, isNotCar);
- return HttpResult.ok(result);
- }
- @PostMapping("/bxOtherImportData")
- @ApiOperation(value = "跟单对账导入(excel)")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "file", value = "excel文件", required = true, dataType = "__file")
- })
- public HttpResult<String> bxOtherImportData(@RequestParam MultipartFile multipartFile, @RequestParam("isNotCar") String isNotCar) {
- try {
- List<InsBxOtherExcelDto> dtoList = ExcelEasypoiUtils.importExcel(multipartFile, InsBxOtherExcelDto.class, 0, 1, 1);
- String taskId = String.valueOf(new SnowFlakeUtil().nextId());
- importAsyncService.bxOtherImportData(dtoList, isNotCar, taskId);
- return HttpResult.ok(taskId);
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- }
- @PostMapping("/bxNoOtherImportData")
- @ApiOperation(value = "非车跟单对账导入(excel)")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "file", value = "excel文件", required = true, dataType = "__file")
- })
- public HttpResult<String> bxNoOtherImportData(@RequestParam MultipartFile multipartFile, @RequestParam("isNotCar") String isNotCar) {
- try {
- List<InsNoBxOtherExcelDto> dtoList = ExcelEasypoiUtils.importExcel(multipartFile, InsNoBxOtherExcelDto.class, 0, 1, 1);
- String taskId = String.valueOf(new SnowFlakeUtil().nextId());
- importAsyncService.bxNoOtherImportData(dtoList, isNotCar, taskId);
- return HttpResult.ok(taskId);
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- }
- @PutMapping("/update")
- @ApiModelProperty(value = "修改")
- public HttpResult<Object> updateByEntity(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- insPlyIncomeService.updateByEntity(insPlyIncomeVo);
- return HttpResult.ok("修改成功");
- }
- @PutMapping("/batchUpdate")
- @ApiModelProperty(value = "批量修改")
- public HttpResult<Object> batchUpdate(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- insPlyIncomeService.batchUpdate(insPlyIncomeVo);
- return HttpResult.ok("批量修改成功");
- }
- @PutMapping("/batchUpdateVoucher")
- @ApiModelProperty(value = "批量修改上传凭证")
- public HttpResult<Object> batchUpdateVoucher(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- insPlyIncomeService.batchUpdateVoucher(insPlyIncomeVo);
- return HttpResult.ok("上传凭证成功");
- }
- @PostMapping("/insert")
- @ApiModelProperty(value = "新增")
- public HttpResult<InsPlyIncome> insertByEntity(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.insertByEntity(insPlyIncomeVo);
- }
- @DeleteMapping("/delete")
- @ApiModelProperty(value = "删除")
- public HttpResult<InsPlyIncome> deleteById(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.deleteById(insPlyIncomeVo);
- }
- @GetMapping("/getById/{id}")
- @ApiModelProperty(value = "回显")
- public HttpResult<InsPlyIncome> getById(@PathVariable("id") String id) {
- InsPlyIncome item = insPlyIncomeService.getEntityById(id);
- return HttpResult.ok(item);
- }
- @PostMapping("/totalBxAmount")
- @ApiModelProperty(value = "保险未开票金额")
- public HttpResult<List<InsPlyIncome>> totalBxAmount(@RequestBody @Valid InsPlyIncomeVo insPlyIncomeVo) {
- List<InsPlyIncome> result = insPlyIncomeService.totalBxAmount(insPlyIncomeVo);
- return HttpResult.ok(result);
- }
- @PutMapping("/batchInvoicing")
- @ApiModelProperty(value = "保险手续费批量开票")
- public HttpResult<Object> batchInvoicing(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.batchInvoicing(insPlyIncomeVo);
- }
- @PostMapping("/queryInvoicing")
- @ApiModelProperty(value = "查询开票金额")
- public HttpResult<InsPlyIncome> queryInvoicing(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.queryInvoicing(insPlyIncomeVo);
- }
- @PostMapping("/querySettInvoicing")
- @ApiModelProperty(value = "查询已开票已结算")
- public HttpResult<InsPlyIncome> querySettInvoicing(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.querySettInvoicing(insPlyIncomeVo);
- }
- @PutMapping("/batchBxBalance")
- @ApiModelProperty(value = "保险批量结算")
- public HttpResult<Object> batchBxBalance(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.batchBxBalance(insPlyIncomeVo);
- }
- @PostMapping("/allOtherAmount")
- @ApiModelProperty(value = "保险跟单总表")
- public HttpResult<List<InsPlyIncome>> allOtherAmount(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.allOtherAmount(insPlyIncomeVo);
- }
- @ApiModelProperty("平台手续费导出")
- @PostMapping("pinHandlingExcel")
- public HttpResult pinHandlingexcel(@RequestBody @ApiParam(name = "insPlyIncomeVo") InsPlyIncomeVo insPlyIncomeVo, HttpServletRequest request, HttpServletResponse response) {
- return insPlyIncomeService.pinHandlingexcel(insPlyIncomeVo, request, response);
- }
- @ApiModelProperty("保险手续费导出")
- @PostMapping("bxHandlingExcel")
- public HttpResult bxHandlingexcel(@RequestBody @ApiParam(name = "insPlyIncomeVo") InsPlyIncomeVo insPlyIncomeVo, HttpServletRequest request, HttpServletResponse response) throws IOException {
- return insPlyIncomeService.bxHandlingexcel(insPlyIncomeVo, request, response);
- }
- @ApiModelProperty("保险跟单导出")
- @PostMapping("bxOtherExcel")
- public HttpResult bxOtherExcel(@RequestBody @ApiParam(name = "insPlyIncomeVo") InsPlyIncomeVo insPlyIncomeVo, HttpServletRequest request, HttpServletResponse response) {
- return insPlyIncomeService.bxOtherExcel(insPlyIncomeVo, request, response);
- }
- @ApiModelProperty("保险跟单明细导出")
- @PostMapping("/bxOtherDetailsExcel")
- public HttpResult bxOtherDetailsExcel(@RequestBody @ApiParam(name = "insPlyIncomeVo") InsPlyIncomeVo insPlyIncomeVo, HttpServletRequest request, HttpServletResponse response) {
- return insPlyIncomeService.bxOtherDetailsExcel(insPlyIncomeVo, request, response);
- }
- @PostMapping("/invicdetail")
- @ApiOperation(value = "开票未结算详情查询")
- public HttpResult<List<SettlementDocumentaryFeesEntity>> invicdetail(@Valid @RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.invicdetail(insPlyIncomeVo);
- }
- @ApiModelProperty("保险非车跟单明细导出")
- @PostMapping("/bxNoOtherDetailsExcel")
- public HttpResult bxNoOtherDetailsExcel(@RequestBody @ApiParam(name = "insPlyIncomeVo") InsPlyIncomeVo insPlyIncomeVo, HttpServletRequest request, HttpServletResponse response) {
- return insPlyIncomeService.bxOtherDetailsExcel(insPlyIncomeVo, request, response);
- }
- @PostMapping("/otherSettldetail")
- @ApiOperation(value = "非跟单明细查询")
- public HttpResult<List<HashMap<String, Object>>> otherSettldetail(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.otherSettldetail(insPlyIncomeVo);
- }
- @PostMapping("/otherTimeDetail")
- @ApiOperation(value = "非跟单明细查询")
- public HttpResult<List<HashMap<String, Object>>> otherTimeDetail(@RequestBody InsPlyIncomeVo insPlyIncomeVo) {
- return insPlyIncomeService.otherTimeDetail(insPlyIncomeVo);
- }
- }
|