From 8abda2b2100b82d2b0051327f028b984bd74ed33 Mon Sep 17 00:00:00 2001
From: zhuo <2089219845@qq.com>
Date: 星期四, 13 二月 2025 13:53:36 +0800
Subject: [PATCH] 1.新增user三层 2.新增客户管理

---
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/CustomMapper.java            |   17 ++
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomServiceImpl.java |   62 ++++++++
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java   |   19 ++
 ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml                 |   14 +
 ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/Custom.java      |   65 +++++++++
 ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java     |   41 +++++
 ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/User.java        |  100 ++++++++++++++
 ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java            |   15 ++
 ruoyi-system/src/main/java/com/ruoyi/system/service/CustomService.java          |   28 ++++
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java              |   15 ++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java   |   25 +++
 11 files changed, 399 insertions(+), 2 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java
new file mode 100644
index 0000000..eb0bfd5
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java
@@ -0,0 +1,25 @@
+package com.ruoyi.web.controller.system;
+
+
+import com.ruoyi.system.service.UserService;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+
+/**
+ * 鐢ㄦ埛淇℃伅琛�
+ *
+ * @author zhuo
+ * @since 2025-02-13
+ */
+@RestController
+@RequestMapping("/system/newUser")
+public class UserController {
+
+    @Resource
+    private UserService userService;
+
+}
+
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/Custom.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/Custom.java
new file mode 100644
index 0000000..97d05ba
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/Custom.java
@@ -0,0 +1,65 @@
+package com.ruoyi.common.core.domain.entity;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+@Data
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName("custom")
+public class Custom implements Serializable {
+
+    @ApiModelProperty(value = "涓婚敭")
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    @ApiModelProperty(value = "瀹㈡埛鍚嶇О")
+    private String company;
+
+    @ApiModelProperty(value = "鍗曚綅鍦板潃")
+    private String address;
+
+    @ApiModelProperty(value = "宸ュ巶鍩�")
+    private String code;
+
+    @ApiModelProperty(value = "瀹㈡埛缂栧彿")
+    private String code2;
+
+    @TableField(fill = FieldFill.INSERT)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime createTime;
+
+    @ApiModelProperty(value = "鍒涘缓鏃ユ湡")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime updateTime;
+
+    @ApiModelProperty(value = "鍒涘缓鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT)
+    private Integer createUser;
+
+    @ApiModelProperty(value = "鏇存柊鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Integer updateUser;
+
+    @ApiModelProperty(value = "瀹㈡埛鍗曚綅EN")
+    private String companyEn;
+
+    @ApiModelProperty(value = "鍗曚綅鍦板潃EN")
+    private String addressEn;
+
+    @ApiModelProperty(value = "鍔犳�ラ搴�")
+    private Integer num;
+
+    @ApiModelProperty(value = "鍗曚綅鐢佃瘽")
+    private String phone;
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
index d169139..b56f0b5 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
@@ -14,7 +14,7 @@
 
 /**
  * 鐢ㄦ埛瀵硅薄 sys_user
- * 
+ *
  * @author ruoyi
  */
 public class SysUser extends BaseEntity
@@ -37,6 +37,9 @@
     @Excel(name = "鐢ㄦ埛鍚嶇О")
     private String nickName;
 
+    /** 鑻辨枃鍚嶇О */
+    private String nameEn;
+
     /** 鐢ㄦ埛閭 */
     @Excel(name = "鐢ㄦ埛閭")
     private String email;
@@ -51,6 +54,12 @@
 
     /** 鐢ㄦ埛澶村儚 */
     private String avatar;
+
+    /** 绛惧悕鍦板潃 */
+    private String signatureUrl;
+
+    /** 鍗曚綅id */
+    private String company;
 
     /** 瀵嗙爜 */
     private String password;
@@ -297,6 +306,36 @@
         this.roleId = roleId;
     }
 
+    public String getNameEn()
+    {
+        return nameEn;
+    }
+
+    public void setNameEn(String nameEn)
+    {
+        this.nameEn = nameEn;
+    }
+
+    public String getSignatureUrl()
+    {
+        return signatureUrl;
+    }
+
+    public void setSignatureUrl(String signatureUrl)
+    {
+        this.signatureUrl = signatureUrl;
+    }
+
+    public String getCompany()
+    {
+        return company;
+    }
+
+    public void setCompany(String company)
+    {
+        this.company = company;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/User.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/User.java
new file mode 100644
index 0000000..29d18a7
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/User.java
@@ -0,0 +1,100 @@
+package com.ruoyi.common.core.domain.entity;
+
+import com.baomidou.mybatisplus.annotation.*;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 鐢ㄦ埛淇℃伅琛�
+ *
+ * @author zhuo
+ * @since 2025-02-13
+ */
+@Data
+@TableName("user")
+public class User {
+
+    @ApiModelProperty(value = "涓婚敭")
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    @ApiModelProperty(value = "閮ㄩ棬ID")
+    private Long deptId;
+
+    @ApiModelProperty(value = "鐢ㄦ埛璐﹀彿")
+    private String account;
+
+    @ApiModelProperty(value = "鐢ㄦ埛鏄电О")
+    private String name;
+
+    @ApiModelProperty(value = "鑻辨枃鍚�")
+    private String nameEn;
+
+    @ApiModelProperty(value = "鐢ㄦ埛绫诲瀷锛�00绯荤粺鐢ㄦ埛锛�")
+    private String userType;
+
+    @ApiModelProperty(value = "鐢ㄦ埛閭")
+    private String email;
+
+    @ApiModelProperty(value = "鎵嬫満鍙风爜")
+    private String phone;
+
+    @ApiModelProperty(value = "鐢ㄦ埛鎬у埆锛�0鐢� 1濂� 2鏈煡锛�")
+    private String sex;
+
+    @ApiModelProperty(value = "骞撮緞")
+    private Integer age;
+
+    @ApiModelProperty(value = "绛惧悕鍦板潃")
+    private String signatureUrl;
+
+    @ApiModelProperty(value = "澶村儚鍦板潃")
+    private String pictureUrl;
+
+    @ApiModelProperty(value = "瀵嗙爜")
+    private String password;
+
+    @ApiModelProperty(value = "甯愬彿鐘舵�侊紙0姝e父 1鍋滅敤锛�")
+    private String status;
+
+    @ApiModelProperty(value = "鍒犻櫎鏍囧織锛�0浠h〃瀛樺湪 2浠h〃鍒犻櫎锛�")
+    private String delFlag;
+
+    @ApiModelProperty(value = "鏈�鍚庣櫥褰旾P")
+    private String loginIp;
+
+    @ApiModelProperty(value = "鏈�鍚庣櫥褰曟椂闂�")
+    private Date loginDate;
+
+    @ApiModelProperty(value = "cnas瀹為獙瀹d")
+    private String departLimsId;
+
+    @ApiModelProperty(value = "鍗曚綅id")
+    private String company;
+
+    @ApiModelProperty(value = "鏄惁瀹㈡埛 0: 鍚�, 1:鏄�")
+    private Integer isCustom;
+
+    @TableField(fill = FieldFill.INSERT)
+    @ApiModelProperty(value = "鍒涘缓鑰�")
+    private String createBy;
+
+    @TableField(fill = FieldFill.INSERT)
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    private Date createTime;
+
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    @ApiModelProperty(value = "鏇存柊鑰�")
+    private String updateBy;
+
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    private Date updateTime;
+
+    @ApiModelProperty(value = "澶囨敞")
+    private String remark;
+
+}
+
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CustomMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CustomMapper.java
new file mode 100644
index 0000000..e0d4108
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CustomMapper.java
@@ -0,0 +1,17 @@
+package com.ruoyi.system.mapper;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.ruoyi.common.core.domain.entity.Custom;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+public interface CustomMapper extends BaseMapper<Custom> {
+
+    IPage<Custom> selectCustomPageList(IPage<Custom> page, QueryWrapper<Custom> ew);
+
+    int delCustomById(Integer id);
+
+}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java
new file mode 100644
index 0000000..0f3eafd
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java
@@ -0,0 +1,15 @@
+package com.ruoyi.system.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.common.core.domain.entity.User;
+
+/**
+ * 鐢ㄦ埛淇℃伅琛�
+ *
+ * @author zhuo
+ * @since 2025-02-13
+ */
+public interface UserMapper extends BaseMapper<User> {
+
+}
+
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/CustomService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/CustomService.java
new file mode 100644
index 0000000..0b703c2
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/CustomService.java
@@ -0,0 +1,28 @@
+package com.ruoyi.system.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.common.core.domain.entity.Custom;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+* @author Administrator
+* @description 閽堝琛ㄣ�恥ser(鐢ㄦ埛id)銆戠殑鏁版嵁搴撴搷浣淪ervice
+* @createDate 2024骞�3鏈�7鏃�09:21:59
+*/
+public interface CustomService extends IService<Custom> {
+
+    Map<String, Object> selectCustomPageList(IPage<Custom> page, Custom custom);
+
+    int delCustomById(Long id);
+
+    int addCustom(Custom custom);
+
+    int upCustom(Custom custom);
+
+    List<Custom> selectCustomEnum();
+
+    Custom getCustomId(String company);
+}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java
new file mode 100644
index 0000000..b073d56
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java
@@ -0,0 +1,15 @@
+package com.ruoyi.system.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.common.core.domain.entity.User;
+
+/**
+ * 鐢ㄦ埛淇℃伅琛�
+ *
+ * @author zhuo
+ * @since 2025-02-13
+ */
+public interface UserService extends IService<User> {
+
+}
+
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomServiceImpl.java
new file mode 100644
index 0000000..c5942ef
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomServiceImpl.java
@@ -0,0 +1,62 @@
+package com.ruoyi.system.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.domain.entity.Custom;
+import com.ruoyi.system.mapper.CustomMapper;
+import com.ruoyi.system.service.CustomService;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+* @author Administrator
+* @description 閽堝琛ㄣ�恜ower(鐢ㄦ埛id)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇
+* @createDate 2023-12-27 02:37:38
+*/
+@Service
+@AllArgsConstructor
+public class CustomServiceImpl extends ServiceImpl<CustomMapper, Custom>
+    implements CustomService {
+
+    private CustomMapper customMapper;
+
+    @Override
+    public Map<String, Object> selectCustomPageList(IPage<Custom> page, Custom custom) {
+
+        return null;
+    }
+
+    @Override
+    public int delCustomById(Long id) {
+        return customMapper.deleteById(id);
+    }
+
+    @Override
+    public int addCustom(Custom custom) {
+        return customMapper.insert(custom);
+    }
+
+    @Override
+    public int upCustom(Custom custom) {
+        return customMapper.updateById(custom);
+    }
+
+    @Override
+    public List<Custom> selectCustomEnum() {
+        return customMapper.selectList(Wrappers.<Custom>lambdaQuery().select(Custom::getId,Custom::getCompany));
+    }
+
+    @Override
+    public Custom getCustomId(String company) {
+        return customMapper.selectOne(Wrappers.<Custom>lambdaQuery().eq(Custom::getCompany, company).last("limit 1"));
+    }
+}
+
+
+
+
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java
new file mode 100644
index 0000000..acc052e
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java
@@ -0,0 +1,19 @@
+package com.ruoyi.system.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.domain.entity.User;
+import com.ruoyi.system.mapper.UserMapper;
+import com.ruoyi.system.service.UserService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 鐢ㄦ埛淇℃伅琛�
+ *
+ * @author zhuo
+ * @since 2025-02-13
+ */
+@Service
+public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
+
+}
+
diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
index 4ede96f..8757304 100644
--- a/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -23,6 +23,9 @@
         <result property="updateBy"     column="update_by"    />
         <result property="updateTime"   column="update_time"  />
         <result property="remark"       column="remark"       />
+        <result property="nameEn"       column="name_en"       />
+        <result property="signatureUrl"       column="signature_url"       />
+        <result property="company"       column="company"       />
         <association property="dept"    javaType="SysDept"         resultMap="deptResult" />
         <collection  property="roles"   javaType="java.util.List"  resultMap="RoleResult" />
     </resultMap>
@@ -47,7 +50,7 @@
     </resultMap>
 
 	<sql id="selectUserVo">
-        select u.id, u.dept_id, u.account, u.name, u.email, u.picture_url, u.phone, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,
+        select u.id, u.dept_id, u.account, u.name, u.email, u.picture_url, u.phone, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, u.name_en, u.signature_url, u.company,
         d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,
         r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status
         from user u
@@ -156,6 +159,9 @@
  			<if test="status != null and status != ''">status,</if>
  			<if test="createBy != null and createBy != ''">create_by,</if>
  			<if test="remark != null and remark != ''">remark,</if>
+ 			<if test="nameEn != null and nameEn != ''">name_en,</if>
+ 			<if test="signatureUrl != null and signatureUrl != ''">signature_url,</if>
+ 			<if test="company != null and company != ''">company,</if>
  			create_time
  		)values(
  			<if test="userId != null and userId != ''">#{userId},</if>
@@ -170,6 +176,9 @@
  			<if test="status != null and status != ''">#{status},</if>
  			<if test="createBy != null and createBy != ''">#{createBy},</if>
  			<if test="remark != null and remark != ''">#{remark},</if>
+ 			<if test="nameEn != null and nameEn != ''">#{nameEn},</if>
+ 			<if test="signatureUrl != null and signatureUrl != ''">#{signatureUrl},</if>
+ 			<if test="company != null and company != ''">#{company},</if>
  			sysdate()
  		)
 	</insert>
@@ -190,6 +199,9 @@
  			<if test="loginDate != null">login_date = #{loginDate},</if>
  			<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
  			<if test="remark != null">remark = #{remark},</if>
+			<if test="nameEn != null and nameEn != ''">name_en = #{nameEn},</if>
+			<if test="signatureUrl != null and signatureUrl != ''">signature_url = #{signatureUrl},</if>
+			<if test="company != null and company != ''">company = #{company},</if>
  			update_time = sysdate()
  		</set>
  		where id = #{userId}

--
Gitblit v1.9.3