¶Ô±ÈÐÂÎļþ |
| | |
| | | import request from '../../utils/request' |
| | | |
| | | // æ¥è¯¢ |
| | | export function fetchList (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/hiddenDanger/page', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | |
| | | // å建 |
| | | export function create (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/hiddenDanger/create', data) |
| | | } |
| | | |
| | | // ä¿®æ¹ |
| | | export function updateById (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/hiddenDanger/updateById', data) |
| | | } |
| | | |
| | | // å é¤ |
| | | export function deleteById (id) { |
| | | return request.get(`/visitsAdmin/cloudService/business/hiddenDanger/delete/${id}`) |
| | | } |
| | | |
| | | // æ¹éå é¤ |
| | | export function deleteByIdInBatch (ids) { |
| | | return request.get('/visitsAdmin/cloudService/business/hiddenDanger/delete/batch', { |
| | | params: { |
| | | ids |
| | | } |
| | | }) |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import request from '../../utils/request' |
| | | |
| | | // æ¥è¯¢ |
| | | export function fetchList (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/hiddenDangerParam/page', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | export function allList (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/hiddenDangerParam/list', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | // å建 |
| | | export function create (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/hiddenDangerParam/create', data) |
| | | } |
| | | |
| | | // ä¿®æ¹ |
| | | export function updateById (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/hiddenDangerParam/updateById', data) |
| | | } |
| | | |
| | | // å é¤ |
| | | export function deleteById (id) { |
| | | return request.get(`/visitsAdmin/cloudService/business/hiddenDangerParam/delete/${id}`) |
| | | } |
| | | |
| | | // æ¹éå é¤ |
| | | export function deleteByIdInBatch (ids) { |
| | | return request.get('/visitsAdmin/cloudService/business/hiddenDangerParam/delete/batch', { |
| | | params: { |
| | | ids |
| | | } |
| | | }) |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import request from '../../utils/request' |
| | | |
| | | // æ¥è¯¢ |
| | | export function fetchList (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/visitReason/page', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | export function allList (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/visitReason/list', data, { |
| | | trim: true |
| | | }) |
| | | } |
| | | // å建 |
| | | export function create (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/visitReason/create', data) |
| | | } |
| | | |
| | | // ä¿®æ¹ |
| | | export function updateById (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/visitReason/updateById', data) |
| | | } |
| | | |
| | | // å é¤ |
| | | export function deleteById (id) { |
| | | return request.get(`/visitsAdmin/cloudService/business/visitReason/delete/${id}`) |
| | | } |
| | | |
| | | // æ¹éå é¤ |
| | | export function deleteByIdInBatch (ids) { |
| | | return request.get('/visitsAdmin/cloudService/business/visitReason/delete/batch', { |
| | | params: { |
| | | ids |
| | | } |
| | | }) |
| | | } |
| | |
| | | font-weight: bold; |
| | | } |
| | | } |
| | | .status-blue{ |
| | | color: #3C77DA; |
| | | } |
| | | .status-green{ |
| | | color:green; |
| | | } |
| | | .status-red{ |
| | | color:red; |
| | | } |
| | | .tip-warn { |
| | | margin: 4px 0 25px 0; |
| | | font-size: 12px; |
| | | color: #999; |
| | | line-height: 25px; |
| | | i { |
| | | color: orange; |
| | | margin-right: 4px; |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="500px" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <el-form :model="form" ref="form" :rules="rules"> |
| | | <el-form-item label="åç§°" prop="name"> |
| | | <el-input v-model="form.name" placeholder="请è¾å
¥åç§°" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="æåºç (ååº)" prop="sortnum"> |
| | | <el-input v-model="form.sortnum" type="number" placeholder="请è¾å
¥æåºç " v-trim/> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.type==0" label="éæ©å®å
¨åï¼" prop="memberIdList"> |
| | | <el-select v-model="form.memberIdList" filterable multiple clearable placeholder="è¯·éæ©"> |
| | | <el-option |
| | | v-for="item in memberList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-form> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import { allList } from '@/api/business/member' |
| | | export default { |
| | | name: 'OperaHiddenDangerParamWindow', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow }, |
| | | data () { |
| | | return { |
| | | // è¡¨åæ°æ® |
| | | memberList: [], |
| | | form: { |
| | | id: null, |
| | | name: null, |
| | | memberIdList: null, |
| | | type: null, |
| | | sortnum: null |
| | | }, |
| | | // éªè¯è§å |
| | | rules: { |
| | | name: [ |
| | | { required: true, message: '请è¾å
¥åç§°' } |
| | | ] |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | api: '/business/hiddenDangerParam', |
| | | 'field.id': 'id' |
| | | }) |
| | | }, |
| | | methods: { |
| | | open (title, target,type) { |
| | | this.title = title |
| | | this.visible = true |
| | | this.form.type=type |
| | | this.loadMember() |
| | | // æ°å»ºç»ç» |
| | | if (target == null) { |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | this.form[this.configData['field.id']] = null |
| | | this.form.type=type |
| | | }) |
| | | return |
| | | } |
| | | // ç¼è¾ |
| | | this.$nextTick(() => { |
| | | for (const key in this.form) { |
| | | this.form[key] = target[key] |
| | | this.form.type=type |
| | | if (this.type ==0 && target.memberIds != null && target.memberIds != '') { |
| | | let t = target.memberIds.split(',') |
| | | this.form.memberIdList =[] |
| | | t.forEach(item =>{ |
| | | this.form.memberIdList.push(parseInt(item)) |
| | | }); |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | loadMember () { |
| | | allList({ |
| | | type: 2 |
| | | }) |
| | | .then(res => { |
| | | this.memberList = res |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | :visible.sync="visable" |
| | | @confirm="confirm" |
| | | @close="reject" |
| | | > |
| | | <div class="modal_wrap"> |
| | | <div class="modal_content"> |
| | | <div class="header"> |
| | | <div class="left"> |
| | | <div class="h1">鿣鿿</div> |
| | | <div class="time">ææ¥æ¶é´ï¼{{model.createDate}}</div> |
| | | </div> |
| | | <div class="right" v-if="model.status==0">å¾
å®¡æ ¸</div> |
| | | <div class="right" v-if="model.status==1">å·²å¤ç</div> |
| | | <div class="right" v-if="model.status==2">å·²æ¤é</div> |
| | | </div> |
| | | <div class="info"> |
| | | <div class="title">éæ£éææè¯¦æ
</div> |
| | | <div class="list"> |
| | | <div class="item"> |
| | | <div class="label">ææ¥äºº</div> |
| | | <div class="value">{{model.memberName || ''}} {{model.memberPhone || ''}}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="label">鿣åºå</div> |
| | | <div class="value">{{model.areaName || ''}}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="label">éæ£ç±»å</div> |
| | | <div class="value">{{model.categoryName || ''}}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="label">鿣æè¿°</div> |
| | | <div class="value">{{model.content || ''}}</div> |
| | | </div> |
| | | <div class="item"> |
| | | <div class="label">ç°åºæ
åµ</div> |
| | | <div class="value" v-if="model.submitFileList ==null || !model.submitFileList.length">æ </div> |
| | | <div class="value" v-if="model.submitFileList !=null && model.submitFileList.length"> |
| | | <span v-for="item in model.submitFileList" :key="item.id">{{item.fileurlFull}}</span> |
| | | </div> |
| | | </div> |
| | | <div class="item" v-if="model.status==1"> |
| | | <div class="label">å¤çå</div> |
| | | <div class="value"></div> |
| | | </div> |
| | | <div class="item" v-if="model.status==1"> |
| | | <div class="label">å¤çå</div> |
| | | <div class="value"></div> |
| | | </div> |
| | | <div class="item" v-if="model.status==1 || model.status==2"> |
| | | <div class="label">å¤ç说æ</div> |
| | | <div class="value">{{model.checkInfo}}</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="side"> |
| | | <div class="side_title">å®¡æ¹æµç¨</div> |
| | | <div class="list"> |
| | | <div class="item"> |
| | | <div class="separate"></div> |
| | | <div class="info"> |
| | | <i class="el-icon-success icon"></i> |
| | | <img src="" class="avatar" alt="" /> |
| | | <div class="content"> |
| | | <div class="line"> |
| | | <div class="name">åæåæ</div> |
| | | <div class="time">2020-02-02 12:20</div> |
| | | </div> |
| | | <div class="line"> |
| | | <div class="company">ä¸å½ç§»å¨æéå
¬å¸</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="item"> |
| | | <!-- <div v-if="" class="separate"></div> --> |
| | | <div class="info"> |
| | | <i class="el-icon-success icon"></i> |
| | | <img src="" class="avatar" alt="" /> |
| | | <div class="content"> |
| | | <div class="line"> |
| | | <div class="name">åæåæ</div> |
| | | <div class="time">2020-02-02 12:20</div> |
| | | </div> |
| | | <div class="line"> |
| | | <div class="company"> |
| | | ä¸å½ç§»å¨æéå
¬å¸( <span class="status">å·²åæ</span> ) |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="remark">æäº¤çº¦å¥½ç</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <!-- --> |
| | | <template #btns> |
| | | <el-button type="primary" plain @click="handleTransfer">转交</el-button> |
| | | </template> |
| | | <!-- åæ/æç» --> |
| | | <el-dialog |
| | | append-to-body |
| | | :title="apprTitle" |
| | | :visible.sync="isShowAppr" |
| | | width="480px" |
| | | > |
| | | <el-input |
| | | type="textarea" |
| | | :placeholder="apprTitle + '说æï¼éå¿
å¡«'" |
| | | :rows="4" |
| | | v-model="param.explain" |
| | | /> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="isShowAppr = false">åæ¶</el-button> |
| | | <el-button type="primary" @click="isShowAppr = false">ç¡®å®</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <!-- 鿣 --> |
| | | <el-dialog |
| | | append-to-body |
| | | title="鿣" |
| | | :visible.sync="isShowProblem" |
| | | width="480px" |
| | | > |
| | | <el-form :model="param" :rules="rules" ref="ruleForm" label-width="100px"> |
| | | <el-form-item label="éåæ¶é´"> |
| | | <el-date-picker |
| | | class="w300" |
| | | value-format="yyyy-MM-dd" |
| | | type="date" |
| | | placeholder="éæ©æ¥æ" |
| | | v-model="param.date" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="æ´æ¹å"> |
| | | <div class="df_ac"> |
| | | <img src="@/assets/avatar/man.png" /> |
| | | <el-upload |
| | | class="avatar-uploader" |
| | | action="https://jsonplaceholder.typicode.com/posts/" |
| | | :show-file-list="false" |
| | | :on-success="handleAvatarSuccess" |
| | | :before-upload="beforeAvatarUpload" |
| | | > |
| | | <img v-if="param.url" :src="param.url" class="avatar" /> |
| | | <div v-else class="upload_box"> |
| | | <el-icon class="el-icon-plus icon" /> |
| | | <div class="text">å¾ç/è§é¢</div> |
| | | </div> |
| | | </el-upload> |
| | | </div> |
| | | </el-form-item> |
| | | <el-form-item label="éå说æ"> |
| | | <el-input |
| | | type="textarea" |
| | | placeholder="请填å说æ" |
| | | :rows="4" |
| | | v-model="param.explain" |
| | | /> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="isShowProblem = false">åæ¶</el-button> |
| | | <el-button type="primary" @click="isShowProblem = false" |
| | | >ç¡®å®</el-button |
| | | > |
| | | </span> |
| | | </el-dialog> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | export default { |
| | | components: { GlobalWindow }, |
| | | data() { |
| | | return { |
| | | title: '访客é¢çº¦è¯¦æ
', |
| | | visable: false, |
| | | model: { }, |
| | | isShowAppr: false, |
| | | apprTitle: 'åæ', |
| | | param: {}, |
| | | isShowProblem: false, |
| | | rules: {} |
| | | } |
| | | }, |
| | | methods: { |
| | | open(title,target){ |
| | | this.title =title |
| | | this.visable=true |
| | | this.model = target |
| | | }, |
| | | confirm() { |
| | | console.log('--') |
| | | }, |
| | | handleTransfer() { |
| | | this.isShowProblem = true |
| | | }, |
| | | reject() { }, |
| | | handleAvatarSuccess() { }, |
| | | beforeAvatarUpload() { } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .upload_box { |
| | | width: 84px; |
| | | height: 84px; |
| | | border-radius: 4px; |
| | | background-color: #f7f7f7; |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: center; |
| | | align-items: center; |
| | | color: #999999; |
| | | border: 1px solid #e4e4e4; |
| | | .icon { |
| | | font-size: 24px; |
| | | } |
| | | .text { |
| | | font-size: 12px; |
| | | } |
| | | } |
| | | .modal_wrap { |
| | | display: flex; |
| | | height: 100%; |
| | | .modal_content { |
| | | flex: 1; |
| | | padding: 0px 30px; |
| | | border-radius: 8px; |
| | | overflow: hidden; |
| | | height: 100%; |
| | | |
| | | .title { |
| | | font-weight: 600; |
| | | font-size: 18px; |
| | | color: #333333; |
| | | margin-bottom: 20px; |
| | | margin-top: 30px; |
| | | } |
| | | |
| | | .info { |
| | | .list { |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | |
| | | .item { |
| | | display: flex; |
| | | width: 40%; |
| | | margin-bottom: 20px; |
| | | &:nth-of-type(2n) { |
| | | width: 60%; |
| | | } |
| | | |
| | | .label { |
| | | color: #888888; |
| | | width: 68px; |
| | | } |
| | | |
| | | .value { |
| | | color: #111111; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .header { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | padding: 20px 30px; |
| | | margin: 0 -30px; |
| | | border-radius: 8px 8px 0 0; |
| | | background: linear-gradient(to right, #f2f6fe, #cadffa); |
| | | |
| | | .h1 { |
| | | font-weight: 600; |
| | | font-size: 22px; |
| | | color: #111111; |
| | | margin-bottom: 8px; |
| | | } |
| | | |
| | | .time { |
| | | font-size: 14px; |
| | | color: #999999; |
| | | } |
| | | |
| | | .right { |
| | | height: 40px; |
| | | font-size: 16px; |
| | | color: #ffffff; |
| | | line-height: 40px; |
| | | padding: 0 20px; |
| | | background: #207ff7; |
| | | box-shadow: 4px 4px 0px 0px rgba(32, 127, 247, 0.16); |
| | | border-radius: 16px 0px 16px 0px; |
| | | } |
| | | } |
| | | .table_info { |
| | | .name_wrap { |
| | | display: flex; |
| | | align-items: center; |
| | | .avatar { |
| | | width: 40px; |
| | | height: 40px; |
| | | border-radius: 50%; |
| | | margin-right: 12px; |
| | | } |
| | | .content { |
| | | .line { |
| | | display: flex; |
| | | } |
| | | .tag { |
| | | color: #b2cbf9; |
| | | border: 1px solid #b2cbf9; |
| | | padding: 0px 4px; |
| | | border-radius: 4px; |
| | | margin-left: 6px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .side { |
| | | height: 100%; |
| | | width: 420px; |
| | | background: #ffffff; |
| | | border-left: 20px solid #f7f7f7; |
| | | .list { |
| | | .item { |
| | | padding: 8px 0; |
| | | position: relative; |
| | | .separate { |
| | | position: absolute; |
| | | border-left: 2px dashed #cccccc; |
| | | left: 51px; |
| | | height: calc(100% - 24px); |
| | | top: 46px; |
| | | } |
| | | .info { |
| | | display: flex; |
| | | align-items: center; |
| | | margin-left: 40px; |
| | | .icon { |
| | | position: relative; |
| | | z-index: 11; |
| | | color: #53b76f; |
| | | font-size: 24px; |
| | | } |
| | | .avatar { |
| | | width: 40px; |
| | | height: 40px; |
| | | border-radius: 50%; |
| | | margin: 0 12px 0 16px; |
| | | border: 1px solid; |
| | | } |
| | | .content { |
| | | flex: 1; |
| | | .line { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-content: center; |
| | | margin-bottom: 6px; |
| | | .name { |
| | | font-weight: 600; |
| | | font-size: 16px; |
| | | color: #111111; |
| | | } |
| | | .time { |
| | | color: #888888; |
| | | } |
| | | .company { |
| | | font-size: 13px; |
| | | color: #888888; |
| | | .status { |
| | | color: #00ba67; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .remark { |
| | | background: #f7f7f7; |
| | | border-radius: 4px; |
| | | padding: 13px 15px; |
| | | color: #666666; |
| | | margin-left: 120px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="500px" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <el-form :model="form" ref="form" :rules="rules"> |
| | | <el-form-item label="äºç±" prop="title"> |
| | | <el-input v-model="form.title" placeholder="请è¾å
¥åç§°" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="æåºç (ååº)" prop="sortnum"> |
| | | <el-input v-model="form.sortnum" type="number" placeholder="请è¾å
¥æåºç " v-trim/> |
| | | </el-form-item> |
| | | </el-form> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | export default { |
| | | name: 'OperaVisitreasonWindow', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow }, |
| | | data () { |
| | | return { |
| | | // è¡¨åæ°æ® |
| | | memberList: [], |
| | | form: { |
| | | id: null, |
| | | title: null, |
| | | sortnum: null |
| | | }, |
| | | // éªè¯è§å |
| | | rules: { |
| | | title: [ |
| | | { required: true, message: '请è¾å
¥äºç±' } |
| | | ] |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | api: '/business/visitReason', |
| | | 'field.id': 'id' |
| | | }) |
| | | }, |
| | | methods: { |
| | | open (title, target) { |
| | | this.title = title |
| | | this.visible = true |
| | | // æ°å»ºç»ç» |
| | | if (target == null) { |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | this.form[this.configData['field.id']] = null |
| | | }) |
| | | return |
| | | } |
| | | // ç¼è¾ |
| | | this.$nextTick(() => { |
| | | for (const key in this.form) { |
| | | this.form[key] = target[key] |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | |
| | | <el-option label="åæ¥å¤±è´¥" value="2"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="" > |
| | | <el-checkbox style="font-size: 12px" label="1" v-model="searchForm.includeChild" key="1" >æ¯å¦å
å«ä¸çº§ç»ç»</el-checkbox> |
| | | </el-form-item> |
| | | <section> |
| | | <el-button type="primary" @click="search">æç´¢</el-button> |
| | | <el-button @click="reset">éç½®</el-button> |
| | | </section> |
| | | </el-form> |
| | | <template v-slot:menu> |
| | | <div style="width: 100%; height: 50px; background: rgba(242, 242, 242, 1); line-height: 50px; text-align: center; font-size: 14px;">ä¼ä¸ç»ç»æ¶æ</div> |
| | | <div style="width: 100%; height: 50px; background: rgba(242, 242, 242, 1); line-height: 50px; text-align: center; font-size: 14px;">ä¼ä¸ç»ç»æ¶æ</div>areaSet |
| | | <div style="width: 100%; height: calc(100vh - 170px); overflow-y: scroll;"> |
| | | <Tree :list="companyTree" :defaultProps="{name: 'name', status: 'fsStatus', children: 'childList', id: 'id'}" @callback="callback" /> |
| | | </div> |
| | |
| | | <li><el-button type="primary" @click="$refs.OperaMemberImportWindow.open('人å导å
¥',searchForm.companyType)" icon="el-icon-plus" v-permissions="['business:member:create']">人å导å
¥</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:member:delete']">æ¹éå é¤</el-button></li> |
| | | <li><el-button type="primary" v-permissions="['business:empower:create']" @click="startEmpowerBatch()" icon="el-icon-plus">ä¸åææ</el-button></li> |
| | | <li style="float: right"> |
| | | <el-checkbox style="font-size: 12px" label="1" v-model="searchForm.includeChild" key="1" @change="search" >æ¯å¦å
å«ä¸çº§ç»ç»</el-checkbox> |
| | | </li> |
| | | </ul> |
| | | <el-table |
| | | v-loading="isWorking.search" |
| | |
| | | <template> |
| | | <div class="main_app"> |
| | | <div class="table_btns"> |
| | | <el-button icon="el-icon-plus" @click="handleEdit()" type="primary" |
| | | >æ°å»º</el-button |
| | | <TableLayout :permissions="['business:member:query']"> |
| | | <!-- æç´¢è¡¨å --> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="120px" inline> |
| | | <el-form-item label="æè®¿äºç±" prop="name"> |
| | | <el-input v-model="searchForm.title" clearable placeholder="请è¾å
¥æè®¿äºç±" @keypress.enter.native="search"></el-input> |
| | | </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:visitreason:create','business:visitreason:delete']"> |
| | | <li><el-button type="primary" @click="$refs.OperaVisitreasonWindow.open('æ°å»ºæè®¿äºç±',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:visitreason:create']">æ°å»º</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:visitreason:delete']">æ¹éå é¤</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | v-loading="isWorking.search" |
| | | :data="tableData.list" |
| | | stripe |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | </div> |
| | | <el-table v-loading="loading" :data="list" stripe> |
| | | <el-table-column |
| | | prop="name" |
| | | label="æè®¿äºç±" |
| | | min-width="100" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | prop="name" |
| | | label="æåºç " |
| | | min-width="80" |
| | | ></el-table-column> |
| | | <el-table-column label="æä½" width="230" fixed="right"> |
| | | <!-- v-permissions="['business:company:update']" --> |
| | | <template slot-scope="{ row }"> |
| | | <el-button type="text" icon="el-icon-edit" @click="handleEdit(row)" |
| | | >ç¼è¾</el-button |
| | | > |
| | | <el-button |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDel(row)" |
| | | class="red" |
| | | >å é¤</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="getList" |
| | | :pagination="pagination" |
| | | /> |
| | | <!-- --> |
| | | <el-dialog title="æè®¿äºç±" :visible.sync="isShowEdit" width="480px"> |
| | | <el-form :model="param" :rules="rules" ref="ruleForm" label-width="100px"> |
| | | <el-form-item label="æè®¿äºç±"> |
| | | <el-input type="text" placeholder="请è¾å
¥" v-model="param.explain" /> |
| | | </el-form-item> |
| | | <el-form-item label="æåºç "> |
| | | <el-input |
| | | type="text" |
| | | placeholder="请è¾å
¥" |
| | | oninput="value=value.replace(/^(0+)|[^\d]+/g, '').slice(0, 6)" |
| | | v-model="param.sortNum" |
| | | /> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="isShowEdit = false">åæ¶</el-button> |
| | | <el-button type="primary" @click="handleSub">ç¡®å®</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="title" label="æè®¿äºç±" min-width="200px"></el-table-column> |
| | | <el-table-column prop="sortnum" label="æåºç " min-width="100px"></el-table-column> |
| | | <el-table-column prop="editDate" label="æä½æ¶é´" min-width="200px"></el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:visitreason:update', 'business:visitreason:delete' ])" |
| | | label="æä½" |
| | | min-width="250" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" @click="$refs.OperaVisitreasonWindow.open('ç¼è¾æè®¿äºç±',row,searchForm.type)" v-permissions="['business:visitreason:update']">ç¼è¾</el-button> |
| | | <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" v-permissions="['business:visitreason:delete']">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | </pagination> |
| | | </template> |
| | | <!-- æ°å»º/ä¿®æ¹ --> |
| | | <OperaVisitreasonWindow ref="OperaVisitreasonWindow" @success="handlePageChange"/> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import OperaVisitreasonWindow from '@/components/business/OperaVisitreasonWindow' |
| | | export default { |
| | | components: { |
| | | Pagination |
| | | }, |
| | | name: 'areaSet', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination, OperaVisitreasonWindow }, |
| | | data () { |
| | | return { |
| | | loading: false, |
| | | pagination: { |
| | | capacity: 10, |
| | | page: 1 |
| | | }, |
| | | list: [{}], |
| | | total: 0, |
| | | |
| | | isShowEdit: false, |
| | | param: {}, |
| | | rules: {} |
| | | // æç´¢ |
| | | searchForm: { |
| | | title: '' |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: 'æè®¿äºç±é
ç½®', |
| | | api: '/business/visitReason', |
| | | 'field.id': 'id', |
| | | 'field.main': 'id' |
| | | }) |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | handleSub () { |
| | | this.$refs.ruleForm.validate((valid) => { |
| | | if (valid) { |
| | | alert('submit!') |
| | | } |
| | | }) |
| | | }, |
| | | handleEdit (row) { |
| | | this.isShowEdit = true |
| | | }, |
| | | handleDel (row) { |
| | | this.$confirm('确认å é¤æè®¿äºç±', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | |
| | | }) |
| | | }, |
| | | getList (page) { }, |
| | | clear () { }, |
| | | handleSizeChange (capacity) { |
| | | this.pagination.capacity = capacity |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | </style> |
| | |
| | | <template> |
| | | <div class="main_app"> |
| | | <div class="mb20"> |
| | | <el-button type="primary" @click="handleEdit()">æ°å¢</el-button> |
| | | </div> |
| | | <el-table v-loading="loading" :data="list" stripe> |
| | | <el-table-column |
| | | prop="name" |
| | | label="鿣åºå" |
| | | min-width="100" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="æåºç " |
| | | min-width="100" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="å®å
¨å" |
| | | min-width="100" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="æä½" |
| | | min-width="80" |
| | | align="center" |
| | | show-overflow-tooltip |
| | | <TableLayout :permissions="['business:member:query']"> |
| | | <!-- æç´¢è¡¨å --> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="120px" inline> |
| | | <el-form-item label="鿣åºå" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请è¾å
¥éæ£åºå" @keypress.enter.native="search"></el-input> |
| | | </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:hiddendangerparam:create','business:hiddendangerparam:delete']"> |
| | | <li><el-button type="primary" @click="$refs.OperaHiddenDangerParamWindow.open('æ°å»ºéæ£åºå',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:hiddendangerparam:create']">æ°å»º</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:hiddendangerparam:delete']">æ¹éå é¤</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | v-loading="isWorking.search" |
| | | :data="tableData.list" |
| | | stripe |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <template v-slot="scope"> |
| | | <el-button type="text" @click="handleEdit(scope.row)">ç¼è¾</el-button> |
| | | <el-button type="text" class="red" @click="handleDel(scope.row)" |
| | | >å é¤</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="getList" |
| | | :pagination="pagination" |
| | | /> |
| | | <el-dialog |
| | | :title="param.id ? 'ç¼è¾éæ£åºå' : 'æ°å¢éæ£åºå'" |
| | | :visible.sync="isShowEdit" |
| | | width="480px" |
| | | > |
| | | <el-form :model="param" :rules="rules" ref="ruleForm" label-width="100px"> |
| | | <el-form-item label="鿣åºå" prop="name"> |
| | | <el-input v-model="param.aaa"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æåºç (ååº)" prop="name"> |
| | | <el-input |
| | | v-model="param.ccc" |
| | | oninput="value=value.replace(/^(0+)|[^\d]+/g, '').slice(0, 7)" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="å®å
¨å" prop="name"> |
| | | <el-select placeholder="è¯·éæ©ï¼å¤é" multiple filterable> |
| | | <el-option></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="isShowEdit = false">åæ¶</el-button> |
| | | <el-button type="primary" @click="handleSub">ç¡®å®</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="name" label="鿣åºå" min-width="200px"></el-table-column> |
| | | <el-table-column prop="sortnum" label="æåºç " min-width="100px"></el-table-column> |
| | | <el-table-column prop="memberNames" label="å®å
¨å" min-width="200px"></el-table-column> |
| | | <el-table-column prop="editDate" label="æä½æ¶é´" min-width="200px"></el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:hiddendangerparam:update', 'business:hiddendangerparam:delete' ])" |
| | | label="æä½" |
| | | min-width="250" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" @click="$refs.OperaHiddenDangerParamWindow.open('ç¼è¾éæ£åºå',row,searchForm.type)" v-permissions="['business:hiddendangerparam:update']">ç¼è¾</el-button> |
| | | <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" v-permissions="['business:hiddendangerparam:delete']">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | </pagination> |
| | | </template> |
| | | <!-- æ°å»º/ä¿®æ¹ --> |
| | | <OperaHiddenDangerParamWindow ref="OperaHiddenDangerParamWindow" @success="handlePageChange"/> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import OperaHiddenDangerParamWindow from '@/components/business/OperaHiddenDangerParamWindow' |
| | | export default { |
| | | components: { |
| | | Pagination |
| | | }, |
| | | name: 'areaSet', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination, OperaHiddenDangerParamWindow }, |
| | | data () { |
| | | return { |
| | | loading: false, |
| | | pagination: { |
| | | capacity: 10, |
| | | page: 1 |
| | | }, |
| | | list: [], |
| | | total: 0, |
| | | isShowEdit: false, |
| | | param: {}, |
| | | rules: {} |
| | | // æç´¢ |
| | | searchForm: { |
| | | name: '', |
| | | type:0 |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: '鿣鿿é
ç½®', |
| | | api: '/business/hiddenDangerParam', |
| | | 'field.id': 'id', |
| | | 'field.main': 'id' |
| | | }) |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | handleSub () { |
| | | this.$refs.ruleForm.validate((valid) => { |
| | | if (valid) { |
| | | alert('submit!') |
| | | } |
| | | }) |
| | | }, |
| | | getList (page) { }, |
| | | clear () { }, |
| | | handleEdit (row) { |
| | | this.isShowEdit = true |
| | | }, |
| | | handleDel () { }, |
| | | handleSizeChange (capacity) { |
| | | this.pagination.capacity = capacity |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | </style> |
| | |
| | | <template> |
| | | <div class="main_app"> |
| | | <QueryForm |
| | | v-model="filters" |
| | | :query-form-config="queryFormConfig" |
| | | @handleQuery="getList(1)" |
| | | @clear="clear" |
| | | /> |
| | | <el-table v-loading="loading" :data="list" stripe> |
| | | <el-table-column |
| | | prop="name" |
| | | label="鿣åºå" |
| | | min-width="100" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="éæ£ç±»å" |
| | | min-width="100" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="ææ¥äºº" |
| | | min-width="100" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="ææ¥æ¶é´" |
| | | min-width="80" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="å¤çç»æ" |
| | | min-width="100" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="æä½" |
| | | min-width="80" |
| | | show-overflow-tooltip |
| | | <TableLayout :permissions="['business:empower:query']"> |
| | | <!-- æç´¢è¡¨å --> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="ææ¥äºº" prop="memberName"> |
| | | <el-input v-model="searchForm.memberName" 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="areaId"> |
| | | <el-select v-model="searchForm.areaId" placeholder="è¯·éæ©éæ£åºå" @keypress.enter.native="search"> |
| | | <el-option |
| | | v-for="item in areaList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="éæ£ç±»å" prop="typeId"> |
| | | <el-select v-model="searchForm.cateId" placeholder="è¯·éæ©éæ£ç±»å" @keypress.enter.native="search"> |
| | | <el-option |
| | | v-for="item in cateList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="ææ¥æ¶é´" prop="startTime"> |
| | | <el-date-picker |
| | | @change="seleTime" |
| | | v-model="time" |
| | | @keypress.enter.native="search" |
| | | 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> |
| | | <el-radio-group v-model="searchForm.radio" size="small" @input="changeRadio"> |
| | | <el-radio-button label="0">å½å¤©</el-radio-button> |
| | | <el-radio-button label="1">è¿7天</el-radio-button> |
| | | <el-radio-button label="2">è¿30天</el-radio-button> |
| | | </el-radio-group> |
| | | <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:empower:create', 'business:empower:delete']"> |
| | | <!--<li><el-button type="primary" v-permissions="['business:empower:exportExcel']" @click="exportExcel">导åº</el-button></li> --> |
| | | </ul> |
| | | <el-table |
| | | v-loading="isWorking.search" |
| | | :data="tableData.list" |
| | | stripe |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <template v-slot="scope"> |
| | | <el-button type="text" @click="handleDetail(scope.row)">æ¥ç详æ
</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="getList" |
| | | :pagination="pagination" |
| | | /> |
| | | </div> |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="areaName" label="鿣åºå" min-width="150px"></el-table-column> |
| | | <el-table-column prop="categoryName" label="éæ£ç±»å" min-width="150px"></el-table-column> |
| | | <el-table-column prop="memberName" label="ææ¥äºº" min-width="80px"></el-table-column> |
| | | <el-table-column prop="companyName" label="æå±ç»ç»" min-width="150px"></el-table-column> |
| | | <el-table-column prop="createDate" label="ææ¥æ¶é´" min-width="150px"></el-table-column> |
| | | <el-table-column label="å¤çç»æ" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span class="status-blue" v-if="row.status === 0">å¾
å¤ç</span> |
| | | <span class="status-green" v-if="row.status === 1">å·²å¤ç</span> |
| | | <span class="status-red" v-if="row.status === 2">å·²æ¤é</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="editDate" label="æä½æ¶é´" min-width="150px"></el-table-column> |
| | | <el-table-column |
| | | label="æä½" |
| | | min-width="100" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" @click="$refs.OperaHiddenDangerWindow.open('éæ£éææè¯¦æ
',row)" >æ¥ç详æ
</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | </pagination> |
| | | </template> |
| | | <OperaHiddenDangerWindow ref="OperaHiddenDangerWindow" @success="handlePageChange"/> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import QueryForm from '@/components/common/QueryForm' |
| | | import OperaHiddenDangerWindow from '@/components/business/OperaHiddenDangerWindow' |
| | | import { timeForMat } from '@/utils/util' |
| | | import { allList } from '@/api/business/hiddenDangerParam' |
| | | export default { |
| | | components: { |
| | | Pagination, |
| | | QueryForm |
| | | }, |
| | | name: 'Empower', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination ,OperaHiddenDangerWindow}, |
| | | data () { |
| | | return { |
| | | filters: {}, |
| | | loading: false, |
| | | queryFormConfig: { |
| | | formItems: [ |
| | | { |
| | | filed: 'name', |
| | | type: 'select', |
| | | label: '鿣åºå', |
| | | options: [] |
| | | }, |
| | | { |
| | | filed: 'name', |
| | | type: 'select', |
| | | label: 'éæ£ç±»å', |
| | | options: [] |
| | | }, |
| | | { |
| | | filed: 'selDate', |
| | | type: 'daterange', |
| | | label: 'éæ£ææ¥æ¥æ' |
| | | } |
| | | ], |
| | | online: true |
| | | // æç´¢ |
| | | searchForm: { |
| | | memberName: '', |
| | | companyName: '', |
| | | queryStartTime: '', |
| | | queryEndTime: '', |
| | | areaId: null, |
| | | cateId: null |
| | | }, |
| | | pagination: { |
| | | capacity: 10, |
| | | page: 1 |
| | | }, |
| | | list: [], |
| | | total: 0 |
| | | cateList: [], |
| | | areaList: [], |
| | | time: [] |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: 'éæ£éææç®¡ç', |
| | | api: '/business/hiddenDanger', |
| | | 'field.id': 'id', |
| | | 'field.main': 'id' |
| | | }) |
| | | // this.search() |
| | | this.changeRadio('0') |
| | | this.loadParams() |
| | | }, |
| | | methods: { |
| | | handleDetail () {}, |
| | | getList (page) { }, |
| | | clear () { }, |
| | | handleSizeChange (capacity) { |
| | | this.pagination.capacity = capacity |
| | | changeRadio (e) { |
| | | this.searchForm.radio = e |
| | | if (e === '0') { |
| | | this.searchForm.queryStartTime = timeForMat(0)[0] |
| | | this.searchForm.queryEndTime = timeForMat(0)[1] |
| | | this.time = timeForMat(0) |
| | | } else if (e === '1') { |
| | | this.searchForm.queryStartTime = timeForMat(6)[0] |
| | | this.searchForm.queryEndTime = timeForMat(6)[1] |
| | | this.time = timeForMat(6) |
| | | } else if (e === '2') { |
| | | this.searchForm.queryStartTime = timeForMat(29)[0] |
| | | this.searchForm.queryEndTime = timeForMat(29)[1] |
| | | this.time = timeForMat(29) |
| | | } |
| | | this.search() |
| | | }, |
| | | loadParams () { |
| | | allList({ |
| | | }) |
| | | .then(res => { |
| | | if (res != null && res.length) { |
| | | res.forEach(item => { |
| | | if (item && item.type != null && item.type === 0) { |
| | | this.areaList.push(item) |
| | | } |
| | | if (item && item.type != null && item.type === 1) { |
| | | this.cateList.push(item) |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | .catch(e => { |
| | | // this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | }) |
| | | }, |
| | | seleTime (e) { |
| | | this.searchForm.queryStartTime = e[0] |
| | | this.searchForm.queryEndTime = e[1] |
| | | this.searchForm.radio = null |
| | | this.search() |
| | | }, |
| | | reset () { |
| | | this.$refs.searchForm.resetFields() |
| | | this.searchForm.radio = '0' |
| | | this.changeRadio('0') |
| | | // this.search() |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | </style> |
| | |
| | | <template> |
| | | <div class="main_app"> |
| | | <div class="mb20"> |
| | | <el-button type="primary" @click="handleEdit()">æ°å¢</el-button> |
| | | </div> |
| | | <el-table v-loading="loading" :data="list" stripe> |
| | | <el-table-column |
| | | prop="name" |
| | | label="éæ£ç±»å" |
| | | min-width="100" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="æåºç " |
| | | min-width="100" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | | prop="name" |
| | | label="æä½" |
| | | min-width="80" |
| | | align="center" |
| | | show-overflow-tooltip |
| | | <TableLayout :permissions="['business:member:query']"> |
| | | <!-- æç´¢è¡¨å --> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="120px" inline> |
| | | <el-form-item label="éæ£ç±»å" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请è¾å
¥éæ£ç±»å" @keypress.enter.native="search"></el-input> |
| | | </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:hiddendangerparam:create','business:hiddendangerparam:delete']"> |
| | | <li><el-button type="primary" @click="$refs.OperaHiddenDangerParamWindow.open('æ°å»ºéæ£ç±»å',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:hiddendangerparam:create']">æ°å»º</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:hiddendangerparam:delete']">æ¹éå é¤</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | v-loading="isWorking.search" |
| | | :data="tableData.list" |
| | | stripe |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <template v-slot="scope"> |
| | | <el-button type="text" @click="handleEdit(scope.row)">ç¼è¾</el-button> |
| | | <el-button type="text" class="red" @click="handleDel(scope.row)" |
| | | >å é¤</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="getList" |
| | | :pagination="pagination" |
| | | /> |
| | | <el-dialog |
| | | :title="param.id ? 'ç¼è¾éæ£ç±»å' : 'æ°å¢éæ£ç±»å'" |
| | | :visible.sync="isShowEdit" |
| | | width="480px" |
| | | > |
| | | <el-form :model="param" :rules="rules" ref="ruleForm" label-width="100px"> |
| | | <el-form-item label="éæ£ç±»å" prop="name"> |
| | | <el-input v-model="param.aaa"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æåºç (ååº)" prop="name"> |
| | | <el-input |
| | | oninput="value=value.replace(/^(0+)|[^\d]+/g, '').slice(0, 7)" |
| | | /> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="isShowEdit = false">åæ¶</el-button> |
| | | <el-button type="primary" @click="handleSub">ç¡®å®</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | <el-table-column type="selection" width="55"></el-table-column> |
| | | <el-table-column prop="name" label="éæ£ç±»å" min-width="200px"></el-table-column> |
| | | <el-table-column prop="sortnum" label="æåºç " min-width="100px"></el-table-column> |
| | | <el-table-column prop="editDate" label="æä½æ¶é´" min-width="200px"></el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:hiddendangerparam:update', 'business:hiddendangerparam:delete' ])" |
| | | label="æä½" |
| | | min-width="250" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" @click="$refs.OperaHiddenDangerParamWindow.open('ç¼è¾éæ£ç±»å',row,searchForm.type)" v-permissions="['business:hiddendangerparam:update']">ç¼è¾</el-button> |
| | | <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" v-permissions="['business:hiddendangerparam:delete']">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | </pagination> |
| | | </template> |
| | | <!-- æ°å»º/ä¿®æ¹ --> |
| | | <OperaHiddenDangerParamWindow ref="OperaHiddenDangerParamWindow" @success="handlePageChange"/> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import OperaHiddenDangerParamWindow from '@/components/business/OperaHiddenDangerParamWindow' |
| | | export default { |
| | | components: { |
| | | Pagination |
| | | }, |
| | | name: 'areaSet', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination, OperaHiddenDangerParamWindow }, |
| | | data () { |
| | | return { |
| | | loading: false, |
| | | pagination: { |
| | | capacity: 10, |
| | | page: 1 |
| | | }, |
| | | list: [], |
| | | total: 0, |
| | | isShowEdit: false, |
| | | param: {}, |
| | | rules: {} |
| | | // æç´¢ |
| | | searchForm: { |
| | | name: '', |
| | | type:1 |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: '鿣鿿é
置类å', |
| | | api: '/business/hiddenDangerParam', |
| | | 'field.id': 'id', |
| | | 'field.main': 'id' |
| | | }) |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | handleSub () { |
| | | this.$refs.ruleForm.validate((valid) => { |
| | | if (valid) { |
| | | alert('submit!') |
| | | } |
| | | }) |
| | | }, |
| | | getList (page) { }, |
| | | clear () { }, |
| | | handleEdit (row) { |
| | | this.isShowEdit = true |
| | | }, |
| | | handleDel () { }, |
| | | handleSizeChange (capacity) { |
| | | this.pagination.capacity = capacity |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | </style> |
| | |
| | | <el-table-column prop="memberName" label="å§å" min-width="100px"></el-table-column> |
| | | <el-table-column prop="memberPhone" label="ææºå·" min-width="100px"></el-table-column> |
| | | <el-table-column prop="companyName" label="ç»ç»" min-width="100px"></el-table-column> |
| | | <el-table-column prop="startTime" label="æææ" min-width="100px"> |
| | | <el-table-column prop="startTime" label="æææ" min-width="130px"> |
| | | <template slot-scope="{row}"> |
| | | <span>{{validity(row.startTime, row.endTime)}}</span> |
| | | <!-- <span v-if="!row.startTime || !row.endTime">é¿æ</span>--> |
| | |
| | | * @return java.util.Date |
| | | */ |
| | | public java.util.Date getStart (java.util.Date date) { |
| | | if(date ==null){ |
| | | return null; |
| | | } |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(date); |
| | | calendar.set(Calendar.HOUR_OF_DAY, 0); |
| | |
| | | * @return java.util.Date |
| | | */ |
| | | public java.util.Date getEnd (java.util.Date date) { |
| | | if(date ==null){ |
| | | return null; |
| | | } |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(date); |
| | | calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) + 1); |
| | |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author æ±è¹è¹ |
| | | * @since 2024/04/28 16:06 |
| | |
| | | return ApiResponse.success(null); |
| | | } |
| | | |
| | | @ApiOperation("æ¥è¯¢å
¨é¨") |
| | | @PostMapping("/list") |
| | | @CloudRequiredPermission("business:hiddendangerparam:query") |
| | | public ApiResponse<List<HiddenDangerParam>> findPage (@RequestBody HiddenDangerParam pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ |
| | | return ApiResponse.success(hiddenDangerParamService.findList(pageWrap)); |
| | | } |
| | | @ApiOperation("å页æ¥è¯¢") |
| | | @PostMapping("/page") |
| | | @CloudRequiredPermission("business:hiddendangerparam:query") |
| | |
| | | package com.doumee.dao.business.model; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.doumee.core.annotation.excel.ExcelColumn; |
| | | import com.doumee.core.model.LoginUserModel; |
| | | import io.swagger.annotations.ApiModel; |
| | |
| | | import lombok.Data; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 鿣åºåé
置类åä¿¡æ¯è¡¨ |
| | |
| | | |
| | | @ApiModelProperty(value = "å建æ¶é´") |
| | | @ExcelColumn(name="å建æ¶é´") |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date createDate; |
| | | |
| | | @ApiModelProperty(value = "æ´æ°äººç¼ç ", example = "1") |
| | |
| | | |
| | | @ApiModelProperty(value = "æ´æ°æ¶é´") |
| | | @ExcelColumn(name="æ´æ°æ¶é´") |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date editDate; |
| | | |
| | | @ApiModelProperty(value = "æ¯å¦å é¤0å¦ 1æ¯", example = "1") |
| | |
| | | @ApiModelProperty(value = "ç±»å 0鿣åºå 1éæ£ç±»å", example = "1") |
| | | @ExcelColumn(name="ç±»å 0鿣åºå 1éæ£ç±»å") |
| | | private Integer type; |
| | | @ApiModelProperty(value = "ç¨æ·ç¼ç éå", example = "1") |
| | | @TableField(exist = false) |
| | | private List<Integer> memberIdList; |
| | | |
| | | } |
| | |
| | | import com.doumee.dao.business.HiddenDangerParamMapper; |
| | | import com.doumee.dao.business.MemberMapper; |
| | | import com.doumee.dao.business.model.CarDriver; |
| | | import com.doumee.dao.business.model.HiddenDanger; |
| | | import com.doumee.dao.business.model.HiddenDangerParam; |
| | | import com.doumee.dao.business.model.Member; |
| | | import com.doumee.service.business.HiddenDangerParamService; |
| | |
| | | } |
| | | if(Constants.equalsInteger(model.getType(),Constants.ZERO)){ |
| | | //妿æ¯åºåé
ç½® |
| | | List<Integer> ids = Constants.getIntegerListByStrs(model.getMemberIds()); |
| | | List<Integer> ids = model.getMemberIdList(); |
| | | if(ids==null || ids.size() ==0){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼å®å
¨åä¿¡æ¯ä¸æ£ç¡®ï¼è¯·æè¦æ±å¡«åå
容ï¼"); |
| | | } |
| | | List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda() |
| | | .eq(Member::getType,Constants.TWO) |
| | | .in(Member::getId,ids) |
| | | .eq(Member::getIsdeleted,Constants.ZERO)); |
| | | if(memberList == null || memberList.size() == 0 || memberList.size() != ids.size() ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼è¯·éæ©æ£ç¡®çå®å
¨åä¿¡æ¯ï¼"); |
| | | } |
| | | String names = null; |
| | | String idss = null; |
| | | String names = ""; |
| | | String idss = ""; |
| | | for(Member member : memberList){ |
| | | if(StringUtils.isNotBlank(names)){ |
| | | names += ","; |
| | |
| | | idss += ","; |
| | | } |
| | | names += member.getName(); |
| | | names += member.getId(); |
| | | idss += member.getId(); |
| | | } |
| | | model.setMemberNames(names); |
| | | model.setMemberIds(idss); |
| | |
| | | } |
| | | if(Constants.equalsInteger(hiddenDangerParam.getType(),Constants.ZERO)){ |
| | | //妿æ¯åºåé
ç½®,æ ¡éªå®å
¨åä¿¡æ¯æ¯å¦æ£ç¡® |
| | | List<Integer> ids = Constants.getIntegerListByStrs(model.getMemberIds()); |
| | | List<Integer> ids =model.getMemberIdList(); |
| | | if(ids==null || ids.size() ==0){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼å®å
¨åä¿¡æ¯ä¸æ£ç¡®ï¼è¯·æè¦æ±å¡«åå
容ï¼"); |
| | | } |
| | | List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda() |
| | | .eq(Member::getType,Constants.TWO) |
| | | .in(Member::getId,ids) |
| | | .eq(Member::getIsdeleted,Constants.ZERO)); |
| | | if(memberList == null || memberList.size() == 0 || memberList.size() != ids.size() ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼è¯·éæ©æ£ç¡®çå®å
¨åä¿¡æ¯ï¼"); |
| | | } |
| | | String names = null; |
| | | String idss = null; |
| | | String names = ""; |
| | | String idss = ""; |
| | | for(Member member : memberList){ |
| | | if(StringUtils.isNotBlank(names)){ |
| | | names += ","; |
| | |
| | | idss += ","; |
| | | } |
| | | names += member.getName(); |
| | | names += member.getId(); |
| | | idss += member.getId(); |
| | | } |
| | | model.setMemberNames(names); |
| | | model.setMemberIds(idss); |
| | |
| | | |
| | | @Override |
| | | public List<HiddenDangerParam> findList(HiddenDangerParam hiddenDangerParam) { |
| | | |
| | | hiddenDangerParam.setIsdeleted(Constants.ZERO); |
| | | QueryWrapper<HiddenDangerParam> wrapper = new QueryWrapper<>(hiddenDangerParam); |
| | | wrapper.lambda().orderByAsc(HiddenDangerParam::getSortnum); |
| | | return hiddenDangerParamMapper.selectList(wrapper); |
| | | } |
| | | |
| | |
| | | queryWrapper.lambda() |
| | | .eq(pageWrap.getModel().getId() != null, HiddenDangerParam::getId, pageWrap.getModel().getId()) |
| | | .eq(pageWrap.getModel().getCreator() != null, HiddenDangerParam::getCreator, pageWrap.getModel().getCreator()) |
| | | .ge(pageWrap.getModel().getCreateDate() != null, HiddenDangerParam::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())) |
| | | .le(pageWrap.getModel().getCreateDate() != null, HiddenDangerParam::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())) |
| | | .eq(pageWrap.getModel().getEditor() != null, HiddenDangerParam::getEditor, pageWrap.getModel().getEditor()) |
| | | .ge(pageWrap.getModel().getEditDate() != null, HiddenDangerParam::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())) |
| | | .le(pageWrap.getModel().getEditDate() != null, HiddenDangerParam::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())) |
| | | .eq(pageWrap.getModel().getIsdeleted() != null, HiddenDangerParam::getIsdeleted, pageWrap.getModel().getIsdeleted()) |
| | | .eq(pageWrap.getModel().getName() != null, HiddenDangerParam::getName, pageWrap.getModel().getName()) |
| | | .like(pageWrap.getModel().getName() != null, HiddenDangerParam::getName, pageWrap.getModel().getName()) |
| | | .eq(pageWrap.getModel().getRemark() != null, HiddenDangerParam::getRemark, pageWrap.getModel().getRemark()) |
| | | .eq(pageWrap.getModel().getStatus() != null, HiddenDangerParam::getStatus, pageWrap.getModel().getStatus()) |
| | | .eq(pageWrap.getModel().getSortnum() != null, HiddenDangerParam::getSortnum, pageWrap.getModel().getSortnum()) |
| | |
| | | .eq(pageWrap.getModel().getMemberIds() != null, HiddenDangerParam::getMemberIds, pageWrap.getModel().getMemberIds()) |
| | | .eq(pageWrap.getModel().getMemberNames() != null, HiddenDangerParam::getMemberNames, pageWrap.getModel().getMemberNames()) |
| | | .eq(pageWrap.getModel().getType() != null, HiddenDangerParam::getType, pageWrap.getModel().getType()) |
| | | .orderByAsc(HiddenDangerParam::getSortnum) |
| | | .orderByDesc(HiddenDangerParam::getCreateDate) |
| | | .eq( HiddenDangerParam::getIsdeleted, Constants.ZERO) |
| | | ; |
| | |
| | | queryWrapper.orderByAsc(sortData.getProperty()); |
| | | } |
| | | } |
| | | return PageData.from(hiddenDangerParamMapper.selectPage(page, queryWrapper)); |
| | | PageData<HiddenDangerParam> result = PageData.from(hiddenDangerParamMapper.selectPage(page, queryWrapper)); |
| | | |
| | | return result; |
| | | } |
| | | |
| | | @Override |
| | |
| | | .select("t1.name", HiddenDanger::getMemberName) |
| | | .select("t1.phone",HiddenDanger::getMemberPhone) |
| | | .select("t2.name",HiddenDanger::getCheckorName) |
| | | .select("t3.phone",HiddenDanger::getCheckorPhone) |
| | | .select("t2.phone",HiddenDanger::getCheckorPhone) |
| | | .select("t4.company_name_path",HiddenDanger::getCompanyName); |
| | | queryWrapper.leftJoin(Member.class,Member::getId,HiddenDanger::getMemberId) |
| | | .leftJoin("company t4 on t1.company_id=t4.id") |
| | | .leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId) |
| | | .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId); |
| | | .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId) |
| | | .leftJoin("company t4 on t1.company_id=t4.id"); |
| | | queryWrapper |
| | | .eq(pageWrap.getModel().getId() != null, HiddenDanger::getId, pageWrap.getModel().getId()) |
| | | .eq(pageWrap.getModel().getCreator() != null, HiddenDanger::getCreator, pageWrap.getModel().getCreator()) |
| | |
| | | .le(pageWrap.getModel().getEditDate() != null, VisitReason::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())) |
| | | .eq(pageWrap.getModel().getIsdeleted() != null, VisitReason::getIsdeleted, pageWrap.getModel().getIsdeleted()) |
| | | .eq(pageWrap.getModel().getRemark() != null, VisitReason::getRemark, pageWrap.getModel().getRemark()) |
| | | .eq(pageWrap.getModel().getTitle() != null, VisitReason::getTitle, pageWrap.getModel().getTitle()) |
| | | .like(pageWrap.getModel().getTitle() != null, VisitReason::getTitle, pageWrap.getModel().getTitle()) |
| | | .eq(pageWrap.getModel().getSortnum() != null, VisitReason::getSortnum, pageWrap.getModel().getSortnum()) |
| | | .eq(pageWrap.getModel().getType() != null, VisitReason::getType, pageWrap.getModel().getType()) |
| | | .orderByDesc(VisitReason::getSortnum) |
| | | .orderByAsc(VisitReason::getSortnum) |
| | | ; |
| | | for(PageWrap.SortData sortData: pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |