Kaynağa Gözat

存储签到号

lighter 2 ay önce
ebeveyn
işleme
50b1b96931

+ 7 - 0
src/main/java/thyyxxk/sizyfeeoprnsystm/dao/SiZyDao.java

@@ -385,4 +385,11 @@ public interface SiZyDao {
 
     @Update("update zy_actpatient set balance=#{balance} where inpatient_no=#{zyh}")
     void updateZyActPatientBalance(@Param("zyh") String zyh, @Param("balance") String balance);
+
+    @Select("select sign_no from t_si_sign_in where id='medInsurSignIn'")
+    String getSignInNo();
+
+    @Update("update t_si_sign_in set sign_no=#{signNo}, " +
+            "sign_date=getdate() where id='medInsurSignIn'")
+    void updateSignNo(String signNo);
 }

+ 7 - 0
src/main/java/thyyxxk/sizyfeeoprnsystm/service/ExecService.java

@@ -45,6 +45,12 @@ public class ExecService {
     }
 
     public synchronized void signIn() {
+        String dbSignNo = siZyDao.getSignInNo();
+        if (StringUtil.notBlank(dbSignNo)) {
+            signNo = dbSignNo;
+            log.info("获取历史签到号成功:{}", dbSignNo);
+            return;
+        }
         JSONObject input = makeSignHeader(SiFunction.SIGN_IN);
         JSONObject signIn = new JSONObject();
         signIn.put("opter_no", "99999");
@@ -57,6 +63,7 @@ public class ExecService {
             try {
                 JSONObject output = result.getJSONObject(OUTPUT);
                 signNo = output.getJSONObject("signinoutb").getString("sign_no");
+                siZyDao.updateSignNo(signNo);
                 log.info("签到成功,签到号:{}", signNo);
             } catch (Exception e) {
                 log.error("签到出错", e);