This commit is contained in:
cun-nan 2024-10-25 14:56:56 +08:00
parent bd5bba3198
commit 3937a4d0f2
8 changed files with 808 additions and 740 deletions

View File

@ -1,38 +1,54 @@
<template>
<div class="app-container">
<div class="card-change" >
<div class="card-change">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="" prop="tankName">
<el-form-item label="" prop="gunName">
<el-input
v-model="queryParams.tankName"
v-model="queryParams.gunName"
placeholder="油枪名称"
clearable
style="width: 240px;"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<!-- <el-form-item label="" prop="tankName">-->
<!-- <el-input-->
<!-- v-model="queryParams.tankName"-->
<!-- placeholder="油品油号"-->
<!-- clearable-->
<!-- style="width: 240px;"-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="" prop="numberId">
<el-select v-model="queryParams.numberId" placeholder="请选择油品油号" >
<el-option
v-for="option in selectOilTypeByPrice"
:key="option.numberId"
:label="option.oilType +' '+option.oilName"
:value="option.numberId"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<el-date-picker
v-model="beginTime"
style="width: 160px"
type="date"
placeholder="开始日期">
</el-date-picker>
<el-date-picker
v-model="endTime"
style="width: 160px"
type="date"
placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item style="float: right;margin-right: 0px ">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button
type="primary"
icon="el-icon-plus"
@click="gunAdd()"
v-hasPermi="['oilConfig:oilGun:list:add']"
>新增油枪</el-button>
>新增油枪
</el-button>
</el-form-item>
</el-form>
<div>
<el-table ref="tables"
v-loading="loading"
:data="gunList"
@ -40,37 +56,38 @@
:default-sort="defaultSort">
<el-table-column align="center" type="index" label="序号"></el-table-column>
<el-table-column label="油枪名称" align="center" prop="gunName"/>
<el-table-column label="油罐名称" align="center" prop="tankName"/>
<el-table-column label="所属油罐" align="center" prop="tankName"/>
<el-table-column label="油品-油号" align="center" prop="oilNumber"></el-table-column>
<el-table-column label="关联员工" align="center" prop="tankName">
<template slot-scope="scope">
{{jsonChange(scope.row.staffList)}}
{{ jsonChange(scope.row.staffList) }}
</template>
</el-table-column>
<el-table-column label="设备ID" align="center" prop="deviceName"/>
<el-table-column label="设备枪号" align="center" prop="oilMachineGunNumber"/>
<el-table-column label="状态" align="center" prop="status"/>
<el-table-column label="操作人" align="center" prop="createBy"/>
<el-table-column label="操作人" align="center" prop="realName"/>
<el-table-column label="操作时间" align="center" prop="createTime"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="gunEdit(scope.row)"
v-hasPermi="['oilConfig:oilGun:list:update']"
>修改</el-button>
>修改
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-copy-document"
v-hasPermi="['oilConfig:oilGun:list:del']"
@click="delGun(scope.row)"
>删除</el-button>
>删除
</el-button>
</template>
</el-table-column>
</el-table>
</div>
<pagination
v-show="total>0"
:total="total"
@ -89,7 +106,8 @@
<el-form-item label="油枪名称" prop="gunName">
<el-input style="width: 300px" placeholder="请输入内容" v-model="gunForm.gunName" class="input-with-select">
<el-select style="width: 110px" v-model="gunForm.select" slot="append" placeholder="选择油枪" @change="chooseName">
<el-select style="width: 110px" v-model="gunForm.select" slot="append" placeholder="选择油枪"
@change="chooseName">
<el-option
v-for="option in 50"
:key="option"
@ -131,7 +149,6 @@
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="gunForm.status">
<el-radio
@ -156,7 +173,9 @@
</el-form-item>
<el-form-item label="设备枪号" prop="name">
<el-input style="width: 300px" v-model="gunForm.oilMachineGunNumber"></el-input>
<div style="font-size: 12px;color: #999999">请确保输入的集线器正确的枪号否则出现设备显示屏与一件加油页面显示数据不一致例如00010002···</div>
<div style="font-size: 12px;color: #999999">
请确保输入的集线器正确的枪号否则出现设备显示屏与一件加油页面显示数据不一致例如00010002···
</div>
</el-form-item>
<el-form-item>
<el-button @click="dialogVisible = false,getList()"> </el-button>
@ -164,10 +183,10 @@
</el-form-item>
</el-form>
<!-- <span slot="footer" class="dialog-footer">-->
<!--/* <el-button v-if="judgement" type="danger" @click="delGun()" style="float: left;">删除</el-button>*/-->
<!-- <span slot="footer" class="dialog-footer">-->
<!--/* <el-button v-if="judgement" type="danger" @click="delGun()" style="float: left;">删除</el-button>*/-->
<!-- </span>-->
<!-- </span>-->
</el-dialog>
</div>
</template>
@ -184,36 +203,38 @@ import {
import {cleanTankApi} from "@/api/oilConfig/oilTank";
import {queryStaffs} from "@/api/order/staff";
import {getListByPageApi} from "@/api/seeting/youqiji";
import {getOilNameListApi} from "@/api/oilPrice";
export default {
export default {
name: 'oilqiang',
dicts: ['zhzt'],
data(){
return{
queryParams:{
tankName: '',
page:1,
pageSize:10
data() {
return {
queryParams: {
page: 1,
pageSize: 10
},
total:'',
staffIds:[],
staffList:[],
youjiList:[],
beginTime: "",
endTime: "",
selectOilTypeByPrice:[],
total: '',
staffIds: [],
staffList: [],
youjiList: [],
//
// defaultSort: {prop: 'createTime', order: 'descending'},
defaultSort: '',
title:"",
title: "",
dialogVisible: false,
loading: false,
list:[
],
list: [],
//
judgement:false,
judgement: false,
tankList: [],
gunList: [],
c:'',
c: '',
gunForm: {
id: '',
gunName: '',
@ -235,7 +256,7 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
},
staffStatus: '全部员工',
statusOut:'',
statusOut: '',
ruleForm: {
name: '',
region: '',
@ -243,17 +264,17 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
date2: '',
delivery: false,
type: [],
select:'请选择',
select: '请选择',
resource: '',
desc: ''
},
rules: {
gunName: [
{ required: true, message: '请输入油枪名称', trigger: 'blur' },
{required: true, message: '请输入油枪名称', trigger: 'blur'},
],
tankId: [
{ required: true, message: '请选择所属油罐', trigger: 'change' }
{required: true, message: '请选择所属油罐', trigger: 'change'}
],
}
}
@ -264,6 +285,7 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
await this_.getList()
await this_.getStaffList()
await this_.getyouji()
await this_.getOilNameList()
},
watch: {
dialogVisible: function (newValue, oldValue) {
@ -272,35 +294,45 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
}
}
},
methods:{
methods: {
getOilNameList() {
var this_ = this
getOilNameListApi().then(response => {
var list = response.data
this_.selectOilTypeByPrice = list
});
},
handleIsopenSelect() {
this.$forceUpdate()
},
getList() {
this.gunList = []
// getGunApi().then(response => {
getGunListpageApi(this.queryParams).then(response => {
let dateRange = []
if (this.beginTime && this.endTime) {
dateRange.push(this.beginTime.toLocaleDateString())
dateRange.push(this.endTime.toLocaleDateString())
}
getGunListpageApi(this.addDateRange(this.queryParams, dateRange)).then(response => {
this.gunList = response.data.records;
this.total = response.data.total;
})
},
getStaffList(){
queryStaffs().then( response => {
getStaffList() {
queryStaffs().then(response => {
this.staffList = response.data;
})
},
getyouji(){
getyouji() {
let queryParams = {
page:1,
pageSize:100000
page: 1,
pageSize: 100000
}
getListByPageApi(queryParams).then(res=>{
getListByPageApi(queryParams).then(res => {
this.youjiList = res.data.records;
})
},
//
gunAdd(numberId){
gunAdd(numberId) {
let this_ = this;
this_.dialogVisible = true;
this_.judgement = false;
@ -356,9 +388,11 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
resetQuery() {
this.queryParams = {
tankName: '',
page:1,
pageSize:10
page: 1,
pageSize: 10
};
this.beginTime = ''
this.endTime = ''
this.getList();
},
submitForm() {
@ -391,19 +425,19 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
if (!this.gunForm.id) {
insertGunApi(this.gunForm).then(response => {
console.log("response",response)
console.log("response", response)
if (response.code == 200) {
this.$modal.msgSuccess("新增成功");
this.dialogVisible = false;
this.getList();
}else {
} else {
}
}).catch(reason => {
});
} else {
console.log("111111",this.gunForm)
console.log("111111", this.gunForm)
updateGunApi(this.gunForm).then(response => {
if (response.code == 200) {
this.$modal.msgSuccess("修改成功");
@ -425,7 +459,7 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
var this_ = this
this_.gunForm.gunName = this_.gunForm.select
},
handleClose(){
handleClose() {
this.dialogVisible = false;
},
@ -440,7 +474,7 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
});
},
cler() {
this.gunForm= {
this.gunForm = {
id: '',
gunName: '',
tankId: '',
@ -465,22 +499,23 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
let a = JSON.parse(data);
let b = a.map(res => res.realName).join(',');
return b
}else {
} else {
return '--'
}
},
}
}
}
</script>
<style scoped lang="scss">
.app-container{
.app-container {
height: 100%;
}
.bor-bai{
}
.bor-bai {
width: 100%;
border-radius: 10px ;
border-radius: 10px;
box-sizing: border-box;
padding: 20px;
background: #fff;
@ -488,50 +523,58 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
margin-bottom: 20px;
}
.title_{
}
.title_ {
font-weight: bold;
font-size: 18px;
color: #333333;
}
.wrap-box{
}
.wrap-box {
width: 100%;
display: flex;
flex-wrap: wrap;
}
.oil-box{
}
}
.oil-box {
.clearfix:before,
.clearfix:after {
}
.clearfix:before,
.clearfix:after {
display: table;
content: "";
}
.clearfix:after {
clear: both
}
}
.box-card {
.clearfix:after {
clear: both
}
.box-card {
width: 100%;
}
.conten-box{
}
.conten-box {
width: 100%;
border: 1px solid #ebeef5;
margin: 20px 0px;
}
.conten-top{
}
.conten-top {
border-bottom: 1px solid #ebeef5;
box-sizing: border-box;
padding: 18px 20px;
}
.conten-bottom{
}
.conten-bottom {
box-sizing: border-box;
padding: 20px 20px;
display: flex;
flex-wrap: wrap;
}
.cardbox{
}
.cardbox {
height: 87px;
width: 278px;
margin-right: 35px;
@ -541,26 +584,28 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
border-radius: 10px;
//width: 19%;
background-size:40% 70%;
background-size: 40% 70%;
background-color: #f9f9f9;
position: relative;
}
}
.boxborder {
.boxborder {
border-color: #FF9655;
border:1px solid;
}
.cardbox-rd{
border: 1px solid;
}
.cardbox-rd {
position: absolute;
right: 5px;
bottom: 0px;
width:50px;
width: 50px;
height: 50px;
}
.act-cardbox{
}
.act-cardbox {
margin-right: 35px;
height: 87px;
width: 278px;
@ -573,14 +618,13 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
border-radius: 10px;
//width: 19%;
//background: url(../../../assets/images/jybjj.png) center no-repeat;
background-size:40% 70%;
background-size: 40% 70%;
background-color: #fff9f5;
color: #FF9655 !important;
}
}
.cardboxb{
.cardboxb {
position: absolute;
/*width: 50px;*/
width: auto;
@ -593,14 +637,15 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
left: 0px;
bottom: 0px;
padding: 5px 10px;
background: linear-gradient( 312deg, #FF8646 0%, #FFA360 100%);
background: linear-gradient(312deg, #FF8646 0%, #FFA360 100%);
border-radius: 0px 10px 0px 10px;
}
}
.actcolor{
.actcolor {
color: #FF9655 !important;
}
.cardbox-top{
}
.cardbox-top {
display: flex;
align-items: center;
justify-content: space-between;
@ -610,8 +655,9 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
font-family: Source Han Sans CN;
//font-weight: 400;
}
.cardbox-title{
}
.cardbox-title {
width: 100%;
display: flex;
align-items: center;
@ -621,8 +667,9 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
//margin: 15px 0px;
}
.cardbox-gunName{
}
.cardbox-gunName {
font-family: YouSheBiaoTiHei, YouSheBiaoTiHei;
font-weight: 400;
font-size: 28px;
@ -631,26 +678,29 @@ import {getListByPageApi} from "@/api/seeting/youqiji";
//text-align: center;
//font-style: normal;
//text-transform: none;
}
.cardbox-bottom{
}
.cardbox-bottom {
display: flex;
align-items: center;
justify-content: flex-end;
width: 100%;
color: #5b5e62;
font-size: 14px;
}
.input-box{
}
.input-box {
display: flex;
align-items: center;
}
.box-top{
}
.box-top {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
}
}
</style>

View File

@ -1,7 +1,7 @@
<template>
<div class="app-container">
<!-- 搜索框-->
<div class="card-change" >
<!-- 搜索框-->
<div class="card-change">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="" prop="tankName">
<el-input
@ -13,7 +13,8 @@
/>
</el-form-item>
<el-form-item label="" prop="oilNumber">
<el-select v-model="queryParams.oilNumber" placeholder="请选择油品油号" style="width:300px" @change="chooseOilNumber()" :disabled="disableInput">
<el-select v-model="queryParams.oilNumber" placeholder="请选择油品油号" style="width:300px"
@change="chooseOilNumber()" :disabled="disableInput">
<el-option
v-for="option in selectOilTypeByPrice"
:key="option.numberId"
@ -43,16 +44,16 @@
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button
type="primary"
icon="el-icon-plus"
@click="tankAdd"
v-hasPermi="['oilConfig:oilTank:list:add']"
>新增油罐</el-button>
>新增油罐
</el-button>
</el-form-item>
</el-form>
<!-- </div>-->
<!-- 列表-->
<!-- </div>-->
<!-- 列表-->
<div style="height: 70vh;overflow: auto">
<el-table ref="tables"
v-loading="loading"
:data="tankList"
@ -60,18 +61,17 @@
:default-sort="defaultSort">
<el-table-column align="center" type="index" label="序号"></el-table-column>
<el-table-column label="油罐名称" align="center" prop="tankName"/>
<el-table-column label="油品-油号" align="center" prop="oilNumber" />
<!-- <el-table-column label="当前数据" align="center">-->
<el-table-column label="油品-油号" align="center" prop="oilNumber"/>
<el-table-column label="油罐容量" align="center" prop="tankVolume"/>
<el-table-column label="下限预警" align="center" prop="lowerWarning"/>
<el-table-column label="油品密度" align="center" prop="oilDensity"/>
<!-- </el-table-column>-->
<el-table-column label="存油数量" align="center" prop="storedQuantity"/>
<el-table-column label="存油总价(元)" align="center" prop="totalPrice"/>
<el-table-column label="成本价(元/升)" align="center" prop="discountedPrice"/>
<el-table-column label="油罐状态" align="center" prop="discountedPrice">
<template slot-scope="scope">
<el-switch
disabled
v-model="scope.row.status"
active-value="启用"
inactive-value="禁用"
@ -82,7 +82,7 @@
</template>
</el-table-column>
<el-table-column label="操作人" align="center" prop="createName"/>
<el-table-column label="操作人" align="center" prop="realName"/>
<el-table-column label="操作时间" align="center" prop="updateTime" width="200">
<template slot-scope="scope">
@ -94,23 +94,22 @@
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['oilConfig:oilTank:list:update']"
>修改</el-button>
>修改
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-copy-document"
@click="handleClean(scope.row)"
v-hasPermi="['oilConfig:oilTank:list:del']"
>初始化</el-button>
<!-- v-hasPermi="['']"-->
>初始化
</el-button>
</template>
</el-table-column>
</el-table>
</div>
<pagination
v-show="total>0"
:total="total"
@ -120,14 +119,15 @@
/>
</div>
<!-- 新增/修改-->
<!-- 新增/修改-->
<el-dialog :title="title" :visible.sync="open" width="30%" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="tankForm" :rules="rules" label-width="120px">
<el-form ref="form" :model="tankForm" :rules="rules" label-width="80px">
<el-form-item label="油罐名称" prop="tankName">
<el-input v-model="tankForm.tankName" placeholder="请输入油罐名称" style="width:300px" />
<el-input v-model="tankForm.tankName" placeholder="请输入油罐名称" />
</el-form-item>
<el-form-item label="油品油号" prop="oilNumber">
<el-select v-model="tankForm.numberId" placeholder="请选择油品油号" style="width:300px" @change="chooseOilNumber()" :disabled="disableInput">
<el-select v-model="tankForm.numberId" placeholder="请选择油品油号" style="width:100%"
@change="chooseOilNumber()" :disabled="disableInput">
<el-option
v-for="option in selectOilTypeByPrice"
:key="option.numberId"
@ -137,24 +137,28 @@
</el-select>
</el-form-item>
<el-form-item label="油罐体积" prop="tankVolume">
<el-input v-model="tankForm.tankVolume" placeholder="请输入油罐体积" maxlength="30" @change="changeNumber" style="width:300px" :disabled="disableInput">
<template slot="append">{{tankForm.unit}}</template>
<el-input v-model="tankForm.tankVolume" placeholder="请输入油罐体积" maxlength="30" @change="changeNumber"
:disabled="disableInput">
<template slot="append">{{ tankForm.unit }}</template>
</el-input>
</el-form-item>
<el-form-item label="下限预警" prop="lowerWarning">
<el-input v-model="tankForm.lowerWarning" placeholder="小于预警值将进行提示" style="width:300px" maxlength="30">
<template slot="append">{{tankForm.unit}}</template>
<el-input v-model="tankForm.lowerWarning" placeholder="小于预警值将进行提示"
maxlength="30">
<template slot="append">{{ tankForm.unit }}</template>
</el-input>
</el-form-item>
<template v-if="title == '修改油罐'">
<el-form-item label="油品密度" prop="oilDensity">
<el-input v-model="tankForm.oilDensity" placeholder="请输入油品密度" style="width:300px" :disabled="true" maxlength="30" @input="getSecondName()">
<el-input v-model="tankForm.oilDensity" placeholder="请输入油品密度" :disabled="true"
maxlength="30" @input="getSecondName()">
<template slot="append">g/ml</template>
</el-input>
</el-form-item>
<el-form-item label="存油数量" prop="storedQuantity">
<el-input v-model="tankForm.storedQuantity" placeholder="请输入存油数量" style="width:300px" maxlength="30" :disabled="true" pattern="^\d+(\.\d+)?$" @change="changeNumber" @input="changePrice() " >
<template slot="append">{{tankForm.unit}}</template>
<el-input v-model="tankForm.storedQuantity" placeholder="请输入存油数量" maxlength="30"
:disabled="true" pattern="^\d+(\.\d+)?$" @change="changeNumber" @input="changePrice() ">
<template slot="append">{{ tankForm.unit }}</template>
</el-input>
</el-form-item>
<!-- <el-form-item label="存油总价" prop="totalPrice" >-->
@ -163,8 +167,9 @@
<!-- </el-input>-->
<!-- </el-form-item>-->
<el-form-item label="折合单价" prop="discountedPrice">
<el-input v-model="tankForm.discountedPrice" placeholder="请输入折合单价" maxlength="30" style="width:300px" :disabled="true">
<template slot="append">{{tankForm.unit?"/"+tankForm.unit:''}}</template>
<el-input v-model="tankForm.discountedPrice" placeholder="请输入折合单价" maxlength="30"
:disabled="true">
<template slot="append">{{ tankForm.unit ? "/" + tankForm.unit : '' }}</template>
</el-input>
</el-form-item>
</template>
@ -180,19 +185,19 @@
/>
</el-radio-group>
</el-form-item>
<!-- <el-form-item label="库存统计" prop="inventoryStatistics">-->
<!-- <el-radio-group v-model="tankForm.inventoryStatistics">-->
<!-- <el-radio-->
<!-- v-for="dict in dict.type.zhzt"-->
<!-- :key="dict.value"-->
<!-- :label="dict.label"-->
<!-- :value="dict.value"-->
<!-- @change="handleIsopenSelect"-->
<!-- />-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="库存统计" prop="inventoryStatistics">-->
<!-- <el-radio-group v-model="tankForm.inventoryStatistics">-->
<!-- <el-radio-->
<!-- v-for="dict in dict.type.zhzt"-->
<!-- :key="dict.value"-->
<!-- :label="dict.label"-->
<!-- :value="dict.value"-->
<!-- @change="handleIsopenSelect"-->
<!-- />-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
<el-form-item label="备注信息">
<el-input type="textarea" style="width:300px" v-model="tankForm.remarks"></el-input>
<el-input type="textarea" v-model="tankForm.remarks"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -207,16 +212,15 @@
<script>
import {cleanTankApi, exportExcelTankApi, getTankApi, insertTankApi, updateTankApi} from "@/api/oilConfig/oilTank";
import {getName,parseTime} from "../../../utils/fuint";
import {getName, parseTime} from "../../../utils/fuint";
import {addStaff, updateStaff} from "@/api/staff/staff";
import {getOilNameListApi} from "@/api/oilPrice";
import { BigNumber } from 'bignumber.js';
import {BigNumber} from 'bignumber.js';
import {changeAccountStatus} from "@/api/system/account";
export default {
name:'oilTank',
name: 'oilTank',
dicts: ['zhzt'],
data() {
@ -226,18 +230,18 @@ export default {
callback(new Error('请输入内容'));
} else if (!reg.test(value)) {
callback(new Error('请输入数字'));
} else if (value.length>8) {
} else if (value.length > 8) {
callback(new Error('数字长度不得超过8位'));
}else {
} else {
callback();
}
};
return {
//
title:'',
title: '',
tankList: [], //
statusList: ['启用','禁用'],
statusList: ['启用', '禁用'],
tankForm: {
id: null,
tankName: '',
@ -255,7 +259,7 @@ export default {
numberId: null,
createTime: null,
updateTime: null,
unit:''
unit: ''
},
disableInput: false, //
//
@ -265,8 +269,8 @@ export default {
//
queryParams: {
tankName: '',
page:null,
pageSize:null
page: null,
pageSize: null
},
beginTime: "",
endTime: "",
@ -282,40 +286,40 @@ export default {
//
rules: {
tankName: [
{ required: true, message: "油罐名称不能为空", trigger: "blur" },
{required: true, message: "油罐名称不能为空", trigger: "blur"},
],
oilNumber: [
{ required: true, message: '请选择油品类型', trigger: 'change' }
{required: true, message: '请选择油品类型', trigger: 'change'}
],
tankVolume: [
{ required: true, validator:valiNumberPass, trigger: "blur" }
{required: true, validator: valiNumberPass, trigger: "blur"}
],
lowerWarning: [
{ required: true, validator:valiNumberPass, trigger: "blur" }
{required: true, validator: valiNumberPass, trigger: "blur"}
],
oilDensity: [
{ required: true, validator:valiNumberPass, trigger: "blur" }
{required: true, validator: valiNumberPass, trigger: "blur"}
],
storedQuantity: [
{ required: true, validator:valiNumberPass, trigger: "blur" }
{required: true, validator: valiNumberPass, trigger: "blur"}
],
totalPrice: [
{ required: true, validator:valiNumberPass, trigger: "blur" }
{required: true, validator: valiNumberPass, trigger: "blur"}
],
discountedPrice: [
{ required: true, validator:valiNumberPass, trigger: "blur" }
{required: true, validator: valiNumberPass, trigger: "blur"}
],
status: [
{ required: true, message: "请选择对应状态", trigger: "blur" }
{required: true, message: "请选择对应状态", trigger: "blur"}
],
inventoryStatistics: [
{ required: true, message: "请选择对应状态", trigger: "blur" }
{required: true, message: "请选择对应状态", trigger: "blur"}
]
}
}
},
watch: {
open(newValue){
open(newValue) {
if (!newValue) {
let this_ = this
this_.getList()
@ -347,7 +351,7 @@ export default {
//
submitForm: function() {
submitForm: function () {
this.$refs["form"].validate(valid => {
if (valid) {
@ -407,8 +411,6 @@ export default {
});
},
//
cancel() {
@ -423,8 +425,8 @@ export default {
resetQuery() {
this.queryParams = {
tankName: '',
page:null,
pageSize:null
page: null,
pageSize: null
};
this.beginTime = ''
this.endTime = ''
@ -443,8 +445,8 @@ export default {
this_.title = "新增油罐";
this.getOilNameList() //
},
recharge () {
this.tankForm= {
recharge() {
this.tankForm = {
id: null,
tankName: '',
oilNumber: '',
@ -461,26 +463,23 @@ export default {
numberId: null,
createTime: null,
updateTime: null,
unit:''
unit: ''
}
},
//
chooseOilNumber() {
let this_ = this;
this_.selectOilTypeByPrice.forEach(oilType=>{
this_.selectOilTypeByPrice.forEach(oilType => {
if (oilType.numberId == this_.tankForm.numberId) {
this.tankForm.oilDensity = oilType.oilDensity
this_.tankForm.oilNumber = oilType.oilType +" "+oilType.oilName
this_.tankForm.oilNumber = oilType.oilType + " " + oilType.oilName
this_.tankForm.unit = oilType.unit
}
})
},
changePrice() {
var this_=this
var this_ = this
if (this_.tankForm.totalPrice != null && this_.tankForm.storedQuantity != null) {
@ -499,7 +498,7 @@ export default {
}
},
changeNumber() {
var this_=this
var this_ = this
// console.log("this_.tankForm.tankVolume",this_.tankForm.tankVolume)
@ -514,7 +513,7 @@ export default {
if (this_.tankForm.totalPrice != null) {
if (!this.checkNumeric(this_.tankForm.totalPrice)) {
this_.tankForm.totalPrice = 0
}else {
} else {
this_.tankForm.totalPrice = parseFloat(this_.tankForm.totalPrice).toFixed(2);
}
@ -522,7 +521,7 @@ export default {
if (this_.tankForm.storedQuantity != null) {
if (!this.checkNumeric(this_.tankForm.storedQuantity)) {
this_.tankForm.storedQuantity = 0
}else {
} else {
this_.tankForm.storedQuantity = parseFloat(this_.tankForm.storedQuantity).toFixed(2);
}
@ -540,13 +539,13 @@ export default {
// },
getOilNameList() {
var this_=this
getOilNameListApi().then( response => {
var this_ = this
getOilNameListApi().then(response => {
var list = response.data
this_.selectOilTypeByPrice = list
});
},
getSecondName(){
getSecondName() {
this.$forceUpdate();
}
},
@ -555,11 +554,12 @@ export default {
</script>
<style>
.app-container{
.app-container {
width: 100%;
height: 100vh;
background: #f6f8f9;
}
.el-form--inline .el-form-item {
margin-right: 44px;
}

View File

@ -60,6 +60,9 @@ public class OilGun extends BaseEntity {
private String staffList;
private String deviceId;
private String deviceName;
// 创建人
@TableField(exist = false)
private String realName;
}

View File

@ -1,6 +1,7 @@
package com.fuint.business.petrolStationManagement.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fuint.repository.model.base.BaseEntity;
import lombok.Data;
@ -78,6 +79,11 @@ public class OilTank extends BaseEntity {
* 关联油号表ID
*/
private Integer numberId;
/**
* 创建人
*/
@TableField(exist = false)
private String realName;

View File

@ -15,6 +15,7 @@
<result property="numberId" column="number_id" jdbcType="INTEGER"/>
<result property="tankName" column="tank_name" jdbcType="VARCHAR"/>
<result property="oilNumber" column="oil_number" jdbcType="VARCHAR"/>
<result property="realName" column="real_name" jdbcType="VARCHAR"/>
<result property="oilMachineGunNumber" column="oil_machine_gun_number" jdbcType="VARCHAR"/>
</resultMap>
@ -53,16 +54,26 @@
<select id="queryAllByLimit2" resultMap="OilGunMap">
select
og.id, og.gun_name, og.tank_id, og.status, og.store_id, og.create_time,og.update_time, og.create_by,
og.update_by, ot.oil_number, ot.number_id,
ot.tank_name,og.staff_status,og.staff_list,og.device_id,og.device_name
og.update_by,og.oil_machine_gun_number, ot.oil_number, ot.number_id,
ot.tank_name,og.staff_status,og.staff_list,og.device_id,og.device_name,ms.real_name
from oil_gun og
left join oil_tank ot on og.tank_id = ot.id
LEFT JOIN mt_staff ms ON og.create_by = ms.id
<where>
og.store_id = #{oilGun.storeId} and og.status = '启用'
<if test="oilGun.numberId != null">
and ot.number_id = #{oilGun.numberId}
</if>
<if test="oilGun.gunName != null">
and og.gun_name LIKE CONCAT('%', #{oilGun.gunName}, '%')
</if>
<if test="oilGun.params.beginTime != null and oilGun.params.beginTime != ''"><!-- 开始时间检索 -->
and date_format(og.create_time,'%y%m%d') &gt;= date_format(#{oilGun.params.beginTime},'%y%m%d')
</if>
<if test="oilGun.params.endTime != null and oilGun.params.endTime != ''"><!-- 结束时间检索 -->
and date_format(og.create_time,'%y%m%d') &lt;= date_format(#{oilGun.params.endTime},'%y%m%d')
</if>
</where>
</select>
@ -198,9 +209,9 @@
values (#{gunName}, #{tankId}, #{status}, #{storeId},
#{createTime}, #{createTime}, #{createBy},
#{updateBy}, #{numberId}, #{oilMachineGunNumber},
#{staffStatus}
#{staffList}
#{deviceId}
#{staffStatus},
#{staffList},
#{deviceId},
#{deviceName})
</insert>

View File

@ -34,72 +34,70 @@
<!--查询指定行数据-->
<select id="queryAllByLimit" resultMap="OilTankMap">
select
id, tank_name, oil_number, tank_volume, lower_warning, oil_density, stored_quantity, total_price, discounted_price, status, remarks, store_id, number_id, create_time, update_time, create_by, update_by, inventory_statistics, unit
from oil_tank
SELECT ot.*,ms.real_name FROM oil_tank ot LEFT JOIN mt_staff ms ON ot.create_by = ms.id
<where>
<if test="oilTank.id != null">
and id = #{oilTank.id}
and ot.id = #{oilTank.id}
</if>
<if test="oilTank.tankName != null and oilTank.tankName != ''">
and tank_name LIKE CONCAT('%', #{oilTank.tankName}, '%')
and ot.tank_name LIKE CONCAT('%', #{oilTank.tankName}, '%')
</if>
<if test="oilTank.oilNumber != null and oilTank.oilNumber != ''">
and oil_number = #{oilTank.oilNumber}
and ot.oil_number = #{oilTank.oilNumber}
</if>
<if test="oilTank.tankVolume != null">
and tank_volume = #{oilTank.tankVolume}
and ot.tank_volume = #{oilTank.tankVolume}
</if>
<if test="oilTank.lowerWarning != null">
and lower_warning = #{oilTank.lowerWarning}
and ot.lower_warning = #{oilTank.lowerWarning}
</if>
<if test="oilTank.oilDensity != null">
and oil_density = #{oilTank.oilDensity}
and ot.oil_density = #{oilTank.oilDensity}
</if>
<if test="oilTank.storedQuantity != null">
and stored_quantity = #{oilTank.storedQuantity}
and ot.stored_quantity = #{oilTank.storedQuantity}
</if>
<if test="oilTank.totalPrice != null">
and total_price = #{oilTank.otalPrice}
and ot.total_price = #{oilTank.otalPrice}
</if>
<if test="oilTank.discountedPrice != null">
and discounted_price = #{oilTank.discountedPrice}
and ot.discounted_price = #{oilTank.discountedPrice}
</if>
<if test="oilTank.status != null and oilTank.status != ''">
and status = #{oilTank.status}
and ot.status = #{oilTank.status}
</if>
<if test="oilTank.remarks != null and oilTank.remarks != ''">
and remarks = #{oilTank.remarks}
and ot.remarks = #{oilTank.remarks}
</if>
<if test="oilTank.storeId != null">
and store_id = #{oilTank.storeId}
and ot.store_id = #{oilTank.storeId}
</if>
<if test="oilTank.numberId != null">
and number_id = #{oilTank.numberId}
and ot.number_id = #{oilTank.numberId}
</if>
<if test="oilTank.createTime != null">
and create_time = #{oilTank.createTime}
and ot.create_time = #{oilTank.createTime}
</if>
<if test="oilTank.updateTime != null">
and update_time = #{oilTank.updateTime}
and ot.update_time = #{oilTank.updateTime}
</if>
<if test="oilTank.createBy != null">
and create_by = #{oilTank.createBy}
and ot.create_by = #{oilTank.createBy}
</if>
<if test="oilTank.updateBy != null">
and update_by = #{oilTank.updateBy}
and ot.update_by = #{oilTank.updateBy}
</if>
<if test="oilTank.inventoryStatistics != null and oilTank.inventoryStatistics != ''">
and inventory_statistics = #{oilTank.inventoryStatistics}
and ot.inventory_statistics = #{oilTank.inventoryStatistics}
</if>
<if test="oilTank.params.beginTime != null and oilTank.params.beginTime != ''"><!-- 开始时间检索 -->
and date_format(update_time,'%y%m%d') &gt;= date_format(#{oilTank.params.beginTime},'%y%m%d')
and date_format(ot.update_time,'%y%m%d') &gt;= date_format(#{oilTank.params.beginTime},'%y%m%d')
</if>
<if test="oilTank.params.endTime != null and oilTank.params.endTime != ''"><!-- 结束时间检索 -->
and date_format(update_time,'%y%m%d') &lt;= date_format(#{oilTank.params.endTime},'%y%m%d')
and date_format(ot.update_time,'%y%m%d') &lt;= date_format(#{oilTank.params.endTime},'%y%m%d')
</if>
</where>
ORDER BY update_time DESC
ORDER BY ot.update_time DESC
</select>
<select id="selectList" resultMap="OilTankMap">

View File

@ -141,7 +141,7 @@ public class OilGunServiceImpl implements OilGunService {
if (i > 0) {
return false;
}
oilGun.setCreateBy(accountInfo.getId().toString());
// oilGun.setCreateBy(accountInfo.getId().toString());
return oilGunDao.insert(oilGun) > 0;
}

View File

@ -9,7 +9,7 @@ import java.util.List;
public class OilGunVO extends OilGun {
private List<OilGun> oilGunList;
private OilGun oilGun;
public Integer numberId; //id主键)
private Integer numberId; //id主键)
private String oilType; // 油品类型
private String oilName; //油品名称
private Double oilPrice; //油品单价