Ver código fonte

Merge branch 'dev' of ssh://10.10.100.21/source/saas-platform into dev

zhuth 7 anos atrás
pai
commit
22779586aa
19 arquivos alterados com 138 adições e 38 exclusões
  1. 1 0
      applications/commons/commons-server/src/main/resources/logback-spring.xml
  2. 4 0
      applications/document/document-dto/src/main/java/com/usoftchina/saas/document/entities/VendorList.java
  3. 1 0
      applications/document/document-server/src/main/resources/logback-spring.xml
  4. 1 0
      applications/document/document-server/src/main/resources/mapper/VendorMapper.xml
  5. 52 9
      applications/money/money-server/src/main/resources/logback-spring.xml
  6. 1 0
      applications/purchase/purchase-server/src/main/resources/logback-spring.xml
  7. 1 0
      applications/sale/sale-server/src/main/resources/logback-spring.xml
  8. 1 0
      applications/storage/storage-server/src/main/resources/logback-spring.xml
  9. 12 0
      base-servers/account/account-server/src/main/java/com/usoftchina/saas/account/controller/ResourceController.java
  10. 1 0
      base-servers/account/account-server/src/main/resources/logback-spring.xml
  11. 21 17
      base-servers/auth/auth-client/src/main/java/com/usoftchina/saas/auth/client/interceptor/AuthRestInterceptor.java
  12. 1 0
      base-servers/auth/auth-server/src/main/resources/logback-spring.xml
  13. 12 1
      base-servers/gateway-server/src/main/java/com/usoftchina/saas/gateway/error/MyExceptionHandler.java
  14. 1 0
      base-servers/gateway-server/src/main/resources/logback-spring.xml
  15. 1 0
      base-servers/ui-server/src/main/resources/logback-spring.xml
  16. 16 7
      frontend/saas-web/app/view/money/payBalance/FormPanel.js
  17. 9 1
      frontend/saas-web/app/view/money/payBalance/FormPanelController.js
  18. 1 2
      frontend/saas-web/app/view/sale/sale/FormPanel.js
  19. 1 1
      frontend/saas-web/app/view/sale/saleOut/FormPanel.js

+ 1 - 0
applications/commons/commons-server/src/main/resources/logback-spring.xml

@@ -97,6 +97,7 @@
 
     <springProfile name="docker">
         <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
         <root level="WARN">
             <appender-ref ref="CONSOLE_APPENDER"/>
             <appender-ref ref="JSON_APPENDER"/>

+ 4 - 0
applications/document/document-dto/src/main/java/com/usoftchina/saas/document/entities/VendorList.java

@@ -82,6 +82,10 @@ public class VendorList implements Serializable {
      * 自定义字段
      */
     private String ve_text1;
+    /**
+     * 应付款金额
+     */
+    private double ve_leftamount;
     /**
      * 自定义字段
      */

+ 1 - 0
applications/document/document-server/src/main/resources/logback-spring.xml

@@ -97,6 +97,7 @@
 
     <springProfile name="docker">
         <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
         <root level="WARN">
             <appender-ref ref="CONSOLE_APPENDER"/>
             <appender-ref ref="JSON_APPENDER"/>

+ 1 - 0
applications/document/document-server/src/main/resources/mapper/VendorMapper.xml

@@ -72,6 +72,7 @@
         <result column="ve_recordid" property="ve_recordid" jdbcType="INTEGER" />
         <result column="ve_recordname" property="ve_recordname" jdbcType="VARCHAR" />
         <result column="ve_initdate" property="ve_initdate" jdbcType="TIMESTAMP" />
+        <result column="ve_leftamount" property="ve_leftamount" jdbcType="INTEGER" />
         <result column="ve_text1" property="ve_text1" jdbcType="VARCHAR" />
         <result column="ve_text2" property="ve_text2" jdbcType="VARCHAR" />
         <result column="ve_text3" property="ve_text3" jdbcType="VARCHAR" />

+ 52 - 9
applications/money/money-server/src/main/resources/logback-spring.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <configuration>
-    <include resource="org/springframework/boot/logging/logback/defaults.xml" />
+    <include resource="org/springframework/boot/logging/logback/base.xml" />
     <jmxConfigurator/>
 
     <!--
@@ -28,10 +28,10 @@
     <springProperty scope="context" name="spring.profiles.active" source="spring.profiles.active" defaultValue="dev"/>
     <springProperty scope="context" name="common-pattern" source="logging.common-pattern" defaultValue="%d{yyyy-MM-dd HH:mm:ss.SSS}:[%5p] [%t:%r] [%C{1}:%M:%L] --> %m%n"/>
     <springProperty scope="context" name="log.level.console" source="logging.level.console" defaultValue="INFO"/>
+    <springProperty scope="context" name="log.destination" source="logging.destination" defaultValue="192.168.253.3:5000"/>
 
     <contextName>${spring.application.name}-${spring.profiles.active}-logback</contextName>
 
-
     <appender name="CONSOLE_APPENDER" class="ch.qos.logback.core.ConsoleAppender">
         <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
             <level>${log.level.console}</level>
@@ -44,11 +44,9 @@
     <appender name="ROOT_APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
         <file>${log.path}/root.log</file>
         <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-            <!-- 每天一归档 -->
             <fileNamePattern>${log.path}/%d{yyyy-MM}/root-%d{yyyy-MM-dd}-%i.log.gz</fileNamePattern>
-            <!-- 单个日志文件最多 100MB, 60天的日志周期,最大不能超过20GB -->
             <maxFileSize>128MB</maxFileSize>
-            <maxHistory>60</maxHistory>
+            <maxHistory>7</maxHistory>
             <totalSizeCap>20GB</totalSizeCap>
         </rollingPolicy>
         <encoder>
@@ -56,9 +54,54 @@
         </encoder>
     </appender>
 
-    <root level="${log.level.console}">
-        <appender-ref ref="CONSOLE_APPENDER"/>
-        <appender-ref ref="ROOT_APPENDER"/>
-    </root>
+    <!-- Appender to log in a JSON format -->
+    <appender name="JSON_APPENDER" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
+        <destination>${log.destination}</destination>
+        <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
+            <providers>
+                <pattern>
+                    <pattern>
+                        {
+                        "severity": "%level",
+                        "service": "${spring.application.name:-}",
+                        "trace": "%X{X-B3-TraceId:-}",
+                        "span": "%X{X-B3-SpanId:-}",
+                        "parent": "%X{X-B3-ParentSpanId:-}",
+                        "exportable": "%X{X-Span-Export:-}",
+                        "pid": "${PID:-}",
+                        "thread": "%thread",
+                        "class": "%logger{40}",
+                        "rest": "%message"
+                        }
+                    </pattern>
+                </pattern>
+            </providers>
+        </encoder>
+    </appender>
+
+    <logger name="org.springframework" level="INFO"/>
+    <logger name="com.usoftchina.saas" level="INFO"/>
+
+    <springProfile name="dev">
+        <root level="INFO">
+            <appender-ref ref="CONSOLE_APPENDER"/>
+        </root>
+    </springProfile>
+
+    <springProfile name="test">
+        <root level="INFO">
+            <appender-ref ref="CONSOLE_APPENDER"/>
+            <appender-ref ref="ROOT_APPENDER"/>
+        </root>
+    </springProfile>
+
+    <springProfile name="docker">
+        <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
+        <root level="WARN">
+            <appender-ref ref="CONSOLE_APPENDER"/>
+            <appender-ref ref="JSON_APPENDER"/>
+        </root>
+    </springProfile>
 
 </configuration>

+ 1 - 0
applications/purchase/purchase-server/src/main/resources/logback-spring.xml

@@ -97,6 +97,7 @@
 
     <springProfile name="docker">
         <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
         <root level="WARN">
             <appender-ref ref="CONSOLE_APPENDER"/>
             <appender-ref ref="JSON_APPENDER"/>

+ 1 - 0
applications/sale/sale-server/src/main/resources/logback-spring.xml

@@ -97,6 +97,7 @@
 
     <springProfile name="docker">
         <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
         <root level="WARN">
             <appender-ref ref="CONSOLE_APPENDER"/>
             <appender-ref ref="JSON_APPENDER"/>

+ 1 - 0
applications/storage/storage-server/src/main/resources/logback-spring.xml

@@ -97,6 +97,7 @@
 
     <springProfile name="docker">
         <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
         <root level="WARN">
             <appender-ref ref="CONSOLE_APPENDER"/>
             <appender-ref ref="JSON_APPENDER"/>

+ 12 - 0
base-servers/account/account-server/src/main/java/com/usoftchina/saas/account/controller/ResourceController.java

@@ -1,5 +1,6 @@
 package com.usoftchina.saas.account.controller;
 
+import com.usoftchina.saas.account.cache.ResourceCache;
 import com.usoftchina.saas.account.dto.ResourceModuleDTO;
 import com.usoftchina.saas.account.dto.UrlResourceDTO;
 import com.usoftchina.saas.account.service.ResourceService;
@@ -53,4 +54,15 @@ public class ResourceController {
         return Result.success(resourcesService.findUrlResourcesByAppId(appId));
     }
 
+    /**
+     * 缓存清除
+     *
+     * @return
+     */
+    @GetMapping("/cache/clear")
+    public Result clearCache() {
+        ResourceCache.of(BaseContextHolder.getAppId()).hdel();
+        return Result.success();
+    }
+
 }

+ 1 - 0
base-servers/account/account-server/src/main/resources/logback-spring.xml

@@ -97,6 +97,7 @@
 
     <springProfile name="docker">
         <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
         <root level="WARN">
             <appender-ref ref="CONSOLE_APPENDER"/>
             <appender-ref ref="JSON_APPENDER"/>

+ 21 - 17
base-servers/auth/auth-client/src/main/java/com/usoftchina/saas/auth/client/interceptor/AuthRestInterceptor.java

@@ -27,23 +27,27 @@ public class AuthRestInterceptor extends HandlerInterceptorAdapter {
 
     @Override
     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
-        HandlerMethod handlerMethod = (HandlerMethod) handler;
-        // 配置该注解,说明不进行用户拦截
-        IgnoreAuth annotation = handlerMethod.getBeanType().getAnnotation(IgnoreAuth.class);
-        if (annotation == null) {
-            annotation = handlerMethod.getMethodAnnotation(IgnoreAuth.class);
-        }
-        if (annotation != null) {
-            return super.preHandle(request, response, handler);
-        }
-        String token = request.getHeader(authConfig.getAuthHeader());
-        if (null != token) {
-            JwtInfo infoFromToken = JwtHelper.getInfoFromToken(token, authConfig.getPublicKey());
-            BaseContextHolder.setAppId(infoFromToken.getAppId());
-            BaseContextHolder.setUserId(infoFromToken.getUserId());
-            BaseContextHolder.setCompanyId(infoFromToken.getCompanyId());
-            BaseContextHolder.setToken(token);
-            log.info("token={} \\r\\n userName={}", token, infoFromToken.getUserName());
+        if (handler instanceof HandlerMethod) {
+            HandlerMethod handlerMethod = (HandlerMethod) handler;
+            // 配置该注解,说明不进行用户拦截
+            IgnoreAuth annotation = handlerMethod.getBeanType().getAnnotation(IgnoreAuth.class);
+            if (annotation == null) {
+                annotation = handlerMethod.getMethodAnnotation(IgnoreAuth.class);
+            }
+            if (annotation != null) {
+                return super.preHandle(request, response, handler);
+            }
+            String token = request.getHeader(authConfig.getAuthHeader());
+            if (null != token) {
+                JwtInfo infoFromToken = JwtHelper.getInfoFromToken(token, authConfig.getPublicKey());
+                BaseContextHolder.setAppId(infoFromToken.getAppId());
+                BaseContextHolder.setUserId(infoFromToken.getUserId());
+                BaseContextHolder.setCompanyId(infoFromToken.getCompanyId());
+                BaseContextHolder.setToken(token);
+                log.info("token={} \\r\\n userName={}", token, infoFromToken.getUserName());
+            }
+        } else {
+            // no mapping
         }
         return super.preHandle(request, response, handler);
     }

+ 1 - 0
base-servers/auth/auth-server/src/main/resources/logback-spring.xml

@@ -97,6 +97,7 @@
 
     <springProfile name="docker">
         <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
         <root level="WARN">
             <appender-ref ref="CONSOLE_APPENDER"/>
             <appender-ref ref="JSON_APPENDER"/>

+ 12 - 1
base-servers/gateway-server/src/main/java/com/usoftchina/saas/gateway/error/MyExceptionHandler.java

@@ -1,5 +1,8 @@
 package com.usoftchina.saas.gateway.error;
 
+import com.usoftchina.saas.exception.BaseException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.boot.autoconfigure.web.ErrorProperties;
 import org.springframework.boot.autoconfigure.web.ResourceProperties;
 import org.springframework.boot.autoconfigure.web.reactive.error.DefaultErrorWebExceptionHandler;
@@ -20,6 +23,8 @@ import java.util.Map;
  */
 public class MyExceptionHandler extends DefaultErrorWebExceptionHandler {
 
+    private Logger logger = LoggerFactory.getLogger(MyExceptionHandler.class);
+
     public MyExceptionHandler(ErrorAttributes errorAttributes, ResourceProperties resourceProperties,
                               ErrorProperties errorProperties, ApplicationContext applicationContext) {
         super(errorAttributes, resourceProperties, errorProperties, applicationContext);
@@ -32,10 +37,16 @@ public class MyExceptionHandler extends DefaultErrorWebExceptionHandler {
     protected Map<String, Object> getErrorAttributes(ServerRequest request, boolean includeStackTrace) {
         int code = 500;
         Throwable error = super.getError(request);
+        String message = error.getMessage();
         if (error instanceof NotFoundException) {
             code = 404;
+        } else if (error instanceof BaseException) {
+            BaseException e = (BaseException) error;
+            code = e.getCode();
+            message = e.getMessage();
         }
-        return response(code, this.buildMessage(request, error));
+        logger.error(this.buildMessage(request, error));
+        return response(code, message);
     }
 
     /**

+ 1 - 0
base-servers/gateway-server/src/main/resources/logback-spring.xml

@@ -97,6 +97,7 @@
 
     <springProfile name="docker">
         <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
         <root level="WARN">
             <appender-ref ref="CONSOLE_APPENDER"/>
             <appender-ref ref="JSON_APPENDER"/>

+ 1 - 0
base-servers/ui-server/src/main/resources/logback-spring.xml

@@ -97,6 +97,7 @@
 
     <springProfile name="docker">
         <logger name="org.springframework" level="WARN"/>
+        <logger name="com.usoftchina.saas" level="WARN"/>
         <root level="WARN">
             <appender-ref ref="CONSOLE_APPENDER"/>
             <appender-ref ref="JSON_APPENDER"/>

+ 16 - 7
frontend/saas-web/app/view/money/payBalance/FormPanel.js

@@ -36,7 +36,7 @@ Ext.define('saas.view.money.payBalance.FormPanel', {
         name: 'id',
         fieldLabel: 'id'
     }, {
-        xtype: 'hidden',
+        xtype: 'textfield',
         name: 'pb_kind',
         fieldLabel: '单据类型',
         defaultValue: '付款单'
@@ -52,11 +52,20 @@ Ext.define('saas.view.money.payBalance.FormPanel', {
         xtype: "dbfindtrigger",
         name: "pb_vendname",
         fieldLabel: "供应商名称"
+    },{
+        xtype:"numberfield",
+        name:"ve_leftamount",
+        fieldLabel:"总欠款",
+        ignore:true
     },{
         xtype: "datefield",
         name: "pb_date",
         fieldLabel: "日期"
-    }, {
+    },{
+      xtype:"textfield",
+      name:"pb_code",
+      fieldLabel:"单号"
+    },{
         xtype: 'hidden',
         name: 'pb_manname',
         fieldLabel: '收款人'
@@ -80,10 +89,6 @@ Ext.define('saas.view.money.payBalance.FormPanel', {
         xtype: 'hidden',
         name: 'pb_havebalance',
         fieldLabel: '已核销金额'
-    },{
-        xtype: 'textfield',
-        name: 'cu_leftamount',
-        fieldLabel: '总欠款金额'
     }, {
         xtype: "detailGridField",
         storeModel: 'saas.model.money.PayBalance1',
@@ -153,7 +158,11 @@ Ext.define('saas.view.money.payBalance.FormPanel', {
         storeModel: 'saas.model.money.PayBalance2',
         detnoColumn: 'pbd_detno',
         deleteDetailUrl: '/api/money/paybalance/deleteDetail2/',
-        columns: [{
+        ltar: {
+          xtype:'button',
+          text:'选择源单',
+          name:'chooseSource'
+        },columns: [{
             text: 'ID',
             dataIndex: 'id',
             hidden: true

+ 9 - 1
frontend/saas-web/app/view/money/payBalance/FormPanelController.js

@@ -9,7 +9,7 @@ Ext.define('saas.view.money.payBalance.FormPanelController', {
             'dbfindtrigger[name=pb_vendname]':{
                 beforerender: function (f) {
                     Ext.apply(f, {
-                        dataUrl: '/api/document/vendor/list',
+                        dataUrl: 'api/document/vendor/list',
                         addXtype: 'document-vendor-formpanel',
                         addTitle: '供应商资料',
                         dbfinds: [{
@@ -25,6 +25,9 @@ Ext.define('saas.view.money.payBalance.FormPanelController', {
                         }, {
                             field: 've_name',
                             width: 100
+                        },{
+                            field:'ve_leftamount',
+                            width: 100
                         }],
                         defaultCondition: "ve_statuscode='OPEN'",
                         dbSearchFields:[{
@@ -65,6 +68,11 @@ Ext.define('saas.view.money.payBalance.FormPanelController', {
                             "dataIndex": "ve_taxrate",
                             "width": 100
                         }, {
+                            "text":"应付款金额",
+                            "flex":1,
+                            "dataIndex":"ve_leftamount",
+                            "width":100
+                        },{
                             "text": "承付天数",
                             "flex": 1,
                             "dataIndex": "ve_promisedays",

+ 1 - 2
frontend/saas-web/app/view/sale/sale/FormPanel.js

@@ -239,10 +239,9 @@ Ext.define('saas.view.sale.sale.FormPanel', {
                 ignore:true
             },{
                 text : "备注", 
-                dataIndex : "sd_remark",
+                dataIndex : "sd_text1",
                 width : 250, 
                 items : null,
-                ignore:true,
                 editor : {
                     xtype : "textfield"
                 },

+ 1 - 1
frontend/saas-web/app/view/sale/saleOut/FormPanel.js

@@ -26,7 +26,7 @@ Ext.define('saas.view.sale.saleout.FormPanel', {
 
     toolBtns: [{
         xtype: 'button',
-        text: '转销售退',
+        text: '转销售退',
         handler: 'turnProdIn',
         bind: {
             hidden: '{pi_statuscode!="AUDITED"}'