diff --git a/pom.xml b/pom.xml
index c554f74..f078503 100644
--- a/pom.xml
+++ b/pom.xml
@@ -163,6 +163,20 @@
${yanzhu.version}
+
+
+ com.yanzhu
+ yanzhu-manage
+ ${yanzhu.version}
+
+
+
+
+ com.yanzhu
+ yanzhu-mapper
+ ${yanzhu.version}
+
+
com.yanzhu
diff --git a/yanzhu-admin/pom.xml b/yanzhu-admin/pom.xml
index 4a1705f..c15a402 100644
--- a/yanzhu-admin/pom.xml
+++ b/yanzhu-admin/pom.xml
@@ -61,11 +61,19 @@
yanzhu-generator
+
com.yanzhu
yanzhu-flowable
+
+
+ com.yanzhu
+ yanzhu-manage
+ compile
+
+
diff --git a/yanzhu-manage/pom.xml b/yanzhu-manage/pom.xml
index 20ea4c1..bbbbe36 100644
--- a/yanzhu-manage/pom.xml
+++ b/yanzhu-manage/pom.xml
@@ -11,9 +11,46 @@
yanzhu-manage
+
+ manage管理模块
+
+
17
17
+
+
+
+
+ com.yanzhu
+ yanzhu-common
+
+
+
+
+ com.yanzhu
+ yanzhu-system
+
+
+
+
+ com.yanzhu
+ yanzhu-mapper
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+ com.yanzhu
+ yanzhu-framework
+
+
+
+
\ No newline at end of file
diff --git a/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectApplyController.java b/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectApplyController.java
new file mode 100644
index 0000000..851ca82
--- /dev/null
+++ b/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectApplyController.java
@@ -0,0 +1,104 @@
+package com.yanzhu.project.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.yanzhu.common.annotation.Log;
+import com.yanzhu.common.core.controller.BaseController;
+import com.yanzhu.common.core.domain.AjaxResult;
+import com.yanzhu.common.enums.BusinessType;
+import com.yanzhu.project.domain.ProProjectApply;
+import com.yanzhu.project.service.IProProjectApplyService;
+import com.yanzhu.common.utils.poi.ExcelUtil;
+import com.yanzhu.common.core.page.TableDataInfo;
+
+/**
+ * 项目申请Controller
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+@RestController
+@RequestMapping("/mapper/project/projectApply")
+public class ProProjectApplyController extends BaseController
+{
+ @Autowired
+ private IProProjectApplyService proProjectApplyService;
+
+ /**
+ * 查询项目申请列表
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectApply:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(ProProjectApply proProjectApply)
+ {
+ startPage();
+ List list = proProjectApplyService.selectProProjectApplyList(proProjectApply);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出项目申请列表
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectApply:export')")
+ @Log(title = "项目申请", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, ProProjectApply proProjectApply)
+ {
+ List list = proProjectApplyService.selectProProjectApplyList(proProjectApply);
+ ExcelUtil util = new ExcelUtil(ProProjectApply.class);
+ util.exportExcel(response, list, "项目申请数据");
+ }
+
+ /**
+ * 获取项目申请详细信息
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectApply:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id)
+ {
+ return success(proProjectApplyService.selectProProjectApplyById(id));
+ }
+
+ /**
+ * 新增项目申请
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectApply:add')")
+ @Log(title = "项目申请", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody ProProjectApply proProjectApply)
+ {
+ return toAjax(proProjectApplyService.insertProProjectApply(proProjectApply));
+ }
+
+ /**
+ * 修改项目申请
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectApply:edit')")
+ @Log(title = "项目申请", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody ProProjectApply proProjectApply)
+ {
+ return toAjax(proProjectApplyService.updateProProjectApply(proProjectApply));
+ }
+
+ /**
+ * 删除项目申请
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectApply:remove')")
+ @Log(title = "项目申请", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Long[] ids)
+ {
+ return toAjax(proProjectApplyService.deleteProProjectApplyByIds(ids));
+ }
+}
diff --git a/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectInfoController.java b/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectInfoController.java
new file mode 100644
index 0000000..5674115
--- /dev/null
+++ b/yanzhu-manage/src/main/java/com/yanzhu/project/controller/ProProjectInfoController.java
@@ -0,0 +1,104 @@
+package com.yanzhu.project.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.yanzhu.common.annotation.Log;
+import com.yanzhu.common.core.controller.BaseController;
+import com.yanzhu.common.core.domain.AjaxResult;
+import com.yanzhu.common.enums.BusinessType;
+import com.yanzhu.project.domain.ProProjectInfo;
+import com.yanzhu.project.service.IProProjectInfoService;
+import com.yanzhu.common.utils.poi.ExcelUtil;
+import com.yanzhu.common.core.page.TableDataInfo;
+
+/**
+ * 项目信息Controller
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+@RestController
+@RequestMapping("/mapper/project/projectInfo")
+public class ProProjectInfoController extends BaseController
+{
+ @Autowired
+ private IProProjectInfoService proProjectInfoService;
+
+ /**
+ * 查询项目信息列表
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectInfo:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(ProProjectInfo proProjectInfo)
+ {
+ startPage();
+ List list = proProjectInfoService.selectProProjectInfoList(proProjectInfo);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出项目信息列表
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectInfo:export')")
+ @Log(title = "项目信息", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, ProProjectInfo proProjectInfo)
+ {
+ List list = proProjectInfoService.selectProProjectInfoList(proProjectInfo);
+ ExcelUtil util = new ExcelUtil(ProProjectInfo.class);
+ util.exportExcel(response, list, "项目信息数据");
+ }
+
+ /**
+ * 获取项目信息详细信息
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectInfo:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id)
+ {
+ return success(proProjectInfoService.selectProProjectInfoById(id));
+ }
+
+ /**
+ * 新增项目信息
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectInfo:add')")
+ @Log(title = "项目信息", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody ProProjectInfo proProjectInfo)
+ {
+ return toAjax(proProjectInfoService.insertProProjectInfo(proProjectInfo));
+ }
+
+ /**
+ * 修改项目信息
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectInfo:edit')")
+ @Log(title = "项目信息", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody ProProjectInfo proProjectInfo)
+ {
+ return toAjax(proProjectInfoService.updateProProjectInfo(proProjectInfo));
+ }
+
+ /**
+ * 删除项目信息
+ */
+ @PreAuthorize("@ss.hasPermi('project:projectInfo:remove')")
+ @Log(title = "项目信息", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Long[] ids)
+ {
+ return toAjax(proProjectInfoService.deleteProProjectInfoByIds(ids));
+ }
+}
diff --git a/yanzhu-mapper/pom.xml b/yanzhu-mapper/pom.xml
index 3575d57..1d67d62 100644
--- a/yanzhu-mapper/pom.xml
+++ b/yanzhu-mapper/pom.xml
@@ -11,9 +11,29 @@
yanzhu-mapper
+
+ mapper系统模块
+
+
17
17
+
+
+
+
+ com.yanzhu
+ yanzhu-common
+
+
+
+
+ com.yanzhu
+ yanzhu-system
+
+
+
+
\ No newline at end of file
diff --git a/yanzhu-mapper/src/main/java/com/yanzhu/project/domain/ProProjectApply.java b/yanzhu-mapper/src/main/java/com/yanzhu/project/domain/ProProjectApply.java
new file mode 100644
index 0000000..0a2ba93
--- /dev/null
+++ b/yanzhu-mapper/src/main/java/com/yanzhu/project/domain/ProProjectApply.java
@@ -0,0 +1,186 @@
+package com.yanzhu.project.domain;
+
+import java.util.List;
+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.yanzhu.common.annotation.Excel;
+import com.yanzhu.common.core.domain.BaseEntity;
+
+/**
+ * 项目申请对象 pro_project_apply
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+public class ProProjectApply extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键 */
+ private Long id;
+
+ /** 部门主键 */
+ @Excel(name = "部门主键")
+ private Long deptId;
+
+ /** 项目主键 */
+ @Excel(name = "项目主键")
+ private Long projId;
+
+ /** 申请类型 */
+ @Excel(name = "申请类型")
+ private String applyType;
+
+ /** 申请状态 */
+ @Excel(name = "申请状态")
+ private String applyStatus;
+
+ /** 申请原因 */
+ @Excel(name = "申请原因")
+ private String applyReason;
+
+ /** 申请附件 */
+ @Excel(name = "申请附件")
+ private String applyFiles;
+
+ /** 申请用户主键 */
+ @Excel(name = "申请用户主键")
+ private Long applyUser;
+
+ /** 使用时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "使用时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date useTime;
+
+ /** 是否删除 */
+ @Excel(name = "是否删除")
+ private String isDel;
+
+ /** 项目申请明细信息 */
+ private List proProjectApplyDetailList;
+
+ public void setId(Long id)
+ {
+ this.id = id;
+ }
+
+ public Long getId()
+ {
+ return id;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setProjId(Long projId)
+ {
+ this.projId = projId;
+ }
+
+ public Long getProjId()
+ {
+ return projId;
+ }
+ public void setApplyType(String applyType)
+ {
+ this.applyType = applyType;
+ }
+
+ public String getApplyType()
+ {
+ return applyType;
+ }
+ public void setApplyStatus(String applyStatus)
+ {
+ this.applyStatus = applyStatus;
+ }
+
+ public String getApplyStatus()
+ {
+ return applyStatus;
+ }
+ public void setApplyReason(String applyReason)
+ {
+ this.applyReason = applyReason;
+ }
+
+ public String getApplyReason()
+ {
+ return applyReason;
+ }
+ public void setApplyFiles(String applyFiles)
+ {
+ this.applyFiles = applyFiles;
+ }
+
+ public String getApplyFiles()
+ {
+ return applyFiles;
+ }
+ public void setApplyUser(Long applyUser)
+ {
+ this.applyUser = applyUser;
+ }
+
+ public Long getApplyUser()
+ {
+ return applyUser;
+ }
+ public void setUseTime(Date useTime)
+ {
+ this.useTime = useTime;
+ }
+
+ public Date getUseTime()
+ {
+ return useTime;
+ }
+ public void setIsDel(String isDel)
+ {
+ this.isDel = isDel;
+ }
+
+ public String getIsDel()
+ {
+ return isDel;
+ }
+
+ public List getProProjectApplyDetailList()
+ {
+ return proProjectApplyDetailList;
+ }
+
+ public void setProProjectApplyDetailList(List proProjectApplyDetailList)
+ {
+ this.proProjectApplyDetailList = proProjectApplyDetailList;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("deptId", getDeptId())
+ .append("projId", getProjId())
+ .append("applyType", getApplyType())
+ .append("applyStatus", getApplyStatus())
+ .append("applyReason", getApplyReason())
+ .append("applyFiles", getApplyFiles())
+ .append("applyUser", getApplyUser())
+ .append("useTime", getUseTime())
+ .append("isDel", getIsDel())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .append("remark", getRemark())
+ .append("proProjectApplyDetailList", getProProjectApplyDetailList())
+ .toString();
+ }
+}
diff --git a/yanzhu-mapper/src/main/java/com/yanzhu/project/domain/ProProjectApplyDetail.java b/yanzhu-mapper/src/main/java/com/yanzhu/project/domain/ProProjectApplyDetail.java
new file mode 100644
index 0000000..8863c7e
--- /dev/null
+++ b/yanzhu-mapper/src/main/java/com/yanzhu/project/domain/ProProjectApplyDetail.java
@@ -0,0 +1,242 @@
+package com.yanzhu.project.domain;
+
+import java.math.BigDecimal;
+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.yanzhu.common.annotation.Excel;
+import com.yanzhu.common.core.domain.BaseEntity;
+
+/**
+ * 项目申请明细对象 pro_project_apply_detail
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+public class ProProjectApplyDetail extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键 */
+ private Long id;
+
+ /** 申请主键 */
+ @Excel(name = "申请主键")
+ private Long applyId;
+
+ /** 大类主键 */
+ @Excel(name = "大类主键")
+ private Long superTypeId;
+
+ /** 大类名称 */
+ @Excel(name = "大类名称")
+ private String superTypeName;
+
+ /** 类型主键 */
+ @Excel(name = "类型主键")
+ private Long typeId;
+
+ /** 类型名称 */
+ @Excel(name = "类型名称")
+ private String typeName;
+
+ /** 资产主键 */
+ @Excel(name = "资产主键")
+ private Long assetsId;
+
+ /** 资产名称 */
+ @Excel(name = "资产名称")
+ private String assetsName;
+
+ /** 资产单位 */
+ @Excel(name = "资产单位")
+ private String assetsUnit;
+
+ /** 数量 */
+ @Excel(name = "数量")
+ private Long number;
+
+ /** 使用时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "使用时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date useTime;
+
+ /** 使用原因 */
+ @Excel(name = "使用原因")
+ private String useReason;
+
+ /** 单价 */
+ @Excel(name = "单价")
+ private BigDecimal price;
+
+ /** 总价 */
+ @Excel(name = "总价")
+ private BigDecimal totalPrice;
+
+ /** 是否删除 */
+ @Excel(name = "是否删除")
+ private String isDel;
+
+ public void setId(Long id)
+ {
+ this.id = id;
+ }
+
+ public Long getId()
+ {
+ return id;
+ }
+ public void setApplyId(Long applyId)
+ {
+ this.applyId = applyId;
+ }
+
+ public Long getApplyId()
+ {
+ return applyId;
+ }
+ public void setSuperTypeId(Long superTypeId)
+ {
+ this.superTypeId = superTypeId;
+ }
+
+ public Long getSuperTypeId()
+ {
+ return superTypeId;
+ }
+ public void setSuperTypeName(String superTypeName)
+ {
+ this.superTypeName = superTypeName;
+ }
+
+ public String getSuperTypeName()
+ {
+ return superTypeName;
+ }
+ public void setTypeId(Long typeId)
+ {
+ this.typeId = typeId;
+ }
+
+ public Long getTypeId()
+ {
+ return typeId;
+ }
+ public void setTypeName(String typeName)
+ {
+ this.typeName = typeName;
+ }
+
+ public String getTypeName()
+ {
+ return typeName;
+ }
+ public void setAssetsId(Long assetsId)
+ {
+ this.assetsId = assetsId;
+ }
+
+ public Long getAssetsId()
+ {
+ return assetsId;
+ }
+ public void setAssetsName(String assetsName)
+ {
+ this.assetsName = assetsName;
+ }
+
+ public String getAssetsName()
+ {
+ return assetsName;
+ }
+ public void setAssetsUnit(String assetsUnit)
+ {
+ this.assetsUnit = assetsUnit;
+ }
+
+ public String getAssetsUnit()
+ {
+ return assetsUnit;
+ }
+ public void setNumber(Long number)
+ {
+ this.number = number;
+ }
+
+ public Long getNumber()
+ {
+ return number;
+ }
+ public void setUseTime(Date useTime)
+ {
+ this.useTime = useTime;
+ }
+
+ public Date getUseTime()
+ {
+ return useTime;
+ }
+ public void setUseReason(String useReason)
+ {
+ this.useReason = useReason;
+ }
+
+ public String getUseReason()
+ {
+ return useReason;
+ }
+ public void setPrice(BigDecimal price)
+ {
+ this.price = price;
+ }
+
+ public BigDecimal getPrice()
+ {
+ return price;
+ }
+ public void setTotalPrice(BigDecimal totalPrice)
+ {
+ this.totalPrice = totalPrice;
+ }
+
+ public BigDecimal getTotalPrice()
+ {
+ return totalPrice;
+ }
+ public void setIsDel(String isDel)
+ {
+ this.isDel = isDel;
+ }
+
+ public String getIsDel()
+ {
+ return isDel;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("applyId", getApplyId())
+ .append("superTypeId", getSuperTypeId())
+ .append("superTypeName", getSuperTypeName())
+ .append("typeId", getTypeId())
+ .append("typeName", getTypeName())
+ .append("assetsId", getAssetsId())
+ .append("assetsName", getAssetsName())
+ .append("assetsUnit", getAssetsUnit())
+ .append("number", getNumber())
+ .append("useTime", getUseTime())
+ .append("useReason", getUseReason())
+ .append("price", getPrice())
+ .append("totalPrice", getTotalPrice())
+ .append("isDel", getIsDel())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .append("remark", getRemark())
+ .toString();
+ }
+}
diff --git a/yanzhu-mapper/src/main/java/com/yanzhu/project/domain/ProProjectInfo.java b/yanzhu-mapper/src/main/java/com/yanzhu/project/domain/ProProjectInfo.java
new file mode 100644
index 0000000..f7c5ea6
--- /dev/null
+++ b/yanzhu-mapper/src/main/java/com/yanzhu/project/domain/ProProjectInfo.java
@@ -0,0 +1,196 @@
+package com.yanzhu.project.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.yanzhu.common.annotation.Excel;
+import com.yanzhu.common.core.domain.BaseEntity;
+
+/**
+ * 项目信息对象 pro_project_info
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+public class ProProjectInfo extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键 */
+ private Long id;
+
+ /** 项目名称 */
+ @Excel(name = "项目名称")
+ private String name;
+
+ /** 部门主键 */
+ @Excel(name = "部门主键")
+ private Long deptId;
+
+ /** 项目地址 */
+ @Excel(name = "项目地址")
+ private String address;
+
+ /** 项目描述 */
+ @Excel(name = "项目描述")
+ private String infos;
+
+ /** 负责人名称 */
+ @Excel(name = "负责人名称")
+ private String personName;
+
+ /** 负责人电话 */
+ @Excel(name = "负责人电话")
+ private String personPhone;
+
+ /** 项目主图 */
+ @Excel(name = "项目主图")
+ private String mainImage;
+
+ /** 图片列表 */
+ @Excel(name = "图片列表")
+ private String images;
+
+ /** 项目状态 */
+ @Excel(name = "项目状态")
+ private String projStatus;
+
+ /** 是否删除 */
+ @Excel(name = "是否删除")
+ private String isDel;
+
+ /** 项目级单位 */
+ @Excel(name = "项目级单位")
+ private String unit;
+
+ public void setId(Long id)
+ {
+ this.id = id;
+ }
+
+ public Long getId()
+ {
+ return id;
+ }
+ public void setName(String name)
+ {
+ this.name = name;
+ }
+
+ public String getName()
+ {
+ return name;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setAddress(String address)
+ {
+ this.address = address;
+ }
+
+ public String getAddress()
+ {
+ return address;
+ }
+ public void setInfos(String infos)
+ {
+ this.infos = infos;
+ }
+
+ public String getInfos()
+ {
+ return infos;
+ }
+ public void setPersonName(String personName)
+ {
+ this.personName = personName;
+ }
+
+ public String getPersonName()
+ {
+ return personName;
+ }
+ public void setPersonPhone(String personPhone)
+ {
+ this.personPhone = personPhone;
+ }
+
+ public String getPersonPhone()
+ {
+ return personPhone;
+ }
+ public void setMainImage(String mainImage)
+ {
+ this.mainImage = mainImage;
+ }
+
+ public String getMainImage()
+ {
+ return mainImage;
+ }
+ public void setImages(String images)
+ {
+ this.images = images;
+ }
+
+ public String getImages()
+ {
+ return images;
+ }
+ public void setProjStatus(String projStatus)
+ {
+ this.projStatus = projStatus;
+ }
+
+ public String getProjStatus()
+ {
+ return projStatus;
+ }
+ public void setIsDel(String isDel)
+ {
+ this.isDel = isDel;
+ }
+
+ public String getIsDel()
+ {
+ return isDel;
+ }
+ public void setUnit(String unit)
+ {
+ this.unit = unit;
+ }
+
+ public String getUnit()
+ {
+ return unit;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("name", getName())
+ .append("deptId", getDeptId())
+ .append("address", getAddress())
+ .append("infos", getInfos())
+ .append("personName", getPersonName())
+ .append("personPhone", getPersonPhone())
+ .append("mainImage", getMainImage())
+ .append("images", getImages())
+ .append("projStatus", getProjStatus())
+ .append("isDel", getIsDel())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .append("remark", getRemark())
+ .append("unit", getUnit())
+ .toString();
+ }
+}
diff --git a/yanzhu-mapper/src/main/java/com/yanzhu/project/mapper/ProProjectApplyMapper.java b/yanzhu-mapper/src/main/java/com/yanzhu/project/mapper/ProProjectApplyMapper.java
new file mode 100644
index 0000000..fb3f458
--- /dev/null
+++ b/yanzhu-mapper/src/main/java/com/yanzhu/project/mapper/ProProjectApplyMapper.java
@@ -0,0 +1,87 @@
+package com.yanzhu.project.mapper;
+
+import java.util.List;
+import com.yanzhu.project.domain.ProProjectApply;
+import com.yanzhu.project.domain.ProProjectApplyDetail;
+
+/**
+ * 项目申请Mapper接口
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+public interface ProProjectApplyMapper
+{
+ /**
+ * 查询项目申请
+ *
+ * @param id 项目申请主键
+ * @return 项目申请
+ */
+ public ProProjectApply selectProProjectApplyById(Long id);
+
+ /**
+ * 查询项目申请列表
+ *
+ * @param proProjectApply 项目申请
+ * @return 项目申请集合
+ */
+ public List selectProProjectApplyList(ProProjectApply proProjectApply);
+
+ /**
+ * 新增项目申请
+ *
+ * @param proProjectApply 项目申请
+ * @return 结果
+ */
+ public int insertProProjectApply(ProProjectApply proProjectApply);
+
+ /**
+ * 修改项目申请
+ *
+ * @param proProjectApply 项目申请
+ * @return 结果
+ */
+ public int updateProProjectApply(ProProjectApply proProjectApply);
+
+ /**
+ * 删除项目申请
+ *
+ * @param id 项目申请主键
+ * @return 结果
+ */
+ public int deleteProProjectApplyById(Long id);
+
+ /**
+ * 批量删除项目申请
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteProProjectApplyByIds(Long[] ids);
+
+ /**
+ * 批量删除项目申请明细
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteProProjectApplyDetailByApplyIds(Long[] ids);
+
+ /**
+ * 批量新增项目申请明细
+ *
+ * @param proProjectApplyDetailList 项目申请明细列表
+ * @return 结果
+ */
+ public int batchProProjectApplyDetail(List proProjectApplyDetailList);
+
+
+ /**
+ * 通过项目申请主键删除项目申请明细信息
+ *
+ * @param id 项目申请ID
+ * @return 结果
+ */
+ public int deleteProProjectApplyDetailByApplyId(Long id);
+}
diff --git a/yanzhu-mapper/src/main/java/com/yanzhu/project/mapper/ProProjectInfoMapper.java b/yanzhu-mapper/src/main/java/com/yanzhu/project/mapper/ProProjectInfoMapper.java
new file mode 100644
index 0000000..2d98aab
--- /dev/null
+++ b/yanzhu-mapper/src/main/java/com/yanzhu/project/mapper/ProProjectInfoMapper.java
@@ -0,0 +1,61 @@
+package com.yanzhu.project.mapper;
+
+import java.util.List;
+import com.yanzhu.project.domain.ProProjectInfo;
+
+/**
+ * 项目信息Mapper接口
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+public interface ProProjectInfoMapper
+{
+ /**
+ * 查询项目信息
+ *
+ * @param id 项目信息主键
+ * @return 项目信息
+ */
+ public ProProjectInfo selectProProjectInfoById(Long id);
+
+ /**
+ * 查询项目信息列表
+ *
+ * @param proProjectInfo 项目信息
+ * @return 项目信息集合
+ */
+ public List selectProProjectInfoList(ProProjectInfo proProjectInfo);
+
+ /**
+ * 新增项目信息
+ *
+ * @param proProjectInfo 项目信息
+ * @return 结果
+ */
+ public int insertProProjectInfo(ProProjectInfo proProjectInfo);
+
+ /**
+ * 修改项目信息
+ *
+ * @param proProjectInfo 项目信息
+ * @return 结果
+ */
+ public int updateProProjectInfo(ProProjectInfo proProjectInfo);
+
+ /**
+ * 删除项目信息
+ *
+ * @param id 项目信息主键
+ * @return 结果
+ */
+ public int deleteProProjectInfoById(Long id);
+
+ /**
+ * 批量删除项目信息
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteProProjectInfoByIds(Long[] ids);
+}
diff --git a/yanzhu-mapper/src/main/java/com/yanzhu/project/service/IProProjectApplyService.java b/yanzhu-mapper/src/main/java/com/yanzhu/project/service/IProProjectApplyService.java
new file mode 100644
index 0000000..7331a01
--- /dev/null
+++ b/yanzhu-mapper/src/main/java/com/yanzhu/project/service/IProProjectApplyService.java
@@ -0,0 +1,61 @@
+package com.yanzhu.project.service;
+
+import java.util.List;
+import com.yanzhu.project.domain.ProProjectApply;
+
+/**
+ * 项目申请Service接口
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+public interface IProProjectApplyService
+{
+ /**
+ * 查询项目申请
+ *
+ * @param id 项目申请主键
+ * @return 项目申请
+ */
+ public ProProjectApply selectProProjectApplyById(Long id);
+
+ /**
+ * 查询项目申请列表
+ *
+ * @param proProjectApply 项目申请
+ * @return 项目申请集合
+ */
+ public List selectProProjectApplyList(ProProjectApply proProjectApply);
+
+ /**
+ * 新增项目申请
+ *
+ * @param proProjectApply 项目申请
+ * @return 结果
+ */
+ public int insertProProjectApply(ProProjectApply proProjectApply);
+
+ /**
+ * 修改项目申请
+ *
+ * @param proProjectApply 项目申请
+ * @return 结果
+ */
+ public int updateProProjectApply(ProProjectApply proProjectApply);
+
+ /**
+ * 批量删除项目申请
+ *
+ * @param ids 需要删除的项目申请主键集合
+ * @return 结果
+ */
+ public int deleteProProjectApplyByIds(Long[] ids);
+
+ /**
+ * 删除项目申请信息
+ *
+ * @param id 项目申请主键
+ * @return 结果
+ */
+ public int deleteProProjectApplyById(Long id);
+}
diff --git a/yanzhu-mapper/src/main/java/com/yanzhu/project/service/IProProjectInfoService.java b/yanzhu-mapper/src/main/java/com/yanzhu/project/service/IProProjectInfoService.java
new file mode 100644
index 0000000..a5ae43a
--- /dev/null
+++ b/yanzhu-mapper/src/main/java/com/yanzhu/project/service/IProProjectInfoService.java
@@ -0,0 +1,61 @@
+package com.yanzhu.project.service;
+
+import java.util.List;
+import com.yanzhu.project.domain.ProProjectInfo;
+
+/**
+ * 项目信息Service接口
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+public interface IProProjectInfoService
+{
+ /**
+ * 查询项目信息
+ *
+ * @param id 项目信息主键
+ * @return 项目信息
+ */
+ public ProProjectInfo selectProProjectInfoById(Long id);
+
+ /**
+ * 查询项目信息列表
+ *
+ * @param proProjectInfo 项目信息
+ * @return 项目信息集合
+ */
+ public List selectProProjectInfoList(ProProjectInfo proProjectInfo);
+
+ /**
+ * 新增项目信息
+ *
+ * @param proProjectInfo 项目信息
+ * @return 结果
+ */
+ public int insertProProjectInfo(ProProjectInfo proProjectInfo);
+
+ /**
+ * 修改项目信息
+ *
+ * @param proProjectInfo 项目信息
+ * @return 结果
+ */
+ public int updateProProjectInfo(ProProjectInfo proProjectInfo);
+
+ /**
+ * 批量删除项目信息
+ *
+ * @param ids 需要删除的项目信息主键集合
+ * @return 结果
+ */
+ public int deleteProProjectInfoByIds(Long[] ids);
+
+ /**
+ * 删除项目信息信息
+ *
+ * @param id 项目信息主键
+ * @return 结果
+ */
+ public int deleteProProjectInfoById(Long id);
+}
diff --git a/yanzhu-mapper/src/main/java/com/yanzhu/project/service/impl/ProProjectApplyServiceImpl.java b/yanzhu-mapper/src/main/java/com/yanzhu/project/service/impl/ProProjectApplyServiceImpl.java
new file mode 100644
index 0000000..f506a3e
--- /dev/null
+++ b/yanzhu-mapper/src/main/java/com/yanzhu/project/service/impl/ProProjectApplyServiceImpl.java
@@ -0,0 +1,134 @@
+package com.yanzhu.project.service.impl;
+
+import java.util.List;
+import com.yanzhu.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import com.yanzhu.common.utils.StringUtils;
+import org.springframework.transaction.annotation.Transactional;
+import com.yanzhu.project.domain.ProProjectApplyDetail;
+import com.yanzhu.project.mapper.ProProjectApplyMapper;
+import com.yanzhu.project.domain.ProProjectApply;
+import com.yanzhu.project.service.IProProjectApplyService;
+
+/**
+ * 项目申请Service业务层处理
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+@Service
+public class ProProjectApplyServiceImpl implements IProProjectApplyService
+{
+ @Autowired
+ private ProProjectApplyMapper proProjectApplyMapper;
+
+ /**
+ * 查询项目申请
+ *
+ * @param id 项目申请主键
+ * @return 项目申请
+ */
+ @Override
+ public ProProjectApply selectProProjectApplyById(Long id)
+ {
+ return proProjectApplyMapper.selectProProjectApplyById(id);
+ }
+
+ /**
+ * 查询项目申请列表
+ *
+ * @param proProjectApply 项目申请
+ * @return 项目申请
+ */
+ @Override
+ public List selectProProjectApplyList(ProProjectApply proProjectApply)
+ {
+ return proProjectApplyMapper.selectProProjectApplyList(proProjectApply);
+ }
+
+ /**
+ * 新增项目申请
+ *
+ * @param proProjectApply 项目申请
+ * @return 结果
+ */
+ @Transactional
+ @Override
+ public int insertProProjectApply(ProProjectApply proProjectApply)
+ {
+ proProjectApply.setCreateTime(DateUtils.getNowDate());
+ int rows = proProjectApplyMapper.insertProProjectApply(proProjectApply);
+ insertProProjectApplyDetail(proProjectApply);
+ return rows;
+ }
+
+ /**
+ * 修改项目申请
+ *
+ * @param proProjectApply 项目申请
+ * @return 结果
+ */
+ @Transactional
+ @Override
+ public int updateProProjectApply(ProProjectApply proProjectApply)
+ {
+ proProjectApply.setUpdateTime(DateUtils.getNowDate());
+ proProjectApplyMapper.deleteProProjectApplyDetailByApplyId(proProjectApply.getId());
+ insertProProjectApplyDetail(proProjectApply);
+ return proProjectApplyMapper.updateProProjectApply(proProjectApply);
+ }
+
+ /**
+ * 批量删除项目申请
+ *
+ * @param ids 需要删除的项目申请主键
+ * @return 结果
+ */
+ @Transactional
+ @Override
+ public int deleteProProjectApplyByIds(Long[] ids)
+ {
+ proProjectApplyMapper.deleteProProjectApplyDetailByApplyIds(ids);
+ return proProjectApplyMapper.deleteProProjectApplyByIds(ids);
+ }
+
+ /**
+ * 删除项目申请信息
+ *
+ * @param id 项目申请主键
+ * @return 结果
+ */
+ @Transactional
+ @Override
+ public int deleteProProjectApplyById(Long id)
+ {
+ proProjectApplyMapper.deleteProProjectApplyDetailByApplyId(id);
+ return proProjectApplyMapper.deleteProProjectApplyById(id);
+ }
+
+ /**
+ * 新增项目申请明细信息
+ *
+ * @param proProjectApply 项目申请对象
+ */
+ public void insertProProjectApplyDetail(ProProjectApply proProjectApply)
+ {
+ List proProjectApplyDetailList = proProjectApply.getProProjectApplyDetailList();
+ Long id = proProjectApply.getId();
+ if (StringUtils.isNotNull(proProjectApplyDetailList))
+ {
+ List list = new ArrayList();
+ for (ProProjectApplyDetail proProjectApplyDetail : proProjectApplyDetailList)
+ {
+ proProjectApplyDetail.setApplyId(id);
+ list.add(proProjectApplyDetail);
+ }
+ if (list.size() > 0)
+ {
+ proProjectApplyMapper.batchProProjectApplyDetail(list);
+ }
+ }
+ }
+}
diff --git a/yanzhu-mapper/src/main/java/com/yanzhu/project/service/impl/ProProjectInfoServiceImpl.java b/yanzhu-mapper/src/main/java/com/yanzhu/project/service/impl/ProProjectInfoServiceImpl.java
new file mode 100644
index 0000000..fa667cf
--- /dev/null
+++ b/yanzhu-mapper/src/main/java/com/yanzhu/project/service/impl/ProProjectInfoServiceImpl.java
@@ -0,0 +1,96 @@
+package com.yanzhu.project.service.impl;
+
+import java.util.List;
+import com.yanzhu.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.yanzhu.project.mapper.ProProjectInfoMapper;
+import com.yanzhu.project.domain.ProProjectInfo;
+import com.yanzhu.project.service.IProProjectInfoService;
+
+/**
+ * 项目信息Service业务层处理
+ *
+ * @author yanZhu
+ * @date 2024-02-23
+ */
+@Service
+public class ProProjectInfoServiceImpl implements IProProjectInfoService
+{
+ @Autowired
+ private ProProjectInfoMapper proProjectInfoMapper;
+
+ /**
+ * 查询项目信息
+ *
+ * @param id 项目信息主键
+ * @return 项目信息
+ */
+ @Override
+ public ProProjectInfo selectProProjectInfoById(Long id)
+ {
+ return proProjectInfoMapper.selectProProjectInfoById(id);
+ }
+
+ /**
+ * 查询项目信息列表
+ *
+ * @param proProjectInfo 项目信息
+ * @return 项目信息
+ */
+ @Override
+ public List selectProProjectInfoList(ProProjectInfo proProjectInfo)
+ {
+ return proProjectInfoMapper.selectProProjectInfoList(proProjectInfo);
+ }
+
+ /**
+ * 新增项目信息
+ *
+ * @param proProjectInfo 项目信息
+ * @return 结果
+ */
+ @Override
+ public int insertProProjectInfo(ProProjectInfo proProjectInfo)
+ {
+ proProjectInfo.setCreateTime(DateUtils.getNowDate());
+ return proProjectInfoMapper.insertProProjectInfo(proProjectInfo);
+ }
+
+ /**
+ * 修改项目信息
+ *
+ * @param proProjectInfo 项目信息
+ * @return 结果
+ */
+ @Override
+ public int updateProProjectInfo(ProProjectInfo proProjectInfo)
+ {
+ proProjectInfo.setUpdateTime(DateUtils.getNowDate());
+ return proProjectInfoMapper.updateProProjectInfo(proProjectInfo);
+ }
+
+ /**
+ * 批量删除项目信息
+ *
+ * @param ids 需要删除的项目信息主键
+ * @return 结果
+ */
+ @Override
+ public int deleteProProjectInfoByIds(Long[] ids)
+ {
+ return proProjectInfoMapper.deleteProProjectInfoByIds(ids);
+ }
+
+ /**
+ * 删除项目信息信息
+ *
+ * @param id 项目信息主键
+ * @return 结果
+ */
+ @Override
+ public int deleteProProjectInfoById(Long id)
+ {
+ return proProjectInfoMapper.deleteProProjectInfoById(id);
+ }
+}
diff --git a/yanzhu-mapper/src/main/resources/mapper/project/ProProjectApplyMapper.xml b/yanzhu-mapper/src/main/resources/mapper/project/ProProjectApplyMapper.xml
new file mode 100644
index 0000000..652bb0e
--- /dev/null
+++ b/yanzhu-mapper/src/main/resources/mapper/project/ProProjectApplyMapper.xml
@@ -0,0 +1,164 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, dept_id, proj_id, apply_type, apply_status, apply_reason, apply_files, apply_user, use_time, is_del, create_by, create_time, update_by, update_time, remark from pro_project_apply
+
+
+
+
+
+
+
+ insert into pro_project_apply
+
+ id,
+ dept_id,
+ proj_id,
+ apply_type,
+ apply_status,
+ apply_reason,
+ apply_files,
+ apply_user,
+ use_time,
+ is_del,
+ create_by,
+ create_time,
+ update_by,
+ update_time,
+ remark,
+
+
+ #{id},
+ #{deptId},
+ #{projId},
+ #{applyType},
+ #{applyStatus},
+ #{applyReason},
+ #{applyFiles},
+ #{applyUser},
+ #{useTime},
+ #{isDel},
+ #{createBy},
+ #{createTime},
+ #{updateBy},
+ #{updateTime},
+ #{remark},
+
+
+
+
+ update pro_project_apply
+
+ dept_id = #{deptId},
+ proj_id = #{projId},
+ apply_type = #{applyType},
+ apply_status = #{applyStatus},
+ apply_reason = #{applyReason},
+ apply_files = #{applyFiles},
+ apply_user = #{applyUser},
+ use_time = #{useTime},
+ is_del = #{isDel},
+ create_by = #{createBy},
+ create_time = #{createTime},
+ update_by = #{updateBy},
+ update_time = #{updateTime},
+ remark = #{remark},
+
+ where id = #{id}
+
+
+
+ delete from pro_project_apply where id = #{id}
+
+
+
+ delete from pro_project_apply where id in
+
+ #{id}
+
+
+
+
+ delete from pro_project_apply_detail where apply_id in
+
+ #{applyId}
+
+
+
+
+ delete from pro_project_apply_detail where apply_id = #{applyId}
+
+
+
+ insert into pro_project_apply_detail( id, apply_id, super_type_id, super_type_name, type_id, type_name, assets_id, assets_name, assets_unit, number, use_time, use_reason, price, total_price, is_del, create_by, create_time, update_by, update_time, remark) values
+
+ ( #{item.id}, #{item.applyId}, #{item.superTypeId}, #{item.superTypeName}, #{item.typeId}, #{item.typeName}, #{item.assetsId}, #{item.assetsName}, #{item.assetsUnit}, #{item.number}, #{item.useTime}, #{item.useReason}, #{item.price}, #{item.totalPrice}, #{item.isDel}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
+
+
+
\ No newline at end of file
diff --git a/yanzhu-mapper/src/main/resources/mapper/project/ProProjectInfoMapper.xml b/yanzhu-mapper/src/main/resources/mapper/project/ProProjectInfoMapper.xml
new file mode 100644
index 0000000..91fbda9
--- /dev/null
+++ b/yanzhu-mapper/src/main/resources/mapper/project/ProProjectInfoMapper.xml
@@ -0,0 +1,124 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, name, dept_id, address, infos, person_name, person_phone, main_image, images, proj_status, is_del, create_by, create_time, update_by, update_time, remark, unit from pro_project_info
+
+
+
+
+
+
+
+ insert into pro_project_info
+
+ id,
+ name,
+ dept_id,
+ address,
+ infos,
+ person_name,
+ person_phone,
+ main_image,
+ images,
+ proj_status,
+ is_del,
+ create_by,
+ create_time,
+ update_by,
+ update_time,
+ remark,
+ unit,
+
+
+ #{id},
+ #{name},
+ #{deptId},
+ #{address},
+ #{infos},
+ #{personName},
+ #{personPhone},
+ #{mainImage},
+ #{images},
+ #{projStatus},
+ #{isDel},
+ #{createBy},
+ #{createTime},
+ #{updateBy},
+ #{updateTime},
+ #{remark},
+ #{unit},
+
+
+
+
+ update pro_project_info
+
+ name = #{name},
+ dept_id = #{deptId},
+ address = #{address},
+ infos = #{infos},
+ person_name = #{personName},
+ person_phone = #{personPhone},
+ main_image = #{mainImage},
+ images = #{images},
+ proj_status = #{projStatus},
+ is_del = #{isDel},
+ create_by = #{createBy},
+ create_time = #{createTime},
+ update_by = #{updateBy},
+ update_time = #{updateTime},
+ remark = #{remark},
+ unit = #{unit},
+
+ where id = #{id}
+
+
+
+ delete from pro_project_info where id = #{id}
+
+
+
+ delete from pro_project_info where id in
+
+ #{id}
+
+
+
\ No newline at end of file
diff --git a/yanzhu-ui/.npmrc b/yanzhu-ui/.npmrc
new file mode 100644
index 0000000..b294168
--- /dev/null
+++ b/yanzhu-ui/.npmrc
@@ -0,0 +1,2 @@
+engine-strict=true
+engine-override.npm=8.19.2
\ No newline at end of file
diff --git a/yanzhu-ui/src/api/project/projectApply.js b/yanzhu-ui/src/api/project/projectApply.js
new file mode 100644
index 0000000..b403866
--- /dev/null
+++ b/yanzhu-ui/src/api/project/projectApply.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询项目申请列表
+export function listProjectApply(query) {
+ return request({
+ url: '/project/projectApply/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询项目申请详细
+export function getProjectApply(id) {
+ return request({
+ url: '/project/projectApply/' + id,
+ method: 'get'
+ })
+}
+
+// 新增项目申请
+export function addProjectApply(data) {
+ return request({
+ url: '/project/projectApply',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改项目申请
+export function updateProjectApply(data) {
+ return request({
+ url: '/project/projectApply',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除项目申请
+export function delProjectApply(id) {
+ return request({
+ url: '/project/projectApply/' + id,
+ method: 'delete'
+ })
+}
diff --git a/yanzhu-ui/src/api/project/projectInfo.js b/yanzhu-ui/src/api/project/projectInfo.js
new file mode 100644
index 0000000..4aa9417
--- /dev/null
+++ b/yanzhu-ui/src/api/project/projectInfo.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询项目信息列表
+export function listProjectInfo(query) {
+ return request({
+ url: '/project/projectInfo/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询项目信息详细
+export function getProjectInfo(id) {
+ return request({
+ url: '/project/projectInfo/' + id,
+ method: 'get'
+ })
+}
+
+// 新增项目信息
+export function addProjectInfo(data) {
+ return request({
+ url: '/project/projectInfo',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改项目信息
+export function updateProjectInfo(data) {
+ return request({
+ url: '/project/projectInfo',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除项目信息
+export function delProjectInfo(id) {
+ return request({
+ url: '/project/projectInfo/' + id,
+ method: 'delete'
+ })
+}
diff --git a/yanzhu-ui/src/views/project/projectApply/index.vue b/yanzhu-ui/src/views/project/projectApply/index.vue
new file mode 100644
index 0000000..4a186a8
--- /dev/null
+++ b/yanzhu-ui/src/views/project/projectApply/index.vue
@@ -0,0 +1,528 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增
+
+
+ 修改
+
+
+ 删除
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ parseTime(scope.row.useTime, '{y}-{m}-{d}') }}
+
+
+
+
+
+
+
+
+
+
+ 修改
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 项目申请明细信息
+
+
+ 添加
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/yanzhu-ui/src/views/project/projectInfo/index.vue b/yanzhu-ui/src/views/project/projectInfo/index.vue
new file mode 100644
index 0000000..4b68402
--- /dev/null
+++ b/yanzhu-ui/src/views/project/projectInfo/index.vue
@@ -0,0 +1,357 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增
+
+
+ 修改
+
+
+ 删除
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 修改
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+