songyang před 2 roky
rodič
revize
bd86c5ca2b

+ 14 - 2
src/main/java/com/dk/mdm/controller/mst/OrgController.java

@@ -5,7 +5,8 @@ import com.dk.common.response.ResponseResultVO;
 import com.dk.mdm.model.pojo.mst.Org;
 import com.dk.common.service.BaseService;
 import com.dk.mdm.model.query.mst.OrgQuery;
-import com.dk.common.model.vo.mst.OrgVO;
+import com.dk.mdm.model.response.mst.OrgResponse;
+import com.dk.mdm.model.vo.mst.OrgVO;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
@@ -31,7 +32,7 @@ public class OrgController{
       */
     @ApiOperation( value = "分页、关联、条件查询", notes = "分页、关联、条件查询" )
     @PostMapping({"list_by"})
-    public ResponseResultVO<PageList<Org>> selectByCond(@RequestBody OrgQuery orgQuery) {
+    public ResponseResultVO<PageList<OrgResponse>> selectByCond(@RequestBody OrgQuery orgQuery) {
         return orgService.selectByCond(orgQuery);
     }
 
@@ -70,4 +71,15 @@ public class OrgController{
         return orgService.selectById(id);
     }
 
+    /**
+     * @desc   : 编辑组织机构
+     * @author : 宋扬
+     * @date   : 2024/3/22 17:14
+     */
+    @ApiOperation(value = "编辑组织机构", notes = "编辑组织机构")
+    @PostMapping({"update"})
+    public ResponseResultVO<Boolean> update(@RequestBody OrgVO orgVO) {
+        return orgService.update(orgVO);
+    }
+
 }

+ 1 - 1
src/main/java/com/dk/mdm/infrastructure/convert/mst/OrgConvert.java

@@ -1,7 +1,7 @@
 package com.dk.mdm.infrastructure.convert.mst;
 
 import com.dk.mdm.model.pojo.mst.Org;
-import com.dk.common.model.vo.mst.OrgVO;
+import com.dk.mdm.model.vo.mst.OrgVO;
 import org.mapstruct.Mapper;
 
  /**

+ 8 - 0
src/main/java/com/dk/mdm/mapper/mst/OrgMacMapper.java

@@ -2,6 +2,7 @@ package com.dk.mdm.mapper.mst;
 
 import com.dk.mdm.model.pojo.mst.OrgMac;
 import com.dk.common.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
 /**
@@ -9,6 +10,13 @@ import org.springframework.stereotype.Repository;
 */
 @Repository
 public interface OrgMacMapper extends BaseMapper<OrgMac>{
+
+    /**
+     * @desc   : 删除明细(通过组织Id)
+     * @author : 宋扬
+     * @date   : 2024/3/23 9:24
+     */
+    int deleteByOrgId(@Param("orgId") String orgId);
 	
 }
 

+ 3 - 33
src/main/java/com/dk/mdm/mapper/mst/OrgMacMapper.xml

@@ -107,37 +107,7 @@
         for update
     </select>
 
-    <!-- 根据主键锁定表t_mst_org_mac的多行数据 -->
-    <select id="selectByIdsForUpdate" resultMap="BaseResultMap">
-        SELECT
-        <include refid="Base_Column_List"/>
-        FROM t_mst_org_mac
-        <include refid="idsForeach"/>
-        for update
-    </select>
-
-    <insert id="insertBatch">
-        insert into t_mst_org_mac
-        (
-        <trim suffixOverrides=",">
-            mac_id,
-            display_no,
-            flg_default,
-            cp_id,
-            op_app_code,
-        </trim>
-        )
-        values
-        <foreach collection="list" index="index" item="item" separator=",">
-            (
-            <trim suffixOverrides=",">
-                #{item.macId}::uuid,
-                #{item.displayNo},
-                #{item.flgDefault},
-                #{item.cpId},
-                #{item.opAppCode},
-            </trim>
-            )
-        </foreach>
-    </insert>
+    <delete id="deleteByOrgId">
+        DELETE FROM dkic_b.t_mst_org_mac WHERE org_id = #{orgId}::uuid
+    </delete>
 </mapper>

+ 2 - 1
src/main/java/com/dk/mdm/mapper/mst/OrgMapper.java

@@ -3,6 +3,7 @@ package com.dk.mdm.mapper.mst;
 import com.dk.mdm.model.pojo.mst.Org;
 import com.dk.common.mapper.BaseMapper;
 import com.dk.mdm.model.query.mst.OrgQuery;
+import com.dk.mdm.model.response.mst.OrgResponse;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -19,7 +20,7 @@ public interface OrgMapper extends BaseMapper<Org>{
      * @author : 姜宁
      * @date   : 2023/1/10 17:20
      */
-    List<Org> selectByCond(OrgQuery orgQuery);
+    List<OrgResponse> selectByCond(OrgQuery orgQuery);
 
     /**
      * @desc   : 根据条件进行查询(数量)

+ 23 - 1
src/main/java/com/dk/mdm/mapper/mst/OrgMapper.xml

@@ -12,6 +12,26 @@
     <sql id="Base_Column_List_view">
         parent.org_id,parent.flg_valid,parent.level_leaf,parent.org_code,parent.level_name
         , parent.org_name, parent.parent_id, parent.display_no, parent.top_id
+         ,
+                (
+                SELECT
+                string_agg ( ma.mac_name, ',' )
+                FROM
+                dkic_b.t_mst_org_mac AS orgMac
+                left join dkic_b.t_mst_money_account ma on orgMac.mac_id=ma.mac_id
+                WHERE
+                orgMac.org_id = parent.org_id
+                ) AS "orgMac"
+          ,
+                (
+                SELECT
+                string_agg ( wh.wh_name, ',' )
+                FROM
+                dkic_b.t_mst_org_wh AS orgWh
+                left join dkic_b.t_mst_warehouse wh on wh.wh_id=orgWh.wh_id
+                WHERE
+                orgWh.org_id = parent.org_id
+                ) AS "whName"
     </sql>
 
     <!-- 通用查询映射结果 -->
@@ -45,7 +65,7 @@
     </resultMap>
 
     <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMapResponse" type="com.dk.common.model.response.mst.OrgResponse">
+    <resultMap id="BaseResultMapResponse" type="com.dk.mdm.model.response.mst.OrgResponse">
         <id column="org_id" property="orgId"/>
         <result column="org_name" property="orgName"/>
         <result column="parent_id" property="parentId" typeHandler="UuidTypeHandler"/>
@@ -68,6 +88,8 @@
         <result column="op_timestamp" property="opTimestamp" typeHandler="TimestampTypeHandler"/>
         <result column="op_db_user" property="opDbUser"/>
         <result column="org_code" property="orgCode"/>
+        <result column="whName" property="whName"/>
+        <result column="orgMac" property="orgMac"/>
         <collection property="itemData" javaType="java.util.ArrayList" ofType="com.dk.mdm.model.pojo.mst.Org"  column="org_item_id">
             <id column="org_item_id" property="orgId"/>
             <result column="org_item_name" property="orgName"/>

+ 8 - 1
src/main/java/com/dk/mdm/mapper/mst/OrgWhMapper.java

@@ -2,6 +2,7 @@ package com.dk.mdm.mapper.mst;
 
 import com.dk.mdm.model.pojo.mst.OrgWh;
 import com.dk.common.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
 /**
@@ -9,6 +10,12 @@ import org.springframework.stereotype.Repository;
 */
 @Repository
 public interface OrgWhMapper extends BaseMapper<OrgWh>{
-	
+
+    /**
+     * @desc   : 删除明细(通过组织Id)
+     * @author : 宋扬
+     * @date   : 2024/3/23 9:25
+     */
+    int deleteByOrgId(@Param("orgId") String orgId);
 }
 

+ 3 - 33
src/main/java/com/dk/mdm/mapper/mst/OrgWhMapper.xml

@@ -107,37 +107,7 @@
         for update
     </select>
 
-    <!-- 根据主键锁定表t_mst_org_wh的多行数据 -->
-    <select id="selectByIdsForUpdate" resultMap="BaseResultMap">
-        SELECT
-        <include refid="Base_Column_List"/>
-        FROM t_mst_org_wh
-        <include refid="idsForeach"/>
-        for update
-    </select>
-
-    <insert id="insertBatch">
-        insert into t_mst_org_wh
-        (
-        <trim suffixOverrides=",">
-            wh_id,
-            display_no,
-            flg_default,
-            cp_id,
-            op_app_code,
-        </trim>
-        )
-        values
-        <foreach collection="list" index="index" item="item" separator=",">
-            (
-            <trim suffixOverrides=",">
-                #{item.whId}::uuid,
-                #{item.displayNo},
-                #{item.flgDefault},
-                #{item.cpId},
-                #{item.opAppCode},
-            </trim>
-            )
-        </foreach>
-    </insert>
+    <delete id="deleteByOrgId">
+        DELETE FROM dkic_b.t_mst_org_wh WHERE org_id = #{orgId}::uuid
+    </delete>
 </mapper>

+ 0 - 1
src/main/java/com/dk/mdm/model/response/core/OrganizationResponse.java

@@ -238,7 +238,6 @@ public class OrganizationResponse extends PageInfo<OrganizationResponse> impleme
     @Excel(name = "父级名称")
     @ApiModelProperty(value = "父级名称")
     private String parentName;
-
     private static final long serialVersionUID = 1L;
 
 }

+ 259 - 0
src/main/java/com/dk/mdm/model/response/mst/OrgResponse.java

@@ -0,0 +1,259 @@
+package com.dk.mdm.model.response.mst;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.dk.common.infrastructure.annotaiton.ExportTitle;
+import com.dk.common.infrastructure.handler.TimestampTypeHandler;
+import com.dk.common.infrastructure.handler.UuidListTypeHandler;
+import com.dk.common.infrastructure.handler.UuidTypeHandler;
+import com.dk.common.model.pojo.PageInfo;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *  组织机构
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@ExportTitle("组织机构")
+@TableName(value = "t_mst_org", autoResultMap = true, schema =  "dkic_b")
+@ApiModel(value="实体类:组织机构", description="表名:t_mst_org")
+public class OrgResponse extends PageInfo<OrgResponse> implements Serializable {
+
+    /*
+     * 数据库字段
+     */
+
+    /**
+     * 组织ID
+     */
+//    @TableId(value = "org_id", type = IdType.AUTO)
+    @ApiModelProperty(value = "组织ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String orgId;
+
+
+    /**
+     * 组织名称
+     */
+    @Excel(name = "组织名称")
+    @ApiModelProperty(value = "组织名称")
+    private String orgName;
+
+
+    /**
+     * 父级ID
+     */
+    @Excel(name = "父级ID")
+    @ApiModelProperty(value = "父级ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String parentId;
+
+
+    /**
+     * 显示顺序 (【1 ~ 46655】)
+     */
+    @Excel(name = "显示顺序 (【1 ~ 46655】)")
+    @ApiModelProperty(value = "显示顺序 (【1 ~ 46655】)")
+    private Integer displayNo;
+
+
+    /**
+     * 顶层ID
+     */
+    @Excel(name = "顶层ID")
+    @ApiModelProperty(value = "顶层ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String topId;
+
+
+    /**
+     * 上层ID
+     */
+    @Excel(name = "上层ID")
+    @ApiModelProperty(value = "上层ID")
+    @TableField(typeHandler = UuidListTypeHandler.class)
+    private List<String> levelUpper;
+
+
+    /**
+     * 下层ID
+     */
+    @Excel(name = "下层ID")
+    @ApiModelProperty(value = "下层ID")
+    @TableField(typeHandler = UuidListTypeHandler.class)
+    private List<String> levelLower;
+
+
+    /**
+     * 末级标识
+     */
+    @Excel(name = "末级标识")
+    @ApiModelProperty(value = "末级标识")
+    private Boolean levelLeaf;
+
+
+    /**
+     * 层级序号
+     */
+    @Excel(name = "层级序号")
+    @ApiModelProperty(value = "层级序号")
+    private Integer levelNo;
+
+
+    /**
+     * 层级代码
+     */
+    @Excel(name = "层级代码")
+    @ApiModelProperty(value = "层级代码")
+    private String levelCode;
+
+
+    /**
+     * 层级全称 (【 / 】)
+     */
+    @Excel(name = "层级全称 (【 / 】)")
+    @ApiModelProperty(value = "层级全称 (【 / 】)")
+    private String levelName;
+
+
+    /**
+     * 备注
+     */
+    @Excel(name = "备注")
+    @ApiModelProperty(value = "备注")
+    private String remarks;
+
+
+    /**
+     * 有效标识 (1:正常 0:停用)
+     */
+    @Excel(name = "有效标识 (1:正常 0:停用)")
+    @ApiModelProperty(value = "有效标识 (1:正常 0:停用)")
+    private Boolean flgValid;
+
+
+    /**
+     * 企业ID
+     */
+    @Excel(name = "企业ID")
+    @ApiModelProperty(value = "企业ID")
+    @TableField(fill = FieldFill.INSERT)
+    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;
+
+
+    /**
+     * 组织资金账户
+     */
+    @Excel(name = "组织资金账户")
+    @ApiModelProperty(value = "组织资金账户")
+    private String orgMac;
+
+    /**
+     * 组织仓库
+     */
+    @Excel(name = "组织仓库")
+    @ApiModelProperty(value = "组织仓库")
+    private String whName;
+
+    @ApiModelProperty(value = "")
+    private String orgCode;
+
+    @TableField(exist = false)
+    private List<OrgResponse> itemData;
+
+
+
+    /*
+     * 相关属性
+     * @TableField(exist = false)
+     */
+
+    /*
+     * 关联属性 + 查询条件
+     * @TableField(exist = false)
+     */
+
+
+    private static final long serialVersionUID = 1L;
+
+}

+ 251 - 0
src/main/java/com/dk/mdm/model/vo/mst/OrgVO.java

@@ -0,0 +1,251 @@
+package com.dk.mdm.model.vo.mst;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.dk.common.infrastructure.annotaiton.ExportTitle;
+import com.dk.common.infrastructure.handler.TimestampTypeHandler;
+import com.dk.common.infrastructure.handler.UuidListTypeHandler;
+import com.dk.common.infrastructure.handler.UuidTypeHandler;
+import com.dk.common.model.pojo.PageInfo;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.Map;
+
+/**
+ *  组织机构
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@ExportTitle("组织机构")
+@TableName(value = "t_mst_org", autoResultMap = true, schema =  "dkic_b")
+@ApiModel(value="实体类:组织机构", description="表名:t_mst_org")
+public class OrgVO extends PageInfo<OrgVO> implements Serializable {
+
+    /*
+     * 数据库字段
+     */
+
+    /**
+     * 组织ID
+     */
+//    @TableId(value = "org_id", type = IdType.AUTO)
+    @ApiModelProperty(value = "组织ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String orgId;
+
+
+    /**
+     * 组织名称
+     */
+    @Excel(name = "组织名称")
+    @ApiModelProperty(value = "组织名称")
+    private String orgName;
+
+
+    /**
+     * 父级ID
+     */
+    @Excel(name = "父级ID")
+    @ApiModelProperty(value = "父级ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String parentId;
+
+
+    /**
+     * 显示顺序 (【1 ~ 46655】)
+     */
+    @Excel(name = "显示顺序 (【1 ~ 46655】)")
+    @ApiModelProperty(value = "显示顺序 (【1 ~ 46655】)")
+    private Integer displayNo;
+
+
+    /**
+     * 顶层ID
+     */
+    @Excel(name = "顶层ID")
+    @ApiModelProperty(value = "顶层ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String topId;
+
+
+    /**
+     * 上层ID
+     */
+    @Excel(name = "上层ID")
+    @ApiModelProperty(value = "上层ID")
+    @TableField(typeHandler = UuidListTypeHandler.class)
+    private List<String> levelUpper;
+
+
+    /**
+     * 下层ID
+     */
+    @Excel(name = "下层ID")
+    @ApiModelProperty(value = "下层ID")
+    @TableField(typeHandler = UuidListTypeHandler.class)
+    private List<String> levelLower;
+
+
+    /**
+     * 末级标识
+     */
+    @Excel(name = "末级标识")
+    @ApiModelProperty(value = "末级标识")
+    private Boolean levelLeaf;
+
+
+    /**
+     * 层级序号
+     */
+    @Excel(name = "层级序号")
+    @ApiModelProperty(value = "层级序号")
+    private Integer levelNo;
+
+
+    /**
+     * 层级代码
+     */
+    @Excel(name = "层级代码")
+    @ApiModelProperty(value = "层级代码")
+    private String levelCode;
+
+
+    /**
+     * 层级全称 (【 / 】)
+     */
+    @Excel(name = "层级全称 (【 / 】)")
+    @ApiModelProperty(value = "层级全称 (【 / 】)")
+    private String levelName;
+
+
+    /**
+     * 备注
+     */
+    @Excel(name = "备注")
+    @ApiModelProperty(value = "备注")
+    private String remarks;
+
+
+    /**
+     * 有效标识 (1:正常 0:停用)
+     */
+    @Excel(name = "有效标识 (1:正常 0:停用)")
+    @ApiModelProperty(value = "有效标识 (1:正常 0:停用)")
+    private Boolean flgValid;
+
+
+    /**
+     * 企业ID
+     */
+    @Excel(name = "企业ID")
+    @ApiModelProperty(value = "企业ID")
+    @TableField(fill = FieldFill.INSERT)
+    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;
+
+    @ApiModelProperty(value = "仓库明细")
+    private List<Map<String, Object>> warehouseList;
+
+    @ApiModelProperty(value = "资金账户明细")
+    private List<Map<String, Object>> macList;
+
+    @ApiModelProperty(value = "")
+    private String orgCode;
+
+    @TableField(exist = false)
+    private List<OrgVO> itemData;
+
+
+
+    /*
+     * 相关属性
+     * @TableField(exist = false)
+     */
+
+    /*
+     * 关联属性 + 查询条件
+     * @TableField(exist = false)
+     */
+
+
+    private static final long serialVersionUID = 1L;
+
+}

+ 3 - 6
src/main/java/com/dk/mdm/service/ivt/FreezeService.java

@@ -147,8 +147,7 @@ public class FreezeService extends BaseService<Freeze> {
 					// 赋值库存可售量、冻结量和库存ID值
 					inventoryUpdate.setInvId(freezeItemVO.getInvId()).setFreezeQty(freezeqty).setUsableQty(usableQt);
 					// 修改库存冻结量、可售量
-					inventoryService.update(inventoryUpdate, new UpdateWrapper<Inventory>().lambda().eq(Inventory::getInvId,
-							UUID.fromString(inventoryUpdate.getInvId())));
+					inventoryService.updateByUuid(inventoryUpdate);
 				}
 			}
 			return ResponseResultUtil.success();
@@ -215,14 +214,12 @@ public class FreezeService extends BaseService<Freeze> {
 			// 赋值库存可售量、冻结量和库存ID值
 			inventoryUpdate.setInvId(freezeItemVO.getInvId()).setFreezeQty(freezeqty).setUsableQty(usableQt);
 			// 修改库存冻结量、可售量
-			inventoryService.update(inventoryUpdate, new UpdateWrapper<Inventory>().lambda().eq(Inventory::getInvId,
-					UUID.fromString(inventoryUpdate.getInvId())));
+			inventoryService.updateByUuid(inventoryUpdate);
 		}
 		// 赋值冻结表状态和ID
 		freeze.setFreezeId(freezeVO.getFreezeId()).setFreezeStatus(freezeStatus).setRemarks(freezeVO.getRemarks());
 		// 更新主表冻结状态
-		return ResponseResultUtil.success(super.update(freeze, new UpdateWrapper<Freeze>().lambda().eq(Freeze::getFreezeId,
-				UUID.fromString(freeze.getFreezeId()))));
+		return ResponseResultUtil.success(super.updateByUuid(freeze));
 	}
 
 }

+ 60 - 9
src/main/java/com/dk/mdm/service/mst/OrgService.java

@@ -1,5 +1,6 @@
 package com.dk.mdm.service.mst;
 
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.dk.common.infrastructure.annotaiton.Pagination;
 import com.dk.common.infrastructure.constant.Constant;
 import com.dk.common.model.pojo.PageList;
@@ -8,26 +9,21 @@ import com.dk.common.response.ResponseResultVO;
 import com.dk.mdm.infrastructure.convert.mst.OrgConvert;
 import com.dk.mdm.mapper.mst.OrgMacMapper;
 import com.dk.mdm.mapper.mst.OrgWhMapper;
-import com.dk.mdm.mapper.sale.MultiOwnerMapper;
 import com.dk.mdm.model.pojo.mst.Org;
 import com.dk.mdm.mapper.mst.OrgMapper;
 import com.dk.common.service.BaseService;
 import com.dk.common.mapper.BaseMapper;
 import com.dk.mdm.model.pojo.mst.OrgMac;
 import com.dk.mdm.model.pojo.mst.OrgWh;
-import com.dk.mdm.model.pojo.sale.MultiOwner;
 import com.dk.mdm.model.query.mst.OrgQuery;
-import com.dk.common.model.vo.mst.OrgVO;
+import com.dk.mdm.model.response.mst.OrgResponse;
+import com.dk.mdm.model.vo.mst.OrgVO;
 import com.dk.mdm.service.common.CommonService;
 import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.math.BigDecimal;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
 
 @Service
 @Transactional
@@ -65,7 +61,7 @@ public class OrgService extends BaseService<Org> {
      * @date : 2023/1/10 17:19
      */
     @Pagination
-    public ResponseResultVO<PageList<Org>> selectByCond(OrgQuery orgQuery) {
+    public ResponseResultVO<PageList<OrgResponse>> selectByCond(OrgQuery orgQuery) {
         return super.mergeListWithCount(orgQuery, orgMapper.selectByCond(orgQuery),
                 orgMapper.countByCond(orgQuery));
     }
@@ -160,4 +156,59 @@ public class OrgService extends BaseService<Org> {
         // orgMapper.resetLevelOrg(new Org().setTopId(organization.getParentId()).setCpId(organization.getCpId()));
         return ResponseResultUtil.success(organization);
     }
+
+    /**
+     * @desc   : 编辑方法
+     * @author : 宋扬
+     * @date   : 2024/3/22 17:15
+     */
+    @Transactional(
+            rollbackFor = {Exception.class}
+    )
+    public ResponseResultVO<Boolean> update(OrgVO orgVO) {
+        // 转化实体
+        Org org = orgConvert.convertToPo(orgVO);
+
+
+
+        // 修改组织机构
+        super.update(org, new UpdateWrapper<Org>().lambda().eq(Org::getOrgId,
+                UUID.fromString(org.getOrgId())));
+        //执行函数
+        orgMapper.resetLevelOrg(new Org().setTopId(org.getParentId()).setCpId(org.getCpId()));
+
+        //删除组织仓库和组织资金账户
+        orgWhMapper.deleteByOrgId(org.getOrgId());
+        orgMacMapper.deleteByOrgId(org.getOrgId());
+
+        // 添加组织仓库
+        if (orgVO.getWarehouseList() != null && orgVO.getWarehouseList().size() > 0) {
+            for (Map<String, Object> map : orgVO.getWarehouseList()) {
+                // 获取显示顺序
+                Map<String, Object> paramOrgWh=new HashMap<>();
+                paramOrgWh.put("noFlgValid",true);
+                Integer orgWhDisplayNo = commonService.getMaxDisplayNo(Constant.DisplayNoTable.ORGWH,paramOrgWh);
+                OrgWh orgWh = new OrgWh();
+                orgWh.setOrgId(org.getOrgId()).setWhId(map.get("whId").toString()).setDisplayNo(orgWhDisplayNo)
+                        .setFlgDefault(Boolean.parseBoolean(map.get("ownerFlag").toString()));
+                orgWhMapper.insert(orgWh);
+            }
+        }
+
+        // 添加组织资金账户
+        if (orgVO.getMacList() != null && orgVO.getMacList().size() > 0) {
+            for (Map<String, Object> map : orgVO.getMacList()) {
+                // 获取显示顺序
+                Map<String, Object> paramOrgMac=new HashMap<>();
+                paramOrgMac.put("noFlgValid",true);
+                Integer orgMacDisplayNo = commonService.getMaxDisplayNo(Constant.DisplayNoTable.ORGMAC,paramOrgMac);
+                OrgMac orgMac=new OrgMac();
+                orgMac.setOrgId(org.getOrgId()).setMacId(map.get("macId").toString()).setDisplayNo(orgMacDisplayNo)
+                        .setFlgDefault(Boolean.parseBoolean(map.get("ownerFlag").toString()));
+                orgMacMapper.insert(orgMac);
+            }
+        }
+
+        return ResponseResultUtil.success();
+    }
 }