/**
*
*/
package com.petshop.service.impl;
import java.sql.Date;
import java.util.List;
import java.util.Scanner;
import com.petshop.dao.impl.PetOwnerImpl;
import com.petshop.entity.Account;
import com.petshop.entity.Pet;
import com.petshop.entity.PetOwner;
import com.petshop.entity.PetStore;
import com.petshop.service.AccountService;
import com.petshop.service.PetOwnerService;
import com.petshop.service.PetService;
import com.petshop.service.PetStoreService;
/**
* @Tm
*
*/
public class PetOwnerServiceImpl implements PetOwnerService {
PetOwnerImpl petownerimpl=new PetOwnerImpl();
Scanner in=new Scanner(System.in);
PetService petservice=new PetServiceImpl();
AccountService accountservice=new AccountServiceImpl();
PetStoreService petStoreService=new PetStoreServiceImpl();
Account account=new Account();
PetStore petstore=new PetStore();
/**
* 宠物主人展示
*/
public List<PetOwner> query() {
return petownerimpl .query();
}
/**
* 宠物主人登录
*/
public boolean petOwnerLoad(PetOwner petowner) {
return petownerimpl.queryOwner(petowner);
}
/**
* 服务层主人ID查询实现方法
*/
public PetOwner queryId(PetOwner petowner) {
return petownerimpl.queryId(petowner);
}
/**
* 购买库存宠物
*/
public boolean buyPet(PetOwner petowner){
boolean result=false;
Pet pet=null;
List<Pet> list=petservice.queryLove(1,petowner);
int price=15;
for (int i = 0; i < list.size(); i++) {
pet=(Pet)list.get(i);
System.out.println((i+1)+"\t"+pet.getName()+"\t"+price);
}
System.out.println("请选择你要购买宠物的序号");
pet=(Pet)list.get(in.nextInt()-1);
//写入宠物的主人的ID
pet.setOwnerId(petowner.getId());
//添加账单
account.setPrice(price);
account.setBuyerId(petowner.getId());
account.setSellerId(pet.getStoreId());
account.setPetId(pet.getId());
petowner.setMoney(petowner.getMoney()-price);//宠物主人元宝减
account.setDealType(2);
account.setDealTime(new Date(System.currentTimeMillis()));
//修改宠物商店信息
petstore.setId(pet.getStoreId());
petStoreService.queryID(petstore);
petstore.setBalance(petstore.getBalance()+price);
petStoreService.mobify(petstore);
//判断是否购买成功
if(petservice.mobifyPet(pet)>0&&mobifyOwner(petowner)>0&&accountservice.addAccount(account)>0){
result=true;
}
return result;
}
/**
* 查询并购买新培育宠物
*/
public boolean buyNewPet(PetOwner petowner){
PetService petService=new PetServiceImpl();
boolean result =false;
Pet pet =null;
List<Pet> list=petService.queryLove(2,petowner);
int price=20;
for (int i = 0; i < list.size(); i++) {
pet=(Pet)list.get(i);
System.out.println((i+1)+"\t"+pet.getName()+"\t"+price);
}
System.out.println("请选择你要购买宠物的序号");
pet=(Pet)list.get(in.nextInt()-1);
//写入宠物的主人的ID
pet.setOwnerId(petowner.getId());
if(petService.mobifyPet(pet)>0){
result =true;
}else{
result =false;
}
return result;
}
/**
* 修改宠物主人信息服务层实现方法
*/
public int mobifyOwner(PetOwner petowner) {
return petownerimpl.mobifyOwner(petowner);
}
/**
* 查询拥有的宠物并卖出宠物
* @return
*/
public boolean sellPet(PetOwner petowner){
boolean result=false;
Pet pet =null;
List<Pet> list=petservice.queryLove(3,petowner);
int price=15;
for (int i = 0; i < list.size(); i++) {
pet=(Pet)list.get(i);
System.out.println((i+1)+"\t"+pet.getName()+"\t"+price);
}
System.out.println("请选择你要卖出的宠物:");
pet=list.get(in.nextInt()-1);
System.out.println("请选择你要卖给的买家序号:");
List<PetStore> list1=petStoreService.query();
System.out.println("序号\t宠物商店名称");
for (int i = 0; i < list1.size(); i++) {
petstore=(PetStore)list1.get(i);
System.out.println((i+1)+petstore.getName());
}
petstore=(PetStore)list1.get(in.nextInt()-1);
//修改主人的元宝
petowner.setMoney(petowner.getMoney()+price);
//修改宠物信息
pet.setOwnerId(0);
pet.setStoreId(petstore.getId());
//修改商店信息
petstore.setBalance(petstore.getBalance()-price);
petStoreService.mobify(petstore);
//添加台账信息
account.setSellerId(petowner.getId());
account.setBuyerId(petstore.getId());
account.setDealType(2);
account.setPetId(pet.getId());
account.setPrice(price);
account.setDealTime(new Date(System.currentTimeMillis()));
if(petservice.mobifyPet(pet)>0&& mobifyOwner(petowner)>0&& accountservice.addAccount(account)>0){
result=true;
}
return result;
}
}
宠物商店的java代码
需积分: 50 129 浏览量
2018-02-27
16:23:55
上传
评论 6
收藏 852KB ZIP 举报
qq_31447843
- 粉丝: 0
- 资源: 7
最新资源
- Screenshot_20240427_031602.jpg
- 网页PDF_2024年04月26日 23-46-14_QQ浏览器网页保存_QQ浏览器转格式(6).docx
- 直接插入排序,冒泡排序,直接选择排序.zip
- 在排序2的基础上,再次对快排进行优化,其次增加快排非递归,归并排序,归并排序非递归版.zip
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
- 课设-内部排序算法比较 包括冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序.zip
- Python排序算法.zip
- C语言实现直接插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序、归并排序、计数排序,并带图详解.zip
- 常用工具集参考用于图像等数据处理
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈