# -*- coding: utf-8 -*- """ api.user ~~~~~~~~~~~~~~ 有关用户操作的接口. :copyright: 云南新八达科技有限公司. :author: 李进才. """ from sqlalchemy import func, or_ from utils.apiDoc import * from utils.PageHepler import * from utils.configOperatingTypeHelper import GetOperatingTypeOutStock @accounting.route('/instrumentList') class InstrumentList(Resource): @staticmethod def get(): dictFilter = db.session.query(DictInstrument.InsName.label('InsName'), func.count(RptCheckresult.SampleCode).label('orderNumber')) \ .join(RptCheckresult, func.substring(RptCheckresult.SampleCode, 1, 2) == DictInstrument.SampleCode) \ .filter(RptCheckresult.TestDate >= request.args.get('startTime')) \ .filter(RptCheckresult.TestDate <= request.args.get('endTime')) \ .group_by(DictInstrument.InsName) return SuccessResponse(ResultCode.SUCCESS, {'list': db_page(dictFilter, DictInstrument.InsName, request.args, 6), 'totalNumber': dictFilter.count()}, None) @accounting.route('/reagentOutList') class ReagentOutList(Resource): @staticmethod def get(): query = request.args.get('query') reagent_out_filter = db.session.query(ReagtLog.ReagentName, ReagtLog.ReagentSpecification, func.sum(ReagtLog.ReagentNumber).label('ReagentNumber'), func.sum(ReagtLog.OperateMinNumber).label('OperateMinNumber'))\ .filter(ReagtLog.OperatingType == GetOperatingTypeOutStock()) \ .filter(ReagtLog.OperatingTime >= request.args.get('startTime')) \ .filter(ReagtLog.OperatingTime <= request.args.get('endTime')) \ .filter(or_(ReagtLog.ReagentName.contains(query), ReagtLog.PinYinCode.contains(query), ReagtLog.ReagentPosition.contains(query)))\ .group_by(ReagtLog.ReagentName, ReagtLog.ReagentSpecification) return SuccessResponse(ResultCode.SUCCESS, {'list': db_page(reagent_out_filter, ReagtLog.ReagentName, request.args, 6), 'totalNumber': reagent_out_filter.count()}, None)