This commit is contained in:
houjishuang
2025-05-27 17:10:43 +08:00
parent 6effe2afd1
commit dd409554ab
9 changed files with 950 additions and 0 deletions

View File

@ -0,0 +1,103 @@
package com.chinaunicom.zyhy.ebtp.supplier.base.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.zyhy.ebtp.supplier.base.entity.CoscoSupplierBase;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.ICoscoSupplierBaseService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.Valid;
/**
* 中远海运供应商基本信息Controller
* @author Craft
* @date 2024-01-29
*/
@Validated
@RestController
@RequestMapping("/supplier/base")
@Api(tags = "中远海运供应商基本信息管理")
public class CoscoSupplierBaseController {
@Resource
private ICoscoSupplierBaseService coscoSupplierBaseService;
/**
* 插入新数据
*
* @param coscoSupplierBase 实体类
* @return 返回结果
*/
@ApiOperation("插入新数据")
@PostMapping("")
public BaseResponse<Boolean> insert(@ApiParam(value = "对象数据", required = true) @RequestBody @Valid CoscoSupplierBase coscoSupplierBase) {
return BaseResponse.success(coscoSupplierBaseService.save(coscoSupplierBase));
}
/**
* 修改数据
*
* @param coscoSupplierBase 实体类
* @return 返回结果
*/
@ApiOperation("修改数据")
@PostMapping("/update")
public BaseResponse<Boolean> update(@ApiParam(value = "对象数据", required = true) @RequestBody CoscoSupplierBase coscoSupplierBase) {
return BaseResponse.success(coscoSupplierBaseService.updateById(coscoSupplierBase));
}
/**
* 查询数据
*
* @param id 实体类主键
* @return 返回结果
*/
@ApiOperation("查询数据")
@GetMapping("/{id}")
public BaseResponse<CoscoSupplierBase> get(@ApiParam(value = "主键id", required = true) @PathVariable String id) {
return BaseResponse.success(coscoSupplierBaseService.getById(id));
}
/**
* 删除数据
*
* @param id 实体ID
* @return 返回结果
*/
@ApiOperation("删除数据")
@GetMapping("/delete/{id}")
public BaseResponse<Boolean> delete(@ApiParam(value = "主键id", required = true) @PathVariable String id) {
return BaseResponse.success(coscoSupplierBaseService.removeById(id));
}
/**
* 查询分页数据
*
* @param pageNum 页码
* @param pageSize 每页数量
* @param name 供应商名称(可选)
* @return 返回结果
*/
@ApiOperation("查询分页数据")
@GetMapping("/getPage")
public BaseResponse<IPage<CoscoSupplierBase>> getPage(
@ApiParam(value = "页码", required = true) @RequestParam(defaultValue = "1") Integer pageNum,
@ApiParam(value = "每页数量", required = true) @RequestParam(defaultValue = "10") Integer pageSize,
@ApiParam(value = "供应商名称") @RequestParam(required = false) String name) {
Page<CoscoSupplierBase> page = new Page<>(pageNum, pageSize);
QueryWrapper<CoscoSupplierBase> queryWrapper = new QueryWrapper<>();
if (name != null && !name.isEmpty()) {
queryWrapper.like("name", name);
}
return BaseResponse.success(coscoSupplierBaseService.page(page, queryWrapper));
}
}

View File

@ -0,0 +1,19 @@
package com.chinaunicom.zyhy.ebtp.supplier.base.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.chinaunicom.zyhy.ebtp.supplier.base.dto.CoscoSupplierBaseDTO;
import com.chinaunicom.zyhy.ebtp.supplier.base.entity.CoscoSupplierBase;
import com.chinaunicom.zyhy.ebtp.supplier.base.vo.SupplierAccessedOfMyOrgVO;
import org.apache.ibatis.annotations.Mapper;
/**
* 中远海运供应商基本信息Mapper接口
* @author Craft
* @date 2024-01-29
*/
@Mapper
public interface CoscoSupplierBaseMapper extends BaseMapper<CoscoSupplierBase> {
IPage<CoscoSupplierBaseDTO> getAccessedOfMyOrgPage(IPage<CoscoSupplierBaseDTO> page, SupplierAccessedOfMyOrgVO coscoSupplierBase);
}

View File

@ -0,0 +1,283 @@
package com.chinaunicom.zyhy.ebtp.supplier.base.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* 中远海运供应商基本信息DTO
* @author Craft
* @date 2024-01-29
*/
@Data
@Accessors(chain = true)
@ApiModel(description = "中远海运供应商基本信息DTO")
public class CoscoSupplierBaseDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ApiModelProperty(value = "主键ID")
private String id;
/**
* 身份类型
*/
@ApiModelProperty(value = "身份类型")
private String type;
/**
* 供应商分类 -- 字典code
*/
@ApiModelProperty(value = "供应商分类 -- 字典code")
private String kindCode;
/**
* 供应商分类 -- 字典名称
*/
@ApiModelProperty(value = "供应商分类 -- 字典名称")
private String kindName;
/**
* 营业执照附件
*/
@ApiModelProperty(value = "营业执照附件")
private String licenceAccessory;
/**
* 营业执照有效期
*/
@ApiModelProperty(value = "营业执照有效期")
private String licenceDate;
/**
* 企业名称
*/
@ApiModelProperty(value = "企业名称")
private String name;
/**
* 英文名称
*/
@ApiModelProperty(value = "英文名称")
private String engName;
/**
* 统一社会信用代码
*/
@ApiModelProperty(value = "统一社会信用代码")
private String socialCreditCode;
/**
* 经营范围
*/
@ApiModelProperty(value = "经营范围")
private String range;
/**
* 注册地址
*/
@ApiModelProperty(value = "注册地址")
private String regAddress;
/**
* 办公地址
*/
@ApiModelProperty(value = "办公地址")
private String workAddress;
/**
* 母公司出资人信息
*/
@ApiModelProperty(value = "母公司出资人信息")
private String parentCompanyInvestor;
/**
* 企业法定代表人
*/
@ApiModelProperty(value = "企业法定代表人")
private String legalPerson;
/**
* 身份证
*/
@ApiModelProperty(value = "身份证")
private String idCard;
/**
* 企业性质
*/
@ApiModelProperty(value = "企业性质")
private String nature;
/**
* 注册资本
*/
@ApiModelProperty(value = "注册资本")
private BigDecimal capital;
/**
* 供应商类型 -- 字典
*/
@ApiModelProperty(value = "供应商类型 -- 字典")
private String categoryTypeCode;
/**
* 供应商类型 --字典名称
*/
@ApiModelProperty(value = "供应商类型 --字典名称")
private String categoryTypeName;
/**
* 联系人姓名
*/
@ApiModelProperty(value = "联系人姓名")
private String contactsName;
/**
* 联系人手机
*/
@ApiModelProperty(value = "联系人手机")
private String contactsPhone;
/**
* 联系人身份类别
*/
@ApiModelProperty(value = "联系人身份类别")
private String contactsType;
/**
* 联系人邮箱
*/
@ApiModelProperty(value = "联系人邮箱")
private String contactsEmail;
/**
* 固定电话
*/
@ApiModelProperty(value = "固定电话")
private String telephone;
/**
* 境外企业- 国家地区
*/
@ApiModelProperty(value = "境外企业- 国家地区")
private String nation;
/**
* 境外企业-增值税号VAT
*/
@ApiModelProperty(value = "境外企业-增值税号VAT")
private String vat;
/**
* 境外企业-境外纳税人ID号
*/
@ApiModelProperty(value = "境外企业-境外纳税人ID号")
private String taxpayerId;
/**
* 境外企业-币种
*/
@ApiModelProperty(value = "境外企业-币种")
private String currency;
/**
* 供应商反商业贿赂承诺书
*/
@ApiModelProperty(value = "供应商反商业贿赂承诺书")
private String commitment;
/**
* 其他附件
*/
@ApiModelProperty(value = "其他附件")
private String accessory;
/**
* 姓名-- 个人
*/
@ApiModelProperty(value = "姓名-- 个人")
private String personName;
/**
* 联系电话-- 个人
*/
@ApiModelProperty(value = "联系电话-- 个人")
private String personPhone;
/**
* 开户行-- 个人
*/
@ApiModelProperty(value = "开户行-- 个人")
private String personBank;
/**
* 银行账号-- 个人
*/
@ApiModelProperty(value = "银行账号-- 个人")
private String personAccount;
/**
* 相关证照文件id
*/
@ApiModelProperty(value = "相关证照文件id")
private String licence;
/**
* 供应商状态 是否合格
*/
@ApiModelProperty(value = "供应商状态 是否合格")
private Integer status;
/**
* 审批状态
*/
@ApiModelProperty(value = "审批状态")
private Integer approveStatus;
/**
* 备注
*/
@ApiModelProperty(value = "备注")
private String remark;
/**
* 是否在黑名单
*/
@ApiModelProperty(value = "是否在黑名单")
private Integer inBlacklist;
/**
* 是否第一次登录
*/
@ApiModelProperty(value = "是否第一次登录")
private Integer firstLogin;
/**
* 是否是-退出供应商
*/
@ApiModelProperty(value = "是否是-退出供应商")
private Integer exit;
/**
* 是否是代理商
*/
@ApiModelProperty(value = "是否是代理商")
private Integer agent;
/**
* sap_code 约束付款编码
*/
@ApiModelProperty(value = "sap_code 约束付款编码")
private String sapCode;
}

View File

@ -0,0 +1,314 @@
package com.chinaunicom.zyhy.ebtp.supplier.base.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* 中远海运供应商基本信息实体类
* @author Craft
* @date 2024-01-29
*/
@Data
@Accessors(chain = true)
@ApiModel(description = "中远海运供应商基本信息")
@TableName(value = "cosco_supplier_base", autoResultMap = true)
public class CoscoSupplierBase extends BaseEntity implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ApiModelProperty(value = "主键ID")
private String id;
/**
* 身份类型
*/
@ApiModelProperty(value = "身份类型")
private String type;
/**
* 供应商分类 -- 字典code
*/
@ApiModelProperty(value = "供应商分类 -- 字典code")
private String kindCode;
/**
* 供应商分类 -- 字典名称
*/
@ApiModelProperty(value = "供应商分类 -- 字典名称")
private String kindName;
/**
* 营业执照附件
*/
@ApiModelProperty(value = "营业执照附件")
private String licenceAccessory;
/**
* 营业执照有效期
*/
@ApiModelProperty(value = "营业执照有效期")
private String licenceDate;
/**
* 企业名称
*/
@ApiModelProperty(value = "企业名称")
private String name;
/**
* 英文名称
*/
@ApiModelProperty(value = "英文名称")
private String engName;
/**
* 统一社会信用代码
*/
@ApiModelProperty(value = "统一社会信用代码")
private String socialCreditCode;
/**
* 经营范围
*/
@ApiModelProperty(value = "经营范围")
private String range;
/**
* 注册地址
*/
@ApiModelProperty(value = "注册地址")
private String regAddress;
/**
* 办公地址
*/
@ApiModelProperty(value = "办公地址")
private String workAddress;
/**
* 母公司出资人信息
*/
@ApiModelProperty(value = "母公司出资人信息")
private String parentCompanyInvestor;
/**
* 企业法定代表人
*/
@ApiModelProperty(value = "企业法定代表人")
private String legalPerson;
/**
* 身份证
*/
@ApiModelProperty(value = "身份证")
private String idCard;
/**
* 企业性质
*/
@ApiModelProperty(value = "企业性质")
private String nature;
/**
* 注册资本
*/
@ApiModelProperty(value = "注册资本")
private BigDecimal capital;
/**
* 供应商类型 -- 字典
*/
@ApiModelProperty(value = "供应商类型 -- 字典")
private String categoryTypeCode;
/**
* 供应商类型 --字典名称
*/
@ApiModelProperty(value = "供应商类型 --字典名称")
private String categoryTypeName;
/**
* 联系人姓名
*/
@ApiModelProperty(value = "联系人姓名")
private String contactsName;
/**
* 联系人手机
*/
@ApiModelProperty(value = "联系人手机")
private String contactsPhone;
/**
* 联系人身份类别
*/
@ApiModelProperty(value = "联系人身份类别")
private String contactsType;
/**
* 联系人邮箱
*/
@ApiModelProperty(value = "联系人邮箱")
private String contactsEmail;
/**
* 固定电话
*/
@ApiModelProperty(value = "固定电话")
private String telephone;
/**
* 境外企业- 国家地区
*/
@ApiModelProperty(value = "境外企业- 国家地区")
private String nation;
/**
* 境外企业-增值税号VAT
*/
@ApiModelProperty(value = "境外企业-增值税号VAT")
private String vat;
/**
* 境外企业-境外纳税人ID号
*/
@ApiModelProperty(value = "境外企业-境外纳税人ID号")
private String taxpayerId;
/**
* 境外企业-币种
*/
@ApiModelProperty(value = "境外企业-币种")
private String currency;
/**
* 供应商反商业贿赂承诺书
*/
@ApiModelProperty(value = "供应商反商业贿赂承诺书")
private String commitment;
/**
* 其他附件
*/
@ApiModelProperty(value = "其他附件")
private String accessory;
/**
* 姓名-- 个人
*/
@ApiModelProperty(value = "姓名-- 个人")
private String personName;
/**
* 联系电话-- 个人
*/
@ApiModelProperty(value = "联系电话-- 个人")
private String personPhone;
/**
* 开户行-- 个人
*/
@ApiModelProperty(value = "开户行-- 个人")
private String personBank;
/**
* 银行账号-- 个人
*/
@ApiModelProperty(value = "银行账号-- 个人")
private String personAccount;
/**
* 相关证照文件id
*/
@ApiModelProperty(value = "相关证照文件id")
private String licence;
/**
* 供应商状态 是否合格
*/
@ApiModelProperty(value = "供应商状态 是否合格")
private Integer status;
/**
* 审批状态
*/
@ApiModelProperty(value = "审批状态")
private Integer approveStatus;
/**
* 创建者
*/
@ApiModelProperty(value = "创建者")
private String createBy;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
/**
* 更新者
*/
@ApiModelProperty(value = "更新者")
private String updateBy;
/**
* 更新时间
*/
@ApiModelProperty(value = "更新时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime;
/**
* 备注
*/
@ApiModelProperty(value = "备注")
private String remark;
/**
* 是否在黑名单
*/
@ApiModelProperty(value = "是否在黑名单")
private Integer inBlacklist;
/**
* 是否第一次登录
*/
@ApiModelProperty(value = "是否第一次登录")
private Integer firstLogin;
/**
* 是否是-退出供应商
*/
@ApiModelProperty(value = "是否是-退出供应商")
private Integer exit;
/**
* 是否是代理商
*/
@ApiModelProperty(value = "是否是代理商")
private Integer agent;
/**
* sap_code 约束付款编码
*/
@ApiModelProperty(value = "sap_code 约束付款编码")
private String sapCode;
}

View File

@ -0,0 +1,12 @@
package com.chinaunicom.zyhy.ebtp.supplier.base.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.chinaunicom.zyhy.ebtp.supplier.base.entity.CoscoSupplierBase;
/**
* 中远海运供应商基本信息Service接口
* @author Craft
* @date 2024-01-29
*/
public interface ICoscoSupplierBaseService extends IService<CoscoSupplierBase> {
}

View File

@ -0,0 +1,16 @@
package com.chinaunicom.zyhy.ebtp.supplier.base.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.chinaunicom.zyhy.ebtp.supplier.base.dao.CoscoSupplierBaseMapper;
import com.chinaunicom.zyhy.ebtp.supplier.base.entity.CoscoSupplierBase;
import com.chinaunicom.zyhy.ebtp.supplier.base.service.ICoscoSupplierBaseService;
import org.springframework.stereotype.Service;
/**
* 中远海运供应商基本信息Service实现类
* @author Craft
* @date 2024-01-29
*/
@Service
public class CoscoSupplierBaseServiceImpl extends ServiceImpl<CoscoSupplierBaseMapper, CoscoSupplierBase> implements ICoscoSupplierBaseService {
}

View File

@ -0,0 +1,79 @@
package com.chinaunicom.zyhy.ebtp.supplier.base.vo;
import com.chinaunicom.mall.ebtp.common.base.entity.BasePageRequest;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.time.LocalDateTime;
@Data
@Accessors(chain = true)
@ApiModel(description = "本单位所有准入合格供应商信息VO")
@NoArgsConstructor
public class SupplierAccessedOfMyOrgVO extends BasePageRequest {
/**
* 企业名称
*/
@ApiModelProperty(value = "企业名称")
private String name;
/**
* 品类 -- 字典
*/
@ApiModelProperty(value = "品类code")
private String categoryTypeCode;
/**
* 品类名称
*/
@ApiModelProperty(value = "品类名称")
private String categoryTypeName;
/**
* 供应商状态 是否合格
*/
@ApiModelProperty(value = "供应商状态 是否合格")
private Integer status;
/**
* 审批状态
*/
@ApiModelProperty(value = "审批状态")
private Integer approveStatus;
/**
* 是否是代理商
*/
@ApiModelProperty(value = "是否是代理商")
private Integer agent;
/**
* 境内/境外
*/
private String supplierType;
private String deptId;//准入部门
private LocalDateTime endTime;//准入时间
}

View File

@ -0,0 +1,15 @@
package com.chinaunicom.zyhy.ebtp.supplier.bizsupplierregister.controller;
import io.swagger.annotations.Api;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Validated
@RestController
@Api(tags = "供应商准入")
@RequestMapping("/api/bizsupplieraccess")
public class BizSupplierAccessController {
}

View File

@ -0,0 +1,109 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.chinaunicom.zyhy.ebtp.supplier.base.dao.CoscoSupplierBaseMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.chinaunicom.zyhy.ebtp.supplier.base.entity.CoscoSupplierBase">
<id column="id" property="id"/>
<result column="type" property="type"/>
<result column="kind_code" property="kindCode"/>
<result column="kind_name" property="kindName"/>
<result column="licence_accessory" property="licenceAccessory"/>
<result column="licence_date" property="licenceDate"/>
<result column="name" property="name"/>
<result column="eng_name" property="engName"/>
<result column="social_credit_code" property="socialCreditCode"/>
<result column="range" property="range"/>
<result column="reg_address" property="regAddress"/>
<result column="work_address" property="workAddress"/>
<result column="parent_company_investor" property="parentCompanyInvestor"/>
<result column="legal_person" property="legalPerson"/>
<result column="id_card" property="idCard"/>
<result column="nature" property="nature"/>
<result column="capital" property="capital"/>
<result column="category_type_code" property="categoryTypeCode"/>
<result column="category_type_name" property="categoryTypeName"/>
<result column="contacts_name" property="contactsName"/>
<result column="contacts_phone" property="contactsPhone"/>
<result column="contacts_type" property="contactsType"/>
<result column="contacts_email" property="contactsEmail"/>
<result column="telephone" property="telephone"/>
<result column="nation" property="nation"/>
<result column="vat" property="vat"/>
<result column="taxpayer_id" property="taxpayerId"/>
<result column="currency" property="currency"/>
<result column="commitment" property="commitment"/>
<result column="accessory" property="accessory"/>
<result column="person_name" property="personName"/>
<result column="person_phone" property="personPhone"/>
<result column="person_bank" property="personBank"/>
<result column="person_account" property="personAccount"/>
<result column="licence" property="licence"/>
<result column="status" property="status"/>
<result column="approve_status" property="approveStatus"/>
<result column="create_by" property="createBy"/>
<result column="create_time" property="createTime"/>
<result column="update_by" property="updateBy"/>
<result column="update_time" property="updateTime"/>
<result column="remark" property="remark"/>
<result column="in_blacklist" property="inBlacklist"/>
<result column="first_login" property="firstLogin"/>
<result column="exit" property="exit"/>
<result column="agent" property="agent"/>
<result column="sap_code" property="sapCode"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, type, kind_code, kind_name, licence_accessory, licence_date, name, eng_name, social_credit_code,
range, reg_address, work_address, parent_company_investor, legal_person, id_card, nature, capital,
category_type_code, category_type_name, contacts_name, contacts_phone, contacts_type, contacts_email,
telephone, nation, vat, taxpayer_id, currency, commitment, accessory, person_name, person_phone,
person_bank, person_account, licence, status, approve_status, create_by, create_time, update_by,
update_time, remark, in_blacklist, first_login, exit, agent, sap_code
</sql>
<!-- 根据条件查询供应商列表 -->
<select id="selectSupplierList" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from cosco_supplier_base
<where>
<if test="name != null and name != ''">
AND name like concat('%', #{name}, '%')
</if>
<if test="type != null and type != ''">
AND type = #{type}
</if>
<if test="status != null">
AND status = #{status}
</if>
</where>
order by create_time desc
</select>
<!-- 根据社会信用代码查询供应商 -->
<select id="selectBySocialCreditCode" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from cosco_supplier_base
where social_credit_code = #{socialCreditCode}
</select>
<select id="getAccessedOfMyOrgPage"
resultType="com.chinaunicom.zyhy.ebtp.supplier.base.dto.CoscoSupplierBaseDTO">
select
<include refid="Base_Column_List"/>
from cosco_supplier_base
where status = 1
<if test="name != null and name != ''">
AND name like concat('%', #{name}, '%')
</if>
<if test="categoryTypeCode != null and categoryTypeCode != ''">
AND category_type_code = #{categoryTypeCode}
</if>
<if test="agent != null">
AND agent = #{agent}
</if>
</select>
</mapper>