Эх сурвалжийг харах

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

hy 7 жил өмнө
parent
commit
fa5efd6e46

+ 2 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/PurchaseApplication.java

@@ -1,6 +1,7 @@
 package com.usoftchina.saas.purchase;
 
 import com.usoftchina.saas.auth.client.EnableAuthClient;
+import com.usoftchina.saas.server.jdbc.EnableDynamicDataSource;
 import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -18,6 +19,7 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
 @EnableFeignClients("com.usoftchina.saas")
 @EnableAuthClient
 @MapperScan("com.usoftchina.saas.purchase.mapper")
+@EnableDynamicDataSource
 public class PurchaseApplication {
     public static void main(String[] args) {
         SpringApplication.run(PurchaseApplication.class, args);

+ 8 - 8
base-servers/auth/auth-server/src/main/java/com/usoftchina/saas/auth/controller/AuthController.java

@@ -220,7 +220,7 @@ public class AuthController {
      * @return
      */
     @GetMapping(value = "/sso/callback/{clientId}", produces = {"application/javascript"})
-    public String ssoCallback(HttpServletRequest request, HttpServletResponse response,
+    public void ssoCallback(HttpServletRequest request, HttpServletResponse response,
                             @PathVariable(required = false) String clientId, CookieInfo info, String callback) throws IOException{
         if (null != info && null != info.getMobile()) {
             AccountDTO accountDTO = null;
@@ -231,8 +231,8 @@ public class AuthController {
                     accountDTO = createAccountByCookieInfo(info);
                 } else {
                     logger.error(result.getMessage());
-                    //ServletUtils.writeJsonPMessage(response, callback, false);
-                    return "successCallback({success:'0'})";
+                    ServletUtils.writeJsonPMessage(response, callback, false);
+//                    return "successCallback({success:'0'})";
                 }
             } else {
                 accountDTO = result.getData();
@@ -242,8 +242,8 @@ public class AuthController {
                     Result updateResult = accountApi.update(BeanMapper.map(accountDTO, AccountUpdateDTO.class));
                     if (!updateResult.isSuccess()) {
                         logger.error(updateResult.getMessage());
-                        //ServletUtils.writeJsonPMessage(response, callback, false);
-                        return "successCallback({success:'0'})";
+                        ServletUtils.writeJsonPMessage(response, callback, false);
+//                        return "successCallback({success:'0'})";
                     }
                 }
             }
@@ -265,10 +265,10 @@ public class AuthController {
                 socketMessageApi.sendToClient(clientId, "/sso/callback",
                         JsonUtils.toJsonString(new AuthDTO(tokenDTO, accountDTO)));
             }
-            //ServletUtils.writeJsonPMessage(response, callback, true);
-            return "successCallback({success:'1'})";
+            ServletUtils.writeJsonPMessage(response, callback, true);
+//            return "successCallback({success:'1'})";
         }
-        return "successCallback({success:'0'})";
+//        return "successCallback({success:'0'})";
     }
 
     /**

+ 1 - 1
frontend/saas-web/electron/login.html

@@ -47,7 +47,7 @@
                 var session = data.token, account = data.account;
                 account.companies = account.companies || [];
                 session.account = account;
-                ipc.send('session.change', session);
+                ipc.send('session.change', JSON.stringify(session));
             });
             var frame = document.createElement("iframe");
             frame.setAttribute("src", "https://sso.ubtob.com/sassLogin?appId=sp&baseUrl=" + 

+ 6 - 2
frontend/saas-web/electron/main.js

@@ -10,7 +10,7 @@ let mainWindow;
 ipcMain.on('session.change', (event, arg) => {
     if (arg) {
         loginWindow && loginWindow.close();
-        createMainWindow();
+        createMainWindow(arg);
     } else {
         mainWindow && mainWindow.close();
         createLoginWindow();
@@ -34,7 +34,7 @@ function createLoginWindow() {
     });
 }
 
-function createMainWindow () {
+function createMainWindow (session) {
     mainWindow = new BrowserWindow({ width: 1280, height: 720, show: false });
     mainWindow.once('ready-to-show', function(){
         mainWindow.maximize();
@@ -50,6 +50,10 @@ function createMainWindow () {
         mainWindow.webContents.openDevTools();
     }
 
+    mainWindow.webContents.on("did-finish-load", function() {
+        mainWindow.webContents.executeJavaScript('\
+            localStorage.setItem("app-state-session", decodeURIComponent("' + encodeURIComponent(session) + '"))');
+    });
     mainWindow.on('closed', function () {
         mainWindow = null;
     });

+ 2 - 2
frontend/saas-web/index.html

@@ -6,9 +6,9 @@
     <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=10, user-scalable=yes">
 
     <title>云进销存 - U企云服</title>
-    <link rel="icon" href="/resources/images/favicon.png" type="image/x-icon">
+    <link rel="icon" href="./resources/images/favicon.png" type="image/x-icon">
     <!-- 图片动画效果样式导入 -->
-    <link type="text/css" rel="stylesheet" href="/resources/othcss/imagehover.css" />
+    <link type="text/css" rel="stylesheet" href="./resources/othcss/imagehover.css" />
 
     <!-- The line below must be kept intact for Sencha Cmd to build your application -->
     <script id="microloader" data-app="a20e1670-7932-41f6-8e9c-55b77cba3f26" type="text/javascript" src="bootstrap.js"></script>