You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.6 KiB
39 lines
1.6 KiB
from sqlalchemy import or_
|
|
from models.entity import *
|
|
|
|
from statusCode.responseEntity import SuccessResponse, BadResponse
|
|
from statusCode.resultCode import ResultCode
|
|
from utils.PageHepler import db_page_entity
|
|
|
|
|
|
def GetList(entity, entityId, name, code, data, length=6, is_all=False):
|
|
filterItem = entity.query.order_by(entityId.desc())
|
|
if data.get('query') is not None:
|
|
filterItem = entity.query.filter(
|
|
or_(name.contains(data['query']),
|
|
code.contains(data['query']))) \
|
|
.order_by(entityId.desc())
|
|
if is_all:
|
|
length = filterItem.count()
|
|
return SuccessResponse(ResultCode.SUCCESS, {'totalNumber': filterItem.count(),
|
|
'list': db_page_entity(filterItem, data, length)}, None)
|
|
|
|
|
|
def StatusChange(entity, dataId, data, entityId, stockNameLeft, stockNameRight):
|
|
filterItem = entity.query.filter(entityId == dataId).first()
|
|
if len(ReagtStock.query.filter(stockNameLeft == stockNameRight).all()) != 0:
|
|
return SuccessResponse(ResultCode.DATA_OCCUPATION, None, None)
|
|
using = data['Using'] != 'false'
|
|
if filterItem.Using == using:
|
|
return BadResponse(ResultCode.PARAM_IS_INVALID, None, None)
|
|
filterItem.Using = using
|
|
db.session.commit()
|
|
return SuccessResponse(ResultCode.SUCCESS, None, None)
|
|
|
|
|
|
def DictionaryAdd(existEntity, newEntity):
|
|
if existEntity is not None:
|
|
return SuccessResponse(ResultCode.DATA_ALREADY_EXISTED, None, None)
|
|
db.session.add(newEntity)
|
|
db.session.commit()
|
|
return SuccessResponse(ResultCode.SUCCESS, None, None)
|
|
|