Ver código fonte

Merge remote-tracking branch 'origin/master'

dongke 1 ano atrás
pai
commit
9ee1d58dd3

+ 4 - 0
pom.xml

@@ -132,12 +132,16 @@
                 <includes>
                     <include>**/*</include>
                 </includes>
+                <!-- 启用过滤器,过滤器会解析需要过滤的的资源文件,将其中的@environment@变量替换成真实的值 -->
+                <filtering>true</filtering>
             </resource>
             <resource> <!--日志配置文件-->
                 <directory>src/main/resources</directory>
                 <includes>
                     <include>**/*</include>
                 </includes>
+                <!-- 启用过滤器,过滤器会解析需要过滤的的资源文件,将其中的@environment@变量替换成真实的值 -->
+                <filtering>true</filtering>
             </resource>
         </resources>
         <plugins>

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

@@ -353,6 +353,9 @@
         where dd.flg_valid
           and dd.cp_id = #{cpId}
           and dd.dict_code = #{dictCode}
+        <if test="searchText !=null">
+            AND   dd.data_value LIKE concat('%',my_ex.likequery(#{searchText}), '%')
+        </if>
         order by dd.display_no
     </select>
 

+ 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>

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

@@ -698,8 +698,12 @@ public class CommonService extends BaseService<Map<String, Object>> {
         }
         String dataSourceCode = param.get("dataSourceCode").toString();
         //查询到的结果集
+
         List<Map<String, Object>> list = null;
         Map<String, Object> map = new HashMap<>();
+        if(param.containsKey("searchText") && param.get("searchText") != null){
+            map.put("searchText",param.get("searchText").toString());
+        }
         //客户来源
         if (dataSourceCode.equals("customerFrom")) {
             map.put("dictCode","基础资料-来源");

+ 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);

+ 6 - 12
src/main/resources/dev/bootstrap.yml

@@ -2,7 +2,9 @@ server:
   port: 7008
 spring:
   application:
-    name: mdm-server-dkic-b1-zx
+    name: mdm-server-dkic-b1
+  profiles:
+    active: @environment@
   cloud:
     nacos:
       config:
@@ -58,18 +60,12 @@ spring:
     host: s.dev01.dkiboss.com
     port: 14000
     password: dk
-  zipkin:
-    base-url: http://s.dev01.dkiboss.com:9411/
-    discovery-client-enabled: false
-    sleuth:
-      sampler:
-        probability: 1
   servlet:
     multipart:
       max-file-size: 10MB
 
 logback:
-  file: D:\data\DK_IBOSS_MINI\${spring.application.name}
+  file: D:\data\DK_IBOSS_MINI
 
 feign:
   sentinel:
@@ -82,15 +78,13 @@ feign:
 
 mybatis-plus:
   configuration:
-    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+#    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
     map-underscore-to-camel-case: true
     call-setters-on-nulls: true
   type-aliases-package: com.dk.oauth.dto,com.dk.common.infrastructure.handler #类型转换器包名
   mapper-locations: classpath:/mapper/**/*Mapper.xml,com/hegii/scrm/common/mapper/opinfo/*.xml
 
-mybatis:
-  config-location: classpath:mybatis-config.xml
-
 swagger:
   enabled: true
 

+ 43 - 148
src/main/resources/logback-spring.xml

@@ -1,191 +1,86 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<configuration  scan="true" scanPeriod="10 seconds">
+<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 -->
+<!-- scan:当此属性设置为true时,配置文档如果发生改变,将会被重新加载,默认值为true -->
+<!-- scanPeriod:设置监测配置文档是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。
+                 当scan为true时,此属性生效。默认的时间间隔为1分钟。 -->
+<!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
+<configuration scan="true" scanPeriod="10 seconds">
 
-    <!--<include resource="org/springframework/boot/logging/logback/base.xml" />-->
-
-    <springProperty scope="context" name="log.path" source="logback.file" defaultValue="log"/>
     <contextName>logback</contextName>
-    <!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义变量后,可以使“${}”来使用变量。 -->
-    <!--<property name="log.path" value="E:/logsNew" />-->
 
-    <!-- 彩色日志 -->
+    <springProperty scope="context" name="LOG_HOME" source="logback.file" defaultValue="log"/>
+    <springProperty scope="context" name="APP_NAME" source="spring.application.name"/>
+
     <!-- 彩色日志依赖的渲染类 -->
     <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
     <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
     <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
     <!-- 彩色日志格式 -->
-    <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
-
-
-    <!--输出到控制台-->
+    <property name="CONSOLE_LOG_PATTERN_SW" value="${CONSOLE_LOG_PATTERN_SW:-%clr([%d{${LOG_DATEFORMAT_PATTERN:yyyy-MM-dd HH:mm:ss.SSS}}]){faint} %clr([${APP_NAME}]) %red([%tid]) %clr([${LOG_LEVEL_PATTERN:-%5p}]) %clr([${PID:- }]){magenta} %clr([%15.15t]){faint} %clr([%-40.40logger{39}]){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
     <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
-        <!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
-        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
-            <level>info</level>
-        </filter>
-        <encoder>
-            <Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
-            <!-- 设置字符集 -->
-            <charset>UTF-8</charset>
-        </encoder>
-    </appender>
-
-
-    <!--输出到文件-->
-
-    <!-- 时间滚动输出 level为 DEBUG 日志 -->
-    <appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <!-- 正在记录的日志文件的路径及文件名 -->
-        <!--<file>${log.path}/log_debug.log</file>-->
-        <!--日志文件输出格式-->
-        <encoder>
-            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
-            <charset>UTF-8</charset> <!-- 设置字符集 -->
-        </encoder>
-        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <!-- 日志归档 -->
-            <fileNamePattern>${log.path}/debug/log-debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
-            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                <maxFileSize>10MB</maxFileSize>
-            </timeBasedFileNamingAndTriggeringPolicy>
-            <!--日志文件保留天数-->
-            <maxHistory>30</maxHistory>
-        </rollingPolicy>
-        <!-- 此日志文件只记录debug级别的 -->
-        <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <level>debug</level>
-            <onMatch>ACCEPT</onMatch>
-            <onMismatch>DENY</onMismatch>
-        </filter>
-    </appender>
-
-    <!-- 时间滚动输出 level为 INFO 日志 -->
-    <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <!-- 正在记录的日志文件的路径及文件名 -->
-        <!--<file>${log.path}/log_info.log</file>-->
-        <!--日志文件输出格式-->
-        <encoder>
-            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
-            <charset>UTF-8</charset>
-        </encoder>
-        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <!-- 每天日志归档路径以及格式 -->
-            <fileNamePattern>${log.path}/info/log-info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
-            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                <maxFileSize>10MB</maxFileSize>
-            </timeBasedFileNamingAndTriggeringPolicy>
-            <!--日志文件保留天数-->
-            <maxHistory>30</maxHistory>
-        </rollingPolicy>
-        <!-- 此日志文件只记录info级别的 -->
-        <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <level>info</level>
-            <onMatch>ACCEPT</onMatch>
-            <onMismatch>DENY</onMismatch>
-        </filter>
-    </appender>
-
-    <!-- 时间滚动输出 level为 WARN 日志 -->
-    <appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <!-- 正在记录的日志文件的路径及文件名 -->
-        <!--<file>${log.path}/log_warn.log</file>-->
-        <!--日志文件输出格式-->
-        <encoder>
-            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+        <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
+            <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
+                <Pattern>${CONSOLE_LOG_PATTERN_SW}</Pattern>
+            </layout>
             <charset>UTF-8</charset> <!-- 此处设置字符集 -->
         </encoder>
-        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <fileNamePattern>${log.path}/warn/log-warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
-            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-                <maxFileSize>10MB</maxFileSize>
-            </timeBasedFileNamingAndTriggeringPolicy>
-            <!--日志文件保留天数-->
-            <maxHistory>30</maxHistory>
-        </rollingPolicy>
-        <!-- 此日志文件只记录warn级别的 -->
-        <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <level>warn</level>
-            <onMatch>ACCEPT</onMatch>
-            <onMismatch>DENY</onMismatch>
-        </filter>
     </appender>
-    <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <!-- 正在记录的日志文件的路径及文件名 -->
-        <!--<file>${log.path}/log_error.log</file>-->
-        <!--日志文件输出格式-->
-        <encoder>
-            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+
+    <!-- 2. 输出到文件  -->
+    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <!-- 当前记录的日志文档完整路径 -->
+        <!--        <file>${LOG_HOME}/log.log</file>-->
+        <!--日志文档输出格式-->
+        <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
+            <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
+                <pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] [${APP_NAME}] [%-5level] [%tid] [%t] [%logger{36}]: %msg%n</pattern>
+            </layout>
             <charset>UTF-8</charset> <!-- 此处设置字符集 -->
         </encoder>
         <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <fileNamePattern>${log.path}/error/log-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
+            <fileNamePattern>${LOG_HOME}/${APP_NAME}-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                 <maxFileSize>10MB</maxFileSize>
             </timeBasedFileNamingAndTriggeringPolicy>
-            <!--日志文保留天数-->
+            <!--日志文档保留天数-->
             <maxHistory>30</maxHistory>
         </rollingPolicy>
-        <!-- 此日志文件只记录ERROR级别的 -->
-        <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <level>ERROR</level>
-            <onMatch>ACCEPT</onMatch>
-            <onMismatch>DENY</onMismatch>
-        </filter>
     </appender>
 
     <!--
         <logger>用来设置某一个包或者具体的某一个类的日志打印级别、
         以及指定<appender>。<logger>仅有一个name属性,
-        一个可选的level和一个可选的addtivity属性。
+        一个可选的level和一个可选的 addtivity 属性。
         name:用来指定受此logger约束的某一个包或者具体的某一个类。
         level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
               还有一个特俗值INHERITED或者同义词NULL,代表强制执行上级的级别。
               如果未设置此属性,那么当前logger将会继承上级的级别。
         addtivity:是否向上级logger传递打印信息。默认是true。
     -->
-    <logger name="org.springframework.web" level="info"/>
-    <logger name="org.springframework.scheduling.annotation.ScheduledAnnotationBeanPostProcessor" level="INFO"/>
-    <!-- 使用mybatis的时候,sql语句是debug下才会打印,而这里我们只配置了info,所以想要查看sql语句的话,有以下两种操作:
-        第一种把<root level="info">改成<root level="DEBUG">这样就会打印sql,不过这样日志那边会出现很多其他消息
-        第二种就是单独给dao下目录配置debug模式,代码如下,这样配置sql语句会打印,其他还是正常info级别: -->
 
-    <!-- mybatis日志打印-->
-    <!--<logger name="org.apache.ibatis" level="DEBUG" />-->
-    <!--<logger name="java.sql" level="DEBUG" />-->
-    <!--<logger name="com.dongke.hn.dao.mapper" level="DEBUG"></logger>-->
-
-
-    <!-- root节点是必选节点,用来指定最基础的日志输出级别,只有一个level属性
+    <!--
+        root节点是必选节点,用来指定最基础的日志输出级别,只有一个level属性
         level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,
         不能设置为INHERITED或者同义词NULL。默认是DEBUG
-        可以包含零个或多个元素,标识这个appender将会添加到这个logger。 -->
+        可以包含零个或多个元素,标识这个appender将会添加到这个logger。
+    -->
 
-    <!--开发环境:打印控制台-->
+    <!-- 开发环境输出至控制台 -->
     <springProfile name="dev">
-        <logger name="com.sfDev.view" level="debug"/>
+        <logger name="com.dk.mdm.mapper" level="TRACE"/>
+        <root level="INFO">
+            <appender-ref ref="CONSOLE" />
+        </root>
     </springProfile>
 
-    <root level="info">
-        <appender-ref ref="CONSOLE" />
-        <appender-ref ref="DEBUG_FILE" />
-        <appender-ref ref="INFO_FILE" />
-        <appender-ref ref="WARN_FILE" />
-        <appender-ref ref="ERROR_FILE" />
-    </root>
-
-    <!--生产环境:输出到文件-->
-    <springProfile name="pro">
-        <root level="info">
-            <appender-ref ref="CONSOLE" />
-            <appender-ref ref="DEBUG_FILE" />
-            <appender-ref ref="INFO_FILE" />
-            <appender-ref ref="ERROR_FILE" />
-            <appender-ref ref="WARN_FILE" />
+    <!-- 非开发环境输出至文件 -->
+    <springProfile name="!(dev)">
+        <!--fixme 将mybatis-plus的sql记录的日志文件 注意name需修改mapper包名 level=DEBUG:打印语句 TRACE:打印结果 -->
+        <logger name="com.dk.mdm.mapper" level="TRACE"/>
+        <root level="INFO">
+            <appender-ref ref="FILE" />
         </root>
     </springProfile>
 
-</configuration>
+</configuration>

+ 0 - 8
src/main/resources/mybatis-config.xml

@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
-<configuration>
-    <settings>
-        <!-- add LOG -->
-        <setting name="logImpl" value="STDOUT_LOGGING" />
-    </settings>
-</configuration>

+ 2 - 10
src/main/resources/st/bootstrap.yml

@@ -59,12 +59,6 @@ spring:
     host: s.dev01.dkiboss.com
     port: 14000
     password: dk
-  zipkin:
-    base-url: http://s.dev01.dkiboss.com:9411/
-    discovery-client-enabled: false
-    sleuth:
-      sampler:
-        probability: 1
   servlet:
     multipart:
       max-file-size: 10MB
@@ -83,15 +77,13 @@ feign:
 
 mybatis-plus:
   configuration:
-    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+#    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
     map-underscore-to-camel-case: true
     call-setters-on-nulls: true
   type-aliases-package: com.dk.oauth.dto,com.dk.common.infrastructure.handler #类型转换器包名
   mapper-locations: classpath:/mapper/**/*Mapper.xml,com/hegii/scrm/common/mapper/opinfo/*.xml
 
-mybatis:
-  config-location: classpath:mybatis-config.xml
-
 swagger:
   enabled: true
 

+ 5 - 11
src/main/resources/test/bootstrap.yml

@@ -3,6 +3,8 @@ server:
 spring:
   application:
     name: mdm-server-dkic-b1
+  profiles:
+    active: @environment@
   cloud:
     nacos:
       config:
@@ -59,18 +61,12 @@ spring:
     host: s.dev01.dkiboss.com
     port: 14000
     password: dk
-  zipkin:
-    base-url: http://s.dev01.dkiboss.com:9411/
-    discovery-client-enabled: false
-    sleuth:
-      sampler:
-        probability: 1
   servlet:
     multipart:
       max-file-size: 10MB
 
 logback:
-  file: /data/java_project/dkic/${spring.application.name}/${spring.application.name}_logs
+  file: /data/java_project/dkic/logs
 
 feign:
   sentinel:
@@ -83,15 +79,13 @@ feign:
 
 mybatis-plus:
   configuration:
-    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+#    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+    log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
     map-underscore-to-camel-case: true
     call-setters-on-nulls: true
   type-aliases-package: com.dk.oauth.dto,com.dk.common.infrastructure.handler #类型转换器包名
   mapper-locations: classpath:/mapper/**/*Mapper.xml,com/hegii/scrm/common/mapper/opinfo/*.xml
 
-mybatis:
-  config-location: classpath:mybatis-config.xml
-
 swagger:
   enabled: true