Browse Source

ddddddddd2222

zhoulisky 10 months ago
parent
commit
7386512736

+ 1 - 1
kd-common/src/main/java/org/sky/common/constant/LauncherConstant.java

@@ -36,7 +36,7 @@ public interface LauncherConstant {
 	/**
 	 * nacos test 地址
 	 */
-	String NACOS_TEST_ADDR = "172.30.0.48:8848";
+	String NACOS_TEST_ADDR = "172.18.238.51:8848";
 
 	String NACOS_TEST_NAMESPACE = "6a3a2b86-c938-4188-b1ff-cd5f909c6b6c";
 

+ 1 - 1
kd-gateway/src/main/resources/bootstrap.yml

@@ -1,5 +1,5 @@
 server:
-  port: 80
+  port: 8000
 
 spring:
   cloud:

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

@@ -0,0 +1,63 @@
+
+package org.sky.scientific.pojo.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.sky.core.tool.utils.DateUtil;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 科研项目 预算总表
+ *
+ * @author Kd
+ * @since 2025-06-29
+ */
+@Data
+public class XmYszbVO implements Serializable {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	@Schema(description = "项目id")
+	private Long xmId;
+
+	@Schema(description = "项目名称")
+	private String xmmc;
+
+	@Schema(description = "项目申请单位")
+	private String xmsqdw;
+
+	@Schema(description = "项目开始时间")
+	@DateTimeFormat(pattern = DateUtil.PATTERN_DATE)
+	@JsonFormat(pattern = DateUtil.PATTERN_DATE)
+	private Date xmkssj;
+
+	@Schema(description = "项目结束时间")
+	@DateTimeFormat(pattern = DateUtil.PATTERN_DATE)
+	@JsonFormat(pattern = DateUtil.PATTERN_DATE)
+	private Date xmjssj;
+
+	@Schema(description = "项目预算总额")
+	private Double xmysze;
+
+	@Schema(description = "人员人工费用")
+	private Double ryrgfy;
+	@Schema(description = "直接投入费用")
+	private Double zjtrfy;
+	@Schema(description = "折旧费用与长期待摊费用")
+	private Double zjfyycqdtfy;
+	@Schema(description = "无形资产摊销费用")
+	private Double wxzctxfy;
+	@Schema(description = "设计费用")
+	private Double sjfy;
+	@Schema(description = "装备调试费用与试验费用")
+	private Double zbtsysyfy;
+	@Schema(description = "委托外部研究开发费")
+	private Double wtwbyjkffy;
+	@Schema(description = "其他费用")
+	private Double qtfy;
+}

+ 17 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/controller/XmController.java

@@ -23,6 +23,7 @@ import org.sky.scientific.pojo.dto.XmDTO;
 import org.sky.scientific.pojo.entity.XmEntity;
 import org.sky.scientific.pojo.vo.XmSummary;
 import org.sky.scientific.pojo.vo.XmVO;
+import org.sky.scientific.pojo.vo.XmYszbVO;
 import org.sky.scientific.service.IXmService;
 import org.sky.scientific.wrapper.XmWrapper;
 import org.springframework.web.bind.annotation.*;
@@ -52,6 +53,14 @@ public class XmController extends KdController {
 		return R.data(XmWrapper.build().entityVO(detail));
 	}
 
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@Operation(summary = "科研项目-列表", description  = "传入xm")
+	public R<IPage<XmEntity>> list(XmDTO xm, Query query) {
+		IPage<XmEntity> pages = xmService.selectXmList(Condition.getPage(query), xm);
+		return R.data(pages);
+	}
+
 	@GetMapping("/summary")
 	@ApiOperationSupport(order = 3)
 	@Operation(summary = "科研项目-汇总表", description  = "传入xm")
@@ -84,4 +93,12 @@ public class XmController extends KdController {
 		ExcelUtil.export(response, "科研项目数据" + DateUtil.time(), "科研项目数据表", list, XmExcel.class);
 	}
 
+	@GetMapping("yszb")
+	@ApiOperationSupport(order = 10)
+	@Operation(summary = "项目预算-预算总表", description  = "传入项目id")
+	public R<XmYszbVO> selectYszb(@RequestParam("xmId") Long xmId) {
+		XmYszbVO xmYszbVO = xmService.selectYszb(xmId);
+		return R.data(xmYszbVO);
+	}
+
 }

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

@@ -9,7 +9,7 @@ import org.sky.scientific.excel.XmExcel;
 import org.sky.scientific.pojo.dto.XmDTO;
 import org.sky.scientific.pojo.entity.XmEntity;
 import org.sky.scientific.pojo.vo.XmSummary;
-import org.sky.scientific.pojo.vo.XmVO;
+import org.sky.scientific.pojo.vo.XmYszbVO;
 
 import java.util.List;
 
@@ -28,7 +28,7 @@ public interface XmMapper extends BaseMapper<XmEntity> {
 	 * @param xm 查询参数
 	 * @return List<XmVO>
 	 */
-	List<XmVO> selectXmPage(IPage page, XmVO xm);
+	List<XmEntity> selectXmPage(IPage page, @Param("ew")XmDTO xm);
 
 
 	/**
@@ -47,4 +47,11 @@ public interface XmMapper extends BaseMapper<XmEntity> {
 	 * @return List<XmVO>
 	 */
 	List<XmSummary> summaryPage(IPage<XmSummary> page, @Param("ew") XmDTO xm);
+
+	/**
+	 * 获取项目预算总表
+	 * @param xmId
+	 * @return
+	 */
+	XmYszbVO selectYszb(@Param("xmId") Long xmId);
 }

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

@@ -31,6 +31,15 @@
         <result column="is_deleted" property="isDeleted"/>
     </resultMap>
 
+    <select id="selectXmPage" resultMap="xmResultMap">
+        SELECT
+            xm.id,
+            xm.XMBH,
+            COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'xmmc' AND DATE_FORMAT(bgrz.BZSXSSJ, '%Y%m') <![CDATA[<=]]> #{ew.yearAndMonth} ORDER BY bgrz.BZSXSSJ DESC LIMIT 1), xm.XMMC ) AS XMMC
+        FROM kd_xm xm
+        WHERE xm.is_deleted = 0
+    </select>
+
     <select id="exportXm" resultType="org.sky.scientific.excel.XmExcel">
         SELECT * FROM kd_xm ${ew.customSqlSegment}
     </select>
@@ -55,4 +64,22 @@
         <if test="ew.status!=null">and xm.status = #{ew.status}</if>
     </select>
 
+    <select id="selectYszb" resultType="org.sky.scientific.pojo.vo.XmYszbVO">
+        SELECT xm.id as xmId,
+        COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'xmmc' ORDER BY bgrz.BZSXSSJ DESC LIMIT 1), xm.XMMC ) AS xmmc,
+        COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMSQDW' ORDER BY bgrz.BZSXSSJ DESC LIMIT 1),xm.XMSQDW) AS xmsqdw,
+        COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMKSSJ' ORDER BY bgrz.BZSXSSJ DESC LIMIT 1),xm.XMKSSJ) AS xmkssj,
+        COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMJSSJ' ORDER BY bgrz.BZSXSSJ DESC LIMIT 1),xm.XMJSSJ) AS xmjssj,
+        COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMYSZE' ORDER BY bgrz.BZSXSSJ DESC LIMIT 1),xm.XMYSZE) AS xmysze,
+        (select sum(ZZSC*PJRGFY) from kd_ys_ryrgfy where XM_ID = #{xmId}) as ryrgfy,
+        (select sum(yong_liang*dan_jia) from kd_ys_zjtrfy where XM_ID = #{xmId}) as zjtrfy,
+        (select sum(ZZSC*100+CQDTFYYSJE) from kd_ys_zjfyycqdtfy where XM_ID = #{xmId}) as zjfyycqdtfy,
+        (select sum(ZZSC*100) from kd_ys_wxzctxfy where XM_ID = #{xmId}) as wxzctxfy,
+        (select sum(YSJE) from kd_ys_sjfy where XM_ID = #{xmId}) as sjfy,
+        (select sum(YSJE) from kd_ys_zbtsysyfy where XM_ID = #{xmId}) as zbtsysyfy,
+        (select sum(WWFY) from kd_ys_wtwbyjkffy where XM_ID = #{xmId}) as wtwbyjkffy,
+        (select sum(YSJE) from kd_ys_qtfy where XM_ID = #{xmId}) as qtfy
+        FROM kd_xm xm
+        WHERE xm.is_deleted = 0 and xm.id = #{xmId}
+    </select>
 </mapper>

+ 15 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/service/IXmService.java

@@ -8,6 +8,7 @@ import org.sky.scientific.excel.XmExcel;
 import org.sky.scientific.pojo.dto.XmDTO;
 import org.sky.scientific.pojo.entity.XmEntity;
 import org.sky.scientific.pojo.vo.XmSummary;
+import org.sky.scientific.pojo.vo.XmYszbVO;
 
 import java.util.List;
 
@@ -20,6 +21,13 @@ import java.util.List;
 public interface IXmService extends BaseService<XmEntity> {
 
 	/**
+	 * 项目列表
+	 * @param page
+	 * @param xm
+	 * @return
+	 */
+	IPage<XmEntity> selectXmList(IPage<XmEntity> page, XmDTO xm);
+	/**
 	 * 导出数据
 	 *
 	 * @param queryWrapper 查询条件
@@ -49,4 +57,11 @@ public interface IXmService extends BaseService<XmEntity> {
 	 * @return
 	 */
 	IPage<XmSummary> summaryPage(IPage<XmSummary> page, XmDTO xm);
+
+	/**
+	 * 项目预算总表
+	 * @param xmId
+	 * @return
+	 */
+	XmYszbVO selectYszb(Long xmId);
 }

+ 20 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/service/impl/XmServiceImpl.java

@@ -9,15 +9,18 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import jakarta.annotation.Resource;
 import org.sky.core.log.exception.ServiceException;
 import org.sky.core.mp.base.BaseServiceImpl;
+import org.sky.core.tool.utils.DateUtil;
 import org.sky.scientific.excel.XmExcel;
 import org.sky.scientific.mapper.*;
 import org.sky.scientific.pojo.dto.XmDTO;
 import org.sky.scientific.pojo.entity.*;
 import org.sky.scientific.pojo.vo.XmSummary;
+import org.sky.scientific.pojo.vo.XmYszbVO;
 import org.sky.scientific.service.IXmService;
 import org.springframework.stereotype.Service;
 
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -48,6 +51,14 @@ public class XmServiceImpl extends BaseServiceImpl<XmMapper, XmEntity> implement
 	private CgKylwMapper cgKylwMapper;
 
 	@Override
+	public IPage<XmEntity> selectXmList(IPage<XmEntity> page, XmDTO xm) {
+		if(xm.getYearAndMonth() == null){
+			xm.setYearAndMonth(DateUtil.format(new Date(), DateUtil.PATTERN_YYYYMM));
+		}
+		return page.setRecords(baseMapper.selectXmPage(page, xm));
+	}
+
+	@Override
 	public List<XmExcel> exportXm(Wrapper<XmEntity> queryWrapper) {
 		List<XmExcel> xmList = baseMapper.exportXm(queryWrapper);
 		//xmList.forEach(xm -> {
@@ -115,6 +126,15 @@ public class XmServiceImpl extends BaseServiceImpl<XmMapper, XmEntity> implement
 		return page.setRecords(xmList);
 	}
 
+	@Override
+	public XmYszbVO selectYszb(Long xmId) {
+		if(xmId == null || xmId <= 0){
+			throw new ServiceException("参数xmId不能为空");
+		}
+		XmYszbVO xmYszbVO = baseMapper.selectYszb(xmId);
+		return xmYszbVO;
+	}
+
 	/**
 	 * 判断项目名称是否有效
 	 *