位置: IT常识 - 正文

一天撸一个财务APP系统【安卓端+前端+后端】

编辑:rootadmin
一天撸一个财务APP系统【安卓端+前端+后端】

推荐整理分享一天撸一个财务APP系统【安卓端+前端+后端】,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

昨天有个粉丝朋友也想学开发Web和小程序、安卓,问可以在大学学会吗?

在学校学到的东西真的有限:

在很多的高校,有一些教授是学院派的,他们没有做过多少开发工作,上课就是照本宣科,讲的知识点都是陈年落伍的技术,更别说带学生做项目了。

现在的很多硕博学生帮老师做课件,然后老师上课一顿读。

当然有的老师开发能力也是很强的,他们有开发经验,可以更加全面地理解技术知识点,然后传递给学生,也能拿到一些科研项目,然后带学生实战。

但是,但是,这种老师少之又少。我平时辅导过大量的计算机学生,也有个VIP群,很多学习VIP项目的小伙伴,也变得越来越强,

我总结出来,大部门计算机教学水平真的一般般:

1,教材落后,还有很多Java课程在教Swing/SSH框架,这已经是淘汰多少年的技术了。

2,实战不足。学生在大学期间代码量极少,少得可怜,没有项目实战。找工作和企业的要求无法匹配。

3,教授课程方式极其落后。这是计算机啊,不是汇报工作,你全课程ppt有啥用。是念ppt学生能理解,还是给学生实操下项目,学生可以理解????

一天撸一个财务APP系统【安卓端+前端+后端】

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("修改失败"); }四,一起学习

前面小孟已经开源了很多的项目给大家,如果大家想一起学习,可以一起搞起。

关注下面弹出的公众号,回复:项目大全

全部是干货。

👇🏻 点击下面图片回复 项目大全 获取👇🏻

本文链接地址:https://www.jiuchutong.com/zhishi/297493.html 转载请保留说明!

上一篇:RGB与Depth融合方法总结(rgb to hex)

下一篇:RK3588(自带NPU)的环境搭建和体验(一)(rk3566 rk3288)

  • vscode代码格式化(vscode代码格式化快捷键设置)

    vscode代码格式化(vscode代码格式化快捷键设置)

  • 10086查流量发什么数字(10086查流量发啥)

    10086查流量发什么数字(10086查流量发啥)

  • 电脑能连机顶盒吗(电脑连机顶盒不然开不了机)

    电脑能连机顶盒吗(电脑连机顶盒不然开不了机)

  • 华为国行与非国行区别(华为非国行和国行哪个好)

    华为国行与非国行区别(华为非国行和国行哪个好)

  • 配音需要什么设备(配音需要什么工具吗)

    配音需要什么设备(配音需要什么工具吗)

  • 华为mate30pro怎么扫描文件(华为mate30pro怎么升级鸿蒙系统)

    华为mate30pro怎么扫描文件(华为mate30pro怎么升级鸿蒙系统)

  • 手机一会有网一会没网怎么回事(手机一会有网一会断网是什么问题)

    手机一会有网一会没网怎么回事(手机一会有网一会断网是什么问题)

  • word下划线快捷键(文档下划线怎么加)

    word下划线快捷键(文档下划线怎么加)

  • 计算机网络的总线拓扑结构有哪几种(计算机网络的总结)

    计算机网络的总线拓扑结构有哪几种(计算机网络的总结)

  • 支付宝刷脸支付怎么开通(支付宝刷脸支付怎么更改人脸)

    支付宝刷脸支付怎么开通(支付宝刷脸支付怎么更改人脸)

  • 苹果7微信总是闪退(苹果7微信总是重启)

    苹果7微信总是闪退(苹果7微信总是重启)

  • win10wlan开关自动弹回(windows 10 wlan 自动关闭)

    win10wlan开关自动弹回(windows 10 wlan 自动关闭)

  • 直播对手机内存有要求吗(直播对手机内存要求高吗)

    直播对手机内存有要求吗(直播对手机内存要求高吗)

  • 淘宝收货后多久自动评价(淘宝收货后多久之内可以评价)

    淘宝收货后多久自动评价(淘宝收货后多久之内可以评价)

  • 余额的钱怎么转到银行卡(余额的钱怎么转不到余额宝)

    余额的钱怎么转到银行卡(余额的钱怎么转不到余额宝)

  • 华为gt2支持无线充电吗(华为gt2无线充电器)

    华为gt2支持无线充电吗(华为gt2无线充电器)

  • 淘宝图片不清晰怎么办(淘宝图片不清晰是什么原因,怎么办)

    淘宝图片不清晰怎么办(淘宝图片不清晰是什么原因,怎么办)

  • 米聊如何看附近人(米聊如何看附近的群聊)

    米聊如何看附近人(米聊如何看附近的群聊)

  • iphone备忘录怎么改背景(iphone备忘录怎么转移到新手机)

    iphone备忘录怎么改背景(iphone备忘录怎么转移到新手机)

  • 充电器3a5a是什么意思(充电器的3a和5a)

    充电器3a5a是什么意思(充电器的3a和5a)

  • switch休眠时能下载吗(switch休眠可以继续下载吗)

    switch休眠时能下载吗(switch休眠可以继续下载吗)

  • 荣耀20s与荣耀20对比(荣耀20s与荣耀20哪个值得入手)

    荣耀20s与荣耀20对比(荣耀20s与荣耀20哪个值得入手)

  • 天翼网关怎么解除绑定(天翼网关怎么解绑手机号不用了)

    天翼网关怎么解除绑定(天翼网关怎么解绑手机号不用了)

  • airpods可以调音量吗(airpods可以调声音嘛)

    airpods可以调音量吗(airpods可以调声音嘛)

  • pbet00是什么oppo型号(oppo手机pbem00是什么型号)

    pbet00是什么oppo型号(oppo手机pbem00是什么型号)

  • 快手降权是什么状态(快手降权有几种状态)

    快手降权是什么状态(快手降权有几种状态)

  • 买家怎么查自己退款率(买家怎么查自己的评价)

    买家怎么查自己退款率(买家怎么查自己的评价)

  • Windows10 20H2资源管理器总是崩溃重启怎么办(win10资源管理器在哪里找)

    Windows10 20H2资源管理器总是崩溃重启怎么办(win10资源管理器在哪里找)

  • vue项目实现pc端和手机端屏幕自适应(vue开发pc前端网站)

    vue项目实现pc端和手机端屏幕自适应(vue开发pc前端网站)

  • 软件工程毕设题目大全 40个计算机毕业设计项目分享【含源码+论文】(软件工程毕设题目冷门)

    软件工程毕设题目大全 40个计算机毕业设计项目分享【含源码+论文】(软件工程毕设题目冷门)

  • 使用小程序制作一个电子木鱼,功德+1(小程序制作平台)

    使用小程序制作一个电子木鱼,功德+1(小程序制作平台)

  • 金税三期系统的作用
  • 餐饮行业的成本率在多少才正常
  • 个体户一年能开多少普票
  • 个税漏申报了一个月在哪里申报
  • 报验户预缴个税怎么算
  • 吸收合并的税务处理增值税风险
  • 开办费用属于什么科目
  • 房租发票一下全部开出
  • 对子公司进行增资
  • 税控盘280减免代码
  • 本年利润怎么算利润总额
  • 集团公司内部无偿借贷增值税
  • 小规模固定资产一次性扣除
  • 分期收款方式怎么算消费税
  • 有限责任公司的人员构成
  • win7系统没有桌面图标怎么办
  • 怎么找回被册的软件
  • macbook sierra
  • 车间租金计入什么会计科目
  • 电脑管家系统异常要修复吗
  • 收到政府补贴的装修款
  • macbook不用键盘膜会进灰吗
  • 向农民购进农产品
  • PHP:mb_parse_str()的用法_mbstring函数
  • 金税盘服务费怎么申报抵扣
  • linux中的文件
  • 摊余成本等于什么
  • 企业税计算方法
  • php播放本地音乐
  • 理财的利息收入计入什么科目
  • 资产减值会计处理对利润的影响
  • 增值税检查后的调账方法
  • web网页设计期末作业猫眼电影首页
  • vue从入门到精通教程
  • 基础的数据类型
  • SQL(MSSQLSERVER)服务启动错误代码3414的解决方法
  • 发票临时增量好难
  • 新公司筹建期要做账吗
  • 利息支出是利息费用减利息收入吗
  • 运输费用会计
  • 资产减值损失包括什么
  • 权益工具是金融资产还是非金融资产
  • 期初和期末余额是什么意思
  • 工业企业缴纳增值税吗
  • 土增清算后再销售
  • 房租季度付款是几个月
  • 个人所得税要计入管理费用吗
  • 为什么增值税不计入成本费用
  • 买商品赠送赠品怎么做账
  • 长期未用的定金可以退吗
  • 小规模纳税人营改增税率
  • 其他权益工具确认递延所得税负债
  • 金税盘如何查看是否清卡
  • 如何冲减费用做账
  • 会计凭证的主要种类
  • Linux环境mysql5.7.12安装教程
  • 总结sql执行进展怎么写
  • sql字段转首字母大写
  • 电脑安装win8系统
  • windows vista home basic
  • centos6.5设置网络
  • win7系统隐藏文件夹怎么取消隐藏
  • ubuntu怎么添加一个新用户
  • ubuntu debian
  • 苹果系统声音怎么设置方法
  • win10控制面板中没有防火墙
  • PRISMSVR.EXE - PRISMSVR是什么进程 有什么用
  • searchnavversion.exe - searchnavversion是什么进程 作用是什么
  • 电脑为什么会黑屏
  • linux终端怎么用
  • window10英文版下载
  • opengl es3.0metal
  • Node.js中的事件循环是什么
  • 批处理应用实例
  • unity3d 物理引擎
  • Linux bash Shell中的变量类型详解
  • jqueryui dialog
  • js如何定义类
  • flask框架数据可视化
  • 河南税务申报
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设