Commit 82a2b489 authored by lcl's avatar lcl

u

parent 9563f702
...@@ -2,17 +2,25 @@ package com.dsk.biz.controller; ...@@ -2,17 +2,25 @@ package com.dsk.biz.controller;
import com.dsk.biz.domain.BusinessOpenTender; import com.dsk.biz.domain.BusinessOpenTender;
import com.dsk.biz.domain.bo.BusinessOpenTenderDto; import com.dsk.biz.domain.bo.BusinessOpenTenderDto;
import com.dsk.biz.domain.bo.BusinessSearchDto;
import com.dsk.biz.service.IBusinessOpenTenderService; import com.dsk.biz.service.IBusinessOpenTenderService;
import com.dsk.biz.utils.ExcelUtils;
import com.dsk.common.annotation.Log;
import com.dsk.common.annotation.RepeatSubmit; import com.dsk.common.annotation.RepeatSubmit;
import com.dsk.common.core.controller.BaseController; import com.dsk.common.core.controller.BaseController;
import com.dsk.common.core.domain.PageQuery; import com.dsk.common.core.domain.PageQuery;
import com.dsk.common.core.domain.R; import com.dsk.common.core.domain.R;
import com.dsk.common.core.page.TableDataInfo; import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.enums.BusinessType;
import com.dsk.common.exception.BusinessException;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 项目开标记录 * 项目开标记录
...@@ -31,7 +39,7 @@ public class BusinessOpenTenderController extends BaseController { ...@@ -31,7 +39,7 @@ public class BusinessOpenTenderController extends BaseController {
* 开标记录列表 * 开标记录列表
*/ */
@GetMapping("/list") @GetMapping("/list")
public TableDataInfo<BusinessOpenTender> list(BusinessOpenTenderDto dto, PageQuery pageQuery){ public TableDataInfo<BusinessOpenTender> list(BusinessOpenTenderDto dto, PageQuery pageQuery) {
return baseService.selectList(dto, pageQuery); return baseService.selectList(dto, pageQuery);
} }
...@@ -39,8 +47,8 @@ public class BusinessOpenTenderController extends BaseController { ...@@ -39,8 +47,8 @@ public class BusinessOpenTenderController extends BaseController {
* 添加开标记录 * 添加开标记录
*/ */
@PostMapping @PostMapping
@RepeatSubmit() @RepeatSubmit
public R<Void> add(@RequestBody BusinessOpenTender bo){ public R<Void> add(@RequestBody BusinessOpenTender bo) {
return toAjax(baseService.add(bo)); return toAjax(baseService.add(bo));
} }
...@@ -48,8 +56,8 @@ public class BusinessOpenTenderController extends BaseController { ...@@ -48,8 +56,8 @@ public class BusinessOpenTenderController extends BaseController {
* 修改开标记录 * 修改开标记录
*/ */
@PutMapping @PutMapping
@RepeatSubmit() @RepeatSubmit
public R<Void> edit(@RequestBody BusinessOpenTender bo){ public R<Void> edit(@RequestBody BusinessOpenTender bo) {
return toAjax(baseService.edit(bo)); return toAjax(baseService.edit(bo));
} }
...@@ -57,9 +65,41 @@ public class BusinessOpenTenderController extends BaseController { ...@@ -57,9 +65,41 @@ public class BusinessOpenTenderController extends BaseController {
* 删除开标记录 * 删除开标记录
*/ */
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
@RepeatSubmit() @RepeatSubmit
public R<Void> remove(@PathVariable Long[] ids){ public R<Void> remove(@PathVariable Long[] ids) {
return toAjax(baseService.remove(ids)); return toAjax(baseService.remove(ids));
} }
/**
* 批量导入
*/
@Log(title = "开标记录批量导入", businessType = BusinessType.IMPORT)
@PostMapping("/importData/{businessId}")
public R<Map<String, Object>> importData(@RequestPart("file") MultipartFile file, @PathVariable Integer businessId) throws Exception {
List<BusinessOpenTender> list = new ExcelUtils<>(BusinessOpenTender.class).importExcel(file.getInputStream(), 1);
if (list.isEmpty()) throw new BusinessException("请填写导入数据!");
int sucessCount = 0;
List<String> errorList = new ArrayList<>();
for (BusinessOpenTender openTender : list) {
if (ObjectUtils.isEmpty(openTender.getTenderer())) {
errorList.add("投标人不能为空!");
continue;
}
openTender.setBusinessId(businessId);
try {
int add = baseService.add(openTender);
if (add > 0) {
sucessCount++;
}
} catch (Exception e) {
errorList.add(openTender.getTenderer().concat(":").concat(e.getMessage()));
}
}
Map<String, Object> result = new HashMap<>();
result.put("sucessCount", sucessCount);
result.put("errorCount", list.size() - sucessCount);
result.put("errorMsg", errorList);
return R.ok(result);
}
} }
package com.dsk.biz.domain; package com.dsk.biz.domain;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.dsk.common.annotation.Excel;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
...@@ -14,7 +16,7 @@ import java.util.Date; ...@@ -14,7 +16,7 @@ import java.util.Date;
@Data @Data
public class BusinessOpenTender implements Serializable { public class BusinessOpenTender implements Serializable {
@TableId(value = "id",type = IdType.AUTO) @TableId(value = "id",type = IdType.ASSIGN_ID)
private Long id; private Long id;
/** /**
* 项目id * 项目id
...@@ -27,22 +29,27 @@ public class BusinessOpenTender implements Serializable { ...@@ -27,22 +29,27 @@ public class BusinessOpenTender implements Serializable {
/** /**
* 投标人 * 投标人
*/ */
@Excel(name = "投标人")
private String tenderer; private String tenderer;
/** /**
* 企业性质 * 企业性质
*/ */
@Excel(name = "企业性质")
private String tendererNature; private String tendererNature;
/** /**
* 项目经理 * 项目经理
*/ */
@Excel(name = "项目经理")
private String businessManager; private String businessManager;
/** /**
* 联系方式 * 联系方式
*/ */
@Excel(name = "联系方式")
private String contact; private String contact;
/** /**
* 投标金额 * 投标金额
*/ */
@Excel(name = "投标金额(万元)")
private Double tenderAmount; private Double tenderAmount;
private Date createTime; private Date createTime;
......
package com.dsk.biz.service.impl; package com.dsk.biz.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsk.biz.domain.BusinessOpenTender; import com.dsk.biz.domain.BusinessOpenTender;
import com.dsk.biz.domain.bo.BusinessOpenTenderDto; import com.dsk.biz.domain.bo.BusinessOpenTenderDto;
import com.dsk.biz.domain.bo.BusinessSearchDto;
import com.dsk.biz.mapper.BusinessOpenTenderMapper; import com.dsk.biz.mapper.BusinessOpenTenderMapper;
import com.dsk.biz.service.IBusinessOpenTenderService; import com.dsk.biz.service.IBusinessOpenTenderService;
import com.dsk.common.core.domain.PageQuery; import com.dsk.common.core.domain.PageQuery;
import com.dsk.common.core.page.TableDataInfo; import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.exception.ServiceException;
import jodd.bean.BeanException; import jodd.bean.BeanException;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.sql.Wrapper;
import java.util.Arrays; import java.util.Arrays;
import java.util.List;
/** /**
* @Author lcl * @Author lcl
...@@ -40,6 +37,10 @@ public class BusinessOpenTenderServiceImpl implements IBusinessOpenTenderService ...@@ -40,6 +37,10 @@ public class BusinessOpenTenderServiceImpl implements IBusinessOpenTenderService
@Override @Override
public int add(BusinessOpenTender bo) { public int add(BusinessOpenTender bo) {
verifyBean(bo); verifyBean(bo);
BusinessOpenTender openTender = baseMapper.selectOne(Wrappers.<BusinessOpenTender>lambdaQuery()
.eq(BusinessOpenTender::getTenderer, bo.getTenderer())
.eq(BusinessOpenTender::getBusinessId,bo.getBusinessId()));
if(!ObjectUtils.isEmpty(openTender)) throw new ServiceException("当前投标人已存在");
return baseMapper.insert(bo); return baseMapper.insert(bo);
} }
...@@ -47,6 +48,10 @@ public class BusinessOpenTenderServiceImpl implements IBusinessOpenTenderService ...@@ -47,6 +48,10 @@ public class BusinessOpenTenderServiceImpl implements IBusinessOpenTenderService
public int edit(BusinessOpenTender bo) { public int edit(BusinessOpenTender bo) {
if(ObjectUtils.isArray(bo.getId())) throw new BeanException("id不能为空!"); if(ObjectUtils.isArray(bo.getId())) throw new BeanException("id不能为空!");
verifyBean(bo); verifyBean(bo);
BusinessOpenTender openTender = baseMapper.selectOne(Wrappers.<BusinessOpenTender>lambdaQuery()
.eq(BusinessOpenTender::getTenderer, bo.getTenderer())
.eq(BusinessOpenTender::getBusinessId,bo.getBusinessId()));
if(!ObjectUtils.isEmpty(openTender) && !openTender.getId().equals(bo.getId())) throw new ServiceException("当前投标人已存在");
return baseMapper.updateById(bo); return baseMapper.updateById(bo);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment