dicttype.py 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. from datetime import datetime
  2. from flask_login import current_user
  3. from ..base import base
  4. from ..models import DictData, DictType
  5. from flask import render_template, request, jsonify
  6. from sqlalchemy import asc
  7. from sqlalchemy import desc
  8. from .. import db
  9. @base.route('/system/dict/type/list', methods=['GET'])
  10. def sysdict_type_list():
  11. filters = []
  12. if 'dictName' in request.args:
  13. filters.append(DictType.dict_name.like('%' + request.args['dictName'] + '%'))
  14. if 'dictType' in request.args:
  15. filters.append(DictType.dict_type.like('%' + request.args['dictType'] + '%'))
  16. if 'status' in request.args:
  17. filters.append(DictType.status == request.args['status'])
  18. if 'params[beginTime]' in request.args and 'params[endTime]' in request.args:
  19. filters.append(DictType.create_time > request.args['params[beginTime]'])
  20. filters.append(DictType.create_time < request.args['params[endTime]'])
  21. page = request.args.get('pageNum', 1, type=int)
  22. rows = request.args.get('pageSize', 10, type=int)
  23. pagination = DictType.query.filter(*filters).paginate(
  24. page, per_page=rows, error_out=False)
  25. types = pagination.items
  26. return jsonify({'msg': '操作成功', 'code': 200, 'rows': [type.to_json() for type in types], 'total': pagination.total})
  27. @base.route('/system/dict/type/<id>', methods=['GET'])
  28. def sysdict_type_get_by_id(id):
  29. type = DictType.query.get(id)
  30. return jsonify({'msg': '操作成功', 'code': 200, 'data': type.to_json()})
  31. @base.route('/system/dict/type', methods=['POST'])
  32. def sysdict_type_add():
  33. dictType = DictType()
  34. if 'dictName' in request.json: dictType.dict_name = request.json['dictName']
  35. if 'status' in request.json: dictType.status = request.json['status']
  36. if 'remark' in request.json: dictType.remark = request.json['remark']
  37. if 'dictType' in request.json: dictType.dict_type = request.json['dictType']
  38. dictType.create_time = datetime.now()
  39. dictType.create_by = current_user.NAME
  40. dictType.update_time = datetime.now()
  41. dictType.update_by = current_user.NAME
  42. db.session.add(dictType)
  43. return jsonify({'code': 200, 'msg': '操作成功'})
  44. @base.route('/system/dict/type', methods=['PUT'])
  45. def sysdict_type_update():
  46. dictType = DictType.query.get(request.json['dictId'])
  47. if 'dictName' in request.json: dictType.dict_name = request.json['dictName']
  48. if 'status' in request.json: dictType.status = request.json['status']
  49. if 'remark' in request.json: dictType.remark = request.json['remark']
  50. if 'dictType' in request.json: dictType.dict_type = request.json['dictType']
  51. dictType.UPDATEDATETIME = datetime.now()
  52. dictType.update_by = current_user.NAME
  53. return jsonify({'msg': '操作成功', 'code': 200})
  54. @base.route('/system/dict/type/<string:ids>', methods=['DELETE'])
  55. def sytype_delete(ids):
  56. idList = ids.split(',')
  57. for id in idList:
  58. dictType = DictType.query.get(id)
  59. if dictType:
  60. db.session.delete(dictType)
  61. return jsonify({'code': 200, 'msg': '操作成功'})
  62. @base.route('/system/dict/type/optionselect', methods=['GET'])
  63. def sysdict_type_all():
  64. types = DictData.query.all()
  65. return jsonify({'msg': '操作成功', 'code': 200, 'data': [type.to_json() for type in types]})