最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java實(shí)戰(zhàn)之超市收銀管理系統(tǒng)的實(shí)現(xiàn)

 更新時(shí)間:2022年03月25日 11:27:47   作者:qq_1334611189  
這篇文章主要介紹了如何利用Java實(shí)現(xiàn)超市收銀管理系統(tǒng),文中采用的技術(shù)有:Spring、SpringMVC、MyBatis、ThymeLeaf等,需要的可以參考一下

一、項(xiàng)目簡(jiǎn)述

本系統(tǒng)主要實(shí)現(xiàn)的功能有:收銀、報(bào)表、用戶(hù)管理、商品管理、銷(xiāo)售管理、進(jìn)貨退貨管理、倉(cāng)庫(kù)管 理等等功能。

二、項(xiàng)目運(yùn)行

環(huán)境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)

項(xiàng)目技術(shù): Spring+ SpringMVC + MyBatis + ThymeLeaf + JavaScript + JQuery + Ajax + maven等等

三、效果圖

四、核心代碼

品類(lèi)信息控制層

/**
 * <p>
 *  前端控制器
 * </p>
 *
 */
@RestController
@RequestMapping("/category")
public class CategoryController {
 
    @Autowired
    private CategoryService categoryService;
 
 
    /**
     * 類(lèi)別模糊查詢(xún)
     * @param
     * @return
     */
    @SysLog("類(lèi)別查詢(xún)操作")
    @RequestMapping("/categoryList")
    public DataGridViewResult categoryList(CategoryVO categoryVO) {
 
        //創(chuàng)建分頁(yè)信息    參數(shù)1 當(dāng)前頁(yè)  參數(shù)2 每頁(yè)顯示條數(shù)
        IPage<Category> page = new Page<>(categoryVO.getPage(), categoryVO.getLimit());
        QueryWrapper<Category> queryWrapper = new QueryWrapper<>();
        queryWrapper.like(!StringUtils.isEmpty(categoryVO.getCatename()),"catename", categoryVO.getCatename());
        IPage<Category> categoryIPage = categoryService.page(page, queryWrapper);
        /**
         * logsIPage.getTotal() 總條數(shù)
         * logsIPage.getRecords() 分頁(yè)記錄列表
         */
        return new DataGridViewResult(categoryIPage.getTotal(),categoryIPage.getRecords());
 
    }
 
    /**
     * 類(lèi)別批量刪除
     * @param ids
     * @return
     */
    @SysLog("類(lèi)別刪除操作")
    @RequestMapping("/deleteList")
    public Result deleteList(String ids) {
        //將字符串拆分成數(shù)組
        String[] idsStr = ids.split(",");
        List<String> list = Arrays.asList(idsStr);
        boolean bool = categoryService.removeByIds(list);
        if(bool){
            return Result.success(true,"200","刪除成功!");
        }
        return Result.error(false,null,"刪除失??!");
    }
 
    /**
     * 添加類(lèi)別信息
     * @param category
     * @return
     */
    @SysLog("類(lèi)別添加操作")
    @PostMapping("/addcategory")
    public Result addCategory(Category category){
        boolean bool = categoryService.save(category);
        if(bool){
            return Result.success(true,"200","添加成功!");
        }
        return Result.error(false,null,"添加失??!");
    }
 
    /**
     * 修改類(lèi)別信息
     * @param category
     * @return
     */
    @SysLog("類(lèi)別修改操作")
    @PostMapping("/updatecategory")
    public Result updateCategory(Category category){
 
        boolean bool = categoryService.updateById(category);
        if(bool){
            return Result.success(true,"200","修改成功!");
        }
        return Result.error(false,null,"修改失??!");
    }
 
    /**
     * 刪除單條數(shù)據(jù)
     * @param id
     * @return
     */
    @SysLog("類(lèi)別刪除操作")
    @RequestMapping("/deleteOne")
    public Result deleteOne(int id) {
 
        boolean bool = categoryService.removeById(id);
        if(bool){
            return Result.success(true,"200","刪除成功!");
        }
        return Result.error(false,null,"刪除失?。?);
    }
}

用戶(hù)信息控制層

/**
 * <p>
 *  前端控制器
 * </p>
 *
 */
@RestController
@RequestMapping("/customer")
public class CustomerController {
 
    @Autowired
    private CustomerService customerService;
 
 
    /**
     * 客戶(hù)模糊查詢(xún)
     * @param
     * @return
     */
    @SysLog("客戶(hù)查詢(xún)操作")
    @RequestMapping("/customerList")
    public DataGridViewResult customerList(CustomerVO customerVO) {
 
        //創(chuàng)建分頁(yè)信息    參數(shù)1 當(dāng)前頁(yè)  參數(shù)2 每頁(yè)顯示條數(shù)
        IPage<Customer> page = new Page<>(customerVO.getPage(), customerVO.getLimit());
        QueryWrapper<Customer> queryWrapper = new QueryWrapper<>();
        queryWrapper.like(!StringUtils.isEmpty(customerVO.getCustvip()),"custvip", customerVO.getCustvip());
        IPage<Customer> customerIPage = customerService.page(page, queryWrapper);
        /**
         * logsIPage.getTotal() 總條數(shù)
         * logsIPage.getRecords() 分頁(yè)記錄列表
         */
        return new DataGridViewResult(customerIPage.getTotal(),customerIPage.getRecords());
 
    }
 
    /**
     * 客戶(hù)批量刪除
     * @param ids
     * @return
     */
    @SysLog("客戶(hù)刪除操作")
    @RequestMapping("/deleteList")
    public Result deleteList(String ids) {
        //將字符串拆分成數(shù)組
        String[] idsStr = ids.split(",");
        List<String> list = Arrays.asList(idsStr);
        boolean bool = customerService.removeByIds(list);
        if(bool){
            return Result.success(true,"200","刪除成功!");
        }
        return Result.error(false,null,"刪除失敗!");
    }
 
    /**
     * 添加客戶(hù)信息
     * @param customer
     * @return
     */
    @SysLog("客戶(hù)添加操作")
    @PostMapping("/addcustomer")
    public Result addCustomer(Customer customer){
        String id = RandomStringUtils.randomAlphanumeric(10);
 
        customer.setCustvip(id);
        boolean bool = customerService.save(customer);
        if(bool){
            return Result.success(true,"200","添加成功!");
        }
        return Result.error(false,null,"添加失?。?);
    }
 
    /**
     * 修改客戶(hù)信息
     * @param customer
     * @return
     */
    @SysLog("客戶(hù)修改操作")
    @PostMapping("/updatecustomer")
    public Result updateCustomer(Customer customer){
 
        boolean bool = customerService.updateById(customer);
        if(bool){
            return Result.success(true,"200","修改成功!");
        }
        return Result.error(false,null,"修改失?。?);
    }
 
    /**
     * 刪除單條數(shù)據(jù)
     * @param id
     * @return
     */
    @SysLog("客戶(hù)刪除操作")
    @RequestMapping("/deleteOne")
    public Result deleteOne(int id) {
 
        boolean bool = customerService.removeById(id);
        if(bool){
            return Result.success(true,"200","刪除成功!");
        }
        return Result.error(false,null,"刪除失敗!");
    }
 
 
 
    /**
     *
     * 加載下拉框
     * @return
     */
    @RequestMapping("/loadAllCustomer")
    public DataGridViewResult loadAllCustomer(){
        QueryWrapper<Customer> queryWrapper = new QueryWrapper<>();
        List<Customer> list = customerService.list(queryWrapper);
        return new DataGridViewResult(list);
 
    }
 
}

商品信息控制層

/**
 * <p>
 * 前端控制器
 * </p>
 *
 */
@RestController
@RequestMapping("/goods")
public class GoodsController {
 
 
    @Autowired
    private GoodsService goodsService;
 
    @Autowired
    private ProviderService providerService;
 
    @Autowired
    private CategoryService categoryService;
 
    /**
     * 商品模糊查詢(xún)
     *
     * @param
     * @return
     */
    @SysLog("商品查詢(xún)操作")
    @RequestMapping("/goodsList")
    public DataGridViewResult goodsList(GoodsVO goodsVO) {
        //創(chuàng)建分頁(yè)信息    參數(shù)1 當(dāng)前頁(yè)  參數(shù)2 每頁(yè)顯示條數(shù)
        IPage<Goods> page = new Page<>(goodsVO.getPage(), goodsVO.getLimit());
        QueryWrapper<Goods> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq(goodsVO.getProviderid() != null && goodsVO.getProviderid() != 0, "providerid", goodsVO.getProviderid());
        queryWrapper.like(!StringUtils.isEmpty(goodsVO.getGname()), "gname", goodsVO.getGname());
        IPage<Goods> goodsIPage = goodsService.page(page, queryWrapper);
        List<Goods> records = goodsIPage.getRecords();
        for (Goods goods : records) {
            Provider provider = providerService.getById(goods.getProviderid());
            if (null != provider) {
                goods.setProvidername(provider.getProvidername());
            }
        }
        return new DataGridViewResult(goodsIPage.getTotal(), records);
    }
 
 
    /**
     * 添加商品信息
     *
     * @param goods
     * @return
     */
    @SysLog("商品添加操作")
    @PostMapping("/addgoods")
    public Result addGoods(Goods goods) {
        String id = RandomStringUtils.randomAlphanumeric(8);
        if (goods.getGoodsimg()!=null&&goods.getGoodsimg().endsWith("_temp")){
            String newName = AppFileUtils.renameFile(goods.getGoodsimg());
            goods.setGoodsimg(newName);
        }
        goods.setGnumbering(id);
        boolean bool = goodsService.save(goods);
        if (bool) {
            return Result.success(true, "200", "添加成功!");
        }
        return Result.error(false, null, "添加失??!");
    }
 
    /**
     * 修改商品信息
     *
     * @param goods
     * @return
     */
    @SysLog("商品修改操作")
    @PostMapping("/updategoods")
    public Result updateGoods(Goods goods) {
        //商品圖片不是默認(rèn)圖片
        if (!(goods.getGoodsimg()!=null&&goods.getGoodsimg().equals(Constast.DEFAULT_IMG))){
            if (goods.getGoodsimg().endsWith("_temp")){
                String newName = AppFileUtils.renameFile(goods.getGoodsimg());
                goods.setGoodsimg(newName);
                //刪除原先的圖片
                String oldPath = goodsService.getById(goods.getGid()).getGoodsimg();
                AppFileUtils.removeFileByPath(oldPath);
            }
        }
        boolean bool = goodsService.updateById(goods);
        if (bool) {
            return Result.success(true, "200", "修改成功!");
        }
        return Result.error(false, null, "修改失??!");
    }
 
 
    /**
     * 刪除單條數(shù)據(jù)
     *
     * @param id
     * @return
     */
    @SysLog("商品刪除操作")
    @RequestMapping("/deleteOne")
    public Result deleteOne(int id) {
 
        boolean bool = goodsService.removeById(id);
        if (bool) {
            return Result.success(true, "200", "刪除成功!");
        }
        return Result.error(false, null, "刪除失?。?);
    }
 
    /**
     * 根據(jù)id查詢(xún)當(dāng)前商品擁有的類(lèi)別
     *
     * @param id
     * @return
     */
    @RequestMapping("/initGoodsByCategoryId")
    public DataGridViewResult initGoodsByCategoryId(int id) {
        List<Map<String, Object>> mapList = null;
        try {
            //查詢(xún)所有類(lèi)別列表
            mapList = categoryService.listMaps();
            //根據(jù)商品id查詢(xún)商品擁有的類(lèi)別
            Set<Integer> cateIdList = categoryService.findGoodsByCategoryId(id);
            for (Map<String, Object> map : mapList) {
                //定義標(biāo)記 默認(rèn)不選中
                boolean flag = false;
                int cateId = (int) map.get("cateid");
                for (Integer cid : cateIdList) {
                    if (cid == cateId) {
                        flag = true;
                        break;
                    }
                }
                map.put("LAY_CHECKED", flag);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return new DataGridViewResult(Long.valueOf(mapList.size()), mapList);
 
    }
 
    /**
     * 根據(jù)商品id加載商品信息
     * @param goodsid
     * @return
     */
    @GetMapping("/loadGoodsById")
    public DataGridViewResult loadGoodsById(int goodsid) {
 
 
        QueryWrapper<Goods> goodsQueryWrapper = new QueryWrapper<>();
        goodsQueryWrapper.eq(goodsid != 0, "gid", goodsid);
        Goods goods = goodsService.getById(goodsid);
 
        return new DataGridViewResult(goods);
 
    }
 
    /**
     * 為商品分配類(lèi)別
     *
     * @param categoryids
     * @param goodsid
     * @return
     */
    @SysLog("類(lèi)別添加操作")
    @RequestMapping("/saveGoodsCategory")
    public Result saveGoodsCategory(String categoryids, int goodsid) {
 
        try {
            if (goodsService.saveGoodsCategory(goodsid, categoryids)) {
                return Result.success(true, null, "分配成功");
            }
 
        } catch (Exception e) {
            e.printStackTrace();
        }
        return Result.error(false, null, "分配失敗");
 
    }
 
    /**
     * 加載下拉框
     *
     * @return
     */
    @RequestMapping("/loadAllGoods")
    public DataGridViewResult loadAllGoods() {
        QueryWrapper<Goods> queryWrapper = new QueryWrapper<>();
        List<Goods> list = goodsService.list(queryWrapper);
        return new DataGridViewResult(list);
 
    }
 
 
    /**
     * 根據(jù)供應(yīng)商查商品下拉框
     *
     * @param providerid
     * @return
     */
    @RequestMapping("/loadGoodsByProvidreId")
    public DataGridViewResult loadGoodsByProvidreId(Integer providerid) {
        QueryWrapper<Goods> goodsQueryWrapper = new QueryWrapper<>();
        goodsQueryWrapper.eq(providerid != null, "providerid", providerid);
        List<Goods> list = goodsService.list(goodsQueryWrapper);
        for (Goods goods : list) {
            Provider provider = providerService.getById(goods.getProviderid());
            if (null != provider) {
                goods.setProvidername(provider.getProvidername());
            }
 
        }
        return new DataGridViewResult(list);
 
    }
}

以上就是Java實(shí)戰(zhàn)之超市收銀管理系統(tǒng)的實(shí)現(xiàn)的詳細(xì)內(nèi)容,更多關(guān)于Java收銀系統(tǒng)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 經(jīng)典再現(xiàn) 基于JAVA平臺(tái)開(kāi)發(fā)坦克大戰(zhàn)游戲

    經(jīng)典再現(xiàn) 基于JAVA平臺(tái)開(kāi)發(fā)坦克大戰(zhàn)游戲

    經(jīng)典再現(xiàn),這篇文章主要介紹了基于JAVA平臺(tái)開(kāi)發(fā)坦克大戰(zhàn)游戲的相關(guān)代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-06-06
  • SpringBoot中@ComponentScan的使用詳解

    SpringBoot中@ComponentScan的使用詳解

    這篇文章主要介紹了SpringBoot中@ComponentScan的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(12)

    Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(12)

    下面小編就為大家?guī)?lái)一篇Java基礎(chǔ)的幾道練習(xí)題(分享)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧,希望可以幫到你
    2021-07-07
  • SpringMVC @GetMapping注解路徑?jīng)_突問(wèn)題解決

    SpringMVC @GetMapping注解路徑?jīng)_突問(wèn)題解決

    MD5對(duì)密碼進(jìn)行加密存儲(chǔ)是常見(jiàn)的一種加密方式,本文主要介紹了Java雙重MD5加密實(shí)現(xiàn)安全登錄,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Java獲取PPT內(nèi)容的完整指南

    Java獲取PPT內(nèi)容的完整指南

    在現(xiàn)代企業(yè)和教育環(huán)境中,PowerPoint(PPT)作為一種流行的演示文稿工具,被廣泛應(yīng)用于各種場(chǎng)合,隨著數(shù)字化轉(zhuǎn)型的推進(jìn),越來(lái)越多的企業(yè)希望能夠自動(dòng)化處理PPT文件,本文將介紹如何使用Java獲取PPT內(nèi)容,需要的朋友可以參考下
    2024-08-08
  • 利用JWT如何實(shí)現(xiàn)對(duì)API的授權(quán)訪問(wèn)詳解

    利用JWT如何實(shí)現(xiàn)對(duì)API的授權(quán)訪問(wèn)詳解

    這篇文章主要給大家介紹了關(guān)于利用JWT如何實(shí)現(xiàn)對(duì)API的授權(quán)訪問(wèn)的相關(guān)資料,需要的朋友可以參考下
    2018-09-09
  • 使用java生成激活碼和密鑰的方法

    使用java生成激活碼和密鑰的方法

    本文主要介紹了java生成激活碼和密鑰的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • Java泛型類(lèi)型擦除

    Java泛型類(lèi)型擦除

    這篇文章主要為大家詳細(xì)介紹了Java泛型類(lèi)型擦除,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • 詳解Spring通過(guò)@Value注解注入屬性的幾種方式

    詳解Spring通過(guò)@Value注解注入屬性的幾種方式

    本篇文章主要介紹了詳解Spring通過(guò)@Value注解注入屬性的幾種方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2017-03-03
  • Java回溯法解決全排列問(wèn)題流程詳解

    Java回溯法解決全排列問(wèn)題流程詳解

    從n個(gè)不同元素中任取m(m≤n)個(gè)元素,按照一定的順序排列起來(lái),叫做從n個(gè)不同元素中取出m個(gè)元素的一個(gè)排列。當(dāng)m=n時(shí)所有的排列情況叫全排列。這篇文章主要介紹了Java回溯法解決全排列問(wèn)題
    2022-10-10

最新評(píng)論

临潭县| 刚察县| 西乡县| 平舆县| 阿拉善盟| 葫芦岛市| 育儿| 岫岩| 花垣县| 东海县| 平阳县| 霍州市| 专栏| 出国| 曲水县| 闵行区| 霍州市| 海城市| 柏乡县| 辽阳县| 墨竹工卡县| 吕梁市| 永登县| 康马县| 寿阳县| 青田县| 三原县| 年辖:市辖区| 景德镇市| 商南县| 陈巴尔虎旗| 西华县| 江西省| 安陆市| 如东县| 桂东县| 剑阁县| 高雄市| 绍兴市| 林甸县| 枣庄市|