计算机毕业设计选题推荐-社区停车信息管理系统-Java/Python项目实战

news2024/12/28 5:33:42

作者主页:IT研究室✨
个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。
☑文末获取源码☑
精彩专栏推荐⬇⬇⬇
Java项目
Python项目
安卓项目
微信小程序项目

文章目录

  • 一、前言
  • 二、开发环境
  • 三、系统界面展示
  • 四、代码参考
  • 五、论文参考
  • 六、系统视频
  • 结语

一、前言

随着城市化进程的加快,社区停车难问题日益凸显,成为城市管理的一大难题。据统计,中国城市汽车保有量持续增长,停车位供需矛盾日益突出。传统的社区停车管理模式已无法满足现代社区对便捷、智能停车服务的需求。因此,开发一个社区停车信息管理系统,对于提高停车资源利用率、缓解停车难问题具有重要意义。

现有的社区停车管理多依赖于人工管理,存在效率低下、信息不透明、管理不规范等问题。例如,车辆信息登记不准确,车位信息更新不及时,导致车位使用效率低下;入场和离场信息记录不完整,难以进行有效的停车数据分析;用户缺乏便捷的停车信息查询和登记渠道,影响停车体验。这些问题制约了社区停车管理的现代化发展。

本课题旨在设计并实现一个社区停车信息管理系统,通过信息技术手段,提高社区停车管理的智能化水平。系统将实现车辆信息的电子化管理,车位信息的实时更新,入场和离场信息的自动化记录,以及用户停车信息的便捷查询和登记。通过本课题的研究,希望能够为社区提供一个便捷、透明、便捷的停车管理解决方案,提升社区停车服务水平。

在社区停车信息管理系统中,管理人员负责系统的核心管理任务,包括用户账户的创建与维护、通知公告的发布与更新、车辆信息的录入与审核、车位信息的动态管理、入场停车信息的监控与记录、以及车辆离场信息的查看与管理,确保社区停车秩序的规范和便捷;用户则能够查看社区通知公告,了解停车相关政策和信息,进行入场停车操作,记录车辆离场信息,并在需要时登记或更新车辆信息,享受便捷的停车服务。系统通过这些功能模块的协同工作,旨在提供一个智能化、自动化的社区停车管理环境,提升用户停车体验,优化停车资源的分配和使用。

本课题的研究具有重要的理论意义和实际意义。从理论角度来看,它为社区停车管理领域提供了新的研究思路,即利用信息技术优化停车资源管理,有助于推动城市管理理论和实践的创新。从实际角度来看,社区停车信息管理系统的应用将显著提高社区停车管理效率,优化停车资源配置,提升居民停车体验,促进社区和谐发展。同时,系统的推广应用也将为其他社区提供借鉴,推动社区停车管理的信息化和智能化进程。

二、开发环境

  • 开发语言:Java/Python
  • 数据库:MySQL
  • 系统架构:B/S
  • 后端:SpringBoot/SSM/Django/Flask
  • 前端:Vue

三、系统界面展示

  • 社区停车信息管理系统界面展示:
    用户-车位信息详情:
    用户-车位信息详情
    用户-入场停车:
    用户-入场停车
    用户-车辆离场:
    用户-车辆离场
    用户-登记车辆信息:
    用户-登记车辆信息
    管理员-车辆信息管理:
    管理员-车辆信息管理
    管理员-车位信息管理:
    管理员-车位信息管理

四、代码参考

  • 项目实战代码参考:
@RestController
@Controller
@RequestMapping("/cheliang")
public class CheliangController {
    private static final Logger logger = LoggerFactory.getLogger(CheliangController.class);

    private static final String TABLE_NAME = "cheliang";

    @Autowired
    private CheliangService cheliangService;


    @Autowired
    private TokenService tokenService;

    @Autowired
    private CheweiService cheweiService;//车位
    @Autowired
    private CheweiYuyueService cheweiYuyueService;//车位预订
    @Autowired
    private DictionaryService dictionaryService;//字典
    @Autowired
    private GonggaoService gonggaoService;//公告
    @Autowired
    private WeiguiService weiguiService;//违规
    @Autowired
    private YonghuService yonghuService;//用户
    @Autowired
    private YuangongService yuangongService;//员工
    @Autowired
    private UsersService usersService;//管理员


    /**
    * 后端列表
    */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){
        logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));
        String role = String.valueOf(request.getSession().getAttribute("role"));
        if(false)
            return R.error(511,"永不会进入");
        else if("用户".equals(role))
            params.put("yonghuId",request.getSession().getAttribute("userId"));
        else if("员工".equals(role))
            params.put("yuangongId",request.getSession().getAttribute("userId"));
        params.put("cheliangDeleteStart",1);params.put("cheliangDeleteEnd",1);
        CommonUtil.checkMap(params);
        PageUtils page = cheliangService.queryPage(params);

        //字典表数据转换
        List<CheliangView> list =(List<CheliangView>)page.getList();
        for(CheliangView c:list){
            //修改对应字典表字段
            dictionaryService.dictionaryConvert(c, request);
        }
        return R.ok().put("data", page);
    }

    /**
    * 后端详情
    */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id, HttpServletRequest request){
        logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);
        CheliangEntity cheliang = cheliangService.selectById(id);
        if(cheliang !=null){
            //entity转view
            CheliangView view = new CheliangView();
            BeanUtils.copyProperties( cheliang , view );//把实体数据重构到view中
            //级联表 用户
            //级联表
            YonghuEntity yonghu = yonghuService.selectById(cheliang.getYonghuId());
            if(yonghu != null){
            BeanUtils.copyProperties( yonghu , view ,new String[]{ "id", "createTime", "insertTime", "updateTime", "username", "password", "newMoney", "yonghuId"});//把级联的数据添加到view中,并排除id和创建时间字段,当前表的级联注册表
            view.setYonghuId(yonghu.getId());
            }
            //修改对应字典表字段
            dictionaryService.dictionaryConvert(view, request);
            return R.ok().put("data", view);
        }else {
            return R.error(511,"查不到数据");
        }

    }

    /**
    * 后端保存
    */
    @RequestMapping("/save")
    public R save(@RequestBody CheliangEntity cheliang, HttpServletRequest request){
        logger.debug("save方法:,,Controller:{},,cheliang:{}",this.getClass().getName(),cheliang.toString());

        String role = String.valueOf(request.getSession().getAttribute("role"));
        if(false)
            return R.error(511,"永远不会进入");
        else if("用户".equals(role))
            cheliang.setYonghuId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));

        Wrapper<CheliangEntity> queryWrapper = new EntityWrapper<CheliangEntity>()
            .eq("yonghu_id", cheliang.getYonghuId())
            .eq("cheliang_name", cheliang.getCheliangName())
            .eq("cheliang_paizhao", cheliang.getCheliangPaizhao())
            .eq("cheliang_types", cheliang.getCheliangTypes())
            .eq("cheliang_delete", 1)
            ;

        logger.info("sql语句:"+queryWrapper.getSqlSegment());
        CheliangEntity cheliangEntity = cheliangService.selectOne(queryWrapper);
        if(cheliangEntity==null){
            cheliang.setCheliangDelete(1);
            cheliang.setInsertTime(new Date());
            cheliang.setCreateTime(new Date());
            YonghuEntity yonghuEntity = yonghuService.selectById(cheliang.getYonghuId());
            cheliangService.insert(cheliang);
            cheliangService.updateChePai(yonghuEntity.getId(),yonghuEntity.getYonghuChepai());
            return R.ok();
        }else {
            return R.error(511,"表中有相同数据");
        }
    }

    /**
    * 后端修改
    */
    @RequestMapping("/update")
    public R update(@RequestBody CheliangEntity cheliang, HttpServletRequest request) throws NoSuchFieldException, ClassNotFoundException, IllegalAccessException, InstantiationException {
        logger.debug("update方法:,,Controller:{},,cheliang:{}",this.getClass().getName(),cheliang.toString());
        CheliangEntity oldCheliangEntity = cheliangService.selectById(cheliang.getId());//查询原先数据

        String role = String.valueOf(request.getSession().getAttribute("role"));
//        if(false)
//            return R.error(511,"永远不会进入");
//        else if("用户".equals(role))
//            cheliang.setYonghuId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
        if("".equals(cheliang.getCheliangPhoto()) || "null".equals(cheliang.getCheliangPhoto())){
                cheliang.setCheliangPhoto(null);
        }
        if("".equals(cheliang.getCheliangFile()) || "null".equals(cheliang.getCheliangFile())){
                cheliang.setCheliangFile(null);
        }
        if("".equals(cheliang.getCheliangContent()) || "null".equals(cheliang.getCheliangContent())){
                cheliang.setCheliangContent(null);
        }

            cheliangService.updateById(cheliang);//根据id更新
            return R.ok();
    }



    /**
    * 删除
    */
    @RequestMapping("/delete")
    public R delete(@RequestBody Integer[] ids, HttpServletRequest request){
        logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());
        List<CheliangEntity> oldCheliangList =cheliangService.selectBatchIds(Arrays.asList(ids));//要删除的数据
        ArrayList<CheliangEntity> list = new ArrayList<>();
        for(Integer id:ids){
            CheliangEntity cheliangEntity = new CheliangEntity();
            cheliangEntity.setId(id);
            cheliangEntity.setCheliangDelete(2);
            list.add(cheliangEntity);
        }
        if(list != null && list.size() >0){
            cheliangService.updateBatchById(list);
        }

        return R.ok();
    }


    /**
     * 批量上传
     */
    @RequestMapping("/batchInsert")
    public R save( String fileName, HttpServletRequest request){
        logger.debug("batchInsert方法:,,Controller:{},,fileName:{}",this.getClass().getName(),fileName);
        Integer yonghuId = Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId")));
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        //.eq("time", new SimpleDateFormat("yyyy-MM-dd").format(new Date()))
        try {
            List<CheliangEntity> cheliangList = new ArrayList<>();//上传的东西
            Map<String, List<String>> seachFields= new HashMap<>();//要查询的字段
            Date date = new Date();
            int lastIndexOf = fileName.lastIndexOf(".");
            if(lastIndexOf == -1){
                return R.error(511,"该文件没有后缀");
            }else{
                String suffix = fileName.substring(lastIndexOf);
                if(!".xls".equals(suffix)){
                    return R.error(511,"只支持后缀为xls的excel文件");
                }else{
                    URL resource = this.getClass().getClassLoader().getResource("static/upload/" + fileName);//获取文件路径
                    File file = new File(resource.getFile());
                    if(!file.exists()){
                        return R.error(511,"找不到上传文件,请联系管理员");
                    }else{
                        List<List<String>> dataList = PoiUtil.poiImport(file.getPath());//读取xls文件
                        dataList.remove(0);//删除第一行,因为第一行是提示
                        for(List<String> data:dataList){
                            //循环
                            CheliangEntity cheliangEntity = new CheliangEntity();
//                            cheliangEntity.setYonghuId(Integer.valueOf(data.get(0)));   //用户 要改的
//                            cheliangEntity.setCheliangName(data.get(0));                    //车辆名称 要改的
//                            cheliangEntity.setCheliangUuidNumber(data.get(0));                    //车辆编号 要改的
//                            cheliangEntity.setCheliangPhoto("");//详情和图片
//                            cheliangEntity.setCheliangPaizhao(data.get(0));                    //车辆牌照 要改的
//                            cheliangEntity.setCheliangFile(data.get(0));                    //车牌 要改的
//                            cheliangEntity.setCheliangTypes(Integer.valueOf(data.get(0)));   //车辆类型 要改的
//                            cheliangEntity.setCheliangContent("");//详情和图片
//                            cheliangEntity.setCheliangDelete(1);//逻辑删除字段
//                            cheliangEntity.setInsertTime(date);//时间
//                            cheliangEntity.setCreateTime(date);//时间
                            cheliangList.add(cheliangEntity);


                            //把要查询是否重复的字段放入map中
                                //车辆编号
                                if(seachFields.containsKey("cheliangUuidNumber")){
                                    List<String> cheliangUuidNumber = seachFields.get("cheliangUuidNumber");
                                    cheliangUuidNumber.add(data.get(0));//要改的
                                }else{
                                    List<String> cheliangUuidNumber = new ArrayList<>();
                                    cheliangUuidNumber.add(data.get(0));//要改的
                                    seachFields.put("cheliangUuidNumber",cheliangUuidNumber);
                                }
                        }

                        //查询是否重复
                         //车辆编号
                        List<CheliangEntity> cheliangEntities_cheliangUuidNumber = cheliangService.selectList(new EntityWrapper<CheliangEntity>().in("cheliang_uuid_number", seachFields.get("cheliangUuidNumber")).eq("cheliang_delete", 1));
                        if(cheliangEntities_cheliangUuidNumber.size() >0 ){
                            ArrayList<String> repeatFields = new ArrayList<>();
                            for(CheliangEntity s:cheliangEntities_cheliangUuidNumber){
                                repeatFields.add(s.getCheliangUuidNumber());
                            }
                            return R.error(511,"数据库的该表中的 [车辆编号] 字段已经存在 存在数据为:"+repeatFields.toString());
                        }
                        cheliangService.insertBatch(cheliangList);
                        return R.ok();
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
            return R.error(511,"批量插入数据异常,请联系管理员");
        }
    }




    /**
    * 前端列表
    */
    @IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params, HttpServletRequest request){
        logger.debug("list方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));

        CommonUtil.checkMap(params);
        PageUtils page = cheliangService.queryPage(params);

        //字典表数据转换
        List<CheliangView> list =(List<CheliangView>)page.getList();
        for(CheliangView c:list)
            dictionaryService.dictionaryConvert(c, request); //修改对应字典表字段

        return R.ok().put("data", page);
    }

    /**
    * 前端详情
    */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Integer id, HttpServletRequest request){
        logger.debug("detail方法:,,Controller:{},,id:{}",this.getClass().getName(),id);
        CheliangEntity cheliang = cheliangService.selectById(id);
            if(cheliang !=null){


                //entity转view
                CheliangView view = new CheliangView();
                BeanUtils.copyProperties( cheliang , view );//把实体数据重构到view中

                //级联表
                    YonghuEntity yonghu = yonghuService.selectById(cheliang.getYonghuId());
                if(yonghu != null){
                    BeanUtils.copyProperties( yonghu , view ,new String[]{ "id", "createTime", "insertTime", "updateTime", "username", "password", "newMoney", "yonghuId"});//把级联的数据添加到view中,并排除id和创建时间字段
                    view.setYonghuId(yonghu.getId());
                }
                //修改对应字典表字段
                dictionaryService.dictionaryConvert(view, request);
                return R.ok().put("data", view);
            }else {
                return R.error(511,"查不到数据");
            }
    }


    /**
    * 前端保存
    */
    @RequestMapping("/add")
    public R add(@RequestBody CheliangEntity cheliang, HttpServletRequest request){
        logger.debug("add方法:,,Controller:{},,cheliang:{}",this.getClass().getName(),cheliang.toString());
        Wrapper<CheliangEntity> queryWrapper = new EntityWrapper<CheliangEntity>()
            .eq("yonghu_id", cheliang.getYonghuId())
            .eq("cheliang_name", cheliang.getCheliangName())
            .eq("cheliang_uuid_number", cheliang.getCheliangUuidNumber())
            .eq("cheliang_paizhao", cheliang.getCheliangPaizhao())
            .eq("cheliang_types", cheliang.getCheliangTypes())
            .eq("cheliang_delete", cheliang.getCheliangDelete())
//            .notIn("cheliang_types", new Integer[]{102})
            ;
        logger.info("sql语句:"+queryWrapper.getSqlSegment());
        CheliangEntity cheliangEntity = cheliangService.selectOne(queryWrapper);
        if(cheliangEntity==null){
            cheliang.setCheliangDelete(1);
            cheliang.setInsertTime(new Date());
            cheliang.setCreateTime(new Date());
        cheliangService.insert(cheliang);

            return R.ok();
        }else {
            return R.error(511,"表中有相同数据");
        }
    }

}
@RestController
@Controller
@RequestMapping("/chewei")
public class CheweiController {
    private static final Logger logger = LoggerFactory.getLogger(CheweiController.class);

    private static final String TABLE_NAME = "chewei";

    @Autowired
    private CheweiService cheweiService;


    @Autowired
    private TokenService tokenService;

    @Autowired
    private CheliangService cheliangService;//车辆
    @Autowired
    private CheweiYuyueService cheweiYuyueService;//车位预订
    @Autowired
    private DictionaryService dictionaryService;//字典
    @Autowired
    private GonggaoService gonggaoService;//公告
    @Autowired
    private WeiguiService weiguiService;//违规
    @Autowired
    private YonghuService yonghuService;//用户
    @Autowired
    private YuangongService yuangongService;//员工
    @Autowired
    private UsersService usersService;//管理员


    /**
    * 后端列表
    */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){
        logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));
        String role = String.valueOf(request.getSession().getAttribute("role"));
        if(false)
            return R.error(511,"永不会进入");
        else if("用户".equals(role))
            params.put("yonghuId",request.getSession().getAttribute("userId"));
        else if("员工".equals(role))
            params.put("yuangongId",request.getSession().getAttribute("userId"));
        params.put("cheweiDeleteStart",1);params.put("cheweiDeleteEnd",1);
        CommonUtil.checkMap(params);
        PageUtils page = cheweiService.queryPage(params);

        //字典表数据转换
        List<CheweiView> list =(List<CheweiView>)page.getList();
        for(CheweiView c:list){
            //修改对应字典表字段
            dictionaryService.dictionaryConvert(c, request);
        }
        return R.ok().put("data", page);
    }

    /**
    * 后端详情
    */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id, HttpServletRequest request){
        logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);
        CheweiEntity chewei = cheweiService.selectById(id);
        if(chewei !=null){
            //entity转view
            CheweiView view = new CheweiView();
            BeanUtils.copyProperties( chewei , view );//把实体数据重构到view中
            //修改对应字典表字段
            dictionaryService.dictionaryConvert(view, request);
            return R.ok().put("data", view);
        }else {
            return R.error(511,"查不到数据");
        }

    }

    /**
    * 后端保存
    */
    @RequestMapping("/save")
    public R save(@RequestBody CheweiEntity chewei, HttpServletRequest request){
        logger.debug("save方法:,,Controller:{},,chewei:{}",this.getClass().getName(),chewei.toString());

        String role = String.valueOf(request.getSession().getAttribute("role"));
        if(false)
            return R.error(511,"永远不会进入");

        Wrapper<CheweiEntity> queryWrapper = new EntityWrapper<CheweiEntity>()
            .eq("chewei_name", chewei.getCheweiName())
            .eq("chewei_address", chewei.getCheweiAddress())
            .eq("chewei_types", chewei.getCheweiTypes())
            .eq("shangxia_types", chewei.getShangxiaTypes())
            .eq("chewei_delete", 1)
            ;

        logger.info("sql语句:"+queryWrapper.getSqlSegment());
        CheweiEntity cheweiEntity = cheweiService.selectOne(queryWrapper);
        if(cheweiEntity==null){
            chewei.setShangxiaTypes(1);
            chewei.setCheweiDelete(1);
            chewei.setInsertTime(new Date());
            chewei.setCreateTime(new Date());
            cheweiService.insert(chewei);
            return R.ok();
        }else {
            return R.error(511,"表中有相同数据");
        }
    }

    /**
    * 后端修改
    */
    @RequestMapping("/update")
    public R update(@RequestBody CheweiEntity chewei, HttpServletRequest request) throws NoSuchFieldException, ClassNotFoundException, IllegalAccessException, InstantiationException {
        logger.debug("update方法:,,Controller:{},,chewei:{}",this.getClass().getName(),chewei.toString());
        CheweiEntity oldCheweiEntity = cheweiService.selectById(chewei.getId());//查询原先数据

        String role = String.valueOf(request.getSession().getAttribute("role"));
//        if(false)
//            return R.error(511,"永远不会进入");
        if("".equals(chewei.getCheweiPhoto()) || "null".equals(chewei.getCheweiPhoto())){
                chewei.setCheweiPhoto(null);
        }
        if("".equals(chewei.getCheweiContent()) || "null".equals(chewei.getCheweiContent())){
                chewei.setCheweiContent(null);
        }

            cheweiService.updateById(chewei);//根据id更新
            return R.ok();
    }



    /**
    * 删除
    */
    @RequestMapping("/delete")
    public R delete(@RequestBody Integer[] ids, HttpServletRequest request){
        logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());
        List<CheweiEntity> oldCheweiList =cheweiService.selectBatchIds(Arrays.asList(ids));//要删除的数据
        ArrayList<CheweiEntity> list = new ArrayList<>();
        for(Integer id:ids){
            CheweiEntity cheweiEntity = new CheweiEntity();
            cheweiEntity.setId(id);
            cheweiEntity.setCheweiDelete(2);
            list.add(cheweiEntity);
        }
        if(list != null && list.size() >0){
            cheweiService.updateBatchById(list);
        }

        return R.ok();
    }


    /**
     * 批量上传
     */
    @RequestMapping("/batchInsert")
    public R save( String fileName, HttpServletRequest request){
        logger.debug("batchInsert方法:,,Controller:{},,fileName:{}",this.getClass().getName(),fileName);
        Integer yonghuId = Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId")));
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        //.eq("time", new SimpleDateFormat("yyyy-MM-dd").format(new Date()))
        try {
            List<CheweiEntity> cheweiList = new ArrayList<>();//上传的东西
            Map<String, List<String>> seachFields= new HashMap<>();//要查询的字段
            Date date = new Date();
            int lastIndexOf = fileName.lastIndexOf(".");
            if(lastIndexOf == -1){
                return R.error(511,"该文件没有后缀");
            }else{
                String suffix = fileName.substring(lastIndexOf);
                if(!".xls".equals(suffix)){
                    return R.error(511,"只支持后缀为xls的excel文件");
                }else{
                    URL resource = this.getClass().getClassLoader().getResource("static/upload/" + fileName);//获取文件路径
                    File file = new File(resource.getFile());
                    if(!file.exists()){
                        return R.error(511,"找不到上传文件,请联系管理员");
                    }else{
                        List<List<String>> dataList = PoiUtil.poiImport(file.getPath());//读取xls文件
                        dataList.remove(0);//删除第一行,因为第一行是提示
                        for(List<String> data:dataList){
                            //循环
                            CheweiEntity cheweiEntity = new CheweiEntity();
//                            cheweiEntity.setCheweiName(data.get(0));                    //车位名称 要改的
//                            cheweiEntity.setCheweiUuidNumber(data.get(0));                    //车位编号 要改的
//                            cheweiEntity.setCheweiPhoto("");//详情和图片
//                            cheweiEntity.setCheweiAddress(data.get(0));                    //车位地点 要改的
//                            cheweiEntity.setCheweiTingchefei(data.get(0));                    //金额/小时 要改的
//                            cheweiEntity.setCheweiTypes(Integer.valueOf(data.get(0)));   //车位类型 要改的
//                            cheweiEntity.setCheweiContent("");//详情和图片
//                            cheweiEntity.setShangxiaTypes(Integer.valueOf(data.get(0)));   //是否上架 要改的
//                            cheweiEntity.setCheweiDelete(1);//逻辑删除字段
//                            cheweiEntity.setInsertTime(date);//时间
//                            cheweiEntity.setCreateTime(date);//时间
                            cheweiList.add(cheweiEntity);


                            //把要查询是否重复的字段放入map中
                                //车位编号
                                if(seachFields.containsKey("cheweiUuidNumber")){
                                    List<String> cheweiUuidNumber = seachFields.get("cheweiUuidNumber");
                                    cheweiUuidNumber.add(data.get(0));//要改的
                                }else{
                                    List<String> cheweiUuidNumber = new ArrayList<>();
                                    cheweiUuidNumber.add(data.get(0));//要改的
                                    seachFields.put("cheweiUuidNumber",cheweiUuidNumber);
                                }
                        }

                        //查询是否重复
                         //车位编号
                        List<CheweiEntity> cheweiEntities_cheweiUuidNumber = cheweiService.selectList(new EntityWrapper<CheweiEntity>().in("chewei_uuid_number", seachFields.get("cheweiUuidNumber")).eq("chewei_delete", 1));
                        if(cheweiEntities_cheweiUuidNumber.size() >0 ){
                            ArrayList<String> repeatFields = new ArrayList<>();
                            for(CheweiEntity s:cheweiEntities_cheweiUuidNumber){
                                repeatFields.add(s.getCheweiUuidNumber());
                            }
                            return R.error(511,"数据库的该表中的 [车位编号] 字段已经存在 存在数据为:"+repeatFields.toString());
                        }
                        cheweiService.insertBatch(cheweiList);
                        return R.ok();
                    }
                }
            }
        }catch (Exception e){
            e.printStackTrace();
            return R.error(511,"批量插入数据异常,请联系管理员");
        }
    }




    /**
    * 前端列表
    */
    @IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params, HttpServletRequest request){
        logger.debug("list方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));

        CommonUtil.checkMap(params);
        PageUtils page = cheweiService.queryPage(params);

        //字典表数据转换
        List<CheweiView> list =(List<CheweiView>)page.getList();
        for(CheweiView c:list)
            dictionaryService.dictionaryConvert(c, request); //修改对应字典表字段

        return R.ok().put("data", page);
    }

    /**
    * 前端详情
    */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Integer id, HttpServletRequest request){
        logger.debug("detail方法:,,Controller:{},,id:{}",this.getClass().getName(),id);
        CheweiEntity chewei = cheweiService.selectById(id);
            if(chewei !=null){


                //entity转view
                CheweiView view = new CheweiView();
                BeanUtils.copyProperties( chewei , view );//把实体数据重构到view中

                //修改对应字典表字段
                dictionaryService.dictionaryConvert(view, request);
                return R.ok().put("data", view);
            }else {
                return R.error(511,"查不到数据");
            }
    }


    /**
    * 前端保存
    */
    @RequestMapping("/add")
    public R add(@RequestBody CheweiEntity chewei, HttpServletRequest request){
        logger.debug("add方法:,,Controller:{},,chewei:{}",this.getClass().getName(),chewei.toString());
        Wrapper<CheweiEntity> queryWrapper = new EntityWrapper<CheweiEntity>()
            .eq("chewei_name", chewei.getCheweiName())
            .eq("chewei_uuid_number", chewei.getCheweiUuidNumber())
            .eq("chewei_address", chewei.getCheweiAddress())
            .eq("chewei_types", chewei.getCheweiTypes())
            .eq("shangxia_types", chewei.getShangxiaTypes())
            .eq("chewei_delete", chewei.getCheweiDelete())
//            .notIn("chewei_types", new Integer[]{102})
            ;
        logger.info("sql语句:"+queryWrapper.getSqlSegment());
        CheweiEntity cheweiEntity = cheweiService.selectOne(queryWrapper);
        if(cheweiEntity==null){
            chewei.setCheweiDelete(1);
            chewei.setInsertTime(new Date());
            chewei.setCreateTime(new Date());
        cheweiService.insert(chewei);

            return R.ok();
        }else {
            return R.error(511,"表中有相同数据");
        }
    }

}

五、论文参考

  • 计算机毕业设计选题推荐-社区停车信息管理系统论文参考:
    计算机毕业设计选题推荐-社区停车信息管理系统论文参考

六、系统视频

社区停车信息管理系统项目视频:

计算机毕业设计选题推荐-社区停车信息管理系统-项目实战

结语

计算机毕业设计选题推荐-社区停车信息管理系统-Java/Python项目实战
大家可以帮忙点赞、收藏、关注、评论啦~
源码获取:⬇⬇⬇

精彩专栏推荐⬇⬇⬇
Java项目
Python项目
安卓项目
微信小程序项目

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1969692.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux 内核块设备

磁盘&#xff08;disk&#xff09;是指利用磁记录技术存储数据的存储器。 磁盘是计算机主要的存储介质&#xff0c;可以存储大量的二进制数据&#xff0c;并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘&#xff08;Floppy Disk&#xff0c;简称软盘&#xff09;…

能交易场外个股期权标的有哪些?

目前国内的期权市场能交易场外个股期权标的有除去ST类股票外&#xff0c;一般包括沪深3000多只个股以及股票指数&#xff0c;在交易日内且个股开盘的情况下可以报价购买。不过&#xff0c;由于场外个股期权是非标准化合约&#xff0c;具体的可交易股票名单可能会根据需求有所不…

请转告HPC计算AI计算单位,选对存储事半功倍

U.2 NVMe全闪混合统一存储GS 5000U是Infortrend产品中一款高性能机型。得益于搭载强劲的第五代IntelXeon处理器&#xff0c;以及支持PCIe 5.0、NVMe-oF、100GbE等多种特点&#xff0c;GS 5000U单台块级性能可达50 GB/s的读、20 GB/s的写&#xff0c;以及1300K的IOPS&#xff1b…

数据透视表(四)

文章目录 可视化数据条与切片器串联所有的数据透视表插入数据透视图创建组合图数据的结构化展示如何设置标签 可视化数据条与切片器 插入切片器-在切片器中点击不同的筛选项让透视表与之联动 如果某一栏没有数据显示&#xff0c;点击透视表切片器工具下选项中的切片器设置&…

Java家政自营单商户系统小程序源码

​&#x1f3e0;家政新风尚&#xff1a;揭秘自营单商户系统的魅力与便捷&#xff01; &#x1f3e1;开篇&#xff1a;家政服务的新篇章 在快节奏的现代生活中&#xff0c;家政服务成为了许多家庭的必需品。而“家政自营单商户系统”的兴起&#xff0c;更是为这个行业带来了前…

C ——— 指针笔试题(最终篇)

指针加减整数和解引用的笔试题 boss题&#xff1a; char* c[] { "ENTER","NEW","POINT","FIRST" }; char** cp[] { c 3,c 2,c 1,c }; char*** cpp cp;printf("%s\n", **cpp); printf("%s\n", *-- * cpp …

Vue项目如何打包失败(图解)

目录 案例分析 打包失败 package.json 修正文件 打包测试 打包成功 案例分析 打包失败 package.json {"name": "diaryui","version": "0.0.0","private": true,"type": "module","scripts&…

树组件 el-tree 数据回显

树组件 el-tree 数据回显 树型结构的数据回显问题&#xff1a; 这里我只放了核心代码&#xff0c;主要是如何获取选中的树节点的id集合和如何根据树节点的id集合回显数据 大家根据需要自行更改&#xff01; <el-tree ref"authorityRef" node-key"id" …

springboot“智慧识堂”微信小程序-计算机毕业设计源码26647

摘 要 基于微信的“智慧识堂”是利用微信中的小程序功能来实现&#xff0c;自2011年微信诞生以来&#xff0c;微信的使用越来越普遍&#xff0c;尤其最近几年微信旗下的微信小程序因其不占内存&#xff0c;用完即走的特点吸引越来越多用户&#xff0c;使用微信小程序设计的系统…

5分钟完成视频会议私有化部署

在当今快速发展的商业环境中&#xff0c;企业迫切需要一种既高效又安全的视频会议系统以提升工作效率并确保敏感信息的安全。私有化部署会议服务器作为一种高效的数据交换与协作解决方案&#xff0c;正逐渐成为众多企业的首选。然而&#xff0c;对于那些对数据安全性和隐私保护…

基于python的百度迁徙迁入、迁出数据分析(五)

终于在第五篇文章我们进入了这个系列的正题&#xff1a;数据分析 这里我选择上海2024年5月1日——5月5日的迁入、迁出数据作为分析的基础&#xff0c;首先选择节假日的数据作为分析的原因呢&#xff0c;主要是节假日人们出行目的比较单一&#xff08;出游、探亲&#xff09;&a…

RepoAgent:基于大型语言模型的开源框架,主动生成、维护和更新代码文档

人工智能咨询培训老师叶梓 转载标明出处 开发者通常花费约58%的时间在程序理解上&#xff0c;高质量的代码文档在减少这一时间上扮演着重要角色。然而&#xff0c;维护代码文档同样消耗大量的时间、金钱和人力。为了减轻维护代码文档的负担&#xff0c;早期尝试自动文档生成的方…

【学术会议征稿】2024年环境保护与污染控制国际学术会议 (EPPC 2024)

2024年环境保护与污染控制国际学术会议 &#xff08;EPPC 2024&#xff09; 2024 International Conference on Environmental Protection and Pollution Control (EPPC 2024) 2024年环境保护与污染控制国际学术会议将于2024年11月22-24日于中国西安举行。随着全球环境问题日…

【C语言】C语言期末突击/考研--数据的输入输出

目录 一、printf()输出函数介绍 二、scanf读取标准输入 &#xff08;一&#xff09;scanf函数的原理 &#xff08;二&#xff09;多种数据类型混合输入 三、练习题 今天我们学习printf和scanf读取标准输入。下面我们开始正式的学习吧。 C语言中有很多内置函数&#xff0c;今…

【项目管理进阶】如何制定进度计划

前言 项目管理进阶系列又又又又更新了… 作为Team leader或者Project Manager&#xff0c;你们最怕什么&#xff1f;&#xff08;文末有投票&#xff0c;踊跃参加O&#xff09;~ 甲说&#xff0c;我具备多年的项目管理经验&#xff0c;秉持“兵来将挡&#xff0c;水来土掩”的…

开机WiFi没了只能宽带,连声音都有问题,服务里系统还原等一堆错误无法调试!——DHCP服务器常见的故障影响这么大?

错误呈现&#xff1a; 因为问题解决了所以就剩最开始开机直观看到的问题截图&#xff1a; 最崩溃的网络出现问题&#xff1a; 针对网络问题解决结果失败&#xff1a; 问题描述 1&#xff0c;刚开始声音有问题自以为是驱动连接或者声卡硬件有错。 2&#xff0c;后面发现输入…

DB-GPT_0.5.10安装__部署Qwen2-72b模型(Ubuntu)——报错记录

官网地址在这里——源码部署 (yuque.com)&#xff0c;英文地址——Source Code Deployment | DB-GPT (dbgpt.site) 官网给了三种部署方式&#xff1a;源码部署、Docker部署、Docker-Compose部署&#xff0c;这里我选择的部署方式是源码部署&#xff0c;Docker部署的教程我感觉…

18. Lammps命令学习-4之units

来源&#xff1a; “码农不会写诗”公众号 链接&#xff1a;Lammps命令学习-4之units units style 使用read data或create box命令定义模拟框之前设置用于模拟的单位类型   https://docs.lammps.org/units.html Syntax units styleDescription **设置用于模拟的单位类型&am…

MySQL数据库入门基础知识 【1】推荐

数据库就是储存和管理数据的仓库&#xff0c;对数据进行增删改查操作&#xff0c;其本质是一个软件。 首先数据有两种&#xff0c;一种是关系型数据库&#xff0c;另一种是非关系型数据库。 关系型数据库是以表的形式来存储数据&#xff0c;表和表之间可以有很多复杂的关系&a…

flink 1.17 测试

1、配置 2、测试&#xff1a; ./bin/flink run-application -t yarn-application -Dyarn.application.namewordcount -c org.apache.flink.streaming.examples.wordcount.WordCount ./examples/streaming/WordCount.jar --input hdfs://jy/tmp/input --output hdfs://jy/tmp/o…