2021-07-18项目实训后端第三周(3)

2021-07-18项目实训小程序选座后端第三周(3)

总结:

前三周已经基本完成了我负责的后端开发,并且部分接口已经和前端同学进行了对接,主要任务难点是创建教室涉及到的对教室表和座位表的的管理。接下来的任务是和前端同学完善,共同完善功能细节。

教室管理

首先是创建教室所需要的参数,封装成一个类,便于接收和操作:

@Data
@AllArgsConstructor
@NoArgsConstructor
@Entity
@ApiModel(description="创建教室所需参数")
public class Roomparamer {
    @ApiModelProperty("教室名称")
    String room_name;
    @ApiModelProperty("教室模板名称")
    String model_name;
    @ApiModelProperty("该教室的座位信息")
    String seatlist;
    @ApiModelProperty("教室可用状态")
    String room_status;
    @ApiModelProperty("教室地址")
    String room_site;
    @ApiModelProperty("教室经度")
    double longitude;
    @ApiModelProperty("教室纬度")
    double latitude;

}

在创建教室之前,要判断room主键是否已经存在,然后再进行其他操作。
根据seatlist生成相应的seat存储在seat表中,并生成room表中的seat_id串。

//创建教室
    @Transactional
    public String createroom(Roomparamer params) {
        String room_name = params.getRoom_name();
        if (roomManageMapper.getroombyname(room_name)!=null){
            return "重复fail";
        }
        String model_name = params.getModel_name();
        String seatlist = params.getSeatlist();
        String room_status = params.getRoom_status();
        String room_site = params.getRoom_site();
        double longitude = params.getLongitude();
        double latitude = params.getLatitude();

        //教室座位布局
        String room_seats = "";
        String[] seatsorder = seatlist.split("");
        int seat_no = 1;
        Seat seat = new Seat();
        seat.setRoom_name(room_name);
        for (int i = 0; i < seatsorder.length; i++) {
            if (seatsorder[i].equals("1")) {
                seat.setSeat_status(seatsorder[i]);
                seat.setSeat_no(seat_no);
                roomManageMapper.createseat(seat);
                room_seats = room_seats + seat.getSeat_id();
                if (i != seatsorder.length - 1) {
                    room_seats += ",";
                }
                seat_no++;
            } else {
                seat.setSeat_status("0");
                seat.setSeat_no(0);
                roomManageMapper.createseat(seat);
                room_seats = room_seats + seat.getSeat_id();
                if (i != seatsorder.length - 1) {
                    room_seats += ",";
                }
            }
        }
        if (roomManageMapper.createroom(room_name,model_name,room_seats,room_status,room_site,longitude,latitude)==1){
            return "success";
        }
        else {
            return "fail";
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值