Browse Source

招标代理机构管理

hexiao 2 năm trước cách đây
mục cha
commit
84d304f41c

+ 106 - 0
purchase-admin/src/main/java/com/ozs/web/controller/base/BaseAgencyController.java

@@ -0,0 +1,106 @@
+package com.ozs.web.controller.base;
+
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ozs.base.domain.BaseAgency;
+import com.ozs.base.service.BaseAgencyService;
+import com.ozs.base.vo.BaseAgentPageReqVo;
+import com.ozs.common.annotation.Log;
+import com.ozs.common.core.controller.BaseController;
+import com.ozs.common.core.domain.AjaxResult;
+import com.ozs.common.enums.BusinessType;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.util.ObjectUtils;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.constraints.NotEmpty;
+import java.util.Date;
+
+
+@Api(tags = "招标代理机构管理")
+@RestController
+@RequestMapping("/base/agency")
+public class BaseAgencyController extends BaseController {
+
+    @Autowired
+    private BaseAgencyService baseAgencyService;
+
+    @ApiOperation(value = "新增招标代理机构")
+    @PostMapping("/insertBaseAgency")
+    @PreAuthorize("@ss.hasPermi('base:agency:add')")
+    @Log(title = "招标代理机构管理", businessType = BusinessType.INSERT)
+    public AjaxResult insertBaseAgency(@NotEmpty(message = "数据为空") @RequestBody BaseAgency baseAgency) {
+//        if (ObjectUtils.isEmpty(baseAgency)) {
+//            return error("数据为空");
+//        }
+        baseAgency.setStatus(0);
+        baseAgency.setCreated(getUserId().toString());
+        baseAgency.setCreateTime(new Date());
+        baseAgency.setUpdated(baseAgency.getCreated());
+        baseAgency.setUpdateTime(baseAgency.getCreateTime());
+        return toAjax(baseAgencyService.insert(baseAgency));
+    }
+
+
+    @ApiOperation(value = "查看招标代理机构")
+    @PostMapping("/getInfo")
+    @PreAuthorize("@ss.hasPermi('base:agency:query')")
+    @Log(title = "招标代理机构管理", businessType = BusinessType.QUERY)
+    public AjaxResult getInfo(@NotEmpty(message = "主键id不能为空")
+                              @RequestParam(value = "id", required = true)
+                                      Long id) {
+        return success(baseAgencyService.getInfo(id));
+    }
+
+
+    @ApiOperation(value = "修改招标代理机构信息")
+    @PostMapping("/updateInfo")
+    @PreAuthorize("@ss.hasPermi('base:agency:edit')")
+    @Log(title = "招标代理机构管理", businessType = BusinessType.UPDATE)
+    public AjaxResult updateInfo(@NotEmpty(message = "数据为空")
+                                             @RequestBody BaseAgency baseAgency) {
+        baseAgency.setUpdateTime(new Date());
+        baseAgency.setUpdated(getUserId().toString());
+        return toAjax(baseAgencyService.updateInfo(baseAgency));
+    }
+
+    @ApiOperation(value = "操作招标代理机构黑白名单")
+    @PostMapping("/operationBlacklist")
+    @PreAuthorize("@ss.hasPermi('base:agency:edit')")
+    @Log(title = "招标代理机构管理", businessType = BusinessType.UPDATE)
+    public AjaxResult operationBlacklist(@NotEmpty(message = "主键id不能为空")
+                                         @RequestParam(value = "id", required = true)
+                                                 Long id,
+                                         @NotEmpty(message = "状态不能为空")
+                                         @RequestParam(value = "status", required = true)
+                                                 Integer status) {
+
+        BaseAgency build = BaseAgency.builder().id(id).status(status).build();
+        build.setUpdated(getUserId().toString());
+        build.setUpdateTime(new Date());
+        return toAjax(baseAgencyService.operationBlacklist(build));
+    }
+
+    @ApiOperation(value = "删除招标代理机构信息")
+    @PostMapping("/remove")
+    @PreAuthorize("@ss.hasPermi('base:agency:remove')")
+    @Log(title = "招标代理机构管理", businessType = BusinessType.DELETE)
+    public AjaxResult remove(@NotEmpty(message = "主键id不能为空")
+                             @RequestParam(value = "id", required = true)
+                                     Long id) {
+        return toAjax(baseAgencyService.remove(id));
+    }
+
+    @ApiOperation(value = "分页查询招标代理机构信息")
+    @PostMapping("/page")
+    @PreAuthorize("@ss.hasPermi('base:agency:list')")
+    @Log(title = "招标代理机构管理", businessType = BusinessType.QUERY)
+    public AjaxResult page(@NotEmpty(message = "数据为空") @RequestBody BaseAgentPageReqVo vo) {
+        IPage<BaseAgency> page = baseAgencyService.page(new Page<BaseAgency>(vo.getPageNum(), vo.getPageSize()), vo);
+        return success(page);
+    }
+}

+ 1 - 1
purchase-admin/src/main/resources/application.yml

@@ -10,4 +10,4 @@ server:
 # Spring配置
 spring:
   profiles:
-    active: druid,test
+    active: druid,dev

+ 1 - 1
purchase-admin/src/main/resources/mybatis/mybatis-config.xml

@@ -15,7 +15,7 @@ PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
 		<!-- 指定 MyBatis 所用日志的具体实现 -->
         <setting name="logImpl"                  value="SLF4J"  />
         <!-- 使用驼峰命名法转换字段 -->
-		<!-- <setting name="mapUnderscoreToCamelCase" value="true"/> -->
+		 <setting name="mapUnderscoreToCamelCase" value="true"/>
 	</settings>
 
     <plugins>

+ 5 - 0
purchase-common/src/main/java/com/ozs/common/enums/BusinessType.java

@@ -56,4 +56,9 @@ public enum BusinessType
      * 清空数据
      */
     CLEAN,
+
+    /**
+     * 查看数据
+     */
+    QUERY,
 }

+ 32 - 0
purchase-common/src/main/java/com/ozs/common/vo/BaseDto.java

@@ -0,0 +1,32 @@
+package com.ozs.common.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@ApiModel("入库基础参数实体")
+public class BaseDto {
+
+    // 创建时间
+    @ApiModelProperty("创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+    // 创建人
+    @ApiModelProperty("创建人")
+    private String created;
+    // 修改时间
+    @ApiModelProperty("修改时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+    // 修改人
+    @ApiModelProperty("修改人")
+    private String updated;
+}

+ 21 - 0
purchase-common/src/main/java/com/ozs/common/vo/PageVo.java

@@ -0,0 +1,21 @@
+package com.ozs.common.vo;
+
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@ApiModel("分页实体")
+public class PageVo {
+    /** 当前记录起始索引 */
+    @ApiModelProperty("页数")
+    private Long pageNum;
+    /** 每页显示记录数 */
+    @ApiModelProperty("页大小")
+    private Long pageSize;
+}

+ 26 - 0
purchase-framework/src/main/java/com/ozs/framework/config/MybatisPlusConfig.java

@@ -0,0 +1,26 @@
+package com.ozs.framework.config;
+
+import com.baomidou.mybatisplus.annotation.DbType;
+import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+@Configuration
+public class MybatisPlusConfig{
+
+    @Bean
+    public MybatisPlusInterceptor mybatisPlusInterceptor() {
+        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
+        PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
+        paginationInnerInterceptor.setOptimizeJoin(true);
+        paginationInnerInterceptor.setDbType(DbType.MYSQL);
+        paginationInnerInterceptor.setOverflow(true);
+        interceptor.addInnerInterceptor(paginationInnerInterceptor);
+        OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor = new OptimisticLockerInnerInterceptor();
+        interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor);
+        return interceptor;
+    }
+
+}

+ 66 - 0
purchase-system/src/main/java/com/ozs/base/domain/BaseAgency.java

@@ -0,0 +1,66 @@
+package com.ozs.base.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ozs.common.vo.BaseDto;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotEmpty;
+import java.util.Date;
+
+/**
+ * 代理机构管理
+ *
+ * @author sunhh
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+@ApiModel("代理机构参数实体")
+public class BaseAgency extends BaseDto {
+
+    @ApiModelProperty("主键ID")
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    // 代理机构名称
+    @ApiModelProperty("代理机构名称")
+    @NotBlank(message = "代理机构名称不能为空")
+    private String companyName;
+    // 类型
+    @ApiModelProperty("类型")
+    @NotEmpty(message = "类型不能为空")
+    private Integer companyType;
+    // 注册时间
+    @ApiModelProperty("注册时间")
+    @NotEmpty(message = "注册时间不能为空")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date registTime;
+    // 公司性质
+    @ApiModelProperty("公司性质")
+    @NotBlank(message = "公司性质不能为空")
+    private String companyNature;
+    // 公司办公地址
+    @ApiModelProperty("公司办公地址")
+    @NotBlank(message = "公司办公地址不能为空")
+    private String companyAddr;
+    // 公司业务联系人
+    @ApiModelProperty("公司业务联系人")
+    private String companyContacts;
+    // 公司业务联系电话
+    @ApiModelProperty("公司业务联系电话")
+    private String contactsPhone;
+    // 经营范围
+    @ApiModelProperty("经营范围")
+    private String businessScope;
+    // 状态0白,1黑
+    @ApiModelProperty("状态0白,1黑")
+    private Integer status;
+}

+ 19 - 0
purchase-system/src/main/java/com/ozs/base/mapper/BaseAgencyMapper.java

@@ -0,0 +1,19 @@
+package com.ozs.base.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ozs.base.domain.BaseAgency;
+import com.ozs.base.domain.BaseSupplier;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 招标代理机构
+ *
+ * @author sunhh
+ */
+@Mapper
+public interface BaseAgencyMapper extends BaseMapper<BaseAgency> {
+
+
+}

+ 24 - 0
purchase-system/src/main/java/com/ozs/base/service/BaseAgencyService.java

@@ -0,0 +1,24 @@
+package com.ozs.base.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ozs.base.domain.BaseAgency;
+import com.ozs.base.vo.BaseAgentPageReqVo;
+
+/**
+ * 代理机构
+ */
+public interface BaseAgencyService {
+
+    int insert(BaseAgency baseAgency);
+
+    BaseAgency getInfo(Long id);
+
+    int updateInfo(BaseAgency baseAgency);
+
+    int operationBlacklist(BaseAgency baseAgency);
+
+    IPage<BaseAgency> page(Page<BaseAgency> baseAgencyPage, BaseAgentPageReqVo vo);
+
+    int remove(Long id);
+}

+ 80 - 0
purchase-system/src/main/java/com/ozs/base/service/impl/BaseAgencyServiceImpl.java

@@ -0,0 +1,80 @@
+package com.ozs.base.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ozs.base.domain.BaseAgency;
+import com.ozs.base.mapper.BaseAgencyMapper;
+import com.ozs.base.service.BaseAgencyService;
+import com.ozs.base.vo.BaseAgentPageReqVo;
+import com.ozs.common.constant.HttpStatus;
+import com.ozs.common.exception.base.BaseException;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.ObjectUtils;
+
+import java.util.Arrays;
+
+@Service
+@Slf4j
+public class BaseAgencyServiceImpl implements BaseAgencyService {
+
+    @Autowired
+    private BaseAgencyMapper baseAgencyMapper;
+
+
+    @Override
+    public int insert(BaseAgency baseAgency) {
+        return baseAgencyMapper.insert(baseAgency);
+    }
+
+    @Override
+    public BaseAgency getInfo(Long id) {
+        return baseAgencyMapper.selectById(id);
+    }
+
+    @Override
+    public int updateInfo(BaseAgency baseAgency) {
+        return baseAgencyMapper.updateById(baseAgency);
+    }
+
+
+    @Override
+    public int operationBlacklist(BaseAgency baseAgency) {
+        LambdaUpdateWrapper<BaseAgency> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
+        //eq是指你查询的条件,set是指你修改的值
+        lambdaUpdateWrapper
+                .eq(BaseAgency::getId, baseAgency.getId())
+                .set(BaseAgency::getStatus, baseAgency.getStatus())
+                .set(BaseAgency::getUpdated, baseAgency.getUpdated()).
+                set(BaseAgency::getUpdateTime, baseAgency.getUpdateTime());
+        return baseAgencyMapper.update(null, lambdaUpdateWrapper);
+    }
+
+    @Override
+    public IPage<BaseAgency> page(Page<BaseAgency> baseAgencyPage, BaseAgentPageReqVo vo) {
+        LambdaQueryWrapper<BaseAgency> lw = new LambdaQueryWrapper<BaseAgency>();
+        if(!StringUtils.isBlank(vo.getCompanyName())){
+            lw.like(BaseAgency::getCompanyName,vo.getCompanyName());
+        }
+        if(!StringUtils.isBlank(vo.getCompanyNature())){
+            lw.eq(BaseAgency::getCompanyNature,vo.getCompanyNature());
+        }
+        if(!ObjectUtils.isEmpty(vo.getStatus())){
+            lw.eq(BaseAgency::getStatus,vo.getStatus());
+        }
+        return baseAgencyMapper.selectPage(baseAgencyPage,lw);
+    }
+
+    @Override
+    public int remove(Long id) {
+        BaseAgency baseAgency = baseAgencyMapper.selectById(id);
+        if(ObjectUtils.isEmpty(baseAgency)){
+            throw  new BaseException("BaseAgency", HttpStatus.NO_CONTENT+"", Arrays.asList(id).toArray(),"数据不存在");
+        }
+        return baseAgencyMapper.deleteById(id);
+    }
+}

+ 32 - 0
purchase-system/src/main/java/com/ozs/base/vo/BaseAgentPageReqVo.java

@@ -0,0 +1,32 @@
+package com.ozs.base.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ozs.common.core.domain.BaseEntity;
+import com.ozs.common.vo.PageVo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotEmpty;
+import java.util.Date;
+
+
+@ApiModel(value = "BaseAgentPageReqVo", description = "代理机构分页查询实体")
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class BaseAgentPageReqVo extends PageVo {
+
+
+    @ApiModelProperty("代理机构名称")
+    private String companyName;
+    // 公司性质
+    @ApiModelProperty("公司性质")
+    private String companyNature;
+    // 状态0白,1黑
+    @ApiModelProperty("状态0白,1黑")
+    private Integer status;
+}