三月二十四日 安卓app打卡开发日志

目前打卡系统基本完成

没有实现的功能有无法统计次数 和 连接本地数据库

我全程连接的远程数据库

复制代码
package com.example.test_four.utils;

import java.sql.Connection;
import java.sql.DriverManager;

/**
 * function: 数据库工具类,连接数据库用
 */
public class JDBCUtils {
    private static final String TAG = "mysql-party-JDBCUtils";

    private static String driver = "com.mysql.jdbc.Driver";// MySql驱动

    private static String dbName = "party";// 数据库名称

    private static String user = "root";// 用户名

    private static String password = "123456";// 密码

    public static Connection getConn(){

        Connection connection = null;
        try{
            Class.forName(driver);// 动态加载类
            String ip = "192.168.180.241";// 写成本机地址,不能写成localhost,同时手机和电脑连接的网络必须是同一个

            // 尝试建立到给定数据库URL的连接
            connection = DriverManager.getConnection("jdbc:mysql://" + ip + ":3306/" + dbName,
                    user, password);

        }catch (Exception e){
            e.printStackTrace();
        }
        return connection;
    }
}
复制代码

还有周一设置目标 周五进行分析 的限制代码

复制代码
 public void 分析(View view) {
        Calendar calendar = Calendar.getInstance();
        int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);

        // 判断当前系统日期是否为周五(Calendar.FRIDAY 对应值为6)
        if (dayOfWeek == Calendar.SUNDAY) {
            String account = getIntent().getStringExtra("account");
            Intent intent = new Intent(this, analysis.class);
            intent.putExtra("account", account);
            startActivity(intent);
        } else {
            // 如果不是周五,给出提示或者执行其他操作
            Toast.makeText(this, "今天不是周五,无法进行下列操作", Toast.LENGTH_SHORT).show();
        }
    }

    public void 目标(View view) {
        Calendar calendar = Calendar.getInstance();
        int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);

        // 判断当前系统日期是否为周一(Calendar.SUNDAY 对应值为1,Calendar.MONDAY 对应值为2)
        if (dayOfWeek == Calendar.SUNDAY) {
            String account = getIntent().getStringExtra("account");
            Intent intent = new Intent(this, target.class);
            intent.putExtra("account", account);
            startActivity(intent);
        } else {
            // 如果不是周一,给出提示或者执行其他操作
            Toast.makeText(this, "今天不是周一,无法进行下列操作", Toast.LENGTH_SHORT).show();
        }
    }
复制代码

周五的前四天 是周一 只有符合当前系统时间的 前四天 以及账号匹配 才可以进行数据库修改 对目标进行分析

复制代码
 public static boolean ana(User user, String account) {
        Connection connection = JDBCUtils.getConn();
        Date currentDate = new Date(); // 获取当前系统时间

        try {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            Calendar calendar = Calendar.getInstance();
            calendar.setTime(currentDate);
            calendar.add(Calendar.DATE, -4); // 往前推四天
            Date fourDaysAgo = calendar.getTime();

            String fourDaysAgoString = sdf.format(fourDaysAgo);

            String sql = "SELECT * FROM goal WHERE DATE(date1) = ? AND account = ?";
            PreparedStatement ps = connection.prepareStatement(sql);
            ps.setString(1, fourDaysAgoString);
            ps.setString(2, account);
            ResultSet rs = ps.executeQuery();

            if (rs.next()) { // 存在符合条件的数据
                String insertSql = "INSERT INTO goal(analysis) VALUES (?)";
                PreparedStatement insertPs = connection.prepareStatement(insertSql);
                insertPs.setString(1, user.getAnalysis());

                int result = insertPs.executeUpdate();

                if (result > 0) {
                    return true;
                } else {
                    return false;
                }
            } else {
                return false;
            }
        } catch (Exception e) {
            e.printStackTrace();
            Log.e(TAG, "异常ana:" + e.getMessage());
            return false;
        }
    }
复制代码

 

posted @   财神给你送元宝  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示