Merge remote-tracking branch 'origin/master'
| | |
| | | const height12 = document.getElementsByClassName('platgroup_tabs') && document.getElementsByClassName('platgroup_tabs')[0]?20+ document.getElementsByClassName('platgroup_tabs')[0].clientHeight:0 |
| | | // this.tableHeightNew = height-height4-height3-height2-height1-height5-height6-height7-height8-height9 -height10// 打印高度 |
| | | this.tableHeightNew = height-height3 -height5-height6-height2-height7-height4-height9-height10 -height11 -height12 |
| | | console.log('self',height,height3 ,height5,(height6==0?20:height6),height2,height7,height4,height9,height10 ,height11 ,height12) |
| | | console.log('self',this.tableHeightNew) |
| | | // console.log('self',height,height3 ,height5,(height6==0?20:height6),height2,height7,height4,height9,height10 ,height11 ,height12) |
| | | // console.log('self',this.tableHeightNew) |
| | | }) |
| | | } |
| | | } |
| | |
| | | :clearable="(item.clearable !== null && item.clearable !== undefined && item.clearable !== '') ? item.clearable : true" |
| | | :placeholder="item.label" :picker-options="item.pickerOptions || {}" @change="changeForm(item.filed)" /> |
| | | </el-form-item> |
| | | <el-form-item label="起止时间" v-if="item.type === 'datetime' && (showZk || index < listLength)" :key="item.filed1"> |
| | | <el-form-item :label="item.label ? item.label : '起止时间'" |
| | | v-if="item.type === 'datetime' && (showZk || index < listLength)" :key="item.filed1"> |
| | | <el-date-picker v-model="searchForm[item.filed1]" type="datetime" value-format="yyyy-MM-dd HH:mm:ss" |
| | | class="w200" |
| | | :clearable="(item.clearable !== null && item.clearable !== undefined && item.clearable !== '') ? item.clearable : true" |
| | |
| | | :start-placeholder="item.start || '开始时间'" :end-placeholder="item.end || '结束时间'" class="w400" |
| | | @change="changeForm(item.filed)" /> |
| | | </el-form-item> |
| | | <el-form-item v-if="item.type === 'slot' && (showZk || index < listLength)" :key="item.filed"> |
| | | <el-form-item :label="item.label ? item.label : ''" |
| | | v-if="item.type === 'slot' && (showZk || index < listLength)" :key="item.filed"> |
| | | <slot :name="item.filed" /> |
| | | </el-form-item> |
| | | </template> |
| | |
| | | <template> |
| | | <TableLayout :permissions="['business:member:query']"> |
| | | <!-- 搜索表单 --> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="姓名/手机号" prop="name"> |
| | | <el-input v-model="searchForm.name" placeholder="请输入姓名/手机号" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="组织名称" prop="companyName"> |
| | | <el-input v-model="searchForm.companyName" placeholder="请输入组织名称" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="操作人员" prop="createrId"> |
| | | <TableLayout :permissions="['business:member:query']"> |
| | | <!-- 搜索表单 --> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="姓名/手机号" prop="name"> |
| | | <el-input v-model="searchForm.name" placeholder="请输入姓名/手机号" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="组织名称" prop="companyName"> |
| | | <el-input v-model="searchForm.companyName" placeholder="请输入组织名称" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="操作人员" prop="createrId"> |
| | | <el-select v-model="searchForm.createrId" placeholder="请选择"> |
| | | <el-option |
| | | v-for="item in user" |
| | |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="人员类型" prop="type">--> |
| | | <!-- <el-select v-model="searchForm.type" placeholder="请选择">--> |
| | | <!-- <el-option label="访客" value="1"></el-option>--> |
| | | <!-- <el-option label="劳务" value="0"></el-option>--> |
| | | <!-- </el-select>--> |
| | | <!-- </el-form-item>--> |
| | | <section> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | | <el-button @click="reset">重置</el-button> |
| | | </section> |
| | | </el-form> |
| | | <!-- 表格和分页 --> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:member:create', 'business:member:delete']"> |
| | | <li><el-button type="primary" v-permissions="['business:member:create']" @click="thaws">移出</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | | v-loading="isWorking.search" |
| | | :data="tableData.list" |
| | | stripe |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="name" label="姓名" min-width="80px"></el-table-column> |
| | | <el-table-column prop="phone" label="手机号" min-width="100px"></el-table-column> |
| | | <el-table-column prop="idcardDecode" show-overflow-tooltip label="身份证号码" min-width="140px"></el-table-column> |
| | | <el-table-column label="人员类型" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.type === 0">劳务访客</span> |
| | | <span v-if="row.type === 1">普通访客</span> |
| | | <span v-if="row.type === 2">内部人员</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="visitCompanyName" label="组织" show-overflow-tooltip min-width="200px"></el-table-column> |
| | | <el-table-column prop="optRemark" label="操作信息" show-overflow-tooltip min-width="200px"></el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:member:update', 'business:member:delete'])" |
| | | label="操作" |
| | | min-width="120" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" v-permissions="['business:member:update']" @click="thaw(row.id)">移出</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | </pagination> |
| | | </template> |
| | | </TableLayout> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="人员类型" prop="type">--> |
| | | <!-- <el-select v-model="searchForm.type" placeholder="请选择">--> |
| | | <!-- <el-option label="访客" value="1"></el-option>--> |
| | | <!-- <el-option label="劳务" value="0"></el-option>--> |
| | | <!-- </el-select>--> |
| | | <!-- </el-form-item>--> |
| | | <!-- <section> --> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | | <el-button @click="reset">重置</el-button> |
| | | <!-- </section> --> |
| | | </el-form> |
| | | <!-- 表格和分页 --> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:member:create', 'business:member:delete']"> |
| | | <li><el-button type="primary" v-permissions="['business:member:create']" @click="thaws">移出</el-button></li> |
| | | </ul> |
| | | <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe |
| | | @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="name" label="姓名" min-width="80px"></el-table-column> |
| | | <el-table-column prop="phone" label="手机号" min-width="100px"></el-table-column> |
| | | <el-table-column prop="idcardDecode" show-overflow-tooltip label="身份证号码" min-width="140px"></el-table-column> |
| | | <el-table-column label="人员类型" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.type === 0">劳务访客</span> |
| | | <span v-if="row.type === 1">普通访客</span> |
| | | <span v-if="row.type === 2">内部人员</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="visitCompanyName" label="组织" show-overflow-tooltip min-width="200px"></el-table-column> |
| | | <el-table-column prop="optRemark" label="操作信息" show-overflow-tooltip min-width="200px"></el-table-column> |
| | | <el-table-column v-if="containPermissions(['business:member:update', 'business:member:delete'])" label="操作" |
| | | min-width="120" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" v-permissions="['business:member:update']" |
| | | @click="thaw(row.id)">移出</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination @size-change="handleSizeChange" @current-change="handlePageChange" :pagination="tableData.pagination"> |
| | | </pagination> |
| | | </template> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | name: 'blackmailPersonnel', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination }, |
| | | data () { |
| | | data() { |
| | | return { |
| | | // 搜索 |
| | | searchForm: { |
| | |
| | | user: [] |
| | | } |
| | | }, |
| | | created () { |
| | | created() { |
| | | this.config({ |
| | | module: '人员信息表', |
| | | api: '/business/block', |
| | |
| | | this.getUser() |
| | | }, |
| | | methods: { |
| | | thaws () { |
| | | thaws() { |
| | | if (this.tableData.selectedRows.length === 0) return this.$message.warning('至少选择一项内容') |
| | | const ids = this.tableData.selectedRows.map(item => { |
| | | return item.id |
| | |
| | | this.search() |
| | | }) |
| | | }, |
| | | thaw (ids) { |
| | | thaw(ids) { |
| | | this.$confirm('确定移出此用户吗?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | |
| | | |
| | | }) |
| | | }, |
| | | getUser () { |
| | | getUser() { |
| | | findAllList({}) |
| | | .then(res => { |
| | | this.user = res.map(item => { |
| | |
| | | <span v-if="row.inoutType === 1">离园</span> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- <el-table-column label="车牌抓拍图" min-width="100px"> |
| | | <!-- <el-table-column label="车牌抓拍图" min-width="100px"> |
| | | <template slot-scope="{ row }"> |
| | | <div v-if="row.platePicUrl != null"> |
| | | <el-image style="width: 80px; height: 80px" :src="row.platePicUrl" :preview-src-list="[row.platePicUrl]"> |
| | |
| | | companyName: '', |
| | | startTime: '', |
| | | endTime: '', |
| | | radio: '0' |
| | | radio: '' |
| | | }, |
| | | time: [] |
| | | } |
| | |
| | | methods: { |
| | | reset() { |
| | | this.$refs.searchForm.resetFields() |
| | | this.searchForm.radio = '' |
| | | // this.changeRadio('0') |
| | | this.searchForm = { |
| | | eventType: '', |
| | | keyWords: '', |
| | | plateNos: '', |
| | | memberType: '', |
| | | companyName: '', |
| | | startTime: '', |
| | | endTime: '', |
| | | radio: '' |
| | | } |
| | | this.time = [] |
| | | this.search() |
| | | }, |
| | |
| | | <div class="main_content"> |
| | | <div class="type_wrap"> |
| | | <div class="title">隐患类型统计</div> |
| | | <div class="echart1" ref="typeRef"></div> |
| | | <div v-show="typeList && typeList.length > 0" class="echart1" ref="typeRef"></div> |
| | | <div v-show="typeList.length == 0" style="width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;"> |
| | | <img style="width: 240px;" src="@/assets/images/default_homeimg.png" alt=""> |
| | | </div> |
| | | |
| | | </div> |
| | | <div class="dept_wrap"> |
| | | <div class="title">隐患归属部门统计</div> |
| | | <div class="echart2" ref="deptRef"></div> |
| | | <div v-show="deptList && deptList.length > 0" class="echart2" ref="deptRef"></div> |
| | | <div v-show="deptList.length == 0" style="width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;"> |
| | | <img style="width: 240px;" src="@/assets/images/default_homeimg.png" alt=""> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | data() { |
| | | return { |
| | | filters: { |
| | | fastdate: '', |
| | | fastdate: '29', |
| | | queryStartTime: '', |
| | | queryEndTime: '' |
| | | }, |
| | |
| | | options: [ |
| | | { label: '待处理', value: '0' }, |
| | | { label: '已处理', value: '1' }, |
| | | { label: '不处理', value: '2' }, |
| | | { label: '已退回', value: '2' }, |
| | | ] |
| | | }, |
| | | { |
| | |
| | | } |
| | | }, |
| | | mounted() { |
| | | // this.changeRadio('0') |
| | | this.getData() |
| | | this.changeRadio('29') |
| | | // this.getData() |
| | | }, |
| | | methods: { |
| | | changeRadio(day) { |
| | |
| | | if (res) { |
| | | this.typeList = res.cateList || [] |
| | | this.deptList = res.departmentList || [] |
| | | this.initType() |
| | | this.initDept() |
| | | this.$nextTick(() => { |
| | | this.initType() |
| | | this.initDept() |
| | | }) |
| | | |
| | | } |
| | | }) |
| | | |
| | |
| | | this.typeList.forEach(i => { |
| | | total += i.total |
| | | }) |
| | | let colors = ['#d75a44', '#e39f4d', '#7ac7f6', '#7ac7f6', '#4469ee', '#698af0', '#9fb5f4', '#b6c7f7', '#c8d5f8'] |
| | | let colors = ['#d75a44', '#e39f4d', '#f0d05f', '#7ac7f6', '#4469ee', '#698af0','#86a2f1','#a1b4f6','#a0b5f5', '#9fb5f4', '#b6c7f7', '#c8d5f8'] |
| | | let option = { |
| | | title: [ |
| | | { |
| | | text: '隐患总数', |
| | | top: '46%', |
| | | left: '46%', |
| | | left: '45%', |
| | | textStyle: { |
| | | color: '#666666', |
| | | fontSize: 16, |
| | |
| | | }, { |
| | | text: total, |
| | | top: '50%', |
| | | left: '48%', |
| | | left: '47.6%', |
| | | textStyle: { |
| | | color: '#080404', |
| | | fontSize: 24, |
| | |
| | | }, |
| | | series: [ |
| | | { |
| | | name: 'Access From', |
| | | type: 'pie', |
| | | radius: ['28%', '46%'], |
| | | radius: ['24%', '40%'], |
| | | label: { |
| | | formatter: "{a|{b}}\n\n{c} | {d}%", |
| | | rich: { |
| | |
| | | } |
| | | |
| | | .type_wrap { |
| | | flex: 5; |
| | | flex: 11; |
| | | flex-shrink: 0; |
| | | height: calc(100% - 20px); |
| | | border-right: 12px solid #f7f7f7; |
| | |
| | | } |
| | | |
| | | .dept_wrap { |
| | | flex: 4; |
| | | flex: 10; |
| | | flex-shrink: 0; |
| | | height: calc(100% - 20px); |
| | | padding-left: 20px; |
| | |
| | | <el-form-item label="组织名称" prop="companyName"> |
| | | <el-input v-model="searchForm.companyName" placeholder="请输入组织名称" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="下发状态" prop="sendStatus"> |
| | | <el-form-item label="下发状态" prop="hkStatus"> |
| | | <el-select v-model="searchForm.hkStatus" placeholder="请选择" clearable @change="search"> |
| | | <el-option label="待下发" value="0"></el-option> |
| | | <el-option label="已同步" value="1"></el-option> |
| | |
| | | <template> |
| | | <TableLayout :permissions="['business:member:query']"> |
| | | <!-- 搜索表单 --> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="姓名" prop="name"> |
| | | <el-input v-model="searchForm.name" placeholder="请输入姓名" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="工号" prop="code"> |
| | | <el-input v-model="searchForm.code" placeholder="请输入工号" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="部门" prop="companyId"> |
| | | <TableLayout :permissions="['business:member:query']"> |
| | | <!-- 搜索表单 --> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="姓名" prop="name"> |
| | | <el-input v-model="searchForm.name" placeholder="请输入姓名" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="工号" prop="code"> |
| | | <el-input v-model="searchForm.code" placeholder="请输入工号" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="部门" prop="companyId"> |
| | | <el-cascader |
| | | :options="options" |
| | | v-model="searchForm.companyId" |
| | |
| | | @keypress.enter.native="search" |
| | | :props="{ checkStrictly: true, value: 'id', label: 'name', children: 'companyDTOList' }" |
| | | ></el-cascader> |
| | | </el-form-item> |
| | | <section> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | | <el-button @click="reset">重置</el-button> |
| | | </section> |
| | | </el-form> |
| | | <!-- 表格和分页 --> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:member:create', 'business:member:delete']"> |
| | | <li><el-button type="primary" v-permissions="['business:member:create']" @click="thaws()">解冻</el-button></li> |
| | | <li><el-button type="primary" :loading="isWorking.export" v-permissions="['business:member:exportExcel']" @click="exportExcel">导出</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | | v-loading="isWorking.search" |
| | | :data="tableData.list" |
| | | stripe |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="name" label="姓名" min-width="100px"></el-table-column> |
| | | <el-table-column prop="companyName" show-overflow-tooltip label="部门" min-width="100px"></el-table-column> |
| | | <el-table-column prop="code" label="工号" min-width="100px"></el-table-column> |
| | | <el-table-column prop="visitsLastDate" label="最后一次门禁时间" min-width="100px"></el-table-column> |
| | | <el-table-column prop="optRemark" label="冻结信息" min-width="100px"></el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:member:update', 'business:member:delete'])" |
| | | label="操作" |
| | | min-width="120" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="thaw(row.id)" icon="el-icon-edit" v-permissions="['business:member:update']">解冻</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | </pagination> |
| | | </template> |
| | | </TableLayout> |
| | | </el-form-item> --> |
| | | <!-- <section> --> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | | <el-button @click="reset">重置</el-button> |
| | | <!-- </section> --> |
| | | </el-form> |
| | | <!-- 表格和分页 --> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:member:create', 'business:member:delete']"> |
| | | <li><el-button type="primary" v-permissions="['business:member:create']" @click="thaws()">解冻</el-button></li> |
| | | <li><el-button type="primary" :loading="isWorking.export" v-permissions="['business:member:exportExcel']" |
| | | @click="exportExcel">导出</el-button></li> |
| | | </ul> |
| | | <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe |
| | | @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="name" label="姓名" min-width="100px"></el-table-column> |
| | | <el-table-column prop="companyName" show-overflow-tooltip label="部门" min-width="100px"></el-table-column> |
| | | <el-table-column prop="code" label="工号" min-width="100px"></el-table-column> |
| | | <el-table-column prop="visitsLastDate" label="最后一次门禁时间" min-width="100px"></el-table-column> |
| | | <el-table-column prop="optRemark" label="冻结信息" min-width="100px"></el-table-column> |
| | | <el-table-column v-if="containPermissions(['business:member:update', 'business:member:delete'])" label="操作" |
| | | min-width="120" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="thaw(row.id)" icon="el-icon-edit" |
| | | v-permissions="['business:member:update']">解冻</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination @size-change="handleSizeChange" @current-change="handlePageChange" :pagination="tableData.pagination"> |
| | | </pagination> |
| | | </template> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | name: 'freezePersonnel', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination }, |
| | | data () { |
| | | data() { |
| | | return { |
| | | // 搜索 |
| | | searchForm: { |
| | |
| | | options: [] |
| | | } |
| | | }, |
| | | created () { |
| | | created() { |
| | | this.config({ |
| | | module: '冻结人员', |
| | | api: '/business/block', |
| | |
| | | this.getfindCompanyTreePage() |
| | | }, |
| | | methods: { |
| | | thaws () { |
| | | thaws() { |
| | | if (this.tableData.selectedRows.length === 0) return this.$message.warning('至少选择一项内容') |
| | | const ids = this.tableData.selectedRows.map(item => { |
| | | // return { id: item.id } |
| | |
| | | }) |
| | | this.thaw(ids.join(',')) |
| | | }, |
| | | thaw (ids) { |
| | | thaw(ids) { |
| | | this.$confirm('确定解冻此用户吗?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | |
| | | |
| | | }) |
| | | }, |
| | | changeCompanyId (e) { |
| | | changeCompanyId(e) { |
| | | this.searchForm.companyId = e[e.length - 1] |
| | | }, |
| | | // 获取组织树 |
| | | getfindCompanyTreePage () { |
| | | getfindCompanyTreePage() { |
| | | findCompanyTreePage(1) |
| | | .then(res => { |
| | | this.options = res |
| | |
| | | <el-option label="下发失败" value="3"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="起止时间" prop="eventType"> |
| | | <el-date-picker @change="seleTime" v-model="time" type="datetimerange" format="yyyy-MM-dd HH:mm:ss" |
| | | value-format="yyyy-MM-dd HH:mm:ss" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间"> |
| | | </el-date-picker> |
| | | <el-form-item label="" prop="eventType"> |
| | | <el-date-picker @change="changeDate" v-model="searchForm.startDate" type="datetime" |
| | | format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" placeholder="开始时间" /> |
| | | <el-date-picker @change="changeDate" v-model="searchForm.endDate" type="datetime" format="yyyy-MM-dd HH:mm:ss" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="开始时间" /> |
| | | </el-form-item> |
| | | <el-radio-group v-model="searchForm.radio" size="small" @input="changeRadio"> |
| | | <el-radio-button label="0">当天</el-radio-button> |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | changeDate(e) { |
| | | if ((this.searchForm.startDate && this.searchForm.endDate) && this.searchForm.startDate > this.searchForm.endDate) { |
| | | this.searchForm.endDate = this.searchForm.startDate |
| | | this.search() |
| | | return this.$message.error('开始时间不能大于结束时间') |
| | | } else { |
| | | this.search() |
| | | } |
| | | }, |
| | | changeRadio(e) { |
| | | if (e === '0') { |
| | | this.searchForm.startDate = timeForMat(0)[0] |
| | | this.searchForm.endDate = timeForMat(0)[1] |
| | | this.time = timeForMat(0) |
| | | // this.time = timeForMat(0) |
| | | } else if (e === '1') { |
| | | this.searchForm.startDate = timeForMat(6)[0] |
| | | this.searchForm.endTime = timeForMat(6)[1] |
| | | this.time = timeForMat(6) |
| | | this.searchForm.endDate = timeForMat(6)[1] |
| | | // this.time = timeForMat(6) |
| | | } else if (e === '2') { |
| | | this.searchForm.startDate= timeForMat(29)[0] |
| | | this.searchForm.endTime = timeForMat(29)[1] |
| | | this.time = timeForMat(29) |
| | | this.searchForm.startDate = timeForMat(29)[0] |
| | | this.searchForm.endDate = timeForMat(29)[1] |
| | | // this.time = timeForMat(29) |
| | | } |
| | | this.search() |
| | | }, |
| | | seleTime(e) { |
| | | this.searchForm.startTime = e[0] |
| | | this.searchForm.endTime = e[1] |
| | | this.searchForm.radio = null |
| | | if ((this.searchForm.startDate && this.searchForm.endDate) && this.searchForm.startDate > this.searchForm.endDate) { |
| | | this.searchForm.startDate = this.searchForm.endDate |
| | | return this.$message.error('开始时间不能大于结束时间') |
| | | } |
| | | this.search() |
| | | }, |
| | | reset() { |
| | | this.$refs.searchForm.resetFields() |
| | | this.time = [] |
| | | this.searchForm = { |
| | | name: '', |
| | | info: '', |
| | | deviceType: '', |
| | | hkStatus: '', |
| | | startDate: '', |
| | | endDate: '', |
| | | } |
| | | this.searchForm.radio = '' |
| | | // this.changeRadio('0') |
| | | this.search() |
| | |
| | | <el-form-item label="" prop="plateNo"> |
| | | <el-input v-model="searchForm.plateNo" placeholder="请输入车牌号" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="" prop="eventType"> |
| | | <el-form-item label="" prop="motionStatus"> |
| | | <el-select v-model="searchForm.motionStatus" placeholder="请选择进出类型"> |
| | | <el-option label="离开" value="leave"></el-option> |
| | | <el-option label="进入" value="enter"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="起止时间" prop="startDate"> |
| | | <el-date-picker @change="seleTime" v-model="time" type="datetimerange" format="yyyy-MM-dd HH:mm:ss" |
| | | value-format="yyyy-MM-dd HH:mm:ss" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间"> |
| | | </el-date-picker> |
| | | <el-form-item label="" prop="startDate"> |
| | | <el-date-picker @change="changeDate" v-model="searchForm.startDate" type="datetime" |
| | | format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" placeholder="开始时间" /> |
| | | <el-date-picker @change="changeDate" v-model="searchForm.endDate" type="datetime" format="yyyy-MM-dd HH:mm:ss" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="开始时间" /> |
| | | </el-form-item> |
| | | <el-radio-group v-model="searchForm.radio" size="small" @input="changeRadio"> |
| | | <el-radio-button label="0">当天</el-radio-button> |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | changeDate(e) { |
| | | if ((this.searchForm.startDate && this.searchForm.endDate) && this.searchForm.startDate > this.searchForm.endDate) { |
| | | this.searchForm.endDate = this.searchForm.startDate |
| | | this.search() |
| | | return this.$message.error('开始时间不能大于结束时间') |
| | | }else{ |
| | | this.search() |
| | | } |
| | | }, |
| | | changeRadio(e) { |
| | | if (e === '0') { |
| | | this.searchForm.startDate = timeForMat(0)[0] |
| | | this.searchForm.endDate = timeForMat(0)[1] |
| | | this.time = timeForMat(0) |
| | | // this.time = timeForMat(0) |
| | | } else if (e === '1') { |
| | | this.searchForm.startDate = timeForMat(6)[0] |
| | | this.searchForm.endDate = timeForMat(6)[1] |
| | | this.time = timeForMat(6) |
| | | // this.time = timeForMat(6) |
| | | } else if (e === '2') { |
| | | this.searchForm.startDate = timeForMat(29)[0] |
| | | this.searchForm.endDate = timeForMat(29)[1] |
| | | this.time = timeForMat(29) |
| | | // this.time = timeForMat(29) |
| | | } |
| | | this.search() |
| | | }, |
| | | seleTime(e) { |
| | | this.searchForm.startDate = e[0] |
| | | this.searchForm.endDate = e[1] |
| | | this.searchForm.radio = null |
| | | if ((this.searchForm.startDate && this.searchForm.endDate) && this.searchForm.startDate > this.searchForm.endDate) { |
| | | this.searchForm.startDate = this.searchForm.endDate |
| | | return this.$message.error('开始时间不能大于结束时间') |
| | | } |
| | | this.search() |
| | | }, |
| | | reset() { |
| | |
| | | this.searchForm.startDate = '' |
| | | this.searchForm.endDate = '' |
| | | this.searchForm.radio = '' |
| | | this.time = [] |
| | | this.search() |
| | | } |
| | | } |
| | |
| | | <ul class="toolbar" v-permissions="['business:visitevent:exportExcel']"> |
| | | <li><el-button type="primary" :loading="isWorking.export" v-permissions="['business:visitevent:exportExcel']" |
| | | @click="exportExcel">导出</el-button></li> |
| | | <li class="ml20"> 拜访人次:<span class="primaryColor">{{staticObj.eventNum}}次</span></li> |
| | | <li class="ml20"> 拜访人数:<span class="primaryColor">{{staticObj.visitorNum}}人</span></li> |
| | | <li class="ml20"> 入园次数:<span class="primaryColor">{{staticObj.eventNum}}次</span></li> |
| | | <li class="ml20"> 入园人数:<span class="primaryColor">{{staticObj.visitorNum}}人</span></li> |
| | | </ul> |
| | | <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe> |
| | | <el-table-column prop="personName" label="姓名" min-width="90px"></el-table-column> |
| | |
| | | <el-form-item label="预约人" prop="realName"> |
| | | <el-input v-model="searchForm.realName" placeholder="请输入预约人" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="会议状态" prop="status"> |
| | | <el-form-item label="会议状态" prop="meetingStatus"> |
| | | <el-select v-model="searchForm.meetingStatus" filterable clearable placeholder="请选择状态"> |
| | | <el-option v-for="item in status" :key="item.id" :value="item.id" :label="item.name" /> |
| | | </el-select> |
| | |
| | | </div> |
| | | <!-- 表格和分页 --> |
| | | <template v-slot:table-wrap> |
| | | <ul |
| | | class="toolbar" |
| | | v-permissions="[ |
| | | 'business:carusebook:create', |
| | | 'business:carusebook:exportExcel', |
| | | ]" |
| | | > |
| | | <ul class="toolbar" v-permissions="[ |
| | | 'business:carusebook:create', |
| | | 'business:carusebook:exportExcel', |
| | | ]"> |
| | | <li> |
| | | <el-button |
| | | type="primary" |
| | | @click="handleEdit" |
| | | icon="el-icon-plus" |
| | | v-permissions="['business:carusebook:create']" |
| | | >新建</el-button |
| | | > |
| | | <el-button type="primary" @click="handleEdit" icon="el-icon-plus" |
| | | v-permissions="['business:carusebook:create']">新建</el-button> |
| | | </li> |
| | | <li> |
| | | <el-button |
| | | type="primary" |
| | | @click="handleEx" |
| | | v-permissions="['business:carusebook:exportExcel']" |
| | | >导出</el-button |
| | | > |
| | | <el-button type="primary" @click="handleEx" v-permissions="['business:carusebook:exportExcel']">导出</el-button> |
| | | </li> |
| | | </ul> |
| | | <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe |
| | | @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column |
| | | prop="carCode" |
| | | label="车牌号" |
| | | min-width="100px" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | prop="memberName" |
| | | label="提报人" |
| | | min-width="80px" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | prop="memberNames" |
| | | label="乘车人" |
| | | min-width="180px" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | prop="companyName" |
| | | label="所属组织" |
| | | min-width="150px" |
| | | ></el-table-column> |
| | | <el-table-column prop="carCode" label="车牌号" min-width="100px"></el-table-column> |
| | | <el-table-column prop="memberName" label="提报人" min-width="80px"></el-table-column> |
| | | <el-table-column prop="memberNames" label="乘车人" min-width="180px"></el-table-column> |
| | | <el-table-column prop="companyName" label="所属组织" min-width="150px"></el-table-column> |
| | | <el-table-column label="用车时间" min-width="170px"> |
| | | <template slot-scope="{ row }"> |
| | | <span v-if="row.startTime">起:{{ row.startTime.slice(0,16) }}</span |
| | | ><br /> |
| | | <span v-if="row.endTime">止:{{ row.endTime.slice(0,16) }}</span> |
| | | <span v-if="row.startTime">起:{{ row.startTime.slice(0, 16) }}</span><br /> |
| | | <span v-if="row.endTime">止:{{ row.endTime.slice(0, 16) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="planUseDate" |
| | | label="出发时间" |
| | | min-width="150px" |
| | | > |
| | | <template slot-scope="{ row }"> |
| | | <span v-if="row.planUseDate">{{ row.planUseDate.slice(0,16) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="planUseDate" label="出发时间" min-width="150px"> |
| | | <template slot-scope="{ row }"> |
| | | <span v-if="row.planUseDate">{{ row.planUseDate.slice(0, 16) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="目的地" min-width="200px"> |
| | | <template slot-scope="{ row }"> |
| | | <span class="status-green" v-if="row.type === 0">【市内】</span> |
| | |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="createDate" |
| | | label="申请时间" |
| | | min-width="150px" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | prop="editDate" |
| | | label="操作时间" |
| | | min-width="150px" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | label="操作" |
| | | min-width="180" |
| | | align="center" |
| | | fixed="right" |
| | | > |
| | | <el-table-column prop="createDate" label="申请时间" min-width="150px"></el-table-column> |
| | | <el-table-column prop="editDate" label="操作时间" min-width="150px"></el-table-column> |
| | | <el-table-column label="操作" min-width="180" align="center" fixed="right"> |
| | | <template slot-scope="{ row }"> |
| | | <el-button |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="$refs.OperaDetailsWindow.open('公务车申请详情', row)" |
| | | >查看详情</el-button |
| | | > |
| | | <el-button type="text" icon="el-icon-edit" |
| | | @click="$refs.OperaDetailsWindow.open('公务车申请详情', row)">查看详情</el-button> |
| | | <!-- <el-button v-if="(row.status === 1 || row.status === 2) && new Date().getTime() < new Date(row.startTime).getTime()" type="text" icon="el-icon-delete" @click="rowRevokeClick(row)" >撤销</el-button> --> |
| | | <el-button style="color: red" v-if="row.hasRole ==1" type="text" icon="el-icon-delete" @click="rowRevokeClick(row)" >撤销</el-button> |
| | | <el-button style="color: red" v-if="row.hasRole == 1" type="text" icon="el-icon-delete" |
| | | @click="rowRevokeClick(row)">撤销</el-button> |
| | | <!-- <el-button style="color: red" v-if="(row.status === 0 && row.creator == userInfo.id)||((row.status === 0 || row.status === 1 ) || ( row.status === 2 && new Date().getTime() < new Date(row.startTime).getTime() ))" type="text" icon="el-icon-delete" @click="rowRevokeClick(row)" >撤销</el-button>--> |
| | | <el-button style="color: red" type="text" icon="el-icon-delete" v-permissions="['business:carusebook:delete']" @click="deleteById(row)" >删除</el-button> |
| | | <el-button style="color: red" type="text" icon="el-icon-delete" |
| | | v-permissions="['business:carusebook:delete']" @click="deleteById(row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | <pagination @size-change="handleSizeChange" @current-change="handlePageChange" :pagination="tableData.pagination"> |
| | | </pagination> |
| | | </template> |
| | | <!-- --> |
| | | <el-dialog title="用车撤销" :visible.sync="isShowBack" width="520px"> |
| | | <el-form |
| | | :model="backParam" |
| | | :rules="rules" |
| | | ref="backForm" |
| | | label-width="100px" |
| | | class="demo-ruleForm" |
| | | > |
| | | <el-form :model="backParam" :rules="rules" ref="backForm" label-width="100px" class="demo-ruleForm"> |
| | | <el-form-item label="说明" prop="info"> |
| | | <el-input |
| | | type="textarea" |
| | | :rows="4" |
| | | v-model="backParam.info" |
| | | placeholder="请输入撤销说明" |
| | | ></el-input> |
| | | <el-input type="textarea" :rows="4" v-model="backParam.info" placeholder="请输入撤销说明"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | |
| | | <el-button type="primary" @click="backSubmit">确定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <OperaCarUseBookWindow |
| | | ref="OperaDetailsWindow" |
| | | @success="handlePageChange" |
| | | /> |
| | | <OperaCarUseBookWindow ref="OperaDetailsWindow" @success="handlePageChange" /> |
| | | <OperaCarUseBookParamWindow ref="OperaParamWindow" @success="search" /> |
| | | </TableLayout> |
| | | </template> |
| | |
| | | name: 'Empower', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination, OperaCarUseBookWindow, OperaCarUseBookParamWindow }, |
| | | data () { |
| | | data() { |
| | | return { |
| | | // userInfo: this.$store.state.userInfo, |
| | | // 搜索 |
| | | searchForm: { |
| | | memberName: '', |
| | | companyName: '', |
| | | startTime: '', |
| | | endTime: '', |
| | | queryStartTime: '', |
| | | queryEndTime: '', |
| | | type: null, |
| | | status: null, |
| | | radio: 0 |
| | |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | created() { |
| | | this.config({ |
| | | module: '用车申请管理', |
| | | api: '/business/carUseBook', |
| | |
| | | 'field.main': 'id' |
| | | }) |
| | | // this.search() |
| | | this.changeRadio(0) |
| | | this.changeRadio('0') |
| | | this.loadParams() |
| | | }, |
| | | methods: { |
| | | rowRevokeClick (row) { |
| | | rowRevokeClick(row) { |
| | | this.isShowBack = true |
| | | this.backParam = {} |
| | | this.$set(this.backParam, 'id', row.id) |
| | |
| | | this.$refs.backForm.clearValidate() |
| | | }) |
| | | }, |
| | | backSubmit () { |
| | | backSubmit() { |
| | | revokeById({ ...this.backParam }).then(res => { |
| | | this.$tip.success('撤销成功') |
| | | this.isShowBack = false |
| | | this.search() |
| | | }) |
| | | }, |
| | | handleEx () { |
| | | handleEx() { |
| | | this.$dialog.exportConfirm('确认导出吗?') |
| | | .then(() => { |
| | | this.exLoading = true |
| | |
| | | } |
| | | this.search() |
| | | }, |
| | | handleEdit () { |
| | | handleEdit() { |
| | | this.$refs.OperaParamWindow.open() |
| | | }, |
| | | loadParams () { |
| | | loadParams() { |
| | | allList({ |
| | | }) |
| | | .then(res => { |
| | |
| | | .finally(() => { |
| | | }) |
| | | }, |
| | | seleTime (e) { |
| | | seleTime(e) { |
| | | this.searchForm.queryStartTime = null |
| | | this.searchForm.queryEndTime = null |
| | | if (e != null && e.length >= 2) { |
| | |
| | | this.searchForm.radio = null |
| | | this.search() |
| | | }, |
| | | reset () { |
| | | reset() { |
| | | this.$refs.searchForm.resetFields() |
| | | this.searchForm.radio = 0 |
| | | this.changeRadio(0) |
| | | // this.search() |
| | | this.searchForm = { |
| | | memberName: '', |
| | | companyName: '', |
| | | queryStartTime: '', |
| | | queryEndTime: '', |
| | | type: null, |
| | | status: null, |
| | | radio: '' |
| | | } |
| | | // this.changeRadio(0) |
| | | this.search() |
| | | } |
| | | } |
| | | } |
| | |
| | | <template> |
| | | <div class="main_app"> |
| | | <QueryForm v-model="filters" :query-form-config="queryFormConfig" @changeForm='changeForm' @handleQuery="getList(1)" @clear="clear"> |
| | | <QueryForm v-model="filters" :query-form-config="queryFormConfig" @changeForm='changeForm' @handleQuery="getList(1)" |
| | | @clear="clear"> |
| | | <template #fastdate> |
| | | <el-radio-group |
| | | v-model="filters.fastdate" |
| | | size="small" |
| | | @input="changeRadio" |
| | | > |
| | | <el-radio-group v-model="filters.fastdate" size="small" @input="changeRadio"> |
| | | <el-radio-button label="0">当天</el-radio-button> |
| | | <el-radio-button label="6">近7天</el-radio-button> |
| | | <el-radio-button label="29">近30天</el-radio-button> |
| | |
| | | </template> |
| | | </QueryForm> |
| | | <div class="pt16"> |
| | | <el-button :loading="exLoading" @click="handleEx" v-permissions="['business:platformjob:exportExcel']">导出</el-button> |
| | | <el-button :loading="exLoading" @click="handleEx" |
| | | v-permissions="['business:platformjob:exportExcel']">导出</el-button> |
| | | </div> |
| | | <el-table :height="tableHeightNew" v-loading="loading" :data="list" stripe> |
| | | <el-table :height="tableHeightNew" v-loading="loading" :data="list" stripe> |
| | | <el-table-column prop="billCode" label="运单号" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="totalNum" label="总作业量(万支)" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="carCodeFront" label="车牌前照号" min-width="100" show-overflow-tooltip /> |
| | |
| | | <script> |
| | | import Pagination from '@/components/common/Pagination' |
| | | import QueryForm from '@/components/common/QueryForm' |
| | | import { platformJobPage, platformJobExport,platformJobDel } from '@/api' |
| | | import { platformJobPage, platformJobExport, platformJobDel } from '@/api' |
| | | import { statusMap } from '../config' |
| | | import DriverDetail from "@/views/task/driverDetail" |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | |
| | | import { Message } from 'element-ui' |
| | | import dayjs from 'dayjs' |
| | | import duration from 'dayjs/plugin/duration' |
| | | dayjs.extend(duration); |
| | | import BaseComputHeight from "@/components/base/BaseComputHeight"; |
| | | dayjs.extend(duration) |
| | | import BaseComputHeight from "@/components/base/BaseComputHeight" |
| | | export default { |
| | | extends: BaseComputHeight, |
| | | components: { |
| | |
| | | }, |
| | | filters: { |
| | | selDate: [], |
| | | fastdate: 0 |
| | | fastdate: 0, |
| | | createDateStart: '', |
| | | createDateEnd: '' |
| | | }, |
| | | list: [], |
| | | queryFormConfig: { |
| | | formItems: [ |
| | | { |
| | | { |
| | | filed: 'billCode', |
| | | type: 'input', |
| | | label: '运单号' |
| | |
| | | label: '驾驶员' |
| | | }, |
| | | { |
| | | filed: 'selDate', |
| | | type: 'datetimerange', |
| | | label: '', |
| | | pickerOptions: {} |
| | | filed1: 'createDateStart', |
| | | filed2: 'createDateEnd', |
| | | type: 'datetime', |
| | | label: '作业时间' |
| | | }, |
| | | { |
| | | type: 'slot', |
| | | filed: 'fastdate', |
| | | label: '作业时间' |
| | | filed: 'fastdate' |
| | | } |
| | | ], |
| | | online: true |
| | |
| | | this.getList() |
| | | }, |
| | | methods: { |
| | | changeRadio (day) { |
| | | changeRadio(day) { |
| | | const arr = [dayjs().subtract(day, 'day').format('YYYY-MM-DD') + ' 00:00:00', dayjs().format('YYYY-MM-DD') + ' 23:59:59'] |
| | | this.$set(this.filters, 'selDate', arr) |
| | | this.getList() |
| | | this.filters.createDateStart = arr[0] |
| | | this.filters.createDateEnd = arr[1] |
| | | this.getList(1) |
| | | }, |
| | | changeForm (str) { |
| | | if (str === 'selDate') { |
| | | this.$set(this.filters, 'fastdate', null) |
| | | this.getList() |
| | | changeForm(str) { |
| | | if(this.filters.createDateStart > this.filters.createDateEnd){ |
| | | this.filters.createDateStart = this.filters.createDateEnd |
| | | return this.$message.error('开始时间不能大于结束时间') |
| | | } |
| | | this.getList() |
| | | }, |
| | | getList(page) { |
| | | const { pagination, filters } = this |
| | |
| | | model: { |
| | | ...filters, |
| | | jobType: '0', |
| | | createDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null, |
| | | createDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null, |
| | | }, |
| | | sorts: [{ direction: 'DESC', property: 'create_date' }], |
| | | capacity: pagination.pageSize, |
| | |
| | | this.list.forEach(item => { |
| | | item.inTypeTemp = item.inType == 0 ? '整托盘' : '件烟' |
| | | item.taskOrigin = 'WMS获取' |
| | | if(item.workTime && item.workTime>=24*60*60 ){ |
| | | item.workTime = dayjs.duration(item.workTime, 'seconds').format('D天H时m分s秒'); |
| | | }else{ |
| | | item.workTime = dayjs.duration(item.workTime, 'seconds').format('H时m分s秒'); |
| | | if (item.workTime && item.workTime >= 24 * 60 * 60) { |
| | | item.workTime = dayjs.duration(item.workTime, 'seconds').format('D天H时m分s秒') |
| | | } else { |
| | | item.workTime = dayjs.duration(item.workTime, 'seconds').format('H时m分s秒') |
| | | } |
| | | }) |
| | | this.pagination.total = res.total || 0 |
| | |
| | | model: { |
| | | ...filters, |
| | | jobType: 0, |
| | | createDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null, |
| | | createDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null, |
| | | |
| | | }, |
| | | sorts: [{ direction: 'DESC', property: 'create_date' }], |
| | | capacity: 10000, |
| | |
| | | <el-button :loading="exLoading" @click="handleEx" |
| | | v-permissions="['business:platformjob:exportExcel']">导出</el-button> |
| | | </div> |
| | | <el-table :height="tableHeightNew" v-loading="loading" :data="list" stripe> |
| | | <el-table :height="tableHeightNew" v-loading="loading" :data="list" stripe> |
| | | <el-table-column prop="contractNum" label="合同号" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="reason" label="入园原因" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="totalNum" label="总作业量(万支)" min-width="120" show-overflow-tooltip /> |
| | |
| | | import dayjs from 'dayjs' |
| | | import duration from 'dayjs/plugin/duration' |
| | | dayjs.extend(duration) |
| | | import BaseComputHeight from "@/components/base/BaseComputHeight"; |
| | | import BaseComputHeight from "@/components/base/BaseComputHeight" |
| | | export default { |
| | | extends: BaseComputHeight, |
| | | components: { |
| | |
| | | total: 0 |
| | | }, |
| | | filters: { |
| | | selDate: [], |
| | | createDateStart: '', |
| | | createDateEnd: '', |
| | | fastdate: 0 |
| | | }, |
| | | list: [], |
| | |
| | | label: '驾驶员' |
| | | }, |
| | | { |
| | | filed: 'selDate', |
| | | type: 'datetimerange', |
| | | label: '', |
| | | pickerOptions: {} |
| | | filed1: 'createDateStart', |
| | | filed2: 'createDateEnd', |
| | | type: 'datetime', |
| | | label: '作业时间' |
| | | }, |
| | | { |
| | | type: 'slot', |
| | |
| | | methods: { |
| | | changeRadio(day) { |
| | | const arr = [dayjs().subtract(day, 'day').format('YYYY-MM-DD') + ' 00:00:00', dayjs().format('YYYY-MM-DD') + ' 23:59:59'] |
| | | this.$set(this.filters, 'selDate', arr) |
| | | this.getList() |
| | | this.filters.createDateStart = arr[0] |
| | | this.filters.createDateEnd = arr[1] |
| | | this.getList(1) |
| | | }, |
| | | changeForm(str) { |
| | | if (str === 'selDate') { |
| | | this.$set(this.filters, 'fastdate', null) |
| | | this.getList() |
| | | if (this.filters.createDateStart > this.filters.createDateEnd) { |
| | | this.filters.createDateStart = this.filters.createDateEnd |
| | | return this.$message.error('开始时间不能大于结束时间') |
| | | } |
| | | this.getList() |
| | | }, |
| | | getList(page) { |
| | | const { pagination, filters } = this |
| | |
| | | platformJobPage({ |
| | | model: { |
| | | ...filters, |
| | | jobType: 1, |
| | | createDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null, |
| | | createDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null, |
| | | jobType: 1 |
| | | }, |
| | | sorts: [{ direction: 'DESC', property: 'create_date' }], |
| | | capacity: pagination.pageSize, |
| | |
| | | this.list.forEach(item => { |
| | | item.inTypeTemp = item.inType == 0 ? '整托盘' : '件烟' |
| | | item.taskOrigin = 'WMS获取' |
| | | if(item.workTime && item.workTime>=24*60*60 ){ |
| | | item.workTime = dayjs.duration(item.workTime, 'seconds').format('D天H时m分s秒'); |
| | | }else{ |
| | | item.workTime = dayjs.duration(item.workTime, 'seconds').format('H时m分s秒'); |
| | | if (item.workTime && item.workTime >= 24 * 60 * 60) { |
| | | item.workTime = dayjs.duration(item.workTime, 'seconds').format('D天H时m分s秒') |
| | | } else { |
| | | item.workTime = dayjs.duration(item.workTime, 'seconds').format('H时m分s秒') |
| | | } |
| | | // item.workTime = dayjs.duration(item.workTime, 'seconds').format('H时m分s秒') |
| | | }) |
| | |
| | | platformJobExport({ |
| | | model: { |
| | | ...filters, |
| | | jobType: 1, |
| | | createDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null, |
| | | createDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null |
| | | jobType: 1 |
| | | }, |
| | | sorts: [{ direction: 'DESC', property: 'create_date' }], |
| | | capacity: 10000, |
| | |
| | | <el-input v-model="searchForm.name" clearable placeholder="请输入月台名称" |
| | | @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label=""> |
| | | <el-form-item label="" prop="groupId"> |
| | | <el-select v-model="searchForm.groupId" placeholder="请选择月台分组" @change="search" clearable> |
| | | <el-option v-for="item in groupList" :key="item.id" :label="item.name" :value="item.id"> |
| | | </el-option> |
| | |
| | | <el-input v-model="searchForm.reason" clearable placeholder="请输入入园原因" |
| | | @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label=""> |
| | | <el-form-item label="" prop="groupId"> |
| | | <el-select v-model="searchForm.groupId" placeholder="请选择月台分组" @change="search" clearable> |
| | | <el-option v-for="item in groupList" :key="item.id" :label="item.name" :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <section> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | | <el-button @click="reset">重置</el-button> |
| | | </section> |
| | | <!-- <section> --> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | | <el-button @click="reset">重置</el-button> |
| | | <!-- </section> --> |
| | | </el-form> |
| | | </SearchFormCollapse> |
| | | <!-- 表格和分页 --> |
| | |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" |
| | | v-permissions="['business:platformreason:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe @selection-change="handleSelectionChange"> |
| | | <el-table :height="tableHeightNew" v-loading="isWorking.search" :data="tableData.list" stripe |
| | | @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="reason" label="入园原因" fixed min-width="100px"></el-table-column> |
| | | <el-table-column prop="groupName" label="对应作业月台组" fixed min-width="150px"></el-table-column> |
| | |
| | | <span></span> |
| | | </div> |
| | | </div> |
| | | <el-table :height="tableHeightNew" v-loading="loading" :data="dataList" stripe row-key="id" default-expand-all> |
| | | <el-table :height="tableHeightNew" v-loading="loading" :data="dataList" stripe row-key="id" default-expand-all> |
| | | <el-table-column type="index" label="序号" width="80" /> |
| | | <el-table-column label="车牌号" width="130"> |
| | | <template slot-scope="{ row }"> |
| | |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="carrierName" label="运输公司" show-overflow-tooltip min-width="140"> |
| | | <el-table-column prop="carrierName" label="运输公司" show-overflow-tooltip min-width="140"> |
| | | <template v-slot="scope"> |
| | | <span>{{ scope.row.carrierName || '-' }}</span> |
| | | </template> |
| | |
| | | <el-table-column prop="signDate" label="签到时间" min-width="150" /> |
| | | <el-table-column label="状态" align="center" width="80"> |
| | | <template slot-scope="{ row }"> |
| | | <span v-if="row.status == 2" class="red">月台等待</span> |
| | | <!-- <span v-if="row.status == 2" class="red">月台等待</span> --> |
| | | <span v-if="row.status == 2" class="red">等待叫号</span> |
| | | <span v-if="row.status == 3" class="primaryColor">入园等待</span> |
| | | <span v-if="row.status == 7" class="primaryColor">转移中</span> |
| | | </template> |
| | |
| | | <template> |
| | | <div class="main_app"> |
| | | <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear" /> |
| | | <el-table :height="tableHeightNew" v-loading="loading" :data="list" stripe> |
| | | <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear"> |
| | | <template #selDate> |
| | | <div> |
| | | <el-date-picker v-model="filters.beginWorkDateStart" type="date" value-format="yyyy-MM-dd" class="w200" |
| | | @change="getList(1)" /> |
| | | <el-date-picker v-model="filters.beginWorkDateEnd" type="date" value-format="yyyy-MM-dd" class="w200" |
| | | @change="getList(1)" /> |
| | | </div> |
| | | </template> |
| | | <template #fastdate> |
| | | <el-radio-group v-model="filters.fastdate" size="small" @input="changeRadio"> |
| | | <el-radio-button label="0">当天</el-radio-button> |
| | | <el-radio-button label="6">近7天</el-radio-button> |
| | | <el-radio-button label="29">近30天</el-radio-button> |
| | | </el-radio-group> |
| | | </template> |
| | | </QueryForm> |
| | | <el-table :height="tableHeightNew" v-loading="loading" :data="list" stripe> |
| | | <el-table-column prop="platformName" label="月台名称" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="platformGroupName" label="月台组" min-width="100" show-overflow-tooltip /> |
| | | <el-table-column prop="carCodeFront" label="车前牌照号" min-width="100" show-overflow-tooltip /> |
| | |
| | | page: 1, |
| | | total: 0 |
| | | }, |
| | | filters: {}, |
| | | filters: { |
| | | fastdate: 0, |
| | | beginWorkDateStart: '', |
| | | beginWorkDateEnd: '' |
| | | }, |
| | | list: [], |
| | | total: 0, |
| | | queryFormConfig: { |
| | |
| | | label: '车牌号' |
| | | }, |
| | | { |
| | | type: 'slot', |
| | | filed: 'selDate', |
| | | type: 'daterange', |
| | | label: '日期' |
| | | } |
| | | }, |
| | | { |
| | | type: 'slot', |
| | | filed: 'fastdate', |
| | | label: '' |
| | | }, |
| | | ], |
| | | online: true |
| | | } |
| | | } |
| | | }, |
| | | created() { |
| | | this.getList() |
| | | // this.getList() |
| | | this.getGroupList() |
| | | this.changeRadio('0') |
| | | }, |
| | | methods: { |
| | | changeRadio(day) { |
| | | const arr = [dayjs().subtract(day, 'day').format('YYYY-MM-DD'), dayjs().format('YYYY-MM-DD')] |
| | | this.filters.beginWorkDateStart = arr[0] |
| | | this.filters.beginWorkDateEnd = arr[1] |
| | | this.filters.fastdate = day |
| | | this.getList() |
| | | }, |
| | | handleSub() { |
| | | this.$refs.ruleForm.validate((valid) => { |
| | | if (valid) { |
| | |
| | | getList(page) { |
| | | const { pagination, filters } = this |
| | | this.loading = true |
| | | |
| | | platformLogPage({ |
| | | model: { |
| | | ...filters, |
| | | queryStatus: '6,7,8', |
| | | beginWorkDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null, |
| | | beginWorkDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null, |
| | | // beginWorkDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null, |
| | | // beginWorkDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null, |
| | | }, |
| | | sorts: [{ direction: 'DESC', property: 'param1' }], |
| | | capacity: pagination.pageSize, |
| | |
| | | </script> |
| | | |
| | | <style scoped> |
| | | ::v-deep .el-table{ |
| | | ::v-deep .el-table { |
| | | margin-bottom: 60px; |
| | | } |
| | | |
| | | </style> |
| | |
| | | <template> |
| | | <div class="main_app" style="overflow: auto;height: calc(100% - 100px);"> |
| | | <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear"> |
| | | <template #selDate> |
| | | <div> |
| | | <el-date-picker v-model="filters.queryDateStart" type="date" value-format="yyyy-MM-dd" class="w200" :clearable="false" |
| | | @change="getList(1)" /> |
| | | <el-date-picker v-model="filters.queryDateEnd" type="date" value-format="yyyy-MM-dd" class="w200" :clearable="false" |
| | | @change="getList(1)" /> |
| | | </div> |
| | | </template> |
| | | <template #fastdate> |
| | | <el-radio-group v-model="filters.fastdate" size="small" @input="changeRadio"> |
| | | <el-radio-button label="0">当天</el-radio-button> |
| | |
| | | <div v-if="this.list" style="width: 100%;display: flex;height: 50px;padding-top: 20px;font-size: 18px;color: red"> |
| | | <div style="flex: 1;min-width: 100px"></div> |
| | | <div style="flex: 1;min-width: 100px;">合计:</div> |
| | | <div style="flex: 1;min-width: 100px;"> <span style="font-weight: bold; ">{{totalStopCount}}</span>次 </div> |
| | | <div style="flex: 2;min-width: 100px;"> <span style="font-weight: bold;">{{totalWorkTime.toFixed(2)}}</span>时</div> |
| | | <div style="flex: 1;min-width: 100px;"> <span style="font-weight: bold; ">{{ totalStopCount }}</span>次 </div> |
| | | <div style="flex: 2;min-width: 100px;"> <span style="font-weight: bold;">{{ totalWorkTime.toFixed(2) }}</span>时 |
| | | </div> |
| | | </div> |
| | | <!-- <pagination @size-change="handleSizeChange" @current-change="getList" :pagination="pagination" /> --> |
| | | </div> |
| | |
| | | }, |
| | | filters: { |
| | | fastdate: 0, |
| | | selDate: [] |
| | | queryDateStart: '', |
| | | queryDateEnd: '' |
| | | }, |
| | | totalStopCount:0, |
| | | totalWorkTime:0, |
| | | totalStopCount: 0, |
| | | totalWorkTime: 0, |
| | | list: [], |
| | | total: 0, |
| | | queryFormConfig: { |
| | |
| | | }, |
| | | { |
| | | type: 'slot', |
| | | filed: 'selDate', |
| | | label: '日期' |
| | | }, |
| | | { |
| | | type: 'slot', |
| | | filed: 'fastdate', |
| | | label: '' |
| | | }, |
| | | { |
| | | filed: 'selDate', |
| | | type: 'daterange', |
| | | clearable: false, |
| | | label: '日期' |
| | | } |
| | | ], |
| | | online: true |
| | | } |
| | |
| | | }, |
| | | methods: { |
| | | getSummaries(param) { |
| | | const { columns, data } = param; |
| | | const sums = []; |
| | | const { columns, data } = param |
| | | const sums = [] |
| | | columns.forEach((column, index) => { |
| | | if (index === 0) { |
| | | sums[index] = '合计'; |
| | | sums[index] = '合计' |
| | | } else { |
| | | const values = data.map(item => parseInt(item[column.property])); |
| | | const values = data.map(item => parseInt(item[column.property])) |
| | | if (!values.every(value => isNaN(value))) { |
| | | sums[index] = values.reduce((prev, curr) => { |
| | | const value = parseInt(curr); |
| | | const value = parseInt(curr) |
| | | if (!isNaN(value)) { |
| | | return prev + curr; |
| | | return prev + curr |
| | | } else { |
| | | return prev; |
| | | return prev |
| | | } |
| | | }, 0); |
| | | }, 0) |
| | | } else { |
| | | sums[index] = '0'; |
| | | sums[index] = '0' |
| | | } |
| | | } |
| | | }); |
| | | return sums; |
| | | }) |
| | | return sums |
| | | }, |
| | | changeRadio(day) { |
| | | const arr = [dayjs().subtract(day, 'day').format('YYYY-MM-DD'), dayjs().format('YYYY-MM-DD')] |
| | | this.$set(this.filters, 'selDate', arr) |
| | | this.filters.queryDateStart = arr[0] |
| | | this.filters.queryDateEnd = arr[1] |
| | | this.filters.fastdate = day |
| | | this.getList() |
| | | }, |
| | | handleSub() { |
| | |
| | | this.totalStopCount = 0 |
| | | this.totalWorkTime = 0 |
| | | const { pagination, filters } = this |
| | | if (filters.queryDateStart > filters.queryDateEnd) { |
| | | this.filters.queryDateStart = this.filters.queryDateEnd |
| | | return this.$message.error('开始时间不能大于结束时间') |
| | | } |
| | | this.loading = true |
| | | platformWorkReportPage({ |
| | | ...filters, |
| | | queryDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null, |
| | | queryDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null, |
| | | // queryDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null, |
| | | // queryDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null, |
| | | }).then(res => { |
| | | this.loading = false |
| | | this.list = res || [] |
| | |
| | | selDate: [], |
| | | fastdate: '' |
| | | } |
| | | this.getList() |
| | | // this.changeRadio('0') |
| | | // this.getList() |
| | | this.changeRadio('0') |
| | | }, |
| | | handleSizeChange(capacity) { |
| | | this.pagination.pageSize = capacity |
| | |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | .active { |
| | | border: 1rpx solid $uni-color-primary !important; |
| | | border: 2rpx solid $uni-color-primary !important; |
| | | color: $uni-color-primary !important; |
| | | } |
| | | .box_head_item { |
| | | width: 156rpx; |
| | | text-align: center; |
| | | height: 60rpx; |
| | | line-height: 60rpx; |
| | | box-sizing: border-box; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | border-radius: 30rpx; |
| | | border: 1rpx solid #999999; |
| | | border: 2rpx solid #999999; |
| | | font-size: 26rpx; |
| | | font-weight: 400; |
| | | color: #333333; |
| | |
| | | <view class="main_app" :class="{ popupShow: isShowSelMem }">
|
| | | <view class="search_inp df_ac">
|
| | | <image class="mr12 search" src="../../static/ic_search@2x.png" mode="widthFix"></image>
|
| | | <input v-model="param.queryParam" @confirm="initData()" type="text" placeholder="搜索"
|
| | | <input v-model="param.queryParam" @confirm="initData()" confirm-type="search" type="text" placeholder="搜索"
|
| | | placeholder-style="color: #999999;" />
|
| | | </view>
|
| | | <view class="member_list">
|
| | |
| | | @blur="initData()" |
| | | type="text" |
| | | placeholder="请输入姓名进行搜索" |
| | | confirm-type="search" |
| | | placeholder-style="color: #999999;" |
| | | /> |
| | | </view> |
| | |
| | | v-model="search.title" |
| | | @blur="querylist" |
| | | type="text" |
| | | confirm-type="search" |
| | | placeholder="搜索任务名称" |
| | | /> |
| | | </view> |
| | |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | .active { |
| | | border: 1rpx solid #4c99a8 !important; |
| | | border: 2rpx solid #4c99a8 !important; |
| | | color: #4c99a8 !important; |
| | | } |
| | | .box_head_item { |
| | |
| | | line-height: 60rpx; |
| | | box-sizing: border-box; |
| | | border-radius: 30rpx; |
| | | border: 1rpx solid #999999; |
| | | border: 2rpx solid #999999; |
| | | font-size: 26rpx; |
| | | font-weight: 400; |
| | | color: #333333; |
| | |
| | | <view class="main_app" :style="{ height: windowHeight + 'px' }" :class="{ popupShow: isShowSelMem }">
|
| | | <view class="search_inp df_ac">
|
| | | <image class="mr12 search" src="@/static/ic_search@2x.png" mode="widthFix"></image>
|
| | | <input v-model="param.queryParam" @confirm="initData()" type="text" placeholder="搜索"
|
| | | <input v-model="param.queryParam" @confirm="initData()" confirm-type="search" type="text" placeholder="搜索"
|
| | | placeholder-style="color: #999999;" />
|
| | | </view>
|
| | | <view class="member_list">
|
| | |
| | | <text>*</text> |
| | | <text>预计用车时段</text> |
| | | </view> |
| | | <view class="value" @click="$goBack()"> |
| | | <view class="value" @click="goBack"> |
| | | <text class="mr6" :style="{ color: param.startTime ? '#000000' : '#999999' }"> |
| | | <text v-if="param.startTime"> |
| | | {{ param.startTime.slice(5, 16) }}至{{ |
| | |
| | | <text>*</text> |
| | | <text>申请车辆</text> |
| | | </view> |
| | | <view class="value" @click="$goBack()"> |
| | | <view class="value" @click="goBack"> |
| | | <input type="text" disabled placeholder="请输入申请车辆" v-model="param.carCode" |
| | | placeholder-style="color: #999999;" /> |
| | | </view> |
| | |
| | | this.$set(this.param, 'memberNames', res.map(i => i.realname).join(',')) |
| | | }) |
| | | }, |
| | | destroyed() { |
| | | console.log('页面销毁'); |
| | | // uni.setStorageSync('vehicleAppForm', {}) |
| | | }, |
| | | onLoad(option) { |
| | | console.log(option) |
| | | this.param = { ...this.param, ...option } |
| | | const param = uni.getStorageSync('vehicleAppForm') || {} |
| | | this.param = { ...param, ...option } |
| | | console.log(this.param); |
| | | this.minDate = new Date().getTime() |
| | | this.param.planUseDate = dayjs(this.param.startTime).format('YYYY-MM-DD HH:mm') |
| | | }, |
| | |
| | | ...param, |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | uni.setStorageSync('vehicleAppForm', {}) |
| | | setTimeout(() => { |
| | | uni.showToast({ |
| | | title: '提交成功', |
| | |
| | | } |
| | | this.$jump('/pages/staff/vehicle/applePeo') |
| | | }, |
| | | goBack() { |
| | | uni.setStorageSync('vehicleAppForm', this.param) |
| | | this.$goBack() |
| | | }, |
| | | confirmDate(e) { |
| | | this.param.planUseDate = dayjs(e.value).format('YYYY-MM-DD HH:mm') |
| | | this.isShowDatetime = false |
| | |
| | | },
|
| | | onLoad() {
|
| | | this.minDate = new Date().getTime() - (6 * 24 * 60 * 60 * 1000)
|
| | | this.initData()
|
| | | this.initData(); |
| | | uni.setStorageSync('vehicleAppForm', {})
|
| | | },
|
| | | methods: { |
| | | formatter(type, value) { |
| | |
| | | // this.minDate = new Date(dayjs().format('YYYY-MM-DD HH:mm') + ':00').getTime() |
| | | this.minDate = new Date().getTime() - (6 * 24 * 60 * 60 * 1000) |
| | | this.initData() |
| | | uni.setStorageSync('vehicleAppForm', {}) |
| | | }, |
| | | methods: { |
| | | formatter(type, value) { |
| | |
| | | v-model="param.name" |
| | | @confirm="initData()" |
| | | type="text" |
| | | confirm-type="search" |
| | | placeholder="请输入姓名进行搜索" |
| | | placeholder-style="color: #999999;" |
| | | /> |
| | |
| | | type="text" |
| | | placeholder="搜索车辆牌照" |
| | | placeholder-class="placeholder9" |
| | | confirm-type="search" |
| | | @confirm="handleQuery" |
| | | /> |
| | | </view> |
| | |
| | | </view> |
| | | <!-- --> |
| | | <view class="dataList"> |
| | | <view class="item" v-for="item in platformLineUpList" :key="item.id"> |
| | | <view class="item" v-for="item,i in platformLineUpList" :key="i"> |
| | | <view class="head"> |
| | | <view v-if="item.carCodeFront" class="code"> |
| | | <text>{{ item.carCodeFront.slice(0, 1) }}</text> |
| | |
| | | <text>·</text> |
| | | <text>{{ item.carCodeFront.slice(2) }}</text> |
| | | </view> |
| | | <view class="status green" v-if="item.status == 2">月台等待</view > |
| | | <!-- <view class="status green" v-if="item.status == 2">月台等待</view > --> |
| | | <view class="status green" v-if="item.status == 2">等待叫号</view > |
| | | <view class="status" v-if="item.status == 3">入园等待</view > |
| | | <view class="status" v-if="item.status == 7">转移中</view > |
| | | </view> |
| | |
| | | |
| | | @Override |
| | | public List<HiddenDanger> findList(HiddenDanger hiddenDanger) { |
| | | hiddenDanger.setIsdeleted(Constants.ZERO); |
| | | QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger); |
| | | return hiddenDangerMapper.selectList(wrapper); |
| | | } |
| | |
| | | |
| | | @Override |
| | | public long count(HiddenDanger hiddenDanger) { |
| | | hiddenDanger.setIsdeleted(Constants.ZERO); |
| | | QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger); |
| | | return hiddenDangerMapper.selectCount(wrapper); |
| | | } |
| | |
| | | //已作业数 |
| | | data.setWorkedNum(platformJobMapper.selectCount(new MPJLambdaWrapper<PlatformJob>() |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | .and(w->{w.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey());}) |
| | | .and(w->{w.in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey() |
| | | .and(w-> w.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey()) |
| | | .or().in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey() |
| | | ,Constants.PlatformJobStatus.AUTHED_LEAVE.getKey() |
| | | ,Constants.PlatformJobStatus.LEAVED.getKey()) |
| | | .apply("to_days(done_date) = to_days(now())");}) |
| | | .and(w->{w.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.EXCEPTION.getKey()) |
| | | .apply("to_days(error_date) = to_days(now())");}) |
| | | .and(w->{w.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.TRANSFERING.getKey()) |
| | | .apply("to_days(trans_platform_date) = to_days(now())");}) |
| | | ,Constants.PlatformJobStatus.LEAVED.getKey()).apply("to_days(done_date) = to_days(now())") |
| | | .or().eq(PlatformJob::getStatus,Constants.PlatformJobStatus.EXCEPTION.getKey()).apply("to_days(done_date) = to_days(now())") |
| | | .or().eq(PlatformJob::getStatus,Constants.PlatformJobStatus.TRANSFERING.getKey()).apply("to_days(trans_platform_date) = to_days(now())") |
| | | ) |
| | | // .and(w->{w.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey());}) |
| | | // .and(w->{w.in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey() |
| | | // ,Constants.PlatformJobStatus.AUTHED_LEAVE.getKey() |
| | | // ,Constants.PlatformJobStatus.LEAVED.getKey()) |
| | | // .apply("to_days(done_date) = to_days(now())");}) |
| | | // .and(w->{w.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.EXCEPTION.getKey()) |
| | | // .apply("to_days(error_date) = to_days(now())");}) |
| | | // .and(w->{w.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.TRANSFERING.getKey()) |
| | | // .apply("to_days(trans_platform_date) = to_days(now())");}) |
| | | ).intValue()); |
| | | |
| | | data.setVideoPluginUrl(getVideoUrl()); |