|
@@ -27,28 +27,45 @@
|
|
<div class="c-title" v-if="id == 0">数据添加</div>
|
|
<div class="c-title" v-if="id == 0">数据添加</div>
|
|
<div class="c-title" v-else>数据修改</div>
|
|
<div class="c-title" v-else>数据修改</div>
|
|
<el-form v-if="m">
|
|
<el-form v-if="m">
|
|
- <sa-item type="num" name="主键" v-model="m.id" br></sa-item>
|
|
|
|
- <sa-item type="text" name="客户id" v-model="m.customerId" br></sa-item>
|
|
|
|
- <sa-item type="text" name="客户名称" v-model="m.customerName" br></sa-item>
|
|
|
|
- <sa-item type="text" name="编号" v-model="m.no" br></sa-item>
|
|
|
|
- <sa-item type="text" name="车牌号" v-model="m.cardNo" br></sa-item>
|
|
|
|
- <sa-item type="text" name="车规格" v-model="m.cardSize" br></sa-item>
|
|
|
|
- <sa-item type="text" name="载重" v-model="m.netWeight" br></sa-item>
|
|
|
|
- <sa-item type="text" name="商品" v-model="m.goodsName" br></sa-item>
|
|
|
|
- <sa-item type="text" name="商品编号" v-model="m.goodsCode" br></sa-item>
|
|
|
|
- <sa-item type="text" name="司机名称" v-model="m.driverName" br></sa-item>
|
|
|
|
- <sa-item type="text" name="司机id" v-model="m.driverId" br></sa-item>
|
|
|
|
- <sa-item type="text" name="司机联系号码" v-model="m.driverPhone" br></sa-item>
|
|
|
|
- <sa-item type="text" name="司机身份证" v-model="m.driverIdCard" br></sa-item>
|
|
|
|
- <sa-item type="img" name="支付凭证" v-model="m.payTicket" br></sa-item>
|
|
|
|
- <sa-item type="text" name="预计进边境日期" v-model="m.expectInDay" br></sa-item>
|
|
|
|
- <sa-item type="text" name="实际进边境日期" v-model="m.realInDay" br></sa-item>
|
|
|
|
- <sa-item type="text" name="实际进境时间" v-model="m.realInTime" br></sa-item>
|
|
|
|
- <sa-item type="text" name="支付时间" v-model="m.payTime" br></sa-item>
|
|
|
|
- <sa-item type="enum" name="支付方式" v-model="m.payType" :jv="{1: '线下支付', 3: '第三方支付'}" jtype="3" br></sa-item>
|
|
|
|
- <sa-item type="text" name="离境时间" v-model="m.outDayTime" br></sa-item>
|
|
|
|
- <sa-item type="text" name="停车费用" v-model="m.partMoney" br></sa-item>
|
|
|
|
- <sa-item type="text" name="停车时常" v-model="m.partTime" br></sa-item>
|
|
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col span=12>
|
|
|
|
+ <div class="c-item">
|
|
|
|
+ <label class="c-label">客户名称:</label>
|
|
|
|
+ <el-autocomplete
|
|
|
|
+ v-model="m.customerName"
|
|
|
|
+ @select="handleSelectCustomer"
|
|
|
|
+ value-key='name'
|
|
|
|
+ :fetch-suggestions="queryCustomerAsync">
|
|
|
|
+ </el-autocomplete>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="c-item">
|
|
|
|
+ <label class="c-label">车牌号:</label>
|
|
|
|
+ <el-autocomplete
|
|
|
|
+ v-model="m.cardNo"
|
|
|
|
+ @select="handleSelectCar"
|
|
|
|
+ value-key='cardNo'
|
|
|
|
+ :fetch-suggestions="queryCarAsync">
|
|
|
|
+ </el-autocomplete>
|
|
|
|
+ </div>
|
|
|
|
+ <sa-item type="text" name="车规格" v-model="m.cardSize" br></sa-item>
|
|
|
|
+ <sa-item type="num" name="载重(kg)" v-model="m.netWeight" br></sa-item>
|
|
|
|
+ <sa-item type="text" name="运输货品" v-model="m.goodsName" br></sa-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col span=12>
|
|
|
|
+ <div class="c-item">
|
|
|
|
+ <label class="c-label">司机身份证:</label>
|
|
|
|
+ <el-autocomplete
|
|
|
|
+ v-model="m.driverIdCard"
|
|
|
|
+ @select="handleSelectDriver"
|
|
|
|
+ value-key='idCard'
|
|
|
|
+ :fetch-suggestions="queryDriverAsync">
|
|
|
|
+ </el-autocomplete>
|
|
|
|
+ </div>
|
|
|
|
+ <sa-item type="text" name="司机名称" v-model="m.driverName" br></sa-item>
|
|
|
|
+ <sa-item type="text" name="司机联系号码" v-model="m.driverPhone" br></sa-item>
|
|
|
|
+ <sa-item type="date" name="预计入境日期" v-model="m.expectInDay" br></sa-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
<sa-item name="" class="s-ok" br>
|
|
<sa-item name="" class="s-ok" br>
|
|
<el-button type="primary" icon="el-icon-plus" @click="ok()">保存</el-button>
|
|
<el-button type="primary" icon="el-icon-plus" @click="ok()">保存</el-button>
|
|
</sa-item>
|
|
</sa-item>
|
|
@@ -70,66 +87,93 @@
|
|
el: '.vue-box',
|
|
el: '.vue-box',
|
|
data: {
|
|
data: {
|
|
id: sa.p('id', 0), // 获取超链接中的id参数(0=添加,非0=修改)
|
|
id: sa.p('id', 0), // 获取超链接中的id参数(0=添加,非0=修改)
|
|
- m: null, // 实体对象
|
|
|
|
|
|
+ m: {
|
|
|
|
+ id: '', // 主键
|
|
|
|
+ customerId: '', // 客户id
|
|
|
|
+ customerName: '', // 客户名称
|
|
|
|
+ no: '', // 编号
|
|
|
|
+ cardNo: '', // 车牌号
|
|
|
|
+ cardSize: '', // 车规格
|
|
|
|
+ netWeight: '', // 载重(kg)
|
|
|
|
+ goodsName: '', // 商品
|
|
|
|
+ goodsCode: '', // 商品编号
|
|
|
|
+ driverName: '', // 司机名称
|
|
|
|
+ driverId: '', // 司机id
|
|
|
|
+ driverPhone: '', // 司机联系号码
|
|
|
|
+ driverIdCard: '', // 司机身份证
|
|
|
|
+ payTicket: '', // 支付凭证
|
|
|
|
+ expectInDay: '', // 预计进边境日期
|
|
|
|
+ realInDay: '', // 实际进边境日期
|
|
|
|
+ realInTime: '', // 实际进境时间
|
|
|
|
+ payStatus: '', // 支付状态(1=未支付,2=已支付)
|
|
|
|
+ payTime: '', // 支付时间
|
|
|
|
+ payType: '', // 支付方式(1=线下支付,2现金支付,3=第三方支付)
|
|
|
|
+ outDayTime: '', // 离境时间
|
|
|
|
+ partMoney: '', // 停车费用
|
|
|
|
+ partTime: '', // 停车时常(分)
|
|
|
|
+ }, // 实体对象
|
|
|
|
+ customerList:[],
|
|
|
|
+ cardList:[],
|
|
|
|
+ driverList:[]
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
- // 创建一个 默认Model
|
|
|
|
- createModel: function() {
|
|
|
|
- return {
|
|
|
|
- id: '', // 主键
|
|
|
|
- customerId: '', // 客户id
|
|
|
|
- customerName: '', // 客户名称
|
|
|
|
- no: '', // 编号
|
|
|
|
- cardNo: '', // 车牌号
|
|
|
|
- cardSize: '', // 车规格
|
|
|
|
- netWeight: '', // 载重(kg)
|
|
|
|
- goodsName: '', // 商品
|
|
|
|
- goodsCode: '', // 商品编号
|
|
|
|
- driverName: '', // 司机名称
|
|
|
|
- driverId: '', // 司机id
|
|
|
|
- driverPhone: '', // 司机联系号码
|
|
|
|
- driverIdCard: '', // 司机身份证
|
|
|
|
- payTicket: '', // 支付凭证
|
|
|
|
- expectInDay: '', // 预计进边境日期
|
|
|
|
- realInDay: '', // 实际进边境日期
|
|
|
|
- realInTime: '', // 实际进境时间
|
|
|
|
- payStatus: '', // 支付状态(1=未支付,2=已支付)
|
|
|
|
- payTime: '', // 支付时间
|
|
|
|
- payType: '', // 支付方式(1=线下支付,2现金支付,3=第三方支付)
|
|
|
|
- outDayTime: '', // 离境时间
|
|
|
|
- partMoney: '', // 停车费用
|
|
|
|
- partTime: '', // 停车时常(分)
|
|
|
|
- }
|
|
|
|
|
|
+ getCardList(){
|
|
|
|
+ sa.ajax('/TbCar/getList', {pageNo:1,pageSize:100}, function(resp) {
|
|
|
|
+ this.cardList=resp.data;
|
|
|
|
+ }.bind(this));
|
|
|
|
+ },
|
|
|
|
+ queryCarAsync(queryStr,cb){
|
|
|
|
+ let list=this.cardList;
|
|
|
|
+ let filterList= list.filter(obj=>obj.cardNo.indexOf(queryStr)!==-1);
|
|
|
|
+ cb(filterList)
|
|
|
|
+ },
|
|
|
|
+ handleSelectCar(item){
|
|
|
|
+ this.m.cardSize=item.cardSize;
|
|
|
|
+ this.m.goodsName=item.lastGoodsName
|
|
|
|
+ },
|
|
|
|
+ getDriverList(){
|
|
|
|
+ sa.ajax('/TbDriver/getList', {pageNo:1,pageSize:100}, function(resp) {
|
|
|
|
+ this.driverList=resp.data;
|
|
|
|
+ }.bind(this));
|
|
|
|
+ },
|
|
|
|
+ queryDriverAsync(queryStr,cb){
|
|
|
|
+ let list=this.driverList;
|
|
|
|
+ let filterList= list.filter(obj=>obj.idCard.indexOf(queryStr)!==-1);
|
|
|
|
+ cb(filterList)
|
|
|
|
+ },
|
|
|
|
+ handleSelectDriver(item){
|
|
|
|
+ this.m.driverId=item.id;
|
|
|
|
+ this.m.driverName=item.name;
|
|
|
|
+ this.m.driverIdCard=item.idCard;
|
|
|
|
+ this.m.driverPhone=item.phone
|
|
|
|
+ },
|
|
|
|
+ getCustomerList(){
|
|
|
|
+ sa.ajax('/TbCostomer/getList', {pageNo:1,pageSize:100}, function(resp) {
|
|
|
|
+ this.customerList=resp.data;
|
|
|
|
+ }.bind(this));
|
|
|
|
+ },
|
|
|
|
+ queryCustomerAsync(queryString, cb){
|
|
|
|
+ let list=this.customerList;
|
|
|
|
+ let filterList= list.filter(obj=>obj.name.indexOf(queryString)!==-1);
|
|
|
|
+ cb(filterList)
|
|
|
|
+ },
|
|
|
|
+ handleSelectCustomer(item){
|
|
|
|
+ this.m.customerName=item.name;
|
|
|
|
+ this.m.customerId=item.id;
|
|
},
|
|
},
|
|
// 提交数据
|
|
// 提交数据
|
|
ok: function(){
|
|
ok: function(){
|
|
// 表单校验
|
|
// 表单校验
|
|
let m = this.m;
|
|
let m = this.m;
|
|
- sa.checkNull(m.id, '请输入 [主键]');
|
|
|
|
- sa.checkNull(m.customerId, '请输入 [客户id]');
|
|
|
|
sa.checkNull(m.customerName, '请输入 [客户名称]');
|
|
sa.checkNull(m.customerName, '请输入 [客户名称]');
|
|
- sa.checkNull(m.no, '请输入 [编号]');
|
|
|
|
sa.checkNull(m.cardNo, '请输入 [车牌号]');
|
|
sa.checkNull(m.cardNo, '请输入 [车牌号]');
|
|
sa.checkNull(m.cardSize, '请输入 [车规格]');
|
|
sa.checkNull(m.cardSize, '请输入 [车规格]');
|
|
sa.checkNull(m.netWeight, '请输入 [载重]');
|
|
sa.checkNull(m.netWeight, '请输入 [载重]');
|
|
sa.checkNull(m.goodsName, '请输入 [商品]');
|
|
sa.checkNull(m.goodsName, '请输入 [商品]');
|
|
- sa.checkNull(m.goodsCode, '请输入 [商品编号]');
|
|
|
|
sa.checkNull(m.driverName, '请输入 [司机名称]');
|
|
sa.checkNull(m.driverName, '请输入 [司机名称]');
|
|
- sa.checkNull(m.driverId, '请输入 [司机id]');
|
|
|
|
sa.checkNull(m.driverPhone, '请输入 [司机联系号码]');
|
|
sa.checkNull(m.driverPhone, '请输入 [司机联系号码]');
|
|
sa.checkNull(m.driverIdCard, '请输入 [司机身份证]');
|
|
sa.checkNull(m.driverIdCard, '请输入 [司机身份证]');
|
|
- sa.checkNull(m.payTicket, '请输入 [支付凭证]');
|
|
|
|
sa.checkNull(m.expectInDay, '请输入 [预计进边境日期]');
|
|
sa.checkNull(m.expectInDay, '请输入 [预计进边境日期]');
|
|
- sa.checkNull(m.realInDay, '请输入 [实际进边境日期]');
|
|
|
|
- sa.checkNull(m.realInTime, '请输入 [实际进境时间]');
|
|
|
|
- // sa.checkNull(m.payStatus, '请输入 [支付状态]');
|
|
|
|
- sa.checkNull(m.payTime, '请输入 [支付时间]');
|
|
|
|
- sa.checkNull(m.payType, '请输入 [支付方式]');
|
|
|
|
- sa.checkNull(m.outDayTime, '请输入 [离境时间]');
|
|
|
|
- sa.checkNull(m.partMoney, '请输入 [停车费用]');
|
|
|
|
- sa.checkNull(m.partTime, '请输入 [停车时常]');
|
|
|
|
-
|
|
|
|
- // 开始增加或修改
|
|
|
|
if(this.id <= 0) { // 添加
|
|
if(this.id <= 0) { // 添加
|
|
sa.ajax('/TbBusiness/add', m, function(res){
|
|
sa.ajax('/TbBusiness/add', m, function(res){
|
|
sa.alert('增加成功', this.clean);
|
|
sa.alert('增加成功', this.clean);
|
|
@@ -152,9 +196,7 @@
|
|
},
|
|
},
|
|
mounted: function(){
|
|
mounted: function(){
|
|
// 初始化数据
|
|
// 初始化数据
|
|
- if(this.id <= 0) {
|
|
|
|
- this.m = this.createModel();
|
|
|
|
- } else {
|
|
|
|
|
|
+ if(this.id > 0) {
|
|
sa.ajax('/TbBusiness/getById?id=' + this.id, function(res) {
|
|
sa.ajax('/TbBusiness/getById?id=' + this.id, function(res) {
|
|
this.m = res.data;
|
|
this.m = res.data;
|
|
if(res.data == null) {
|
|
if(res.data == null) {
|
|
@@ -162,6 +204,9 @@
|
|
}
|
|
}
|
|
}.bind(this))
|
|
}.bind(this))
|
|
}
|
|
}
|
|
|
|
+ this.getCustomerList();
|
|
|
|
+ this.getCardList();
|
|
|
|
+ this.getDriverList();
|
|
}
|
|
}
|
|
})
|
|
})
|
|
|
|
|