|
|
@@ -1,9 +1,9 @@
|
|
|
@extends('layouts.app')
|
|
|
-@section('title')开单入库-查询@endsection
|
|
|
+@section('title')开单入库-创建@endsection
|
|
|
@section('head')
|
|
|
<link href="{{ mix('css/element-ui.css') }}" rel="stylesheet">
|
|
|
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
|
|
|
-
|
|
|
+ <link rel="stylesheet" href="https://unpkg.com/element-ui@2.15.7/lib/theme-chalk/index.css">
|
|
|
@endsection
|
|
|
|
|
|
@section('content')
|
|
|
@@ -14,7 +14,7 @@
|
|
|
<form name="receiving-task-form" id="receiving-task-form">
|
|
|
<div class="form-group row">
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right text-primary" for="warehouse_id">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block text-primary" for="warehouse_id">
|
|
|
<span class="text-danger">*</span>
|
|
|
仓库
|
|
|
</label>
|
|
|
@@ -33,7 +33,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right text-primary" for="for_single_member">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block text-primary" for="for_single_member">
|
|
|
<span class="text-danger">*</span>
|
|
|
投单员</label>
|
|
|
<div class="form-inline col-8">
|
|
|
@@ -49,17 +49,17 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right text-primary" for="owner_id">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block text-primary" for="owner_id">
|
|
|
<span class="text-danger">*</span>
|
|
|
货主</label>
|
|
|
<div class="form-inline col-8">
|
|
|
<select class="form-control form-control-sm col-12" name="owner_id" id="owner_id"
|
|
|
:class="{'is-invalid':errors.owner_id}"
|
|
|
- @change="getASNDetails" v-model="receiving_task.owner_id">
|
|
|
+ @change="getASNDetails,clearError('owner_id')" v-model="receiving_task.owner_id">
|
|
|
<option v-for="item in owners" :value="item.id" v-text="item.name"></option>
|
|
|
</select>
|
|
|
- <div id="validation-owner-id" class="invalid-feedback" v-show="errors.for_single_member">
|
|
|
- <span v-text="errors.for_single_member"></span>
|
|
|
+ <div id="validation-owner-id" class="invalid-feedback" v-show="errors.owner_id">
|
|
|
+ <span v-text="errors.owner_id"></span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -67,7 +67,7 @@
|
|
|
|
|
|
<div class="form-group row">
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right text-primary" for="driver_name">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block text-primary" for="driver_name">
|
|
|
<span class="text-danger">*</span>
|
|
|
司机姓名</label>
|
|
|
<div class="form-inline col-8">
|
|
|
@@ -82,7 +82,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right text-primary" for="driver-phone">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block text-primary" for="driver-phone">
|
|
|
<span class="text-danger">*</span>
|
|
|
司机电话</label>
|
|
|
<div class="form-inline col-8">
|
|
|
@@ -97,7 +97,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right text-primary"
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block text-primary"
|
|
|
for="appointment_number">
|
|
|
<span class="text-danger">*</span>
|
|
|
预约单号</label>
|
|
|
@@ -116,7 +116,7 @@
|
|
|
|
|
|
<div class="form-group row">
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right" for="plate_number">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block" for="plate_number">
|
|
|
<span class="text-danger">*</span>
|
|
|
车牌号</label>
|
|
|
<div class="form-inline col-8">
|
|
|
@@ -132,7 +132,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right" for="driving_license_no">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block" for="driving_license_no">
|
|
|
<span class="text-danger">*</span>
|
|
|
驾驶证号</label>
|
|
|
<div class="form-inline col-8">
|
|
|
@@ -148,7 +148,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right" for="logistics_single_number">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block" for="logistics_single_number">
|
|
|
<span class="text-danger">*</span>
|
|
|
物流单号</label>
|
|
|
<div class="form-inline col-8">
|
|
|
@@ -165,10 +165,9 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
-
|
|
|
<div class="form-group row">
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right" for="plate_number">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block text-primary" for="plate_number">
|
|
|
<span class="text-danger">*</span>
|
|
|
是否提供清单</label>
|
|
|
<div class="form-inline col-8">
|
|
|
@@ -185,7 +184,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right" for="receiving_type">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block text-primary" for="receiving_type">
|
|
|
<span class="text-danger">*</span>
|
|
|
收货类型</label>
|
|
|
<div class="form-inline col-8">
|
|
|
@@ -205,7 +204,7 @@
|
|
|
|
|
|
<div class="form-group row">
|
|
|
<div class="form-inline col-4 row">
|
|
|
- <label class="col-4 col-form-label text-right text-primary" for="driving_license_image">
|
|
|
+ <label class="col-4 col-form-label text-right d-inline-block text-primary" for="driving_license_image">
|
|
|
<span class="text-danger">*</span>
|
|
|
驾驶证扫描件</label>
|
|
|
<div class="form-inline col-8">
|
|
|
@@ -226,7 +225,7 @@
|
|
|
:data="asn_headers"
|
|
|
height="350"
|
|
|
border
|
|
|
- @row-dblclick="showAsnDetails"
|
|
|
+ @row-click="showAsnDetails"
|
|
|
row-key="asn_no"
|
|
|
@selection-change="handleSelectionChange"
|
|
|
style="width: 100%">
|
|
|
@@ -241,6 +240,7 @@
|
|
|
</el-table-column>
|
|
|
|
|
|
<el-table-column
|
|
|
+ sortable
|
|
|
prop="asn_no" label="ASN号">
|
|
|
</el-table-column>
|
|
|
|
|
|
@@ -249,6 +249,7 @@
|
|
|
</el-table-column>
|
|
|
|
|
|
<el-table-column
|
|
|
+ sortable
|
|
|
prop="asn_status" label="订单状态">
|
|
|
</el-table-column>
|
|
|
|
|
|
@@ -274,6 +275,7 @@
|
|
|
label="参考编号3">
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
+ sortable
|
|
|
prop="receiving_time"
|
|
|
label="接收时间">
|
|
|
</el-table-column>
|
|
|
@@ -337,11 +339,15 @@
|
|
|
</div>
|
|
|
@endsection
|
|
|
@section('lastScript')
|
|
|
+
|
|
|
<script type="text/javascript" src="{{mix('js/queryForm/queryForm.js')}}"></script>
|
|
|
<script type="text/javascript" src="{{ mix('js/element-ui.js') }}"></script>
|
|
|
<script type="text/javascript" src="{{ mix('js/utilities/barcode.js') }}"></script>
|
|
|
<script type="text/javascript" src="{{mix('js/utilities/html2canvas.js')}}"></script>
|
|
|
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
|
|
|
+ <script type="text/javascript" src="{{mix('js/lodop/LodopFuncs.js')}}"></script>
|
|
|
+
|
|
|
+
|
|
|
<script>
|
|
|
let vue = new Vue({
|
|
|
el: "#list",
|
|
|
@@ -455,10 +461,12 @@
|
|
|
|
|
|
} else {
|
|
|
if (res.data.errors){
|
|
|
+ let error = null;
|
|
|
for (const key in res.data.errors) {
|
|
|
this.errors[key] = res.data.errors[key].find(e=>e);
|
|
|
+ if (!error) error = res.data.errors[key].find(e=>e);
|
|
|
}
|
|
|
- this.errorTempTip("创建异常请检查后提交");
|
|
|
+ this.errorTempTip(error ? error : "创建异常请检查后提交");
|
|
|
this.scrollToTop();
|
|
|
} else if (res.data.message){
|
|
|
this.errorTempTip(res.data.message ? res.data.message : '提交异常,请刷新重试');
|
|
|
@@ -495,7 +503,7 @@
|
|
|
asn_no: asnHeaderDetail.asnno ? asnHeaderDetail.asnno : '',
|
|
|
asn_type: asnHeaderDetail.asn_type ? asnHeaderDetail.asn_type.codename_c : '',
|
|
|
asn_status: asnHeaderDetail.asn_status ? asnHeaderDetail.asn_status.codename_c : '',
|
|
|
- up_stream_number: asnHeaderDetail.asnreference1 ? asnHeaderDetail.asncreationtime :'',
|
|
|
+ up_stream_number: asnHeaderDetail.asnreference1 ? asnHeaderDetail.asnreference1 :'',
|
|
|
anticipated_sum_number: anticipated_sum_number,
|
|
|
number1: asnHeaderDetail.asnreference1 ? asnHeaderDetail.asnreference1 : '',
|
|
|
number2: asnHeaderDetail.asnreference2 ? asnHeaderDetail.asnreference2 : '',
|
|
|
@@ -514,14 +522,14 @@
|
|
|
code1: asnDetail.bas_sku ? asnDetail.bas_sku.alternate_sku1 : '',
|
|
|
code2: asnDetail.bas_sku ? asnDetail.bas_sku.alternate_sku2 : '',
|
|
|
code3: asnDetail.bas_sku ? asnDetail.bas_sku.alternate_sku3 : '',
|
|
|
- anticipated_number: asnDetail.receivedqty_each ? asnDetail.receivedqty_each : '',
|
|
|
- number: asnDetail.receivedqty ? asnDetail.receivedqty : '',
|
|
|
+ anticipated_number: asnDetail.expectedqty ? asnDetail.expectedqty : '',
|
|
|
+ number: asnDetail.receivedqty ? asnDetail.receivedqty : 0,
|
|
|
}
|
|
|
},
|
|
|
getAnticipatedSumNumber(asnDetails) {
|
|
|
if (asnDetails.length === 0) return 0;
|
|
|
let sum = asnDetails.reduce((total, e) => {
|
|
|
- return total + Number(e.receivedqty_each);
|
|
|
+ return total + Number(e.expectedqty);
|
|
|
},0);
|
|
|
return sum ? sum : 0;
|
|
|
},
|
|
|
@@ -547,20 +555,16 @@
|
|
|
|
|
|
if (!warehouse_id){
|
|
|
result = {success:false,message:"仓库为必选项",field:'warehouse_id'};
|
|
|
- } else if (!owner_id){
|
|
|
+ }else if(!for_single_member){
|
|
|
+ result = {success:false,message:"投单员不能为空",field:'for_single_member'};
|
|
|
+ } else if (!owner_id){
|
|
|
result = {success:false,message:"货主为必选项",field:'owner_id'};
|
|
|
} else if(!driver_name){
|
|
|
result = {success:false,message:"司机姓名不能为空",field:'driver_name'};
|
|
|
}else if(!driver_phone){
|
|
|
result = {success:false,message:"司机电话不能为空",field:'driver_phone'};
|
|
|
- }else if(!for_single_member){
|
|
|
- result = {success:false,message:"投单员不能为空",field:'for_single_member'};
|
|
|
- } else if(!provide_list){
|
|
|
- result = {success:false,message:"是否提供清单为必填项",field:'provide_list'};
|
|
|
- } else if (!receiving_type){
|
|
|
- result = {success:false,message:"收货类型不能为空",field:'provide_list'};
|
|
|
}else if (!appointment_number){
|
|
|
- result = {success:false,message:"预约单号不能为空",field:'appointment_number'};
|
|
|
+ result = {success:false,message:"预约单号不能为空",field:'appointment_number'};
|
|
|
}
|
|
|
if (!result.success) return result;
|
|
|
if (!logistics_single_number){
|
|
|
@@ -570,6 +574,13 @@
|
|
|
result = {success:false,message:"驾驶证号",field:'driving_license_no'};
|
|
|
}
|
|
|
}
|
|
|
+ if (!result.success) return result;
|
|
|
+ if(!provide_list){
|
|
|
+ result = {success:false,message:"是否提供清单为必填项",field:'provide_list'};
|
|
|
+ } else if (!receiving_type){
|
|
|
+ result = {success:false,message:"收货类型不能为空",field:'provide_list'};
|
|
|
+ }
|
|
|
+
|
|
|
return result;
|
|
|
},
|
|
|
clearError(field){
|
|
|
@@ -593,8 +604,9 @@
|
|
|
this.receiving_task_print = task;
|
|
|
this.setBarcode();
|
|
|
setTimeout(()=>{
|
|
|
- this.formPrint();
|
|
|
- this.transformCode();
|
|
|
+ // this.formPrint();
|
|
|
+ // this.transformCode();
|
|
|
+ this.printLodop();
|
|
|
},2000);
|
|
|
},
|
|
|
formPrint(){
|
|
|
@@ -603,7 +615,8 @@
|
|
|
if(!iframe){
|
|
|
iframe = document.createElement('IFRAME');
|
|
|
iframe.setAttribute("id", "print-iframe");
|
|
|
- iframe.setAttribute('style', 'position:absolute;width:0;height:0;left:-500px;top:-500px;');
|
|
|
+ // iframe.setAttribute('style', 'position:absolute;width:0;height:0;left:-500px;top:-500px;');
|
|
|
+ iframe.setAttribute('style', 'min-height: 450px;min-width: 750px;max-height: 450px;max-width: 750px');
|
|
|
document.body.appendChild(iframe);
|
|
|
}else iframe.contentWindow.document.getElementById("iframe-content").remove();
|
|
|
let doc = iframe.contentWindow.document;
|
|
|
@@ -641,7 +654,8 @@
|
|
|
let scale = item.scale;
|
|
|
let height = item.offsetHeight;
|
|
|
let width = item.offsetWidth;
|
|
|
- style.transform = `scale(${scale},${scale})`;
|
|
|
+ // style.transform = `scale(${scale},${scale})`;
|
|
|
+ // style.transform = `translate(50px,100px);`;
|
|
|
},
|
|
|
htmlToImage(){
|
|
|
window.html2canvas("#print-receiving-task").then((canvas)=>{
|
|
|
@@ -669,8 +683,41 @@
|
|
|
owner:receivingTask.owner ? receivingTask.owner.name : '',
|
|
|
appointment_number: receivingTask.delivery_appointment_car ? receivingTask.delivery_appointment_car.appointment_number : ''
|
|
|
};
|
|
|
+ },
|
|
|
+ printLodop(){
|
|
|
+ htmlTemplateObj = $("#printContext");
|
|
|
+ var LODOP = null;
|
|
|
+ try{
|
|
|
+ LODOP=getLodop();
|
|
|
+ if ((LODOP!=null)&&(typeof(LODOP.VERSION)!="undefined")){
|
|
|
+ this.successTempTip('getLodop 异常');
|
|
|
+ } else{
|
|
|
+ this.downloadAlter();
|
|
|
+ this.errorTempTip('getLodop 异常');
|
|
|
+ }
|
|
|
+ }catch(err){
|
|
|
+ this.errorTempTip('getLodop error');
|
|
|
+ }
|
|
|
+ },
|
|
|
+ lodopPrint(){
|
|
|
+
|
|
|
+ },
|
|
|
+ downloadAlter(){
|
|
|
+ // 需要下载
|
|
|
+ this.$confirm('是否下载打印组件', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
+ }).then(() => {
|
|
|
+ // 确定操作
|
|
|
+ }).catch(() => {
|
|
|
+ // 取消操作
|
|
|
+ });
|
|
|
}
|
|
|
}
|
|
|
})
|
|
|
</script>
|
|
|
+ <object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0 height=0>
|
|
|
+ <embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0></embed>
|
|
|
+ </object>
|
|
|
@endsection
|