Pārlūkot izejas kodu

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

于继渤 1 gadu atpakaļ
vecāks
revīzija
a7df22e63b

+ 13 - 3
src/main/java/com/dk/mdm/mapper/ivt/CheckMapper.xml

@@ -137,8 +137,18 @@
     <!-- 盘点一览查询条件 -->
     <sql id="Condition_Respons">
         <where>
+            <if test="staffName != null and staffName != ''">
+                AND  staff.staff_name  LIKE concat('%',my_ex.likequery(#{staffName}),'%')
+            </if>
+            <if test="orgName != null and orgName != ''">
+                AND  org.org_name LIKE concat('%',my_ex.likequery(#{orgName}),'%')
+            </if>
             <if test="checkNo != null and checkNo != ''">
-                AND ck.check_no = LIKE concat('%',my_ex.likequery(#{checkNo}),'%')
+                AND ck.check_no LIKE concat('%',my_ex.likequery(#{checkNo}),'%')
+            </if>
+
+            <if test="coilingStateList != null and coilingStateList.size()>0">
+                AND ck.check_status =any(#{coilingStateList,typeHandler=StringListTypeHandler})
             </if>
             <if test="orgId != null and orgId != ''">
                 AND ck.org_id = #{orgId}
@@ -183,8 +193,8 @@
                 AND   ck.check_no LIKE concat('%',my_ex.likequery(#{searchText}), '%')
             </if>
             <if test="makeTimeStart != null and makeTimeEnd != null">
-                AND tpi.make_time &gt;= #{makeTimeStart}::timestamp with time zone
-                AND tpi.make_time &lt; #{makeTimeEnd}::timestamp with time zone + interval '1 day'
+                AND ck.make_time &gt;= #{makeTimeStart}::timestamp with time zone
+                AND ck.make_time &lt; #{makeTimeEnd}::timestamp with time zone + interval '1 day'
             </if>
         </where>
     </sql>

+ 34 - 4
src/main/java/com/dk/mdm/mapper/ivt/FreezeMapper.xml

@@ -72,6 +72,33 @@
       <!-- 通用条件列 -->
     <sql id="Condition">
         <where>
+            <if test="cusPhone != null and cusPhone != ''">
+                AND cus.cus_phone like concat('%', my_ex.likequery(#{cusPhone}) , '%')
+            </if>
+            <if test="cusName != null and cusName != ''">
+                AND cus.cus_name LIKE concat('%',my_ex.likequery(#{cusName}),'%')
+            </if>
+            <if test="searchText !=null">
+                AND   fre.freeze_no LIKE concat('%',my_ex.likequery(#{searchText}), '%')
+            </if>
+            <if test="freezeDateSStart != null and freezeDateSEnd != null">
+                AND fre.freeze_date &gt;= #{freezeDateSStart}::timestamp with time zone
+                AND fre.freeze_date &lt; #{freezeDateSEnd}::timestamp with time zone + interval '1 day'
+            </if>
+            <if test="autoUnfreezeDateSStart != null and autoUnfreezeDateSEnd != null">
+                AND fre.auto_unfreeze_date &gt;= #{autoUnfreezeDateSStart}::timestamp with time zone
+                AND fre.auto_unfreeze_date &lt; #{autoUnfreezeDateSEnd}::timestamp with time zone + interval '1 day'
+            </if>
+            <if test="makeTimeStart != null and makeTimeEnd != null">
+                AND fre.make_time &gt;= #{makeTimeStart}::timestamp with time zone
+                AND fre.make_time &lt; #{makeTimeEnd}::timestamp with time zone + interval '1 day'
+            </if>
+            <if test="staffName != null and staffName != ''">
+                AND  staff.staff_name  LIKE concat('%',my_ex.likequery(#{staffName}),'%')
+            </if>
+            <if test="orgName != null and orgName != ''">
+                AND  org.org_name LIKE concat('%',my_ex.likequery(#{orgName}),'%')
+            </if>
             <if test="freezeNo != null and freezeNo != ''">
                 AND fre.freeze_no LIKE concat('%',my_ex.likequery(#{freezeNo}),'%')
             </if>
@@ -108,11 +135,9 @@
             <if test="staffIdList != null and staffIdList.size>0">
                 AND fre.staff_id = any(#{staffIdList, typeHandler=UuidListTypeHandler})
             </if>
-            <if test="cusName != null and cusName != ''">
-                AND cus.cus_name LIKE concat('%',my_ex.likequery(#{cusName}),'%')
-            </if>
+
             <if test="freezeStatusList != null and freezeStatusList.size() > 0">
-                AND fre.freeze_status = any(#{freezeStatusList, typeHandler=UuidListTypeHandler})
+                AND fre.freeze_status = any(#{freezeStatusList, typeHandler=StringListTypeHandler})
             </if>
         </where>
     </sql>
@@ -138,6 +163,11 @@
         SELECT
         count(1)
         FROM dkic_b.t_psi_freeze AS fre
+        lEFT JOIN dkic_b.t_mst_customer AS cus ON cus.cus_id=fre.cus_id
+        lEFT JOIN dkic_b.t_mst_staff AS staff ON  staff.staff_id=fre.staff_id
+        lEFT JOIN dkic_b.t_mst_org AS org ON org.org_id=fre.org_id
+        lEFT JOIN dkic_b.t_mst_staff AS mstaff ON mstaff.staff_id=fre.make_staff
+        LEFT JOIN sys.t_data_kind AS tdk  ON tdk.kind_code = fre.freeze_status
         <include refid="Condition"/>
     </select>
 

+ 30 - 4
src/main/java/com/dk/mdm/mapper/ivt/TransferMapper.xml

@@ -151,8 +151,31 @@
     <!-- 一览条件列 -->
     <sql id="Condition_Response">
         <where>
+            <if test="oWhName != null and oWhName != ''">
+                AND  otmw.wh_name  LIKE concat('%',my_ex.likequery(#{oWhName}),'%')
+            </if>
+            <if test="whName != null and whName != ''">
+                AND  tmw.wh_name  LIKE concat('%',my_ex.likequery(#{whName}),'%')
+            </if>
+            <if test="staffName != null and staffName != ''">
+                AND  staff.staff_name  LIKE concat('%',my_ex.likequery(#{staffName}),'%')
+            </if>
+            <if test="orgName != null and orgName != ''">
+                AND  org.org_name LIKE concat('%',my_ex.likequery(#{orgName}),'%')
+            </if>
+            <if test="makeTimeStart != null and makeTimeEnd != null">
+                AND trf.make_time &gt;= #{makeTimeStart}::timestamp with time zone
+                AND trf.make_time &lt; #{makeTimeEnd}::timestamp with time zone + interval '1 day'
+            </if>
+            <if test="transferDateWStart != null and transferDateWEnd != null">
+                AND trf.transfer_date &gt;= #{transferDateWStart}::timestamp with time zone
+                AND trf.transfer_date &lt; #{transferDateWEnd}::timestamp with time zone + interval '1 day'
+            </if>
+            <if test="transferTypeList != null and transferTypeList.size()>0">
+                AND trf.transfer_type =any(#{transferTypeList,typeHandler=StringListTypeHandler})
+            </if>
             <if test="transferNo != null and transferNo != ''">
-                AND trf.transfer_no = LIKE concat('%',my_ex.likequery(#{transferNo}),'%')
+                AND trf.transfer_no  LIKE concat('%',my_ex.likequery(#{transferNo}),'%')
             </if>
             <if test="transferDate != null">
                 AND trf.transfer_date = #{transferDate}
@@ -164,13 +187,13 @@
                 AND wh_id = #{whId}
             </if>
             <if test="oNonStdCode != null and oNonStdCode != ''">
-                AND o_non_std_code = #{oNonStdCode}
+                AND o_non_std_code LIKE concat('%',my_ex.likequery(#{oNonStdCode}),'%')
             </if>
             <if test="nonStdCode != null and nonStdCode != ''">
-                AND non_std_code = #{nonStdCode}
+                AND non_std_code LIKE concat('%',my_ex.likequery(#{nonStdCode}),'%')
             </if>
             <if test="remarks != null and remarks != ''">
-                AND trf.remarks = #{remarks}
+                AND trf.remarks  LIKE concat('%',my_ex.likequery(#{remarks}),'%')
             </if>
             <if test="cpId != null">
                 AND trf.cp_id = #{cpId}
@@ -184,6 +207,9 @@
             <if test="staffIdList != null and staffIdList.size>0">
                 AND trf.staff_id = any(#{staffIdList, typeHandler=UuidListTypeHandler})
             </if>
+            <if test="searchText !=null">
+                AND   trf.transfer_no LIKE concat('%',my_ex.likequery(#{searchText}), '%')
+            </if>
         </where>
     </sql>
 

+ 4 - 4
src/main/java/com/dk/mdm/mapper/mst/GoodsCategoryMapper.xml

@@ -188,8 +188,8 @@
             parent_id,
             display_no,
             top_id,
-            level_upper,
-            level_lower,
+                level_upper,
+                level_lower,
             level_leaf,
             level_no,
             level_code,
@@ -208,8 +208,8 @@
                 #{item.parentId}::uuid,
                 #{item.displayNo},
                 #{item.topId}::uuid,
-                #{item.levelUpper},
-                #{item.levelLower},
+                #{item.levelUpper}::uuid[],
+                #{item.levelLower}::uuid[],
                 #{item.levelLeaf},
                 #{item.levelNo},
                 #{item.levelCode},

+ 2 - 0
src/main/java/com/dk/mdm/mapper/mst/RoleFunMapper.java

@@ -20,5 +20,7 @@ public interface RoleFunMapper extends BaseMapper<RoleFun>{
     List<Map<String, Object>> getRoleFun(Map param);
 
     int deleteRoleId(RoleFun roleFun);
+
+    int insertRoleFunFeign(RoleFun roleFun);
 }
 

+ 14 - 0
src/main/java/com/dk/mdm/mapper/mst/RoleFunMapper.xml

@@ -169,6 +169,20 @@
         for update
     </select>
 
+    <insert id="insertRoleFunFeign">
+        insert into dkic_b.t_mst_role_fun
+        (
+            role_id,
+            fun_uuid,
+            app_code,
+            cp_id,
+            op_create_user_id,
+            op_app_code
+        )
+        SELECT #{roleId}::uuid , f.fun_uuid,f.app_code,#{cpId} ,#{opCreateUserId}::uuid , f.app_code as op_app_code  from  sys.t_function f
+        where  f.flg_valid
+    </insert>
+
     <insert id="insertBatch">
         insert into dkic_b.t_mst_role_fun
         (

+ 4 - 6
src/main/java/com/dk/mdm/mapper/mst/RoleMapper.xml

@@ -188,6 +188,7 @@
         insert into dkic_b.t_mst_role
         (
         <trim suffixOverrides=",">
+            role_id,
             role_name,
             role_code,
             display_no,
@@ -195,15 +196,14 @@
             cp_id,
             op_app_code,
             sys_code,
-            flg_nolimit_fun,
-            flg_nolimit_pvw,
-            flg_nolimit_sen,
+            op_create_user_id,
         </trim>
         )
         values
         <foreach collection="list" index="index" item="item" separator=",">
             (
             <trim suffixOverrides=",">
+                #{item.roleId}::uuid,
                 #{item.roleName},
                 #{item.roleCode},
                 #{item.displayNo},
@@ -211,9 +211,7 @@
                 #{item.cpId},
                 #{item.opAppCode},
                 #{item.sysCode},
-                #{item.flgNolimitFun},
-                #{item.flgNolimitPvw},
-                #{item.flgNolimitSen},
+                #{item.opCreateUserId}::uuid,
             </trim>
             )
         </foreach>

+ 18 - 0
src/main/java/com/dk/mdm/model/query/ivt/CheckQuery.java

@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.annotation.*;
 import com.dk.common.infrastructure.annotaiton.ExportTitle;
 import com.dk.common.infrastructure.handler.JsonTypeHandler;
+import com.dk.common.infrastructure.handler.StringListTypeHandler;
 import com.dk.common.infrastructure.handler.TimestampTypeHandler;
 import com.dk.common.infrastructure.handler.UuidTypeHandler;
 import com.dk.common.model.pojo.PageInfo;
@@ -47,7 +48,24 @@ public class CheckQuery extends PageInfo<CheckQuery> implements Serializable {
     @TableField(typeHandler = UuidTypeHandler.class)
     private String checkId;
 
+    /**
+     * 员工名称
+     */
+    @Excel(name = "员工名称")
+    @ApiModelProperty(value = "员工名称")
+    private String staffName;
+
+    private String searchText;
 
+    @ApiModelProperty(value = "部门名称")
+    @TableField(exist = false)
+    private String orgName;
+    /**
+     * 盘点状态
+     */
+    @ApiModelProperty(value = "盘点状态")
+    @TableField(typeHandler = StringListTypeHandler.class)
+    private List<String> coilingStateList;
     /**
      * 附件 (index(显示顺序)、name(文件名)、path(路径)、type(类型)、time(上传时间)...)
      */

+ 38 - 0
src/main/java/com/dk/mdm/model/query/ivt/FreezeQuery.java

@@ -40,6 +40,41 @@ public class FreezeQuery extends PageInfo<FreezeQuery> implements Serializable {
      * 数据库字段
      */
 
+    @ApiModelProperty(value = "时间开始")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate makeTimeStart;
+
+    @ApiModelProperty(value = "时间结束")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate makeTimeEnd;
+
+    @ApiModelProperty(value = "时间开始")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate freezeDateSStart;
+
+    @ApiModelProperty(value = "时间结束")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate freezeDateSEnd;
+
+    @ApiModelProperty(value = "时间开始")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate autoUnfreezeDateSStart;
+
+    @ApiModelProperty(value = "时间结束")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate autoUnfreezeDateSEnd;
+
+    private String searchText;
+    /**
+     * 员工名称
+     */
+    @Excel(name = "员工名称")
+    @ApiModelProperty(value = "员工名称")
+    private String staffName;
+
+    @ApiModelProperty(value = "部门名称")
+    @TableField(exist = false)
+    private String orgName;
     /**
      * 冻结ID
      */
@@ -268,6 +303,9 @@ public class FreezeQuery extends PageInfo<FreezeQuery> implements Serializable {
     @ApiModelProperty(value = "客户名称")
     private String cusName;
 
+    @ApiModelProperty(value = "客户电话")
+    private String cusPhone;
+
     /**
      * @desc   : 冻结状态
      * @author : 宋扬

+ 49 - 0
src/main/java/com/dk/mdm/model/query/ivt/TransferQuery.java

@@ -9,6 +9,7 @@ import com.dk.common.infrastructure.handler.TimestampTypeHandler;
 import com.dk.common.infrastructure.handler.UuidTypeHandler;
 import com.dk.common.model.pojo.PageInfo;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
@@ -18,6 +19,7 @@ import lombok.NoArgsConstructor;
 import lombok.experimental.Accessors;
 
 import java.io.Serializable;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.util.List;
 
@@ -61,7 +63,54 @@ public class TransferQuery extends PageInfo<TransferQuery> implements Serializab
     @ApiModelProperty(value = "调整单号")
     private String transferNo;
 
+    @ApiModelProperty(value = "入库时间开始")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate makeTimeStart;
 
+    @ApiModelProperty(value = "入库时间结束")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate makeTimeEnd;
+
+    @ApiModelProperty(value = "调整日期开始")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate transferDateWStart;
+
+    @ApiModelProperty(value = "调整日期结束")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private LocalDate transferDateWEnd;
+
+    private String searchText;
+
+    /**
+     * 员工名称
+     */
+    @Excel(name = "员工名称")
+    @ApiModelProperty(value = "员工名称")
+    private String staffName;
+
+    @ApiModelProperty(value = "部门名称")
+    @TableField(exist = false)
+    private String orgName;
+
+    /**
+     * 原仓库名称
+     */
+    @Excel(name = "原仓库名称")
+    @ApiModelProperty(value = "原仓库名称")
+    @JsonProperty(value = "oWhName")
+    private String oWhName;
+
+    /**
+     * 仓库名称
+     */
+    @Excel(name = "仓库名称")
+    @ApiModelProperty(value = "仓库名称")
+    @JsonProperty(value = "whName")
+    private String whName;
+
+
+    @ApiModelProperty(value = "调整类型")
+    private List<String> transferTypeList;
     /**
      * 调整类型 (【系统字典】调整类型(库区调整、批号调整))
      */

+ 24 - 2
src/main/java/com/dk/mdm/model/vo/mst/GoodsSkuVO.java

@@ -46,8 +46,18 @@ public class GoodsSkuVO implements Serializable {
     @ApiModelProperty(value = "商品ID")
     @TableField(typeHandler = UuidTypeHandler.class)
     private String skuId;
-
-
+    /**
+     * 非标号
+     */
+    @Excel(name = "非标号")
+    @ApiModelProperty(value = "非标号")
+    private String nonStdCode;
+    /**
+     * 仓库ID
+     */
+    @ApiModelProperty(value = "仓库ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String whId;
     /**
      * 商品编号
      */
@@ -55,6 +65,18 @@ public class GoodsSkuVO implements Serializable {
     @ApiModelProperty(value = "商品编号")
     private String skuCode;
 
+    /**
+     * 入库数量 (流入为正数,流出为负数)
+     */
+    @ApiModelProperty(value = "入库数量 (流入为正数,流出为负数)")
+    private BigDecimal intoQty;
+
+
+    /**
+     * 入库金额
+     */
+    @ApiModelProperty(value = "入库金额")
+    private BigDecimal intoAmt;
 
     /**
      * 商品名称

+ 36 - 0
src/main/java/com/dk/mdm/service/ivt/inventory/InventoryService.java

@@ -901,6 +901,42 @@ public class InventoryService extends BaseService<Inventory> {
     }
 
     /**
+     * @desc : 新建
+     * @date : 2024/4/10 15:27
+     * @author : 王英杰
+     */
+    @Transactional(
+            rollbackFor = {Exception.class}
+    )
+    public InOutRecordVO insertInventoryw(InOutRecordVO inOutRecordVO) {
+        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(), BigDecimal.ROUND_HALF_UP));
+
+
+        //新建
+        inventoryMapper.insert(inventory);
+        //仓库Id赋值
+        inOutRecordVO.setInvId(inventory.getInvId());
+
+        return inOutRecordVO;
+
+    }
+
+
+    /**
      * @desc : 出库成本
      * @date : 2024/3/22 9:33
      * @author : 寇珊珊

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

@@ -15,9 +15,11 @@ import com.dk.mdm.model.query.mst.GoodsSkuQuery;
 import com.dk.mdm.model.query.mst.RoleQuery;
 import com.dk.mdm.model.response.mst.GoodsSkuResponse;
 import com.dk.mdm.model.response.mst.RoleResponse;
+import com.dk.mdm.model.vo.ivt.InOutRecordVO;
 import com.dk.mdm.model.vo.mst.GoodsSkuVO;
 import com.dk.mdm.model.vo.mst.RoleVo;
 import com.dk.mdm.service.common.CommonService;
+import com.dk.mdm.service.ivt.inventory.InventoryService;
 import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
@@ -39,6 +41,9 @@ public class GoodsSkuService extends BaseService<GoodsSku> {
 
 	@Autowired
 	private GoodsSkuConvert goodsSkuConvert;
+
+	@Autowired
+	InventoryService inventoryService;
  /**
      * @desc   : 重写组件
      * @author : 王英杰
@@ -78,6 +83,15 @@ public class GoodsSkuService extends BaseService<GoodsSku> {
 		goodsSku.setSkuId(codeMap.get("outId").toString());
 		goodsSku.setSkuCode(codeMap.get("outNote").toString());
 		super.insert(goodsSku);
+		InOutRecordVO inOutRecordVO = new InOutRecordVO();
+		inOutRecordVO.setWhId(goodsSkuVO.getWhId());
+		inOutRecordVO.setSkuId(goodsSku.getSkuId());
+		inOutRecordVO.setNonStdCode(goodsSkuVO.getNonStdCode());
+		inOutRecordVO.setIntoQty(goodsSkuVO.getIntoQty());
+		inOutRecordVO.setIntoAmt(goodsSkuVO.getIntoAmt());
+		if(inOutRecordVO.getWhId()!=null){
+			inventoryService.insertInventoryw(inOutRecordVO);
+		}
 		return ResponseResultUtil.success();
 	}
 	/**

+ 155 - 10
src/main/java/com/dk/mdm/service/mst/StaffService.java

@@ -16,9 +16,8 @@ import com.dk.mdm.feign.UserFeign;
 import com.dk.mdm.infrastructure.convert.mst.StaffConvert;
 import com.dk.mdm.infrastructure.util.AuthUtils;
 import com.dk.mdm.mapper.common.CommonMapper;
-import com.dk.mdm.mapper.mst.ComMenuMapper;
+import com.dk.mdm.mapper.mst.*;
 import com.dk.mdm.model.pojo.mst.*;
-import com.dk.mdm.mapper.mst.StaffMapper;
 import com.dk.common.service.BaseService;
 import com.dk.common.mapper.BaseMapper;
 import com.dk.mdm.model.query.mst.ComMenuQuery;
@@ -86,6 +85,21 @@ public class StaffService extends BaseService<Staff> {
 
     @Autowired
     private AuthUtils authUtils;
+    @Autowired
+    DictionaryDataMapper dictionaryDataMapper;
+    @Autowired
+    GoodsCategoryMapper goodsCategoryMapper;
+    @Autowired
+    RoleMapper roleMapper;
+    @Autowired
+    RoleFunMapper roleFunMapper;
+    @Autowired
+    UnitMapper unitMapper;
+    @Autowired
+    SaleChannelMapper saleChannelMapper;
+    @Autowired
+    WarehouseMapper warehouseMapper;
+
 
     /**
      * @desc : 条件查询
@@ -95,7 +109,7 @@ public class StaffService extends BaseService<Staff> {
     @Pagination
     public ResponseResultVO<PageList<StaffResponse>> selectByCond(StaffQuery staffQuery) {
         // 获取当前公司的cpId
-        if (staffQuery.getCpId()==null){
+        if (staffQuery.getCpId() == null) {
             Integer cpId = authUtils.getStaff().getCpId();
             staffQuery.setCpId(cpId);
         }
@@ -189,14 +203,145 @@ public class StaffService extends BaseService<Staff> {
 
     /**
      * @desc : 注册商户时候插入  角色 基础资料(仓库 渠道 收入 支出 入库 出库 账户 来源 盈亏原因) 计量单位 种类  打印票据  等等。
-     *         返回角色的数据
+     * 返回角色的数据
      * @author : 姜永辉
      * @date : 2023/1/9 10:49
      */
     @Transactional(rollbackFor = {Exception.class})
     public ResponseResultVO<?> insertFeignCompanyData(Map<String, List<Map<String, Object>>> map) {
+        // 公司
+        List<Map<String, Object>> listCom = map.get("company");
+        // 版本
+        String gradeCode = listCom.get(0).get("gradeCode").toString();
+        // 角色
+        List<Map<String, Object>> listRoles = map.get("roles");
+        List<Role> listR = new ArrayList<>();
+        String roleid = "";
+        Integer cpid = 0;
+        String staffid = "";
+        for (int i = 0; i < listRoles.size(); i++) {
+            Map<String, Object> m = listRoles.get(i);
+            Role role = new Role();
+            //设置编码
+            Map<String, Object> uniqueNoteCode = commonService.getUniqueNoteCode(Constant.docNameConstant.ROLE.getName(),(Integer) m.get("cpId"), false);
+            if (Constant.ROLE_DATA.equals(m.get("roleCode").toString())) {
+                roleid = uniqueNoteCode.get("outId").toString();
+                cpid = (Integer) m.get("cpId");
+                staffid = m.get("opCreateUserId").toString();
+            }
+            role.setRoleId(uniqueNoteCode.get("outId").toString());
+            role.setRoleCode(m.get("roleCode").toString());
+            role.setRoleName(m.get("roleName").toString());
+            role.setDisplayNo((Integer) m.get("displayNo"));
+            role.setCpId((Integer) m.get("cpId"));
+            role.setOpCreateUserId(m.get("opCreateUserId").toString());
+            listR.add(role);
+        }
+        roleMapper.insertBatch(listR);
+
+        // 更新用户的角色ids-
+        List<String> roleids = new ArrayList<>();
+        roleids.add(roleid);
+        this.updateByUuid(new Staff().setStaffId(staffid).setRoleIds(roleids));
+        // 角色权限
+        RoleFun roleFun = new RoleFun();
+        roleFun.setRoleId(roleid);
+        roleFun.setCpId(cpid);
+        roleFun.setOpCreateUserId(staffid);
+        roleFunMapper.insertRoleFunFeign(roleFun);
+        // 仓库
+        List<Map<String, Object>> listWarehouses = map.get("warehouses");
+        List<Warehouse> listW = new ArrayList<>();
+        for (int i = 0; i < listWarehouses.size(); i++) {
+            Map<String, Object> m = listWarehouses.get(i);
+            Warehouse warehouse = new Warehouse();
+            warehouse.setWhCode(m.get("whCode").toString());
+            warehouse.setWhName(m.get("whName").toString());
+            warehouse.setDisplayNo((Integer) m.get("displayNo"));
+            warehouse.setFlgDefault((Boolean) m.get("flgDefault"));
+            warehouse.setCpId((Integer) m.get("cpId"));
+            warehouse.setOpCreateUserId(m.get("opCreateUserId").toString());
+            listW.add(warehouse);
+        }
+        warehouseMapper.insertBatch(listW);
+        // 渠道
+        List<Map<String, Object>> listSaleChannels = map.get("saleChannels");
+        List<SaleChannel> listSc = new ArrayList<>();
+        for (int i = 0; i < listSaleChannels.size(); i++) {
+            Map<String, Object> m = listSaleChannels.get(i);
+            SaleChannel saleChannel = new SaleChannel();
+            saleChannel.setChannelCode(m.get("channelCode").toString());
+            saleChannel.setChannelName(m.get("channelName").toString());
+            saleChannel.setDisplayNo((Integer) m.get("displayNo"));
+            saleChannel.setFlgDefault((Boolean) m.get("flgDefault"));
+            saleChannel.setCpId((Integer) m.get("cpId"));
+            saleChannel.setOpCreateUserId(m.get("opCreateUserId").toString());
+            listSc.add(saleChannel);
+        }
+        saleChannelMapper.insertBatch(listSc);
+        // 基础资料
+        List<Map<String, Object>> listDictionaryDatas = map.get("dictionaryDatas");
+        List<DictionaryData> listDD = new ArrayList<>();
+        for (int i = 0; i < listDictionaryDatas.size(); i++) {
+            Map<String, Object> m = listDictionaryDatas.get(i);
+            DictionaryData dictionaryData = new DictionaryData();
+            dictionaryData.setDictCode(m.get("dictCode").toString());
+            dictionaryData.setDataCode(m.get("dataCode").toString());
+            dictionaryData.setDataValue(m.get("dataValue").toString());
+            dictionaryData.setDisplayNo((Integer) m.get("displayNo"));
+            dictionaryData.setFlgDefault((Boolean) m.get("flgDefault"));
+            dictionaryData.setCpId((Integer) m.get("cpId"));
+            dictionaryData.setOpCreateUserId(m.get("opCreateUserId").toString());
+            listDD.add(dictionaryData);
+        }
+        dictionaryDataMapper.insertBatch(listDD);
+        // 计量单位
+        List<Map<String, Object>> listUnits = map.get("units");
+        List<Unit> listU = new ArrayList<>();
+        for (int i = 0; i < listUnits.size(); i++) {
+            Map<String, Object> m = listUnits.get(i);
+            Unit unit = new Unit();
+            unit.setUnitCode(m.get("unitCode").toString());
+            unit.setUnitName(m.get("unitName").toString());
+            unit.setDecimalPlaces((Integer) m.get("decimalPlaces"));
+            unit.setDisplayNo((Integer) m.get("displayNo"));
+            unit.setCpId((Integer) m.get("cpId"));
+            unit.setOpCreateUserId(m.get("opCreateUserId").toString());
+            listU.add(unit);
+        }
+        unitMapper.insertBatch(listU);
+        // 种类
+        List<Map<String, Object>> listGoodsCategorys = map.get("goodsCategorys");
+        List<GoodsCategory> listG = new ArrayList<>();
+        for (int i = 0; i < listGoodsCategorys.size(); i++) {
+            Map<String, Object> m = listGoodsCategorys.get(i);
+            GoodsCategory goodsCategory = new GoodsCategory();
+            goodsCategory.setCatCode(m.get("catCode")+ "");
+            goodsCategory.setCatName(m.get("catName")+ "");
+            if (m.get("parentId")!=null){
+                goodsCategory.setParentId(m.get("parentId")+ "");
+            }
+            if (m.get("topId")!=null){
+                goodsCategory.setTopId(m.get("topId")+ "");
+            }
+            if (m.get("levelUpper")!=null){
+                goodsCategory.setLevelUpper(m.get("levelUpper")+ "");
+            }
+            if (m.get("levelLower")!=null){
+                goodsCategory.setLevelLower(m.get("levelLower")+ "");
+            }
+            goodsCategory.setLevelLeaf((Boolean) m.get("levelLeaf"));
+            goodsCategory.setLevelNo((Integer) m.get("levelNo"));
+            goodsCategory.setLevelCode(m.get("levelCode") + "");
+            goodsCategory.setLevelName(m.get("levelName") + "");
+            goodsCategory.setDisplayNo((Integer) m.get("displayNo"));
+            goodsCategory.setCpId((Integer) m.get("cpId"));
+            goodsCategory.setOpCreateUserId(m.get("opCreateUserId").toString());
+            listG.add(goodsCategory);
+        }
+        goodsCategoryMapper.insertBatch(listG);
 
-        return ResponseResultUtil.success(null);
+        return ResponseResultUtil.success();
     }
 
 
@@ -267,9 +412,9 @@ public class StaffService extends BaseService<Staff> {
             staffRight.setRightType(1);
             staffRight.setCpId(cpId);
         }
-         if (staffVO.getStaffRightList()!=null && staffVO.getStaffRightList().size() > 0) {
-             staffRightService.saveStaffRight(staffVO.getStaffRightList());
-         }
+        if (staffVO.getStaffRightList() != null && staffVO.getStaffRightList().size() > 0) {
+            staffRightService.saveStaffRight(staffVO.getStaffRightList());
+        }
         return ResponseResultUtil.success();
     }
 
@@ -350,7 +495,7 @@ public class StaffService extends BaseService<Staff> {
     )
     public ResponseResultVO<Dictionary<String, Object>> getInfoAfterLogin(Map<String, Object> param) {
         // 先根据userId查询当前企业的员工信息
-        StaffResponse staff = staffMapper.selectByUserId(param.get("userId").toString(),Integer.parseInt(param.get("cpId").toString()));
+        StaffResponse staff = staffMapper.selectByUserId(param.get("userId").toString(), Integer.parseInt(param.get("cpId").toString()));
         if (staff != null) {
             // 存Redis
             authUtils.saveStaff(new StaffEntity().setStaffId(staff.getStaffId())
@@ -375,7 +520,7 @@ public class StaffService extends BaseService<Staff> {
         Dictionary<String, Object> dic = new Hashtable<>();
         dic.put("menuList", menuList);
         dic.put("comMenuList", comMenuList.getData());
-        dic.put("dataKindList",  commonMapper.getDataKind(param));
+        dic.put("dataKindList", commonMapper.getDataKind(param));
         dic.put("settingValue", allSettingValue);
         dic.put("staff", staff);
         return ResponseResultUtil.success(dic);