From 6964aa2c152d7faa8c67c65b601b573da917f572 Mon Sep 17 00:00:00 2001
From: 钟日健 <5689795+arsn@user.noreply.gitee.com>
Date: Sat, 19 Feb 2022 16:28:39 +0800
Subject: [PATCH] 1. 跨区域项目备案新增字段 2. 保安服务法人变更新增

---
 src/main/java/org/springblade/modules/recordLegalperson/controller/RecordLegalpersonController.java    |  283 +++++++++++++++++
 src/main/java/org/springblade/modules/recordLegalperson/entity/RecordLegalperson.java                  |  203 ++++++++++++
 src/main/java/org/springblade/modules/recordLegalperson/mapper/RecordLegalpersonMapper.xml             |  104 ++++++
 src/main/java/org/springblade/modules/recordk/mapper/RecordkMapper.xml                                 |    5 
 src/main/java/org/springblade/modules/recordLegalperson/service/IRecordLegalpersonService.java         |   52 +++
 src/main/java/org/springblade/modules/recordLegalperson/dto/RecordLegalpersonDTO.java                  |  107 ++++++
 src/main/java/org/springblade/modules/recordLegalperson/mapper/RecordLegalpersonMapper.java            |   38 ++
 src/main/java/org/springblade/modules/recordLegalperson/service/impl/RecordLegalpersonServiceImpl.java |   79 ++++
 src/main/resources/application-test.yml                                                                |    4 
 src/main/java/org/springblade/modules/recordk/entity/Recordk.java                                      |   21 +
 src/main/java/org/springblade/modules/recordLegalperson/vo/RecordLegalpersonVO.java                    |   36 ++
 11 files changed, 930 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/springblade/modules/recordLegalperson/controller/RecordLegalpersonController.java b/src/main/java/org/springblade/modules/recordLegalperson/controller/RecordLegalpersonController.java
new file mode 100644
index 0000000..fc72759
--- /dev/null
+++ b/src/main/java/org/springblade/modules/recordLegalperson/controller/RecordLegalpersonController.java
@@ -0,0 +1,283 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.recordLegalperson.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.common.cache.DictCache;
+import org.springblade.common.cache.ParamCache;
+import org.springblade.common.config.FtpConfig;
+import org.springblade.common.enums.DictEnum;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.cache.utils.CacheUtil;
+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.support.Kv;
+import org.springblade.core.tool.utils.DigestUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.FTP.FtpUtil;
+import org.springblade.modules.information.entity.Information;
+import org.springblade.modules.information.service.IInformationService;
+import org.springblade.modules.recordLegalperson.dto.RecordLegalpersonDTO;
+import org.springblade.modules.recordLegalperson.entity.RecordLegalperson;
+import org.springblade.modules.recordLegalperson.service.IRecordLegalpersonService;
+import org.springblade.modules.recordLegalperson.vo.RecordLegalpersonVO;
+import org.springblade.modules.resource.service.IAttachService;
+import org.springblade.modules.system.entity.Dept;
+import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.service.IDeptService;
+import org.springblade.modules.system.service.IUserService;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.Map;
+
+import static org.springblade.common.constant.CommonConstant.DEFAULT_PARAM_PASSWORD;
+import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE;
+
+/**
+ * 控制器
+ *
+ * @author BladeX
+ * @since 2021-07-12
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/recordlegalperson")
+@Api(value = "", tags = "接口")
+public class RecordLegalpersonController extends BladeController {
+
+	private final IRecordLegalpersonService recordService;
+	private final IDeptService iDeptService;
+	private final IInformationService informationService;
+	private final IUserService userService;
+	private final IAttachService attachService;
+
+	/**
+	 * 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入record")
+	public R<RecordLegalperson> detail(RecordLegalperson record) {
+		RecordLegalperson detail = recordService.getOne(Condition.getQueryWrapper(record));
+		return R.data(detail);
+	}
+
+	/**
+	 * 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入record")
+	public R<IPage<RecordLegalperson>> list(RecordLegalperson record, Query query) {
+		record.setStorage("1");
+		IPage<RecordLegalperson> pages = recordService.page(Condition.getPage(query), Condition.getQueryWrapper(record));
+		return R.data(pages);
+	}
+
+	/**
+	 * 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入record")
+	public R<IPage<RecordLegalpersonVO>> page(RecordLegalpersonVO record, Query query) {
+		IPage<RecordLegalpersonVO> pages;
+		pages = recordService.selectRecordPage(Condition.getPage(query), record, record.getJurisdiction());
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入record")
+	public R save(@Valid @RequestBody RecordLegalperson record) {
+		String cardid = record.getCardid();
+		String type = record.getPtype();
+		Map map = recordService.selectIn(cardid, type);
+		if (map != null) {
+			String id = map.get("id").toString();
+			recordService.removeByIds(Func.toLongList(id));
+			String s1 = "delete from sys_record where id = " + "'" + id + "'";
+			FtpUtil.sqlFileUpload(s1);
+		}
+		record.setStorage("1");
+		record.setType("2");
+		record.setPermitime(new Date());
+		recordService.save(record);
+		return R.success("成功");
+	}
+
+	/**
+	 * 暂存
+	 */
+	@PostMapping("/rocordsave")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入record")
+	public R rocordsave(@Valid @RequestBody RecordLegalperson record) {
+		String cardid = record.getCardid();
+		String type = record.getPtype();
+		Map map = recordService.selectIn(cardid, type);
+		if (map != null) {
+			record.setStorage("0");
+			record.setPermitime(new Date());
+			recordService.updateById(record);
+		} else {
+			record.setStorage("0");
+			record.setType("2");
+			record.setPermitime(new Date());
+			recordService.save(record);
+		}
+		return R.success("暂存成功");
+	}
+
+	/**
+	 * 修改
+	 */
+	@PostMapping("/update")
+	public R update(@Valid @RequestBody RecordLegalperson record) {
+		//审核通过
+		if (record.getType().equals("0")) {
+			//新增组织机构和单位信息
+			Information information = new Information();
+			information.setCreditcode(record.getCreditcode());
+			information.setEnterprisename(record.getEnterprisename());
+			information.setRepresentative(record.getRepresentative());
+			information.setEstablishtime(record.getEstablishtime());
+			information.setRegisteredcapital(record.getRegisteredcapital());
+			information.setOrganizationcode(record.getOrganizationcode());
+			information.setRegistrationnumber(record.getRegistrationnumber());
+			information.setEnterprises(record.getEnterprises());
+			information.setAddress(record.getAddress());
+			information.setBusiness(record.getBusiness());
+			information.setRegion(record.getRegion());
+			information.setRegistration(record.getRegistration());
+			information.setIndustry(record.getIndustry());
+			information.setRepresentativecell(record.getRepresentativecell());
+			information.setContacts(record.getContacts());
+			information.setContactscell(record.getContactscell());
+			Dept dept = new Dept();
+			//本市公司
+			if (record.getPtype().equals("2")) {
+				Long i = 1425366663452196865L;
+				dept.setParentId(i);
+				dept.setAncestors("0,1425366663452196865");
+			}
+			//培训公司
+			else {
+				Long i = 1420222768149966850L;
+				dept.setParentId(i);
+				dept.setAncestors("0,1420222768149966850");
+			}
+			dept.setTenantId("000000");
+			dept.setDeptName(information.getEnterprisename());
+			dept.setDeptCategory(1);
+			if (iDeptService.submit(dept)) {
+				CacheUtil.clear(SYS_CACHE);
+				// 返回懒加载树更新节点所需字段
+				Kv kv = Kv.create().set("id", String.valueOf(dept.getId())).set("tenantId", dept.getTenantId())
+					.set("deptCategoryName", DictCache.getValue(DictEnum.ORG_CATEGORY, dept.getDeptCategory()));
+				String id = kv.get("id").toString();
+				information.setDepartmentid(id);
+			}
+			informationService.save(information);
+			Integer isDeleted = 0;
+			//注册用户
+			User user = new User();
+			user.setDeptId(information.getDepartmentid());
+			user.setTenantId("000000");
+			user.setAccount(record.getEnterprisename());
+			String initPassword = ParamCache.getValue(DEFAULT_PARAM_PASSWORD);
+			user.setPassword(DigestUtil.encrypt(initPassword));
+			//user.setPassword(initPassword);
+			user.setCreateTime(new Date());
+			user.setUpdateTime(new Date());
+			user.setRoleId("1414575196264300546");
+			user.setStatus(1);
+			user.setIsDeleted(0);
+			userService.save(user);
+
+			String rtime;
+			String paperTime;
+			if (user.getRtime() == null) {
+				rtime = null;
+			} else {
+				rtime = new SimpleDateFormat("yyyy-MM-dd").format(user.getRtime());
+			}
+			//发证日期处理
+			if (user.getPaperTime() == null) {
+				paperTime = "";
+			} else {
+				paperTime = new SimpleDateFormat("yyyy-MM-dd").format(user.getPaperTime());
+			}
+
+			//把附件添加单位id
+			attachService.updat(information.getDepartmentid(), record.getCardid());
+		}
+		return R.status(recordService.saveOrUpdate(record));
+	}
+
+	/**
+	 * 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入record")
+	public R submit(@Valid @RequestBody RecordLegalperson record) {
+		return R.status(recordService.saveOrUpdate(record));
+	}
+
+
+	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 8)
+	@ApiOperation(value = "删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(recordService.removeByIds(Func.toLongList(ids)));
+	}
+
+
+	@PostMapping("/selectIn")
+	public R selectIn(String cardid, String type) {
+		Map map = recordService.selectIn(cardid, type);
+		return R.data(map);
+	}
+
+
+	/**
+	 * 保安公司法人变更详情(基本信息和附件列表信息)
+	 * @param record
+	 * @return
+	 */
+	@GetMapping("/details")
+	public R details(RecordLegalpersonDTO record) {
+		RecordLegalpersonDTO detail = recordService.getDetails(record);
+		return R.data(detail);
+	}
+}
diff --git a/src/main/java/org/springblade/modules/recordLegalperson/dto/RecordLegalpersonDTO.java b/src/main/java/org/springblade/modules/recordLegalperson/dto/RecordLegalpersonDTO.java
new file mode 100644
index 0000000..9f90e8d
--- /dev/null
+++ b/src/main/java/org/springblade/modules/recordLegalperson/dto/RecordLegalpersonDTO.java
@@ -0,0 +1,107 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.recordLegalperson.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springblade.modules.licetuser.entity.Licetuser;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2021-07-12
+ */
+@Data
+public class RecordLegalpersonDTO implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	private Integer id;
+
+	private String ptype;
+
+	/**
+	 * 审核状态
+	 */
+	private String type;
+
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date permitime;
+
+	private String cardid;
+
+	private String representativecell;
+
+	private String contacts;
+
+	private String contactscell;
+
+	private String jurisdiction;
+
+	/**
+	 * 登记机关
+	 */
+	private String registration;
+
+	/**
+	 * 所属行业
+	 */
+	private String industry;
+
+	/**
+	 * 统一社会信用代码
+	 */
+	private String creditcode;
+	/**
+	 * 企业名称
+	 */
+	private String enterprisename;
+	/**
+	 * 法定代表人
+	 */
+	private String representative;
+	/**
+	 * 注册地址
+	 */
+	private String address;
+
+
+	/**
+	 * 最后审批时间
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date overtime;
+
+	//更变后法人
+	private String changecontacts;
+
+	//更变后法人电话
+	private String changecontactscell;
+
+	/**
+	 * 材料集合信息
+	 */
+	private List<Licetuser> licetusers;
+
+}
diff --git a/src/main/java/org/springblade/modules/recordLegalperson/entity/RecordLegalperson.java b/src/main/java/org/springblade/modules/recordLegalperson/entity/RecordLegalperson.java
new file mode 100644
index 0000000..0077cf0
--- /dev/null
+++ b/src/main/java/org/springblade/modules/recordLegalperson/entity/RecordLegalperson.java
@@ -0,0 +1,203 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.recordLegalperson.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 实体类
+ *
+ * @author BladeX
+ * @since 2021-07-12
+ */
+@Data
+@TableName("sys_record_legalperson")
+@ApiModel(value = "Record对象", description = "Record对象")
+public class RecordLegalperson implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 统一社会信用代码
+	 */
+	@ApiModelProperty(value = "统一社会信用代码")
+	@TableField("creditCode")
+	private String creditcode;
+	/**
+	 * 企业名称
+	 */
+	@ApiModelProperty(value = "企业名称")
+	@TableField("enterpriseName")
+	private String enterprisename;
+	/**
+	 * 法定代表人
+	 */
+	@ApiModelProperty(value = "法定代表人")
+	private String representative;
+	/**
+	 * 成立日期
+	 */
+	@ApiModelProperty(value = "注册时间")
+	@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date establishtime;
+	/**
+	 * 注册资本
+	 */
+	@ApiModelProperty(value = "注册资本")
+	@TableField("registeredCapital")
+	private String registeredcapital;
+
+	/**
+	 * 组织机构代码
+	 */
+	@ApiModelProperty(value = "组织机构代码")
+	@TableField("organizationCode")
+	private String organizationcode;
+	/**
+	 * 工商注册号
+	 */
+	@ApiModelProperty(value = "工商注册号")
+	@TableField("registrationNumber")
+	private String registrationnumber;
+	/**
+	 * 纳税人识别号
+	 */
+	@ApiModelProperty(value = "纳税人识别号")
+	@TableField("identificationNumber")
+	private String identificationnumber;
+	/**
+	 * 企业类型
+	 */
+	@ApiModelProperty(value = "企业类型")
+	private String enterprises;
+	/**
+	 * 注册地址
+	 */
+	@ApiModelProperty(value = "注册地址")
+	private String address;
+	/**
+	 * 经营范围
+	 */
+	@ApiModelProperty(value = "经营范围")
+	private String business;
+	/**
+	 * 所属地区
+	 */
+	@ApiModelProperty(value = "所属地区")
+	private String region;
+	/**
+	 * 登记机关
+	 */
+	@ApiModelProperty(value = "登记机关")
+	private String registration;
+	/**
+	 * 所属行业
+	 */
+	@ApiModelProperty(value = "所属行业")
+	private String industry;
+	/**
+	 * 状态 0:审核通过 1:审核不通过 2: 审核中
+	 */
+	@ApiModelProperty(value = "状态 0:审核通过 1:审核不通过 2: 审核中")
+	private String type;
+	/**
+	 * 保安服务单位许可编号
+	 */
+	@ApiModelProperty(value = "保安服务单位许可编号")
+	private String perid;
+	/**
+	 * 许可发证机关
+	 */
+	@ApiModelProperty(value = "许可发证机关")
+	private String offices;
+	/**
+	 * 发证时间
+	 */
+	@ApiModelProperty(value = "发证时间")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date officetime;
+
+	@TableId(value = "id", type = IdType.AUTO)
+	private Integer id;
+	private String deptid;
+	private String ptype;
+
+	@ApiModelProperty(value = "提交时间")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date permitime;
+	private String approve;
+	private String cardid;
+	private String representativecell;
+	private String contacts;
+	private String contactscell;
+	private String storage;
+	private String jurisdiction;
+	//派出所审批
+	private String papprove;
+	//县审批
+	private String xapprove;
+	//市审批
+	private String sapprove;
+	//派出意见
+	private String popinion;
+	//县意见
+	private String xopinion;
+	//市意见
+	private String sopinion;
+
+	@ApiModelProperty(value = "审批时间")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date overtime;
+
+
+	@ApiModelProperty(value = "派出所审批时间")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date ptime;
+
+	@ApiModelProperty(value = "县审批时间")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date stime;
+
+	@ApiModelProperty(value = "市审批时间")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date xtime;
+
+	//更变后法人
+	private String changecontacts;
+	//更变后法人电话
+	private String changecontactscell;
+
+
+}
diff --git a/src/main/java/org/springblade/modules/recordLegalperson/mapper/RecordLegalpersonMapper.java b/src/main/java/org/springblade/modules/recordLegalperson/mapper/RecordLegalpersonMapper.java
new file mode 100644
index 0000000..e9a818d
--- /dev/null
+++ b/src/main/java/org/springblade/modules/recordLegalperson/mapper/RecordLegalpersonMapper.java
@@ -0,0 +1,38 @@
+
+package org.springblade.modules.recordLegalperson.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.recordLegalperson.dto.RecordLegalpersonDTO;
+import org.springblade.modules.recordLegalperson.entity.RecordLegalperson;
+import org.springblade.modules.recordLegalperson.vo.RecordLegalpersonVO;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ *  Mapper 接口
+ *
+ * @author BladeX
+ * @since 2021-07-12
+ */
+public interface RecordLegalpersonMapper extends BaseMapper<RecordLegalperson> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param record
+	 * @return
+	 */
+	List<RecordLegalpersonVO> selectRecordPage(IPage page, @Param("record") RecordLegalpersonVO record, String jurisdiction);
+	Map selectIn(String cardid,String type);
+
+	/**
+	 * 查询公司详情信息
+	 * @param record
+	 * @return
+	 */
+    RecordLegalpersonDTO selectRecordDetail(@Param("record") RecordLegalpersonDTO record);
+}
diff --git a/src/main/java/org/springblade/modules/recordLegalperson/mapper/RecordLegalpersonMapper.xml b/src/main/java/org/springblade/modules/recordLegalperson/mapper/RecordLegalpersonMapper.xml
new file mode 100644
index 0000000..dc79d63
--- /dev/null
+++ b/src/main/java/org/springblade/modules/recordLegalperson/mapper/RecordLegalpersonMapper.xml
@@ -0,0 +1,104 @@
+<?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.springblade.modules.recordLegalperson.mapper.RecordLegalpersonMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="RecordLegalpersonMapper" type="org.springblade.modules.recordLegalperson.entity.RecordLegalperson">
+        <id column="id" property="id"/>
+        <result column="creditCode" property="creditcode"/>
+        <result column="enterpriseName" property="enterprisename"/>
+        <result column="representative" property="representative"/>
+        <result column="establishtime" property="establishtime"/>
+        <result column="registeredCapital" property="registeredcapital"/>
+        <result column="organizationCode" property="organizationcode"/>
+        <result column="registrationNumber" property="registrationnumber"/>
+        <result column="identificationNumber" property="identificationnumber"/>
+        <result column="enterprises" property="enterprises"/>
+        <result column="address" property="address"/>
+        <result column="business" property="business"/>
+        <result column="region" property="region"/>
+        <result column="registration" property="registration"/>
+        <result column="industry" property="industry"/>
+        <result column="type" property="type"/>
+        <result column="perid" property="perid"/>
+        <result column="offices" property="offices"/>
+        <result column="officetime" property="officetime"/>
+        <result column="deptid" property="deptid"/>
+        <result column="permitime" property="permitime"/>
+        <result column="ptype" property="ptype"/>
+        <result column="cardid" property="cardid"/>
+        <result column="representativecell" property="representativecell"/>
+        <result column="contacts" property="contacts"/>
+        <result column="contactscell" property="contactscell"/>
+        <result column="storage" property="storage"/>
+        <result column="jurisdiction" property="jurisdiction"/>
+        <result column="papprove" property="papprove"/>
+        <result column="xapprove" property="xapprove"/>
+        <result column="sapprove" property="sapprove"/>
+        <result column="popinion" property="popinion"/>
+        <result column="xopinion" property="xopinion"/>
+        <result column="sopinion" property="sopinion"/>
+        <result column="overtime" property="overtime"/>
+        <result column="ptime" property="ptime"/>
+        <result column="stime" property="stime"/>
+        <result column="xtime" property="xtime"/>
+        <result column="changecontacts" property="changecontacts"/>
+        <result column="changecontactscell" property="changecontactscell"/>
+    </resultMap>
+
+
+    <select id="selectRecordPage" resultMap="RecordLegalpersonMapper">
+        select * from sys_record_legalperson si left join
+        sys_jurisdiction sj
+        on
+        sj.id = si.jurisdiction where 1=1
+        <if test="record.ptype!=null and record.ptype!=''">
+            and ptype=#{record.ptype}
+        </if>
+        <if test="record.jurisdiction!=null and record.jurisdiction != '' and record.jurisdiction!='1372091709474910209'">
+            and (sj.id = #{record.jurisdiction} or sj.parent_id = #{record.jurisdiction})
+        </if>
+        <if test="record.papprove!=null and record.papprove!=''">
+            and papprove=#{record.papprove}
+        </if>
+        <if test="record.xapprove!=null and record.xapprove!=''">
+            and xapprove=#{record.xapprove}
+        </if>
+        <if test="record.sapprove!=null and record.sapprove!=''">
+            and sapprove=#{record.sapprove}
+        </if>
+    </select>
+
+    <select id="selectIn" resultType="java.util.HashMap">
+        select *
+        from sys_record_legalperson
+        where cardid = #{cardid}
+          and ptype = #{type}
+    </select>
+
+    <select id="selectRecordDetail" resultType="org.springblade.modules.recordLegalperson.dto.RecordLegalpersonDTO">
+        select
+        id,
+        ptype,
+        type,
+        permitime,
+        cardid,
+        representativecell,
+        contacts,
+        contactscell,
+        jurisdiction,
+        industry,
+        registration,
+        creditcode,
+        enterprisename,
+        representative,
+        address,
+        overtime,
+        changecontacts,
+        changecontactscell
+        from sys_record_legalperson
+        where cardid = #{record.cardid}
+        and ptype = #{record.ptype}
+    </select>
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/recordLegalperson/service/IRecordLegalpersonService.java b/src/main/java/org/springblade/modules/recordLegalperson/service/IRecordLegalpersonService.java
new file mode 100644
index 0000000..3ed0923
--- /dev/null
+++ b/src/main/java/org/springblade/modules/recordLegalperson/service/IRecordLegalpersonService.java
@@ -0,0 +1,52 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.recordLegalperson.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.recordLegalperson.dto.RecordLegalpersonDTO;
+import org.springblade.modules.recordLegalperson.entity.RecordLegalperson;
+import org.springblade.modules.recordLegalperson.vo.RecordLegalpersonVO;
+
+import java.util.Map;
+
+/**
+ *  服务类
+ *
+ * @author BladeX
+ * @since 2021-07-12
+ */
+public interface IRecordLegalpersonService extends IService<RecordLegalperson> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param record
+	 * @return
+	 */
+	IPage<RecordLegalpersonVO> selectRecordPage(IPage<RecordLegalpersonVO> page, @Param("record") RecordLegalpersonVO record, String jurisdiction);
+	Map selectIn(String cardid,String type);
+
+	/**
+	 * 保安公司法人变更详情(基本信息和附件列表信息)
+	 * @param record
+	 * @return
+	 */
+    RecordLegalpersonDTO getDetails(RecordLegalpersonDTO record);
+}
diff --git a/src/main/java/org/springblade/modules/recordLegalperson/service/impl/RecordLegalpersonServiceImpl.java b/src/main/java/org/springblade/modules/recordLegalperson/service/impl/RecordLegalpersonServiceImpl.java
new file mode 100644
index 0000000..3b86039
--- /dev/null
+++ b/src/main/java/org/springblade/modules/recordLegalperson/service/impl/RecordLegalpersonServiceImpl.java
@@ -0,0 +1,79 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.recordLegalperson.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.modules.licetuser.entity.Licetuser;
+import org.springblade.modules.licetuser.service.ILicetuserService;
+import org.springblade.modules.recordLegalperson.dto.RecordLegalpersonDTO;
+import org.springblade.modules.recordLegalperson.entity.RecordLegalperson;
+import org.springblade.modules.recordLegalperson.mapper.RecordLegalpersonMapper;
+import org.springblade.modules.recordLegalperson.service.IRecordLegalpersonService;
+import org.springblade.modules.recordLegalperson.vo.RecordLegalpersonVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ *  服务实现类
+ *
+ * @author BladeX
+ * @since 2021-07-12
+ */
+@Service
+public class RecordLegalpersonServiceImpl extends ServiceImpl<RecordLegalpersonMapper, RecordLegalperson> implements IRecordLegalpersonService {
+
+	@Autowired
+	private ILicetuserService licetuserService;
+
+	@Override
+	public IPage<RecordLegalpersonVO> selectRecordPage(IPage<RecordLegalpersonVO> page, RecordLegalpersonVO record, String jurisdiction) {
+		return page.setRecords(baseMapper.selectRecordPage(page, record,jurisdiction));
+	}
+
+	@Override
+	public Map selectIn(String cardid,String type) {
+		return baseMapper.selectIn(cardid,type);
+	}
+
+	/**
+	 * 保安公司法人变更详情(基本信息和附件列表信息)
+	 * @param record
+	 * @return
+	 */
+	@Override
+	public RecordLegalpersonDTO getDetails(RecordLegalpersonDTO record) {
+		//查询公司信息
+		RecordLegalpersonDTO recordLegalpersonDTO = baseMapper.selectRecordDetail(record);
+		if (null!= recordLegalpersonDTO) {
+			//查询材料信息
+			Licetuser licetuser = new Licetuser();
+			licetuser.setUserid(record.getCardid());
+			licetuser.setPtype(record.getPtype());
+			List<Licetuser> licetusers = licetuserService.list(Condition.getQueryWrapper(licetuser));
+			//数据封装
+			recordLegalpersonDTO.setLicetusers(licetusers);
+			//返回数据
+			return recordLegalpersonDTO;
+		}
+		return null;
+	}
+}
diff --git a/src/main/java/org/springblade/modules/recordLegalperson/vo/RecordLegalpersonVO.java b/src/main/java/org/springblade/modules/recordLegalperson/vo/RecordLegalpersonVO.java
new file mode 100644
index 0000000..f6f811e
--- /dev/null
+++ b/src/main/java/org/springblade/modules/recordLegalperson/vo/RecordLegalpersonVO.java
@@ -0,0 +1,36 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.recordLegalperson.vo;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.modules.recordLegalperson.entity.RecordLegalperson;
+
+/**
+ * 视图实体类
+ *
+ * @author BladeX
+ * @since 2021-07-12
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel(value = "RecordVO对象", description = "RecordVO对象")
+public class RecordLegalpersonVO extends RecordLegalperson {
+	private static final long serialVersionUID = 1L;
+   private  String usetype;
+}
diff --git a/src/main/java/org/springblade/modules/recordk/entity/Recordk.java b/src/main/java/org/springblade/modules/recordk/entity/Recordk.java
index 3b8ca35..a95f828 100644
--- a/src/main/java/org/springblade/modules/recordk/entity/Recordk.java
+++ b/src/main/java/org/springblade/modules/recordk/entity/Recordk.java
@@ -153,4 +153,25 @@
 	private String approve;
 	private String jurisdiction;
 
+	@ApiModelProperty(value = "审批时间")
+	@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd")
+	private Date overtime;
+
+
+	@ApiModelProperty(value = "保安人数")
+	private Integer ksecuritys;
+
+	@ApiModelProperty(value = "拟跨区域经营的保安服务项目")
+	private String kproject;
+
+	@ApiModelProperty(value = "邮编")
+	private String kzipcode;
+
+	@ApiModelProperty(value = "跨区域经营服务时间(备案有效期)")
+	private String kservicetime;
+
+	@ApiModelProperty(value = "地址")
+	private String kaddress;
+
 }
diff --git a/src/main/java/org/springblade/modules/recordk/mapper/RecordkMapper.xml b/src/main/java/org/springblade/modules/recordk/mapper/RecordkMapper.xml
index 6760012..4b86454 100644
--- a/src/main/java/org/springblade/modules/recordk/mapper/RecordkMapper.xml
+++ b/src/main/java/org/springblade/modules/recordk/mapper/RecordkMapper.xml
@@ -29,6 +29,11 @@
         <result column="contactscell" property="contactscell"/>
         <result column="approve" property="approve"/>
         <result column="jurisdiction" property="jurisdiction"/>
+        <result column="ksecuritys" property="ksecuritys"/>
+        <result column="kproject" property="kproject"/>
+        <result column="kzipcode" property="kzipcode"/>
+        <result column="kservicetime" property="kservicetime"/>
+        <result column="kaddress" property="kaddress"/>
     </resultMap>
 
 
diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml
index 2d76fb5..2fd798c 100644
--- a/src/main/resources/application-test.yml
+++ b/src/main/resources/application-test.yml
@@ -18,12 +18,12 @@
     # MySql
     url: jdbc:mysql://223.82.109.183:2083/zhba-test?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
     username: root
-    password: zhba0728
+    password: ZHba@0112
 
 #ftp 设置
 ftp:
   sqlConnect: jdbc:mysql://223.82.109.183:2083/zhba-test?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
-  ftpHost: 192.168.0.199
+  ftpHost: 192.168.0.198
   ftpPort: 21
   ftpUserName: arsn
   ftpPassword: 123456

--
Gitblit v1.9.3