123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339 |
- <!DOCTYPE html>
- <html>
- <head>
- <title>车辆-添加/修改</title>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
- <!-- 所有的 css js 资源 -->
- <link rel="stylesheet" href="https://unpkg.com/element-ui@2.13.0/lib/theme-chalk/index.css">
- <link rel="stylesheet" href="../../static/sa.css">
- <script src="../../static/kj/vue.min.js"></script>
- <script src="../../static/kj/element-ui/index.js"></script>
- <script src="../../static/kj/httpVueLoader.js"></script>
- <script src="../../static/kj/jquery.min.js"></script>
- <script src="../../static/kj/layer/layer.js"></script>
- <script src="../../static/sa.js"></script>
- <script src="../../static/kj/upload-util.js"></script>
- <script src="../../static/kj/validator.js"></script>
- <style type="text/css">
- .c-panel .el-form .c-label{width: 9em !important;}
- .c-panel .el-form .el-input, .c-panel .el-form .el-textarea__inner{width: 250px;}
- table {
- font-family: arial, sans-serif;
- border-collapse: collapse;
- width: 100%;
- margin-top: 22px;
- margin-bottom: 22px;
- margin-left: auto;
- margin-right: auto;
- }
- th {
- border: 1px solid darkgray;
- text-align: left;
- height: 22px;
- padding: 8px;
- background-color: #dddddd;
- }
- td {
- border: 1px solid darkgray;
- text-align: left;
- padding: 8px;
- }
- .image-box{ display: flex;}
-
- </style>
- </head>
- <body>
- <div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
- <!-- ------- 内容部分 ------- -->
- <div class="s-body">
- <div class="c-panel">
- <div class="c-title" v-if="id == 0">数据添加</div>
- <div class="c-title" v-else>数据修改</div>
- <el-form v-if="m">
- <h3>车辆基本信息</h3>
- <table>
- <tr>
- <th><label style="color: red">*</label>车牌号</th>
- <td>
- <el-input size="mini" v-model="m.vehiclePlate"></el-input>
- </td>
- <th>颜色</th>
- <td>
- <el-input size="mini" v-model="m.color"></el-input>
- </td>
- </tr>
- <tr>
- <th><label style="color: red">*</label>车架号</th>
- <td>
- <el-input size="mini" v-model="m.vin"></el-input>
- </td>
- <th><label style="color: red">*</label>发动机号</th>
- <td>
- <el-input size="mini" v-model="m.engineNo"></el-input>
- </td>
- </tr>
- <tr>
- <th><label style="color: red">*</label>品牌型号</th>
- <td>
- <el-input size="mini" v-model="m.vehicleModel"></el-input>
- </td>
- <th><label style="color: red">*</label>车辆类型</th>
- <td>
- <el-select v-model="m.vehicleType" placeholder="请选择" filterable size="mini">
- <el-option v-for="(item,index) in catList" :key="item.id" :label="item.dictName" :value="item.id"> </el-option>
- </el-select>
- </td>
- </tr>
- <tr>
- <th><label style="color: red">*</label>轴数</th>
- <td>
- <el-input size="mini" v-model="m.axle"></el-input>
- </td>
- <th><label style="color: red">*</label>载重(t)</th>
- <td>
- <el-input size="mini" v-model="m.vehicleLoad"></el-input>
- </td>
- </tr>
- <tr>
- <th><label style="color: red">*</label>尺寸(m)</th>
- <td>
- <el-input size="mini" v-model="m.vehicleSize"></el-input>
- </td>
- <th><label style="color: red">*</label>容积</th>
- <td>
- <el-input size="mini" v-model="m.volume"></el-input>
- </td>
- </tr>
- <tr>
- <th><label style="color: red">*</label>年检有效期至</th>
- <td colspan="3">
- <el-date-picker
- v-model="m.validityPeriod"
- type="date"
- format="yyyy-MM-dd"
- value-format="yyyy-MM-dd"
- placeholder="请选择日期" >
- </el-date-picker>
- </td>
- </tr>
- <tr>
- <th><label style="color: red">*</label>车辆正面照</th>
- <td>
- <sa-item type="img-list" v-model="m.carImg"></sa-item>
- </td>
- <th><label style="color: red">*</label>行驶证照</th>
- <td>
- <sa-item type="img-list" v-model="m.licenseImg"></sa-item>
- </td>
- </tr>
- <tr>
- <th><label style="color: red">*</label>年检证照</th>
- <td colspan="3">
- <sa-item type="img-list" v-model="m.inspectionImg"></sa-item>
- </td>
- </tr>
- </table>
- <h3>车辆所有人信息</h3>
- <table>
- <tr>
- <th><label style="color: red">*</label>所属</th>
- <td>
- <sa-item type="enum" v-model="m.ownership" :jv="{'self': '自有', 'affiliated': '挂靠'}" jtype="3"></sa-item>
- </td>
- <th><label style="color: red">*</label><span v-if="m.ownership=='affiliated'">公司名称</span><span v-else>车主姓名</span></th>
- <td>
- <el-input size="mini" v-model="m.owner"></el-input>
- </td>
- </tr>
- <tr v-if="m.ownership=='affiliated'">
- <th><label style="color: red">*</label>公司法人</th>
- <td>
- <el-input size="mini" v-model="m.legalPerson"></el-input>
- </td>
- <th><label style="color: red">*</label>联系电话</th>
- <td>
- <el-input size="mini" v-model="m.ownerPhone"></el-input>
- </td>
- </tr>
- <tr v-if="m.ownership=='affiliated'">
- <th><label style="color: red">*</label>统一社会征信码</th>
- <td>
- <el-input size="mini" v-model="m.ownerCert"></el-input>
- </td>
- <th><label style="color: red">*</label>营业执照</th>
- <td>
- <sa-item type="img-list" v-model="m.ownerLicense"></sa-item>
- </td>
- </tr>
- <tr v-if="m.ownership=='self'">
- <th><label style="color: red">*</label>联系电话</th>
- <td>
- <el-input size="mini" v-model="m.ownerPhone"></el-input>
- </td>
- <th><label style="color: red">*</label>身份证号</th>
- <td>
- <el-input size="mini" v-model="m.ownerCert"></el-input>
- </td>
- </tr>
- </table>
- <!-- <sa-item type="text" name="类型父id" v-model="m.parentId" br></sa-item> -->
-
- <!-- <sa-item type="enum" name="审核状态" v-model="m.auditStatus" :jv="{0: '待审核,1'}" jtype="3" br></sa-item>
- <sa-item type="text" name="审核人" v-model="m.auditBy" br></sa-item>
- <sa-item type="text" name="审核不通过原因" v-model="m.nopassReason" br></sa-item>
- <sa-item type="text" name="审核时间" v-model="m.auditTime" br></sa-item> -->
- <sa-item name="" class="s-ok" br>
- <el-button type="primary" icon="el-icon-plus" @click="ok()">保存</el-button>
- </sa-item>
- </el-form>
- </div>
- </div>
- <!-- ------- 底部按钮 ------- -->
- <div class="s-foot">
- <el-button type="primary" @click="ok()">确定</el-button>
- <el-button @click="sa.closeCurrIframe()">取消</el-button>
- </div>
- </div>
- <script>
- var app = new Vue({
- components: {
- "sa-item": httpVueLoader('../../sa-frame/com/sa-item.vue')
- },
- el: '.vue-box',
- data: {
- id: sa.p('id', 0), // 获取超链接中的id参数(0=添加,非0=修改)
- m: null, // 实体对象
- catList: [], //车型
- },
- methods: {
- // 创建一个 默认Model
- createModel: function() {
- return {
- vehiclePlate: '', // 车牌
- owner: '', // 所有人
- vehicleType: '', // 车辆类型
- // parentId: '', // 类型父id
- axle: '', // 轴数
- vehicleSize: '', // 车辆尺寸
- vehicleModel: '', // 车辆品牌型号
- vehicleLoad: '', // 核定载质量
- vehicleWeight: '', // 车辆自重
- volume: '', // 容积
- // auditStatus: '', // 审核状态(0=待审核,1=已通过,2=不通过)
- // auditBy: '', // 审核人
- // nopassReason: '', // 审核不通过原因
- // auditTime: '', // 审核时间
- }
- },
- // 车型列表
- getCatList() {
- sa.ajax('/transport-server/TbDictInfo/getList', {
- code:'vehicle_type',
- pageSize: 100,
- pageNo: 1
- }, function(resp) {
- let list=resp.data;
- this.catList = list;
- }.bind(this));
- },
- // 提交数据
- ok: function(){
- // 表单校验
- let m = this.m;
- sa.checkNull(m.vehiclePlate, '请输入 [车牌号]');
- if(!validatePlate(m.vehiclePlate)){
- sa.errorMsg('请输入正确的车牌号');
- return;
- }
- sa.checkNull(m.vin, '请输入 [车架号]');
- sa.checkNull(m.engineNo, '请输入 [发动机号]');
- sa.checkNull(m.vehicleModel, '请输入 [品牌型号]');
- sa.checkNull(m.vehicleType, '请选择 [车辆类型]');
- sa.checkInt(m.axle, '请输入正确的 [轴数],轴数必须是正整数');
- sa.checkPositive(m.vehicleLoad, '请输入 [载重],载重必须是正数');
- sa.checkPositive(m.vehicleSize, '请输入正确的 [尺寸],尺寸必须是正数');
- sa.checkPositive(m.volume, '请输入正确的 [容积],容积必须是正数');
- sa.checkNull(m.validityPeriod, '请填写 [年检有效期]');
- sa.checkNull(m.carImg, '请上传 [车辆正面照]');
- sa.checkNull(m.licenseImg, '请上传 [行驶证照]');
- sa.checkNull(m.inspectionImg, '请上传 [年检证照]');
- sa.checkNull(m.ownership, '请选择车辆所属[自有还是挂靠]');
- sa.checkNull(m.ownerPhone, '请输入 [联系电话]');
- if(validatePhone(m.ownerPhone)==false){
- sa.errorMsg('联系电话格式不正确'); return;
- }
- if(m.ownership=='self'){
- sa.checkNull(m.owner, '请输入 [车主姓名]');
- sa.checkNull(m.ownerCert, '请输入 [身份证号]');
- if(validateIDCard(m.ownerCert)==false){
- sa.errorMsg('身份证号格式不正确'); return;
- }
- }else {
- sa.checkNull(m.owner, '请输入 [公司名称]');
- sa.checkNull(m.legalPerson, '请输入 [公司法人]');
- sa.checkNull(m.ownerCert, '请输入 [统一社会征信码]');
- sa.checkNull(m.ownerLicense, '请上传 [营业执照]');
- }
- if(this.id <= 0) { // 添加
- sa.ajax('/transport-server/TbVehicle/add', m, function(res){
- sa.alert('增加成功', this.clean);
- }.bind(this));
- } else { // 修改
- sa.confirm('信息修改后需要重新审核,您确定要修改吗?', function () {
- sa.ajax('/transport-server/TbVehicle/update', m, function(res){
- sa.alert('信息已修改,待审核', this.clean);
- }.bind(this));
- }.bind(this));
- }
- },
- // 添加/修改 完成后的动作
- clean: function() {
- if(this.id == 0) {
- this.m = this.createModel();
- } else {
- parent.app.f5(); // 刷新父页面列表
- sa.closeCurrIframe(); // 关闭本页
- }
- }
- },
- mounted: function(){
- this.getCatList();
- // 初始化数据
- if(this.id <= 0) {
- this.m = this.createModel();
- } else {
- sa.ajax('/transport-server/TbVehicle/getById?id=' + this.id, function(res) {
- this.m = res.data;
- this.m.vehicleType = res.data.vehicleType+'';
- if(res.data == null) {
- sa.alert('未能查找到 id=' + this.id + " 详细数据");
- }
- }.bind(this))
- }
- }
- })
- </script>
- </body>
- </html>
|