diff --git a/src/后端/java/GuideService/Dao/GuideServiceRepository.java b/src/后端/java/GuideService/Dao/GuideServiceRepository.java new file mode 100644 index 0000000..eddfaab --- /dev/null +++ b/src/后端/java/GuideService/Dao/GuideServiceRepository.java @@ -0,0 +1,13 @@ +package com.softegg.freetogo.GuideService.Dao; + +import com.softegg.freetogo.GuideService.bean.GuideService; +import org.springframework.data.jpa.repository.JpaRepository; + +/** + * @description:继承Jpa数据库接口类 + * @author:wuyifan + * @date:2024/5/13 9:17 + */ +public interface GuideServiceRepository extends JpaRepository { + +} diff --git a/src/后端/java/GuideService/bean/GuideService.java b/src/后端/java/GuideService/bean/GuideService.java new file mode 100644 index 0000000..d9764c4 --- /dev/null +++ b/src/后端/java/GuideService/bean/GuideService.java @@ -0,0 +1,48 @@ +package com.softegg.freetogo.GuideService.bean; + +import jakarta.persistence.*; +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +/** + * @description:数据库中表guideService的对应实体类 + * @author:wuyifan + * @date:2024/5/13 9:14 + */ +@Entity +@Table(name="guideService") +@Setter +@Getter +@NoArgsConstructor +@AllArgsConstructor +public class GuideService { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private Integer uid; + @Column + private String phone;//导游手机号码 + @Column + private boolean guideGender;//导游性别 ture:male, false:female + @Column + private String nickname;//发布需求的导游昵称信息 + @Column + private String createTime;//服务发布时间 + @Column + private String departureDate;//导游服务起始日期 + @Column + private String endDate;//导游服务结束日期 + @Column + private String sumDay;//导游服务总天数 + @Column + private String city;//导游服务的目的城市 + @Column + private String message;//导游服务备注内容 +// @Column +// private boolean guideGender;//希望导游性别 +// @Column +// private int status; + +} + diff --git a/src/后端/java/GuideService/controller/GuideServiceController.java b/src/后端/java/GuideService/controller/GuideServiceController.java new file mode 100644 index 0000000..5096def --- /dev/null +++ b/src/后端/java/GuideService/controller/GuideServiceController.java @@ -0,0 +1,83 @@ +package com.softegg.freetogo.GuideService.controller; + +import com.softegg.freetogo.GuideService.bean.GuideService; +import com.softegg.freetogo.GuideService.service.GuideServiceService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @description:Guide控制类,用于前后端交互 + * @author:wuyifan + * @date:2024/5/13 9:26 + */ +@RestController +//@CrossOrigin(origins = "*") +@RequestMapping("/guideService") +public class GuideServiceController { + @Autowired + private GuideServiceService guideServiceService; + + @GetMapping("findAll") + public List findAll() {return guideServiceService.findAll();} + + @GetMapping("add") + public String add(String phone, + boolean gGender, + String nkn, + String ct, + String dDate, + String eDate, + String sDay, + String city, + String message) { + GuideService guideService = new GuideService(); + setDemands(phone, gGender, nkn, ct, dDate, eDate, sDay, city, message, guideService); + guideServiceService.add(guideService); + return "添加成功"; + } + + @GetMapping("delbyid") + public String delById(int id) { + guideServiceService.deleteById(id); + return "删除成功"; + } + + @GetMapping("findbyid") + public GuideService getUserById(int id) { + return guideServiceService.getGuideServiceById(id); + } + + @GetMapping("update") + public String update(int id, + String phone, + boolean gGender, + String nkn, + String ct, + String dDate, + String eDate, + String sDay, + String city, + String message) { + GuideService guideService = guideServiceService.getGuideServiceById(id); + setDemands(phone, gGender, nkn, ct, dDate, eDate, sDay, city, message, guideService); + guideServiceService.update(guideService); + return "更新成功"; + } + + private void setDemands(String phone, boolean gGender, String nkn, String ct, String dDate, String eDate, String sDay, String city, String message, GuideService demand) { + demand.setPhone(phone); + demand.setGuideGender(gGender); + demand.setNickname(nkn); + demand.setCreateTime(ct); + demand.setDepartureDate(dDate); + demand.setEndDate(eDate); + demand.setSumDay(sDay); + demand.setCity(city); + demand.setMessage(message); +// demand.setGuideGender(gGender); + } +} diff --git a/src/后端/java/GuideService/service/GuideServiceService.java b/src/后端/java/GuideService/service/GuideServiceService.java new file mode 100644 index 0000000..641f815 --- /dev/null +++ b/src/后端/java/GuideService/service/GuideServiceService.java @@ -0,0 +1,21 @@ +package com.softegg.freetogo.GuideService.service; + +import com.softegg.freetogo.GuideService.bean.GuideService; + +import java.util.List; +/** + * @description:数据库操作抽象接口类 + * @author:wuyifan + * @date:2024/5/10 20:59 + */ +public interface GuideServiceService { + List findAll();//查找所有需求 + + void add(GuideService guideService);//以demand为用户入库 + + void deleteById(int id);//删除对应id需求 + + GuideService getGuideServiceById(int id);//获得对应id需求 + + void update(GuideService guideService);//更新需求信息 +} diff --git a/src/后端/java/SendGuideService/controller/SendGuideServiceController.java b/src/后端/java/SendGuideService/controller/SendGuideServiceController.java new file mode 100644 index 0000000..669c788 --- /dev/null +++ b/src/后端/java/SendGuideService/controller/SendGuideServiceController.java @@ -0,0 +1,39 @@ +package com.softegg.freetogo.SendGuideService.controller; + +import com.softegg.freetogo.SendGuideService.service.SendGuideServiceService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + +/** + * @description:登录服务前后端交互 + * @author:wuyifan + * @date:2024/5/13 10:47 + */ +@RestController +//@CrossOrigin(origins = "*") +@RequestMapping("/SendGuideService") +public class SendGuideServiceController { + + @Autowired + SendGuideServiceService sendGuideServiceService; + + /** + * @description: 发送需求的交互逻辑 + * @param: map + * @return: java.lang.String + * @author: wuyifan + * @date: 2024/5/13 10:48 + */ + @PostMapping("register") + public int SendDemand(@RequestBody Map map) { + return switch (sendGuideServiceService.sendnewGuideServiceAccount(map.get("city").toString(), map.get("phone").toString())){ + case 1005 -> 1;//需求发送成功 + default -> 0; + }; + } +} \ No newline at end of file diff --git a/src/后端/java/SendGuideService/service/SendGuideServiceService.java b/src/后端/java/SendGuideService/service/SendGuideServiceService.java new file mode 100644 index 0000000..4bae8e2 --- /dev/null +++ b/src/后端/java/SendGuideService/service/SendGuideServiceService.java @@ -0,0 +1,14 @@ +package com.softegg.freetogo.SendGuideService.service; + +import org.springframework.stereotype.Service; + +/** + * @description:抽象需求发送服务接口类 + * @author:wuyifan + * @date:2024/5/13 11:11 + */ +@Service +public interface SendGuideServiceService { + + int sendnewGuideServiceAccount(String city, String phone); +} diff --git a/src/后端/java/SendGuideService/service/SendGuideServiceServiceImpl.java b/src/后端/java/SendGuideService/service/SendGuideServiceServiceImpl.java new file mode 100644 index 0000000..13f956f --- /dev/null +++ b/src/后端/java/SendGuideService/service/SendGuideServiceServiceImpl.java @@ -0,0 +1,39 @@ +package com.softegg.freetogo.SendGuideService.service; + +import com.softegg.freetogo.GuideService.bean.GuideService; +import com.softegg.freetogo.GuideService.service.GuideServiceService; +import com.softegg.freetogo.User.service.UsersService; +import com.softegg.freetogo.User.bean.Users; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * @description:需求服务实现类 + * @author:wuyifan + * @date:2024/5/13 10:53 + */ +@Component +public class SendGuideServiceServiceImpl implements SendGuideServiceService { + @Autowired + GuideServiceService guideServiceService; + UsersService usersService; + /** + * @description: 注册接口实现函数,根据返回码进行操作 + * @param: city + * @return: int + * @author: wuyifan + * @date: 2024/5/10 23:25 + */ + + @Override + public int sendnewGuideServiceAccount(String city, String phone) { + GuideService guideService = new GuideService(); + Users user = usersService.getUserByPhone(phone); + guideService.setPhone(phone); + guideService.setCity(city); + guideService.setGuideGender(user.isGender()); + guideService.setNickname(user.getNickname()); + guideServiceService.add(guideService); + return 1006;//添加导游服务成功 + } +}