Browse Source

Merge branch 'master' of ssh://10.10.100.21/source/uas-office-integration

RaoMeng 6 years ago
parent
commit
b930f6f2e2

+ 1 - 1
uas-office-core/src/main/java/com/usoftchina/uas/office/dingtalk/config/RedisConfig.java → uas-office-core/src/main/java/com/usoftchina/uas/office/config/RedisConfig.java

@@ -1,4 +1,4 @@
-package com.usoftchina.uas.office.dingtalk.config;
+package com.usoftchina.uas.office.config;
 
 import com.usoftchina.uas.office.listener.UasEventListenerAdapter;
 import org.springframework.context.annotation.Bean;

+ 10 - 3
uas-office-core/src/main/java/com/usoftchina/uas/office/service/DataCenterService.java

@@ -34,9 +34,16 @@ public class DataCenterService extends AbstractService {
                 dataCenter.setOuterUrl(dataCenter.getOuterUrl() + "/");
             }
         }
-        jdbcTemplate.update("update DataCenter set url=?,username=?,password=?,driverClassName=?,outerUrl=?",
-                dataCenter.getUrl(), dataCenter.getUsername(), dataCenter.getPassword(), dataCenter.getDriverClassName(), dataCenter.getOuterUrl());
-        dynamicDataSourceRegister.unregister(dataCenter);
+        DataCenter oldOne = find();
+        if (null == oldOne) {
+            jdbcTemplate.update("insert into DataCenter(id,driverClassName,url,username,password,outerUrl) values (1,?,?,?,?,?)",
+                    dataCenter.getDriverClassName(), dataCenter.getUrl(), dataCenter.getUsername(), dataCenter.getPassword(), dataCenter.getOuterUrl());
+            dataCenter = find();
+        } else {
+            jdbcTemplate.update("update DataCenter set url=?,username=?,password=?,driverClassName=?,outerUrl=?",
+                    dataCenter.getUrl(), dataCenter.getUsername(), dataCenter.getPassword(), dataCenter.getDriverClassName(), dataCenter.getOuterUrl());
+            dynamicDataSourceRegister.unregister(dataCenter);
+        }
         if (null != dataCenter.getUsername() && null != dataCenter.getPassword() && null != dataCenter.getUrl()) {
             dynamicDataSourceRegister.register(dataCenter);
             ContextHolder.getApplicationContext().publishEvent(new DataCenterEvent(this, dataCenter));

+ 2 - 2
uas-office-qywx/src/main/java/com/usoftchina/uas/office/qywx/listener/UasProcessListener.java

@@ -78,12 +78,12 @@ public class UasProcessListener {
         String title = process.getJp_launchername() + "的" + process.getJp_name();
         String description = "单据编号:" + process.getJp_codevalue();
         try {
-            // 往uas应用发
+            // 根据UAS配置的外部地址发送 开通U审批用U审批推送 没开通用UAS应用推
             QywxAgent agent = getUasAgent();
             String paramsStr = "{\"master\":\"" + event.getMaster() + "\",\"nodeId\":" + process.getJp_nodeid() + ",\"baseUrl\":\"" + URLEncoder.encode(agent.getOuterUrl(), "utf-8") + "\"}";
             String msgUrl = UrlUtils.generateOAuthUrl(messageSdk.getCorpId(), event.getMaster(), "Uas", agent.getOuterUrl(),
                     dataCenter.getOuterUrl() + "api/authorize", "uas/approval/" + URLEncoder.encode(paramsStr, "utf-8"));
-            messageSdk.send("Uas", new SendMessageReq()
+            messageSdk.send((!messageSdk.isAgentEnabled("UasAudit")) ? "Uas":"UasAudit", new SendMessageReq()
                     .textCard(title, description, msgUrl, "查看详情")
                     .toUser(employee.getEm_qywx()));
         } catch (Exception e) {

+ 9 - 7
uas-office-qywx/src/main/java/com/usoftchina/uas/office/qywx/task/QywxCheckinTask.java

@@ -96,13 +96,15 @@ public class QywxCheckinTask {
 
     private void saveCheckinData(Map<String, Employee> employeeMap, List<GetCheckinDataResp.CheckinData> dataList) {
         dataList.forEach(data -> {
-            Employee employee = employeeMap.get(data.getUserid());
-            logger.debug("get checkin data, user {}, type {}", employee.getEm_name(), data.getCheckin_type());
-            if ("外出打卡".equals(data.getCheckin_type())) {
-                // 外勤签到 插入外勤打卡记录
-                outSignService.save(new OutSign(employee, data));
-            } else {
-                cardLogService.save(new CardLog(employee, data));
+            if(!data.getException_type().equals("未打卡")){
+                Employee employee = employeeMap.get(data.getUserid());
+                logger.debug("get checkin data, user {}, type {}", employee.getEm_name(), data.getCheckin_type());
+                if ("外出打卡".equals(data.getCheckin_type())) {
+                    // 外勤签到 插入外勤打卡记录
+                    outSignService.save(new OutSign(employee, data));
+                } else {
+                    cardLogService.save(new CardLog(employee, data));
+                }
             }
         });
     }