Browse Source

存储签到号

lighter 2 months ago
parent
commit
71d22cc30a

+ 8 - 0
src/main/java/thyyxxk/simzfeeoprnsystm/dao/StaffDao.java

@@ -3,9 +3,17 @@ package thyyxxk.simzfeeoprnsystm.dao;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
 
 @Mapper
 public interface StaffDao {
     @Select("select rtrim(name) from a_employee_mi where code=#{staffId}")
     String selectStaffName(@Param("staffId") String staffId);
+
+    @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/simzfeeoprnsystm/service/ExecService.java

@@ -43,6 +43,12 @@ public class ExecService {
     }
 
     public synchronized void signIn() {
+        String dbSignNo = dao.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");
@@ -55,6 +61,7 @@ public class ExecService {
             try {
                 JSONObject output = result.getJSONObject(OUTPUT);
                 signNo = output.getJSONObject("signinoutb").getString("sign_no");
+                dao.updateSignNo(signNo);
                 log.info("签到成功,签到号:{}", signNo);
             } catch (Exception e) {
                 log.error("签到出错", e);