From 0f994c67ff258fb93aa85ae90200e3db2b5f97f4 Mon Sep 17 00:00:00 2001
From: hongjli <3117313295@qq.com>
Date: 星期三, 21 五月 2025 16:00:34 +0800
Subject: [PATCH] 新增定时任务,获取标准焊缝数据接口数据

---
 aps-modules/aps-job/src/main/resources/mapper/job/ApsWeldSeamStandardJobMapper.xml                |   64 +++++++
 aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWeldSeamStandardJobMapper.java            |   39 ++++
 aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWeldSeamStandardMapper.java               |   31 +++
 aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java                                    |   10 +
 aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWeldSeamStandardJobServiceImpl.java |  215 +++++++++++++++++++++++
 aps-modules/aps-job/src/main/resources/mapper/job/ApsWeldSeamStandardMapper.xml                   |   35 +++
 aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsWeldSeamStandardJob.java                  |   56 ++++++
 aps-modules/aps-job/src/main/java/com/aps/job/service/IApsWeldSeamStandardJobService.java         |   44 ++++
 8 files changed, 494 insertions(+), 0 deletions(-)

diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsWeldSeamStandardJob.java b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsWeldSeamStandardJob.java
new file mode 100644
index 0000000..f0c0a45
--- /dev/null
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsWeldSeamStandardJob.java
@@ -0,0 +1,56 @@
+package com.aps.job.domain;
+
+import com.aps.common.core.annotation.Excel;
+import com.aps.common.core.web.domain.BaseEntity;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+
+/**
+ * 鐒婄紳鏍囧噯瀵硅薄 aps_weld_seam_standard_job
+ * 
+ * @author user
+ * @date 2023-11-05
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class ApsWeldSeamStandardJob extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 涓婚敭ID */
+    private Long id;
+
+    /** 鏂欏彿锛堟帴鍙d腑瀵瑰簲plantCount鎴杤erId锛� */
+    @Excel(name = "鏂欏彿")
+    private String itemCode;
+
+    /** 鍥惧彿 */
+    @Excel(name = "鍥惧彿")
+    private String itemFigure;
+
+    /** 鐗堟湰鍙� */
+    @Excel(name = "鐗堟湰鍙�")
+    private String itemFigureVersion;
+
+    /** 鍗曚欢鐒婄紳鏁帮紙Hup锛� */
+    @Excel(name = "鍗曚欢鐒婄紳鏁帮紙Hup锛�")
+    private BigDecimal hupQty;
+
+    /** 鍗曚欢鐒婄紳鏁帮紙LOD锛� */
+    @Excel(name = "鍗曚欢鐒婄紳鏁帮紙LOD锛�")
+    private BigDecimal lodQty;
+
+    /** 鐒婃帴褰㈠紡(hup\lod) */
+    @Excel(name = "鐒婃帴褰㈠紡")
+    private String type;
+
+    /** 鏄惁鍒犻櫎(0鍚︼紝1鏄�) */
+    private Integer delFlag;
+} 
\ No newline at end of file
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWeldSeamStandardJobMapper.java b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWeldSeamStandardJobMapper.java
new file mode 100644
index 0000000..02e4612
--- /dev/null
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWeldSeamStandardJobMapper.java
@@ -0,0 +1,39 @@
+package com.aps.job.mapper;
+
+import com.aps.job.domain.ApsWeldSeamStandardJob;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 鐒婄紳鏍囧噯Job Mapper鎺ュ彛
+ * 
+ * @author user
+ * @date 2023-11-05
+ */
+@Mapper
+public interface ApsWeldSeamStandardJobMapper 
+{
+    /**
+     * 鏌ヨ鐒婄紳鏍囧噯鍒楄〃
+     * 
+     * @param apsWeldSeamStandardJob 鐒婄紳鏍囧噯
+     * @return 鐒婄紳鏍囧噯闆嗗悎
+     */
+    public List<ApsWeldSeamStandardJob> selectApsWeldSeamStandardJobList(ApsWeldSeamStandardJob apsWeldSeamStandardJob);
+
+    /**
+     * 鍒犻櫎鎵�鏈夌剨缂濇爣鍑咼ob鏁版嵁
+     * 
+     * @return 缁撴灉
+     */
+    public int deleteAllApsWeldSeamStandardJob();
+    
+    /**
+     * 鎵归噺鏂板鐒婄紳鏍囧噯Job
+     * 
+     * @param list 鐒婄紳鏍囧噯Job鍒楄〃
+     * @return 缁撴灉
+     */
+    public int batchInsertApsWeldSeamStandardJob(List<ApsWeldSeamStandardJob> list);
+} 
\ No newline at end of file
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWeldSeamStandardMapper.java b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWeldSeamStandardMapper.java
new file mode 100644
index 0000000..a4181f5
--- /dev/null
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWeldSeamStandardMapper.java
@@ -0,0 +1,31 @@
+package com.aps.job.mapper;
+
+import com.aps.job.domain.ApsWeldSeamStandardJob;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 鐒婄紳鏍囧噯涓氬姟琛� Mapper鎺ュ彛
+ * 
+ * @author user
+ * @date 2023-11-05
+ */
+@Mapper
+public interface ApsWeldSeamStandardMapper
+{
+    /**
+     * 鍒犻櫎鎵�鏈夌剨缂濇爣鍑嗘暟鎹�
+     * 
+     * @return 缁撴灉
+     */
+    public int deleteAllApsWeldSeamStandard();
+    
+    /**
+     * 鎵归噺鏂板鐒婄紳鏍囧噯
+     * 
+     * @param list 鐒婄紳鏍囧噯Job鍒楄〃
+     * @return 缁撴灉
+     */
+    public int batchInsertApsWeldSeamStandard(List<ApsWeldSeamStandardJob> list);
+} 
\ No newline at end of file
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsWeldSeamStandardJobService.java b/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsWeldSeamStandardJobService.java
new file mode 100644
index 0000000..2376959
--- /dev/null
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsWeldSeamStandardJobService.java
@@ -0,0 +1,44 @@
+package com.aps.job.service;
+
+import com.aps.job.domain.ApsWeldSeamStandardJob;
+
+import java.util.List;
+
+/**
+ * 鐒婄紳鏍囧噯Job Service鎺ュ彛
+ * 
+ * @author user
+ * @date 2023-11-05
+ */
+public interface IApsWeldSeamStandardJobService 
+{
+    /**
+     * 鏌ヨ鐒婄紳鏍囧噯鍒楄〃
+     * 
+     * @param apsWeldSeamStandardJob 鐒婄紳鏍囧噯
+     * @return 鐒婄紳鏍囧噯闆嗗悎
+     */
+    public List<ApsWeldSeamStandardJob> selectApsWeldSeamStandardJobList(ApsWeldSeamStandardJob apsWeldSeamStandardJob);
+
+    /**
+     * 鍒犻櫎鎵�鏈夌剨缂濇爣鍑咼ob鏁版嵁
+     * 
+     * @return 缁撴灉
+     */
+    public int deleteAllApsWeldSeamStandardJob();
+    
+    /**
+     * 鎵归噺鏂板鐒婄紳鏍囧噯Job
+     * 
+     * @param list 鐒婄紳鏍囧噯Job鍒楄〃
+     * @return 缁撴灉
+     */
+    public int batchInsertApsWeldSeamStandardJob(List<ApsWeldSeamStandardJob> list);
+    
+    /**
+     * 鍚屾鐗╂枡鏍囧噯鐒婄紳鏁版嵁
+     * 
+     * @return 缁撴灉
+     */
+    public boolean syncWeldSeamStandardData();
+} 
\ No newline at end of file
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWeldSeamStandardJobServiceImpl.java b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWeldSeamStandardJobServiceImpl.java
new file mode 100644
index 0000000..3e6c84b
--- /dev/null
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWeldSeamStandardJobServiceImpl.java
@@ -0,0 +1,215 @@
+package com.aps.job.service.impl;
+
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.JSONObject;
+import com.aps.common.core.utils.StringUtils;
+import com.aps.common.security.utils.SecurityUtils;
+import com.aps.job.domain.ApsWeldSeamStandardJob;
+import com.aps.job.mapper.ApsWeldSeamStandardMapper;
+import com.aps.job.mapper.ApsWeldSeamStandardJobMapper;
+import com.aps.job.service.IApsWeldSeamStandardJobService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.MediaType;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.client.RestTemplate;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.atomic.AtomicLong;
+
+/**
+ * 鐒婄紳鏍囧噯Job Service涓氬姟灞傚鐞�
+ * 
+ * @author user
+ * @date 2023-11-05
+ */
+@Slf4j
+@Service
+public class ApsWeldSeamStandardJobServiceImpl implements IApsWeldSeamStandardJobService 
+{
+    @Autowired
+    private ApsWeldSeamStandardJobMapper apsWeldSeamStandardJobMapper;
+    
+    @Autowired
+    private ApsWeldSeamStandardMapper apsWeldSeamStandardMapper;
+    
+    @Autowired
+    private RestTemplate restTemplate;
+    
+    @Value("${pipingIntegrationplatform.apsWeldSeamStandard}")
+    private String apsWeldSeamStandardUrl;
+
+    /**
+     * 鏌ヨ鐒婄紳鏍囧噯鍒楄〃
+     * 
+     * @param apsWeldSeamStandardJob 鐒婄紳鏍囧噯
+     * @return 鐒婄紳鏍囧噯闆嗗悎
+     */
+    @Override
+    public List<ApsWeldSeamStandardJob> selectApsWeldSeamStandardJobList(ApsWeldSeamStandardJob apsWeldSeamStandardJob)
+    {
+        return apsWeldSeamStandardJobMapper.selectApsWeldSeamStandardJobList(apsWeldSeamStandardJob);
+    }
+
+    /**
+     * 鍒犻櫎鎵�鏈夌剨缂濇爣鍑咼ob鏁版嵁
+     * 
+     * @return 缁撴灉
+     */
+    @Override
+    public int deleteAllApsWeldSeamStandardJob()
+    {
+        return apsWeldSeamStandardJobMapper.deleteAllApsWeldSeamStandardJob();
+    }
+    
+    /**
+     * 鎵归噺鏂板鐒婄紳鏍囧噯Job
+     * 
+     * @param list 鐒婄紳鏍囧噯Job鍒楄〃
+     * @return 缁撴灉
+     */
+    @Override
+    public int batchInsertApsWeldSeamStandardJob(List<ApsWeldSeamStandardJob> list)
+    {
+        return apsWeldSeamStandardJobMapper.batchInsertApsWeldSeamStandardJob(list);
+    }
+    
+    /**
+     * 鍚屾鐗╂枡鏍囧噯鐒婄紳鏁版嵁
+     * 
+     * @return 缁撴灉
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public boolean syncWeldSeamStandardData()
+    {
+        try {
+            // 浣跨敤POST鏂规硶璋冪敤鎺ュ彛
+            HttpHeaders headers = new HttpHeaders();
+            headers.setContentType(MediaType.APPLICATION_JSON);
+            
+            // 鍑嗗璇锋眰鍙傛暟 - 浼犻�掑伐鍘備唬鐮佸瓧绗︿覆鏁扮粍锛岃缃负绌烘暟缁�
+            String[] plantCodeArray = new String[0];
+            
+            // 鐩存帴浣跨敤瀛楃涓叉暟缁勪綔涓鸿姹備綋
+            HttpEntity<String[]> requestEntity = new HttpEntity<>(plantCodeArray, headers);
+            
+            ResponseEntity<String> responseEntity = restTemplate.postForEntity(apsWeldSeamStandardUrl, requestEntity, String.class);
+            if (!responseEntity.getStatusCode().is2xxSuccessful()) {
+                log.error("鑾峰彇鐗╂枡鏍囧噯鐒婄紳鏁版嵁澶辫触");
+                return false;
+            }
+            
+            String responseBody = responseEntity.getBody();
+            if (StringUtils.isEmpty(responseBody)) {
+                return false;
+            }
+            
+            JSONObject responseJson = JSON.parseObject(responseBody);
+            
+            // 妫�鏌ヨ繑鍥炵爜
+            if (responseJson.getIntValue("code") != 0) {
+                return false;
+            }
+            
+            // 鑾峰彇鎺ュ彛杩斿洖鐨勬暟鎹�
+            JSONArray weldSeamList = responseJson.getJSONArray("ok");
+            if (weldSeamList == null || weldSeamList.isEmpty()) {
+                return false;
+            }
+            
+            // 瑙f瀽鏁版嵁骞惰浆鎹负瀹炰綋瀵硅薄
+            List<ApsWeldSeamStandardJob> jobList = new ArrayList<>();
+            AtomicLong idCounter = new AtomicLong(System.currentTimeMillis()); // 浣跨敤褰撳墠鏃堕棿鎴充綔涓鸿捣濮婭D
+            
+            for (int i = 0; i < weldSeamList.size(); i++) {
+                JSONObject item = weldSeamList.getJSONObject(i);
+                
+                // 浣跨敤姝g‘鐨勫瓧娈靛悕绉� plantCode
+                String plantCode = item.getString("plantCode");
+                
+                // 鑾峰彇UHP鍜孡OD鏁伴噺
+                BigDecimal uhpCount = null;
+                BigDecimal lodCount = null;
+                
+                try {
+                    uhpCount = item.getBigDecimal("uhpCount");
+                } catch (Exception e) {
+                    // 蹇界暐寮傚父
+                }
+                
+                try {
+                    lodCount = item.getBigDecimal("lodCount");
+                } catch (Exception e) {
+                    // 蹇界暐寮傚父
+                }
+                
+                // 鍒ゆ柇鏁版嵁鏄惁瀹屾暣
+                if (StringUtils.isEmpty(plantCode)) {
+                    continue;
+                }
+                
+                ApsWeldSeamStandardJob job = new ApsWeldSeamStandardJob();
+                // 涓篿d璧嬪�硷紝浣跨敤鑷闀挎暣鍨�
+                job.setId(idCounter.incrementAndGet());
+                job.setItemCode(plantCode);  // 鏄犲皠鍏崇郴: plantCode -> itemCode
+                job.setHupQty(uhpCount);     // 鏄犲皠鍏崇郴: uhpCount -> hupQty
+                job.setLodQty(lodCount);     // 鏄犲皠鍏崇郴: lodCount -> lodQty
+                job.setDelFlag(0);
+                // 涓嶅啀璁剧疆createBy鍜宑reateTime
+                jobList.add(job);
+            }
+            
+            if (jobList.isEmpty()) {
+                return false;
+            }
+            
+            // 娓呯┖鏃ф暟鎹�
+            deleteAllApsWeldSeamStandardJob();
+            
+            // 鎵归噺鎻掑叆鏂版暟鎹�
+            batchInsertApsWeldSeamStandardJob(jobList);
+            
+            // 鍚屾鏁版嵁鍒颁笟鍔¤〃
+            syncToBizTable(jobList);
+            
+            return true;
+        } catch (Exception e) {
+            log.error("鍚屾鐗╂枡鏍囧噯鐒婄紳鏁版嵁寮傚父", e);
+            throw e;
+        }
+    }
+    
+    /**
+     * 鍚屾鏁版嵁鍒颁笟鍔¤〃
+     * 
+     * @param jobList 鐒婄紳鏍囧噯Job鏁版嵁鍒楄〃
+     */
+    private void syncToBizTable(List<ApsWeldSeamStandardJob> jobList) {
+        try {
+            // 鍒犻櫎涓氬姟琛ㄦ暟鎹紙鍏ㄩ噺瑕嗙洊锛�
+            apsWeldSeamStandardMapper.deleteAllApsWeldSeamStandard();
+            
+            if (jobList == null || jobList.isEmpty()) {
+                return;
+            }
+            
+            // 鎵归噺鎻掑叆鏁版嵁鍒颁笟鍔¤〃
+            apsWeldSeamStandardMapper.batchInsertApsWeldSeamStandard(jobList);
+        } catch (Exception e) {
+            log.error("鍚屾鐗╂枡鏍囧噯鐒婄紳鏁版嵁鍒颁笟鍔¤〃寮傚父", e);
+            throw e;
+        }
+    }
+} 
\ No newline at end of file
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java b/aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java
index 5a7a1f2..432b58e 100644
--- a/aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java
@@ -43,6 +43,9 @@
 
     @Autowired
     private IApsMaterialManagementJobService apsMaterialManagementJobService;
+    
+    @Autowired
+    private IApsWeldSeamStandardJobService apsWeldSeamStandardJobService;
 
     public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i)
     {
@@ -202,5 +205,12 @@
     public void setPlateSubPlansToRedis(){
         remoteCoreService.setPlateSubPlansToRedis(SecurityConstants.INNER);
     }
+    
+    /**
+     * 鍚屾鐗╂枡鏍囧噯鐒婄紳鏁版嵁
+     */
+    public void syncWeldSeamStandardData() {
+        apsWeldSeamStandardJobService.syncWeldSeamStandardData();
+    }
 
 }
diff --git a/aps-modules/aps-job/src/main/resources/mapper/job/ApsWeldSeamStandardJobMapper.xml b/aps-modules/aps-job/src/main/resources/mapper/job/ApsWeldSeamStandardJobMapper.xml
new file mode 100644
index 0000000..d2d2a3e
--- /dev/null
+++ b/aps-modules/aps-job/src/main/resources/mapper/job/ApsWeldSeamStandardJobMapper.xml
@@ -0,0 +1,64 @@
+<?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.aps.job.mapper.ApsWeldSeamStandardJobMapper">
+    
+    <resultMap type="com.aps.job.domain.ApsWeldSeamStandardJob" id="ApsWeldSeamStandardJobResult">
+        <result property="id"    column="id"    />
+        <result property="itemCode"    column="item_code"    />
+        <result property="itemFigure"    column="item_figure"    />
+        <result property="itemFigureVersion"    column="item_figure_version"    />
+        <result property="hupQty"    column="hup_qty"    />
+        <result property="lodQty"    column="lod_qty"    />
+        <result property="type"    column="type"    />
+        <result property="delFlag"    column="del_flag"    />
+    </resultMap>
+
+    <sql id="selectApsWeldSeamStandardJobVo">
+        select id, item_code, item_figure, item_figure_version, hup_qty, lod_qty, type, del_flag from aps_weld_seam_standard_job
+    </sql>
+
+    <select id="selectApsWeldSeamStandardJobList" parameterType="com.aps.job.domain.ApsWeldSeamStandardJob" resultMap="ApsWeldSeamStandardJobResult">
+        <include refid="selectApsWeldSeamStandardJobVo"/>
+        <where>  
+            <if test="itemCode != null  and itemCode != ''"> and item_code LIKE '%' || #{itemCode} || '%'</if>
+            <if test="itemFigure != null  and itemFigure != ''"> and item_figure = #{itemFigure}</if>
+            <if test="itemFigureVersion != null  and itemFigureVersion != ''"> and item_figure_version = #{itemFigureVersion}</if>
+            <if test="hupQty != null "> and hup_qty = #{hupQty}</if>
+            <if test="lodQty != null "> and lod_qty = #{lodQty}</if>
+            <if test="type != null  and type != ''"> and type = #{type}</if>
+            and del_flag = 0
+        </where>
+    </select>
+    
+    <delete id="deleteAllApsWeldSeamStandardJob">
+        delete from aps_weld_seam_standard_job
+    </delete>
+    
+    <insert id="batchInsertApsWeldSeamStandardJob" parameterType="java.util.List">
+        insert into aps_weld_seam_standard_job(
+        id,
+        item_code, 
+        item_figure,
+        item_figure_version, 
+        hup_qty, 
+        lod_qty, 
+        type, 
+        del_flag)
+        values
+        <foreach collection="list" item="item" index="index" separator=",">
+        (
+            #{item.id},
+            #{item.itemCode},
+            #{item.itemFigure},
+            #{item.itemFigureVersion},
+            #{item.hupQty},
+            #{item.lodQty},
+            #{item.type},
+            0
+        )
+        </foreach>
+    </insert>
+    
+</mapper> 
\ No newline at end of file
diff --git a/aps-modules/aps-job/src/main/resources/mapper/job/ApsWeldSeamStandardMapper.xml b/aps-modules/aps-job/src/main/resources/mapper/job/ApsWeldSeamStandardMapper.xml
new file mode 100644
index 0000000..7c0ab25
--- /dev/null
+++ b/aps-modules/aps-job/src/main/resources/mapper/job/ApsWeldSeamStandardMapper.xml
@@ -0,0 +1,35 @@
+<?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.aps.job.mapper.ApsWeldSeamStandardMapper">
+    
+    <delete id="deleteAllApsWeldSeamStandard">
+        delete from aps_weld_seam_standard
+    </delete>
+    
+    <insert id="batchInsertApsWeldSeamStandard" parameterType="java.util.List">
+        insert into aps_weld_seam_standard(
+        id,
+        item_code, 
+        item_figure, 
+        item_figure_version, 
+        hup_qty, 
+        lod_qty, 
+        type, 
+        del_flag)
+        values
+        <foreach collection="list" item="item" index="index" separator=",">
+        (
+            #{item.id},
+            #{item.itemCode},
+            #{item.itemFigure},
+            #{item.itemFigureVersion},
+            #{item.hupQty},
+            #{item.lodQty},
+            #{item.type},
+            0
+        )
+        </foreach>
+    </insert>
+</mapper> 
\ No newline at end of file

--
Gitblit v1.9.3