From e3d70c37f2f06af467a88a78fd7474cca01d03bc Mon Sep 17 00:00:00 2001 From: hshansha Date: Wed, 10 Dec 2025 16:30:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=85=AC=E5=8F=B8=E5=8F=8A?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E8=B5=84=E8=B4=A8=E8=AF=81=E4=B9=A6=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bid/controller/BidCompanyController.java | 104 ++ .../bid/controller/BidSiteController.java | 13 + .../bid/controller/BidZizhiController.java | 104 ++ .../java/com/ruoyi/bid/domain/BidCompany.java | 782 ++++++++++++++ .../java/com/ruoyi/bid/domain/BidZizhi.java | 68 ++ .../ruoyi/bid/mapper/BidCompanyMapper.java | 61 ++ .../com/ruoyi/bid/mapper/BidZizhiMapper.java | 61 ++ .../ruoyi/bid/service/IBidCompanyService.java | 61 ++ .../ruoyi/bid/service/IBidZizhiService.java | 61 ++ .../service/impl/BidCompanyServiceImpl.java | 93 ++ .../bid/service/impl/BidZizhiServiceImpl.java | 93 ++ .../resources/mapper/bid/BidCompanyMapper.xml | 296 ++++++ .../resources/mapper/bid/BidZizhiMapper.xml | 65 ++ ruoyi-ui/src/api/bid/company.js | 44 + ruoyi-ui/src/api/bid/zizhi.js | 44 + ruoyi-ui/src/views/bid/company/index.vue | 954 ++++++++++++++++++ ruoyi-ui/src/views/bid/zizhi/index.vue | 264 +++++ ruoyi-ui/vue.config.js | 2 +- 18 files changed, 3169 insertions(+), 1 deletion(-) create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidCompanyController.java create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidZizhiController.java create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/domain/BidCompany.java create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/domain/BidZizhi.java create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/mapper/BidCompanyMapper.java create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/mapper/BidZizhiMapper.java create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/service/IBidCompanyService.java create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/service/IBidZizhiService.java create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/service/impl/BidCompanyServiceImpl.java create mode 100644 ruoyi-bid/src/main/java/com/ruoyi/bid/service/impl/BidZizhiServiceImpl.java create mode 100644 ruoyi-bid/src/main/resources/mapper/bid/BidCompanyMapper.xml create mode 100644 ruoyi-bid/src/main/resources/mapper/bid/BidZizhiMapper.xml create mode 100644 ruoyi-ui/src/api/bid/company.js create mode 100644 ruoyi-ui/src/api/bid/zizhi.js create mode 100644 ruoyi-ui/src/views/bid/company/index.vue create mode 100644 ruoyi-ui/src/views/bid/zizhi/index.vue diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidCompanyController.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidCompanyController.java new file mode 100644 index 0000000..7aeb80b --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidCompanyController.java @@ -0,0 +1,104 @@ +package com.ruoyi.bid.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.bid.domain.BidCompany; +import com.ruoyi.bid.service.IBidCompanyService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; + +/** + * 公司信息Controller + * + * @author ruoyi + * @date 2025-12-10 + */ +@RestController +@RequestMapping("/bid/company") +public class BidCompanyController extends BaseController +{ + @Autowired + private IBidCompanyService bidCompanyService; + + /** + * 查询公司信息列表 + */ + @PreAuthorize("@ss.hasPermi('bid:company:list')") + @GetMapping("/list") + public TableDataInfo list(BidCompany bidCompany) + { + startPage(); + List list = bidCompanyService.selectBidCompanyList(bidCompany); + return getDataTable(list); + } + + /** + * 导出公司信息列表 + */ + @PreAuthorize("@ss.hasPermi('bid:company:export')") + @Log(title = "公司信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BidCompany bidCompany) + { + List list = bidCompanyService.selectBidCompanyList(bidCompany); + ExcelUtil util = new ExcelUtil(BidCompany.class); + util.exportExcel(response, list, "公司信息数据"); + } + + /** + * 获取公司信息详细信息 + */ + @PreAuthorize("@ss.hasPermi('bid:company:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(bidCompanyService.selectBidCompanyById(id)); + } + + /** + * 新增公司信息 + */ + @PreAuthorize("@ss.hasPermi('bid:company:add')") + @Log(title = "公司信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BidCompany bidCompany) + { + return toAjax(bidCompanyService.insertBidCompany(bidCompany)); + } + + /** + * 修改公司信息 + */ + @PreAuthorize("@ss.hasPermi('bid:company:edit')") + @Log(title = "公司信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BidCompany bidCompany) + { + return toAjax(bidCompanyService.updateBidCompany(bidCompany)); + } + + /** + * 删除公司信息 + */ + @PreAuthorize("@ss.hasPermi('bid:company:remove')") + @Log(title = "公司信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(bidCompanyService.deleteBidCompanyByIds(ids)); + } +} diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidSiteController.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidSiteController.java index 3792d55..2600b02 100644 --- a/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidSiteController.java +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidSiteController.java @@ -79,6 +79,19 @@ public class BidSiteController extends BaseController { return toAjax(bidSiteService.insertBidSite(bidSite)); } + /** + * 新增常用网站 + */ + @PreAuthorize("@ss.hasPermi('bid:site:add')") + @Log(title = "常用网站", businessType = BusinessType.INSERT) + @PostMapping("/adds") + public AjaxResult adds(@RequestBody List bidSites) + { + for (BidSite bidSite : bidSites) { + bidSiteService.insertBidSite(bidSite); + } + return toAjax(1); + } /** * 修改常用网站 diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidZizhiController.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidZizhiController.java new file mode 100644 index 0000000..6c2f3b1 --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/controller/BidZizhiController.java @@ -0,0 +1,104 @@ +package com.ruoyi.bid.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.bid.domain.BidZizhi; +import com.ruoyi.bid.service.IBidZizhiService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; + +/** + * 资质证书Controller + * + * @author ruoyi + * @date 2025-12-10 + */ +@RestController +@RequestMapping("/bid/zizhi") +public class BidZizhiController extends BaseController +{ + @Autowired + private IBidZizhiService bidZizhiService; + + /** + * 查询资质证书列表 + */ + @PreAuthorize("@ss.hasPermi('bid:zizhi:list')") + @GetMapping("/list") + public TableDataInfo list(BidZizhi bidZizhi) + { + startPage(); + List list = bidZizhiService.selectBidZizhiList(bidZizhi); + return getDataTable(list); + } + + /** + * 导出资质证书列表 + */ + @PreAuthorize("@ss.hasPermi('bid:zizhi:export')") + @Log(title = "资质证书", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BidZizhi bidZizhi) + { + List list = bidZizhiService.selectBidZizhiList(bidZizhi); + ExcelUtil util = new ExcelUtil(BidZizhi.class); + util.exportExcel(response, list, "资质证书数据"); + } + + /** + * 获取资质证书详细信息 + */ + @PreAuthorize("@ss.hasPermi('bid:zizhi:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(bidZizhiService.selectBidZizhiById(id)); + } + + /** + * 新增资质证书 + */ + @PreAuthorize("@ss.hasPermi('bid:zizhi:add')") + @Log(title = "资质证书", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BidZizhi bidZizhi) + { + return toAjax(bidZizhiService.insertBidZizhi(bidZizhi)); + } + + /** + * 修改资质证书 + */ + @PreAuthorize("@ss.hasPermi('bid:zizhi:edit')") + @Log(title = "资质证书", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BidZizhi bidZizhi) + { + return toAjax(bidZizhiService.updateBidZizhi(bidZizhi)); + } + + /** + * 删除资质证书 + */ + @PreAuthorize("@ss.hasPermi('bid:zizhi:remove')") + @Log(title = "资质证书", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(bidZizhiService.deleteBidZizhiByIds(ids)); + } +} diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/domain/BidCompany.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/domain/BidCompany.java new file mode 100644 index 0000000..5721dd4 --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/domain/BidCompany.java @@ -0,0 +1,782 @@ +package com.ruoyi.bid.domain; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 公司信息对象 bid_company + * + * @author ruoyi + * @date 2025-12-10 + */ +public class BidCompany extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** ID */ + private Long id; + + /** 公司ID */ + @Excel(name = "公司ID") + private String companyId; + + /** 租户代码 */ + @Excel(name = "租户代码") + private String tenantCode; + + /** 公司名称 */ + @Excel(name = "公司名称") + private String companyName; + + /** 帐户名称 */ + @Excel(name = "帐户名称") + private String accountName; + + /** 开户银行 */ + @Excel(name = "开户银行") + private String accountBank; + + /** 银行地址 */ + @Excel(name = "银行地址") + private String bankAddress; + + /** 开户许可证照片 */ + @Excel(name = "开户许可证照片") + private String annex; + + /** 银行账号 */ + @Excel(name = "银行账号") + private String bankAccount; + + /** 银行行号 */ + @Excel(name = "银行行号") + private String bankNo; + + /** 银行电话 */ + @Excel(name = "银行电话") + private String bankPhone; + + /** 授权委托人 */ + @Excel(name = "授权委托人") + private String trueName; + + /** 职位 */ + @Excel(name = "职位") + private String position; + + /** 性别 */ + @Excel(name = "性别") + private String sex; + + /** 身份证照片 */ + @Excel(name = "身份证照片") + private String idPhpto; + + /** 身份证号 */ + @Excel(name = "身份证号") + private String idNumber; + + /** 生日 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd") + private Date birthday; + + /** 开始日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "开始日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date idCardStart; + + /** 结束日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "结束日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date idCardEnd; + + /** 最大进度 */ + @Excel(name = "最大进度") + private String maxProgress; + + /** 企业ID */ + @Excel(name = "企业ID") + private String businessId; + + /** 电话号码 */ + @Excel(name = "电话号码") + private String phoneNumber; + + /** 统一社会信用代码 */ + @Excel(name = "统一社会信用代码") + private String socialCode; + + /** 公司性质 */ + @Excel(name = "公司性质") + private String nature; + + /** 登记机关 */ + @Excel(name = "登记机关") + private String authority; + + /** 开始时间 */ + @Excel(name = "开始时间") + private String startTime; + + /** 邮箱 */ + @Excel(name = "邮箱") + private String email; + + /** 营业执照 */ + @Excel(name = "营业执照") + private String businessLicense; + + /** 法定代表人 */ + @Excel(name = "法定代表人") + private String legalRepresentative; + + /** 注册资本 */ + @Excel(name = "注册资本") + private String registeredCapital; + + /** 地址 */ + @Excel(name = "地址") + private String address; + + /** 完整地址 */ + @Excel(name = "完整地址") + private String fullAddress; + + /** 注册时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "注册时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date registeredTime; + + /** 经营开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "经营开始时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date businessStart; + + /** 经营结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "经营结束时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date businessEnd; + + /** 经营范围 */ + @Excel(name = "经营范围") + private String businessScope; + + /** 企业基础代码 */ + @Excel(name = "企业基础代码") + private String companyBasicId; + + /** 企业大小 */ + @Excel(name = "企业大小") + private String enterpriseSize; + + /** 行业 */ + @Excel(name = "行业") + private String industry; + + /** 网站 */ + @Excel(name = "网站") + private String website; + + /** 公司联系电话 */ + @Excel(name = "公司联系电话") + private String contactPhone; + + /** 邮编 */ + @Excel(name = "邮编") + private String postcode; + + /** 传真 */ + @Excel(name = "传真") + private String fax; + + /** 安全许可证 */ + @Excel(name = "安全许可证") + private String securityLicense; + + /** 安全许可证开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "安全许可证开始时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date securityStart; + + /** 安全许可证结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "安全许可证结束时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date securityEnd; + + /** 结构 */ + @Excel(name = "结构") + private String structure; + + /** 公司简介 */ + @Excel(name = "公司简介") + private String companyProfile; + + /** 描述 */ + @Excel(name = "描述") + private String softPowerText; + + /** 图片 */ + @Excel(name = "图片") + private String softPowerImg; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setCompanyId(String companyId) + { + this.companyId = companyId; + } + + public String getCompanyId() + { + return companyId; + } + + public void setTenantCode(String tenantCode) + { + this.tenantCode = tenantCode; + } + + public String getTenantCode() + { + return tenantCode; + } + + public void setCompanyName(String companyName) + { + this.companyName = companyName; + } + + public String getCompanyName() + { + return companyName; + } + + public void setAccountName(String accountName) + { + this.accountName = accountName; + } + + public String getAccountName() + { + return accountName; + } + + public void setAccountBank(String accountBank) + { + this.accountBank = accountBank; + } + + public String getAccountBank() + { + return accountBank; + } + + public void setBankAddress(String bankAddress) + { + this.bankAddress = bankAddress; + } + + public String getBankAddress() + { + return bankAddress; + } + + public void setAnnex(String annex) + { + this.annex = annex; + } + + public String getAnnex() + { + return annex; + } + + public void setBankAccount(String bankAccount) + { + this.bankAccount = bankAccount; + } + + public String getBankAccount() + { + return bankAccount; + } + + public void setBankNo(String bankNo) + { + this.bankNo = bankNo; + } + + public String getBankNo() + { + return bankNo; + } + + public void setBankPhone(String bankPhone) + { + this.bankPhone = bankPhone; + } + + public String getBankPhone() + { + return bankPhone; + } + + public void setTrueName(String trueName) + { + this.trueName = trueName; + } + + public String getTrueName() + { + return trueName; + } + + public void setPosition(String position) + { + this.position = position; + } + + public String getPosition() + { + return position; + } + + public void setSex(String sex) + { + this.sex = sex; + } + + public String getSex() + { + return sex; + } + + public void setIdPhpto(String idPhpto) + { + this.idPhpto = idPhpto; + } + + public String getIdPhpto() + { + return idPhpto; + } + + public void setIdNumber(String idNumber) + { + this.idNumber = idNumber; + } + + public String getIdNumber() + { + return idNumber; + } + + public void setBirthday(Date birthday) + { + this.birthday = birthday; + } + + public Date getBirthday() + { + return birthday; + } + + public void setIdCardStart(Date idCardStart) + { + this.idCardStart = idCardStart; + } + + public Date getIdCardStart() + { + return idCardStart; + } + + public void setIdCardEnd(Date idCardEnd) + { + this.idCardEnd = idCardEnd; + } + + public Date getIdCardEnd() + { + return idCardEnd; + } + + public void setMaxProgress(String maxProgress) + { + this.maxProgress = maxProgress; + } + + public String getMaxProgress() + { + return maxProgress; + } + + public void setBusinessId(String businessId) + { + this.businessId = businessId; + } + + public String getBusinessId() + { + return businessId; + } + + public void setPhoneNumber(String phoneNumber) + { + this.phoneNumber = phoneNumber; + } + + public String getPhoneNumber() + { + return phoneNumber; + } + + public void setSocialCode(String socialCode) + { + this.socialCode = socialCode; + } + + public String getSocialCode() + { + return socialCode; + } + + public void setNature(String nature) + { + this.nature = nature; + } + + public String getNature() + { + return nature; + } + + public void setAuthority(String authority) + { + this.authority = authority; + } + + public String getAuthority() + { + return authority; + } + + public void setStartTime(String startTime) + { + this.startTime = startTime; + } + + public String getStartTime() + { + return startTime; + } + + public void setEmail(String email) + { + this.email = email; + } + + public String getEmail() + { + return email; + } + + public void setBusinessLicense(String businessLicense) + { + this.businessLicense = businessLicense; + } + + public String getBusinessLicense() + { + return businessLicense; + } + + public void setLegalRepresentative(String legalRepresentative) + { + this.legalRepresentative = legalRepresentative; + } + + public String getLegalRepresentative() + { + return legalRepresentative; + } + + public void setRegisteredCapital(String registeredCapital) + { + this.registeredCapital = registeredCapital; + } + + public String getRegisteredCapital() + { + return registeredCapital; + } + + public void setAddress(String address) + { + this.address = address; + } + + public String getAddress() + { + return address; + } + + public void setFullAddress(String fullAddress) + { + this.fullAddress = fullAddress; + } + + public String getFullAddress() + { + return fullAddress; + } + + public void setRegisteredTime(Date registeredTime) + { + this.registeredTime = registeredTime; + } + + public Date getRegisteredTime() + { + return registeredTime; + } + + public void setBusinessStart(Date businessStart) + { + this.businessStart = businessStart; + } + + public Date getBusinessStart() + { + return businessStart; + } + + public void setBusinessEnd(Date businessEnd) + { + this.businessEnd = businessEnd; + } + + public Date getBusinessEnd() + { + return businessEnd; + } + + public void setBusinessScope(String businessScope) + { + this.businessScope = businessScope; + } + + public String getBusinessScope() + { + return businessScope; + } + + public void setCompanyBasicId(String companyBasicId) + { + this.companyBasicId = companyBasicId; + } + + public String getCompanyBasicId() + { + return companyBasicId; + } + + public void setEnterpriseSize(String enterpriseSize) + { + this.enterpriseSize = enterpriseSize; + } + + public String getEnterpriseSize() + { + return enterpriseSize; + } + + public void setIndustry(String industry) + { + this.industry = industry; + } + + public String getIndustry() + { + return industry; + } + + public void setWebsite(String website) + { + this.website = website; + } + + public String getWebsite() + { + return website; + } + + public void setContactPhone(String contactPhone) + { + this.contactPhone = contactPhone; + } + + public String getContactPhone() + { + return contactPhone; + } + + public void setPostcode(String postcode) + { + this.postcode = postcode; + } + + public String getPostcode() + { + return postcode; + } + + public void setFax(String fax) + { + this.fax = fax; + } + + public String getFax() + { + return fax; + } + + public void setSecurityLicense(String securityLicense) + { + this.securityLicense = securityLicense; + } + + public String getSecurityLicense() + { + return securityLicense; + } + + public void setSecurityStart(Date securityStart) + { + this.securityStart = securityStart; + } + + public Date getSecurityStart() + { + return securityStart; + } + + public void setSecurityEnd(Date securityEnd) + { + this.securityEnd = securityEnd; + } + + public Date getSecurityEnd() + { + return securityEnd; + } + + public void setStructure(String structure) + { + this.structure = structure; + } + + public String getStructure() + { + return structure; + } + + public void setCompanyProfile(String companyProfile) + { + this.companyProfile = companyProfile; + } + + public String getCompanyProfile() + { + return companyProfile; + } + + public void setSoftPowerText(String softPowerText) + { + this.softPowerText = softPowerText; + } + + public String getSoftPowerText() + { + return softPowerText; + } + + public void setSoftPowerImg(String softPowerImg) + { + this.softPowerImg = softPowerImg; + } + + public String getSoftPowerImg() + { + return softPowerImg; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("companyId", getCompanyId()) + .append("tenantCode", getTenantCode()) + .append("companyName", getCompanyName()) + .append("accountName", getAccountName()) + .append("accountBank", getAccountBank()) + .append("bankAddress", getBankAddress()) + .append("annex", getAnnex()) + .append("bankAccount", getBankAccount()) + .append("bankNo", getBankNo()) + .append("bankPhone", getBankPhone()) + .append("trueName", getTrueName()) + .append("position", getPosition()) + .append("sex", getSex()) + .append("idPhpto", getIdPhpto()) + .append("idNumber", getIdNumber()) + .append("birthday", getBirthday()) + .append("idCardStart", getIdCardStart()) + .append("idCardEnd", getIdCardEnd()) + .append("maxProgress", getMaxProgress()) + .append("businessId", getBusinessId()) + .append("phoneNumber", getPhoneNumber()) + .append("socialCode", getSocialCode()) + .append("nature", getNature()) + .append("authority", getAuthority()) + .append("startTime", getStartTime()) + .append("email", getEmail()) + .append("businessLicense", getBusinessLicense()) + .append("legalRepresentative", getLegalRepresentative()) + .append("registeredCapital", getRegisteredCapital()) + .append("address", getAddress()) + .append("fullAddress", getFullAddress()) + .append("registeredTime", getRegisteredTime()) + .append("businessStart", getBusinessStart()) + .append("businessEnd", getBusinessEnd()) + .append("businessScope", getBusinessScope()) + .append("companyBasicId", getCompanyBasicId()) + .append("enterpriseSize", getEnterpriseSize()) + .append("industry", getIndustry()) + .append("website", getWebsite()) + .append("contactPhone", getContactPhone()) + .append("postcode", getPostcode()) + .append("fax", getFax()) + .append("securityLicense", getSecurityLicense()) + .append("securityStart", getSecurityStart()) + .append("securityEnd", getSecurityEnd()) + .append("structure", getStructure()) + .append("companyProfile", getCompanyProfile()) + .append("softPowerText", getSoftPowerText()) + .append("softPowerImg", getSoftPowerImg()) + .toString(); + } +} diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/domain/BidZizhi.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/domain/BidZizhi.java new file mode 100644 index 0000000..8d260b8 --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/domain/BidZizhi.java @@ -0,0 +1,68 @@ +package com.ruoyi.bid.domain; + +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 资质证书对象 bid_zizhi + * + * @author ruoyi + * @date 2025-12-10 + */ +public class BidZizhi extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** ID */ + private Long id; + + /** 租户代码 */ + @Excel(name = "租户代码") + private String tenantCode; + + /** 证书名称 */ + @Excel(name = "证书名称") + private String documentName; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setTenantCode(String tenantCode) + { + this.tenantCode = tenantCode; + } + + public String getTenantCode() + { + return tenantCode; + } + + public void setDocumentName(String documentName) + { + this.documentName = documentName; + } + + public String getDocumentName() + { + return documentName; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("tenantCode", getTenantCode()) + .append("documentName", getDocumentName()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/mapper/BidCompanyMapper.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/mapper/BidCompanyMapper.java new file mode 100644 index 0000000..c6d3b33 --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/mapper/BidCompanyMapper.java @@ -0,0 +1,61 @@ +package com.ruoyi.bid.mapper; + +import java.util.List; +import com.ruoyi.bid.domain.BidCompany; + +/** + * 公司信息Mapper接口 + * + * @author ruoyi + * @date 2025-12-10 + */ +public interface BidCompanyMapper +{ + /** + * 查询公司信息 + * + * @param id 公司信息主键 + * @return 公司信息 + */ + public BidCompany selectBidCompanyById(Long id); + + /** + * 查询公司信息列表 + * + * @param bidCompany 公司信息 + * @return 公司信息集合 + */ + public List selectBidCompanyList(BidCompany bidCompany); + + /** + * 新增公司信息 + * + * @param bidCompany 公司信息 + * @return 结果 + */ + public int insertBidCompany(BidCompany bidCompany); + + /** + * 修改公司信息 + * + * @param bidCompany 公司信息 + * @return 结果 + */ + public int updateBidCompany(BidCompany bidCompany); + + /** + * 删除公司信息 + * + * @param id 公司信息主键 + * @return 结果 + */ + public int deleteBidCompanyById(Long id); + + /** + * 批量删除公司信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBidCompanyByIds(Long[] ids); +} diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/mapper/BidZizhiMapper.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/mapper/BidZizhiMapper.java new file mode 100644 index 0000000..9d87186 --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/mapper/BidZizhiMapper.java @@ -0,0 +1,61 @@ +package com.ruoyi.bid.mapper; + +import java.util.List; +import com.ruoyi.bid.domain.BidZizhi; + +/** + * 资质证书Mapper接口 + * + * @author ruoyi + * @date 2025-12-10 + */ +public interface BidZizhiMapper +{ + /** + * 查询资质证书 + * + * @param id 资质证书主键 + * @return 资质证书 + */ + public BidZizhi selectBidZizhiById(Long id); + + /** + * 查询资质证书列表 + * + * @param bidZizhi 资质证书 + * @return 资质证书集合 + */ + public List selectBidZizhiList(BidZizhi bidZizhi); + + /** + * 新增资质证书 + * + * @param bidZizhi 资质证书 + * @return 结果 + */ + public int insertBidZizhi(BidZizhi bidZizhi); + + /** + * 修改资质证书 + * + * @param bidZizhi 资质证书 + * @return 结果 + */ + public int updateBidZizhi(BidZizhi bidZizhi); + + /** + * 删除资质证书 + * + * @param id 资质证书主键 + * @return 结果 + */ + public int deleteBidZizhiById(Long id); + + /** + * 批量删除资质证书 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBidZizhiByIds(Long[] ids); +} diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/service/IBidCompanyService.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/service/IBidCompanyService.java new file mode 100644 index 0000000..4827878 --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/service/IBidCompanyService.java @@ -0,0 +1,61 @@ +package com.ruoyi.bid.service; + +import java.util.List; +import com.ruoyi.bid.domain.BidCompany; + +/** + * 公司信息Service接口 + * + * @author ruoyi + * @date 2025-12-10 + */ +public interface IBidCompanyService +{ + /** + * 查询公司信息 + * + * @param id 公司信息主键 + * @return 公司信息 + */ + public BidCompany selectBidCompanyById(Long id); + + /** + * 查询公司信息列表 + * + * @param bidCompany 公司信息 + * @return 公司信息集合 + */ + public List selectBidCompanyList(BidCompany bidCompany); + + /** + * 新增公司信息 + * + * @param bidCompany 公司信息 + * @return 结果 + */ + public int insertBidCompany(BidCompany bidCompany); + + /** + * 修改公司信息 + * + * @param bidCompany 公司信息 + * @return 结果 + */ + public int updateBidCompany(BidCompany bidCompany); + + /** + * 批量删除公司信息 + * + * @param ids 需要删除的公司信息主键集合 + * @return 结果 + */ + public int deleteBidCompanyByIds(Long[] ids); + + /** + * 删除公司信息信息 + * + * @param id 公司信息主键 + * @return 结果 + */ + public int deleteBidCompanyById(Long id); +} diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/service/IBidZizhiService.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/service/IBidZizhiService.java new file mode 100644 index 0000000..7b5fee3 --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/service/IBidZizhiService.java @@ -0,0 +1,61 @@ +package com.ruoyi.bid.service; + +import java.util.List; +import com.ruoyi.bid.domain.BidZizhi; + +/** + * 资质证书Service接口 + * + * @author ruoyi + * @date 2025-12-10 + */ +public interface IBidZizhiService +{ + /** + * 查询资质证书 + * + * @param id 资质证书主键 + * @return 资质证书 + */ + public BidZizhi selectBidZizhiById(Long id); + + /** + * 查询资质证书列表 + * + * @param bidZizhi 资质证书 + * @return 资质证书集合 + */ + public List selectBidZizhiList(BidZizhi bidZizhi); + + /** + * 新增资质证书 + * + * @param bidZizhi 资质证书 + * @return 结果 + */ + public int insertBidZizhi(BidZizhi bidZizhi); + + /** + * 修改资质证书 + * + * @param bidZizhi 资质证书 + * @return 结果 + */ + public int updateBidZizhi(BidZizhi bidZizhi); + + /** + * 批量删除资质证书 + * + * @param ids 需要删除的资质证书主键集合 + * @return 结果 + */ + public int deleteBidZizhiByIds(Long[] ids); + + /** + * 删除资质证书信息 + * + * @param id 资质证书主键 + * @return 结果 + */ + public int deleteBidZizhiById(Long id); +} diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/service/impl/BidCompanyServiceImpl.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/service/impl/BidCompanyServiceImpl.java new file mode 100644 index 0000000..bd150ae --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/service/impl/BidCompanyServiceImpl.java @@ -0,0 +1,93 @@ +package com.ruoyi.bid.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.ruoyi.bid.mapper.BidCompanyMapper; +import com.ruoyi.bid.domain.BidCompany; +import com.ruoyi.bid.service.IBidCompanyService; + +/** + * 公司信息Service业务层处理 + * + * @author ruoyi + * @date 2025-12-10 + */ +@Service +public class BidCompanyServiceImpl implements IBidCompanyService +{ + @Autowired + private BidCompanyMapper bidCompanyMapper; + + /** + * 查询公司信息 + * + * @param id 公司信息主键 + * @return 公司信息 + */ + @Override + public BidCompany selectBidCompanyById(Long id) + { + return bidCompanyMapper.selectBidCompanyById(id); + } + + /** + * 查询公司信息列表 + * + * @param bidCompany 公司信息 + * @return 公司信息 + */ + @Override + public List selectBidCompanyList(BidCompany bidCompany) + { + return bidCompanyMapper.selectBidCompanyList(bidCompany); + } + + /** + * 新增公司信息 + * + * @param bidCompany 公司信息 + * @return 结果 + */ + @Override + public int insertBidCompany(BidCompany bidCompany) + { + return bidCompanyMapper.insertBidCompany(bidCompany); + } + + /** + * 修改公司信息 + * + * @param bidCompany 公司信息 + * @return 结果 + */ + @Override + public int updateBidCompany(BidCompany bidCompany) + { + return bidCompanyMapper.updateBidCompany(bidCompany); + } + + /** + * 批量删除公司信息 + * + * @param ids 需要删除的公司信息主键 + * @return 结果 + */ + @Override + public int deleteBidCompanyByIds(Long[] ids) + { + return bidCompanyMapper.deleteBidCompanyByIds(ids); + } + + /** + * 删除公司信息信息 + * + * @param id 公司信息主键 + * @return 结果 + */ + @Override + public int deleteBidCompanyById(Long id) + { + return bidCompanyMapper.deleteBidCompanyById(id); + } +} diff --git a/ruoyi-bid/src/main/java/com/ruoyi/bid/service/impl/BidZizhiServiceImpl.java b/ruoyi-bid/src/main/java/com/ruoyi/bid/service/impl/BidZizhiServiceImpl.java new file mode 100644 index 0000000..3a7c60d --- /dev/null +++ b/ruoyi-bid/src/main/java/com/ruoyi/bid/service/impl/BidZizhiServiceImpl.java @@ -0,0 +1,93 @@ +package com.ruoyi.bid.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.ruoyi.bid.mapper.BidZizhiMapper; +import com.ruoyi.bid.domain.BidZizhi; +import com.ruoyi.bid.service.IBidZizhiService; + +/** + * 资质证书Service业务层处理 + * + * @author ruoyi + * @date 2025-12-10 + */ +@Service +public class BidZizhiServiceImpl implements IBidZizhiService +{ + @Autowired + private BidZizhiMapper bidZizhiMapper; + + /** + * 查询资质证书 + * + * @param id 资质证书主键 + * @return 资质证书 + */ + @Override + public BidZizhi selectBidZizhiById(Long id) + { + return bidZizhiMapper.selectBidZizhiById(id); + } + + /** + * 查询资质证书列表 + * + * @param bidZizhi 资质证书 + * @return 资质证书 + */ + @Override + public List selectBidZizhiList(BidZizhi bidZizhi) + { + return bidZizhiMapper.selectBidZizhiList(bidZizhi); + } + + /** + * 新增资质证书 + * + * @param bidZizhi 资质证书 + * @return 结果 + */ + @Override + public int insertBidZizhi(BidZizhi bidZizhi) + { + return bidZizhiMapper.insertBidZizhi(bidZizhi); + } + + /** + * 修改资质证书 + * + * @param bidZizhi 资质证书 + * @return 结果 + */ + @Override + public int updateBidZizhi(BidZizhi bidZizhi) + { + return bidZizhiMapper.updateBidZizhi(bidZizhi); + } + + /** + * 批量删除资质证书 + * + * @param ids 需要删除的资质证书主键 + * @return 结果 + */ + @Override + public int deleteBidZizhiByIds(Long[] ids) + { + return bidZizhiMapper.deleteBidZizhiByIds(ids); + } + + /** + * 删除资质证书信息 + * + * @param id 资质证书主键 + * @return 结果 + */ + @Override + public int deleteBidZizhiById(Long id) + { + return bidZizhiMapper.deleteBidZizhiById(id); + } +} diff --git a/ruoyi-bid/src/main/resources/mapper/bid/BidCompanyMapper.xml b/ruoyi-bid/src/main/resources/mapper/bid/BidCompanyMapper.xml new file mode 100644 index 0000000..e2dde29 --- /dev/null +++ b/ruoyi-bid/src/main/resources/mapper/bid/BidCompanyMapper.xml @@ -0,0 +1,296 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, companyId, tenant_code, company_name, account_name, account_bank, bank_address, annex, bank_account, bank_no, bank_phone, trueName, position, sex, id_phpto, id_number, birthday, id_card_start, id_card_end, max_progress, business_id, phone_number, social_code, nature, authority, startTime, email, business_license, legal_representative, registered_capital, address, full_address, registered_time, business_start, business_end, business_scope, company_basic_id, enterprise_size, industry, website, contact_phone, postcode, fax, security_license, security_start, security_end, structure, company_profile, soft_power_text, soft_power_img from bid_company + + + + + + + + insert into bid_company + + companyId, + tenant_code, + company_name, + account_name, + account_bank, + bank_address, + annex, + bank_account, + bank_no, + bank_phone, + trueName, + position, + sex, + id_phpto, + id_number, + birthday, + id_card_start, + id_card_end, + max_progress, + business_id, + phone_number, + social_code, + nature, + authority, + startTime, + email, + business_license, + legal_representative, + registered_capital, + address, + full_address, + registered_time, + business_start, + business_end, + business_scope, + company_basic_id, + enterprise_size, + industry, + website, + contact_phone, + postcode, + fax, + security_license, + security_start, + security_end, + structure, + company_profile, + soft_power_text, + soft_power_img, + + + #{companyId}, + #{tenantCode}, + #{companyName}, + #{accountName}, + #{accountBank}, + #{bankAddress}, + #{annex}, + #{bankAccount}, + #{bankNo}, + #{bankPhone}, + #{trueName}, + #{position}, + #{sex}, + #{idPhpto}, + #{idNumber}, + #{birthday}, + #{idCardStart}, + #{idCardEnd}, + #{maxProgress}, + #{businessId}, + #{phoneNumber}, + #{socialCode}, + #{nature}, + #{authority}, + #{startTime}, + #{email}, + #{businessLicense}, + #{legalRepresentative}, + #{registeredCapital}, + #{address}, + #{fullAddress}, + #{registeredTime}, + #{businessStart}, + #{businessEnd}, + #{businessScope}, + #{companyBasicId}, + #{enterpriseSize}, + #{industry}, + #{website}, + #{contactPhone}, + #{postcode}, + #{fax}, + #{securityLicense}, + #{securityStart}, + #{securityEnd}, + #{structure}, + #{companyProfile}, + #{softPowerText}, + #{softPowerImg}, + + + + + update bid_company + + companyId = #{companyId}, + tenant_code = #{tenantCode}, + company_name = #{companyName}, + account_name = #{accountName}, + account_bank = #{accountBank}, + bank_address = #{bankAddress}, + annex = #{annex}, + bank_account = #{bankAccount}, + bank_no = #{bankNo}, + bank_phone = #{bankPhone}, + trueName = #{trueName}, + position = #{position}, + sex = #{sex}, + id_phpto = #{idPhpto}, + id_number = #{idNumber}, + birthday = #{birthday}, + id_card_start = #{idCardStart}, + id_card_end = #{idCardEnd}, + max_progress = #{maxProgress}, + business_id = #{businessId}, + phone_number = #{phoneNumber}, + social_code = #{socialCode}, + nature = #{nature}, + authority = #{authority}, + startTime = #{startTime}, + email = #{email}, + business_license = #{businessLicense}, + legal_representative = #{legalRepresentative}, + registered_capital = #{registeredCapital}, + address = #{address}, + full_address = #{fullAddress}, + registered_time = #{registeredTime}, + business_start = #{businessStart}, + business_end = #{businessEnd}, + business_scope = #{businessScope}, + company_basic_id = #{companyBasicId}, + enterprise_size = #{enterpriseSize}, + industry = #{industry}, + website = #{website}, + contact_phone = #{contactPhone}, + postcode = #{postcode}, + fax = #{fax}, + security_license = #{securityLicense}, + security_start = #{securityStart}, + security_end = #{securityEnd}, + structure = #{structure}, + company_profile = #{companyProfile}, + soft_power_text = #{softPowerText}, + soft_power_img = #{softPowerImg}, + + where id = #{id} + + + + delete from bid_company where id = #{id} + + + + delete from bid_company where id in + + #{id} + + + \ No newline at end of file diff --git a/ruoyi-bid/src/main/resources/mapper/bid/BidZizhiMapper.xml b/ruoyi-bid/src/main/resources/mapper/bid/BidZizhiMapper.xml new file mode 100644 index 0000000..209d2b3 --- /dev/null +++ b/ruoyi-bid/src/main/resources/mapper/bid/BidZizhiMapper.xml @@ -0,0 +1,65 @@ + + + + + + + + + + + + + select id, tenant_code, document_name, remark from bid_zizhi + + + + + + + + insert into bid_zizhi + + tenant_code, + document_name, + remark, + + + #{tenantCode}, + #{documentName}, + #{remark}, + + + + + update bid_zizhi + + tenant_code = #{tenantCode}, + document_name = #{documentName}, + remark = #{remark}, + + where id = #{id} + + + + delete from bid_zizhi where id = #{id} + + + + delete from bid_zizhi where id in + + #{id} + + + \ No newline at end of file diff --git a/ruoyi-ui/src/api/bid/company.js b/ruoyi-ui/src/api/bid/company.js new file mode 100644 index 0000000..5cb3f8b --- /dev/null +++ b/ruoyi-ui/src/api/bid/company.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询公司信息列表 +export function listCompany(query) { + return request({ + url: '/bid/company/list', + method: 'get', + params: query + }) +} + +// 查询公司信息详细 +export function getCompany(id) { + return request({ + url: '/bid/company/' + id, + method: 'get' + }) +} + +// 新增公司信息 +export function addCompany(data) { + return request({ + url: '/bid/company', + method: 'post', + data: data + }) +} + +// 修改公司信息 +export function updateCompany(data) { + return request({ + url: '/bid/company', + method: 'put', + data: data + }) +} + +// 删除公司信息 +export function delCompany(id) { + return request({ + url: '/bid/company/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/api/bid/zizhi.js b/ruoyi-ui/src/api/bid/zizhi.js new file mode 100644 index 0000000..5edc6b9 --- /dev/null +++ b/ruoyi-ui/src/api/bid/zizhi.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询资质证书列表 +export function listZizhi(query) { + return request({ + url: '/bid/zizhi/list', + method: 'get', + params: query + }) +} + +// 查询资质证书详细 +export function getZizhi(id) { + return request({ + url: '/bid/zizhi/' + id, + method: 'get' + }) +} + +// 新增资质证书 +export function addZizhi(data) { + return request({ + url: '/bid/zizhi', + method: 'post', + data: data + }) +} + +// 修改资质证书 +export function updateZizhi(data) { + return request({ + url: '/bid/zizhi', + method: 'put', + data: data + }) +} + +// 删除资质证书 +export function delZizhi(id) { + return request({ + url: '/bid/zizhi/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/views/bid/company/index.vue b/ruoyi-ui/src/views/bid/company/index.vue new file mode 100644 index 0000000..0e50902 --- /dev/null +++ b/ruoyi-ui/src/views/bid/company/index.vue @@ -0,0 +1,954 @@ + + + diff --git a/ruoyi-ui/src/views/bid/zizhi/index.vue b/ruoyi-ui/src/views/bid/zizhi/index.vue new file mode 100644 index 0000000..89c2647 --- /dev/null +++ b/ruoyi-ui/src/views/bid/zizhi/index.vue @@ -0,0 +1,264 @@ + + + diff --git a/ruoyi-ui/vue.config.js b/ruoyi-ui/vue.config.js index 40e140d..a2436e6 100644 --- a/ruoyi-ui/vue.config.js +++ b/ruoyi-ui/vue.config.js @@ -9,7 +9,7 @@ const CompressionPlugin = require('compression-webpack-plugin') const name = process.env.VUE_APP_TITLE || '若依管理系统' // 网页标题 -const baseUrl = 'http://localhost:8080' // 后端接口 +const baseUrl = 'http://localhost:8090' // 后端接口 const port = process.env.port || process.env.npm_config_port || 80 // 端口