| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- #coding=utf-8
- '''
- '''
- import json
- from django.db import transaction
- import common.models as cm
- import common.error_info as ce
- import common.common_functions as ccf
- import common.common_control as ccc
- def add_department(request):
- """
- """
- kwargs = request.json
- need_params = ["name","permissions"]
- mse = ccf.check_params(*need_params,**kwargs)
- if mse:
- raise ce.TipException(mse)
- cvals = ccf.get_need_params(*need_params,**kwargs)
- if kwargs.get("pid"):
- cvals["pid"] = kwargs.get("pid")
- cvals["cid"] = request.user.id
- cvals["cperson"] = request.user.realname
- try:
- obj = cm.Department.objects.create(**cvals)
- except Exception as e:
- raise c.TipException(str(e))
- def update_department(request):
- """
- """
- kwargs = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**kwargs)
- if mse:
- raise ce.TipException(mse)
- id = kwargs.get("id")
- need_params.extend(["name","pid","permissions"])
- cvals = ccf.get_need_params(*need_params,**kwargs)
- if kwargs.get("pid"):
- cvals["pid"] = kwargs.get("pid")
- cvals["cid"] = request.user.id
- cvals["cperson"] = request.user.realname
- try:
- cm.Department.objects.filter(id=id).update(**cvals)
- except Exception as e:
- raise c.TipException(str(e))
- def delete_department(request):
- """
- """
- kwargs = request.json
- need_params = ["id"]
- mse = ccf.check_params(*need_params,**kwargs)
- if mse:
- raise ce.TipException(mse)
- ids = str(kwargs.get("id")).split(",")
- cm.Department.objects.filter(id__in=ids).update(status=0)
- def get_department_list(request):
- """
- """
- kwargs = request.json
- eset = cm.Department.objects.filter(status=1)
- if "name" in kwargs and kwargs.get("name"):
- eset = eset.filter(name__icontains=kwargs.get("name"))
- total = eset.count()
- edata = list(eset.values())
- page = int(kwargs.get("page",1))
- page_size = int(kwargs.get("page_size",20))
- total,data = ccf.get_page_list(edata,page,page_size)
- return (total,data)
-
|