Browse Source

111111111

zhouli 10 months ago
parent
commit
d3c2689795
22 changed files with 94 additions and 24 deletions
  1. 9 0
      kd-service-api/kd-scientific-api/src/main/java/org/sky/scientific/pojo/dto/XmDTO.java
  2. 11 0
      kd-service-api/kd-scientific-api/src/main/java/org/sky/scientific/pojo/entity/XmEntity.java
  3. 3 0
      kd-service-api/kd-scientific-api/src/main/java/org/sky/scientific/pojo/vo/XmVO.java
  4. 3 2
      kd-service/kd-scientific/src/main/java/org/sky/scientific/controller/XmController.java
  5. 2 0
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/XmMapper.xml
  6. 1 1
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsQtfyMapper.java
  7. 1 0
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsQtfyMapper.xml
  8. 1 1
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsSjfyMapper.java
  9. 1 0
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsSjfyMapper.xml
  10. 1 1
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsWtwbyjkffyMapper.java
  11. 1 0
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsWtwbyjkffyMapper.xml
  12. 1 1
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsWxzctxfyMapper.java
  13. 1 0
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsWxzctxfyMapper.xml
  14. 1 1
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZbtsysyfyMapper.java
  15. 1 0
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZbtsysyfyMapper.xml
  16. 1 1
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZjfyycqdtfyMapper.java
  17. 1 0
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZjfyycqdtfyMapper.xml
  18. 1 1
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZjtrfyMapper.java
  19. 1 0
      kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZjtrfyMapper.xml
  20. 9 1
      kd-service/kd-scientific/src/main/java/org/sky/scientific/service/IXmService.java
  21. 41 10
      kd-service/kd-scientific/src/main/java/org/sky/scientific/service/impl/XmServiceImpl.java
  22. 2 4
      kd-service/kd-scientific/src/main/java/org/sky/scientific/wrapper/XmWrapper.java

+ 9 - 0
kd-service-api/kd-scientific-api/src/main/java/org/sky/scientific/pojo/dto/XmDTO.java

@@ -1,10 +1,15 @@
 
 
 package org.sky.scientific.pojo.dto;
 package org.sky.scientific.pojo.dto;
 
 
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
 import org.sky.scientific.pojo.entity.XmEntity;
 import org.sky.scientific.pojo.entity.XmEntity;
 import lombok.Data;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.EqualsAndHashCode;
 import java.io.Serial;
 import java.io.Serial;
+import java.math.BigDecimal;
+import java.util.HashMap;
+import java.util.List;
 
 
 /**
 /**
  * 科研项目 数据传输对象实体类
  * 科研项目 数据传输对象实体类
@@ -18,4 +23,8 @@ public class XmDTO extends XmEntity {
 	@Serial
 	@Serial
 	private static final long serialVersionUID = 1L;
 	private static final long serialVersionUID = 1L;
 
 
+	@Schema(description = "项目预算总额-每年的预算,用于接收前端的数组")
+	private List<HashMap<String, Float>> yearAmountList;
+
+
 }
 }

+ 11 - 0
kd-service-api/kd-scientific-api/src/main/java/org/sky/scientific/pojo/entity/XmEntity.java

@@ -1,6 +1,7 @@
 
 
 package org.sky.scientific.pojo.entity;
 package org.sky.scientific.pojo.entity;
 
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import jakarta.validation.constraints.NotBlank;
 import jakarta.validation.constraints.NotBlank;
 import jakarta.validation.constraints.NotEmpty;
 import jakarta.validation.constraints.NotEmpty;
@@ -15,7 +16,10 @@ import org.sky.core.tool.utils.DateUtil;
 import org.springframework.format.annotation.DateTimeFormat;
 import org.springframework.format.annotation.DateTimeFormat;
 
 
 import java.io.Serial;
 import java.io.Serial;
+import java.math.BigDecimal;
 import java.util.Date;
 import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
 
 
 /**
 /**
  * 科研项目 实体类
  * 科研项目 实体类
@@ -80,6 +84,12 @@ public class XmEntity extends TenantEntity {
 	@Schema(description = "项目技术经济目标")
 	@Schema(description = "项目技术经济目标")
 	private String xmjsjjmb;
 	private String xmjsjjmb;
 
 
+	@Schema(description = "项目预算总额(万元)")
+	private BigDecimal xmysze;
+
+	@Schema(description = "项目预算明细")
+	private String xmyszemx;
+
 	@NotBlank(message = "请上传立项批文")
 	@NotBlank(message = "请上传立项批文")
 	@Schema(description = "立项批文")
 	@Schema(description = "立项批文")
 	private String lxpw;
 	private String lxpw;
@@ -91,4 +101,5 @@ public class XmEntity extends TenantEntity {
 	@Schema(description = "其他资料")
 	@Schema(description = "其他资料")
 	private String qtzl;
 	private String qtzl;
 
 
+
 }
 }

+ 3 - 0
kd-service-api/kd-scientific-api/src/main/java/org/sky/scientific/pojo/vo/XmVO.java

@@ -1,6 +1,7 @@
 
 
 package org.sky.scientific.pojo.vo;
 package org.sky.scientific.pojo.vo;
 
 
+import io.swagger.v3.oas.annotations.media.Schema;
 import org.sky.scientific.pojo.entity.XmEntity;
 import org.sky.scientific.pojo.entity.XmEntity;
 import lombok.Data;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.EqualsAndHashCode;
@@ -18,4 +19,6 @@ public class XmVO extends XmEntity {
 	@Serial
 	@Serial
 	private static final long serialVersionUID = 1L;
 	private static final long serialVersionUID = 1L;
 
 
+	@Schema(description = "项目负责人姓名")
+	private String xmfzrxm;
 }
 }

+ 3 - 2
kd-service/kd-scientific/src/main/java/org/sky/scientific/controller/XmController.java

@@ -16,6 +16,7 @@ import org.sky.core.secure.annotation.IsAdmin;
 import org.sky.core.tool.api.R;
 import org.sky.core.tool.api.R;
 import org.sky.core.tool.utils.DateUtil;
 import org.sky.core.tool.utils.DateUtil;
 import org.sky.core.tool.utils.Func;
 import org.sky.core.tool.utils.Func;
+import org.sky.scientific.pojo.dto.XmDTO;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -62,7 +63,7 @@ public class XmController extends KdController {
 	@PostMapping("/save")
 	@PostMapping("/save")
 	@ApiOperationSupport(order = 4)
 	@ApiOperationSupport(order = 4)
 	@Operation(summary = "项目立项", description  = "传入xm")
 	@Operation(summary = "项目立项", description  = "传入xm")
-	public R save(@Valid @RequestBody XmEntity xm) {
+	public R save(@Valid @RequestBody XmDTO xm) {
 		return R.status(xmService.approval(xm));
 		return R.status(xmService.approval(xm));
 	}
 	}
 
 
@@ -70,7 +71,7 @@ public class XmController extends KdController {
 	@ApiOperationSupport(order = 5)
 	@ApiOperationSupport(order = 5)
 	@Operation(summary = "科研项目-修改", description  = "传入xm")
 	@Operation(summary = "科研项目-修改", description  = "传入xm")
 	public R update(@Valid @RequestBody XmEntity xm) {
 	public R update(@Valid @RequestBody XmEntity xm) {
-		return R.status(xmService.updateById(xm));
+		return R.status(xmService.updateXm(xm));
 	}
 	}
 
 
 	@IsAdmin
 	@IsAdmin

+ 2 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/XmMapper.xml

@@ -17,6 +17,8 @@
         <result column="XMKZXS" property="xmkzxs"/>
         <result column="XMKZXS" property="xmkzxs"/>
         <result column="YQCGXS" property="yqcgxs"/>
         <result column="YQCGXS" property="yqcgxs"/>
         <result column="XMJSJJMB" property="xmjsjjmb"/>
         <result column="XMJSJJMB" property="xmjsjjmb"/>
+        <result column="XMYSZE" property="xmysze"/>
+        <result column="XMYSZEMX" property="xmyszemx"/>
         <result column="LXPW" property="lxpw"/>
         <result column="LXPW" property="lxpw"/>
         <result column="LXBG" property="lxbg"/>
         <result column="LXBG" property="lxbg"/>
         <result column="QTZL" property="qtzl"/>
         <result column="QTZL" property="qtzl"/>

+ 1 - 1
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsQtfyMapper.java

@@ -25,7 +25,7 @@ public interface YsQtfyMapper extends BaseMapper<YsQtfyEntity> {
 	 * @param ysQtfy 查询参数
 	 * @param ysQtfy 查询参数
 	 * @return List<YsQtfyVO>
 	 * @return List<YsQtfyVO>
 	 */
 	 */
-	List<YsQtfyVO> selectYsQtfyPage(IPage page, YsQtfyVO ysQtfy);
+	List<YsQtfyVO> selectYsQtfyPage(IPage page, @Param("ysQtfy") YsQtfyVO ysQtfy);
 
 
 
 
 	/**
 	/**

+ 1 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsQtfyMapper.xml

@@ -29,6 +29,7 @@
 
 
     <select id="selectYsQtfyPage" resultMap="ysQtfyResultMap">
     <select id="selectYsQtfyPage" resultMap="ysQtfyResultMap">
         select * from kd_ys_qtfy where is_deleted = 0
         select * from kd_ys_qtfy where is_deleted = 0
+        <if test="ysQtfy.xmId != null">and XM_ID = #{ysQtfy.xmId}</if>
     </select>
     </select>
 
 
 
 

+ 1 - 1
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsSjfyMapper.java

@@ -25,7 +25,7 @@ public interface YsSjfyMapper extends BaseMapper<YsSjfyEntity> {
 	 * @param ysSjfy 查询参数
 	 * @param ysSjfy 查询参数
 	 * @return List<YsSjfyVO>
 	 * @return List<YsSjfyVO>
 	 */
 	 */
-	List<YsSjfyVO> selectYsSjfyPage(IPage page, YsSjfyVO ysSjfy);
+	List<YsSjfyVO> selectYsSjfyPage(IPage page, @Param("ysSjfy") YsSjfyVO ysSjfy);
 
 
 
 
 	/**
 	/**

+ 1 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsSjfyMapper.xml

@@ -29,6 +29,7 @@
 
 
     <select id="selectYsSjfyPage" resultMap="ysSjfyResultMap">
     <select id="selectYsSjfyPage" resultMap="ysSjfyResultMap">
         select * from kd_ys_sjfy where is_deleted = 0
         select * from kd_ys_sjfy where is_deleted = 0
+        <if test="ysSjfy.xmId!=null and ysSjfy.xmId!=''">and XM_ID=#{ysSjfy.xmId}</if>
     </select>
     </select>
 
 
 
 

+ 1 - 1
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsWtwbyjkffyMapper.java

@@ -25,7 +25,7 @@ public interface YsWtwbyjkffyMapper extends BaseMapper<YsWtwbyjkffyEntity> {
 	 * @param ysWtwbyjkffy 查询参数
 	 * @param ysWtwbyjkffy 查询参数
 	 * @return List<YsWtwbyjkffyVO>
 	 * @return List<YsWtwbyjkffyVO>
 	 */
 	 */
-	List<YsWtwbyjkffyVO> selectYsWtwbyjkffyPage(IPage page, YsWtwbyjkffyVO ysWtwbyjkffy);
+	List<YsWtwbyjkffyVO> selectYsWtwbyjkffyPage(IPage page, @Param("ysWtwbyjkffy") YsWtwbyjkffyVO ysWtwbyjkffy);
 
 
 
 
 	/**
 	/**

+ 1 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsWtwbyjkffyMapper.xml

@@ -30,6 +30,7 @@
 
 
     <select id="selectYsWtwbyjkffyPage" resultMap="ysWtwbyjkffyResultMap">
     <select id="selectYsWtwbyjkffyPage" resultMap="ysWtwbyjkffyResultMap">
         select * from kd_ys_wtwbyjkffy where is_deleted = 0
         select * from kd_ys_wtwbyjkffy where is_deleted = 0
+        <if test="ysWtwbyjkffy.xmId!=null and ysWtwbyjkffy.xmId!=''">and XM_ID=#{ysWtwbyjkffy.xmId}</if>
     </select>
     </select>
 
 
 
 

+ 1 - 1
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsWxzctxfyMapper.java

@@ -25,7 +25,7 @@ public interface YsWxzctxfyMapper extends BaseMapper<YsWxzctxfyEntity> {
 	 * @param ysWxzctxfy 查询参数
 	 * @param ysWxzctxfy 查询参数
 	 * @return List<YsWxzctxfyVO>
 	 * @return List<YsWxzctxfyVO>
 	 */
 	 */
-	List<YsWxzctxfyVO> selectYsWxzctxfyPage(IPage page, YsWxzctxfyVO ysWxzctxfy);
+	List<YsWxzctxfyVO> selectYsWxzctxfyPage(IPage page, @Param("ysWxzctxfy") YsWxzctxfyVO ysWxzctxfy);
 
 
 
 
 	/**
 	/**

+ 1 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsWxzctxfyMapper.xml

@@ -32,6 +32,7 @@
 
 
     <select id="selectYsWxzctxfyPage" resultMap="ysWxzctxfyResultMap">
     <select id="selectYsWxzctxfyPage" resultMap="ysWxzctxfyResultMap">
         select * from kd_ys_wxzctxfy where is_deleted = 0
         select * from kd_ys_wxzctxfy where is_deleted = 0
+        <if test="ysWxzctxfy.xmId!=null">and XM_ID = #{ysWxzctxfy.xmId}</if>
     </select>
     </select>
 
 
 
 

+ 1 - 1
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZbtsysyfyMapper.java

@@ -25,7 +25,7 @@ public interface YsZbtsysyfyMapper extends BaseMapper<YsZbtsysyfyEntity> {
 	 * @param ysZbtsysyfy 查询参数
 	 * @param ysZbtsysyfy 查询参数
 	 * @return List<YsZbtsysyfyVO>
 	 * @return List<YsZbtsysyfyVO>
 	 */
 	 */
-	List<YsZbtsysyfyVO> selectYsZbtsysyfyPage(IPage page, YsZbtsysyfyVO ysZbtsysyfy);
+	List<YsZbtsysyfyVO> selectYsZbtsysyfyPage(IPage page, @Param("ysZbtsysyfy") YsZbtsysyfyVO ysZbtsysyfy);
 
 
 
 
 	/**
 	/**

+ 1 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZbtsysyfyMapper.xml

@@ -29,6 +29,7 @@
 
 
     <select id="selectYsZbtsysyfyPage" resultMap="ysZbtsysyfyResultMap">
     <select id="selectYsZbtsysyfyPage" resultMap="ysZbtsysyfyResultMap">
         select * from kd_ys_zbtsysyfy where is_deleted = 0
         select * from kd_ys_zbtsysyfy where is_deleted = 0
+        <if test="ysZbtsysyfy.xmId!=null">and XM_ID = #{ysZbtsysyfy.xmId}</if>
     </select>
     </select>
 
 
 
 

+ 1 - 1
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZjfyycqdtfyMapper.java

@@ -25,7 +25,7 @@ public interface YsZjfyycqdtfyMapper extends BaseMapper<YsZjfyycqdtfyEntity> {
 	 * @param ysZjfyycqdtfy 查询参数
 	 * @param ysZjfyycqdtfy 查询参数
 	 * @return List<YsZjfyycqdtfyVO>
 	 * @return List<YsZjfyycqdtfyVO>
 	 */
 	 */
-	List<YsZjfyycqdtfyVO> selectYsZjfyycqdtfyPage(IPage page, YsZjfyycqdtfyVO ysZjfyycqdtfy);
+	List<YsZjfyycqdtfyVO> selectYsZjfyycqdtfyPage(IPage page, @Param("ysZjfyycqdtfy") YsZjfyycqdtfyVO ysZjfyycqdtfy);
 
 
 
 
 	/**
 	/**

+ 1 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZjfyycqdtfyMapper.xml

@@ -32,6 +32,7 @@
 
 
     <select id="selectYsZjfyycqdtfyPage" resultMap="ysZjfyycqdtfyResultMap">
     <select id="selectYsZjfyycqdtfyPage" resultMap="ysZjfyycqdtfyResultMap">
         select * from kd_ys_zjfyycqdtfy where is_deleted = 0
         select * from kd_ys_zjfyycqdtfy where is_deleted = 0
+        <if test="ysZjfyycqdtfy.xmId!=null">and XM_ID = #{ysZjfyycqdtfy.xmId}</if>
     </select>
     </select>
 
 
 
 

+ 1 - 1
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZjtrfyMapper.java

@@ -25,7 +25,7 @@ public interface YsZjtrfyMapper extends BaseMapper<YsZjtrfyEntity> {
 	 * @param ysZjtrfy 查询参数
 	 * @param ysZjtrfy 查询参数
 	 * @return List<YsZjtrfyVO>
 	 * @return List<YsZjtrfyVO>
 	 */
 	 */
-	List<YsZjtrfyVO> selectYsZjtrfyPage(IPage page, YsZjtrfyVO ysZjtrfy);
+	List<YsZjtrfyVO> selectYsZjtrfyPage(IPage page, @Param("ysZjtrfy") YsZjtrfyVO ysZjtrfy);
 
 
 
 
 	/**
 	/**

+ 1 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/YsZjtrfyMapper.xml

@@ -36,6 +36,7 @@
 
 
     <select id="selectYsZjtrfyPage" resultMap="ysZjtrfyResultMap">
     <select id="selectYsZjtrfyPage" resultMap="ysZjtrfyResultMap">
         select * from kd_ys_zjtrfy where is_deleted = 0
         select * from kd_ys_zjtrfy where is_deleted = 0
+        <if test="ysZjtrfy.xmId!=null">and XM_ID = #{ysZjtrfy.xmId}</if>
     </select>
     </select>
 
 
 
 

+ 9 - 1
kd-service/kd-scientific/src/main/java/org/sky/scientific/service/IXmService.java

@@ -2,6 +2,7 @@
 package org.sky.scientific.service;
 package org.sky.scientific.service;
 
 
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.sky.scientific.pojo.dto.XmDTO;
 import org.sky.scientific.pojo.entity.XmEntity;
 import org.sky.scientific.pojo.entity.XmEntity;
 import org.sky.scientific.pojo.vo.XmVO;
 import org.sky.scientific.pojo.vo.XmVO;
 import org.sky.scientific.excel.XmExcel;
 import org.sky.scientific.excel.XmExcel;
@@ -40,5 +41,12 @@ public interface IXmService extends BaseService<XmEntity> {
 	 * @param xm
 	 * @param xm
 	 * @return
 	 * @return
 	 */
 	 */
-    boolean approval(XmEntity xm);
+    boolean approval(XmDTO xm);
+
+	/**
+	 * 修改
+	 * @param xm
+	 * @return
+	 */
+	boolean updateXm(XmEntity xm);
 }
 }

+ 41 - 10
kd-service/kd-scientific/src/main/java/org/sky/scientific/service/impl/XmServiceImpl.java

@@ -1,9 +1,12 @@
 
 
 package org.sky.scientific.service.impl;
 package org.sky.scientific.service.impl;
 
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import io.swagger.v3.core.util.Json;
 import org.sky.core.log.exception.ServiceException;
 import org.sky.core.log.exception.ServiceException;
+import org.sky.scientific.pojo.dto.XmDTO;
 import org.sky.scientific.pojo.entity.XmEntity;
 import org.sky.scientific.pojo.entity.XmEntity;
 import org.sky.scientific.pojo.vo.XmVO;
 import org.sky.scientific.pojo.vo.XmVO;
 import org.sky.scientific.excel.XmExcel;
 import org.sky.scientific.excel.XmExcel;
@@ -14,6 +17,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.sky.core.mp.base.BaseServiceImpl;
 import org.sky.core.mp.base.BaseServiceImpl;
 
 
+import java.math.BigDecimal;
 import java.util.Arrays;
 import java.util.Arrays;
 import java.util.List;
 import java.util.List;
 
 
@@ -42,25 +46,52 @@ public class XmServiceImpl extends BaseServiceImpl<XmMapper, XmEntity> implement
 	}
 	}
 
 
     @Override
     @Override
-    public boolean approval(XmEntity xm) {
+    public boolean approval(XmDTO xm) {
 
 
+		this.judgeXmmcAvailable(xm.getXmmc());
+
+		//检查项目名称是否重复(xm);
+		LambdaQueryWrapper<XmEntity> queryWrapper = Wrappers.<XmEntity>lambdaQuery().eq(XmEntity::getXmmc, xm.getXmmc());
+		if (baseMapper.selectCount(queryWrapper) > 0){
+			throw new ServiceException("研发项目名称已存在");
+		}
+
+		queryWrapper = Wrappers.<XmEntity>lambdaQuery().eq(XmEntity::getXmbh, xm.getXmbh());
+		if (baseMapper.selectCount(queryWrapper) > 0){
+			throw new ServiceException("研发项目编号已存在");
+		}
+
+		if(xm.getYearAmountList() != null && xm.getXmysze().floatValue() > 0){
+			double total = xm.getYearAmountList().stream().mapToDouble(t -> ((Float) t.get("amount"))).sum();
+			if(total != xm.getXmysze().doubleValue()){
+				throw new ServiceException("项目预算总额明细不对");
+			}
+			xm.setXmyszemx(JSON.toJSONString(xm.getYearAmountList()));
+		}
+
+		return this.save(xm);
+    }
+
+	@Override
+	public boolean updateXm(XmEntity xm) {
+		return false;
+	}
+
+	/**
+	 * 判断项目名称是否有效
+	 * @param xmmc
+	 */
+	private void judgeXmmcAvailable(String xmmc){
 		//技改、技术改造、推广、打样、翻新、产业化、生产线、改造、年产、示范
 		//技改、技术改造、推广、打样、翻新、产业化、生产线、改造、年产、示范
 		List<String> errorWords = Arrays.asList("技改", "技术改造", "推广", "打样", "翻新", "产业化", "生产线", "改造", "年产", "示范");
 		List<String> errorWords = Arrays.asList("技改", "技术改造", "推广", "打样", "翻新", "产业化", "生产线", "改造", "年产", "示范");
 		int index = -1;
 		int index = -1;
 		for (String errorWord : errorWords) {
 		for (String errorWord : errorWords) {
-			index = xm.getXmmc().indexOf(errorWord);
+			index = xmmc.indexOf(errorWord);
 			break;
 			break;
 		}
 		}
 		if(index != -1){
 		if(index != -1){
 			throw new ServiceException("研发项目名称,不符合统计部门的命名要求!");
 			throw new ServiceException("研发项目名称,不符合统计部门的命名要求!");
 		}
 		}
-
-		//检查项目名称是否重复(xm);
-		LambdaQueryWrapper<XmEntity> queryWrapper = Wrappers.<XmEntity>lambdaQuery().eq(XmEntity::getXmmc, xm.getXmmc());
-		if (baseMapper.selectCount(queryWrapper) > 0){
-			throw new ServiceException("研发项目名称已存在");
-		}
-		return this.save(xm);
-    }
+	}
 
 
 }
 }

+ 2 - 4
kd-service/kd-scientific/src/main/java/org/sky/scientific/wrapper/XmWrapper.java

@@ -23,10 +23,8 @@ public class XmWrapper extends BaseEntityWrapper<XmEntity, XmVO> {
 	public XmVO entityVO(XmEntity xm) {
 	public XmVO entityVO(XmEntity xm) {
 		XmVO xmVO = Objects.requireNonNull(BeanUtil.copyProperties(xm, XmVO.class));
 		XmVO xmVO = Objects.requireNonNull(BeanUtil.copyProperties(xm, XmVO.class));
 
 
-		//User createUser = UserCache.getUser(xm.getCreateUser());
-		//User updateUser = UserCache.getUser(xm.getUpdateUser());
-		//xmVO.setCreateUserName(createUser.getName());
-		//xmVO.setUpdateUserName(updateUser.getName());
+		//查询项目负责人姓名
+
 
 
 		return xmVO;
 		return xmVO;
 	}
 	}