From 88aaf2bd88615c0afea7488441d8e5bad31d4906 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期四, 08 五月 2025 13:54:18 +0800
Subject: [PATCH] 销售台账

---
 src/main/java/com/ruoyi/sales/dto/SalesLedgerDto.java                  |    4 
 src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java    |   99 +++++++++++++++++++
 src/main/java/com/ruoyi/sales/mapper/SalesLedgerMapper.java            |   15 +++
 src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java |   49 +++++++++
 src/main/java/com/ruoyi/basic/controller/CustomerController.java       |    2 
 src/main/java/com/ruoyi/sales/pojo/SalesLedger.java                    |   85 +++++++++++++++++
 src/main/java/com/ruoyi/sales/service/ISalesLedgerService.java         |   25 +++++
 7 files changed, 278 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/basic/controller/CustomerController.java b/src/main/java/com/ruoyi/basic/controller/CustomerController.java
index 102517c..33e229c 100644
--- a/src/main/java/com/ruoyi/basic/controller/CustomerController.java
+++ b/src/main/java/com/ruoyi/basic/controller/CustomerController.java
@@ -82,7 +82,7 @@
      * 淇敼瀹㈡埛妗f
      */
     @Log(title = "瀹㈡埛妗f", businessType = BusinessType.UPDATE)
-    @PutMapping ("/updateCustomer")
+    @PostMapping("/updateCustomer")
     public AjaxResult edit(@RequestBody Customer customer) {
         return toAjax(customerService.updateCustomer(customer));
     }
diff --git a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
new file mode 100644
index 0000000..1f871d6
--- /dev/null
+++ b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
@@ -0,0 +1,99 @@
+package com.ruoyi.sales.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.sales.pojo.SalesLedger;
+import com.ruoyi.sales.service.ISalesLedgerService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+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 com.ruoyi.framework.web.page.TableDataInfo;
+
+/**
+ * 閿�鍞彴璐ontroller
+ * 
+ * @author ruoyi
+ * @date 2025-05-08
+ */
+@RestController
+@RequestMapping("/sales/ledger")
+public class SalesLedgerController extends BaseController
+{
+    @Autowired
+    private ISalesLedgerService salesLedgerService;
+
+    /**
+     * 鏌ヨ閿�鍞彴璐﹀垪琛�
+     */
+    @GetMapping("/list")
+    public TableDataInfo list(SalesLedger salesLedger)
+    {
+        startPage();
+        List<SalesLedger> list = salesLedgerService.selectSalesLedgerList(salesLedger);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭閿�鍞彴璐﹀垪琛�
+     */
+    @Log(title = "閿�鍞彴璐�", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, SalesLedger salesLedger)
+    {
+        List<SalesLedger> list = salesLedgerService.selectSalesLedgerList(salesLedger);
+        ExcelUtil<SalesLedger> util = new ExcelUtil<SalesLedger>(SalesLedger.class);
+        util.exportExcel(response, list, "閿�鍞彴璐︽暟鎹�");
+    }
+
+    /**
+     * 鑾峰彇閿�鍞彴璐﹁缁嗕俊鎭�
+     */
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(salesLedgerService.selectSalesLedgerById(id));
+    }
+
+    /**
+     * 鏂板閿�鍞彴璐�
+     */
+    @Log(title = "閿�鍞彴璐�", businessType = BusinessType.INSERT)
+    @PostMapping ("/insertSalesLedger")
+    public AjaxResult add(@RequestBody SalesLedger salesLedger)
+    {
+        return toAjax(salesLedgerService.insertSalesLedger(salesLedger));
+    }
+
+    /**
+     * 淇敼閿�鍞彴璐�
+     */
+    @Log(title = "閿�鍞彴璐�", businessType = BusinessType.UPDATE)
+    @PostMapping ("/updateSalesLedger")
+    public AjaxResult edit(@RequestBody SalesLedger salesLedger)
+    {
+        return toAjax(salesLedgerService.updateSalesLedger(salesLedger));
+    }
+
+    /**
+     * 鍒犻櫎閿�鍞彴璐�
+     */
+    @Log(title = "閿�鍞彴璐�", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(salesLedgerService.deleteSalesLedgerByIds(ids));
+    }
+}
diff --git a/src/main/java/com/ruoyi/sales/dto/SalesLedgerDto.java b/src/main/java/com/ruoyi/sales/dto/SalesLedgerDto.java
new file mode 100644
index 0000000..49fda54
--- /dev/null
+++ b/src/main/java/com/ruoyi/sales/dto/SalesLedgerDto.java
@@ -0,0 +1,4 @@
+package com.ruoyi.sales.dto;
+
+public class SalesLedgerDto {
+}
diff --git a/src/main/java/com/ruoyi/sales/mapper/SalesLedgerMapper.java b/src/main/java/com/ruoyi/sales/mapper/SalesLedgerMapper.java
new file mode 100644
index 0000000..9980acc
--- /dev/null
+++ b/src/main/java/com/ruoyi/sales/mapper/SalesLedgerMapper.java
@@ -0,0 +1,15 @@
+package com.ruoyi.sales.mapper;
+
+import java.util.List;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.sales.pojo.SalesLedger;
+
+
+/**
+ * 閿�鍞彴璐apper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-05-08
+ */
+public interface SalesLedgerMapper extends BaseMapper<SalesLedger> {
+}
diff --git a/src/main/java/com/ruoyi/sales/pojo/SalesLedger.java b/src/main/java/com/ruoyi/sales/pojo/SalesLedger.java
new file mode 100644
index 0000000..5f35293
--- /dev/null
+++ b/src/main/java/com/ruoyi/sales/pojo/SalesLedger.java
@@ -0,0 +1,85 @@
+package com.ruoyi.sales.pojo;
+
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
+import lombok.Data;
+
+/**
+ * 閿�鍞彴璐﹀璞� sales_ledger
+ *
+ * @author ruoyi
+ * @date 2025-05-08
+ */
+@TableName(value = "sales_ledger")
+@Data
+public class SalesLedger {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 閿�鍞彴璐︿富閿�
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 閿�鍞悎鍚屽彿
+     */
+    @Excel(name = "閿�鍞悎鍚屽彿")
+    private String salesContractNo;
+
+    /**
+     * 瀹㈡埛鍚堝悓鍙�
+     */
+    @Excel(name = "瀹㈡埛鍚堝悓鍙�")
+    private String customerContractNo;
+
+    /**
+     * 椤圭洰鍚嶇О
+     */
+    @Excel(name = "椤圭洰鍚嶇О")
+    private String projectName;
+
+    /**
+     * 褰曞叆鏃ユ湡
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "褰曞叆鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date entryDate;
+
+    /**
+     * 涓氬姟鍛�
+     */
+    @Excel(name = "涓氬姟鍛�")
+    private String salesman;
+
+    /**
+     * 瀹㈡埛鍚嶇О
+     */
+    @Excel(name = "瀹㈡埛鍚嶇О")
+    private String customerName;
+
+    /**
+     * 褰曞叆浜�
+     */
+    @Excel(name = "褰曞叆浜�")
+    private String entryPerson;
+
+    /**
+     * 澶囨敞
+     */
+    @Excel(name = "澶囨敞")
+    private String remarks;
+
+    /**
+     * 闄勪欢鏉愭枡锛屽瓨鍌ㄦ枃浠跺悕绛夌浉鍏充俊鎭�
+     */
+    @Excel(name = "闄勪欢鏉愭枡锛屽瓨鍌ㄦ枃浠跺悕绛夌浉鍏充俊鎭�")
+    private String attachmentMaterials;
+
+}
+
diff --git a/src/main/java/com/ruoyi/sales/service/ISalesLedgerService.java b/src/main/java/com/ruoyi/sales/service/ISalesLedgerService.java
new file mode 100644
index 0000000..7e28e93
--- /dev/null
+++ b/src/main/java/com/ruoyi/sales/service/ISalesLedgerService.java
@@ -0,0 +1,25 @@
+package com.ruoyi.sales.service;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.sales.pojo.SalesLedger;
+
+/**
+ * 閿�鍞彴璐ervice鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-05-08
+ */
+public interface ISalesLedgerService extends IService<SalesLedger> {
+
+    List<SalesLedger> selectSalesLedgerList(SalesLedger salesLedger);
+
+    SalesLedger selectSalesLedgerById(Long id);
+
+    int deleteSalesLedgerByIds(Long[] ids);
+
+    int insertSalesLedger(SalesLedger salesLedger);
+
+    int updateSalesLedger(SalesLedger salesLedger);
+}
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
new file mode 100644
index 0000000..769cfe9
--- /dev/null
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
@@ -0,0 +1,49 @@
+package com.ruoyi.sales.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.sales.mapper.SalesLedgerMapper;
+import com.ruoyi.sales.pojo.SalesLedger;
+import com.ruoyi.sales.service.ISalesLedgerService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * 閿�鍞彴璐ervice涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-05-08
+ */
+@Service
+public class SalesLedgerServiceImpl extends ServiceImpl<SalesLedgerMapper, SalesLedger> implements ISalesLedgerService {
+    @Autowired
+    private SalesLedgerMapper salesLedgerMapper;
+
+    @Override
+    public List<SalesLedger> selectSalesLedgerList(SalesLedger salesLedger) {
+        return salesLedgerMapper.selectList(new LambdaQueryWrapper<>());
+    }
+
+    @Override
+    public SalesLedger selectSalesLedgerById(Long id) {
+        return salesLedgerMapper.selectById(id);
+    }
+
+    @Override
+    public int deleteSalesLedgerByIds(Long[] ids) {
+        return salesLedgerMapper.deleteBatchIds(Arrays.asList(ids));
+    }
+
+    @Override
+    public int insertSalesLedger(SalesLedger salesLedger) {
+        return salesLedgerMapper.insert(salesLedger);
+    }
+
+    @Override
+    public int updateSalesLedger(SalesLedger salesLedger) {
+        return salesLedgerMapper.updateById(salesLedger);
+    }
+}

--
Gitblit v1.9.3