Forráskód Böngészése

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	apps/purchase/models.py
jiaweiqi 3 éve
szülő
commit
23f5dd503c

+ 9 - 1
apps/config/models.py

@@ -5,7 +5,7 @@ from django.db import models
 class Config(models.Model):
     KEY_CONSIGNEE_NAME = "consignee_name"       # 收货人姓名
     KEY_CONSIGNEE_TEL = "consignee_tel"         # 收货人电话
-    GODOWNENTRY_PROCESS = "godownentry_process"         # 收货人电话
+    GODOWNENTRY_PROCESS = "godownentry_process"         # 1简易流程,0标准流程
 
     property = models.CharField(max_length=100, verbose_name=u'属性')
     value = models.TextField(verbose_name=u'值')
@@ -36,3 +36,11 @@ class Config(models.Model):
             return row.value
         except:
             return ""
+
+    @staticmethod
+    def getValue(property):
+        try:
+            row = Config.objects.get(property=property)
+            return row.value
+        except:
+            return ""

+ 2 - 1
apps/config/urls.py

@@ -6,4 +6,5 @@ from views import *
 urlpatterns = (
     url(r'^data/$', config_list),
     url(r'^save/$', config_save),
-)
+    url(r'^get_value/$', get_value),
+)

+ 7 - 1
apps/config/views.py

@@ -5,7 +5,6 @@ import json
 
 from django.views.decorators.csrf import csrf_exempt
 from django.db import transaction
-
 from apps.exceptions import CustomError
 from apps.foundation.models import BizLog
 from libs.http import JSONResponse, JSONError, DataGridJSONResponse
@@ -13,6 +12,13 @@ from apps.account.decorators import permission_required, token_required
 from models import Config
 from serializers import  ConfigSerializer
 
+@token_required
+def get_value(request):
+    property = request.GET.get('property')
+    value = Config.getValue(property)
+
+    return JSONResponse(value)
+
 @csrf_exempt
 @permission_required('config.edit_config')
 def config_save(request):

+ 15 - 0
apps/finance/models.py

@@ -124,6 +124,21 @@ class dbFinanceIncome(models.Model):
     check_time = models.DateTimeField(verbose_name=u"审核时间", null=True)
     check_status = models.PositiveSmallIntegerField(choices=settings.CHECK_STATUS_CHOICES, verbose_name=u"审核状态", default=settings.DEFAULT)
 
+
+    def save(self, *args, **kwargs):
+        if self.no == None or self.no == '':
+            now = timezone.now()
+            rows = dbFinanceIncome.objects.filter(create_time__gte=now.strftime('%Y-%m-%d'),  type=self.type).order_by('-no')
+            count = rows.count()
+            prefix = dbFinanceIncome.PREFIX_CHOICES[self.type-1][1]
+            if count == 0:
+                self.no = '%s%s%04d' % (prefix, now.strftime('%Y%m%d'), count + 1)
+            else:
+                suffix = (rows[0].no.split('-'))[1]
+                self.no = prefix+str(int(suffix) + 1)
+
+        super(dbFinanceIncome, self).save(*args, **kwargs)
+
     class Meta:
         db_table = "finance_income"
         verbose_name = u"收支管理"

+ 2 - 2
apps/foundation/models.py

@@ -16,7 +16,7 @@ class Option(models.Model):
     CONSUMABLE_MODE = 2
     GOODS_MODE = 3
     QUALITY_REQUEST = 4
-    BANK_ACCOUNT = 5
+    PAYMENT_ACCOUNT = 5
 
     TYPE_CHOICES = (
         (PAYMENT_MODE, u'付款方式'),
@@ -24,7 +24,7 @@ class Option(models.Model):
         (CONSUMABLE_MODE, u'耗材类别'),
         (GOODS_MODE, u'成品类别'),
         (QUALITY_REQUEST, u'质量要求'),
-        (BANK_ACCOUNT, u'银行账户'),
+        (PAYMENT_ACCOUNT, u'付款账户'),
     )
 
     type = models.PositiveSmallIntegerField(choices=TYPE_CHOICES, verbose_name=u"类别")

+ 8 - 3
apps/purchase/models.py

@@ -223,6 +223,10 @@ class PurchaseOrder(models.Model):
     # check_time3 = models.DateTimeField(verbose_name=u"批准时间", null=True)
     consignee_name = models.CharField(max_length=100, verbose_name=u"收货人姓名", null=True)
     consignee_tel = models.CharField(max_length=100, verbose_name=u"收货人电话", null=True)
+
+    handing_amount = models.BigIntegerField(u'装卸费用', default=0)
+    transport_amount = models.BigIntegerField(u'运输费用', default=0)
+
     class Meta:
         db_table = "purchase_order"
         verbose_name = u"合同管理"
@@ -378,9 +382,9 @@ class PurchasePayment(models.Model):
     no = models.CharField(max_length=20, verbose_name=u"单号", editable=False)
     order = models.ForeignKey(PurchaseOrder, verbose_name=u"合同", on_delete=models.PROTECT)
     status = models.PositiveSmallIntegerField(choices=settings.CHECK_STATUS_CHOICES, default=settings.DEFAULT, verbose_name=u"状态")
-    amount = models.BigIntegerField(verbose_name=u'合同金额', default=0)
-    actual_amount = models.BigIntegerField(verbose_name=u'实付金额', default=0)
-    apply_amount = models.BigIntegerField(verbose_name=u'申请金额', default=0)
+    amount = models.BigIntegerField(verbose_name=u'合同金额', default=0) # 1、标准模式:材料费用+ 运费+装卸费。2、简易模式:材料费用
+    actual_amount = models.BigIntegerField(verbose_name=u'实付金额', default=0) # 已付金额
+    apply_amount = models.BigIntegerField(verbose_name=u'申请金额', default=0) # 简易费用,此值为材料费用
     is_pay = models.BooleanField(verbose_name=u"是否付款", default=0)
     notes = models.CharField(max_length=200, verbose_name=u"申请备注", blank=True, null=True)
     create_time = models.DateTimeField(verbose_name=u"创建时间", default=timezone.now)
@@ -395,6 +399,7 @@ class PurchasePayment(models.Model):
     # ratify_user = models.ForeignKey(User, verbose_name=u"批准人", related_name='purchase_payment_ref_ratify_user',
     #                                 on_delete=models.PROTECT, null=True, blank=True)
     # ratify_time = models.DateTimeField(verbose_name=u"批准时间", null=True)
+    is_clear = models.BooleanField(verbose_name=u"是否结清", default=0)
 
     class Meta:
         db_table = "purchase_payment"

+ 2 - 1
apps/purchase/urls.py

@@ -15,6 +15,7 @@ urlpatterns = (
     url(r'^purchase_order/delete/$', purchase_order_delete),
     url(r'^purchase_order/check/$', purchase_order_check),
     url(r'^purchase_order/export_detail/$', purchase_order_export_detail),
+    url(r'^purchase_order/payment/$', purchase_order_payment),
 
     url(r'^purchase/data/$', purchase_list),
     url(r'^purchase/export/$', purchase_export),
@@ -83,4 +84,4 @@ urlpatterns = (
     url(r'^godownentry_return_query/export/$', godownentry_return_query_export),
     url(r'^godownentry_return_query/detail/$', godownentry_return_query_detail),
 
-)
+)

+ 26 - 0
apps/purchase/views.py

@@ -964,6 +964,31 @@ def purchase_order_export_detail(request):
     BizLog.objects.addnew(request.user, BizLog.EXPORT, u"导出采购合同明细")
     return JSONResponse({'filename': filename})
 
+@csrf_exempt
+@permission_required('purchase.check_purchase_order')
+def purchase_order_payment(request):
+    #todo 简易模式,入库单付款,自动生成付款单,并自动审核。同时创建收支单(创建收支单,放到付款单审核流程中)
+    id = request.GET.get('id') # 入库单id
+    handing_amount = request.POST.get('handing_amount')
+    handing_account = request.POST.get('handing_account')
+
+    transport_account = request.POST.get('transport_account')
+    transport_amount = request.POST.get('transport_amount')
+
+    order_amount = request.POST.get('order_amount')
+    order_account = request.POST.get('order_account')
+
+    try:
+        with transaction.atomic():
+            order = PurchaseOrder.getById(id)
+
+    except CustomError, e:
+        return JSONError(e.get_error_msg())
+    except Exception, e:
+        traceback.print_exc()
+        return JSONError(u'审核失败')
+    return JSONResponse({})
+
 @csrf_exempt
 @permission_required('purchase.view_purchase_payment')
 def purchase_payment_list(request):
@@ -1546,6 +1571,7 @@ def godownentry_list(request):
 @csrf_exempt
 @token_required
 def godownentry_save(request):
+    #todo 简易流程:添加入库单,同时生成合同,自动审核合同。
     id = request.GET.get('id')
     main_data = json.loads(request.POST.get('main'))
     items_data = json.loads(request.POST.get('item'))

+ 141 - 64
uis/views/purchase/material_godownentry.html

@@ -10,12 +10,36 @@
     <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all">
     <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all">
     <style type="text/css">
-    .LAY-btns .layui-nav {padding-left:0;padding-right:10px;top:-4px;margin: 0 10px;border: 0;background-color: #009688;}
-    .LAY-btns .layui-nav .layui-nav-item{line-height: 30px;}
-    .LAY-btns .layui-nav .layui-nav-child{top:34px;}
-    .LAY-btns .layui-nav .layui-nav-bar{display: none;}
-    .LAY-btns .layui-nav .layui-nav-child dd.layui-this a{color:#333;background-color:#fff;}
-    .LAY-btns .layui-nav .layui-nav-child dd.layui-this a:hover {background-color: #f2f2f2;color: #000;}
+        .LAY-btns .layui-nav {
+            padding-left: 0;
+            padding-right: 10px;
+            top: -4px;
+            margin: 0 10px;
+            border: 0;
+            background-color: #009688;
+        }
+
+        .LAY-btns .layui-nav .layui-nav-item {
+            line-height: 30px;
+        }
+
+        .LAY-btns .layui-nav .layui-nav-child {
+            top: 34px;
+        }
+
+        .LAY-btns .layui-nav .layui-nav-bar {
+            display: none;
+        }
+
+        .LAY-btns .layui-nav .layui-nav-child dd.layui-this a {
+            color: #333;
+            background-color: #fff;
+        }
+
+        .LAY-btns .layui-nav .layui-nav-child dd.layui-this a:hover {
+            background-color: #f2f2f2;
+            color: #000;
+        }
     </style>
 </head>
 <body>
@@ -25,7 +49,9 @@
             <div class="layui-row">
 
                 <div class="LAY-btns" style="margin-bottom: 10px;">
-                    <button class="layui-btn layui-btn-sm" data-permission="purchase.add_material_godown_entry" id="btn_add"><i class="layui-icon layui-icon-add-1"></i>添加</button>
+                    <button class="layui-btn layui-btn-sm" data-permission="purchase.add_material_godown_entry"
+                            id="btn_add"><i class="layui-icon layui-icon-add-1"></i>添加
+                    </button>
                     <button class="layui-nav" data-permission="purchase.export_material_godown_entry">
                         <div class="layui-nav-item">
                             <a href="javascript:;" style="color:#fff;">导出</a>
@@ -44,22 +70,33 @@
                             </dl>
                         </div>
                     </button>
-                    <button class="layui-btn layui-btn-sm" id="btn_print" data-permission="purchase.print_material_godown_entry"><i class="layui-icon layui-icon-form"></i>打印</button>
-                    <button class="layui-btn layui-btn-sm" id="btn_query"><i class="layui-icon layui-icon-search"></i>查询</button>
+                    <button class="layui-btn layui-btn-sm" id="btn_print"
+                            data-permission="purchase.print_material_godown_entry"><i
+                            class="layui-icon layui-icon-form"></i>打印
+                    </button>
+                    <button class="layui-btn layui-btn-sm layui-hide" id="btn_pay"><i
+                            class="layui-icon layui-icon-form"></i>付款
+                    </button>
+                    <button class="layui-btn layui-btn-sm" id="btn_query"><i class="layui-icon layui-icon-search"></i>查询
+                    </button>
                 </div>
                 <table class="layui-hide" id="datagrid" lay-filter="datagrid-operate"></table>
                 <script type="text/html" id="datagrid-operate-bar">
                     <div class="layui-btn-group">
-                    <a class="layui-btn layui-btn-xs" lay-event="detail">查看</a>
-                    {{# if(d.status == 0){ }}
-                    <a class="layui-btn layui-btn-xs" lay-event="edit" data-permission="purchase.add_material_godown_entry">修改</a>
+                        <a class="layui-btn layui-btn-xs" lay-event="detail">查看</a>
+                        {{# if(d.status == 0){ }}
+                        <a class="layui-btn layui-btn-xs" lay-event="edit"
+                           data-permission="purchase.add_material_godown_entry">修改</a>
 
-                    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del" data-permission="purchase.delete_material_godown_entry">删除</a>
-                    <a class="layui-btn layui-btn-xs" lay-event="check" data-permission="purchase.check_material_godown_entry">审核</a>
-                    {{# } }}
-                    {{# if(d.status == 1){ }}
-                    <a class="layui-btn layui-btn-xs" lay-event="senior_edit" data-permission="purchase.edit_material_godown_entry">高级修改</a>
-                    {{# } }}
+                        <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"
+                           data-permission="purchase.delete_material_godown_entry">删除</a>
+                        <a class="layui-btn layui-btn-xs" lay-event="check"
+                           data-permission="purchase.check_material_godown_entry">审核</a>
+                        {{# } }}
+                        {{# if(d.status == 1){ }}
+                        <a class="layui-btn layui-btn-xs" lay-event="senior_edit"
+                           data-permission="purchase.edit_material_godown_entry">高级修改</a>
+                        {{# } }}
                     </div>
                 </script>
             </div>
@@ -73,13 +110,15 @@
                 <div class="layui-col-xs12 layui-col-sm12">
                     <label class="layui-form-label">创建时间:</label>
                     <div class="layui-input-block">
-                        <input type="text" class="layui-input" autocomplete="off" name="create_time" id="create_time" placeholder=" - ">
+                        <input type="text" class="layui-input" autocomplete="off" name="create_time" id="create_time"
+                               placeholder=" - ">
                     </div>
                 </div>
                 <div class="layui-col-xs12 layui-col-sm12">
                     <label class="layui-form-label">审核时间:</label>
                     <div class="layui-input-block">
-                        <input type="text" class="layui-input" autocomplete="off" name="check_time" id="check_time" placeholder=" - ">
+                        <input type="text" class="layui-input" autocomplete="off" name="check_time" id="check_time"
+                               placeholder=" - ">
                     </div>
                 </div>
                 <div class="layui-col-xs12 layui-col-sm12">
@@ -123,7 +162,7 @@
                     </div>
                 </div>
             </div>
-            <div style="display: none" >
+            <div style="display: none">
                 <button id="query-submit" lay-submit lay-filter="query-form-element">查询</button>
             </div>
         </form>
@@ -143,21 +182,21 @@
         var table = layui.table
             , form = layui.form
             , utils = layui.utils
-            ,laydate = layui.laydate;
+            , laydate = layui.laydate;
         var is_has = utils.isHasPermissions('material.view_material_cost');
         var cols = [];
-        cols.push({type: 'checkbox', width: 50});
+        cols.push({type: 'radio', width: 50});
         cols.push({field: 'no', title: '入库单号', width: 140});
-        cols.push({field: 'supplier_text', title: '供应商', width: 145});
-        cols.push({field: 'total_count', align:'right', title: '合计数量', width: 100});
+        cols.push({field: 'supplier_text', title: '供应商', width: 150});
+        cols.push({field: 'total_count', align: 'right', title: '合计数量', width: 100});
         if (is_has) {
-            cols.push({field: 'total_amount', align:'right', title: '合计金额', width: 100});
-            cols.push({field: 'total_invoice_amount', align:'right', title: '合计发票金额', width: 120});
+            cols.push({field: 'total_amount', align: 'right', title: '合计金额', width: 100});
+            cols.push({field: 'total_invoice_amount', align: 'right', title: '合计发票金额', width: 120});
         }
-        cols.push({field: 'warehouse_text', align:'right', title: '仓别', width: 100});
-        cols.push({field: 'purchase_order_no', align:'right', title: '合同号', width: 150});
+        cols.push({field: 'warehouse_text', align: 'right', title: '仓别', width: 100});
+        cols.push({field: 'purchase_order_no', align: 'right', title: '合同号', width: 150});
         cols.push({field: 'create_time', title: '创建时间', width: 150});
-        cols.push({field: 'create_user_text', title: '创建人', width: 150});
+        cols.push({field: 'create_user_text', title: '创建人', width: 100});
         cols.push({field: 'status_text', title: '审核状态', width: 100});
         cols.push({field: 'check_time', title: '审核时间', width: 150});
         cols.push({field: 'check_user_text', title: '审核人', width: 100});
@@ -171,7 +210,7 @@
             , page: true
             , height: 'full-104'
             , totalRow: true
-            ,parseData:function(res) {
+            , parseData: function (res) {
                 var cols = this.cols[0];
                 for (var i in cols) {
                     if (cols[i].field == 'total_count') {
@@ -182,20 +221,30 @@
                     }
                 }
                 return {
-                  "code": res.code, //解析接口状态
-                  "count": res.count, //解析数据长度
-                  "data": res.data //解析数据列表
+                    "code": res.code, //解析接口状态
+                    "count": res.count, //解析数据长度
+                    "data": res.data //解析数据列表
                 };
             }
             , done: function () {
                 layui.index.removeNoPermButtons()
             }
         });
+
+        layui.admin.req({
+            url: '/config/get_value/?property=godownentry_process'
+            , done: function (res) {
+                if (res.data == '1') {
+                    layui.$('#btn_pay').removeClass('layui-hide')
+                }
+            }
+        });
+
         //监听工具条
         table.on('tool(datagrid-operate)', function (obj) {
             var data = obj.data;
             if (obj.event === 'del') {
-                if (data.status === "1"){
+                if (data.status === "1") {
                     layer.msg('入库单已审核,无法删除!');
                     return;
                 }
@@ -210,7 +259,7 @@
                 });
             } else if (obj.event === 'edit') {
                 table.editdata = data;
-                if (data.status === "1"){
+                if (data.status === "1") {
                     layer.msg('入库单已审核,无法修改!');
                     return;
                 }
@@ -222,19 +271,19 @@
                     btn: ['保存', '取消'],
                     yes: function (index, dom) {
                         layui.onSubmitChild = function (data) {
-                        layer.close(index);
-                        table.reload('datagrid', {});
-                    };
-                    layui.submitChild();
+                            layer.close(index);
+                            table.reload('datagrid', {});
+                        };
+                        layui.submitChild();
                     },
                     btn2: function (index, layero) {
                         layer.close(index);//关闭当前按钮
                     },
                     content: 'material_godownentry_edit.html?id=' + data.id
                 });
-            }else if (obj.event === 'senior_edit') {
+            } else if (obj.event === 'senior_edit') {
                 table.editdata = data;
-                if (data.status === "0"){
+                if (data.status === "0") {
                     layer.msg('入库单未审核,无法高级修改!');
                     return;
                 }
@@ -246,37 +295,37 @@
                     btn: ['保存', '取消'],
                     yes: function (index, dom) {
                         layui.onSubmitChild = function (data) {
-                        layer.close(index);
-                        table.reload('datagrid', {});
-                    };
-                    layui.submitChild();
+                            layer.close(index);
+                            table.reload('datagrid', {});
+                        };
+                        layui.submitChild();
                     },
                     btn2: function (index, layero) {
                         layer.close(index);//关闭当前按钮
                     },
                     content: 'material_godownentry_senior_edit.html?id=' + data.id
                 });
-            }else if(obj.event === 'check'){
-                layer.confirm('确定要审核吗?', function(index){
+            } else if (obj.event === 'check') {
+                layer.confirm('确定要审核吗?', function (index) {
 
                     layer.close(index);
                     layui.admin.req({
-                        url: '/purchase/godownentry/check/?id='+data.id
-                        ,done: function(res){
-                            table.reload('datagrid',{});
+                        url: '/purchase/godownentry/check/?id=' + data.id
+                        , done: function (res) {
+                            table.reload('datagrid', {});
                         }
                     });
                 });
-              }else if(obj.event === 'detail'){
-                  table.editdata = data;
+            } else if (obj.event === 'detail') {
+                table.editdata = data;
                 layer.open({
-                  type: 2,
-                  title: '查看['+ data.no + ']',
-                  shadeClose: true,
-                  area: ['70%', '80%'],
-                  content: 'material_godownentry_detail.html?id='+data.id
+                    type: 2,
+                    title: '查看[' + data.no + ']',
+                    shadeClose: true,
+                    area: ['70%', '80%'],
+                    content: 'material_godownentry_detail.html?id=' + data.id
                 });
-              }
+            }
         });
         laydate.render({
             elem: '#create_time'
@@ -303,7 +352,7 @@
                 return;
             }
             layui.admin.req({
-                url: '/purchase/godownentry/export_detail/?id='+data.id,
+                url: '/purchase/godownentry/export_detail/?id=' + data.id,
                 data: _params,
                 done: function (res) {
                     layui.view.download(res.data.filename);
@@ -329,6 +378,34 @@
                 content: 'material_godownentry_edit.html'
             });
         });
+        $('#btn_pay').on('click', function () {
+            var data = utils.getSelectedRow('datagrid');
+            if (data == false) {
+                layer.msg('请选择一条数据!', {icon: 5});
+                return false;
+            }
+            if (data.status != '1') {
+                layer.msg('请先审核入库单,在付款!', {icon: 5});
+                return false;
+            }
+            layer.open({
+                type: 2,
+                title: '入库付款',
+                area: ['40%', '60%'],
+                btn: ['保存', '取消'],
+                yes: function (index, dom) {
+                    layui.onSubmitChild = function (data) {
+                        layer.close(index);
+                        table.reload('datagrid', {});
+                    };
+                    layui.submitChild();
+                },
+                btn2: function (index, layero) {
+                    layer.close(index);//关闭当前按钮
+                },
+                content: 'material_pay.html?id=' + data.id
+            });
+        });
         $('#btn_query').on('click', function () {
             layer.open({
                 type: 1,
@@ -347,7 +424,7 @@
             _params = data.field;
             table.reload('datagrid', {
                 where: data.field,
-                page:{curr:1}
+                page: {curr: 1}
             });
             layer.closeAll();
             return false
@@ -365,8 +442,8 @@
                 area: ['90%', '90%'],
                 btn: ['打印', '取消'],
                 yes: function (index, dom) {
-                    layui.onSubmitChild = function(data){
-                      layer.close(index);
+                    layui.onSubmitChild = function (data) {
+                        layer.close(index);
                     };
                     layui.submitChild();
                 },
@@ -404,4 +481,4 @@
     })
 </script>
 </body>
-</html>
+</html>

+ 160 - 0
uis/views/purchase/material_pay.html

@@ -0,0 +1,160 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title></title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport"
+          content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all">
+    <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all">
+    <link rel="stylesheet" href="../../jquery-easyui-1.5.2/themes/icon.css" type="text/css">
+    <style type="text/css">
+        .table-overlay .layui-table-view,
+        .table-overlay .layui-table-header,
+        .table-overlay .layui-table-box,
+        .table-overlay .layui-table-body {
+            overflow: visible;
+        }
+
+        .table-overlay .layui-table-cell {
+            height: auto;
+            overflow: visible;
+        }
+    </style>
+</head>
+<body>
+
+<div class="layui-fluid">
+    <div class="layui-card">
+        <div class="layui-card-body" pad15>
+            <form class="layui-form" action="" lay-filter="component-form-element">
+                <div class="layui-row layui-col-space10">
+                    <div class="layui-col-xs6 layui-col-sm4">
+                        <label class="layui-form-label">订单费用:</label>
+                        <div class="layui-input-block">
+                            <input type="text" name="order_amount" lay-verify="number" autocomplete="off" value="0"
+                                   class="layui-input">
+                        </div>
+                    </div>
+                    <div class="layui-col-xs6 layui-col-sm4">
+                        <label class="layui-form-label">付款账户:</label>
+                        <div class="layui-input-block">
+                            <select id="id_order_account" name="order_account" lay-search>
+                                <option value=""></option>
+                            </select>
+                        </div>
+                    </div>
+                </div>
+
+                <div class="layui-row layui-col-space10">
+                    <div class="layui-col-xs6 layui-col-sm4">
+                        <label class="layui-form-label">运输费用:</label>
+                        <div class="layui-input-block">
+                            <input type="text" name="transport_amount" lay-verify="number" value="0"
+                                   class="layui-input">
+                        </div>
+                    </div>
+                    <div class="layui-col-xs6 layui-col-sm4">
+                        <label class="layui-form-label">付款账户:</label>
+                        <div class="layui-input-block">
+                            <select id="id_transport_account" name="transport_account" lay-search>
+                                <option value=""></option>
+                            </select>
+                        </div>
+                    </div>
+                </div>
+
+                <div class="layui-row layui-col-space10">
+                    <div class="layui-col-xs6 layui-col-sm4">
+                        <label class="layui-form-label">装卸费用:</label>
+                        <div class="layui-input-block">
+                            <input type="text" name="handing_amount" lay-verify="number" value="0" class="layui-input">
+                        </div>
+                    </div>
+                    <div class="layui-col-xs6 layui-col-sm4">
+                        <label class="layui-form-label">付款账户:</label>
+                        <div class="layui-input-block">
+                            <select id="id_handing_account" name="handing_account" lay-search>
+                                <option value=""></option>
+                            </select>
+                        </div>
+                    </div>
+                </div>
+
+                <button class="layui-btn" id="material-pay-submit" lay-submit
+                        lay-filter="component-form-element" style="display: none">确定
+                </button>
+            </form>
+        </div>
+    </div>
+</div>
+
+<script src="../../jquery-easyui-1.5.2/jquery.min.js"></script>
+<script src="../../layuiadmin/layui/layui.js"></script>
+<script>
+    layui.config({
+        base: '../../../layuiadmin/' //静态资源所在路径
+    }).extend({
+        index: 'lib/index' //主入口模块
+    }).use(['index', 'form', 'utils',], function () {
+        var $ = layui.$;
+        var admin = layui.admin;
+        var form = layui.form;
+        var id = layui.view.getParameterByName('id');
+
+        admin.req({
+            url: '/foundation/search_options/?type=5',
+            done: function (res) {
+                var data = res.data;
+                var order_account = $('#id_order_account');
+                var transport_account = $('#id_transport_account');
+                var handing_account = $('#id_handing_account');
+                for (var i in data) {
+                    var pid = data[i].id;
+                    var value = data[i].name;
+                    order_account.append("<option value='" + pid + "'>" + value + "</option>");
+                    transport_account.append("<option value='" + pid + "'>" + value + "</option>");
+                    handing_account.append("<option value='" + pid + "'>" + value + "</option>");
+                }
+                form.render();
+            }
+        });
+
+        form.on('submit(component-form-element)', function (data) {
+            console.log(111111111, data.field)
+
+            if (parseFloat(data.field.order_amount) > 0 && !data.field.order_account) {
+                layer.msg('请选择订单费用付款账户!', {icon: 5});
+                return false;
+            }
+
+            if (parseFloat(data.field.handing_amount) > 0 && !data.field.handing_account) {
+                layer.msg('请选择装卸费用付款账户!', {icon: 5});
+                return false;
+            }
+
+            if (parseFloat(data.field.transport_amount) > 0 && !data.field.transport_account) {
+                layer.msg('请选择运输费用付款账户!', {icon: 5});
+                return false;
+            }
+            admin.req({
+                url: '/purchase/purchase_order/payment/?id=' + id
+                , data: data.field
+                , type: 'post'
+                , done: function (res) {
+                    parent.layui.onSubmitChild();
+                }
+            });
+            return false;
+        });
+
+        parent.layui.submitChild = function () {
+            $("#material-pay-submit").click();
+        };
+
+    })
+</script>
+</body>
+</html>