From 0b6c174db343bb3b76c5deec566749f721997a74 Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Tue, 12 Mar 2024 17:59:58 +0800
Subject: [PATCH] 从业人员信息录入

---
 src/main/java/org/springblade/modules/place/controller/PlacePractitionerController.java |   39 ++++++++++++++++++++++++++++++++++++++-
 1 files changed, 38 insertions(+), 1 deletions(-)

diff --git a/src/main/java/org/springblade/modules/place/controller/PlacePractitionerController.java b/src/main/java/org/springblade/modules/place/controller/PlacePractitionerController.java
index c17bcfa..de84090 100644
--- a/src/main/java/org/springblade/modules/place/controller/PlacePractitionerController.java
+++ b/src/main/java/org/springblade/modules/place/controller/PlacePractitionerController.java
@@ -21,12 +21,15 @@
 import io.swagger.annotations.ApiParam;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
+
 import javax.validation.Valid;
 
+import org.apache.commons.lang3.StringUtils;
 import org.springblade.core.secure.BladeUser;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.tool.utils.Func;
 import org.springframework.web.bind.annotation.*;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -35,6 +38,8 @@
 import org.springblade.modules.place.wrapper.PlacePractitionerWrapper;
 import org.springblade.modules.place.service.IPlacePractitionerService;
 import org.springblade.core.boot.ctrl.BladeController;
+
+import java.util.Date;
 
 /**
  * 场所从业人员 控制器
@@ -46,7 +51,7 @@
 @AllArgsConstructor
 @RequestMapping("blade-placePractitioner/placePractitioner")
 @Api(value = "场所从业人员", tags = "场所从业人员接口")
-public class PlacePractitionerController{
+public class PlacePractitionerController {
 
 	private final IPlacePractitionerService placePractitionerService;
 
@@ -60,6 +65,7 @@
 		PlacePractitionerEntity detail = placePractitionerService.getOne(Condition.getQueryWrapper(placePractitioner));
 		return R.data(PlacePractitionerWrapper.build().entityVO(detail));
 	}
+
 	/**
 	 * 场所从业人员 分页
 	 */
@@ -89,6 +95,13 @@
 	@ApiOperationSupport(order = 4)
 	@ApiOperation(value = "新增", notes = "传入placePractitioner")
 	public R save(@Valid @RequestBody PlacePractitionerEntity placePractitioner) {
+		if (StringUtils.isNotBlank(placePractitioner.getIdCard())) {
+			// 从身份证号获取出生日期
+			String birthDateStr = placePractitioner.getIdCard().substring(6, 14);
+			// 解析出生日期字符串为日期对象
+			Date birthDate = DateUtil.parse(birthDateStr, "yyyyMMdd");
+			placePractitioner.setBirthday(birthDate);
+		}
 		return R.status(placePractitionerService.save(placePractitioner));
 	}
 
@@ -99,6 +112,13 @@
 	@ApiOperationSupport(order = 5)
 	@ApiOperation(value = "修改", notes = "传入placePractitioner")
 	public R update(@Valid @RequestBody PlacePractitionerEntity placePractitioner) {
+		if (StringUtils.isNotBlank(placePractitioner.getIdCard())) {
+			// 从身份证号获取出生日期
+			String birthDateStr = placePractitioner.getIdCard().substring(6, 14);
+			// 解析出生日期字符串为日期对象
+			Date birthDate = DateUtil.parse(birthDateStr, "yyyyMMdd");
+			placePractitioner.setBirthday(birthDate);
+		}
 		return R.status(placePractitionerService.updateById(placePractitioner));
 	}
 
@@ -109,6 +129,13 @@
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入placePractitioner")
 	public R submit(@Valid @RequestBody PlacePractitionerEntity placePractitioner) {
+		if (StringUtils.isNotBlank(placePractitioner.getIdCard())) {
+			// 从身份证号获取出生日期
+			String birthDateStr = placePractitioner.getIdCard().substring(6, 14);
+			// 解析出生日期字符串为日期对象
+			Date birthDate = DateUtil.parse(birthDateStr, "yyyyMMdd");
+			placePractitioner.setBirthday(birthDate);
+		}
 		return R.status(placePractitionerService.saveOrUpdate(placePractitioner));
 	}
 
@@ -122,5 +149,15 @@
 		return R.status(placePractitionerService.removeByIds(Func.toLongList(ids)));
 	}
 
+	/**
+	 * 统计少数民族和未成年数量
+	 */
+	@PostMapping("/countByType")
+	@ApiOperationSupport(order = 8)
+	@ApiOperation(value = "统计少数民族和未成年数量", notes = "")
+	public R countByType() {
+		return R.data(placePractitionerService.countByType());
+	}
+
 
 }

--
Gitblit v1.9.3