Compare commits
	
		
			3 Commits
		
	
	
		
			b818e56954
			...
			633955d95f
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 633955d95f | |||
| 11491a0e43 | |||
| 50757a2832 | 
@ -6,42 +6,42 @@ class ProductService:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	@staticmethod
 | 
						@staticmethod
 | 
				
			||||||
	def get_name(product_id: int):
 | 
						def get_name(product_id: int):
 | 
				
			||||||
		cursor.execute(f"select name from product where product.product_id = {product_id}")
 | 
							cursor.execute(f"select name from product where product.id = {product_id}")
 | 
				
			||||||
		result = cursor.fetchone()
 | 
							result = cursor.fetchone()
 | 
				
			||||||
		return result['name']
 | 
							return result['name']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	@staticmethod
 | 
						@staticmethod
 | 
				
			||||||
	def get_manufacturer(product_id: int):
 | 
						def get_manufacturer(product_id: int):
 | 
				
			||||||
		cursor.execute(f"select manufacturer from product where product.product_id = {product_id}")
 | 
							cursor.execute(f"select user.displayname as seller from product inner join user on product.seller_id = user.id where product.id = {product_id}")
 | 
				
			||||||
		result = cursor.fetchone()
 | 
							result = cursor.fetchone()
 | 
				
			||||||
		return result['manufacturer']
 | 
							return result['seller']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	@staticmethod
 | 
						@staticmethod
 | 
				
			||||||
	def get_price(product_id: int):
 | 
						def get_price(product_id: int):
 | 
				
			||||||
		cursor.execute(f"select price_pc from product where product.product_id = {product_id}")
 | 
							cursor.execute(f"select price_pc from product where product.id = {product_id}")
 | 
				
			||||||
		result = cursor['price_pc']
 | 
							result = cursor['price_pc']
 | 
				
			||||||
		return result[0]
 | 
							return result[0]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	@staticmethod
 | 
						@staticmethod
 | 
				
			||||||
	def get_image(product_id: int):
 | 
						def get_image(product_id: int):
 | 
				
			||||||
		cursor.execute(f"select image from product where product.product_id = {product_id}")
 | 
							cursor.execute(f"select image from product where product.id = {product_id}")
 | 
				
			||||||
		result = cursor['image']
 | 
							result = cursor['image']
 | 
				
			||||||
		return base64.b64encode(result[0]).decode('utf-8')
 | 
							return base64.b64encode(result[0]).decode('utf-8')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	@staticmethod
 | 
						@staticmethod
 | 
				
			||||||
	def get_image_name(product_id: int):
 | 
						def get_image_name(product_id: int):
 | 
				
			||||||
		cursor.execute(f"select image_name from product where product.product_id = {product_id}")
 | 
							cursor.execute(f"select image_name from product where product.id = {product_id}")
 | 
				
			||||||
		result = cursor['image_name']
 | 
							result = cursor['image_name']
 | 
				
			||||||
		return result[0]
 | 
							return result[0]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	@staticmethod
 | 
						@staticmethod
 | 
				
			||||||
	def get_all_info(product_id: int):
 | 
						def get_all_info(product_id: int):
 | 
				
			||||||
		cursor.execute(f"select name,manufacturer,price_pc,image_name,image from product where product.product_id = {product_id}")
 | 
							cursor.execute(f"select name, user.displayname as seller, price_pc, image_name, image from product inner join user on product.seller_id = user.id where product.id = {product_id}")
 | 
				
			||||||
		result = cursor.fetchone()
 | 
							result = cursor.fetchone()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		return {
 | 
							return {
 | 
				
			||||||
			"name": result['name'],
 | 
								"name": result['name'],
 | 
				
			||||||
			"manufacturer": result['manufacturer'],
 | 
								"seller": result['seller'],
 | 
				
			||||||
			"price": result['price_pc'],
 | 
								"price": result['price_pc'],
 | 
				
			||||||
			"image_name": result['image_name'],
 | 
								"image_name": result['image_name'],
 | 
				
			||||||
			"image": base64.b64encode(result['image']).decode('utf-8')
 | 
								"image": base64.b64encode(result['image']).decode('utf-8')
 | 
				
			||||||
 | 
				
			|||||||
@ -232,7 +232,7 @@ class UserService:
 | 
				
			|||||||
		:rtype: bool
 | 
							:rtype: bool
 | 
				
			||||||
		"""
 | 
							"""
 | 
				
			||||||
		displayname_regex = r"^[a-zA-Z.-_]{1,64}$"
 | 
							displayname_regex = r"^[a-zA-Z.-_]{1,64}$"
 | 
				
			||||||
		return re.match(username_regex, displayname)
 | 
							return re.match(displayname_regex, displayname)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	@staticmethod
 | 
						@staticmethod
 | 
				
			||||||
	def __verify_username(username: str) -> bool:
 | 
						def __verify_username(username: str) -> bool:
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										21
									
								
								shop.sql
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								shop.sql
									
									
									
									
									
								
							@ -121,12 +121,27 @@ after delete
 | 
				
			|||||||
on cart_item for each row
 | 
					on cart_item for each row
 | 
				
			||||||
begin
 | 
					begin
 | 
				
			||||||
	update cart
 | 
						update cart
 | 
				
			||||||
	set price_total = (
 | 
						set price_total = ifnull(
 | 
				
			||||||
		select sum(price_subtotal)
 | 
							(select sum(price_subtotal)
 | 
				
			||||||
		from cart_item
 | 
							from cart_item
 | 
				
			||||||
		where cart_id = old.cart_id
 | 
							where cart_id = old.cart_id),
 | 
				
			||||||
 | 
							0.00
 | 
				
			||||||
	)
 | 
						)
 | 
				
			||||||
	where id = old.cart_id;
 | 
						where id = old.cart_id;
 | 
				
			||||||
end;
 | 
					end;
 | 
				
			||||||
//
 | 
					//
 | 
				
			||||||
delimiter;
 | 
					delimiter;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					delimiter //
 | 
				
			||||||
 | 
					create trigger calculate_price_subtotal
 | 
				
			||||||
 | 
					before insert on cart_item
 | 
				
			||||||
 | 
					for each row
 | 
				
			||||||
 | 
					begin
 | 
				
			||||||
 | 
						set new.price_subtotal = (
 | 
				
			||||||
 | 
							select new.count * p.price_pc
 | 
				
			||||||
 | 
							from product p
 | 
				
			||||||
 | 
							where p.id = new.product_id
 | 
				
			||||||
 | 
						);
 | 
				
			||||||
 | 
					END;
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					DELIMITER ;
 | 
				
			||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user