Merge remote-tracking branch 'origin/wuhuyancao' into wuhuyancao
| | |
| | | export function companySync (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/company/syncAll', data) |
| | | } |
| | | export function companySyncDingding (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/company/syncAllDingding', data) |
| | | } |
| | | // å页æ¥è¯¢ |
| | | export function companyGetList (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/company/page', data) |
| | |
| | | trim: true |
| | | }) |
| | | } |
| | | // é¨é¨ä¿¡æ¯åæ¥ |
| | | // ä¿¡æ¯åæ¥ |
| | | export function memberSync (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/member/syncAll', data) |
| | | } |
| | | export function memberSyncDingding (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/member/syncAllDingding', data) |
| | | } |
| | | export function delHkForce (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/member/delHkForce', data) |
| | | } |
| | |
| | | <el-form-item label="ç»ç»ç±»å" prop="type" v-if="(editType === 'edit' && parentId) || (editType === 'add')"> |
| | | <el-radio-group v-model="form.type" :disabled="(editType === 'edit') || (!!(editType === 'add' && parentId))"> |
| | | <el-radio :label="0">ç¸å
³æ¹ç»ç»</el-radio> |
| | | <el-radio :label="1">å
é¨ç»ç»</el-radio> |
| | | <!-- <el-radio :label="1">å
é¨ç»ç»</el-radio>--> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | </el-form> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <TableLayout :permissions="['business:category: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:category:create','business:category:delete']"> |
| | | <li><el-button type="primary" @click="$refs.OperaCategoryFileWindow.open('æ°å»ºå¹¿å')" icon="el-icon-plus" v-permissions="['business:category:create']">æ°å»º</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">æ¹éå é¤</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" show-overflow-tooltip label="广å" min-width="120px"></el-table-column> |
| | | <el-table-column prop="imgurl" show-overflow-tooltip label="" min-width="120px"> |
| | | <template slot-scope="{row}"> |
| | | <el-image v-if="row.imgurlFull" style="width: 60px; height: 60px" :src="row.imgurlFull" |
| | | :preview-src-list="[row.imgurlFull]"> |
| | | </el-image> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="sortnum" label="æåºç " min-width="70px"></el-table-column> |
| | | <el-table-column prop="editDate" label="æä½æ¶é´" width="160px"></el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:category:update', 'business:category:delete' ])" |
| | | label="æä½" |
| | | min-width="140" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" @click="$refs.OperaCategoryFileWindow.open('ç¼è¾å¹¿å',row)" v-permissions="['business:category:update']">ç¼è¾</el-button> |
| | | <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" v-permissions="['business:category:delete']">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | </pagination> |
| | | </template> |
| | | <!-- æ°å»º/ä¿®æ¹ --> |
| | | <OperaCategoryFileWindow ref="OperaCategoryFileWindow" @success="handlePageChange"/> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import OperaCategoryFileWindow from '@/components/business/OperaCategoryFileWindow' |
| | | export default { |
| | | name: 'areaSet', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination, OperaCategoryFileWindow }, |
| | | data () { |
| | | return { |
| | | // æç´¢ |
| | | searchForm: { |
| | | name: '', |
| | | type: 4 |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: '广å', |
| | | api: '/business/category', |
| | | 'field.id': 'id', |
| | | 'field.main': 'id' |
| | | }) |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | } |
| | | } |
| | | </script> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <TableLayout :permissions="['business:category: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:category:create','business:category:delete']"> |
| | | <li><el-button type="primary" @click="$refs.OperaCategoryFileWindow.open('æ°å»ºä¸»çº¿è·¯')" icon="el-icon-plus" v-permissions="['business:category:create']">æ°å»º</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">æ¹éå é¤</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" show-overflow-tooltip label="主线路" min-width="120px"></el-table-column> |
| | | <el-table-column prop="sortnum" label="æåºç " min-width="70px"></el-table-column> |
| | | <el-table-column prop="editDate" label="æä½æ¶é´" width="160px"></el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:category:update', 'business:category:delete' ])" |
| | | label="æä½" |
| | | min-width="140" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" @click="$refs.OperaCategoryFileWindow.open('ç¼è¾ä¸»çº¿è·¯',row)" v-permissions="['business:category:update']">ç¼è¾</el-button> |
| | | <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" v-permissions="['business:category:delete']">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | </pagination> |
| | | </template> |
| | | <!-- æ°å»º/ä¿®æ¹ --> |
| | | <OperaCategoryFileWindow ref="OperaCategoryFileWindow" @success="handlePageChange"/> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import OperaCategoryFileWindow from '@/components/business/OperaCategoryFileWindow' |
| | | export default { |
| | | name: 'areaSet', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination, OperaCategoryFileWindow }, |
| | | data () { |
| | | return { |
| | | // æç´¢ |
| | | searchForm: { |
| | | name: '', |
| | | type: 4 |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: '主线路', |
| | | api: '/business/category', |
| | | 'field.id': 'id', |
| | | 'field.main': 'id' |
| | | }) |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | } |
| | | } |
| | | </script> |
| | |
| | | { key: 1, name: 'å¤åè¿è¾è½¦è¾' }, |
| | | { key: 2, name: 'å¸å
¬å¸å¸è´§è½¦è¾' }, |
| | | { key: 3, name: 'å å·¥çå¸è´§è½¦è¾' }, |
| | | { key: 4, name: 'ç©æµå
¬å¡ç¨è½¦' }, |
| | | { key: 5, name: 'ç©æµè´§è¿è½¦è¾' }, |
| | | { key: 4, name: 'èªæå
¬å¡è½¦' }, |
| | | { key: 5, name: 'èªæè´§è¿è½¦è¾' }, |
| | | { key: 6, name: 'æªç¥è½¦è¾' } |
| | | ] |
| | | } |
| | |
| | | v-permissions="['business:company:sort']">ä¸ç§»</el-button></li> |
| | | <li><el-button type="primary" v-permissions="['business:company:sync']" :loading="loading" |
| | | @click="synchronous()">忥</el-button></li> |
| | | <li><el-button type="primary" v-permissions="['business:company:create']" :loading="loading" |
| | | @click="synchronousDingding()">忥éé</el-button></li> |
| | | </ul> |
| | | <el-table :max-height="tableHeight" v-loading="isWorking.search" :data="list" stripe |
| | | :tree-props="{ children: 'childList', hasChildren: 'hasChildren' }" row-key="id" |
| | |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" |
| | | @click="$refs.OperaInternalCompanyWindow.open('ç¼è¾ä¼ä¸ä¿¡æ¯', { id: row.parentId, name: row.parentName, type: row.parentType, companyPath: row.parentCompanyPath }, row, 'edit')" |
| | | icon="el-icon-edit" v-permissions="['business:company:update']">ç¼è¾</el-button> |
| | | icon="el-icon-edit" v-permissions="['business:company:update']" v-if="row.type ==0">ç¼è¾</el-button> |
| | | <el-button type="text" @click="$refs.OperaInternalCompanyWindow.open('æ°å»ºå级', row, null, 'add')" |
| | | icon="el-icon-plus">æ°å»ºå级</el-button> |
| | | <el-button type="text" @click="deleteById(row)" style="color: red" icon="el-icon-delete" |
| | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import { companySync, sort } from '@/api/business/company' |
| | | import { companySync,companySyncDingding, sort } from '@/api/business/company' |
| | | import OperaInternalCompanyWindow from '@/components/business/OperaInternalCompanyWindow' |
| | | export default { |
| | | name: 'internalCompany', |
| | |
| | | }) |
| | | .catch(() => { }) |
| | | }, |
| | | async synchronousDingding() { |
| | | this.$dialog.actionConfirm('该æä½å°ç³»ç»æ¸
空已æå
é¨ç»ç»ä¿¡æ¯ï¼æ¨ç¡®è®¤åæ¥å
¨é¨ä¿¡æ¯åï¼', 'æä½ç¡®è®¤æé') |
| | | .then(() => { |
| | | this.loading = true |
| | | companySyncDingding({}) |
| | | .then(res => { |
| | | this.$tip.apiSuccess(res || '忥æå') |
| | | this.search() |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.loading = false |
| | | }) |
| | | }) |
| | | .catch(() => { }) |
| | | }, |
| | | // æåº |
| | | sort(direction) { |
| | | if (this.sorting) { |
| | |
| | | <ul class="toolbar" v-permissions="['business:member:delete', 'business:member:create,business:empower:create']"> |
| | | <li><el-button type="primary" v-permissions="['business:member:sync']" :loading="loading" |
| | | @click="synchronous()">忥</el-button></li> |
| | | <li><el-button type="primary" |
| | | <li><el-button type="primary" v-permissions="['business:member:create']" :loading="loading" |
| | | @click="synchronousDingding()">忥éé</el-button></li> |
| | | <!-- <li><el-button type="primary" |
| | | @click="add" icon="el-icon-plus" |
| | | v-permissions="['business:member:create']">æ°å»ºåå·¥</el-button></li> |
| | | <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> |
| | | v-permissions="['business:member:delete']">æ¹éå é¤</el-button></li>--> |
| | | <li><el-button type="primary" v-permissions="['business:empower:create']" |
| | | @click="startEmpowerBatch()">ä¸åææ</el-button></li> |
| | | <li style="float: right"> |
| | |
| | | v-if="containPermissions(['business:member:update', 'business:member:delete', 'business:empower:create'])" |
| | | label="æä½" min-width="280"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" @click="edit(row)" |
| | | v-permissions="['business:member:update']">ç¼è¾</el-button> |
| | | <el-button type="text" icon="el-icon-edit" @click="edit(row)" v-permissions="['business:member:update']">ç¼è¾</el-button> |
| | | <el-button type="text" icon="el-icon-plus" @click="empower(row.id)" |
| | | v-permissions="['business:empower:create']">éæ°ææ</el-button> |
| | | <el-button type="text" :loading="heading" style="color: red" icon="el-icon-delete" |
| | |
| | | v-permissions="['business:member:head']">åæ¶ä¸»ç®¡</el-button> |
| | | <el-button type="text" :loading="heading" icon="el-icon-edit" @click="updateHead(row, 1)" |
| | | v-if="row.headStatus == 0" v-permissions="['business:member:head']">设为主管</el-button> |
| | | <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" |
| | | v-permissions="['business:member:delete']">å é¤</el-button> |
| | | <!-- <el-button type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" |
| | | v-permissions="['business:member:delete']">å é¤</el-button>--> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | import OperaMemberImportWindow from '@/components/business/OperaMemberImportWindow' |
| | | import { fetchList } from '@/api/business/company' |
| | | import { allList } from '@/api/business/position' |
| | | import { memberSync, roleAuth, updateCanVisit, updateHead, updateWorkStatus } from '@/api/business/member' |
| | | import { memberSync,memberSyncDingding, roleAuth, updateCanVisit, updateHead, updateWorkStatus } from '@/api/business/member' |
| | | export default { |
| | | name: 'internalMember', |
| | | extends: BaseTable, |
| | |
| | | }) |
| | | .catch(() => { }) |
| | | }, |
| | | // åæ¥ä¿¡æ¯ |
| | | async synchronousDingding() { |
| | | this.$dialog.actionConfirm('该æä½é触åå
¨åä¿¡æ¯æ´æ°åéæ°ä¸åï¼è¯·è°¨æ
æä½', 'æ¨ç¡®è®¤å
¨é忥å
é¨äººåä¿¡æ¯åï¼') |
| | | .then(() => { |
| | | this.loading = true |
| | | memberSyncDingding({}) |
| | | .then(res => { |
| | | this.$tip.apiSuccess(res || '忥æå') |
| | | this.search() |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.loading = false |
| | | }) |
| | | }) |
| | | .catch(() => { }) |
| | | }, |
| | | async updateHead(row, type) { |
| | | this.$dialog.actionConfirm('æ¨ç¡®è®¤è¿è¡å½åæä½åï¼', 'é¨é¨ä¸»ç®¡è®¾ç½®æä½æç¤º') |
| | | .then(() => { |
| | |
| | | { label: '访客ç³è¯·', value: '0' }, |
| | | { label: '访客æ¥å¤', value: '1' }, |
| | | { label: 'ç¨è½¦ç³è¯·', value: '2' }, |
| | | { label: '鿣鿿', value: '3' }, |
| | | { label: 'ç©æµè½¦ç³è¯·', value: '6' } |
| | | // { label: '鿣鿿', value: '3' }, |
| | | // { label: 'ç©æµè½¦ç³è¯·', value: '6' } |
| | | ] |
| | | }, |
| | | { |
| | |
| | | { name: '访客ç³è¯·', id: 0 }, |
| | | { name: '访客æ¥å¤', id: 1 }, |
| | | { name: 'ç¨è½¦ç³è¯·', id: 2 }, |
| | | { name: '鿣鿿', id: 3 }, |
| | | { name: 'ç©æµè½¦ç³è¯·', id: 6 } |
| | | // { name: '鿣鿿', id: 3 }, |
| | | // { name: 'ç©æµè½¦ç³è¯·', id: 6 } |
| | | ] |
| | | } |
| | | }, |
| | |
| | | <span v-else-if="row.bizType ==1">å¤åè¿è¾è½¦è¾</span> |
| | | <span v-else-if="row.bizType ==2">å¸å
¬å¸å¸è´§è½¦è¾</span> |
| | | <span v-else-if="row.bizType ==3">å å·¥çå¸è´§è½¦è¾</span> |
| | | <span v-else-if="row.bizType ==4">ç©æµå
¬å¡ç¨è½¦</span> |
| | | <span v-else-if="row.bizType ==5">ç©æµè´§è¿è½¦è¾</span> |
| | | <span v-else-if="row.bizType ==4">èªæå
¬å¡è½¦</span> |
| | | <span v-else-if="row.bizType ==5">èªæè´§è¿è½¦è¾</span> |
| | | <span v-else >-</span> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | { key: 1, name: 'å¤åè¿è¾è½¦è¾' }, |
| | | { key: 2, name: 'å¸å
¬å¸å¸è´§è½¦è¾' }, |
| | | { key: 3, name: 'å å·¥çå¸è´§è½¦è¾' }, |
| | | { key: 4, name: 'ç©æµå
¬å¡ç¨è½¦' }, |
| | | { key: 5, name: 'ç©æµè´§è¿è½¦è¾' } |
| | | { key: 4, name: 'èªæå
¬å¡è½¦' }, |
| | | { key: 5, name: 'èªæè´§è¿è½¦è¾' } |
| | | ], |
| | | // éªè¯è§å |
| | | rules: { |
| | |
| | | public static final String PRESSURE_LEVEL_UNIT = "PRESSURE_LEVEL_UNIT"; |
| | | public static final String LIQUID_LEVEL_UNIT ="LIQUID_LEVEL_UNIT" ; |
| | | public static final String OUT_HY_LOT_TOTAL ="OUT_HY_LOT_TOTAL" ; |
| | | public static final String BANNER_IMG ="BANNER_IMG" ; |
| | | |
| | | public static boolean DEALING_HK_SYNCPRIVILEGE= false; |
| | | public static boolean DEALING_HK_SYNCDEVICE = false; |
| | |
| | | //@ExcelColumn(name="徿 ") |
| | | private String imgurl; |
| | | |
| | | @ApiModelProperty(value = "ç±»å 0å
¬å¸ç±»å 1车è¾ç±»å") |
| | | @ApiModelProperty(value = "ç±»å 0å
¬å¸ç±»å 1车è¾ç±»å 2èµæåç±» 3é¥åæç»ç«¯å¹¿å 4交æ§ä¸»çº¿è·¯") |
| | | //@ExcelColumn(name="ç±»å 0å
¬å¸ç±»å 1车è¾ç±»å") |
| | | private Integer type; |
| | | @ApiModelProperty(value = "ä¸å¡ç±»å " + |
| | |
| | | @TableField(exist = false) |
| | | @ExcelColumn(name="ç»ååç§°",index = 3,width = 20) |
| | | private String groupName; |
| | | @ApiModelProperty(value = "宿´å¾çå°å ") |
| | | private String imgurlFull; |
| | | |
| | | @ApiModelProperty(value = "åéåç±»") |
| | | @TableField(exist = false) |
| | |
| | | package com.doumee.service.business.impl; |
| | | |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.service.business.third.model.LoginUserInfo; |
| | |
| | | @Service |
| | | public class CategoryServiceImpl implements CategoryService { |
| | | |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | @Autowired |
| | | private CategoryMapper categoryMapper; |
| | | |
| | |
| | | IPage<Category> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | QueryWrapper<Category> queryWrapper = new QueryWrapper<>(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | String prefixUrl = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() + |
| | | systemDictDataBiz.queryByCode(Constants.FTP,Constants.BANNER_IMG).getCode(); |
| | | |
| | | queryWrapper.lambda().eq(Category::getIsdeleted,Constants.ZERO) |
| | | .eq(Objects.nonNull(pageWrap.getModel().getType()),Category::getType,pageWrap.getModel().getType()) |
| | | .like(StringUtils.isNotBlank(pageWrap.getModel().getName()),Category::getName,pageWrap.getModel().getName()) |
| | |
| | | category.setChildCategoryList( |
| | | categoryList.stream().filter(i->Constants.equalsInteger(i.getParentId(),category.getId())).collect(Collectors.toList()) |
| | | ); |
| | | if(StringUtils.isNotBlank(category.getImgurl())){ |
| | | category.setImgurlFull(prefixUrl + category.getImgurl()); |
| | | } |
| | | } |
| | | |
| | | return categoryPageData; |