From 68cbd33f0d0beef30306783127cc93369e4c19cb Mon Sep 17 00:00:00 2001
From: sikadi <13315935+sikadi_love@user.noreply.gitee.com>
Date: Mon, 9 Oct 2023 11:15:44 +0800
Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95--01?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/compiler.xml | 4 +-
.idea/encodings.xml | 1 +
.idea/misc.xml | 6 +-
.../java/com/bwie/common/domain/Project.java | 6 +-
.../bwie/common/domain/ProjectCostType.java | 14 +++
.../common/domain/request/ProjectInquire.java | 45 ++++++++++
Genius-modules/Genius-costType/pom.xml | 51 +++++++++++
.../bwie/costType/CostTypeApplication.java | 11 +++
.../controller/CostTypeController.java | 39 ++++++++
.../controller/ProjectCostTypeController.java | 78 ++++++++++++++++
.../bwie/costType/mapper/CostTypeMapper.java | 13 +++
.../mapper/ProjectCostTypeMapper.java | 18 ++++
.../costType/service/CostTypeService.java | 13 +++
.../service/ProjectCostTypeService.java | 15 ++++
.../service/impl/CostTypeServiceImpl.java | 30 +++++++
.../impl/ProjectCostTypeServiceImpl.java | 77 ++++++++++++++++
.../src/main/resources/bootstrap.yml | 30 +++++++
.../main/resources/mapper/CostTypeMapper.xml | 11 +++
.../mapper/ProjectCostTypeMapper.xml | 20 +++++
Genius-modules/Genius-project/pom.xml | 35 ++++++++
.../src/main/java/com/bwie/Main.java | 7 --
.../project/GeniusProjectApplication.java | 18 ++++
.../project/controller/ProjectController.java | 66 ++++++++++++++
.../com/bwie/project/feign/FeignCostType.java | 34 +++++++
.../bwie/project/mapper/ProjectMapper.java | 47 ++++++++++
.../bwie/project/service/ProjectService.java | 36 ++++++++
.../service/impl/ProjectServiceImpl.java | 90 +++++++++++++++++++
.../src/main/resources/bootstrap.yml | 30 +++++++
.../src/main/resources/mapper/ProjectXml.xml | 36 ++++++++
.../main/java/com/bwie/user/mapper/jjd.java | 9 --
30 files changed, 863 insertions(+), 27 deletions(-)
create mode 100644 Genius-common/src/main/java/com/bwie/common/domain/request/ProjectInquire.java
create mode 100644 Genius-modules/Genius-costType/pom.xml
create mode 100644 Genius-modules/Genius-costType/src/main/java/com/bwie/costType/CostTypeApplication.java
create mode 100644 Genius-modules/Genius-costType/src/main/java/com/bwie/costType/controller/CostTypeController.java
create mode 100644 Genius-modules/Genius-costType/src/main/java/com/bwie/costType/controller/ProjectCostTypeController.java
create mode 100644 Genius-modules/Genius-costType/src/main/java/com/bwie/costType/mapper/CostTypeMapper.java
create mode 100644 Genius-modules/Genius-costType/src/main/java/com/bwie/costType/mapper/ProjectCostTypeMapper.java
create mode 100644 Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/CostTypeService.java
create mode 100644 Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/ProjectCostTypeService.java
create mode 100644 Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/impl/CostTypeServiceImpl.java
create mode 100644 Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/impl/ProjectCostTypeServiceImpl.java
create mode 100644 Genius-modules/Genius-costType/src/main/resources/bootstrap.yml
create mode 100644 Genius-modules/Genius-costType/src/main/resources/mapper/CostTypeMapper.xml
create mode 100644 Genius-modules/Genius-costType/src/main/resources/mapper/ProjectCostTypeMapper.xml
delete mode 100644 Genius-modules/Genius-project/src/main/java/com/bwie/Main.java
create mode 100644 Genius-modules/Genius-project/src/main/java/com/bwie/project/GeniusProjectApplication.java
create mode 100644 Genius-modules/Genius-project/src/main/java/com/bwie/project/controller/ProjectController.java
create mode 100644 Genius-modules/Genius-project/src/main/java/com/bwie/project/feign/FeignCostType.java
create mode 100644 Genius-modules/Genius-project/src/main/java/com/bwie/project/mapper/ProjectMapper.java
create mode 100644 Genius-modules/Genius-project/src/main/java/com/bwie/project/service/ProjectService.java
create mode 100644 Genius-modules/Genius-project/src/main/java/com/bwie/project/service/impl/ProjectServiceImpl.java
create mode 100644 Genius-modules/Genius-project/src/main/resources/bootstrap.yml
create mode 100644 Genius-modules/Genius-project/src/main/resources/mapper/ProjectXml.xml
delete mode 100644 Genius-modules/Genius-user/src/main/java/com/bwie/user/mapper/jjd.java
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 4e01e92..862f453 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -9,13 +9,11 @@
+
-
-
-
-
-
-
+
diff --git a/Genius-common/src/main/java/com/bwie/common/domain/Project.java b/Genius-common/src/main/java/com/bwie/common/domain/Project.java
index 47d213b..cd4e370 100644
--- a/Genius-common/src/main/java/com/bwie/common/domain/Project.java
+++ b/Genius-common/src/main/java/com/bwie/common/domain/Project.java
@@ -66,15 +66,15 @@ public class Project {
private Integer status;
@ApiModelProperty("成本类型集合")
- @TableField("projectCostTypeList")
private List projectCostTypeList;
+ @ApiModelProperty("类型的数据")
+ private Integer type[];
+
@ApiModelProperty("总概算金额")
- @TableField("imputedAmountSum")
private Double imputedAmountSum;
@ApiModelProperty("总估算金额")
- @TableField("estimatedAmountSum")
private Double estimatedAmountSum;
diff --git a/Genius-common/src/main/java/com/bwie/common/domain/ProjectCostType.java b/Genius-common/src/main/java/com/bwie/common/domain/ProjectCostType.java
index a41ca19..eb146bf 100644
--- a/Genius-common/src/main/java/com/bwie/common/domain/ProjectCostType.java
+++ b/Genius-common/src/main/java/com/bwie/common/domain/ProjectCostType.java
@@ -33,6 +33,10 @@ public class ProjectCostType {
@TableField("cost_type_id")
private Integer costTypeId;
+ @ApiModelProperty("项目成本类型名称")
+ private String costTypeName;
+
+
@ApiModelProperty("估算金额")
@TableField("imputed_amount")
private Double imputedAmount;
@@ -45,5 +49,15 @@ public class ProjectCostType {
@TableField("status")
private Integer status;
+ @ApiModelProperty("修改人")
+ @TableField("update_by")
+ private Integer updateBy;
+
+ @ApiModelProperty("修改时间")
+ @TableField("update_time")
+ private Integer updateTime;
+
+
+
}
diff --git a/Genius-common/src/main/java/com/bwie/common/domain/request/ProjectInquire.java b/Genius-common/src/main/java/com/bwie/common/domain/request/ProjectInquire.java
new file mode 100644
index 0000000..cd31646
--- /dev/null
+++ b/Genius-common/src/main/java/com/bwie/common/domain/request/ProjectInquire.java
@@ -0,0 +1,45 @@
+package com.bwie.common.domain.request;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+ * @description: TODO
+ * @author: SIKADI
+ * @date: 2023/10/8 16:27
+ **/
+@Data
+public class ProjectInquire {
+
+
+
+ @ApiModelProperty("第几页")
+ private Integer pageNum=1;
+
+ @ApiModelProperty("每页条数")
+ private Integer pageSize=3;
+
+ @ApiModelProperty("项目名称")
+ private String projectName;
+
+ @ApiModelProperty("项目客户方")
+ private String projectClient;
+
+ @ApiModelProperty("项目立项开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
+ private Date projectCreateTimeStart;
+
+ @ApiModelProperty("项目立项结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
+ private Date projectCreateTimeEnd;
+
+
+
+}
diff --git a/Genius-modules/Genius-costType/pom.xml b/Genius-modules/Genius-costType/pom.xml
new file mode 100644
index 0000000..f20c854
--- /dev/null
+++ b/Genius-modules/Genius-costType/pom.xml
@@ -0,0 +1,51 @@
+
+
+
+ Genius-modules
+ com.bwie
+ 1.0-SNAPSHOT
+
+ 4.0.0
+
+ Genius-costType
+
+
+
+
+
+ com.bwie
+ Genius-common
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+ com.alibaba
+ druid-spring-boot-starter
+ 1.2.8
+
+
+
+ mysql
+ mysql-connector-java
+
+
+
+ org.mybatis.spring.boot
+ mybatis-spring-boot-starter
+ 2.2.2
+
+
+
+ com.github.pagehelper
+ pagehelper-spring-boot-starter
+ 1.4.1
+
+
+
+
diff --git a/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/CostTypeApplication.java b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/CostTypeApplication.java
new file mode 100644
index 0000000..d665216
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/CostTypeApplication.java
@@ -0,0 +1,11 @@
+package com.bwie.costType;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class CostTypeApplication {
+ public static void main(String[] args) {
+ SpringApplication.run(CostTypeApplication.class);
+ }
+}
diff --git a/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/controller/CostTypeController.java b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/controller/CostTypeController.java
new file mode 100644
index 0000000..2ff7bc5
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/controller/CostTypeController.java
@@ -0,0 +1,39 @@
+package com.bwie.costType.controller;
+
+import com.bwie.common.domain.CostType;
+import com.bwie.common.result.Result;
+import com.bwie.costType.service.impl.CostTypeServiceImpl;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+
+@RestController
+@Log4j2
+public class CostTypeController {
+ @Autowired
+ private CostTypeServiceImpl costTypeService;
+
+ @Autowired
+ private HttpServletRequest request;
+
+ /**
+ * 获取所有成本类型
+ * @return
+ */
+ @GetMapping("costTypeList")
+ public Result> costTypeList(){
+ log.info("功能:成本类型,请求路径:{},请求方式:{},请求参数:{}",
+ request.getRequestURI(),request.getMethod(),"");
+
+ Result> result = costTypeService.costTypeList();
+
+ log.info("功能:成本类型,请求路径:{},请求方式:{},响应结果:{}",
+ request.getRequestURI(),request.getMethod(),result);
+
+ return result;
+ }
+}
diff --git a/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/controller/ProjectCostTypeController.java b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/controller/ProjectCostTypeController.java
new file mode 100644
index 0000000..bbe4233
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/controller/ProjectCostTypeController.java
@@ -0,0 +1,78 @@
+package com.bwie.costType.controller;
+
+import com.bwie.common.domain.CostType;
+import com.bwie.common.domain.Project;
+import com.bwie.common.domain.ProjectCostType;
+import com.bwie.common.result.Result;
+import com.bwie.costType.service.impl.CostTypeServiceImpl;
+import com.bwie.costType.service.impl.ProjectCostTypeServiceImpl;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+
+@RestController
+@Log4j2
+public class ProjectCostTypeController {
+ @Autowired
+ private ProjectCostTypeServiceImpl projectCostTypeService;
+
+ @Autowired
+ private HttpServletRequest request;
+
+ /**
+ * 根据项目id获取成本类型中间列表
+ * @return
+ */
+ @GetMapping("/ProjectCostTypeListById/{pid}")
+ public Result> ProjectCostTypeListById(@PathVariable Integer pid){
+ log.info("功能:成根据项目id获取成本类型中间列表类型,请求路径:{},请求方式:{},请求参数:{}",
+ request.getRequestURI(),request.getMethod(),pid);
+
+ Result> result = projectCostTypeService.ProjectCostTypeListById(pid);
+
+ log.info("功能:根据项目id获取成本类型中间列表,请求路径:{},请求方式:{},响应结果:{}",
+ request.getRequestURI(),request.getMethod(),result);
+
+ return result;
+ }
+
+ /**
+ * 修改估算金额
+ */
+ @PostMapping("updateImputedAmount")
+ public Result updateImputedAmount(@RequestBody Project project){
+ log.info("功能:修改估算金额,请求路径:{},请求方式:{},请求参数:{}",
+ request.getRequestURI(),request.getMethod(),project);
+
+ Result result = projectCostTypeService.updateImputedAmount(project);
+
+ log.info("功能:修改估算金额,请求路径:{},请求方式:{},响应结果:{}",
+ request.getRequestURI(),request.getMethod(),result);
+
+ return result;
+ }
+
+ /**
+ * 审核估算金额
+ * @param projectCostType
+ * @return
+ */
+ @PostMapping("examineImputedAmount")
+ public Result examineImputedAmount(@RequestBody ProjectCostType projectCostType){
+ log.info("功能:审核估算金额,请求路径:{},请求方式:{},请求参数:{}",
+ request.getRequestURI(),request.getMethod(),projectCostType);
+
+ Result result = projectCostTypeService.examineImputedAmount(projectCostType);
+
+ log.info("功能:审核估算金额,请求路径:{},请求方式:{},响应结果:{}",
+ request.getRequestURI(),request.getMethod(),result);
+
+ return result;
+ }
+
+
+
+}
diff --git a/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/mapper/CostTypeMapper.java b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/mapper/CostTypeMapper.java
new file mode 100644
index 0000000..04d84e6
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/mapper/CostTypeMapper.java
@@ -0,0 +1,13 @@
+package com.bwie.costType.mapper;
+
+import com.bwie.common.domain.CostType;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+@Mapper
+@Component
+public interface CostTypeMapper {
+ List costTypeList();
+}
diff --git a/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/mapper/ProjectCostTypeMapper.java b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/mapper/ProjectCostTypeMapper.java
new file mode 100644
index 0000000..dc2d49c
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/mapper/ProjectCostTypeMapper.java
@@ -0,0 +1,18 @@
+package com.bwie.costType.mapper;
+
+import com.bwie.common.domain.ProjectCostType;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+@Mapper
+@Component
+public interface ProjectCostTypeMapper {
+ List ProjectCostTypeListById(@Param("pid") Integer pid);
+
+ void updateImputedAmount(ProjectCostType projectCostType);
+
+ int examineImputedAmount(ProjectCostType projectCostType);
+}
diff --git a/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/CostTypeService.java b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/CostTypeService.java
new file mode 100644
index 0000000..e17d2dd
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/CostTypeService.java
@@ -0,0 +1,13 @@
+package com.bwie.costType.service;
+
+import com.bwie.common.domain.CostType;
+import com.bwie.common.domain.ProjectCostType;
+import com.bwie.common.result.Result;
+
+import java.util.List;
+
+public interface CostTypeService {
+ Result> costTypeList();
+
+
+}
diff --git a/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/ProjectCostTypeService.java b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/ProjectCostTypeService.java
new file mode 100644
index 0000000..af6842f
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/ProjectCostTypeService.java
@@ -0,0 +1,15 @@
+package com.bwie.costType.service;
+
+import com.bwie.common.domain.Project;
+import com.bwie.common.domain.ProjectCostType;
+import com.bwie.common.result.Result;
+
+import java.util.List;
+
+public interface ProjectCostTypeService {
+ Result> ProjectCostTypeListById(Integer pid);
+
+ Result updateImputedAmount(Project project);
+
+ Result examineImputedAmount(ProjectCostType projectCostType);
+}
diff --git a/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/impl/CostTypeServiceImpl.java b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/impl/CostTypeServiceImpl.java
new file mode 100644
index 0000000..eebadbe
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/impl/CostTypeServiceImpl.java
@@ -0,0 +1,30 @@
+package com.bwie.costType.service.impl;
+
+import com.bwie.common.domain.CostType;
+import com.bwie.common.domain.ProjectCostType;
+import com.bwie.common.result.Result;
+import com.bwie.costType.mapper.CostTypeMapper;
+import com.bwie.costType.service.CostTypeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class CostTypeServiceImpl implements CostTypeService {
+ @Autowired
+ private CostTypeMapper costTypeMapper;
+
+
+ /**
+ * 获取成本类型列表
+ * @return
+ */
+ @Override
+ public Result> costTypeList() {
+ List list = costTypeMapper.costTypeList();
+ return Result.success();
+ }
+
+
+}
diff --git a/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/impl/ProjectCostTypeServiceImpl.java b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/impl/ProjectCostTypeServiceImpl.java
new file mode 100644
index 0000000..f577393
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/java/com/bwie/costType/service/impl/ProjectCostTypeServiceImpl.java
@@ -0,0 +1,77 @@
+package com.bwie.costType.service.impl;
+
+import com.bwie.common.domain.Project;
+import com.bwie.common.domain.ProjectCostType;
+import com.bwie.common.result.Result;
+import com.bwie.costType.mapper.ProjectCostTypeMapper;
+import com.bwie.costType.service.ProjectCostTypeService;
+import org.springframework.amqp.rabbit.core.RabbitTemplate;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.UUID;
+
+@Service
+public class ProjectCostTypeServiceImpl implements ProjectCostTypeService {
+ @Autowired
+ private ProjectCostTypeMapper projectCostTypeMapper;
+
+ @Autowired
+ private RabbitTemplate rabbitTemplate;
+
+ /**
+ * 根据用户id获取成本类型中间列表
+ * @param pid
+ * @return
+ */
+ @Override
+ public Result> ProjectCostTypeListById(Integer pid) {
+ List list = projectCostTypeMapper.ProjectCostTypeListById(pid);
+ return Result.success(list);
+ }
+
+ /**
+ * 修改估算金额
+ * @param project
+ * @return
+ */
+ @Override
+ public Result updateImputedAmount(Project project) {
+ List projectCostTypeList = project.getProjectCostTypeList();
+ for (ProjectCostType projectCostType : projectCostTypeList) {
+ //先进行数据的修改
+ projectCostTypeMapper.updateImputedAmount(projectCostType);
+ //判断 如果概算金额不为空 说明已经审核过了,需要发送消息给审核人
+ if (projectCostType.getEstimatedAmount()!=null){
+ //[项目名称][类型名称]的估算类型发估算更改,金额从[原始金额]变更为[变更后金额]
+ String msg = project.getProjectName()+projectCostType.getCostTypeName()+
+ "的估算类型发生估算更改,金额从"+projectCostType.getImputedAmount()+
+ "变更为"+projectCostType.getEstimatedAmount();
+ Integer updateBy = projectCostType.getUpdateBy(); //获取当前最后修改人也就是审核人id
+ //异步发送消息
+ rabbitTemplate.convertAndSend("MSG_QUEUE",msg+"%"+updateBy,message -> {
+ message.getMessageProperties().setMessageId(UUID.randomUUID().toString());
+ return message;
+ });
+ }
+ }
+ return Result.success();
+ }
+
+ /**
+ * 审核估算金额/填写概算金额
+ * @param projectCostType
+ * @return
+ */
+ @Override
+ public Result examineImputedAmount(ProjectCostType projectCostType) {
+ if (projectCostType.getEstimatedAmount().equals(projectCostType.getImputedAmount())){
+ projectCostType.setStatus(1);
+ }else {
+ projectCostType.setStatus(0);
+ }
+ int i = projectCostTypeMapper.examineImputedAmount(projectCostType);
+ return i>0?Result.success():Result.error();
+ }
+}
diff --git a/Genius-modules/Genius-costType/src/main/resources/bootstrap.yml b/Genius-modules/Genius-costType/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000..43e3b9c
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/resources/bootstrap.yml
@@ -0,0 +1,30 @@
+# Tomcat
+server:
+ port: 9002
+# Spring
+spring:
+ main:
+ allow-circular-references: true
+ jackson:
+ date-format: yyyy-MM-dd HH:mm:ss
+ time-zone: GMT+8
+ application:
+ # 应用名称
+ name: bwie-costType
+ profiles:
+ # 环境配置
+ active: dev
+ cloud:
+ nacos:
+ discovery:
+ # 服务注册地址
+ server-addr: 182.254.222.21:8848
+ config:
+ # 配置中心地址
+ server-addr: 182.254.222.21:8848
+ # 配置文件格式
+ file-extension: yml
+ # 共享配置
+ shared-configs:
+ - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
+ namespace: Sha
diff --git a/Genius-modules/Genius-costType/src/main/resources/mapper/CostTypeMapper.xml b/Genius-modules/Genius-costType/src/main/resources/mapper/CostTypeMapper.xml
new file mode 100644
index 0000000..3928cfa
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/resources/mapper/CostTypeMapper.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
diff --git a/Genius-modules/Genius-costType/src/main/resources/mapper/ProjectCostTypeMapper.xml b/Genius-modules/Genius-costType/src/main/resources/mapper/ProjectCostTypeMapper.xml
new file mode 100644
index 0000000..940c0ef
--- /dev/null
+++ b/Genius-modules/Genius-costType/src/main/resources/mapper/ProjectCostTypeMapper.xml
@@ -0,0 +1,20 @@
+
+
+
+
+ update t_project_cost_type set imputed_amount=#{imputedAmount}
+ where id=#{id}
+
+
+
+ update t_project_cost_type set
+ estimated_amount=#{estimatedAmount},status=#{status}
+ where id=#{id}
+
+
+
+
diff --git a/Genius-modules/Genius-project/pom.xml b/Genius-modules/Genius-project/pom.xml
index 31e0c67..619c1f1 100644
--- a/Genius-modules/Genius-project/pom.xml
+++ b/Genius-modules/Genius-project/pom.xml
@@ -16,5 +16,40 @@
8
UTF-8
+
+
+
+ com.bwie
+ Genius-common
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+ com.alibaba
+ druid-spring-boot-starter
+ 1.2.8
+
+
+
+ mysql
+ mysql-connector-java
+
+
+
+ org.mybatis.spring.boot
+ mybatis-spring-boot-starter
+ 2.2.2
+
+
+
+ com.github.pagehelper
+ pagehelper-spring-boot-starter
+ 1.4.1
+
+
diff --git a/Genius-modules/Genius-project/src/main/java/com/bwie/Main.java b/Genius-modules/Genius-project/src/main/java/com/bwie/Main.java
deleted file mode 100644
index 1287888..0000000
--- a/Genius-modules/Genius-project/src/main/java/com/bwie/Main.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.bwie;
-
-public class Main {
- public static void main(String[] args) {
- System.out.println("Hello world!");
- }
-}
\ No newline at end of file
diff --git a/Genius-modules/Genius-project/src/main/java/com/bwie/project/GeniusProjectApplication.java b/Genius-modules/Genius-project/src/main/java/com/bwie/project/GeniusProjectApplication.java
new file mode 100644
index 0000000..9dffb84
--- /dev/null
+++ b/Genius-modules/Genius-project/src/main/java/com/bwie/project/GeniusProjectApplication.java
@@ -0,0 +1,18 @@
+package com.bwie.project;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.openfeign.EnableFeignClients;
+
+/**
+ * @description: TODO
+ * @author: SIKADI
+ * @date: 2023/10/8 16:22
+ **/
+@SpringBootApplication
+@EnableFeignClients
+public class GeniusProjectApplication {
+ public static void main(String[] args) {
+ SpringApplication.run(GeniusProjectApplication.class);
+ }
+}
diff --git a/Genius-modules/Genius-project/src/main/java/com/bwie/project/controller/ProjectController.java b/Genius-modules/Genius-project/src/main/java/com/bwie/project/controller/ProjectController.java
new file mode 100644
index 0000000..0152beb
--- /dev/null
+++ b/Genius-modules/Genius-project/src/main/java/com/bwie/project/controller/ProjectController.java
@@ -0,0 +1,66 @@
+package com.bwie.project.controller;
+
+
+import com.alibaba.fastjson.JSON;
+import com.bwie.common.domain.Project;
+import com.bwie.common.domain.request.ProjectInquire;
+import com.bwie.common.result.PageResult;
+import com.bwie.common.result.Result;
+import com.bwie.project.service.ProjectService;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ *
+ * 前端控制器
+ *
+ *
+ * @author sikadi
+ * @since 2023-10-08 02:57:22
+ */
+@RestController
+@Log4j2
+public class ProjectController {
+
+ @Autowired
+ private ProjectService projectService;
+
+ /**
+ * @description: 列表
+ * @author: (扭曲)(爬行)(抽搐)
+ * @date: 2023/10/8 16:37
+ * @param: [projectInquire]
+ * @return: com.bwie.common.result.Result>
+ **/
+ @PostMapping("/projectList")
+ private Result> projectList(@RequestBody ProjectInquire projectInquire){
+ log.info("列表请求的值:{}", JSON.toJSONString(projectInquire));
+ PageResult pageResult = projectService.projectList(projectInquire);
+ log.info("列表响应:{}",JSON.toJSONString(pageResult.getList()));
+ return Result.success(pageResult);
+ }
+
+
+ /**
+ * @description: 添加的功能
+ * @author: (扭曲)(爬行)(抽搐)
+ * @date: 2023/10/9 8:15
+ * @param: [project]
+ * @return: com.bwie.common.result.Result
+ **/
+ @PostMapping("/projectIncrease")
+ public Result projectIncrease(@RequestBody Project project){
+ log.info("添加---请求:{}",JSON.toJSONString(project));
+ Result result = projectService.projectIncrease(project);
+ log.info("添加---结果:{}",JSON.toJSONString(result.getData()));
+ return result;
+ }
+
+}
+
diff --git a/Genius-modules/Genius-project/src/main/java/com/bwie/project/feign/FeignCostType.java b/Genius-modules/Genius-project/src/main/java/com/bwie/project/feign/FeignCostType.java
new file mode 100644
index 0000000..4b75e38
--- /dev/null
+++ b/Genius-modules/Genius-project/src/main/java/com/bwie/project/feign/FeignCostType.java
@@ -0,0 +1,34 @@
+package com.bwie.project.feign;
+
+import com.bwie.common.domain.CostType;
+import com.bwie.common.domain.ProjectCostType;
+import com.bwie.common.result.Result;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+
+import java.util.List;
+
+/**
+ * @description: TODO
+ * @author: SIKADI
+ * @date: 2023/10/8 16:39
+ **/
+@FeignClient("bwie-costType")
+public interface FeignCostType {
+ /**
+ * 获取所有成本类型
+ * @return
+ */
+ @GetMapping("costTypeList")
+ public Result> costTypeList();
+
+
+
+ /**
+ * 根据项目id获取成本类型中间列表
+ * @return
+ */
+ @GetMapping("/ProjectCostTypeListById/{pid}")
+ public Result> ProjectCostTypeListById(@PathVariable Integer pid);
+}
diff --git a/Genius-modules/Genius-project/src/main/java/com/bwie/project/mapper/ProjectMapper.java b/Genius-modules/Genius-project/src/main/java/com/bwie/project/mapper/ProjectMapper.java
new file mode 100644
index 0000000..675119f
--- /dev/null
+++ b/Genius-modules/Genius-project/src/main/java/com/bwie/project/mapper/ProjectMapper.java
@@ -0,0 +1,47 @@
+package com.bwie.project.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.bwie.common.domain.Project;
+import com.bwie.common.domain.request.ProjectInquire;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ *
+ * Mapper 接口
+ *
+ *
+ * @author sikadi
+ * @since 2023-10-08 02:57:22
+ */
+@Mapper
+public interface ProjectMapper {
+
+ /**
+ * @description: 查询列表
+ * @author: (扭曲)(爬行)(抽搐)
+ * @date: 2023/10/8 16:46
+ * @param: [projectInquire]
+ * @return: java.util.List
+ **/
+ List projectList(ProjectInquire projectInquire);
+
+ /**
+ * @description: 添加
+ * @author: (扭曲)(爬行)(抽搐)
+ * @date: 2023/10/9 10:21
+ * @param: [project]
+ * @return: int
+ **/
+ int projectIncrease(Project project);
+
+ /**
+ * @description: 添加中间表
+ * @author: (扭曲)(爬行)(抽搐)
+ * @date: 2023/10/9 10:35
+ * @param: [project]
+ * @return: int
+ **/
+ int projectCostTypeIncrease(Project project);
+}
diff --git a/Genius-modules/Genius-project/src/main/java/com/bwie/project/service/ProjectService.java b/Genius-modules/Genius-project/src/main/java/com/bwie/project/service/ProjectService.java
new file mode 100644
index 0000000..68e4135
--- /dev/null
+++ b/Genius-modules/Genius-project/src/main/java/com/bwie/project/service/ProjectService.java
@@ -0,0 +1,36 @@
+package com.bwie.project.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.bwie.common.domain.Project;
+import com.bwie.common.domain.request.ProjectInquire;
+import com.bwie.common.result.PageResult;
+import com.bwie.common.result.Result;
+
+/**
+ *
+ * 服务类
+ *
+ *
+ * @author sikadi
+ * @since 2023-10-08 02:57:22
+ */
+public interface ProjectService {
+
+ /**
+ * @description: 列表
+ * @author: (扭曲)(爬行)(抽搐)
+ * @date: 2023/10/8 16:37
+ * @param: [projectInquire]
+ * @return: com.bwie.common.result.PageResult
+ **/
+ PageResult projectList(ProjectInquire projectInquire);
+
+ /**
+ * @description: 添加
+ * @author: (扭曲)(爬行)(抽搐)
+ * @date: 2023/10/9 8:15
+ * @param: [project]
+ * @return: com.bwie.common.result.Result
+ **/
+ Result projectIncrease(Project project);
+}
diff --git a/Genius-modules/Genius-project/src/main/java/com/bwie/project/service/impl/ProjectServiceImpl.java b/Genius-modules/Genius-project/src/main/java/com/bwie/project/service/impl/ProjectServiceImpl.java
new file mode 100644
index 0000000..88c3a33
--- /dev/null
+++ b/Genius-modules/Genius-project/src/main/java/com/bwie/project/service/impl/ProjectServiceImpl.java
@@ -0,0 +1,90 @@
+package com.bwie.project.service.impl;
+
+import com.bwie.common.domain.Project;
+import com.bwie.common.domain.ProjectCostType;
+import com.bwie.common.domain.request.ProjectInquire;
+import com.bwie.common.result.PageResult;
+import com.bwie.common.result.Result;
+import com.bwie.project.feign.FeignCostType;
+import com.bwie.project.mapper.ProjectMapper;
+import com.bwie.project.service.ProjectService;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ *
+ * 服务实现类
+ *
+ *
+ * @author sikadi
+ * @since 2023-10-08 02:57:22
+ */
+@Service
+public class ProjectServiceImpl implements ProjectService {
+
+ @Autowired
+ private ProjectMapper projectMapper;
+
+ @Autowired
+ private FeignCostType feignCostType;
+
+
+ /**
+ * @description: 列表
+ * @author: (扭曲)(爬行)(抽搐)
+ * @date: 2023/10/8 16:42
+ * @param: [projectInquire]
+ * @return: com.bwie.common.result.PageResult
+ **/
+ @Override
+ public PageResult projectList(ProjectInquire projectInquire) {
+ // 分页
+ PageHelper.startPage(projectInquire.getPageNum(),projectInquire.getPageSize());
+ // 查询列表
+ List projectList = projectMapper.projectList(projectInquire);
+
+ // 查询成功时 循环获取id
+ projectList.forEach(item -> {
+ // 创建两个空的对象 分别装的是 总概算金额 总估算金额
+ Double imputedAmountSum = null; // 总概算金额
+ Double estimatedAmountSum = null; // 总估算金额
+ // 赋值给 中间表
+ Result> listResult = feignCostType.ProjectCostTypeListById(item.getId());
+ // 循环得出值
+ for (ProjectCostType datum : listResult.getData()) {
+ imputedAmountSum += datum.getImputedAmount();
+ estimatedAmountSum += datum.getEstimatedAmount();
+ }
+ // 赋值
+ item.setImputedAmountSum(imputedAmountSum);
+ item.setEstimatedAmountSum(estimatedAmountSum);
+ });
+ // 取出
+ PageInfo projectPageInfo = new PageInfo<>(projectList);
+
+ return PageResult.toPageResult(projectPageInfo.getTotal(),projectList);
+ }
+
+ /**
+ * @description: 添加
+ * @author: (扭曲)(爬行)(抽搐)
+ * @date: 2023/10/9 8:16
+ * @param: [project]
+ * @return: com.bwie.common.result.Result
+ **/
+ @Override
+ public Result projectIncrease(Project project){
+ // 先进行 表添加
+ int i = projectMapper.projectIncrease(project);
+ if(0==i){
+ return Result.error("添加失败");
+ }
+ // 再次进行添加成本类型中间表
+ int j = projectMapper.projectCostTypeIncrease(project);
+ return null;
+ }
+}
diff --git a/Genius-modules/Genius-project/src/main/resources/bootstrap.yml b/Genius-modules/Genius-project/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000..66cd60a
--- /dev/null
+++ b/Genius-modules/Genius-project/src/main/resources/bootstrap.yml
@@ -0,0 +1,30 @@
+# Tomcat
+server:
+ port: 9001
+# Spring
+spring:
+ main:
+ allow-circular-references: true
+ jackson:
+ date-format: yyyy-MM-dd HH:mm:ss
+ time-zone: GMT+8
+ application:
+ # 应用名称
+ name: bwie-project
+ profiles:
+ # 环境配置
+ active: dev
+ cloud:
+ nacos:
+ discovery:
+ # 服务注册地址
+ server-addr: 182.254.222.21:8848
+ config:
+ # 配置中心地址
+ server-addr: 182.254.222.21:8848
+ # 配置文件格式
+ file-extension: yml
+ # 共享配置
+ shared-configs:
+ - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
+ namespace: Sha
diff --git a/Genius-modules/Genius-project/src/main/resources/mapper/ProjectXml.xml b/Genius-modules/Genius-project/src/main/resources/mapper/ProjectXml.xml
new file mode 100644
index 0000000..af7b160
--- /dev/null
+++ b/Genius-modules/Genius-project/src/main/resources/mapper/ProjectXml.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+ insert into t_project (project_name,project_card,project_client,project_create_time,project_start_time,project_completed_time,project_leader,project_image,status)
+ values (#{projectName},#{projectCard},#{projectClient},now(),#{projectStartTime},#{projectCompletedTime},#{projectLeader},#{projectImage},0);
+
+
+ insert into t_project_cost_type (project_id,cost_type_id,status)
+ values
+ (#{id},item,0)
+ ;
+
+
diff --git a/Genius-modules/Genius-user/src/main/java/com/bwie/user/mapper/jjd.java b/Genius-modules/Genius-user/src/main/java/com/bwie/user/mapper/jjd.java
deleted file mode 100644
index 7480d64..0000000
--- a/Genius-modules/Genius-user/src/main/java/com/bwie/user/mapper/jjd.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package com.bwie.user.mapper;
-
-/**
- * @description: TODO
- * @author: SIKADI
- * @date: 2023/10/8 15:53
- **/
-public class jjd {
-}