|
@@ -161,22 +161,21 @@ class OrderViewSet(CustomModelViewSet):
|
|
else:
|
|
else:
|
|
# y已上报修改,返回需要修改的字段列表
|
|
# y已上报修改,返回需要修改的字段列表
|
|
edit_data = []
|
|
edit_data = []
|
|
- edit_values = OrderDetailEdit.objects.filter(order=instance, type=OrderDetailEdit.ZERO).values('value', 'reason')
|
|
|
|
|
|
+ edit_file = []
|
|
|
|
+ edit_values = OrderDetailEdit.objects.filter(order=instance).values('value', 'reason', 'type')
|
|
for r in edit_values:
|
|
for r in edit_values:
|
|
item = {
|
|
item = {
|
|
'name': r['value'],
|
|
'name': r['value'],
|
|
'reason': r['reason'],
|
|
'reason': r['reason'],
|
|
}
|
|
}
|
|
- edit_data.append(item)
|
|
|
|
|
|
+ if r['type'] == OrderDetailEdit.ZERO:
|
|
|
|
+ edit_data.append(item)
|
|
|
|
+ else:
|
|
|
|
+ edit_file.append(item)
|
|
result = {
|
|
result = {
|
|
'data': serializer.data,
|
|
'data': serializer.data,
|
|
'edit_values': edit_data,
|
|
'edit_values': edit_data,
|
|
- 'edit_file': [
|
|
|
|
- {
|
|
|
|
- 'upload_id':1,
|
|
|
|
- 'url':'',
|
|
|
|
- }
|
|
|
|
- ],
|
|
|
|
|
|
+ 'edit_file': edit_file,
|
|
}
|
|
}
|
|
return response_ok(result)
|
|
return response_ok(result)
|
|
|
|
|
|
@@ -225,6 +224,7 @@ class OrderViewSet(CustomModelViewSet):
|
|
data = request.POST.get('items')
|
|
data = request.POST.get('items')
|
|
reason = request.POST.get('reason')
|
|
reason = request.POST.get('reason')
|
|
status = request.GET.get('statu')
|
|
status = request.GET.get('statu')
|
|
|
|
+
|
|
try:
|
|
try:
|
|
instance = self.get_object()
|
|
instance = self.get_object()
|
|
if instance.status == order.ONE:
|
|
if instance.status == order.ONE:
|
|
@@ -233,20 +233,24 @@ class OrderViewSet(CustomModelViewSet):
|
|
raise CustomError('该客户信息被拒绝审批,禁止操作')
|
|
raise CustomError('该客户信息被拒绝审批,禁止操作')
|
|
with transaction.atomic():
|
|
with transaction.atomic():
|
|
if status == '1':
|
|
if status == '1':
|
|
- # 通过
|
|
|
|
|
|
+ # 审核通过, 删除修改信息
|
|
instance.status = order.ONE
|
|
instance.status = order.ONE
|
|
|
|
+ OrderDetailEdit.objects.filter(order=instance).delete()
|
|
elif status == '3':
|
|
elif status == '3':
|
|
# 拒绝审批
|
|
# 拒绝审批
|
|
instance.status = order.THREE
|
|
instance.status = order.THREE
|
|
instance.cancel_reason = reason
|
|
instance.cancel_reason = reason
|
|
else:
|
|
else:
|
|
# 返回修改
|
|
# 返回修改
|
|
- OrderDetailEdit.objects.filter(order=instance).delete()
|
|
|
|
if not len(data):
|
|
if not len(data):
|
|
raise CustomError('请填写返回修改原因')
|
|
raise CustomError('请填写返回修改原因')
|
|
for item in json.loads(data):
|
|
for item in json.loads(data):
|
|
|
|
+ # 根据修改类别,删除对应的历史修改信息
|
|
|
|
+ OrderDetailEdit.objects.filter(order=instance, type=item['type']).delete()
|
|
OrderDetailEdit.objects.create(order=instance, value=item['name'], reason=item['reason'],
|
|
OrderDetailEdit.objects.create(order=instance, value=item['name'], reason=item['reason'],
|
|
type=item['type'])
|
|
type=item['type'])
|
|
|
|
+ if item['type'] == OrderDetailEdit.ONE:
|
|
|
|
+ OrderImages.objects.filter(order=instance, type=item['name']).update(enable=False)
|
|
instance.status = order.TOW
|
|
instance.status = order.TOW
|
|
instance.save()
|
|
instance.save()
|
|
BizLog.objects.addnew(self.request.user, BizLog.INSERT,
|
|
BizLog.objects.addnew(self.request.user, BizLog.INSERT,
|
|
@@ -257,12 +261,10 @@ class OrderViewSet(CustomModelViewSet):
|
|
except Exception as e:
|
|
except Exception as e:
|
|
return response_error(str(e))
|
|
return response_error(str(e))
|
|
|
|
|
|
- @action(methods=['post'], detail=False)
|
|
|
|
- def upload_image(self, request):
|
|
|
|
|
|
+ @action(methods=['post'], detail=True)
|
|
|
|
+ def upload_image(self, request, pk):
|
|
file = self.request.FILES.get('file')
|
|
file = self.request.FILES.get('file')
|
|
- type = self.request.FILES.get('type')
|
|
|
|
- order_id = self.request.FILES.get('order_id')
|
|
|
|
- upload_id = self.request.FILES.get('upload_id')
|
|
|
|
|
|
+ type = self.request.POST.get('type')
|
|
# 上传图片,order_id必填。更新图片时,upload_id必填
|
|
# 上传图片,order_id必填。更新图片时,upload_id必填
|
|
# / order / 2 / upload_image /
|
|
# / order / 2 / upload_image /
|
|
# post
|
|
# post
|
|
@@ -270,20 +272,42 @@ class OrderViewSet(CustomModelViewSet):
|
|
# type 0身份证, 1驾驶证, 2收入类, 3流水类, 4营业执照, 5挂靠协议
|
|
# type 0身份证, 1驾驶证, 2收入类, 3流水类, 4营业执照, 5挂靠协议
|
|
# order_id 订单id
|
|
# order_id 订单id
|
|
# upload_id 图片id
|
|
# upload_id 图片id
|
|
|
|
+ try:
|
|
|
|
+ order = self.get_object()
|
|
|
|
+ with transaction.atomic():
|
|
|
|
+ if type:
|
|
|
|
+ # 上传图片时,把不在使用的同类别图片删除。
|
|
|
|
+ images = OrderImages.objects.filter(order=order, type=type, enable=False)
|
|
|
|
+ for image in images:
|
|
|
|
+ image.image.del_images()
|
|
|
|
+ image.delete()
|
|
|
|
+ upload = Upload.objects._addnew(file, 'user_image')
|
|
|
|
+ if upload:
|
|
|
|
+ OrderImages.objects.create(order=order, type=type, image=upload)
|
|
|
|
+ dict = {
|
|
|
|
+ 'id': upload.id,
|
|
|
|
+ 'path': upload.get_path(),
|
|
|
|
+ }
|
|
|
|
+ return response_ok(dict)
|
|
|
|
+ return response_error('上传失败,请重新上传!')
|
|
|
|
+ except CustomError as e:
|
|
|
|
+ return response_error(e.get_error_msg())
|
|
|
|
+ except Exception as e:
|
|
|
|
+ return response_error(str(e))
|
|
|
|
|
|
|
|
+ @action(methods=['post'], detail=True)
|
|
|
|
+ def deleteImage(self, request, pk):
|
|
|
|
+ upload_id = self.request.POST.get('upload_id')
|
|
try:
|
|
try:
|
|
|
|
+ order = self.get_object()
|
|
with transaction.atomic():
|
|
with transaction.atomic():
|
|
if upload_id:
|
|
if upload_id:
|
|
upload = Upload.objects.filter(id=upload_id).first()
|
|
upload = Upload.objects.filter(id=upload_id).first()
|
|
if upload:
|
|
if upload:
|
|
upload.del_images()
|
|
upload.del_images()
|
|
- Upload.objects._update(file, 'user_image', upload)
|
|
|
|
- return response_ok(upload.id)
|
|
|
|
- upload = Upload.objects._addnew(file)
|
|
|
|
- if upload:
|
|
|
|
- OrderImages.objects.create(order_id=order_id, type=type, image=upload)
|
|
|
|
- return response_ok(upload.id)
|
|
|
|
- return response_error('上传失败,请重新上传!')
|
|
|
|
|
|
+ OrderImages.objects.filter(order=order, image_id=upload_id).delete()
|
|
|
|
+ return response_ok()
|
|
|
|
+ return response_error('图片参数错误,删除失败')
|
|
except CustomError as e:
|
|
except CustomError as e:
|
|
return response_error(e.get_error_msg())
|
|
return response_error(e.get_error_msg())
|
|
except Exception as e:
|
|
except Exception as e:
|
|
@@ -325,7 +349,34 @@ class OrderViewSet(CustomModelViewSet):
|
|
'type': '0',
|
|
'type': '0',
|
|
}
|
|
}
|
|
result.append(item)
|
|
result.append(item)
|
|
- return response_ok(result)
|
|
|
|
|
|
+
|
|
|
|
+ files = []
|
|
|
|
+ types = OrderImages.TYPE_CHOICE
|
|
|
|
+ for t in types:
|
|
|
|
+ edit_values = OrderDetailEdit.objects.filter(order=instance, type=OrderDetailEdit.ONE,
|
|
|
|
+ value=t[0]).first()
|
|
|
|
+ edit_time = reason = ''
|
|
|
|
+ if edit_values:
|
|
|
|
+ edit_time = edit_values.edit_time and strftime(edit_values.edit_time) or ''
|
|
|
|
+ reason = edit_values.reason
|
|
|
|
+
|
|
|
|
+ item = {
|
|
|
|
+ 'name': t[0], # 身份证
|
|
|
|
+ 'label': t[1], # 身份证
|
|
|
|
+ 'images': [], # 1
|
|
|
|
+ 'edit_time': edit_time,
|
|
|
|
+ 'reason': reason,
|
|
|
|
+ 'type': '1',
|
|
|
|
+ }
|
|
|
|
+ images = OrderImages.objects.filter(order=instance, type=t[0])
|
|
|
|
+ for image in images:
|
|
|
|
+ item['images'].append(image.image.get_path())
|
|
|
|
+ files.append(item)
|
|
|
|
+ edit_dict = {
|
|
|
|
+ 'order_info':result,
|
|
|
|
+ 'image_info':files,
|
|
|
|
+ }
|
|
|
|
+ return response_ok(edit_dict)
|
|
|
|
|
|
def destroy(self, request, *args, **kwargs):
|
|
def destroy(self, request, *args, **kwargs):
|
|
try:
|
|
try:
|