首頁 > 軟體

Android快速實現一個財務APP程式詳解

2022-07-16 14:00:21

前言

昨天有個粉絲朋友也想學開發Web和小程式、安卓,問可以在大學學會嗎?

在學校學到的東西真的有限:

在很多的高校,有一些教授是學院派的,他們沒有做過多少開發工作,上課就是照本宣科,講的知識點都是陳年落伍的技術,更別說帶學生做專案了。

現在的很多碩博學生幫老師做課件,然後老師上課一頓讀。

當然有的老師開發能力也是很強的,他們有開發經驗,可以更加全面地理解技術知識點,然後傳遞給學生,也能拿到一些科研專案,然後帶學生實戰。

但是,但是,這種老師少之又少。我平時輔導過大量的計算機學生,也有個VIP群,很多學習VIP專案的小夥伴,也變得越來越強,

我總結出來,大部門計算機教學水平真的一般般:

1,教材落後,還有很多Java課程在教Swing/SSH框架,這已經是淘汰多少年的技術了。

2,實戰不足。學生在大學期間程式碼量極少,少得可憐,沒有專案實戰。找工作和企業的要求無法匹配。

3,教授課程方式極其落後。這是計算機啊,不是彙報工作,你全課程ppt有啥用。是念ppt學生能理解,還是給學生實操下專案,學生可以理解????

4,課後輔導比較差。在國外的一些名校,老師每週抽出三個小時作為 office hour,國內的老師下課,直接拍屁股走人,課後沒有輔導。

昨天沒事,開發了一個APP的財務系統,如果需要學習開發,可以一起啊!加油,奧利給!

一,系統的技術棧

行動端,採用安卓進行開發,Android它應用於安卓系統軟體和程式開發,其由谷歌公司推出,目前在國際市場上有著廣泛的應用及開發環境,並不瘦限制研發人員能夠通過修改開放的原始碼來實現各種使用的 APP軟體,開發的軟體程式具有介面友好穩定性好等特點,安卓系統架構圖具體如下:

後端採用的Java進行開發的,資料庫採用的Mysql。

系統的功能架構:

二,系統介面

後臺:

三,系統核心程式碼

/**
 * 小孟v:jishulearn
 */
@Controller
@RequestMapping("/api")
public class ApiController {
    @Autowired
    private UsersService userService;
    @Autowired
    private ShouruService shouruService;
    @Autowired
    private ZhichuService zhichuService;
    @Autowired
    private GudingzhichuService gudingzhichuService;
    @Autowired
    private GudingzhichuleixService gudingzhichuleixService;
    @Autowired
    private ShourutypeService shourutypeService;
    @Autowired
    private ZhichutypeService zhichutypeService;
    @Autowired
    private WenzhangService wenzhangService;
    @Autowired
    private GonggaoService gonggaoService;
    @PostMapping("/userlogin")
    @ResponseBody
    public JsonResult login(String username, String password) {
        if (username == null || username.trim().isEmpty()) return JsonResult.error("請輸入賬號");
        if (password == null || password.trim().isEmpty()) return JsonResult.error("請輸入密碼");
        Users user = userService.getOne(new QueryWrapper<Users>().eq("username", username).eq("password", password));
        if (user != null) {
            return JsonResult.ok("登入成功").setData(user);
        } else {
            return JsonResult.error("使用者名稱或密碼錯誤");
        }
    }
    @PostMapping("/userreg")
    @ResponseBody
    public JsonResult reg(String username, String password, String nickname, String dianhua, String youxiang,String image) {
        if (username == null || username.trim().isEmpty()) return JsonResult.error("請輸入賬號");
        if (password == null || password.trim().isEmpty()) return JsonResult.error("請輸入密碼");
        if (nickname == null || nickname.trim().isEmpty()) return JsonResult.error("請輸入真實姓名");
        if (dianhua == null || dianhua.trim().isEmpty()) return JsonResult.error("請輸入電話");
        if (youxiang == null || youxiang.trim().isEmpty()) return JsonResult.error("請輸入郵箱");
        Users user1 = new Users();
        user1.setUsername(username);
        user1.setNickname(nickname);
        user1.setPassword(password);
        user1.setDianhua(dianhua);
        user1.setYouxiang(youxiang);
        user1.setImage(image);
        Users user = userService.getOne(new QueryWrapper<Users>().eq("username", username));
        if (user!=null){
            return JsonResult.error("使用者名稱已經存在,請重試!");
        }
        if (userService.save(user1)) {
            return JsonResult.ok("註冊成功");
        }
        return JsonResult.error("註冊失敗");
    }
    @PostMapping("/userupdate")
    @ResponseBody
    public JsonResult update(Integer id, String username, String password, String nickname) {
        if (username == null || username.trim().isEmpty()) return JsonResult.error("請輸入賬號");
        if (password == null || password.trim().isEmpty()) return JsonResult.error("請輸入密碼");
        if (nickname == null || nickname.trim().isEmpty()) return JsonResult.error("請輸入真實姓名");
        Users userone = userService.getById(id);
        if (userone == null) {
            return JsonResult.ok("使用者不存在!");
        }
        userone.setUsername(username);
        userone.setPassword(password);
        userone.setNickname(nickname);
        if (userService.updateById(userone)) {
            return JsonResult.ok("修改成功");
        }
        return JsonResult.error("修改失敗");
    }
    @PostMapping("/userupdatePass")
    @ResponseBody
    public JsonResult updatePass(Integer id, String username, String password) {
        if (username == null || username.trim().isEmpty()) return JsonResult.error("請輸入賬號");
        if (password == null || password.trim().isEmpty()) return JsonResult.error("請輸入密碼");
        Users userone = userService.getById(id);
        if (userone == null) {
            return JsonResult.ok("使用者不存在!");
        }
        userone.setUsername(username);
        userone.setPassword(password);
        if (userService.updateById(userone)) {
            return JsonResult.ok("修改成功");
        }
        return JsonResult.error("修改失敗");
    }
    @PostMapping("/userupdateImage")
    @ResponseBody
    public JsonResult updateImage(Integer id, String image) {
        Users userone = userService.getById(id);
        if (userone == null) {
            return JsonResult.ok("使用者不存在!");
        }
        userone.setImage(image);
        if (userService.updateById(userone)) {
            return JsonResult.ok("修改成功");
        }
        return JsonResult.error("修改失敗");
    }
    @ResponseBody
    @RequestMapping("/shouru/list")
    public JsonResult ShouRuList(String username) {
        PageParam<Zhichu> pageParam = new PageParam<>();
        pageParam.put("username", username);
        List<Shouru> records = shouruService.listAll(pageParam.getNoPageParam());
        return JsonResult.ok().setData(records);
    }
    @ResponseBody
    @RequestMapping("/wenzhang/list")
    public JsonResult WenZhangList() {
        PageParam<Wenzhang> pageParam = new PageParam<>();
        List<Wenzhang> records = wenzhangService.listAll(pageParam.getNoPageParam());
        return JsonResult.ok().setData(records);
    }
    @ResponseBody
    @RequestMapping("/gonggao/list")
    public JsonResult GongGaoList() {
        PageParam<Gonggao> pageParam = new PageParam<>();
        List<Gonggao> records = gonggaoService.listAll(pageParam.getNoPageParam());
        return JsonResult.ok().setData(records);
    }
/**
 * 管理
 * Created by xiaomeng,vx:jiushulearn
 */
@Controller
@RequestMapping("/caiwu/gonggao")
public class GonggaoController extends BaseController {
    @Autowired
    private GonggaoService gonggaoService;
    @RequestMapping()
    public String view() {
        return "caiwu/gonggao.html";
    }
    /**
     * 分頁查詢
     */
    @ResponseBody
    @RequestMapping("/page")
    public PageResult<Gonggao> page(HttpServletRequest request) {
        PageParam<Gonggao> pageParam = new PageParam<>(request);
        return new PageResult<>(gonggaoService.page(pageParam, pageParam.getWrapper()).getRecords(), pageParam.getTotal());
        //return gonggaoService.listPage(pageParam);  // 使用關聯查詢
    }
    /**
     * 查詢全部
     */
    @ResponseBody
    @RequestMapping("/list")
    public JsonResult list(HttpServletRequest request) {
        PageParam<Gonggao> pageParam = new PageParam<>(request);
        return JsonResult.ok().setData(gonggaoService.list(pageParam.getOrderWrapper()));
        //List<Gonggao> records = gonggaoService.listAll(pageParam.getNoPageParam());  // 使用關聯查詢
        //return JsonResult.ok().setData(pageParam.sortRecords(records));
    }
    /**
     * 根據id查詢
     */
    @ResponseBody
    @RequestMapping("/get")
    public JsonResult get(Integer id) {
        return JsonResult.ok().setData(gonggaoService.getById(id));
		// 使用關聯查詢
        //PageParam<Gonggao> pageParam = new PageParam<>();
		//pageParam.put("id", id);
        //List<Gonggao> records = gonggaoService.listAll(pageParam.getNoPageParam());
        //return JsonResult.ok().setData(pageParam.getOne(records));
    }
    /**
     * 新增
     */
    @ResponseBody
    @RequestMapping("/save")
    public JsonResult save(Gonggao gonggao) {
        if (gonggaoService.save(gonggao)) {
            return JsonResult.ok("新增成功");
        }
        return JsonResult.error("新增失敗");
    }
    /**
     * 修改
     */
    @ResponseBody
    @RequestMapping("/update")
    public JsonResult update(Gonggao gonggao) {
        if (gonggaoService.updateById(gonggao)) {
            return JsonResult.ok("修改成功");
        }
        return JsonResult.error("修改失敗");
    }
    /**
     * 刪除
     */
    @ResponseBody
    @RequestMapping("/remove")
    public JsonResult remove(Integer id) {
        if (gonggaoService.removeById(id)) {
            return JsonResult.ok("刪除成功");
        }
        return JsonResult.error("刪除失敗");
    }
    /**
     * 批次新增
     */
    @ResponseBody
    @RequestMapping("/saveBatch")
    public JsonResult saveBatch(@RequestBody List<Gonggao> list) {
        if (gonggaoService.saveBatch(list)) {
            return JsonResult.ok("新增成功");
        }
        return JsonResult.error("新增失敗");
    }
    /**
     * 批次修改
     */
    @ResponseBody
    @RequestMapping("/updateBatch")
    public JsonResult updateBatch(@RequestBody BatchParam<Gonggao> batchParam) {
        if (batchParam.update(gonggaoService, "id")) {
            return JsonResult.ok("修改成功");
        }
        return JsonResult.error("修改失敗");
    }
@Controller
@RequestMapping("/caiwu/gudingzhichu")
public class GudingzhichuController extends BaseController {
    @Autowired
    private GudingzhichuService gudingzhichuService;
    @Autowired
    private GudingzhichuleixService gudingzhichuleixService;
    private List<String> shijianleixing=new ArrayList<>();
    @RequestMapping()
    public String view(Model model) {
        model.addAttribute("leixing",gudingzhichuleixService.list());
        //每週  每月  每年  一直
        shijianleixing.add("每週");
        shijianleixing.add("每月");
        shijianleixing.add("每年");
        shijianleixing.add("一直");
        model.addAttribute("shijianleixing", shijianleixing);
        return "caiwu/gudingzhichu.html";
    }
    /**
     * 分頁查詢
     */
    @ResponseBody
    @RequestMapping("/page")
    public PageResult<Gudingzhichu> page(HttpServletRequest request) {
        PageParam<Gudingzhichu> pageParam = new PageParam<>(request);
        return new PageResult<>(gudingzhichuService.page(pageParam, pageParam.getWrapper()).getRecords(), pageParam.getTotal());
        //return gudingzhichuService.listPage(pageParam);  // 使用關聯查詢
    }
    /**
     * 查詢全部
     */
    @ResponseBody
    @RequestMapping("/list")
    public JsonResult list(HttpServletRequest request) {
        PageParam<Gudingzhichu> pageParam = new PageParam<>(request);
        return JsonResult.ok().setData(gudingzhichuService.list(pageParam.getOrderWrapper()));
        //List<Gudingzhichu> records = gudingzhichuService.listAll(pageParam.getNoPageParam());  // 使用關聯查詢
        //return JsonResult.ok().setData(pageParam.sortRecords(records));
    }
    /**
     * 根據id查詢
     */
    @ResponseBody
    @RequestMapping("/get")
    public JsonResult get(Integer id) {
        return JsonResult.ok().setData(gudingzhichuService.getById(id));
		// 使用關聯查詢
        //PageParam<Gudingzhichu> pageParam = new PageParam<>();
		//pageParam.put("id", id);
        //List<Gudingzhichu> records = gudingzhichuService.listAll(pageParam.getNoPageParam());
        //return JsonResult.ok().setData(pageParam.getOne(records));
    }
    /**
     * 新增
     */
    @ResponseBody
    @RequestMapping("/save")
    public JsonResult save(Gudingzhichu gudingzhichu) {
        if (gudingzhichuService.save(gudingzhichu)) {
            return JsonResult.ok("新增成功");
        }
        return JsonResult.error("新增失敗");
    }
    /**
     * 修改
     */
    @ResponseBody
    @RequestMapping("/update")
    public JsonResult update(Gudingzhichu gudingzhichu) {
        if (gudingzhichuService.updateById(gudingzhichu)) {
            return JsonResult.ok("修改成功");
        }
        return JsonResult.error("修改失敗");
    }

到此這篇關於Android快速實現一個財務APP程式詳解的文章就介紹到這了,更多相關Android財務APP內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com