❤️ After this springboot project, I'm familiar with boot! [source code + video are open source] [strongly recommended to collect] ❤️

Last time I shared a springboot+vue campus recruitment system, video tutorials and project source code. They are all open source and should be said to be very fragrant. Today I'll share a good springboot project.

Old rules, open source, open source, open source!!!

Here comes the golden nine and silver ten, boys, rush! Many interview questions have been sorted out in front. Take them to learn!

1,❤️ liver failure! Sorted out the Spring interview [including answers] for a week and hanged the Java interviewer [suggestions collection]! ❤️

2,❤️ When the liver is over, master the data structure and algorithm one day, interview questions, hang the interviewer, and suggest collecting ❤️

3,❤️ Is the collection simple? Are you kidding? Liver for a week, is the essence, all words to explain! Interview is no longer afraid of questions!!! ❤️

4,After that, I summarized the knowledge points of SpringBoot and cache, and quickly mastered them

5,Mysql interview encyclopedia, after reading it, you can hang and beat the interviewer!!!

6,Junior brothers and sisters majoring in computer, don't be confused. I'll sort out a complete collection of CS learning routes! Help you surpass most of your classmates!

7,❤️ Junior college background, get Ali offer, Xiao Meng calls 666! [hard core interview] ❤️

8,❤️ The design mode is finished, quite complete! Tencent and Ali's offer has been taken! ❤️

No nonsense, go straight to dry goods!

catalogue

1. System source code download address

2. System tutorial:

3. System environment

4. System demonstration

5. System core code

6. Data sheet design

1. System source code download address

https://gitee.com/springmeng/medical-system

2. System tutorial:

For general development projects, mengge is still relatively fast, but recording tutorials is really time-consuming!

In order to help you better understand the project, let's record it!

All open source!

Little buddy, remember to give it to the third company!

The tutorial is very detailed:

Video tutorial click here

 

3. System environment

System development platform:

JDK1.8+Maven3.6.1

Framework: springboot 2 X+Layui

Database and tools: MySQL 5 7 Navicat

Development tool: Intellij Idea

Browser: Chrome

Technologies involved: MySql, Springboot, MyBatisPlus, lombok, Shiro, layui, jquery, element

4. System demonstration

 

 

 

 

 

 

 

 

If you want to see the detailed demonstration, you'd better watch the video:

 https://www.bilibili.com/video/BV1eh411k7P3

Old fellow iron, these good actual combat items, do you confirm that there are three links? Hey, hey

5. System core code

controller:

@Controller
public class UserController {

    /**
     * Go to the login page
     */
    @RequestMapping(value = "/login")
    public String login(){
        return "/login";
    }

    /**
     * Judge whether the user login is successful
     */
    @RequestMapping(value = "/toLogin")
    @ResponseBody
    public Object toLogin(String username,String password){
        if(username==null||password==null){
            return ResultMapUtil.getHashMapLogin("User name and password cannot be empty","2");
        }
        Subject subject = SecurityUtils.getSubject();
        UsernamePasswordToken token = new UsernamePasswordToken(username,password);
        try{
            subject.login(token);
        }catch (UnknownAccountException e){
            return ResultMapUtil.getHashMapLogin("user name does not exist","2");
        }catch (IncorrectCredentialsException e){
            return ResultMapUtil.getHashMapLogin("Password error","2");
        }
        return ResultMapUtil.getHashMapLogin("Validation succeeded","1");
    }

    /**
     * Turn to the background management home page
     */
    @RequestMapping(value = "/index")
    public String index(){
        return "/index";
    }

    /**
     * Log out
     */
    @RequestMapping(value = "/logout")
    public String logout(){
        Subject subject = SecurityUtils.getSubject();
        subject.logout();
        return "redirect:/login";
    }

}

SupplierController

public class SupplierController {

    @Autowired
    private ISupplierService supplierService;

    /**
     * Go to supplier page
     */
    @RequestMapping
    public String supplier(){
        return "/supplier";
    }

    /**
     * Query vendor list by page
     */
    @RequestMapping(value = "/supplierQueryPage")
    @ResponseBody
    public Object supplierQueryPage(String param, @RequestParam(defaultValue = "1")int pageNum,@RequestParam(defaultValue = "10")int pageSize){
        try{
            IPage<Supplier> iPage = supplierService.selectSupplierPage(pageNum,pageSize,param);
            return ResultMapUtil.getHashMapMysqlPage(iPage);
        } catch (Exception e){
            return ResultMapUtil.getHashMapException(e);
        }
    }

    /**
     * Turn to the new supplier page
     */
    @RequestMapping(value = "/supplierPage")
    public String supplierPage(){
        return "/supplierPage";
    }

    /**
     * Add a vendor
     */
    @RequestMapping(value = "/supplierAdd")
    @ResponseBody
    public Object supplierAdd(Supplier supplier){
        try{
            supplier.setCreatetime(new Date());
            int i = supplierService.addSupplier(supplier);
            return ResultMapUtil.getHashMapSave(i);
        } catch (Exception e){
            return ResultMapUtil.getHashMapException(e);
        }
    }

    /**
     * Go to supplier edit page
     */
    @RequestMapping(value = "/supplierQueryById")
    public String supplierQueryById(@RequestParam(name = "id",required = true)Integer id, Model model){
        Supplier supplier = supplierService.querySupplierById(id);
        model.addAttribute("obj",supplier);
        return "/supplierPage";
    }

    /**
     * Modify a supplier
     */
    @RequestMapping(value = "/supplierEdit")
    @ResponseBody
    public Object supplierEdit(Supplier supplier){
        try{
            int i = supplierService.editSupplier(supplier);
            return ResultMapUtil.getHashMapSave(i);
        } catch (Exception e){
            return ResultMapUtil.getHashMapException(e);
        }
    }

    /**
     * Delete a supplier
     */
    @RequestMapping(value = "/supplierDelById")
    @ResponseBody
    public Object supplierDelById(Integer id){
        try{
            int i = supplierService.delSupplierById(id);
            return ResultMapUtil.getHashMapDel(i);
        } catch (Exception e){
            return ResultMapUtil.getHashMapException(e);
        }
    }

SaleinfoController

    @Autowired
    private ISaleinfoService saleinfoService;

    /**
     * Go to the sales record page
     */
    @RequestMapping
    public String saleinfo(){
        return "/saleinfo";
    }

    /**
     * Paging query sales record list
     */
    @RequestMapping(value = "/saleinfoQueryPage")
    @ResponseBody
    public Object saleinfoQueryPage(String param, @RequestParam(defaultValue = "1")int pageNum,@RequestParam(defaultValue = "10")int pageSize){
        try{
            IPage<Saleinfo> iPage = saleinfoService.selectSaleinfoPage(pageNum,pageSize,param);
            return ResultMapUtil.getHashMapMysqlPage(iPage);
        } catch (Exception e){
            return ResultMapUtil.getHashMapException(e);
        }
    }

    /**
     * Turn to the new sales record page
     */
    @RequestMapping(value = "/saleinfoPage")
    public String saleinfoPage(){
        return "/saleinfoPage";
    }

    /**
     * Add a sales record
     */
    @RequestMapping(value = "/saleinfoAdd")
    @ResponseBody
    public Object saleinfoAdd(Saleinfo saleinfo){
        try{
            int i = saleinfoService.addSaleinfo(saleinfo);
            return ResultMapUtil.getHashMapSave(i);
        } catch (Exception e){
            return ResultMapUtil.getHashMapException(e);
        }
    }

    /**
     * Turn to the sales record editing page
     */
    @RequestMapping(value = "/saleinfoQueryById")
    public String saleinfoQueryById(@RequestParam(name = "id",required = true)Integer id, Model model){
        Saleinfo saleinfo = saleinfoService.querySaleinfoById(id);
        model.addAttribute("obj",saleinfo);
        return "/saleinfoPage";
    }

    /**
     * Modify a sales record
     */
    @RequestMapping(value = "/saleinfoEdit")
    @ResponseBody
    public Object saleinfoEdit(Saleinfo saleinfo){
        try{
            int i = saleinfoService.editSaleinfo(saleinfo);
            return ResultMapUtil.getHashMapSave(i);
        } catch (Exception e){
            return ResultMapUtil.getHashMapException(e);
        }
    }

    /**
     * Delete a sales record
     */
    @RequestMapping(value = "/saleinfoDelById")
    @ResponseBody
    public Object saleinfoDelById(Integer id){
        try{
            int i = saleinfoService.delSaleinfoById(id);
            return ResultMapUtil.getHashMapDel(i);
        } catch (Exception e){
            return ResultMapUtil.getHashMapException(e);
        }
    }

6. Data sheet design

DROP TABLE IF EXISTS `billinfo`;
CREATE TABLE `billinfo`  (
  `id` int(10) NOT NULL AUTO_INCREMENT COMMENT 'Primary key',
  `sname` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Supplier name',
  `dname` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Drug name',
  `count` int(10) NULL DEFAULT NULL COMMENT 'Quantity of drugs',
  `total` float(20, 2) NULL DEFAULT NULL COMMENT 'Total amount',
  `buytime` datetime(0) NULL DEFAULT NULL COMMENT 'Purchase time',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = 'Billing information' ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of billinfo
-- ----------------------------
INSERT INTO `billinfo` VALUES (1, 'Harbin No. 6 pharmaceutical factory', 'Ganmaoling', 1000, 22500.00, '2021-02-02 16:00:00');

-- ----------------------------
-- Table structure for druginfo
-- ----------------------------
DROP TABLE IF EXISTS `druginfo`;
CREATE TABLE `druginfo`  (
  `id` int(10) NOT NULL AUTO_INCREMENT COMMENT 'Primary key',
  `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'name',
  `supplier` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'supplier',
  `producttime` date NULL DEFAULT NULL COMMENT 'Production time',
  `warrenty` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Shelf life (month)',
  `number` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Drug code',
  `price` float(20, 2) NULL DEFAULT NULL COMMENT 'Price',
  `stock` int(10) NULL DEFAULT NULL COMMENT 'stock',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = 'Drug information' ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of druginfo
-- ----------------------------
INSERT INTO `druginfo` VALUES (2, 'Ganmaoling', 'Harbin No. 6 pharmaceutical factory', '2020-01-27', '24', '1001', 22.50, 50);
INSERT INTO `druginfo` VALUES (3, 'Baiyao tablet', 'Yunnan Baiyao', '2021-02-02', '36', '2021052', 30.50, 100);

-- ----------------------------
-- Table structure for owinfo
-- ----------------------------
DROP TABLE IF EXISTS `owinfo`;
CREATE TABLE `owinfo`  (
  `id` int(10) NOT NULL AUTO_INCREMENT COMMENT 'Primary key',
  `dname` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Drug name',
  `type` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Ex warehouse/Warehousing',
  `count` int(10) NULL DEFAULT NULL COMMENT 'quantity',
  `operator` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Operator',
  `createtime` datetime(0) NULL DEFAULT NULL COMMENT 'Operation time',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = 'Stock in and stock out' ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of owinfo
-- ----------------------------
INSERT INTO `owinfo` VALUES (1, 'Baiyao tablet', 'Ex warehouse', 3, 'Hua Tuo', '2021-02-20 14:21:53');
INSERT INTO `owinfo` VALUES (2, 'Ganmaoling', 'Warehousing', 20, 'Flat magpie', '2021-02-20 14:22:12');

-- ----------------------------
-- Table structure for problem
-- ----------------------------
DROP TABLE IF EXISTS `problem`;
CREATE TABLE `problem`  (
  `id` int(10) NOT NULL AUTO_INCREMENT COMMENT 'Primary key',
  `dname` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Drug name',
  `dcount` int(10) NULL DEFAULT NULL COMMENT 'Quantity of problem drugs',
  `dprice` float(20, 2) NULL DEFAULT NULL COMMENT 'Drug unit price',
  `reason` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Cause of problem',
  `createtime` datetime(0) NULL DEFAULT NULL COMMENT 'Operation time',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = 'Problem drug' ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of problem
-- ----------------------------
INSERT INTO `problem` VALUES (1, 'Ganmaoling', 2, 22.50, 'It's damp. Do not deceive consumers.', '2021-02-24 14:19:36');

-- ----------------------------
-- Table structure for returngoods
-- ----------------------------
DROP TABLE IF EXISTS `returngoods`;
CREATE TABLE `returngoods`  (
  `id` int(10) NOT NULL AUTO_INCREMENT COMMENT 'Primary key',
  `dname` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Drug name',
  `count` int(10) NULL DEFAULT NULL COMMENT 'quantity',
  `reason` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'Reason for return',
  `total` float(20, 2) NULL DEFAULT NULL COMMENT 'Total amount',
  `operatetime` datetime(0) NULL DEFAULT NULL COMMENT 'Operation time',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = 'Return received' ROW_FORMAT = Dynamic;

I'm Xiao Meng. Remember to give me a compliment. Thanks!

If you want to contact me, you can go to the home page.

Little friends like, collect and comment, and walk up three times with one button. See you next time~~


 

Keywords: Java Spring Boot Layui

Added by niall_buckley on Fri, 17 Dec 2021 07:01:48 +0200