zhoulisky 9 months ago
parent
commit
f4f65df5c1

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

@@ -57,9 +57,6 @@ public class EnterpriseInfoEntity extends TenantEntity {
 	@Schema(description = "高企编号")
 	private String highTechNumber;
 
-	@Schema(description = "高企证书URL")
-	private String highTechUrl;
-
 	@Schema(description = "一级高新领域")
 	private String highTechDomainL1;
 

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

@@ -0,0 +1,42 @@
+
+package org.sky.scientific.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+/**
+ * 设置 实体类
+ *
+ * @author Kd
+ * @since 2025-07-01
+ */
+@Data
+@TableName("kd_setting")
+public class SettingEntity {
+
+	@Schema(
+		description = "主键id"
+	)
+	@TableId(
+		value = "id",
+		type = IdType.ASSIGN_ID
+	)
+	private Long id;
+
+	@Schema(description = "租户id")
+	private String tenantId;
+
+	@Schema(description = "所属年份")
+//	@NotBlank(message = "参数yearAndMonth不能为空")
+	private String yearAndMonth;
+
+	@Schema(description = "出勤时长")
+	private Double workHours;
+
+	@Schema(description = "高企证书url")
+	private String highTechUrl;
+
+}

+ 47 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/controller/SettingController.java

@@ -0,0 +1,47 @@
+
+package org.sky.scientific.controller;
+
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.sky.core.boot.ctrl.KdController;
+import org.sky.core.secure.utils.SecureUtil;
+import org.sky.core.tool.api.R;
+import org.sky.scientific.pojo.entity.SettingEntity;
+import org.sky.scientific.service.SettingService;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 出勤时间设置 控制器
+ *
+ * @author Kd
+ * @since 2025-07-01
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/setting")
+@Tag(name = "设置-出勤时长/高企证书")
+public class SettingController extends KdController {
+
+	private final SettingService service;
+
+	@GetMapping("/detail/{year}")
+	@ApiOperationSupport(order = 1)
+	@Operation(summary = "详情")
+	public R<SettingEntity> detail(@PathVariable("year") String year) {
+		SettingEntity detail = service.detail(year);
+		return R.data(detail);
+	}
+
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "新增或修改" )
+	public R submit(@Valid @RequestBody SettingEntity dto) {
+		dto.setTenantId(SecureUtil.getTenantId());
+		return R.status(service.submit(dto));
+	}
+
+
+}

+ 6 - 1
kd-service/kd-scientific/src/main/java/org/sky/scientific/controller/XmController.java

@@ -146,6 +146,11 @@ public class XmController extends KdController {
 	}
 
 
-
+	@GetMapping("annual-situation/{year}")
+	@ApiOperationSupport(order = 30)
+	@Operation(summary = "107-1-企业研究开发项目情况")
+	public R selectAnnualSituation(@Parameter(description = "年度") @PathVariable String year) {
+		return R.data(service.selectAnnualSituation(year));
+	}
 
 }

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

@@ -16,7 +16,6 @@
         <result column="remark" property="remark"/>
         <result column="high_tech_year" property="highTechYear"/>
         <result column="high_tech_number" property="highTechNumber"/>
-        <result column="high_tech_url" property="highTechUrl"/>
         <result column="high_tech_domain_l1" property="highTechDomainL1"/>
         <result column="high_tech_domain_l2" property="highTechDomainL2"/>
         <result column="high_tech_domain_l3" property="highTechDomainL3"/>

+ 17 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/SettingMapper.java

@@ -0,0 +1,17 @@
+
+package org.sky.scientific.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.sky.scientific.pojo.entity.SettingEntity;
+
+/**
+ * 考勤时间设置 Mapper 接口
+ *
+ * @author Kd
+ * @since 2025-07-01
+ */
+public interface SettingMapper extends BaseMapper<SettingEntity> {
+
+
+
+}

+ 14 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/mapper/SettingMapper.xml

@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.sky.scientific.mapper.SettingMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="ResultMap" type="org.sky.scientific.pojo.entity.SettingEntity">
+        <result column="id" property="id"/>
+        <result column="tenant_id" property="tenantId"/>
+        <result column="year_and_month" property="yearAndMonth"/>
+        <result column="work_hours" property="workHours"/>
+        <result column="high_tech_url" property="highTechUrl"/>
+    </resultMap>
+
+</mapper>

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

@@ -81,4 +81,11 @@ public interface IXmService extends BaseService<XmEntity> {
 	 * @return
 	 */
 	IPage<JSONObject> selectAssistList(IPage<JSONObject> page, XmDTO xm);
+
+	/**
+	 * 107-1 企业研究开发项目情况
+	 * @param year
+	 * @return
+	 */
+	List<JSONObject> selectAnnualSituation(String year);
 }

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

@@ -0,0 +1,17 @@
+
+package org.sky.scientific.service;
+
+import org.sky.scientific.pojo.entity.SettingEntity;
+
+/**
+ *  设置 服务类
+ *
+ * @author Kd
+ * @since 2025-07-01
+ */
+public interface SettingService {
+
+	SettingEntity detail(String year);
+
+	boolean submit(SettingEntity dto);
+}

+ 49 - 0
kd-service/kd-scientific/src/main/java/org/sky/scientific/service/impl/SettingServiceImpl.java

@@ -0,0 +1,49 @@
+
+package org.sky.scientific.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import lombok.AllArgsConstructor;
+import org.sky.core.log.exception.ServiceException;
+import org.sky.core.tool.utils.Func;
+import org.sky.scientific.mapper.SettingMapper;
+import org.sky.scientific.pojo.entity.SettingEntity;
+import org.sky.scientific.service.SettingService;
+import org.springframework.stereotype.Service;
+
+/**
+ *  设置 服务实现类
+ *
+ * @author Kd
+ * @since 2025-07-01
+ */
+@Service
+@AllArgsConstructor
+public class SettingServiceImpl implements SettingService {
+
+	private final SettingMapper mapper;
+
+	@Override
+	public SettingEntity detail(String year) {
+		LambdaQueryWrapper<SettingEntity> eq = Wrappers.<SettingEntity>lambdaQuery()
+			.eq(SettingEntity::getYearAndMonth, year);
+		SettingEntity detail = mapper.selectOne(eq);
+		return detail;
+	}
+
+	@Override
+	public boolean submit(SettingEntity dto) {
+		boolean result = false;
+		if (Func.isEmpty(dto.getId())) {
+			//新增
+			if(Func.isAnyBlank(dto.getYearAndMonth())){
+				throw new ServiceException("参数yearAndMonth");
+			}
+			result = mapper.insert(dto) == 1;
+		} else {
+			//修改
+			result = mapper.updateById(dto) == 1;
+		}
+		return result;
+	}
+}

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

@@ -160,6 +160,11 @@ public class XmServiceImpl extends BaseServiceImpl<XmMapper, XmEntity> implement
 		return page.setRecords(baseMapper.selectAssistList(page, xm));
 	}
 
+	@Override
+	public List<JSONObject> selectAnnualSituation(String year) {
+		return List.of();
+	}
+
 	/**
 	 * 判断项目名称是否有效
 	 *