Forráskód Böngészése

Merge branch 'master' of http://git.dongkesoft.com:9001/iBOSS-2.0-Mini/iboss-server-mdm

于继渤 2 éve
szülő
commit
424d46a565

+ 24 - 0
src/main/java/com/dk/mdm/controller/t_mst/MoneyAccountItemController.java

@@ -0,0 +1,24 @@
+package com.dk.mdm.controller.t_mst;
+
+import com.dk.mdm.model.pojo.t_mst.MoneyAccountItem;
+import com.dk.common.controller.BaseController;
+import com.dk.common.service.BaseService;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RestController;
+import io.swagger.annotations.Api;
+import com.dk.mdm.service.t_mst.MoneyAccountItemService;
+
+@Api(tags = "资金流水明细API接口")
+@RestController
+@RequestMapping("/moneyAccountItem")
+public class MoneyAccountItemController{
+
+    public BaseService<MoneyAccountItem> getService() {
+        return moneyAccountItemService;
+    }
+
+    @Autowired
+    private MoneyAccountItemService moneyAccountItemService;
+
+}

+ 3 - 0
src/main/java/com/dk/mdm/mapper/ivt/OutboundItemMapper.xml

@@ -185,6 +185,9 @@
                tpoi.cost_amt,
                tpoi.flg_valid,
                tpoi.cp_id,
+               tpi.wh_id                                     as  "whId",
+                tpi.inv_qty                                     as  "invQty",
+                tpi.usable_qty                                  as  "usableQty",
                tmw.wh_name                                      as "whName",
                sys.f_get_name_i18n(tdk.kind_name_i18n, #{i18n}) as "outStatusName"
         FROM dkic_b.t_psi_outbound_item as tpoi

+ 24 - 7
src/main/java/com/dk/mdm/mapper/ivt/OutboundMapper.xml

@@ -5,14 +5,14 @@
     <!-- 通用设置 -->
     <!-- 通用查询列 -->
     <sql id="Base_Column_List">
-        out_id, out_no, out_type, from_id, from_no, org_id, staff_id, cus_id, sup_id, out_status, outing_qty, outing_amt, out_qty, out_amt, return_qty, return_amt, out_date, remarks, annex_paths, make_staff, make_time, receivable_id, payable_id, flg_valid, cp_id
+        out_id, out_no, out_type, from_id, from_no, org_id, staff_id, cus_id, sup_id, out_status, outing_qty, outing_amt, out_qty, out_amt, return_qty, return_amt, out_date, remarks, annex_paths, make_staff, make_time, receivable_id, payable_id, flg_valid, cp_id,out_reason
     </sql>
 
     <sql id="Base_Column_List_Response">
         tpo.out_id, tpo.out_no, tpo.out_type, tpo.from_id, tpo.from_no, tpo.org_id, tpo.staff_id,
         tpo.cus_id, tpo.sup_id, tpo.out_status, tpo.outing_qty, tpo.outing_amt, tpo.out_qty, tpo.out_amt,
         tpo.return_qty, tpo.return_amt, tpo.out_date, tpo.remarks, tpo.annex_paths, tpo.make_staff,
-        tpo.make_time, tpo.receivable_id, tpo.payable_id, tpo.flg_valid, tpo.cp_id
+        tpo.make_time, tpo.receivable_id, tpo.payable_id, tpo.flg_valid, tpo.cp_id,tpo.out_reason
     </sql>
 
     <!-- 通用查询映射结果 -->
@@ -49,6 +49,7 @@
                 <result column="op_app_code" property="opAppCode"/>
             <result column="op_timestamp" property="opTimestamp" typeHandler="TimestampTypeHandler"/>
                 <result column="op_db_user" property="opDbUser"/>
+        <result column="out_reason" property="outReason" typeHandler="UuidTypeHandler"/>
     </resultMap>
 
     <!-- 通用查询映射结果 -->
@@ -79,7 +80,7 @@
         <result column="flg_valid" property="flgValid"/>
         <result column="cp_id" property="cpId"/>
         <result column="org_name" property="orgName"/>
-        <result column="staff_name" property="staffName"/>
+<!--        <result column="staff_name" property="staffName"/>-->
         <result column="cus_code" property="cusCode"/>
         <result column="cus_name" property="cusName"/>
         <result column="cus_phone" property="cusPhone"/>
@@ -92,6 +93,9 @@
         <result column="address_full" property="addressFull"/>
         <result column="channel_name" property="channelName"/>
         <result column="cus_from_name" property="cusFromName"/>
+        <result column="out_reason" property="outReason" typeHandler="UuidTypeHandler"/>
+        <result column="out_reason_name" property="outReasonName" />
+
     </resultMap>
 
     <!-- 通用条件列 -->
@@ -240,7 +244,8 @@
                t.receivable_id,
                t.payable_id,
                t.cp_id,
-               t.flg_valid
+               t.flg_valid,
+              tmd.data_value                                   as out_reason_name
         FROM dkic_b.t_psi_outbound as t
                  left join dkic_b.t_mst_org tmo on tmo.org_id = t.org_id
                  Left join dkic_b.t_mst_supplier tmp on tmp.sup_id = t.sup_id
@@ -250,6 +255,7 @@
                  left join dkic_b.t_mst_dictionary_data tmdd on tmdd.data_id = tmc.cus_from
                  left join sys.t_data_kind as tdk1 on tdk1.kind_code = t.out_status
                  LEFT JOIN sys.t_data_kind tdktype   ON tdktype.kind_code = t.out_type
+                 left join dkic_b.t_mst_dictionary_data tmd on tmd.data_id = t.out_reason
         <include refid="Condition"/>
         <if test="pageSize != null and currentPage != null and pageSize != 0 and currentPage != 0">
             limit #{end} offset #{start}
@@ -261,8 +267,17 @@
         SELECT
         count(1)
         FROM dkic_b.t_psi_outbound as t
-                left join dkic_b.t_mst_customer tmc on t.cus_id = tmc.cus_id
+        left join dkic_b.t_mst_org tmo on tmo.org_id = t.org_id
+        Left join dkic_b.t_mst_supplier tmp on tmp.sup_id = t.sup_id
+        left join dkic_b.t_mst_staff tms on tms.staff_id = t.staff_id
+        left join dkic_b.t_mst_staff as makestaff on makestaff.staff_id = t.make_staff
+        left join dkic_b.t_mst_customer tmc on tmc.cus_id = t.cus_id
+        left join dkic_b.t_mst_dictionary_data tmdd on tmdd.data_id = tmc.cus_from
+        left join sys.t_data_kind as tdk1 on tdk1.kind_code = t.out_status
+        LEFT JOIN sys.t_data_kind tdktype   ON tdktype.kind_code = t.out_type
+        left join dkic_b.t_mst_dictionary_data tmd on tmd.data_id = t.out_reason
         <include refid="Condition"/>
+
     </select>
 
     <!-- 根据主键查询表dkic_b.t_psi_outbound的一行数据 -->
@@ -312,7 +327,8 @@
                t.receivable_id,
                t.payable_id,
                t.cp_id,
-               t.flg_valid
+               t.flg_valid,
+               tmd.data_value                                   as out_reason_name
         FROM dkic_b.t_psi_outbound as t
                  left join dkic_b.t_psi_order as tpo1 on tpo1.order_id = t.from_id
                  left join dkic_b.t_mst_sale_channel tmsc on tmsc.channel_id = tpo1.sales_channel
@@ -322,6 +338,7 @@
                  left join dkic_b.t_mst_customer tmc on tmc.cus_id = t.cus_id
                  left join dkic_b.t_mst_dictionary_data tmdd on tmdd.data_id = tmc.cus_from
                  left join sys.t_data_kind as tdk1 on tdk1.kind_code = t.out_status
+                 left join dkic_b.t_mst_dictionary_data tmd on tmd.data_id = t.out_reason
         WHERE t.out_id = #{id}::uuid
     </select>
 
@@ -415,7 +432,7 @@
         SELECT
         <include refid="Base_Column_List_Response"/>
         ,tmo.org_name
-        ,tms.staff_name
+        ,tms.staff_name                                  as "staffName"
         ,tmc.cus_code
         ,tmc.cus_name
         ,tmc.cus_phone

+ 6 - 1
src/main/java/com/dk/mdm/mapper/mst/MoneyAccountMapper.xml

@@ -53,6 +53,9 @@
             <if test="flgValidList != null and flgValidList.size>0">
                 AND ma.flg_valid  =any(#{flgValidList, typeHandler=BooleanListTypeHandler})
             </if>
+            <if test="flgValid != null ">
+                AND ma.flg_valid  = #{flgValid}
+            </if>
             <if test="macTypeList != null and macTypeList.size() > 0">
                 AND ma.mac_Type  =any(#{macTypeList, typeHandler=UuidListTypeHandler})
             </if>
@@ -87,11 +90,12 @@
         FROM
         (
         SELECT
+        tmdd.data_id AS "macId",
         null AS "macType",
         null AS  "macCode",
         tmdd.data_value AS  "macName",
         null	AS "Remarks",
-        null AS "flgValid",
+        'true' AS "flgValid",
         null AS "macTypeName",
         null AS  "macId",
         null	AS "balance",
@@ -101,6 +105,7 @@
         WHERE
         tmdd.dict_code = '账户类别' UNION ALL
         SELECT
+        ma.mac_id AS "macId",
         ma.mac_Type as "macType",
         ma.mac_code AS "macCode",
         ma.mac_name AS "macName",

+ 1 - 1
src/main/java/com/dk/mdm/mapper/pur/PurchaseItemMapper.xml

@@ -300,7 +300,7 @@
         ,tmgs.sku_spec  as "skuSpec"
         ,tmgs.price_purchase  as "pricePurchase"
         ,tmgs.price_standard  as "priceStandard"
-        ,sys.f_get_name_i18n(tdk1.kind_name_i18n, ${i18n}) as "intoStatusName"
+        ,sys.f_get_name_i18n(tdk1.kind_name_i18n, #{i18n}) as "intoStatusName"
         FROM dkic_b.t_psi_purchase_item tppi
         left join dkic_b.t_mst_goods_sku tmgs on tppi.sku_id = tmgs.sku_id
         left join dkic_b.t_mst_goods_brand tmgb on tmgb.brand_id = tmgs.brand_id

+ 14 - 0
src/main/java/com/dk/mdm/mapper/t_mst/MoneyAccountItemMapper.java

@@ -0,0 +1,14 @@
+package com.dk.mdm.mapper.t_mst;
+
+import com.dk.mdm.model.pojo.t_mst.MoneyAccountItem;
+import com.dk.common.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+/**
+*  资金流水明细 Mapper
+*/
+@Repository
+public interface MoneyAccountItemMapper extends BaseMapper<MoneyAccountItem>{
+	
+}
+

+ 177 - 0
src/main/java/com/dk/mdm/mapper/t_mst/MoneyAccountItemMapper.xml

@@ -0,0 +1,177 @@
+<?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.dk.mdm.mapper.t_mst.MoneyAccountItemMapper">
+
+    <!-- 通用设置 -->
+    <!-- 通用查询列 -->
+    <sql id="Base_Column_List">
+        item_id, mac_id, flow_type, invoice_id, amt_inflow, acc_date, remarks, make_staff, make_time, flg_valid, cp_id, op_create_time, op_create_user_id, op_update_time, op_update_user_id, op_app_code, op_timestamp, op_db_user
+    </sql>
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.dk.mdm.model.pojo.t_mst.MoneyAccountItem">
+        <id column="item_id" property="itemId"/>
+                <result column="mac_id" property="macId" typeHandler="UuidTypeHandler"/>
+                <result column="flow_type" property="flowType"/>
+                <result column="invoice_id" property="invoiceId" typeHandler="UuidTypeHandler"/>
+                <result column="amt_inflow" property="amtInflow"/>
+                <result column="acc_date" property="accDate" typeHandler="TimestampTypeHandler"/>
+                <result column="remarks" property="remarks"/>
+                <result column="make_staff" property="makeStaff" typeHandler="UuidTypeHandler"/>
+                <result column="make_time" property="makeTime" typeHandler="TimestampTypeHandler"/>
+                <result column="flg_valid" property="flgValid"/>
+                <result column="cp_id" property="cpId"/>
+                <result column="op_create_time" property="opCreateTime" typeHandler="TimestampTypeHandler"/>
+                <result column="op_create_user_id" property="opCreateUserId" typeHandler="UuidTypeHandler"/>
+                <result column="op_update_time" property="opUpdateTime" typeHandler="TimestampTypeHandler"/>
+                <result column="op_update_user_id" property="opUpdateUserId" typeHandler="UuidTypeHandler"/>
+                <result column="op_app_code" property="opAppCode"/>
+                <result column="op_timestamp" property="opTimestamp" typeHandler="TimestampTypeHandler"/>
+                <result column="op_db_user" property="opDbUser"/>
+    </resultMap>
+
+    <!-- 通用条件列 -->
+    <sql id="Condition">
+        <where>
+            <if test="macId != null and macId != ''">
+                AND mac_id = #{macId}
+            </if>
+            <if test="flowType != null and flowType != ''">
+                AND flow_type = #{flowType}
+            </if>
+            <if test="invoiceId != null and invoiceId != ''">
+                AND invoice_id = #{invoiceId}
+            </if>
+            <if test="amtInflow != null">
+                AND amt_inflow = #{amtInflow}
+            </if>
+            <if test="accDate != null">
+                AND acc_date = #{accDate}
+            </if>
+            <if test="remarks != null and remarks != ''">
+                AND remarks = #{remarks}
+            </if>
+            <if test="makeStaff != null and makeStaff != ''">
+                AND make_staff = #{makeStaff}
+            </if>
+            <if test="makeTime != null">
+                AND make_time = #{makeTime}
+            </if>
+            <if test="flgValid != null">
+                AND flg_valid = #{flgValid}
+            </if>
+            <if test="cpId != null">
+                AND cp_id = #{cpId}
+            </if>
+            <if test="opCreateTime != null">
+                AND op_create_time = #{opCreateTime}
+            </if>
+            <if test="opCreateUserId != null and opCreateUserId != ''">
+                AND op_create_user_id = #{opCreateUserId}
+            </if>
+            <if test="opUpdateTime != null">
+                AND op_update_time = #{opUpdateTime}
+            </if>
+            <if test="opUpdateUserId != null and opUpdateUserId != ''">
+                AND op_update_user_id = #{opUpdateUserId}
+            </if>
+            <if test="opAppCode != null and opAppCode != ''">
+                AND op_app_code = #{opAppCode}
+            </if>
+            <if test="opTimestamp != null">
+                AND op_timestamp = #{opTimestamp}
+            </if>
+            <if test="opDbUser != null and opDbUser != ''">
+                AND op_db_user = #{opDbUser}
+            </if>
+        </where>
+    </sql>
+
+    <sql id="idsForeach">
+        <!-- 根据主键itemId批量操作 -->
+        WHERE item_id in
+        <foreach collection="ids" index="index" item="item" separator="," open="(" close=")">
+            #{item}
+        </foreach>
+    </sql>
+
+    <!-- 查询表t_mst_money_account_item,(条件查询+分页)列表 -->
+    <select id="selectByCond" resultMap="BaseResultMap">
+        SELECT
+        <include refid="Base_Column_List"/>
+        FROM t_mst_money_account_item
+        <include refid="Condition"/>
+        <if test="pageSize != null and currentPage != null and pageSize != 0 and currentPage != 0">
+            limit #{end} offset #{start}
+        </if>
+    </select>
+
+    <!-- 查询表t_mst_money_account_item,(条件查询)个数 -->
+    <select id="countByCond" resultType="Long">
+        SELECT
+        count(1)
+        FROM t_mst_money_account_item
+        <include refid="Condition"/>
+    </select>
+
+    <!-- 根据主键查询表t_mst_money_account_item的一行数据 -->
+    <select id="selectById" resultMap="BaseResultMap">
+        SELECT
+        <include refid="Base_Column_List"/>
+        FROM t_mst_money_account_item
+        WHERE item_id = #{itemId}::uuid
+    </select>
+
+    <!-- 根据主键锁定表t_mst_money_account_item的一行数据 -->
+    <select id="selectByIdForUpdate" resultMap="BaseResultMap">
+        SELECT
+        <include refid="Base_Column_List"/>
+        FROM t_mst_money_account_item
+        WHERE item_id = #{id}::uuid
+        for update
+    </select>
+
+    <!-- 根据主键锁定表t_mst_money_account_item的多行数据 -->
+    <select id="selectByIdsForUpdate" resultMap="BaseResultMap">
+        SELECT
+        <include refid="Base_Column_List"/>
+        FROM t_mst_money_account_item
+        <include refid="idsForeach"/>
+        for update
+    </select>
+
+    <insert id="insertBatch">
+        insert into t_mst_money_account_item
+        (
+        <trim suffixOverrides=",">
+            mac_id,
+            flow_type,
+            invoice_id,
+            amt_inflow,
+            acc_date,
+            remarks,
+            make_staff,
+            make_time,
+            cp_id,
+            op_app_code,
+        </trim>
+        )
+        values
+        <foreach collection="list" index="index" item="item" separator=",">
+            (
+            <trim suffixOverrides=",">
+                #{item.macId}::uuid,
+                #{item.flowType},
+                #{item.invoiceId}::uuid,
+                #{item.amtInflow},
+                #{item.accDate},
+                #{item.remarks},
+                #{item.makeStaff}::uuid,
+                #{item.makeTime},
+                #{item.cpId},
+                #{item.opAppCode},
+            </trim>
+            )
+        </foreach>
+    </insert>
+</mapper>

+ 5 - 4
src/main/java/com/dk/mdm/model/pojo/ivt/InventoryBatch.java

@@ -17,6 +17,7 @@ import lombok.experimental.Accessors;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 
 /**
@@ -126,10 +127,10 @@ public class InventoryBatch extends PageInfo<InventoryBatch> implements Serializ
      * 账务日期
      */
     @Excel(name = "账务日期")
-    @ApiModelProperty(value = "账务日期")
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    @TableField(typeHandler = TimestampTypeHandler.class)
-    private LocalDateTime accDate;
+    @ApiModelProperty(value = "入库日期")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class, updateStrategy = FieldStrategy.IGNORED)
+    private LocalDate accDate;
 
 
     /**

+ 5 - 0
src/main/java/com/dk/mdm/model/pojo/ivt/Outbound.java

@@ -318,6 +318,11 @@ public class Outbound extends PageInfo<Outbound> implements Serializable {
     private String opDbUser;
 
 
+
+    @ApiModelProperty(value = "出库原因")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String outReason;
+
     /*
      * 相关属性
      * @TableField(exist = false)

+ 216 - 0
src/main/java/com/dk/mdm/model/pojo/t_mst/MoneyAccountItem.java

@@ -0,0 +1,216 @@
+package com.dk.mdm.model.pojo.t_mst;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.*;
+import java.io.Serializable;
+
+import com.dk.common.infrastructure.annotaiton.ExportTitle;
+import com.dk.common.infrastructure.handler.*;
+import com.dk.common.model.pojo.PageInfo;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import lombok.AllArgsConstructor;
+import lombok.NoArgsConstructor;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.alibaba.fastjson.JSONObject;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.util.List;
+import java.time.LocalDateTime;
+
+/**
+ *  资金流水明细
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@ExportTitle("资金流水明细")
+@TableName(value = "t_mst_money_account_item", autoResultMap = true)
+@ApiModel(value="实体类:资金流水明细", description="表名:t_mst_money_account_item")
+public class MoneyAccountItem extends PageInfo<MoneyAccountItem> implements Serializable {
+
+    /*
+     * 数据库字段
+     */
+
+    /**
+     * 明细ID
+     */
+    @TableId(value = "item_id", type = IdType.AUTO)
+    @ApiModelProperty(value = "明细ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String itemId;
+
+
+    /**
+     * 资金账户ID
+     */
+    @Excel(name = "资金账户ID")
+    @ApiModelProperty(value = "资金账户ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String macId;
+
+
+    /**
+     * 流水类型 (【系统字典】:收付款、转账)
+     */
+    @Excel(name = "流水类型 (【系统字典】:收付款、转账)")
+    @ApiModelProperty(value = "流水类型 (【系统字典】:收付款、转账)")
+    private String flowType;
+
+
+    /**
+     * 流水单ID (为空时为期初)
+     */
+    @Excel(name = "流水单ID (为空时为期初)")
+    @ApiModelProperty(value = "流水单ID (为空时为期初)")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String invoiceId;
+
+
+    /**
+     * 流入金额 (流入为正数,流出为负数)
+     */
+    @Excel(name = "流入金额 (流入为正数,流出为负数)")
+    @ApiModelProperty(value = "流入金额 (流入为正数,流出为负数)")
+    private BigDecimal amtInflow;
+
+
+    /**
+     * 账务日期 (账务日期)
+     */
+    @Excel(name = "账务日期 (账务日期)")
+    @ApiModelProperty(value = "账务日期 (账务日期)")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class)
+    private LocalDate accDate;
+
+
+    /**
+     * 备注
+     */
+    @Excel(name = "备注")
+    @ApiModelProperty(value = "备注")
+    private String remarks;
+
+
+    /**
+     * 制单员
+     */
+    @Excel(name = "制单员")
+    @ApiModelProperty(value = "制单员")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String makeStaff;
+
+
+    /**
+     * 制单时间
+     */
+    @Excel(name = "制单时间")
+    @ApiModelProperty(value = "制单时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class)
+    private LocalDateTime makeTime;
+
+
+    /**
+     * 有效标识 (1:正常 0:停用)
+     */
+    @Excel(name = "有效标识 (1:正常 0:停用)")
+    @ApiModelProperty(value = "有效标识 (1:正常 0:停用)")
+    private Boolean flgValid;
+
+
+    /**
+     * 企业ID
+     */
+    @TableField(fill = FieldFill.INSERT)
+    @Excel(name = "企业ID")
+    @ApiModelProperty(value = "企业ID")
+    private Integer cpId;
+
+
+    /**
+     * 创建时间 (触发器自动处理)
+     */
+    @Excel(name = "创建时间 (触发器自动处理)", format = "yyyy-MM-dd HH:mm:ss", width = 20)
+    @ApiModelProperty(value = "创建时间 (触发器自动处理)")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class)
+    private LocalDateTime opCreateTime;
+
+
+    /**
+     * 创建用户 (触发器自动处理)
+     */
+    @Excel(name = "创建用户 (触发器自动处理)")
+    @ApiModelProperty(value = "创建用户 (触发器自动处理)")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String opCreateUserId;
+
+
+    /**
+     * 修改时间 (触发器自动处理)
+     */
+    @Excel(name = "修改时间 (触发器自动处理)", format = "yyyy-MM-dd HH:mm:ss", width = 20)
+    @ApiModelProperty(value = "修改时间 (触发器自动处理)")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class)
+    private LocalDateTime opUpdateTime;
+
+
+    /**
+     * 修改用户 (触发器自动处理)
+     */
+    @Excel(name = "修改用户 (触发器自动处理)")
+    @ApiModelProperty(value = "修改用户 (触发器自动处理)")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String opUpdateUserId;
+
+
+    /**
+     * 数据操作应用 (触发器自动处理)
+     */
+    @Excel(name = "数据操作应用 (触发器自动处理)")
+    @ApiModelProperty(value = "数据操作应用 (触发器自动处理)")
+    private String opAppCode;
+
+
+    /**
+     * 数据时间戳 (触发器自动处理)
+     */
+    @Excel(name = "数据时间戳 (触发器自动处理)")
+    @ApiModelProperty(value = "数据时间戳 (触发器自动处理)")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class)
+    private LocalDateTime opTimestamp;
+
+
+    /**
+     * 数据操作数据库用户 (触发器自动处理)
+     */
+    @Excel(name = "数据操作数据库用户 (触发器自动处理)")
+    @ApiModelProperty(value = "数据操作数据库用户 (触发器自动处理)")
+    private String opDbUser;
+
+
+    /*
+     * 相关属性
+     * @TableField(exist = false)
+     */
+
+    /*
+     * 关联属性 + 查询条件
+     * @TableField(exist = false)
+     */
+
+
+    private static final long serialVersionUID = 1L;
+
+}

+ 5 - 5
src/main/java/com/dk/mdm/model/query/ivt/InventoryBatchQuery.java

@@ -17,6 +17,7 @@ import lombok.experimental.Accessors;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 
 /**
@@ -109,11 +110,10 @@ public class InventoryBatchQuery extends PageInfo<InventoryBatchQuery> {
     /**
      * 账务日期
      */
-    @ApiModelProperty(value = "账务日期")
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    @TableField(typeHandler = TimestampTypeHandler.class)
-    private LocalDateTime accDate;
-
+    @ApiModelProperty(value = "入库日期")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class, updateStrategy = FieldStrategy.IGNORED)
+    private LocalDate accDate;
 
 
     /**

+ 5 - 4
src/main/java/com/dk/mdm/model/response/ivt/InventoryBatchResponse.java

@@ -17,6 +17,7 @@ import lombok.experimental.Accessors;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 
 /**
@@ -116,10 +117,10 @@ public class InventoryBatchResponse {
      * 账务日期
      */
     @Excel(name = "账务日期")
-    @ApiModelProperty(value = "账务日期")
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    @TableField(typeHandler = TimestampTypeHandler.class)
-    private LocalDateTime accDate;
+    @ApiModelProperty(value = "入库日期")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class, updateStrategy = FieldStrategy.IGNORED)
+    private LocalDate accDate;
 
 
     /**

+ 11 - 0
src/main/java/com/dk/mdm/model/response/ivt/OutboundResponse.java

@@ -261,6 +261,17 @@ public class OutboundResponse extends PageInfo<OutboundResponse> implements Seri
     private Integer cpId;
 
 
+    @ApiModelProperty(value = "出库原因")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String outReason;
+
+
+    @Excel(name = "出库原因")
+    @ApiModelProperty(value = "出库原因")
+    private String outReasonName;
+
+
+
     @ApiModelProperty(value = "出库单明细")
     private List<OutboundItemResponse> goodsList;
 

+ 5 - 4
src/main/java/com/dk/mdm/model/vo/ivt/InventoryBatchVO.java

@@ -17,6 +17,7 @@ import lombok.experimental.Accessors;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 
 /**
@@ -109,10 +110,10 @@ public class InventoryBatchVO  {
     /**
      * 账务日期
      */
-    @ApiModelProperty(value = "账务日期")
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    @TableField(typeHandler = TimestampTypeHandler.class)
-    private LocalDateTime accDate;
+    @ApiModelProperty(value = "入库日期")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class, updateStrategy = FieldStrategy.IGNORED)
+    private LocalDate accDate;
 
 
     /**

+ 4 - 0
src/main/java/com/dk/mdm/model/vo/ivt/OutboundVO.java

@@ -217,6 +217,10 @@ public class OutboundVO{
     private Boolean flgValid;
 
 
+    @ApiModelProperty(value = "出库原因")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String outReason;
+
     /**
      * 企业ID
      */

+ 69 - 6
src/main/java/com/dk/mdm/service/ivt/inventory/InventoryService.java

@@ -12,11 +12,13 @@ import com.dk.common.response.ResponseResultUtil;
 import com.dk.common.response.ResponseResultVO;
 import com.dk.mdm.infrastructure.convert.ivt.InOutRecordConvert;
 import com.dk.mdm.mapper.ivt.InOutRecordMapper;
+import com.dk.mdm.mapper.ivt.InventoryBatchMapper;
 import com.dk.mdm.model.pojo.ivt.InOutRecord;
 import com.dk.mdm.model.pojo.ivt.Inventory;
 import com.dk.mdm.mapper.ivt.InventoryMapper;
 import com.dk.common.service.BaseService;
 import com.dk.common.mapper.BaseMapper;
+import com.dk.mdm.model.pojo.ivt.InventoryBatch;
 import com.dk.mdm.model.query.ivt.InboundQuery;
 import com.dk.mdm.model.query.ivt.InventoryQuery;
 import com.dk.mdm.model.response.ivt.InboundResponse;
@@ -31,6 +33,7 @@ import org.springframework.transaction.annotation.Transactional;
 import com.dk.common.infrastructure.constant.Constant;
 
 import java.math.BigDecimal;
+import java.time.LocalDate;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -57,6 +60,11 @@ public class InventoryService extends BaseService<Inventory> {
 
     @Autowired
     private InOutRecordConvert inOutRecordConvert;
+
+    @Autowired
+    private InventoryBatchMapper inventoryBatchMapper;
+
+
     /**
      * @desc   : 条件查询
      * @author : 姜永辉
@@ -282,7 +290,7 @@ public class InventoryService extends BaseService<Inventory> {
     @Transactional(
             rollbackFor = {Exception.class}
     )
-    public void insertInventory(List<InOutRecordVO> inOutRecordVOList) {
+    public List<InOutRecordVO> insertInventory(List<InOutRecordVO> inOutRecordVOList) {
         //判断库存数据是否存在,存在更细,不存在新建
         for (InOutRecordVO inOutRecordVO : inOutRecordVOList) {
             //根据sku,仓库,非标号查询
@@ -292,15 +300,47 @@ public class InventoryService extends BaseService<Inventory> {
                     .setNonStdCode(inOutRecordVO.getNonStdCode()));
             //不存在  新建
             if (inventoryResponse == null) {
-
+                Inventory inventory =  new Inventory();
+                //仓库Id
+                inventory.setWhId(inOutRecordVO.getWhId());
+                //商品id
+                inventory.setSkuId(inOutRecordVO.getSkuId());
+                //非标号
+                inventory.setNonStdCode(inOutRecordVO.getNonStdCode());
+                //库存数量
+                inventory.setInvQty(inOutRecordVO.getIntoQty());
+                //可售数量(可用量)
+                inventory.setUsableQty(inOutRecordVO.getIntoQty());
+                //库存资产
+                inventory.setCostAmt(inOutRecordVO.getIntoAmt());
+                //库存单价   存货资产/存货数量
+                inventory.setCostPrice(inventory.getCostAmt().divide(inventory.getInvQty()).setScale(2, BigDecimal.ROUND_HALF_UP));
+                //新建
+                inventoryMapper.insert(inventory);
+                //仓库Id赋值
+                inOutRecordVO.setInvId(inventory.getInvId());
+                //新建批次明细
             }
             //存在 出库校验库存是否充足重写updateById,入库加入数据
             else {
-
+                //仓库Id赋值
+                inOutRecordVO.setInvId(inventoryResponse.getInvId());
+                //新建库存批次明细
+                this.insertInventoryBatch(inOutRecordVO);
+                //跟新库存数据
+                Inventory inventory =  new Inventory();
+                //库存资产
+                inventory.setCostAmt(inOutRecordVO.getIntoAmt());
+                //新建
+                int countRow =  inventoryMapper.updateById(inventory);
+                //数量超出
+                if (countRow == 0) {
+                    throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_HAS_EXCEEDED.getMessage());
+                }
             }
         }
 
-
+        return inOutRecordVOList;
     }
 
     /**
@@ -311,8 +351,31 @@ public class InventoryService extends BaseService<Inventory> {
     @Transactional(
             rollbackFor = {Exception.class}
     )
-    public void insertInventoryBatch(List<InOutRecordVO> inOutRecordVOList) {
-
+    public InOutRecordVO insertInventoryBatch(InOutRecordVO inOutRecordVO) {
+        InventoryBatch  inventoryBatch  = new InventoryBatch();
+        //库存Id
+        inventoryBatch.setInvId(inOutRecordVO.getInvId());
+        //来源Id
+        inventoryBatch.setFromId(inOutRecordVO.getBiznisId());
+        //来源明细Id
+        inventoryBatch.setFromItemId(inOutRecordVO.getBiznisItemId());
+        //仓库Id
+        inventoryBatch.setWhId(inOutRecordVO.getWhId());
+        //商品Id
+        inventoryBatch.setSkuId(inOutRecordVO.getSkuId());
+        //非标号
+        inventoryBatch.setNonStdCode(inOutRecordVO.getNonStdCode());
+        //库存数量
+        inventoryBatch.setInvQty(inOutRecordVO.getIntoQty());
+        //库存单价
+        inventoryBatch.setCostPrice(inOutRecordVO.getPriceInto());
+        //货物资产
+        inventoryBatch.setCostAmt(inOutRecordVO.getIntoAmt());
+        //账务日期
+        inventoryBatch.setAccDate(LocalDate.now());
+        //新建
+        inventoryBatchMapper.insert(inventoryBatch);
+        return inOutRecordVO;
     }
 
 }

+ 28 - 0
src/main/java/com/dk/mdm/service/t_mst/MoneyAccountItemService.java

@@ -0,0 +1,28 @@
+package com.dk.mdm.service.t_mst;
+
+import com.dk.mdm.model.pojo.t_mst.MoneyAccountItem;
+import com.dk.mdm.mapper.t_mst.MoneyAccountItemMapper;
+import com.dk.common.service.BaseService;
+import com.dk.common.mapper.BaseMapper;
+import org.springframework.stereotype.Service;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+
+@Service
+@Transactional
+public class MoneyAccountItemService extends BaseService<MoneyAccountItem> {
+
+	@Override
+	public String getPrimaryKey() {
+		return "item_id";
+	}
+
+	@Override
+	public BaseMapper<MoneyAccountItem> getRepository() {
+		return moneyAccountItemMapper;
+	}
+
+	@Autowired
+	private MoneyAccountItemMapper moneyAccountItemMapper;
+
+}