From b6892f6a2566f639ae6d75bd6d8d1c307d739234 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期五, 29 八月 2025 17:15:41 +0800
Subject: [PATCH] yys  新增客户拜访模块

---
 src/main/resources/mapper/customervisits/CustomerVisitsMapper.xml                  |    5 +
 src/main/java/com/ruoyi/customervisits/controller/CustomerVisitsController.java    |   50 ++++++++++++
 src/main/java/com/ruoyi/customervisits/service/CustomerVisitsService.java          |   14 +++
 src/main/java/com/ruoyi/customervisits/service/impl/CustomerVisitsServiceImpl.java |   31 +++++++
 src/main/java/com/ruoyi/customervisits/pojo/CustomerVisits.java                    |  115 ++++++++++++++++++++++++++++
 src/main/java/com/ruoyi/customervisits/mapper/CustomerVisitsMapper.java            |   11 ++
 6 files changed, 226 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/ruoyi/customervisits/controller/CustomerVisitsController.java b/src/main/java/com/ruoyi/customervisits/controller/CustomerVisitsController.java
new file mode 100644
index 0000000..3d26445
--- /dev/null
+++ b/src/main/java/com/ruoyi/customervisits/controller/CustomerVisitsController.java
@@ -0,0 +1,50 @@
+package com.ruoyi.customervisits.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.compensationperformance.pojo.CompensationPerformance;
+import com.ruoyi.customervisits.pojo.CustomerVisits;
+import com.ruoyi.customervisits.service.impl.CustomerVisitsServiceImpl;
+import com.ruoyi.framework.aspectj.lang.annotation.Log;
+import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
+import com.ruoyi.framework.web.controller.BaseController;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author :yys
+ * @date : 2025/8/29 10:28
+ */
+@RestController
+@Api(tags = "瀹㈡埛鎷滆")
+@RequestMapping("/customerVisits")
+public class CustomerVisitsController extends BaseController {
+
+    @Autowired
+    private CustomerVisitsServiceImpl customerVisitsService;
+
+    @GetMapping("/listPage")
+    @Log(title = "瀹㈡埛鎷滆-鍒嗛〉鏌ヨ", businessType = BusinessType.OTHER)
+    @ApiOperation("瀹㈡埛鎷滆-鍒嗛〉鏌ヨ")
+    public AjaxResult listPage(Page page, CustomerVisits customerVisits){
+        IPage<CustomerVisits> listPage = customerVisitsService.listPage(page, customerVisits);
+        return AjaxResult.success(listPage);
+    }
+
+    @Log(title = "瀹㈡埛鎷滆-娣诲姞", businessType = BusinessType.INSERT)
+    @ApiOperation("瀹㈡埛鎷滆-娣诲姞")
+    @PostMapping("/add")
+    @Transactional(rollbackFor = Exception.class)
+    public AjaxResult add(@RequestBody CustomerVisits customerVisits){
+        boolean save = customerVisitsService.save(customerVisits);
+        if (save){
+            return AjaxResult.success("娣诲姞鎴愬姛");
+        }
+        return AjaxResult.error("娣诲姞澶辫触");
+    }
+
+}
diff --git a/src/main/java/com/ruoyi/customervisits/mapper/CustomerVisitsMapper.java b/src/main/java/com/ruoyi/customervisits/mapper/CustomerVisitsMapper.java
new file mode 100644
index 0000000..24d4721
--- /dev/null
+++ b/src/main/java/com/ruoyi/customervisits/mapper/CustomerVisitsMapper.java
@@ -0,0 +1,11 @@
+package com.ruoyi.customervisits.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.customervisits.pojo.CustomerVisits;
+
+/**
+ * @author :yys
+ * @date : 2025/8/29 10:24
+ */
+public interface CustomerVisitsMapper extends BaseMapper<CustomerVisits> {
+}
diff --git a/src/main/java/com/ruoyi/customervisits/pojo/CustomerVisits.java b/src/main/java/com/ruoyi/customervisits/pojo/CustomerVisits.java
new file mode 100644
index 0000000..63c5338
--- /dev/null
+++ b/src/main/java/com/ruoyi/customervisits/pojo/CustomerVisits.java
@@ -0,0 +1,115 @@
+package com.ruoyi.customervisits.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Builder;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * @author :yys
+ * @date : 2025/8/29 10:17
+ */
+@TableName("customer_visits")
+@Data
+@Builder
+@ApiModel
+public class CustomerVisits {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 瀹㈡埛鍚嶇О
+     */
+    @ApiModelProperty("瀹㈡埛鍚嶇О")
+    private String customerName;
+
+    /**
+     * 鑱旂郴浜�
+     */
+    @ApiModelProperty("鑱旂郴浜�")
+    private String contact;
+
+    /**
+     * 鑱旂郴鐢佃瘽
+     */
+    @ApiModelProperty("鑱旂郴鐢佃瘽")
+    private String contactPhone;
+
+    /**
+     * 浣嶇疆
+     */
+    @ApiModelProperty("浣嶇疆")
+    private String location;
+
+    /**
+     * 鎷滆浜�
+     */
+    @ApiModelProperty("鎷滆浜�")
+    private String visitingPeople;
+
+    /**
+     * 鎷滆鐩殑
+     */
+    @ApiModelProperty("鎷滆鐩殑")
+    private String purposeVisit;
+
+    /**
+     * 鎷滆鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty("鎷滆鏃堕棿")
+    private Date purposeDate;
+
+    /**
+     * 鎷滆鍦板潃
+     */
+    @ApiModelProperty("鎷滆鍦板潃")
+    private String visitAddress;
+
+    /**
+     * 澶囨敞
+     */
+    @ApiModelProperty("澶囨敞")
+    private String remark;
+
+    /**
+     * 鍒涘缓鑰�
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private Integer createUser;
+
+    /**
+     * 鍒涘缓鏃堕棿
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private LocalDateTime createTime;
+
+    /**
+     * 淇敼鑰�
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Integer updateUser;
+
+    /**
+     * 淇敼鏃堕棿
+     */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private LocalDateTime updateTime;
+
+    /**
+     * 绉熸埛ID
+     */
+    @TableField(fill = FieldFill.INSERT)
+    private Long tenantId;
+}
diff --git a/src/main/java/com/ruoyi/customervisits/service/CustomerVisitsService.java b/src/main/java/com/ruoyi/customervisits/service/CustomerVisitsService.java
new file mode 100644
index 0000000..f4463e2
--- /dev/null
+++ b/src/main/java/com/ruoyi/customervisits/service/CustomerVisitsService.java
@@ -0,0 +1,14 @@
+package com.ruoyi.customervisits.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.customervisits.pojo.CustomerVisits;
+
+/**
+ * @author :yys
+ * @date : 2025/8/29 10:26
+ */
+public interface CustomerVisitsService extends IService<CustomerVisits> {
+    IPage<CustomerVisits> listPage(Page page, CustomerVisits customerVisits);
+}
diff --git a/src/main/java/com/ruoyi/customervisits/service/impl/CustomerVisitsServiceImpl.java b/src/main/java/com/ruoyi/customervisits/service/impl/CustomerVisitsServiceImpl.java
new file mode 100644
index 0000000..e8cfc1a
--- /dev/null
+++ b/src/main/java/com/ruoyi/customervisits/service/impl/CustomerVisitsServiceImpl.java
@@ -0,0 +1,31 @@
+package com.ruoyi.customervisits.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.customervisits.mapper.CustomerVisitsMapper;
+import com.ruoyi.customervisits.pojo.CustomerVisits;
+import com.ruoyi.customervisits.service.CustomerVisitsService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author :yys
+ * @date : 2025/8/29 10:27
+ */
+@Service
+@Slf4j
+public class CustomerVisitsServiceImpl extends ServiceImpl<CustomerVisitsMapper, CustomerVisits> implements CustomerVisitsService {
+
+    @Autowired
+    private CustomerVisitsMapper customerVisitsMapper;
+
+    @Override
+    public IPage<CustomerVisits> listPage(Page page, CustomerVisits customerVisits) {
+        LambdaQueryWrapper<CustomerVisits> customerVisitsLambdaQueryWrapper = new LambdaQueryWrapper<CustomerVisits>();
+        Page page1 = customerVisitsMapper.selectPage(page, customerVisitsLambdaQueryWrapper);
+        return page1;
+    }
+}
diff --git a/src/main/resources/mapper/customervisits/CustomerVisitsMapper.xml b/src/main/resources/mapper/customervisits/CustomerVisitsMapper.xml
new file mode 100644
index 0000000..92d44bd
--- /dev/null
+++ b/src/main/resources/mapper/customervisits/CustomerVisitsMapper.xml
@@ -0,0 +1,5 @@
+<?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="com.ruoyi.customervisits.mapper.CustomerVisitsMapper">
+
+</mapper>
\ No newline at end of file

--
Gitblit v1.9.3