Просмотр исходного кода

Merge remote-tracking branch 'origin/master'

姜永辉 2 лет назад
Родитель
Сommit
d7b306680f

+ 28 - 0
src/main/java/com/dk/mdm/controller/common/CommonController.java

@@ -620,6 +620,34 @@ public class CommonController extends BaseController<Map<String, Object>> {
     public ResponseResultVO<PageList<Map<String, Object>>> getMoneyAccountByPage(@RequestBody Map<String, Object> param) {
     public ResponseResultVO<PageList<Map<String, Object>>> getMoneyAccountByPage(@RequestBody Map<String, Object> param) {
         return commonService.getMoneyAccountByPage(param);
         return commonService.getMoneyAccountByPage(param);
     }
     }
+
+    /**
+     * @desc   : 获取多业务部门
+     * @author : 付斌
+     * @date   : 2024-03-20 16:54
+     */
+    @ApiOperation(
+            value = "获取多业务部门",
+            notes = "获取多业务部门"
+    )
+    @PostMapping("get_multi_org")
+    public ResponseResultVO<List<Map<String, Object>>> selectMultiOrg(@RequestBody Map<String, Object> param) {
+        return commonService.selectMultiOrg(param);
+    }
+
+    /**
+     * @desc   : 获取多业务员
+     * @author : 付斌
+     * @date   : 2024-03-20 16:54
+     */
+    @ApiOperation(
+            value = "获取多业务员",
+            notes = "获取多业务员"
+    )
+    @PostMapping("get_multi_staff")
+    public ResponseResultVO<List<Map<String, Object>>> selectMultiStaff(@RequestBody Map<String, Object> param) {
+        return commonService.selectMultiStaff(param);
+    }
 }
 }
 
 
 
 

+ 14 - 0
src/main/java/com/dk/mdm/controller/mst/StaffController.java

@@ -217,4 +217,18 @@ public class StaffController {
         return staffService.getInfoAfterLogin(param);
         return staffService.getInfoAfterLogin(param);
     }
     }
 
 
+    /**
+     * @desc : 退出登录
+     * @author : 周兴
+     * @date : 2024/3/18 12:47
+     */
+    @ApiOperation(
+            value = "退出登录",
+            notes = "退出登录"
+    )
+    @PostMapping("logout")
+    public ResponseResultVO<Boolean> logout(@RequestBody Map<String, Object> param) {
+        return staffService.logout(param);
+    }
+
 }
 }

+ 24 - 0
src/main/java/com/dk/mdm/controller/sale/MultiOwnerController.java

@@ -0,0 +1,24 @@
+package com.dk.mdm.controller.sale;
+
+import com.dk.mdm.model.pojo.sale.MultiOwner;
+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.sale.MultiOwnerService;
+
+@Api(tags = "多业务归属API接口")
+@RestController
+@RequestMapping("/multiOwner")
+public class MultiOwnerController{
+
+    public BaseService<MultiOwner> getService() {
+        return multiOwnerService;
+    }
+
+    @Autowired
+    private MultiOwnerService multiOwnerService;
+
+}

+ 14 - 0
src/main/java/com/dk/mdm/mapper/common/CommonMapper.java

@@ -437,4 +437,18 @@ public interface CommonMapper extends BaseMapper<Map<String, Object>> {
      * @date : 2024-03-05 10:52
      * @date : 2024-03-05 10:52
      */
      */
     Long getMoneyAccountCountByPage(Map param);
     Long getMoneyAccountCountByPage(Map param);
+
+    /**
+     * @desc   : 获取多业务部门
+     * @author : 付斌
+     * @date   : 2024-03-20 16:52
+     */
+    List<Map<String, Object>> selectMultiOrg(Map param);
+
+    /**
+     * @desc   : 获取多业务员
+     * @author : 付斌
+     * @date   : 2024-03-20 16:52
+     */
+    List<Map<String, Object>> selectMultiStaff(Map param);
 }
 }

+ 64 - 0
src/main/java/com/dk/mdm/mapper/common/CommonMapper.xml

@@ -1294,4 +1294,68 @@
             AND tmma.mac_name LIKE concat('%',my_ex.likequery(#{macName}),'%')
             AND tmma.mac_name LIKE concat('%',my_ex.likequery(#{macName}),'%')
         </if>
         </if>
     </select>
     </select>
+
+    <!-- 查询表core.t_m_organization,查询业务部门多业务归属 -->
+    <select id="selectMultiOrg" resultType="java.util.Map">
+        select t.org_id                                                                    as "orgId",
+               t.org_code                                                                  as "orgCode",
+               t.org_name                                                                  as "orgName",
+               case when mo.allocation_ratio is null then 100 else mo.allocation_ratio end as "allocationRatio",
+               case when mo.multi_id is null then 0 else 1 end                             as "selectFlag",
+               case when mo.owner_type = '归属类型-主部门' then true else false end           as "ownerFlag"
+        from dkic_b.t_mst_org t
+                 left join (SELECT tpmo.owner_id, tpmo.allocation_ratio, tpmo.multi_id, tpmo.owner_type
+                            from dkic_b.t_psi_order tpo
+                                     inner join dkic_b.t_psi_multi_owner tpmo
+                                                on tpo.order_id = tpmo.order_id
+                            where tpmo.flg_valid
+                              and tpmo.owner_type = any (array ['归属类型-主部门' , '归属类型-从部门'])
+                              and tpo.order_id = #{orderId}) mo
+                           on mo.owner_id = t.org_id
+        where t.flg_valid
+
+        <if test="orgCode !=null and orgCode !=''">
+            AND t.org_code LIKE concat('%',my_ex.likequery(#{orgCode}),'%')
+        </if>
+        <if test="orgName !=null and orgName !=''">
+            AND t.org_name LIKE concat('%',my_ex.likequery(#{orgName}),'%')
+        </if>
+        <if test="pageSize != null and currentPage != null and pageSize != 0 and currentPage != 0">
+            limit #{end} offset #{start}
+        </if>
+    </select>
+
+    <!-- 查询表core.t_m_user,查询员工多业务归属 -->
+    <select id="selectMultiStaff" resultType="java.util.Map">
+        select t.staff_id                                                                  as "staffId",
+               t.staff_code                                                                as "staffCode",
+               t.staff_name                                                                as "staffName",
+               tmo.org_name                                                                as "orgName",
+               case when mo.allocation_ratio is null then 100 else mo.allocation_ratio end as "allocationRatio",
+               case when mo.multi_id is null then 0 else 1 end                             as "selectFlag",
+               case when mo.owner_type = '归属类型-主员工' then true else false end               as "ownerFlag"
+        from dkic_b.t_mst_staff t
+                 left join dkic_b.t_mst_org as tmo on tmo.org_id = t.org_id
+                 left join (SELECT tpmo.owner_id, tpmo.allocation_ratio, tpmo.multi_id, tpmo.owner_type
+                            from dkic_b.t_psi_order tpo
+                                     inner join dkic_b.t_psi_multi_owner tpmo
+                                                on tpo.order_id = tpmo.order_id
+                            where tpmo.flg_valid
+                              and tpmo.owner_type = any (array ['归属类型-主员工' , '归属类型-从员工'])
+                              and tpo.order_id = #{orderId}) mo
+                           on mo.owner_id = t.staff_id
+        where t.flg_valid
+
+        <if test="staffCode!=null and staffCode!='' ">
+            and t.staff_code LIKE concat('%',my_ex.likequery(#{staffCode}),'%')
+        </if>
+        <if test="staffName!=null and staffName!='' ">
+            and t.staff_name LIKE concat('%',my_ex.likequery(#{staffName}),'%')
+        </if>
+        <if test="pageSize != null and currentPage != null and pageSize != 0 and currentPage != 0">
+            limit #{end} offset #{start}
+        </if>
+    </select>
+
+
 </mapper>
 </mapper>

+ 14 - 0
src/main/java/com/dk/mdm/mapper/sale/MultiOwnerMapper.java

@@ -0,0 +1,14 @@
+package com.dk.mdm.mapper.sale;
+
+import com.dk.mdm.model.pojo.sale.MultiOwner;
+import com.dk.common.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+/**
+*  多业务归属 Mapper
+*/
+@Repository
+public interface MultiOwnerMapper extends BaseMapper<MultiOwner>{
+	
+}
+

+ 153 - 0
src/main/java/com/dk/mdm/mapper/sale/MultiOwnerMapper.xml

@@ -0,0 +1,153 @@
+<?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.sale.MultiOwnerMapper">
+
+    <!-- 通用设置 -->
+    <!-- 通用查询列 -->
+    <sql id="Base_Column_List">
+        multi_id, order_id, owner_type, owner_id, allocation_ratio, 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.sale.MultiOwner">
+        <id column="multi_id" property="multiId"/>
+                <result column="order_id" property="orderId" typeHandler="UuidTypeHandler"/>
+                <result column="owner_type" property="ownerType"/>
+                <result column="owner_id" property="ownerId" typeHandler="UuidTypeHandler"/>
+                <result column="allocation_ratio" property="allocationRatio"/>
+                <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="orderId != null and orderId != ''">
+                AND order_id = #{orderId}
+            </if>
+            <if test="ownerType != null and ownerType != ''">
+                AND owner_type = #{ownerType}
+            </if>
+            <if test="ownerId != null and ownerId != ''">
+                AND owner_id = #{ownerId}
+            </if>
+            <if test="allocationRatio != null">
+                AND allocation_ratio = #{allocationRatio}
+            </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">
+        <!-- 根据主键multiId批量操作 -->
+        WHERE multi_id in
+        <foreach collection="ids" index="index" item="item" separator="," open="(" close=")">
+            #{item}
+        </foreach>
+    </sql>
+
+    <!-- 查询表t_psi_multi_owner,(条件查询+分页)列表 -->
+    <select id="selectByCond" resultMap="BaseResultMap">
+        SELECT
+        <include refid="Base_Column_List"/>
+        FROM t_psi_multi_owner
+        <include refid="Condition"/>
+        <if test="pageSize != null and currentPage != null and pageSize != 0 and currentPage != 0">
+            limit #{end} offset #{start}
+        </if>
+    </select>
+
+    <!-- 查询表t_psi_multi_owner,(条件查询)个数 -->
+    <select id="countByCond" resultType="Long">
+        SELECT
+        count(1)
+        FROM t_psi_multi_owner
+        <include refid="Condition"/>
+    </select>
+
+    <!-- 根据主键查询表t_psi_multi_owner的一行数据 -->
+    <select id="selectById" resultMap="BaseResultMap">
+        SELECT
+        <include refid="Base_Column_List"/>
+        FROM t_psi_multi_owner
+        WHERE multi_id = #{multiId}::uuid
+    </select>
+
+    <!-- 根据主键锁定表t_psi_multi_owner的一行数据 -->
+    <select id="selectByIdForUpdate" resultMap="BaseResultMap">
+        SELECT
+        <include refid="Base_Column_List"/>
+        FROM t_psi_multi_owner
+        WHERE multi_id = #{id}::uuid
+        for update
+    </select>
+
+    <!-- 根据主键锁定表t_psi_multi_owner的多行数据 -->
+    <select id="selectByIdsForUpdate" resultMap="BaseResultMap">
+        SELECT
+        <include refid="Base_Column_List"/>
+        FROM t_psi_multi_owner
+        <include refid="idsForeach"/>
+        for update
+    </select>
+
+    <insert id="insertBatch">
+        insert into t_psi_multi_owner
+        (
+        <trim suffixOverrides=",">
+            order_id,
+            owner_type,
+            owner_id,
+            allocation_ratio,
+            cp_id,
+            op_app_code,
+        </trim>
+        )
+        values
+        <foreach collection="list" index="index" item="item" separator=",">
+            (
+            <trim suffixOverrides=",">
+                #{item.orderId}::uuid,
+                #{item.ownerType},
+                #{item.ownerId}::uuid,
+                #{item.allocationRatio},
+                #{item.cpId},
+                #{item.opAppCode},
+            </trim>
+            )
+        </foreach>
+    </insert>
+</mapper>

+ 178 - 0
src/main/java/com/dk/mdm/model/pojo/sale/MultiOwner.java

@@ -0,0 +1,178 @@
+package com.dk.mdm.model.pojo.sale;
+
+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.util.List;
+import java.time.LocalDateTime;
+
+/**
+ *  多业务归属
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@ExportTitle("多业务归属")
+@TableName(value = "t_psi_multi_owner", autoResultMap = true)
+@ApiModel(value="实体类:多业务归属", description="表名:t_psi_multi_owner")
+public class MultiOwner extends PageInfo<MultiOwner> implements Serializable {
+
+    /*
+     * 数据库字段
+     */
+
+    /**
+     * 多业务ID
+     */
+//    @TableId(value = "multi_id", type = IdType.AUTO)
+    @ApiModelProperty(value = "多业务ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String multiId;
+
+
+    /**
+     * 订单Id
+     */
+    @Excel(name = "订单Id")
+    @ApiModelProperty(value = "订单Id")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String orderId;
+
+
+    /**
+     * 归属类型 (【系统字典】)
+     */
+    @Excel(name = "归属类型 (【系统字典】)")
+    @ApiModelProperty(value = "归属类型 (【系统字典】)")
+    private String ownerType;
+
+
+    /**
+     * 归属ID
+     */
+    @Excel(name = "归属ID")
+    @ApiModelProperty(value = "归属ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String ownerId;
+
+
+    /**
+     * 分配比例
+     */
+    @Excel(name = "分配比例")
+    @ApiModelProperty(value = "分配比例")
+    private BigDecimal allocationRatio;
+
+
+    /**
+     * 有效标识 (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;
+
+}

+ 9 - 2
src/main/java/com/dk/mdm/model/vo/sale/OrderVO.java

@@ -25,9 +25,10 @@ import java.math.BigDecimal;
 import java.time.LocalDate;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
 import java.util.List;
 import java.util.List;
+import java.util.Map;
 
 
 /**
 /**
- *  销售订单
+ * 销售订单
  */
  */
 @Data
 @Data
 @AllArgsConstructor
 @AllArgsConstructor
@@ -36,7 +37,7 @@ import java.util.List;
 @Accessors(chain = true)
 @Accessors(chain = true)
 @ExportTitle("销售订单")
 @ExportTitle("销售订单")
 @TableName(value = "t_psi_order", autoResultMap = true)
 @TableName(value = "t_psi_order", autoResultMap = true)
-@ApiModel(value="实体类:销售订单", description="表名:t_psi_order")
+@ApiModel(value = "实体类:销售订单", description = "表名:t_psi_order")
 public class OrderVO extends PageInfo<OrderVO> implements Serializable {
 public class OrderVO extends PageInfo<OrderVO> implements Serializable {
 
 
     /*
     /*
@@ -413,6 +414,12 @@ public class OrderVO extends PageInfo<OrderVO> implements Serializable {
     @ApiModelProperty(value = "删除明细")
     @ApiModelProperty(value = "删除明细")
     private List<OrderItemVO> deleteItemList;
     private List<OrderItemVO> deleteItemList;
 
 
+    @ApiModelProperty(value = "部门明细")
+    private List<Map<String, Object>> orgList;
+
+    @ApiModelProperty(value = "员工明细")
+    private List<Map<String, Object>> staffList;
+
     @ApiModelProperty(value = "客户编号")
     @ApiModelProperty(value = "客户编号")
     private String cusCode;
     private String cusCode;
 
 

+ 20 - 0
src/main/java/com/dk/mdm/service/common/CommonService.java

@@ -838,4 +838,24 @@ public class CommonService extends BaseService<Map<String, Object>> {
         return super.mergeListWithCount(param, commonMapper.getMoneyAccount(param),
         return super.mergeListWithCount(param, commonMapper.getMoneyAccount(param),
                 commonMapper.getMoneyAccountCountByPage(param));
                 commonMapper.getMoneyAccountCountByPage(param));
     }
     }
+
+    /**
+     * @desc   : 获取多业务部门
+     * @author : 付斌
+     * @date   : 2024-03-20 16:54
+     */
+    public ResponseResultVO<List<Map<String, Object>>> selectMultiOrg(Map<String, Object> param) {
+        List<Map<String, Object>> list = commonMapper.selectMultiOrg(param);
+        return ResponseResultUtil.success(list);
+    }
+
+    /**
+     * @desc   : 获取多业务员
+     * @author : 付斌
+     * @date   : 2024-03-20 16:54
+     */
+    public ResponseResultVO<List<Map<String, Object>>> selectMultiStaff(Map<String, Object> param) {
+        List<Map<String, Object>> list = commonMapper.selectMultiStaff(param);
+        return ResponseResultUtil.success(list);
+    }
 }
 }

+ 14 - 0
src/main/java/com/dk/mdm/service/mst/StaffService.java

@@ -287,6 +287,7 @@ public class StaffService extends BaseService<Staff> {
         }else{
         }else{
             return ResponseResultUtil.error(ErrorCodeEnum.STAFF_NOT_EXIST.getCode(), ErrorCodeEnum.STAFF_NOT_EXIST.getMessage());
             return ResponseResultUtil.error(ErrorCodeEnum.STAFF_NOT_EXIST.getCode(), ErrorCodeEnum.STAFF_NOT_EXIST.getMessage());
         }
         }
+
         // 获取菜单
         // 获取菜单
         List menuList = commonMapper.getMenuByUser(param);
         List menuList = commonMapper.getMenuByUser(param);
         Dictionary<String,Object> dic = new Hashtable<>();
         Dictionary<String,Object> dic = new Hashtable<>();
@@ -295,4 +296,17 @@ public class StaffService extends BaseService<Staff> {
         return ResponseResultUtil.success(dic);
         return ResponseResultUtil.success(dic);
     }
     }
 
 
+    /**
+     * @desc : 退出登录
+     * @author : 周兴
+     * @date : 2024-03-18 09:03
+     */
+    @Transactional(
+            rollbackFor = {Exception.class}
+    )
+    public ResponseResultVO<Boolean> logout(Map<String, Object> param) {
+        // 更新员工登录状态
+        this.updateByUuid(new Staff().setStaffId(param.get("staffId").toString()).setFlgCanLogin(false));
+        return ResponseResultUtil.success(true);
+    }
 }
 }

+ 28 - 0
src/main/java/com/dk/mdm/service/sale/MultiOwnerService.java

@@ -0,0 +1,28 @@
+package com.dk.mdm.service.sale;
+
+import com.dk.mdm.model.pojo.sale.MultiOwner;
+import com.dk.mdm.mapper.sale.MultiOwnerMapper;
+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 MultiOwnerService extends BaseService<MultiOwner> {
+
+	@Override
+	public String getPrimaryKey() {
+		return "multi_id";
+	}
+
+	@Override
+	public BaseMapper<MultiOwner> getRepository() {
+		return multiOwnerMapper;
+	}
+
+	@Autowired
+	private MultiOwnerMapper multiOwnerMapper;
+
+}