From 9d822f15a8be5c3f4273b6a36ee928597521b2b7 Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期五, 22 十一月 2024 14:08:14 +0800
Subject: [PATCH] -物料采集

---
 billion-main/src/main/java/com/billion/main/da/service/impl/DaMaterialCollectionServiceImpl.java |   95 ++++++
 billion-main/src/main/java/com/billion/main/da/service/IDaMaterialCollectionService.java         |   63 ++++
 billion-main/src/main/java/com/billion/main/da/controller/DaMaterialCollectionController.java    |  104 +++++++
 billion-ui/src/views/main/da/materialCollection/index.vue                                        |  276 +++++++++++++++++++
 billion-generator/src/main/resources/vm/vue/index.vue.vm                                         |   46 +-
 billion-main/src/main/java/com/billion/main/da/mapper/DaMaterialCollectionMapper.java            |   63 ++++
 billion-main/src/main/java/com/billion/main/da/domain/DaMaterialCollection.java                  |   51 +++
 billion-ui/src/api/main/da/materialCollection.js                                                 |   44 +++
 billion-main/src/main/resources/mapper/da/DaMaterialCollectionMapper.xml                         |   79 +++++
 billion-ui/src/views/main/sc/collectionParamConf/index.vue                                       |    2 
 10 files changed, 799 insertions(+), 24 deletions(-)

diff --git a/billion-generator/src/main/resources/vm/vue/index.vue.vm b/billion-generator/src/main/resources/vm/vue/index.vue.vm
index d2f15b0..5522dd5 100644
--- a/billion-generator/src/main/resources/vm/vue/index.vue.vm
+++ b/billion-generator/src/main/resources/vm/vue/index.vue.vm
@@ -61,7 +61,7 @@
 #end
 #end
 #end
-      <el-form-item>
+      <el-form-item style="float: right">
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
       </el-form-item>
@@ -110,11 +110,11 @@
           v-hasPermi="['${moduleName}:${businessName}:export']"
         >瀵煎嚭</el-button>
       </el-col>
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+##      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="${businessName}List" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center" />
+    <el-table border v-loading="loading" :data="${businessName}List" @selection-change="handleSelectionChange">
+      <el-table-column show-overflow-tooltip="true" type="selection" width="55" align="center" />
 #foreach($column in $columns)
 #set($javaField=$column.javaField)
 #set($parentheseIndex=$column.columnComment.indexOf("锛�"))
@@ -148,24 +148,24 @@
       <el-table-column label="${comment}" align="center" prop="${javaField}" />
 #end
 #end
-      <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
-        <template slot-scope="scope">
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-edit"
-            @click="handleUpdate(scope.row)"
-            v-hasPermi="['${moduleName}:${businessName}:edit']"
-          >淇敼</el-button>
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-delete"
-            @click="handleDelete(scope.row)"
-            v-hasPermi="['${moduleName}:${businessName}:remove']"
-          >鍒犻櫎</el-button>
-        </template>
-      </el-table-column>
+##      <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+##        <template slot-scope="scope">
+##          <el-button
+##            size="mini"
+##            type="text"
+##            icon="el-icon-edit"
+##            @click="handleUpdate(scope.row)"
+##            v-hasPermi="['${moduleName}:${businessName}:edit']"
+##          >淇敼</el-button>
+##          <el-button
+##            size="mini"
+##            type="text"
+##            icon="el-icon-delete"
+##            @click="handleDelete(scope.row)"
+##            v-hasPermi="['${moduleName}:${businessName}:remove']"
+##          >鍒犻櫎</el-button>
+##        </template>
+##      </el-table-column>
     </el-table>
     
     <pagination
@@ -350,7 +350,7 @@
 </template>
 
 <script>
-import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}";
+import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/main/${moduleName}/${businessName}";
 
 export default {
   name: "${BusinessName}",
diff --git a/billion-main/src/main/java/com/billion/main/da/controller/DaMaterialCollectionController.java b/billion-main/src/main/java/com/billion/main/da/controller/DaMaterialCollectionController.java
new file mode 100644
index 0000000..08dadb0
--- /dev/null
+++ b/billion-main/src/main/java/com/billion/main/da/controller/DaMaterialCollectionController.java
@@ -0,0 +1,104 @@
+package com.billion.main.da.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+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.billion.common.annotation.Log;
+import com.billion.common.core.controller.BaseController;
+import com.billion.common.core.domain.AjaxResult;
+import com.billion.common.enums.BusinessType;
+import com.billion.main.da.domain.DaMaterialCollection;
+import com.billion.main.da.service.IDaMaterialCollectionService;
+import com.billion.common.utils.poi.ExcelUtil;
+import com.billion.common.core.page.TableDataInfo;
+
+/**
+ * 鐗╂枡閲囬泦Controller
+ * 
+ * @author Billion-Yi
+ * @date 2024-11-22
+ */
+@RestController
+@RequestMapping("/da/materialCollection")
+public class DaMaterialCollectionController extends BaseController
+{
+    @Autowired
+    private IDaMaterialCollectionService daMaterialCollectionService;
+
+    /**
+     * 鏌ヨ鐗╂枡閲囬泦鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('da:materialCollection:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(DaMaterialCollection daMaterialCollection)
+    {
+        startPage();
+        List<DaMaterialCollection> list = daMaterialCollectionService.selectDaMaterialCollectionList(daMaterialCollection);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭鐗╂枡閲囬泦鍒楄〃
+     */
+    @PreAuthorize("@ss.hasPermi('da:materialCollection:export')")
+    @Log(title = "鐗╂枡閲囬泦", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, DaMaterialCollection daMaterialCollection)
+    {
+        List<DaMaterialCollection> list = daMaterialCollectionService.selectDaMaterialCollectionList(daMaterialCollection);
+        ExcelUtil<DaMaterialCollection> util = new ExcelUtil<DaMaterialCollection>(DaMaterialCollection.class);
+        util.exportExcel(response, list, "鐗╂枡閲囬泦鏁版嵁");
+    }
+
+    /**
+     * 鑾峰彇鐗╂枡閲囬泦璇︾粏淇℃伅
+     */
+    @PreAuthorize("@ss.hasPermi('da:materialCollection:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(daMaterialCollectionService.selectDaMaterialCollectionById(id));
+    }
+
+    /**
+     * 鏂板鐗╂枡閲囬泦
+     */
+    @PreAuthorize("@ss.hasPermi('da:materialCollection:add')")
+    @Log(title = "鐗╂枡閲囬泦", businessType = BusinessType.INSERT)
+    @PostMapping
+    public void add(@RequestBody DaMaterialCollection daMaterialCollection)
+    {
+        daMaterialCollectionService.insertDaMaterialCollection(daMaterialCollection);
+    }
+
+    /**
+     * 淇敼鐗╂枡閲囬泦
+     */
+    @PreAuthorize("@ss.hasPermi('da:materialCollection:edit')")
+    @Log(title = "鐗╂枡閲囬泦", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody DaMaterialCollection daMaterialCollection)
+    {
+        return toAjax(daMaterialCollectionService.updateDaMaterialCollection(daMaterialCollection));
+    }
+
+    /**
+     * 鍒犻櫎鐗╂枡閲囬泦
+     */
+    @PreAuthorize("@ss.hasPermi('da:materialCollection:remove')")
+    @Log(title = "鐗╂枡閲囬泦", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(daMaterialCollectionService.deleteDaMaterialCollectionByIds(ids));
+    }
+}
diff --git a/billion-main/src/main/java/com/billion/main/da/domain/DaMaterialCollection.java b/billion-main/src/main/java/com/billion/main/da/domain/DaMaterialCollection.java
new file mode 100644
index 0000000..62a1d9a
--- /dev/null
+++ b/billion-main/src/main/java/com/billion/main/da/domain/DaMaterialCollection.java
@@ -0,0 +1,51 @@
+package com.billion.main.da.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.billion.common.annotation.Excel;
+import com.billion.main.common.BaseEntity;
+
+/**
+ * 鐗╂枡閲囬泦瀵硅薄 da_material_collection
+ * 
+ * @author Billion-Yi
+ * @date 2024-11-22
+ */
+@Data
+public class DaMaterialCollection extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 涓婚敭id */
+    private Long id;
+
+    /** 鎬绘垚搴忓垪鍙� */
+    @Excel(name = "鎬绘垚搴忓垪鍙�")
+    private String sfcCode;
+
+    /** 宸ヤ綅缂栫爜 */
+    @Excel(name = "宸ヤ綅缂栫爜")
+    private String locationCode;
+
+    /** 鍙傛暟缂栫爜 */
+    @Excel(name = "鍙傛暟缂栫爜")
+    private String paramCode;
+
+    /** 鍙傛暟鍚嶇О */
+    @Excel(name = "鍙傛暟鍚嶇О")
+    private String paramName;
+
+    /** 鍙傛暟鍊� */
+    @Excel(name = "鍙傛暟鍊�")
+    private String paramValue;
+
+    /** 閲囬泦鏃堕棿 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @Excel(name = "閲囬泦鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+    private Date collectTime;
+
+
+}
diff --git a/billion-main/src/main/java/com/billion/main/da/mapper/DaMaterialCollectionMapper.java b/billion-main/src/main/java/com/billion/main/da/mapper/DaMaterialCollectionMapper.java
new file mode 100644
index 0000000..8e81da5
--- /dev/null
+++ b/billion-main/src/main/java/com/billion/main/da/mapper/DaMaterialCollectionMapper.java
@@ -0,0 +1,63 @@
+package com.billion.main.da.mapper;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.billion.main.da.domain.DaMaterialCollection;
+
+/**
+ * 鐗╂枡閲囬泦Mapper鎺ュ彛
+ * 
+ * @author Billion-Yi
+ * @date 2024-11-22
+ */
+public interface DaMaterialCollectionMapper extends BaseMapper<DaMaterialCollection>
+{
+    /**
+     * 鏌ヨ鐗╂枡閲囬泦
+     * 
+     * @param id 鐗╂枡閲囬泦涓婚敭
+     * @return 鐗╂枡閲囬泦
+     */
+    public DaMaterialCollection selectDaMaterialCollectionById(Long id);
+
+    /**
+     * 鏌ヨ鐗╂枡閲囬泦鍒楄〃
+     * 
+     * @param daMaterialCollection 鐗╂枡閲囬泦
+     * @return 鐗╂枡閲囬泦闆嗗悎
+     */
+    public List<DaMaterialCollection> selectDaMaterialCollectionList(DaMaterialCollection daMaterialCollection);
+
+    /**
+     * 鏂板鐗╂枡閲囬泦
+     * 
+     * @param daMaterialCollection 鐗╂枡閲囬泦
+     * @return 缁撴灉
+     */
+    public int insertDaMaterialCollection(DaMaterialCollection daMaterialCollection);
+
+    /**
+     * 淇敼鐗╂枡閲囬泦
+     * 
+     * @param daMaterialCollection 鐗╂枡閲囬泦
+     * @return 缁撴灉
+     */
+    public int updateDaMaterialCollection(DaMaterialCollection daMaterialCollection);
+
+    /**
+     * 鍒犻櫎鐗╂枡閲囬泦
+     * 
+     * @param id 鐗╂枡閲囬泦涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteDaMaterialCollectionById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎鐗╂枡閲囬泦
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteDaMaterialCollectionByIds(Long[] ids);
+}
diff --git a/billion-main/src/main/java/com/billion/main/da/service/IDaMaterialCollectionService.java b/billion-main/src/main/java/com/billion/main/da/service/IDaMaterialCollectionService.java
new file mode 100644
index 0000000..47761d3
--- /dev/null
+++ b/billion-main/src/main/java/com/billion/main/da/service/IDaMaterialCollectionService.java
@@ -0,0 +1,63 @@
+package com.billion.main.da.service;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.billion.main.da.domain.DaMaterialCollection;
+
+/**
+ * 鐗╂枡閲囬泦Service鎺ュ彛
+ * 
+ * @author Billion-Yi
+ * @date 2024-11-22
+ */
+public interface IDaMaterialCollectionService extends IService<DaMaterialCollection>
+{
+    /**
+     * 鏌ヨ鐗╂枡閲囬泦
+     * 
+     * @param id 鐗╂枡閲囬泦涓婚敭
+     * @return 鐗╂枡閲囬泦
+     */
+    public DaMaterialCollection selectDaMaterialCollectionById(Long id);
+
+    /**
+     * 鏌ヨ鐗╂枡閲囬泦鍒楄〃
+     * 
+     * @param daMaterialCollection 鐗╂枡閲囬泦
+     * @return 鐗╂枡閲囬泦闆嗗悎
+     */
+    public List<DaMaterialCollection> selectDaMaterialCollectionList(DaMaterialCollection daMaterialCollection);
+
+    /**
+     * 鏂板鐗╂枡閲囬泦
+     * 
+     * @param daMaterialCollection 鐗╂枡閲囬泦
+     * @return 缁撴灉
+     */
+    public void insertDaMaterialCollection(DaMaterialCollection daMaterialCollection);
+
+    /**
+     * 淇敼鐗╂枡閲囬泦
+     * 
+     * @param daMaterialCollection 鐗╂枡閲囬泦
+     * @return 缁撴灉
+     */
+    public int updateDaMaterialCollection(DaMaterialCollection daMaterialCollection);
+
+    /**
+     * 鎵归噺鍒犻櫎鐗╂枡閲囬泦
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐗╂枡閲囬泦涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deleteDaMaterialCollectionByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎鐗╂枡閲囬泦淇℃伅
+     * 
+     * @param id 鐗╂枡閲囬泦涓婚敭
+     * @return 缁撴灉
+     */
+    public int deleteDaMaterialCollectionById(Long id);
+}
diff --git a/billion-main/src/main/java/com/billion/main/da/service/impl/DaMaterialCollectionServiceImpl.java b/billion-main/src/main/java/com/billion/main/da/service/impl/DaMaterialCollectionServiceImpl.java
new file mode 100644
index 0000000..8a06eab
--- /dev/null
+++ b/billion-main/src/main/java/com/billion/main/da/service/impl/DaMaterialCollectionServiceImpl.java
@@ -0,0 +1,95 @@
+package com.billion.main.da.service.impl;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.billion.main.da.mapper.DaMaterialCollectionMapper;
+import com.billion.main.da.domain.DaMaterialCollection;
+import com.billion.main.da.service.IDaMaterialCollectionService;
+
+/**
+ * 鐗╂枡閲囬泦Service涓氬姟灞傚鐞�
+ * 
+ * @author Billion-Yi
+ * @date 2024-11-22
+ */
+@Service
+public class DaMaterialCollectionServiceImpl extends ServiceImpl<DaMaterialCollectionMapper, DaMaterialCollection> implements IDaMaterialCollectionService
+{
+    @Autowired
+    private DaMaterialCollectionMapper daMaterialCollectionMapper;
+
+    /**
+     * 鏌ヨ鐗╂枡閲囬泦
+     * 
+     * @param id 鐗╂枡閲囬泦涓婚敭
+     * @return 鐗╂枡閲囬泦
+     */
+    @Override
+    public DaMaterialCollection selectDaMaterialCollectionById(Long id)
+    {
+        return daMaterialCollectionMapper.selectDaMaterialCollectionById(id);
+    }
+
+    /**
+     * 鏌ヨ鐗╂枡閲囬泦鍒楄〃
+     * 
+     * @param daMaterialCollection 鐗╂枡閲囬泦
+     * @return 鐗╂枡閲囬泦
+     */
+    @Override
+    public List<DaMaterialCollection> selectDaMaterialCollectionList(DaMaterialCollection daMaterialCollection)
+    {
+        return daMaterialCollectionMapper.selectDaMaterialCollectionList(daMaterialCollection);
+    }
+
+    /**
+     * 鏂板鐗╂枡閲囬泦
+     * 
+     * @param daMaterialCollection 鐗╂枡閲囬泦
+     * @return 缁撴灉
+     */
+    @Override
+    public void insertDaMaterialCollection(DaMaterialCollection daMaterialCollection)
+    {
+        this.save(daMaterialCollection);
+    }
+
+    /**
+     * 淇敼鐗╂枡閲囬泦
+     * 
+     * @param daMaterialCollection 鐗╂枡閲囬泦
+     * @return 缁撴灉
+     */
+    @Override
+    public int updateDaMaterialCollection(DaMaterialCollection daMaterialCollection)
+    {
+        return daMaterialCollectionMapper.updateDaMaterialCollection(daMaterialCollection);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎鐗╂枡閲囬泦
+     * 
+     * @param ids 闇�瑕佸垹闄ょ殑鐗╂枡閲囬泦涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteDaMaterialCollectionByIds(Long[] ids)
+    {
+        return daMaterialCollectionMapper.deleteDaMaterialCollectionByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎鐗╂枡閲囬泦淇℃伅
+     * 
+     * @param id 鐗╂枡閲囬泦涓婚敭
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteDaMaterialCollectionById(Long id)
+    {
+        return daMaterialCollectionMapper.deleteDaMaterialCollectionById(id);
+    }
+}
diff --git a/billion-main/src/main/resources/mapper/da/DaMaterialCollectionMapper.xml b/billion-main/src/main/resources/mapper/da/DaMaterialCollectionMapper.xml
new file mode 100644
index 0000000..f07fe5c
--- /dev/null
+++ b/billion-main/src/main/resources/mapper/da/DaMaterialCollectionMapper.xml
@@ -0,0 +1,79 @@
+<?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.billion.main.da.mapper.DaMaterialCollectionMapper">
+    
+    <resultMap type="DaMaterialCollection" id="DaMaterialCollectionResult">
+        <result property="id"    column="id"    />
+        <result property="sfcCode"    column="sfc_code"    />
+        <result property="locationCode"    column="location_code"    />
+        <result property="paramCode"    column="param_code"    />
+        <result property="paramName"    column="param_name"    />
+        <result property="paramValue"    column="param_value"    />
+        <result property="collectTime"    column="collect_time"    />
+    </resultMap>
+
+    <sql id="selectDaMaterialCollectionVo">
+        select id, sfc_code, location_code, param_code, param_name, param_value, collect_time from da_material_collection
+    </sql>
+
+    <select id="selectDaMaterialCollectionList" parameterType="DaMaterialCollection" resultMap="DaMaterialCollectionResult">
+        <include refid="selectDaMaterialCollectionVo"/>
+        <where>  
+            <if test="sfcCode != null  and sfcCode != ''"> and sfc_code = #{sfcCode}</if>
+            <if test="locationCode != null  and locationCode != ''"> and location_code like concat('%', #{locationCode}, '%')</if>
+            <if test="paramCode != null  and paramCode != ''"> and param_code like concat('%', #{paramCode}, '%')</if>
+            <if test="paramName != null  and paramName != ''"> and param_name like concat('%', #{paramName}, '%')</if>
+        </where>
+    </select>
+    
+    <select id="selectDaMaterialCollectionById" parameterType="Long" resultMap="DaMaterialCollectionResult">
+        <include refid="selectDaMaterialCollectionVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertDaMaterialCollection" parameterType="DaMaterialCollection" useGeneratedKeys="true" keyProperty="id">
+        insert into da_material_collection
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="sfcCode != null">sfc_code,</if>
+            <if test="locationCode != null">location_code,</if>
+            <if test="paramCode != null">param_code,</if>
+            <if test="paramName != null">param_name,</if>
+            <if test="paramValue != null">param_value,</if>
+            <if test="collectTime != null">collect_time,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="sfcCode != null">#{sfcCode},</if>
+            <if test="locationCode != null">#{locationCode},</if>
+            <if test="paramCode != null">#{paramCode},</if>
+            <if test="paramName != null">#{paramName},</if>
+            <if test="paramValue != null">#{paramValue},</if>
+            <if test="collectTime != null">#{collectTime},</if>
+         </trim>
+    </insert>
+
+    <update id="updateDaMaterialCollection" parameterType="DaMaterialCollection">
+        update da_material_collection
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="sfcCode != null">sfc_code = #{sfcCode},</if>
+            <if test="locationCode != null">location_code = #{locationCode},</if>
+            <if test="paramCode != null">param_code = #{paramCode},</if>
+            <if test="paramName != null">param_name = #{paramName},</if>
+            <if test="paramValue != null">param_value = #{paramValue},</if>
+            <if test="collectTime != null">collect_time = #{collectTime},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteDaMaterialCollectionById" parameterType="Long">
+        delete from da_material_collection where id = #{id}
+    </delete>
+
+    <delete id="deleteDaMaterialCollectionByIds" parameterType="String">
+        delete from da_material_collection where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>
\ No newline at end of file
diff --git a/billion-ui/src/api/main/da/materialCollection.js b/billion-ui/src/api/main/da/materialCollection.js
new file mode 100644
index 0000000..6b3a3fc
--- /dev/null
+++ b/billion-ui/src/api/main/da/materialCollection.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ鐗╂枡閲囬泦鍒楄〃
+export function listMaterialCollection(query) {
+  return request({
+    url: '/da/materialCollection/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 鏌ヨ鐗╂枡閲囬泦璇︾粏
+export function getMaterialCollection(id) {
+  return request({
+    url: '/da/materialCollection/' + id,
+    method: 'get'
+  })
+}
+
+// 鏂板鐗╂枡閲囬泦
+export function addMaterialCollection(data) {
+  return request({
+    url: '/da/materialCollection',
+    method: 'post',
+    data: data
+  })
+}
+
+// 淇敼鐗╂枡閲囬泦
+export function updateMaterialCollection(data) {
+  return request({
+    url: '/da/materialCollection',
+    method: 'put',
+    data: data
+  })
+}
+
+// 鍒犻櫎鐗╂枡閲囬泦
+export function delMaterialCollection(id) {
+  return request({
+    url: '/da/materialCollection/' + id,
+    method: 'delete'
+  })
+}
diff --git a/billion-ui/src/views/main/da/materialCollection/index.vue b/billion-ui/src/views/main/da/materialCollection/index.vue
new file mode 100644
index 0000000..697fd61
--- /dev/null
+++ b/billion-ui/src/views/main/da/materialCollection/index.vue
@@ -0,0 +1,276 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label-width="100" label="鎬绘垚搴忓垪鍙�" prop="sfcCode">
+        <el-input
+          v-model="queryParams.sfcCode"
+          placeholder="璇疯緭鍏ユ�绘垚搴忓垪鍙�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="宸ヤ綅缂栫爜" prop="locationCode">
+        <el-input
+          v-model="queryParams.locationCode"
+          placeholder="璇疯緭鍏ュ伐浣嶇紪鐮�"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="鍙傛暟缂栫爜" prop="paramCode">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.paramCode"-->
+<!--          placeholder="璇疯緭鍏ュ弬鏁扮紪鐮�"-->
+<!--          clearable-->
+<!--          @keyup.enter.native="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="鍙傛暟鍚嶇О" prop="paramName">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.paramName"-->
+<!--          placeholder="璇疯緭鍏ュ弬鏁板悕绉�"-->
+<!--          clearable-->
+<!--          @keyup.enter.native="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item style="float: right">
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['da:materialCollection:add']"
+        >鏂板</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          plain
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['da:materialCollection:edit']"
+        >淇敼</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['da:materialCollection:remove']"
+        >鍒犻櫎</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['da:materialCollection:export']"
+        >瀵煎嚭</el-button>
+      </el-col>
+    </el-row>
+
+    <el-table border v-loading="loading" :data="materialCollectionList" @selection-change="handleSelectionChange">
+      <el-table-column show-overflow-tooltip="true" type="selection" width="55" align="center" />
+      <el-table-column label="涓婚敭id" align="center" prop="id" />
+      <el-table-column label="鎬绘垚搴忓垪鍙�" align="center" prop="sfcCode" />
+      <el-table-column label="宸ヤ綅缂栫爜" align="center" prop="locationCode" />
+      <el-table-column label="鍙傛暟缂栫爜" align="center" prop="paramCode" />
+      <el-table-column label="鍙傛暟鍚嶇О" align="center" prop="paramName" />
+      <el-table-column label="鍙傛暟鍊�" align="center" prop="paramValue" />
+      <el-table-column label="閲囬泦鏃堕棿" align="center" prop="collectTime" width="180">
+      </el-table-column>
+    </el-table>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 娣诲姞鎴栦慨鏀圭墿鏂欓噰闆嗗璇濇 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="鎬绘垚搴忓垪鍙�" prop="sfcCode">
+          <el-input v-model="form.sfcCode" placeholder="璇疯緭鍏ユ�绘垚搴忓垪鍙�" />
+        </el-form-item>
+        <el-form-item label="宸ヤ綅缂栫爜" prop="locationCode">
+          <el-input v-model="form.locationCode" placeholder="璇疯緭鍏ュ伐浣嶇紪鐮�" />
+        </el-form-item>
+        <el-form-item label="鍙傛暟缂栫爜" prop="paramCode">
+          <el-input v-model="form.paramCode" placeholder="璇疯緭鍏ュ弬鏁扮紪鐮�" />
+        </el-form-item>
+        <el-form-item label="鍙傛暟鍚嶇О" prop="paramName">
+          <el-input v-model="form.paramName" placeholder="璇疯緭鍏ュ弬鏁板悕绉�" />
+        </el-form-item>
+        <el-form-item label="鍙傛暟鍊�" prop="paramValue">
+          <el-input v-model="form.paramValue" placeholder="璇疯緭鍏ュ弬鏁板��" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+        <el-button @click="cancel">鍙� 娑�</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listMaterialCollection, getMaterialCollection, delMaterialCollection, addMaterialCollection, updateMaterialCollection } from "@/api/main/da/materialCollection";
+
+export default {
+  name: "MaterialCollection",
+  data() {
+    return {
+      // 閬僵灞�
+      loading: true,
+      // 閫変腑鏁扮粍
+      ids: [],
+      // 闈炲崟涓鐢�
+      single: true,
+      // 闈炲涓鐢�
+      multiple: true,
+      // 鏄剧ず鎼滅储鏉′欢
+      showSearch: true,
+      // 鎬绘潯鏁�
+      total: 0,
+      // 鐗╂枡閲囬泦琛ㄦ牸鏁版嵁
+      materialCollectionList: [],
+      // 寮瑰嚭灞傛爣棰�
+      title: "",
+      // 鏄惁鏄剧ず寮瑰嚭灞�
+      open: false,
+      // 鏌ヨ鍙傛暟
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        sfcCode: null,
+        locationCode: null,
+        paramCode: null,
+        paramName: null,
+      },
+      // 琛ㄥ崟鍙傛暟
+      form: {},
+      // 琛ㄥ崟鏍¢獙
+      rules: {
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 鏌ヨ鐗╂枡閲囬泦鍒楄〃 */
+    getList() {
+      this.loading = true;
+      listMaterialCollection(this.queryParams).then(response => {
+        this.materialCollectionList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 鍙栨秷鎸夐挳
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 琛ㄥ崟閲嶇疆
+    reset() {
+      this.form = {
+        id: null,
+        sfcCode: null,
+        locationCode: null,
+        paramCode: null,
+        paramName: null,
+        paramValue: null,
+        collectTime: null
+      };
+      this.resetForm("form");
+    },
+    /** 鎼滅储鎸夐挳鎿嶄綔 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 閲嶇疆鎸夐挳鎿嶄綔 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 鏂板鎸夐挳鎿嶄綔 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "娣诲姞鐗╂枡閲囬泦";
+    },
+    /** 淇敼鎸夐挳鎿嶄綔 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getMaterialCollection(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "淇敼鐗╂枡閲囬泦";
+      });
+    },
+    /** 鎻愪氦鎸夐挳 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateMaterialCollection(this.form).then(response => {
+              this.$modal.msgSuccess("淇敼鎴愬姛");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addMaterialCollection(this.form).then(response => {
+              this.$modal.msgSuccess("鏂板鎴愬姛");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('鏄惁纭鍒犻櫎鐗╂枡閲囬泦缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() {
+        return delMaterialCollection(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      }).catch(() => {});
+    },
+    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+    handleExport() {
+      this.download('da/materialCollection/export', {
+        ...this.queryParams
+      }, `materialCollection_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>
diff --git a/billion-ui/src/views/main/sc/collectionParamConf/index.vue b/billion-ui/src/views/main/sc/collectionParamConf/index.vue
index e7b8724..3907210 100644
--- a/billion-ui/src/views/main/sc/collectionParamConf/index.vue
+++ b/billion-ui/src/views/main/sc/collectionParamConf/index.vue
@@ -117,7 +117,7 @@
 
     <el-table v-loading="loading" border :data="collectionParamConfList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="浜у搧缂栫爜" align="center" prop="productCode" />
+      <el-table-column show-overflow-tooltip="true" label="浜у搧缂栫爜" align="center" prop="productCode" />
       <el-table-column label="浜у搧鍨嬪彿" align="center" prop="productType" />
       <el-table-column label="宸ヤ綅缂栫爜" align="center" prop="locationCode" />
       <el-table-column label="鍙傛暟缂栫爜" align="center" prop="paramCode" />

--
Gitblit v1.9.3