def orderDelete(request): if request.method == "POST": #验证字段 validateResult = commonLib.validateField(request, "id") if not validateResult[0]: return commonLib.statusJson(status=401, message=validateResult[1]) if not request.POST.get("id").isdigit(): #如果id不是数字 return #查找数据 id = int(request.POST.get("id")) try: oneData = OrderForm.objects.get(id=id) except Exception, e: return commonLib.statusJson(status=400, message="删除的数据不存在") plateNum = oneData.plateNum #删除时记录 content = "删除了%s状态为%s,车牌号为%s,第%s车%s趟%s任务的订单" % ( oneData.createTime, oneData.stateType, oneData.plateNum, oneData.catNum, oneData.tranNum, oneData.placeNum) name = request.user.last_name if request.user.last_name else request.user.username history = History.objects.create(content=content, operator=name, action="删除订单") #得到时间 createTime = oneData.createTime #删除数据 oneData.delete() #判断该订单是否已经指派,如果指派则通知司机 if plateNum: driver = Driver() driver.post_message_by_plateNum(plateNum, u"您的订单已调整,请按照如下计划执行:") driver.post_catNum(plateNum, createTime) return commonLib.statusJson()
def createClient(request): if request.method == "POST": validateResult = commonLib.validateField(request, "name") if not validateResult[0]: return commonLib.statusJson(status=401, message=validateResult[1]) if request.POST.get("sendCode", None): client = SendClient.create(request.POST) client.save() elif request.POST.get("receiveCode", None): client = ReceiveClient.create(request.POST) client.save() return commonLib.statusJson()
def deleteClient(request): if request.method == "POST": validateResult = commonLib.validateField(request, "typeId", "id") if not validateResult[0]: return commonLib.statusJson(status=401, message=validateResult[1]) id = int(request.POST.get("id")) typeId = int(request.POST.get("typeId")) if typeId == 0: oneModel = SendClient.objects.get(id=id) oneModel.delete() elif typeId == 1: oneModel = ReceiveClient.objects.get(id=id) oneModel.delete() return commonLib.statusJson()
def batchPostCat(request): if request.method == "POST": validateResult = commonLib.validateField(request, "data") if not validateResult[0]: return commonLib.statusJson(status=401, message=validateResult[1]) data = request.POST.get("data") data = json.loads(data) for item in data: orderList = item[0]["orderList"] plateNum = item[1]["plateNum"] driver = Driver() driver.post_message_by_plateNum( plateNum, u"%s,您今天订单已发布,请按如下计划执行:" % plateNum) driver.post_order(orderList, plateNum, request.user.last_name) #发送一车指派消息 return commonLib.statusJson()
def postCat(request): if request.method == "POST": validateResult = commonLib.validateField(request, "orderList[]", "plateNum") if not validateResult[0]: return commonLib.statusJson(status=401, message=validateResult[1]) orderList = request.POST.getlist("orderList[]") plateNum = request.POST.get("plateNum") if not isinstance(orderList, list): return commonLib.statusJson(status=402, message=u"orderList not list") else: for index in range(len(orderList)): orderList[index] = int(orderList[index]) driver = Driver() driver.post_message_by_plateNum(plateNum, u"%s,您的订单已发布,请按如下计划执行:" % plateNum) driver.post_order(orderList, plateNum, request.user.last_name) #发送一车指派消息 return commonLib.statusJson()
def orderUpdate(request, notice=True): if request.method == "POST": #验证字段 validateResult = commonLib.validateField(request, "id") if not validateResult[0]: return commonLib.statusJson(status=401, message=validateResult[1]) if not request.POST.get("id").isdigit(): #如果id不是数字 return commonLib.statusJson(status=401) #查找数据 id = int(request.POST.get("id")) oneData = OrderForm.objects.get(id=id) #得到时间 createTime = oneData.createTime #更新数据 oneData.update(request.POST) oneData.operator = request.user.last_name #如果修改的车次,则要同时修改车牌号 newCatNum = request.POST.get("catNum", "") oldPlateNum = None newPlateNum = None #新车牌号 if newCatNum: #做一个操作记录 if oneData.stateType == 4: content = "%s创建的%s车%s趟%s任务清单%s签收的订单修改了车次为%s" % ( oneData.createTime, oneData.catNum, oneData.tranNum, oneData.placeNum, oneData.acceptPerson, newCatNum) name = request.user.last_name if request.user.last_name else request.user.username history = History.objects.create(content=content, operator=name, action="修改已签收订单的车次") #还原订单默认值 oneData.receiveFormTime = None oneData.receiveFormPerson = "" oneData.receiveGoodsTime = None oneData.receiveGoodsPerson = "" oneData.acceptTime = None oneData.acceptPerson = "" oneData.other = "" oneData.problem = 0 oldPlateNum = oneData.plateNum #旧车牌号 if not newCatNum.isdigit(): #如果字符串不是整数 return commonLib.statusJson(status=402, message=u"车次输入有误") querySet = OrderForm.objects.filter(createTime=oneData.createTime, catNum=int(newCatNum)) if querySet.exists(): #如果是合并到其他车次 nextData = querySet[0] if nextData.stateType != 0: #如果调整成指派过的车次 oneData.plateNum = nextData.plateNum oneData.stateType = 1 newPlateNum = nextData.plateNum else: #如果合并到其他待处理的车次 oneData.stateType = 0 oneData.plateNum = None else: #如果调整为一个新车次 oneData.stateType = 0 oneData.plateNum = None try: oneData.full_clean() #数据验证 except ValidationError as e: return commonLib.statusJson(status=402, message=str(e)) oneData.save() if notice: #如果通知 #通知调整给司机 if oldPlateNum: driver = Driver() driver.post_message_by_plateNum(oldPlateNum, u"您的订单已调整,请按照如下计划执行:") driver.post_catNum(oldPlateNum, createTime) if newPlateNum: driver = Driver() driver.post_message_by_plateNum(newPlateNum, u"您的订单已调整,请按照如下计划执行:") driver.post_catNum(newPlateNum, createTime) else: #如果不通知则返回车牌号 return [oldPlateNum, newPlateNum, createTime] return commonLib.statusJson()