| | |
| | | } |
| | | |
| | | // é¨é¨ä¿¡æ¯åæ¥ |
| | | export function getSysConfig (data) { |
| | | return request.get('/visitsAdmin/cloudService/business/company/getSysConfig') |
| | | } |
| | | export function companySync (data) { |
| | | return request.post('/visitsAdmin/cloudService/business/company/syncAll', data) |
| | | } |
| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="85%" |
| | | width="100%" |
| | | :visible.sync="visible" |
| | | > |
| | | <TableLayout > |
| | |
| | | <div style="display: flex;margin-top: 20px;"> |
| | | <div style="flex: 1"><span class="label">MQTT IPï¼</span>{{model.doorNameObj.mqttIp ||''}}</div> |
| | | <div style="flex: 1"><span class="label">MQTT端å£ï¼</span>{{model.doorNameObj.mqttPort||''}}</div> |
| | | <div style="flex: 3"> <span class="label">æè¿æ§å¶æä½ï¼</span>{{model.remark||''}}</div> |
| | | <div style="flex: 3"> |
| | | <span class="label">æè¿æ§å¶æä½ï¼</span> |
| | | <span class="orange" >{{model.remark||''}}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <el-form-item label="å¼å
³åºå·" prop="val1"> |
| | | <div class="platgroup_tabs"> |
| | | <div class="tab" :class="{ active: activeGroup === item.id }" @click="groupClick(item)" |
| | | v-for="(item, i) in groupList" :key="i"> |
| | | {{ item.name }} |
| | | </div> |
| | | </div> |
| | | <el-form-item label="å¼å
³åºå·" v-if="activeGroup==0" prop="val1"> |
| | | <el-input v-model="searchForm.val1" placeholder="请è¾å
¥å¼å
³åºå·" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <section> |
| | | <section v-if="activeGroup==0"> |
| | | <el-button type="primary" @click="search">æç´¢</el-button> |
| | | <el-button @click="reset">éç½®</el-button> |
| | | </section> |
| | | </el-form> |
| | | <!-- è¡¨æ ¼åå页 --> |
| | | <template v-slot:table-wrap> |
| | | <template v-slot:table-wrap> |
| | | <el-table |
| | | v-if="activeGroup===0" |
| | | :height="tableHeightNew" |
| | | v-loading="isWorking.search" |
| | | :data="tableData.list" |
| | |
| | | <el-table-column prop="val3" label="çµå§(V)" min-width="120px"></el-table-column> |
| | | <el-table-column prop="val4" label="温度(â)" min-width="180px" ></el-table-column> |
| | | <el-table-column prop="val5" label="æååçå¼ï¼kWï¼" min-width="120px"></el-table-column> |
| | | </el-table> |
| | | <el-table |
| | | v-if="activeGroup===1" |
| | | :height="tableHeightNew" |
| | | v-loading="isWorking.search" |
| | | :data="tableData.list" |
| | | stripe> |
| | | <el-table-column prop="createDate" label="æä½æ¶é´" min-width="150px"></el-table-column> |
| | | <el-table-column prop="val4" label="æä½äºº" min-width="100px" ></el-table-column> |
| | | <el-table-column prop="val3" label="æä½å
容" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if=" row.val3 === 'ãåé¸ã'" class="green">{{row.val3||''}}</span> |
| | | <span v-else-if=" row.val3 === 'ãåé¸ã'" class="red">{{row.val3||''}}</span> |
| | | <span v-else>{{row.val3||''}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="val5" label="å¼å
³åºå·" min-width="120px"></el-table-column> |
| | | <el-table-column prop="val2" label="å
容" min-width="300px" show-overflow-tooltip></el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | |
| | | // è¡¨åæ°æ® |
| | | visible: false, |
| | | title: '', |
| | | activeGroup:0, |
| | | model:{}, |
| | | groupList: [{ id: 0, name: 'æ°æ®ä¸æ¥è®°å½', type: 0 }, { id: 1, name: 'è¿ç¨æ§å¶è®°å½', type: 1 }], |
| | | searchForm: { |
| | | deviceId: null, |
| | | val1:'' |
| | | val1: '', |
| | | dataType:0 |
| | | } |
| | | } |
| | | }, |
| | |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | groupClick (item) { |
| | | this.activeGroup = item.id |
| | | this.searchForm.val1 = '' |
| | | this.searchForm.dataType = item.type |
| | | this.search() |
| | | }, |
| | | open (title, row) { |
| | | this.title = title +' ã'+ (row.name)+'ã' |
| | | this.searchForm.deviceId = row.id |
| | |
| | | total: 0 |
| | | } |
| | | } |
| | | this.search() |
| | | this.groupClick(this.groupList[0]) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | <style> |
| | | .platgroup_tabs { |
| | | flex: 1; |
| | | display: flex; |
| | | border-bottom: 1px solid #dfe2e8; |
| | | margin-bottom:30px; |
| | | |
| | | .tab { |
| | | color: #666666; |
| | | margin-right: 40px; |
| | | cursor: pointer; |
| | | padding-bottom: 18px; |
| | | border-bottom: 2px solid #fff; |
| | | } |
| | | |
| | | .active { |
| | | font-weight: 500; |
| | | font-size: 15px; |
| | | color: #2080f7; |
| | | border-bottom: 2px solid $primary-color; |
| | | } |
| | | } |
| | | .label{ |
| | | /* width: 80px; |
| | | text-align: right;*/ |
| | |
| | | 1.å
¨é¨å¼å
³åºå·ï¼åè设å¤å®é
é
ç½®ï¼å¤ä¸ªç¨è±æéå·éå¼ï¼å¦ 1,2,3;<br> |
| | | 2.æ§å¶å¼å
³åºå·ï¼ç³»ç»æ ¹æ®é
ç½®è§åï¼å¤æå¼å
³å½å空é²ä¸è¿è¡ãèªå¨åé¸ã,å¤ä¸ªç¨è±æéå·éå¼ï¼å¦ 1,2;<br> |
| | | 3.èªå¨åé¸è§åï¼é对æ§å¶å¼å
³åºå·çé
ç½®ï¼å®æ¶æ£æµãç©ºé²æ¶é¿ãå
满足å¼å
³çµæµå¼é½å¨ã空é²çµæµéå¼ãèå´å
ï¼åè¿è¡èªå¨å鏿§å¶;<br> |
| | | 4.ç©ºé²æ¶é¿: 请设置è³å°ç©ºé²æ¶é¿å¤§äºçäº300ç§ï¼5åéï¼ã |
| | | 4.ç©ºé²æ¶é¿: 请设置è³å°ç©ºé²æ¶é¿å¤§äºçäº300ç§ï¼5åéï¼ã<br> |
| | | 5.å¦éè¿ç¨æ§å¶å¼å
³ï¼è¯·æ£ç¡®å¡«åä¸è¿°å
¨é¨åæ°ä¿¡æ¯ã |
| | | </p> |
| | | <div style="display: flex"> |
| | |
| | | name: [ |
| | | { required: true, message: '请è¾å
¥è®¾å¤åç§°' } |
| | | ], |
| | | /* max: [ |
| | | /*max: [ |
| | | { required: true, message: '请è¾å
¥è®¾å¤ç©ºé²çµæµéå¼' } |
| | | ],*/ |
| | | doorId: [ |
| | |
| | | <!-- :disabled="(editType === 'edit') || (!!(editType === 'add' && parentId))"--> |
| | | <el-radio-group v-model="form.type"> |
| | | <el-radio :label="0">ç¸å
³æ¹ç»ç»</el-radio> |
| | | <el-radio :label="1">å
é¨ç»ç»</el-radio> |
| | | <el-radio :label="1" v-if="sysConfig() && sysConfig().orgUserDataOrigin!=3">å
é¨ç»ç»</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | </el-form> |
| | |
| | | type: Array |
| | | } |
| | | }, |
| | | inject: ['sysConfig'], |
| | | created () { |
| | | this.config({ |
| | | api: '/business/company.js', |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | open(title, target, row, editType){ |
| | | open (title, target, row, editType) { |
| | | this.title = title |
| | | this.editType = editType |
| | | if (editType === 'edit') { |
| | |
| | | } |
| | | if (target != null) { |
| | | this.form.parentId = target.id |
| | | this.form.parentType = target.type |
| | | this.form.parentType = target.type >= 0 ? target.type : 0 |
| | | this.form.parentName = target.companyNamePath |
| | | } |
| | | // æ°å»ºç»ç» |
| | |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | this.form[this.configData['field.id']] = null |
| | | this.form.type = target.type |
| | | this.form.type = 0 |
| | | }) |
| | | return |
| | | } |
| | |
| | | for (const key in this.form) { |
| | | this.form[key] = row[key] |
| | | } |
| | | if(target.type == 0){ |
| | | if (target.type == 0) { |
| | | this.form.type = 0 |
| | | } |
| | | }) |
| | |
| | | this.$emit('success') |
| | | }) |
| | | .catch(e => { |
| | | // this.$tip.apiFailed(e) |
| | | // this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking = false |
| | |
| | | return { |
| | | // æç´¢ |
| | | searchForm: { |
| | | doorName: '', |
| | | doorNo: '', |
| | | no: '', |
| | | regionPathName: '', |
| | | name: '', |
| | | type: 5 |
| | | }, |
| | | isWorkSending: false, |
| | |
| | | v-permissions="['business:company:sort']">ä¸ç§»</el-button></li> |
| | | <li><el-button @click="sort('bottom')" :loading="sorting" icon="el-icon-sort-down" |
| | | 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: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> |
| | | @click="synchronous()">忥</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" |
| | | @selection-change="handleSelectionChange" default-expand-all> |
| | | <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="name" label="ç»ç»åç§°" min-width="200px"></el-table-column> |
| | | <el-table-column prop="name" label="ç»ç»ç±»å" min-width="80px"> |
| | | <template scope="{row}"> |
| | | <span v-if="row.type == 0">ç¸å
³æ¹ç»ç»</span> |
| | | <span v-if="row.type == 1">å
é¨ç»ç»</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="companyNamePath" label="ç»ç»è·¯å¾" min-width="100px"></el-table-column> |
| | | <el-table-column label="æµ·åº·åæ¥ç¶æ" min-width="100px" align="center"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.hkStatus == 0" style="color: #435EBE">å¾
忥</span> |
| | | <span v-if="row.hkStatus == 1" style="color: green">忥æå</span> |
| | | <span v-if="row.hkStatus == 2" style="color: red">åæ¥å¤±è´¥</span> |
| | | <span v-if="row.hkStatus == 3" style="color: red">ä¸ç¬¦åä¸åæ¡ä»¶</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="sortnum" align="center" label="æåºç " min-width="80px"></el-table-column> |
| | | <el-table-column prop="companyNamePath" label="ç»ç»è·¯å¾" min-width="200px"></el-table-column> |
| | | <el-table-column prop="editorName" label="æä½äºº" width="100px"></el-table-column> |
| | | <el-table-column prop="editDate" label="æåæ´æ°æ¶é´" min-width="100px"></el-table-column> |
| | | <el-table-column prop="editDate" label="æåæ´æ°æ¶é´" min-width="150px"></el-table-column> |
| | | <el-table-column label="æä½" width="230" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <!-- v-if="row.type ==0"--> |
| | | <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="sysConfig && sysConfig.orgUserDataOrigin ==3 && row.type !=1 ">ç¼è¾</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" |
| | | v-permissions="['business:company:delete']" v-if="row.type !== -1">å é¤</el-button> |
| | | v-permissions="['business:company:delete']" v-if="sysConfig && sysConfig.orgUserDataOrigin ==3 && row.type ==0 ">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import { companySync,companySyncDingding, sort } from '@/api/business/company' |
| | | import { companySync, companySyncDingding, sort } from '@/api/business/company' |
| | | import OperaInternalCompanyWindow from '@/components/business/OperaInternalCompanyWindow' |
| | | export default { |
| | | name: 'internalCompany', |
| | | extends: BaseTable, |
| | | components: { TableLayout, OperaInternalCompanyWindow }, |
| | | data() { |
| | | data () { |
| | | return { |
| | | // æç´¢ |
| | | loading: false, |
| | | sorting: false, |
| | | sysConfig: null, |
| | | searchForm: { |
| | | // type: 1 |
| | | }, |
| | |
| | | total: 0 |
| | | } |
| | | }, |
| | | created() { |
| | | provide() { |
| | | return { |
| | | sysConfig: () => this.sysConfig |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: 'ä¼ä¸ä¿¡æ¯è¡¨', |
| | | api: '/business/company', |
| | |
| | | 'field.main': 'id' |
| | | }) |
| | | this.search() |
| | | this.api.getSysConfig() |
| | | .then(res => { |
| | | this.sysConfig = res |
| | | }) |
| | | }, |
| | | mounted() { |
| | | mounted () { |
| | | this.$nextTick(() => { |
| | | this.tableHeight = document.body.scrollHeight - 220 |
| | | }) |
| | | }, |
| | | methods: { |
| | | // 页ç åæ´å¤ç |
| | | handlePageChange(pageIndex) { |
| | | handlePageChange (pageIndex) { |
| | | this.__checkApi() |
| | | this.isWorking.search = true |
| | | this.api.fetchList(this.searchForm.type) |
| | |
| | | }) |
| | | }, |
| | | // åæ¥ä¿¡æ¯ |
| | | async synchronous() { |
| | | async synchronous () { |
| | | this.$dialog.actionConfirm('该æä½å°ç³»ç»æ¸
空已æç»ç»ä¿¡æ¯ï¼æ¨ç¡®è®¤åæ¥å
¨é¨ä¿¡æ¯åï¼', 'æä½ç¡®è®¤æé') |
| | | .then(() => { |
| | | this.loading = true |
| | |
| | | }) |
| | | .catch(() => { }) |
| | | }, |
| | | async synchronousDingding() { |
| | | async synchronousDingding () { |
| | | this.$dialog.actionConfirm('该æä½å°ç³»ç»æ¸
空已æå
é¨ç»ç»ä¿¡æ¯ï¼æ¨ç¡®è®¤åæ¥å
¨é¨ä¿¡æ¯åï¼', 'æä½ç¡®è®¤æé') |
| | | .then(() => { |
| | | this.loading = true |
| | |
| | | .catch(() => { }) |
| | | }, |
| | | // æåº |
| | | sort(direction) { |
| | | sort (direction) { |
| | | if (this.sorting) { |
| | | return |
| | | } |
| | |
| | | menuPool.splice(menuIndex, 0, menuPool.splice(menuIndex - 1, 1)[0]) |
| | | } else { |
| | | menuPool.splice(menuIndex, 0, menuPool.splice(menuIndex + 1, 1)[0]) |
| | | }*/ |
| | | } */ |
| | | this.search() |
| | | }) |
| | | .catch(e => { |
| | |
| | | }) |
| | | }, |
| | | // æ¥è¯¢ç¶èç¹ |
| | | __findParent(id, parent) { |
| | | __findParent (id, parent) { |
| | | if (parent.childList === 0) { |
| | | return |
| | | } |
| | |
| | | <!-- è¡¨æ ¼åå页 --> |
| | | <template v-slot:table-wrap> |
| | | <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" |
| | | <li v-if="sysConfig && sysConfig.orgUserDataOrigin != 3"><el-button type="primary" v-permissions="['business:member:create']" :loading="loading" |
| | | @click="synchronous()">忥</el-button></li> |
| | | <li><el-button type="primary" v-permissions="['business:member:create']" :loading="loading" |
| | | @click="synchronousDingding()">忥éé</el-button></li> |
| | | <li><el-button type="primary" |
| | | <li v-if="sysConfig && sysConfig.orgUserDataOrigin != 3"><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)" |
| | | <li v-if="sysConfig && sysConfig.orgUserDataOrigin != 3"><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" |
| | | <li v-if="sysConfig && sysConfig.orgUserDataOrigin != 3"><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()">ä¸åææ</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 fixed="left" prop="name" label="å§å" min-width="80px"> |
| | | <el-table-column fixed="left" prop="name" label="å§å" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span>{{ row.name }}</span> |
| | | <span class="zhuguan" v-if="row.headStatus == 1">主管</span> |
| | |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="phone" label="ææºå·" min-width="100px"></el-table-column> |
| | | <el-table-column prop="idcardDecode" label="身份è¯å·" min-width="100px"></el-table-column> |
| | | <el-table-column label="æ§å«" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.sex == 1">ç·</span> |
| | |
| | | </el-table-column> |
| | | <el-table-column label="å¨èç¶æ"> |
| | | <template slot-scope="{row}"> |
| | | <el-switch @change="changeWorkStatus($event, row)" v-model="row.workStatus" active-color="#13ce66" |
| | | <el-switch v-if="sysConfig && sysConfig.orgUserDataOrigin != 3" @change="changeWorkStatus($event, row)" v-model="row.workStatus" active-color="#13ce66" |
| | | inactive-color="#ff4949" :active-value="0" :inactive-value="1"> |
| | | </el-switch> |
| | | <span v-else>{{row.workStatus == 1?"离è":"å¨è"}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="æ¯å¦å¯æè®¿"> |
| | | <template slot-scope="{row}"> |
| | | <el-switch @change="changeCanvisit($event, row)" v-model="row.canVisit" active-color="#13ce66" |
| | | <el-switch v-if="sysConfig && sysConfig.orgUserDataOrigin != 3" @change="changeCanvisit($event, row)" v-model="row.canVisit" active-color="#13ce66" |
| | | inactive-color="#ff4949" :active-value="1" :inactive-value="0"> |
| | | </el-switch> |
| | | <span v-else>{{row.canVisit == 1?"æ¯":"å¦"}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="idcardDecode" label="身份è¯å·" min-width="150px" show-overflow-tooltip></el-table-column> |
| | | <el-table-column label="æµ·åº·åæ¥ç¶æ" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.hkStatus == 0" style="color: #435EBE">å¾
忥</span> |
| | |
| | | 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 v-if="sysConfig && sysConfig.orgUserDataOrigin != 3" 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" |
| | | <el-button v-if="sysConfig && sysConfig.orgUserDataOrigin != 3" type="text" icon="el-icon-delete" @click="deleteById(row)" style="color: red" |
| | | v-permissions="['business:member:delete']">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | import OperaMemberWindow from '@/components/business/OperaMemberWindow' |
| | | import OperaMemberRoleWindow from '@/components/business/OperaMemberRoleWindow' |
| | | import OperaMemberImportWindow from '@/components/business/OperaMemberImportWindow' |
| | | import { fetchList } from '@/api/business/company' |
| | | import { fetchList,getSysConfig } from '@/api/business/company' |
| | | import { allList } from '@/api/business/position' |
| | | import { memberSync,memberSyncDingding, roleAuth, updateCanVisit, updateHead, updateWorkStatus } from '@/api/business/member' |
| | | export default { |
| | |
| | | authStatus: '', |
| | | idcardNo: '' |
| | | }, |
| | | sysConfig: null, |
| | | loading: false, |
| | | heading: false, |
| | | working: false, |
| | |
| | | // this.search() |
| | | this.getfindCompanyTreePage() |
| | | this.getPositionList() |
| | | this.getSysConfig() |
| | | }, |
| | | mounted() { |
| | | // this.$nextTick(() => { |
| | |
| | | this.positionList = res |
| | | }) |
| | | }, |
| | | getSysConfig() { |
| | | getSysConfig({}) |
| | | .then(res => { |
| | | this.sysConfig = res |
| | | }) |
| | | }, |
| | | empower(id) { |
| | | var that = this |
| | | this.$confirm('ç¡®å®éæ°ææå?', 'æç¤º', { |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <project xmlns="http://maven.apache.org/POM/4.0.0" |
| | | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| | | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| | | <modelVersion>4.0.0</modelVersion> |
| | | <parent> |
| | | <groupId>com.doumee</groupId> |
| | | <artifactId>dmvisit</artifactId> |
| | | <version>1.0.0-SNAPSHOT</version> |
| | | </parent> |
| | | |
| | | <artifactId>base_serivce</artifactId> |
| | | |
| | | <properties> |
| | | <maven.compiler.source>8</maven.compiler.source> |
| | | <maven.compiler.target>8</maven.compiler.target> |
| | | <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| | | <poi.version>5.0.0</poi.version> |
| | | <oshi.version>5.7.0</oshi.version> |
| | | <fastjson.version>1.2.70</fastjson.version> |
| | | <!-- é¿éäºOSSåå¨ --> |
| | | <aliyun-oss.version>3.8.0</aliyun-oss.version> |
| | | <!-- 微信å°ç¨åº --> |
| | | <weixin-java-miniapp.version>4.1.0</weixin-java-miniapp.version> |
| | | </properties> |
| | | |
| | | <dependencies> |
| | | <dependency> |
| | | <groupId>io.swagger.core.v3</groupId> |
| | | <artifactId>swagger-annotations</artifactId> |
| | | <version>2.1.5</version> |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>com.github.binarywang</groupId> |
| | | <artifactId>weixin-java-miniapp</artifactId> |
| | | <version>${weixin-java-miniapp.version}</version> |
| | | </dependency> |
| | | |
| | | <!-- lombok --> |
| | | <dependency> |
| | | <groupId>javax.validation</groupId> |
| | | <artifactId>validation-api</artifactId> |
| | | <version>2.0.1.Final</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.projectlombok</groupId> |
| | | <artifactId>lombok</artifactId> |
| | | </dependency> |
| | | <!-- å·¥å
·å
--> |
| | | <dependency> |
| | | <groupId>org.apache.commons</groupId> |
| | | <artifactId>commons-lang3</artifactId> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>fastjson</artifactId> |
| | | <version>${fastjson.version}</version> |
| | | </dependency> |
| | | <!-- Excel导å
¥/导åºä¾èµå
--> |
| | | <dependency> |
| | | <groupId>org.apache.poi</groupId> |
| | | <artifactId>poi</artifactId> |
| | | <version>${poi.version}</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.apache.poi</groupId> |
| | | <artifactId>poi-ooxml</artifactId> |
| | | <version>${poi.version}</version> |
| | | </dependency> |
| | | <!-- swagger --> |
| | | <dependency> |
| | | <groupId>com.github.xiaoymin</groupId> |
| | | <artifactId>knife4j-spring-boot-starter</artifactId> |
| | | <version>3.0.3</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>io.springfox</groupId> |
| | | <artifactId>springfox-boot-starter</artifactId> |
| | | <version>3.0.0</version> |
| | | </dependency> |
| | | |
| | | <!-- é¿éäºOSS--> |
| | | <dependency> |
| | | <groupId>com.aliyun.oss</groupId> |
| | | <artifactId>aliyun-sdk-oss</artifactId> |
| | | <version>${aliyun-oss.version}</version> |
| | | </dependency> |
| | | |
| | | <!-- aliyun sms SDK --> |
| | | <dependency> |
| | | <groupId>com.aliyun</groupId> |
| | | <artifactId>aliyun-java-sdk-core</artifactId> |
| | | <version>4.5.3</version> |
| | | </dependency> |
| | | |
| | | <!-- è·åç³»ç»ä¿¡æ¯ä¾èµå
--> |
| | | <dependency> |
| | | <groupId>com.github.oshi</groupId> |
| | | <artifactId>oshi-core</artifactId> |
| | | <version>${oshi.version}</version> |
| | | <exclusions> |
| | | <exclusion> |
| | | <artifactId>jna-platform</artifactId> |
| | | <groupId>net.java.dev.jna</groupId> |
| | | </exclusion> |
| | | <exclusion> |
| | | <artifactId>jna</artifactId> |
| | | <groupId>net.java.dev.jna</groupId> |
| | | </exclusion> |
| | | </exclusions> |
| | | </dependency> |
| | | </dependencies> |
| | | </project> |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee; |
| | | |
| | | public class Main { |
| | | public static void main(String[] args) { |
| | | System.out.println("Hello world!"); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <project xmlns="http://maven.apache.org/POM/4.0.0" |
| | | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| | | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| | | <modelVersion>4.0.0</modelVersion> |
| | | <parent> |
| | | <groupId>com.doumee</groupId> |
| | | <artifactId>dmvisit</artifactId> |
| | | <version>1.0.0-SNAPSHOT</version> |
| | | </parent> |
| | | |
| | | <artifactId>jiandaoyun_service</artifactId> |
| | | |
| | | <properties> |
| | | <maven.compiler.source>8</maven.compiler.source> |
| | | <maven.compiler.target>8</maven.compiler.target> |
| | | <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| | | </properties> |
| | | <dependencies> |
| | | <dependency> |
| | | <groupId>com.doumee</groupId> |
| | | <artifactId>base_serivce</artifactId> |
| | | <version>1.0.0-SNAPSHOT</version> |
| | | </dependency> |
| | | </dependencies> |
| | | |
| | | </project> |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee; |
| | | |
| | | public class Main { |
| | | public static void main(String[] args) { |
| | | System.out.println("Hello world!"); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.api.arch; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.http.ApiClient; |
| | | import com.doumee.core.jiandaoyun.model.http.HttpRequestParam; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.Collections; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.doumee.core.jiandaoyun.constants.HttpConstant.CORP_COOP_BASE_PATH; |
| | | |
| | | /** |
| | | * ä¼ä¸äºèç¸å
³æ¥å£ |
| | | */ |
| | | public class CorpCoopApiClient extends ApiClient { |
| | | |
| | | private static final String DEFAULT_VERSION = "v5"; |
| | | private static final List<String> VALID_VERSION_LIST = Collections.singletonList("v5"); |
| | | |
| | | |
| | | public CorpCoopApiClient(String apiKey, String host) { |
| | | super(apiKey, host); |
| | | this.setDefaultVersion(DEFAULT_VERSION); |
| | | this.setValidVersionList(VALID_VERSION_LIST); |
| | | } |
| | | |
| | | @Override |
| | | public String generatePath(String version, String path) { |
| | | return super.getValidVersion(version) + CORP_COOP_BASE_PATH + path; |
| | | } |
| | | |
| | | /** |
| | | * ååºæè¿æ¥çä¼ä¸ |
| | | * |
| | | * @param deptNo - é¨é¨ç¼å· å¯ä¸ºnull |
| | | * @return æè¿æ¥çä¼ä¸ |
| | | */ |
| | | public Map<String, Object> corpCoopDepartList(Integer deptNo, String version) throws Exception { |
| | | String path = this.generatePath(version, "department/list"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("dept_no", deptNo); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * ååºæè¿æ¥çä¼ä¸å¯¹æ¥äºº |
| | | * |
| | | * @param deptNo - é¨é¨ç¼å· å¯ä¸ºnull |
| | | * @return æè¿æ¥çä¼ä¸å¯¹æ¥äºº |
| | | */ |
| | | public Map<String, Object> corpCoopMemberList(Integer deptNo, String version) throws Exception { |
| | | String path = this.generatePath(version, "user/list"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("dept_no", deptNo); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * ååºæè¿æ¥çä¼ä¸å¯¹æ¥äººè¯¦ç»ä¿¡æ¯ |
| | | * |
| | | * @param userName - ç¨æ·å |
| | | */ |
| | | public Map<String, Object> corpCoopUserInfo(String userName, String version) throws Exception { |
| | | if (StringUtils.isBlank(userName)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "user/get"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("username", userName); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.api.arch; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.dept.DeptCreateParam; |
| | | import com.doumee.core.jiandaoyun.model.http.ApiClient; |
| | | import com.doumee.core.jiandaoyun.model.http.HttpRequestParam; |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.Collections; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.doumee.core.jiandaoyun.constants.HttpConstant.DEPT_BASE_PATH; |
| | | |
| | | /** |
| | | * é¨é¨ç¸å
³æ¥å£ |
| | | */ |
| | | public class DeptApiClient extends ApiClient { |
| | | private static final String DEFAULT_VERSION = "v5"; |
| | | private static final List<String> VALID_VERSION_LIST = Collections.singletonList("v5"); |
| | | |
| | | public DeptApiClient(String apiKey, String host) { |
| | | super(apiKey, host); |
| | | this.setDefaultVersion(DEFAULT_VERSION); |
| | | this.setValidVersionList(VALID_VERSION_LIST); |
| | | } |
| | | |
| | | @Override |
| | | public String generatePath(String version, String path) { |
| | | return super.getValidVersion(version) + DEPT_BASE_PATH + path; |
| | | } |
| | | |
| | | /** |
| | | * è·åé¨é¨ç¼å·å¯¹åºé¨é¨å表 ï¼éå½ï¼ |
| | | * |
| | | * @param deptNo - é¨é¨ç¼å· |
| | | * @return é¨é¨ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> deptList(Integer deptNo, Boolean hasChild, String version) throws Exception { |
| | | if (deptNo == null) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "list"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("has_child", hasChild); |
| | | data.put("dept_no", deptNo); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * å建é¨é¨ |
| | | * |
| | | * @param param - é¨é¨åç§° |
| | | * @return é¨é¨ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> deptCreate(DeptCreateParam param, String version) throws Exception { |
| | | if (param == null || !param.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "create"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("name", param.getName()); |
| | | data.put("dept_no", param.getDept_no()); |
| | | data.put("parent_no", param.getParent_no()); |
| | | HttpRequestParam httpRequestParam = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(httpRequestParam); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * æ ¹æ®é¨é¨ç¼å· æ´æ°é¨é¨åç§° |
| | | * |
| | | * @param deptNo - é¨é¨ç¼å· |
| | | * @param name - åç§° |
| | | * @return æ´æ°åçé¨é¨ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> deptUpdate(Integer deptNo, String name, String version) throws Exception { |
| | | if (deptNo == null || StringUtils.isBlank(name)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "update"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("name", name); |
| | | data.put("dept_no", deptNo); |
| | | HttpRequestParam httpRequestParam = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(httpRequestParam); |
| | | } |
| | | |
| | | /** |
| | | * æ ¹æ®é¨é¨ç¼å· å é¤é¨é¨ |
| | | * |
| | | * @param deptNo - é¨é¨ç¼å· |
| | | * @return status |
| | | */ |
| | | public Map<String, Object> deptDelete(Integer deptNo, String version) throws Exception { |
| | | if (deptNo == null) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "delete"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("dept_no", deptNo); |
| | | HttpRequestParam httpRequestParam = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(httpRequestParam); |
| | | } |
| | | |
| | | /** |
| | | * æ ¹æ®éææ¨¡å¼é讯å½çé¨é¨IDè·åé¨é¨ç¼å· |
| | | * |
| | | * @param integrateId - ç¬¬ä¸æ¹å¹³å°çé讯å½é¨é¨çID |
| | | * @return é¨é¨ç¼å· |
| | | */ |
| | | public Map<String, Object> deptByIntegrateId(String integrateId, String version) throws Exception { |
| | | if (StringUtils.isBlank(integrateId)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "dept_no/get"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("integrate_id", integrateId); |
| | | HttpRequestParam httpRequestParam = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(httpRequestParam); |
| | | } |
| | | |
| | | /** |
| | | * æ¹éå建é¨é¨ |
| | | * |
| | | * @param paramList - é¨é¨åæ°å表 |
| | | * @return status |
| | | */ |
| | | public Map<String, Object> departmentImport(List<DeptCreateParam> paramList, String version) throws Exception { |
| | | if (CollectionUtils.isEmpty(paramList)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "import"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("departments", paramList); |
| | | HttpRequestParam httpRequestParam = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(httpRequestParam); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * è·åé¨é¨æåï¼éå½ï¼ |
| | | * |
| | | * @param deptNo - é¨é¨ç¼å· |
| | | * @param hasChild - æ¯å¦æ¥åé¨é¨ |
| | | * @return é¨é¨æåä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> deptMemberList(Integer deptNo, Boolean hasChild, String version) throws Exception { |
| | | if (deptNo == null || hasChild == null) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "user/list"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("has_child", hasChild); |
| | | data.put("dept_no", deptNo); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.api.arch; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.http.ApiClient; |
| | | import com.doumee.core.jiandaoyun.model.http.HttpRequestParam; |
| | | import com.doumee.core.jiandaoyun.model.user.UserCreateParam; |
| | | import com.doumee.core.jiandaoyun.model.user.UserUpdateParam; |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.Arrays; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.doumee.core.jiandaoyun.constants.HttpConstant.MEMBER_BASE_PATH; |
| | | |
| | | /** |
| | | * æåç¸å
³æ¥å£ |
| | | */ |
| | | public class MemberApiClient extends ApiClient { |
| | | private static final String DEFAULT_VERSION = "v5"; |
| | | private static final List<String> VALID_VERSION_LIST = Arrays.asList("v5"); |
| | | |
| | | public MemberApiClient(String apiKey, String host) { |
| | | super(apiKey, host); |
| | | this.setDefaultVersion(DEFAULT_VERSION); |
| | | this.setValidVersionList(VALID_VERSION_LIST); |
| | | } |
| | | |
| | | @Override |
| | | public String generatePath(String version, String path) { |
| | | return super.getValidVersion(version) + MEMBER_BASE_PATH + path; |
| | | } |
| | | |
| | | /** |
| | | * å建æå |
| | | * |
| | | * @param param - æåä¿¡æ¯ |
| | | * @return æåä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> userCreate(UserCreateParam param, String version) throws Exception { |
| | | if (param == null || !param.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "create"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("name", param.getName()); |
| | | data.put("username", param.getUsername()); |
| | | data.put("departments", param.getDepartments()); |
| | | HttpRequestParam requestParam = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(requestParam); |
| | | } |
| | | |
| | | /** |
| | | * æ ¹æ®æååç§° è·åæå |
| | | * |
| | | * @param userName - æååç§° |
| | | * @return æåä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> userInfo(String userName, String version) throws Exception { |
| | | if (StringUtils.isBlank(userName)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "get"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("username", userName); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * æ´æ°æå |
| | | * |
| | | * @param updateParam - æ´æ°çæåä¿¡æ¯ |
| | | * @return æ´æ°åçæåä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> userUpdate(UserUpdateParam updateParam, String version) throws Exception { |
| | | if (updateParam == null || !updateParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "update"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("name", updateParam.getName()); |
| | | data.put("username", updateParam.getUserName()); |
| | | data.put("departments", updateParam.getDepartmentList()); |
| | | HttpRequestParam requestParam = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(requestParam); |
| | | } |
| | | |
| | | /** |
| | | * æåå é¤ |
| | | * |
| | | * @param userName - æååç§° |
| | | * @return status |
| | | */ |
| | | public Map<String, Object> userDelete(String userName, String version) throws Exception { |
| | | if (StringUtils.isBlank(userName)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "delete"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("username", userName); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * æ¹éå 餿å |
| | | * |
| | | * @param userNameList - å¾
å é¤çç¨æ·åç§°å表 |
| | | * @return status |
| | | */ |
| | | public Map<String, Object> userBatchDelete(List<String> userNameList, String version) throws Exception { |
| | | if (CollectionUtils.isEmpty(userNameList)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "batch_delete"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("usernames", userNameList); |
| | | HttpRequestParam requestParam = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(requestParam); |
| | | } |
| | | |
| | | /** |
| | | * æ¹é导å
¥æå |
| | | * |
| | | * @param userNameList - 导å
¥çæåå表 |
| | | * @return status |
| | | */ |
| | | public Map<String, Object> userImport(List<UserCreateParam> userNameList, String version) throws Exception { |
| | | if (CollectionUtils.isEmpty(userNameList)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "import"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("users", userNameList); |
| | | HttpRequestParam requestParam = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(requestParam); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.api.arch; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.http.ApiClient; |
| | | import com.doumee.core.jiandaoyun.model.http.HttpRequestParam; |
| | | import com.doumee.core.jiandaoyun.model.role.RoleListQueryParam; |
| | | import com.doumee.core.jiandaoyun.model.role.RoleMemberQueryParam; |
| | | import com.doumee.core.jiandaoyun.model.role.RoleUpdateParam; |
| | | import com.fasterxml.jackson.core.type.TypeReference; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.Collections; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.doumee.core.jiandaoyun.constants.HttpConstant.ROLE_BASE_PATH; |
| | | |
| | | /** |
| | | * è§è²ç¸å
³æ¥å£ |
| | | */ |
| | | public class RoleApiClient extends ApiClient { |
| | | private static final String DEFAULT_VERSION = "v5"; |
| | | private static final List<String> VALID_VERSION_LIST = Collections.singletonList("v5"); |
| | | |
| | | public RoleApiClient(String apiKey, String host) { |
| | | super(apiKey, host); |
| | | this.setDefaultVersion(DEFAULT_VERSION); |
| | | this.setValidVersionList(VALID_VERSION_LIST); |
| | | } |
| | | |
| | | @Override |
| | | public String generatePath(String version, String path) { |
| | | return super.getValidVersion(version) + ROLE_BASE_PATH + path; |
| | | } |
| | | |
| | | /** |
| | | * ååºè§è² |
| | | * |
| | | * @param queryParam - æ¥è¯¢åæ° |
| | | * @return è§è²ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> roleList(RoleListQueryParam queryParam, String version) throws Exception { |
| | | if (queryParam == null || !queryParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "list"); |
| | | // 请æ±åæ° å° queryParam éé¢ç屿§è½¬æ¢æmap |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(queryParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * å建è§è² |
| | | * |
| | | * @param name - è§è²åç§° |
| | | * @param groupNo - è§è²ç»ç¼å· |
| | | * @return è§è²ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> roleCreate(String name, Integer groupNo, String version) throws Exception { |
| | | if (StringUtils.isBlank(name) || groupNo == null) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version,"create"); |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("group_no", groupNo); |
| | | data.put("name", name); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * æ´æ°è§è² |
| | | * |
| | | * @param updateParam - è§è²æ´æ°ä¿¡æ¯ |
| | | * @return æ´æ°åçè§è²ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> roleUpdate(RoleUpdateParam updateParam, String version) throws Exception { |
| | | if (updateParam == null || !updateParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version,"update"); |
| | | // 请æ±åæ° å° queryParam éé¢ç屿§è½¬æ¢æmap |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(updateParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * å é¤è§è² |
| | | * |
| | | * @param roleNo - è§è²ç¼å· |
| | | * @return æ |
| | | */ |
| | | public Map<String, Object> roleDelete(Integer roleNo, String version) throws Exception { |
| | | if (roleNo == null) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version,"delete"); |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("role_no", roleNo); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * ååºè§è²ä¸çæææå |
| | | * |
| | | * @param queryParam - äº§çº¿åæ° |
| | | * @return æåä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> roleMemberList(RoleMemberQueryParam queryParam, String version) throws Exception { |
| | | if (queryParam == null || !queryParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version,"user/list"); |
| | | // 请æ±åæ° å° queryParam éé¢ç屿§è½¬æ¢æmap |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(queryParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * æ¹éç»å·²æçæå设置èªå»ºè§è² |
| | | * |
| | | * @param roleNo - è§è²ç¼å· |
| | | * @param userNameList - æååç§°å表 |
| | | * @return success |
| | | */ |
| | | public Map<String, Object> roleAddMembers(Integer roleNo, List<String> userNameList, String version) |
| | | throws Exception { |
| | | if (roleNo == null || CollectionUtils.isEmpty(userNameList)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version,"add_members"); |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("role_no", roleNo); |
| | | data.put("usernames", userNameList); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * 为èªå»ºè§è²æ¹éç§»é¤æå |
| | | * |
| | | * @param roleNo - è§è²ç¼å· |
| | | * @param userNameList - ç¨æ·åç§°å表 |
| | | * @return status |
| | | */ |
| | | public Map<String, Object> roleRemoveMembers(Integer roleNo, List<String> userNameList, String version) |
| | | throws Exception { |
| | | if (roleNo == null || CollectionUtils.isEmpty(userNameList)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version,"remove_members"); |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("role_no", roleNo); |
| | | data.put("usernames", userNameList); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.api.arch; |
| | | |
| | | |
| | | import com.doumee.core.jiandaoyun.model.http.ApiClient; |
| | | import com.doumee.core.jiandaoyun.model.http.HttpRequestParam; |
| | | import com.doumee.core.jiandaoyun.model.role.RoleGroupListQueryParam; |
| | | import com.fasterxml.jackson.core.type.TypeReference; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.Collections; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.doumee.core.jiandaoyun.constants.HttpConstant.ROLE_GROUP_BASE_PATH; |
| | | |
| | | /** |
| | | * è§è²ç»ç¸å
³æ¥å£ |
| | | */ |
| | | public class RoleGroupApiClient extends ApiClient { |
| | | |
| | | private static final String DEFAULT_VERSION = "v5"; |
| | | private static final List<String> VALID_VERSION_LIST = Collections.singletonList("v5"); |
| | | |
| | | public RoleGroupApiClient(String apiKey, String host) { |
| | | super(apiKey, host); |
| | | this.setDefaultVersion(DEFAULT_VERSION); |
| | | this.setValidVersionList(VALID_VERSION_LIST); |
| | | } |
| | | |
| | | @Override |
| | | public String generatePath(String version, String path) { |
| | | return super.getValidVersion(version) + ROLE_GROUP_BASE_PATH + path; |
| | | } |
| | | |
| | | /** |
| | | * ååºè§è²ç» |
| | | * |
| | | * @param queryParam - æ¥è¯¢åæ° |
| | | * @return è§è²ç»ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> roleGroupList(RoleGroupListQueryParam queryParam, String version) throws Exception { |
| | | if (queryParam == null || !queryParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version,"list"); |
| | | // 请æ±åæ° å° queryParam éé¢ç屿§è½¬æ¢æmap |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(queryParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * å建è§è²ç» |
| | | * |
| | | * @param name - è§è²ç»åç§° |
| | | * @return è§è²ç»ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> roleGroupCreate(String name, String version) throws Exception { |
| | | if (StringUtils.isBlank(name)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version,"create"); |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("name", name); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * æ´æ°è§è²ç» |
| | | * |
| | | * @param name - è§è²ç»åç§° |
| | | * @param roleGroupNo - è§è²ç»ç¼å· |
| | | * @return æ´æ°åçè§è²ç»ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> roleGroupUpdate(String name, Integer roleGroupNo, String version) throws Exception { |
| | | if (StringUtils.isBlank(name) || roleGroupNo == null) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version,"update"); |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("name", name); |
| | | data.put("role_group_no", roleGroupNo); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * å é¤è§è²ç» |
| | | * |
| | | * @param roleGroupNo - è§è²ç»ç¼å· |
| | | * @return status |
| | | */ |
| | | public Map<String, Object> roleGroupDelete(Integer roleGroupNo, String version) throws Exception { |
| | | if (roleGroupNo == null) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "delete"); |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("role_group_no", roleGroupNo); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.api.jdy; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.base.PageBaseParam; |
| | | import com.doumee.core.jiandaoyun.model.http.ApiClient; |
| | | import com.doumee.core.jiandaoyun.model.http.HttpRequestParam; |
| | | import com.fasterxml.jackson.core.type.TypeReference; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | |
| | | import java.util.Collections; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.doumee.core.jiandaoyun.constants.HttpConstant.APP_BASE_PATH; |
| | | |
| | | |
| | | /** |
| | | * åºç¨ç¸å
³æ¥å£ |
| | | */ |
| | | public class AppApiClient extends ApiClient { |
| | | |
| | | private static final String DEFAULT_VERSION = "v5"; |
| | | private static final List<String> VALID_VERSION_LIST = Collections.singletonList("v5"); |
| | | |
| | | public AppApiClient(String apiKey, String host) { |
| | | super(apiKey, host); |
| | | this.setDefaultVersion(DEFAULT_VERSION); |
| | | this.setValidVersionList(VALID_VERSION_LIST); |
| | | } |
| | | |
| | | @Override |
| | | public String generatePath(String version, String path) { |
| | | return super.getValidVersion(version) + APP_BASE_PATH + path; |
| | | } |
| | | |
| | | /** |
| | | * åºç¨å页å表 |
| | | * |
| | | * @param queryParam - æ¥è¯¢åæ° |
| | | * @return åºç¨ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> appList(PageBaseParam queryParam, String version) throws Exception { |
| | | if (queryParam == null || !queryParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "list"); |
| | | // 请æ±åæ° å° queryParam éé¢ç屿§è½¬æ¢æmap |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(queryParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.api.jdy; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.file.UploadTokenParam; |
| | | import com.doumee.core.jiandaoyun.model.http.ApiClient; |
| | | import com.doumee.core.jiandaoyun.model.http.HttpRequestParam; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.io.File; |
| | | import java.util.Collections; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.doumee.core.jiandaoyun.constants.HttpConstant.FORM_BASE_PATH; |
| | | |
| | | /** |
| | | * æä»¶ç¸å
³æ¥å£ |
| | | */ |
| | | public class FileApiClient extends ApiClient { |
| | | |
| | | private static final String DEFAULT_VERSION = "v5"; |
| | | private static final List<String> VALID_VERSION_LIST = Collections.singletonList("v5"); |
| | | |
| | | public FileApiClient(String apiKey, String host) { |
| | | super(apiKey, host); |
| | | this.setDefaultVersion(DEFAULT_VERSION); |
| | | this.setValidVersionList(VALID_VERSION_LIST); |
| | | } |
| | | |
| | | @Override |
| | | public String generatePath(String version, String path) { |
| | | return super.getValidVersion(version) + FORM_BASE_PATH + path; |
| | | } |
| | | |
| | | /** |
| | | * è·åæä»¶ä¸ä¼ åè¯åä¸ä¼ å°åæ¥å£ |
| | | * |
| | | * @param uploadTokenParam - æä»¶å¯¹åºçä¿¡æ¯ |
| | | * @return tokenåurlä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> uploadToken(UploadTokenParam uploadTokenParam, String version) throws Exception { |
| | | if (uploadTokenParam == null || !uploadTokenParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "file/get_upload_token"); |
| | | // 请æ±åæ° |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("transaction_id", uploadTokenParam.getTransactionId()); |
| | | data.put("app_id", uploadTokenParam.getAppId()); |
| | | data.put("entry_id", uploadTokenParam.getEntryId()); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | public Map<String, Object> uploadFile(String url, String token, File file) throws Exception { |
| | | if (StringUtils.isBlank(url) || StringUtils.isBlank(token) || file == null) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | return this.httpPostFile(url, token, file); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.api.jdy; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.form.FormQueryParam; |
| | | import com.doumee.core.jiandaoyun.model.http.ApiClient; |
| | | import com.doumee.core.jiandaoyun.model.http.HttpRequestParam; |
| | | import com.fasterxml.jackson.core.type.TypeReference; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.Arrays; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.doumee.core.jiandaoyun.constants.HttpConstant.FORM_BASE_PATH; |
| | | |
| | | /** |
| | | * 表åç¸å
³æ¥å£ |
| | | */ |
| | | public class FormApiClient extends ApiClient { |
| | | private static final String DEFAULT_VERSION = "v5"; |
| | | private static final List<String> VALID_VERSION_LIST = Arrays.asList("v5"); |
| | | |
| | | public FormApiClient(String apiKey, String host) { |
| | | super(apiKey, host); |
| | | this.setDefaultVersion(DEFAULT_VERSION); |
| | | this.setValidVersionList(VALID_VERSION_LIST); |
| | | } |
| | | |
| | | @Override |
| | | public String generatePath(String version, String path) { |
| | | return super.getValidVersion(version) + FORM_BASE_PATH + path; |
| | | } |
| | | |
| | | /** |
| | | * 表ååæ®µæ¥è¯¢æ¥å£ |
| | | * |
| | | * @param appId - åºç¨ Id |
| | | * @param entryId - 表å Id |
| | | */ |
| | | public Map<String, Object> formWidgets(String appId, String entryId, String version) throws Exception { |
| | | if (StringUtils.isBlank(appId) || StringUtils.isBlank(entryId)) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "widget/list"); |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("app_id", appId); |
| | | data.put("entry_id", entryId); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * è¡¨åæ¥è¯¢æ¥å£ å页 |
| | | * |
| | | * @param queryParam - æ¥è¯¢åæ° |
| | | * @return 表åä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> entryList(FormQueryParam queryParam, String version) throws Exception { |
| | | if (queryParam == null || !queryParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "list"); |
| | | // 请æ±åæ° å° queryParam éé¢ç屿§è½¬æ¢æmap |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(queryParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.api.jdy; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.form.*; |
| | | import com.doumee.core.jiandaoyun.model.http.ApiClient; |
| | | import com.doumee.core.jiandaoyun.model.http.HttpRequestParam; |
| | | import com.fasterxml.jackson.core.type.TypeReference; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | |
| | | import java.util.Collections; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.doumee.core.jiandaoyun.constants.HttpConstant.FORM_DATA_BASE_PATH; |
| | | |
| | | /** |
| | | * è¡¨åæ°æ®ç¸å
³æ¥å£ |
| | | */ |
| | | public class FormDataApiClient extends ApiClient { |
| | | |
| | | private static final String DEFAULT_VERSION = "v5"; |
| | | private static final List<String> VALID_VERSION_LIST = Collections.singletonList("v5"); |
| | | |
| | | public FormDataApiClient(String apiKey, String host) { |
| | | super(apiKey, host); |
| | | this.setDefaultVersion(DEFAULT_VERSION); |
| | | this.setValidVersionList(VALID_VERSION_LIST); |
| | | } |
| | | |
| | | @Override |
| | | public String generatePath(String version, String path) { |
| | | return super.getValidVersion(version) + FORM_DATA_BASE_PATH + path; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * æ°å»ºåæ¡æ°æ®æ¥å£ |
| | | * |
| | | * @param createParam - è¡¨åæ°æ®ä¿¡æ¯ |
| | | * @return æ°å¢çæ°æ®ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> singleDataCreate(FormDataCreateParam createParam, String version) throws Exception { |
| | | if (createParam == null || !createParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "create"); |
| | | // 请æ±åæ° å° queryParam éé¢ç屿§è½¬æ¢æmap |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(createParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * æ¥è¯¢åæ¡æ°æ®æ¥å£ |
| | | * |
| | | * @param queryParam - æ¥è¯¢åæ° |
| | | * @return æ°æ®ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> singleDataQuery(FormDataQueryParam queryParam, String version) throws Exception { |
| | | if (queryParam == null || !queryParam.isSingleQueryValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "get"); |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("data_id", queryParam.getData_id()); |
| | | data.put("app_id", queryParam.getApp_id()); |
| | | data.put("entry_id", queryParam.getEntry_id()); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * ä¿®æ¹åæ¡æ°æ®æ¥å£ |
| | | * |
| | | * @param updateParam - æ´æ°æ°æ®ä¿¡æ¯ |
| | | * @return æ´æ°åçæ°æ®ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> singleDataUpdate(FormDataUpdateParam updateParam, String version) throws Exception { |
| | | if (updateParam == null || !updateParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "update"); |
| | | // 请æ±åæ° å° queryParam éé¢ç屿§è½¬æ¢æmap |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(updateParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * åªé¤åæ¡æ°æ®æ¥å£ |
| | | * |
| | | * @param deleteParam - å é¤çæ°æ®ä¿¡æ¯ |
| | | * @param version - çæ¬ |
| | | * @return status |
| | | */ |
| | | public Map<String, Object> singleDataRemove(FormDataDeleteParam deleteParam, String version) throws Exception { |
| | | if (deleteParam == null || !deleteParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "delete"); |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(deleteParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * æ°å»ºå¤æ¡æ°æ®æ¥å£ |
| | | * |
| | | * @param createParam - æ°å»ºçæ°æ®ä¿¡æ¯ |
| | | * @param version - çæ¬ |
| | | * @return success_count |
| | | */ |
| | | public Map<String, Object> batchDataCreate(FormDataBatchCreateParam createParam, String version) throws Exception { |
| | | if (createParam == null || !createParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "batch_create"); |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(createParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * æ¥è¯¢å¤æ¡æ°æ®æ¥å£ |
| | | * |
| | | * @param queryParam - æ¥è¯¢åæ° |
| | | * @param version - çæ¬ |
| | | * @return æ°æ®ä¿¡æ¯ |
| | | */ |
| | | public Map<String, Object> batchDataQuery(FormDataQueryParam queryParam, String version) throws Exception { |
| | | if (queryParam == null || !queryParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "list"); |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(queryParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * å é¤å¤æ¡æ°æ®æ¥å£ |
| | | * |
| | | * @param removeParam - å é¤åæ° |
| | | * @param version - çæ¬ |
| | | * @return status å success_count |
| | | */ |
| | | public Map<String, Object> batchDataRemove(FormDataBatchRemoveParam removeParam, String version) throws Exception { |
| | | if (removeParam == null || !removeParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "batch_delete"); |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(removeParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | /** |
| | | * ä¿®æ¹å¤æ¡æ°æ®æ¥å£ |
| | | * |
| | | * @param updateParam - æ´æ°æ°æ®çä¿¡æ¯ |
| | | * @param version - çæ¬ |
| | | * @return status å success_count |
| | | */ |
| | | public Map<String, Object> batchDataUpdate(FormDataBatchUpdateParam updateParam, String version) throws Exception { |
| | | if (updateParam == null || !updateParam.isValid()) { |
| | | throw new RuntimeException("param lack!"); |
| | | } |
| | | String path = this.generatePath(version, "batch_update"); |
| | | Map<String, Object> data = |
| | | new ObjectMapper().convertValue(updateParam, new TypeReference<Map<String, Object>>() { |
| | | }); |
| | | HttpRequestParam param = new HttpRequestParam(path, data); |
| | | return this.sendPostRequest(param); |
| | | } |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.constants; |
| | | |
| | | /** |
| | | * http ç¸å
³ç常é |
| | | */ |
| | | public class HttpConstant { |
| | | public static final String HOST = "https://api.jiandaoyun.com/api/"; |
| | | |
| | | /** |
| | | * é¨é¨ç¸å
³çæ¥å£åç¼ |
| | | */ |
| | | public static final String DEPT_BASE_PATH = "/corp/department/"; |
| | | |
| | | /** |
| | | * æåç¸å
³çæ¥å£åç¼ |
| | | */ |
| | | public static final String MEMBER_BASE_PATH = "/corp/user/"; |
| | | |
| | | /** |
| | | * åºç¨ç¸å
³çæ¥å£åç¼ |
| | | */ |
| | | public static final String APP_BASE_PATH = "/app/"; |
| | | |
| | | |
| | | /** |
| | | * ä¼ä¸äºèçæ¥å£åç¼ |
| | | */ |
| | | public static final String CORP_COOP_BASE_PATH = "/corp/guest/"; |
| | | |
| | | /** |
| | | * è§è²ç¸å
³çæ¥å£åç¼ |
| | | */ |
| | | public static final String ROLE_BASE_PATH = "/corp/role/"; |
| | | |
| | | /** |
| | | * è§è²ç»ç¸å
³çæ¥å£åç¼ |
| | | */ |
| | | public static final String ROLE_GROUP_BASE_PATH = "/corp/role_group/"; |
| | | |
| | | /** |
| | | * 表åç¸å
³çæ¥å£åç¼ |
| | | */ |
| | | public static final String FORM_BASE_PATH = "/app/entry/"; |
| | | |
| | | /** |
| | | * 表åç¸å
³çæ¥å£åç¼ |
| | | */ |
| | | public static final String FORM_DATA_BASE_PATH = "/app/entry/data/"; |
| | | |
| | | /** |
| | | * API_KEY |
| | | */ |
| | | public static final String API_KEY = "JsmYomhn3dissp9ZJ6QeTpnH2xKoKZgw"; |
| | | |
| | | public static final String APP_ID = "APP_ID"; |
| | | |
| | | public static final String ENTRY_ID = "ENTRY_ID"; |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.base; |
| | | |
| | | /** |
| | | * å页æ¥è¯¢åºå |
| | | */ |
| | | public class PageBaseParam { |
| | | /** |
| | | * è·³è¿æ°é |
| | | */ |
| | | private Integer skip; |
| | | /** |
| | | * æ¥è¯¢æ°é |
| | | */ |
| | | private Integer limit; |
| | | |
| | | public Integer getSkip() { |
| | | return skip; |
| | | } |
| | | |
| | | public void setSkip(Integer skip) { |
| | | this.skip = skip; |
| | | } |
| | | |
| | | public Integer getLimit() { |
| | | return limit; |
| | | } |
| | | |
| | | public void setLimit(Integer limit) { |
| | | this.limit = limit; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return this.getLimit() != null && this.getSkip() != null; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "PageBaseParam{" + |
| | | "skip=" + skip + |
| | | ", limit=" + limit + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.dept; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | /** |
| | | * å建é¨é¨çåæ° |
| | | */ |
| | | public class DeptCreateParam { |
| | | |
| | | /** |
| | | * é¨é¨åç§° å¿
å¡« |
| | | */ |
| | | private String name; |
| | | |
| | | /** |
| | | * ç¶çº§é¨é¨ç¼å· éå¡« |
| | | */ |
| | | private Integer parent_no; |
| | | |
| | | /** |
| | | * é¨é¨ç¼å· éå¡« |
| | | */ |
| | | private Integer dept_no; |
| | | |
| | | public DeptCreateParam(String name) { |
| | | this.name = name; |
| | | } |
| | | |
| | | public DeptCreateParam() { |
| | | } |
| | | |
| | | public String getName() { |
| | | return name; |
| | | } |
| | | |
| | | public void setName(String name) { |
| | | this.name = name; |
| | | } |
| | | |
| | | public Integer getParent_no() { |
| | | return parent_no; |
| | | } |
| | | |
| | | public void setParent_no(Integer parent_no) { |
| | | this.parent_no = parent_no; |
| | | } |
| | | |
| | | public Integer getDept_no() { |
| | | return dept_no; |
| | | } |
| | | |
| | | public void setDept_no(Integer dept_no) { |
| | | this.dept_no = dept_no; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getName()); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "DeptCreateParam{" + |
| | | "name='" + name + '\'' + |
| | | ", parent_no=" + parent_no + |
| | | ", dept_no=" + dept_no + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.dept; |
| | | |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * é¨é¨å®ä½åæ° |
| | | */ |
| | | |
| | | @Data |
| | | public class DeptEntityModel { |
| | | |
| | | private Integer dept_no;// Number é¨é¨ç¼å·ï¼ä¼ä¸å
å¯ä¸ ä¸åä¼ä¸ä¹é´å¯è½åå¨éå¤ |
| | | |
| | | private String name ;//String é¨é¨åç§° |
| | | private Integer parent_no;// Number ç¶é¨é¨ç¼å· å¨ä¼ä¸äºèæ¥å£ä¸(å¤é¨é¨é¨)ä¸åå¨ |
| | | |
| | | private Integer type ;//Number é¨é¨ç±»å 0: 常è§é¨ 2: ä¼ä¸äºèå¤é¨é¨é¨ |
| | | private Integer status;// Number é¨é¨ç¶æ 1: 使ç¨ä¸çé¨é¨ -1: éææ¨¡å¼ä¸åæ¥åå é¤çé¨é¨ |
| | | private String integrate_id;// String éææ¨¡å¼åæ¥é¨é¨å
³è ID ä»
å¨éææ¨¡å¼ä¸è¿åï¼ä¸å¨ä¼ä¸äºèæ¥å£(å¤é¨é¨é¨)ä¸è¿å |
| | | private Integer seq ;//number é¨é¨æåº é¨é¨å¨ç¶é¨é¨å
çåºå·ï¼ä»å°å°å¤§æå |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.file; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | public class UploadTokenParam { |
| | | private String appId; |
| | | private String entryId; |
| | | private String transactionId; |
| | | |
| | | public String getAppId() { |
| | | return appId; |
| | | } |
| | | |
| | | public void setAppId(String appId) { |
| | | this.appId = appId; |
| | | } |
| | | |
| | | public String getEntryId() { |
| | | return entryId; |
| | | } |
| | | |
| | | public void setEntryId(String entryId) { |
| | | this.entryId = entryId; |
| | | } |
| | | |
| | | public String getTransactionId() { |
| | | return transactionId; |
| | | } |
| | | |
| | | public void setTransactionId(String transactionId) { |
| | | this.transactionId = transactionId; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getAppId()) && StringUtils.isNotBlank(this.getEntryId()) |
| | | && StringUtils.isNotBlank(this.getTransactionId()); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "UploadTokenParam{" + |
| | | "appId='" + appId + '\'' + |
| | | ", entryId='" + entryId + '\'' + |
| | | ", transactionId='" + transactionId + '\'' + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.form; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | public class FormDataBatchCreateParam { |
| | | /** |
| | | * åºç¨id |
| | | */ |
| | | private String app_id; |
| | | |
| | | /** |
| | | * 表åid |
| | | */ |
| | | private String entry_id; |
| | | |
| | | /** |
| | | * æ°æ® |
| | | */ |
| | | private List<Map<String, Object>> data_list; |
| | | |
| | | private Boolean is_start_workflow; |
| | | |
| | | |
| | | private String transaction_id; |
| | | |
| | | public FormDataBatchCreateParam() { |
| | | } |
| | | |
| | | public FormDataBatchCreateParam(String app_id, String entry_id, List<Map<String, Object>> data_list) { |
| | | this.app_id = app_id; |
| | | this.entry_id = entry_id; |
| | | this.data_list = data_list; |
| | | } |
| | | |
| | | public String getApp_id() { |
| | | return app_id; |
| | | } |
| | | |
| | | public void setApp_id(String app_id) { |
| | | this.app_id = app_id; |
| | | } |
| | | |
| | | public String getEntry_id() { |
| | | return entry_id; |
| | | } |
| | | |
| | | public void setEntry_id(String entry_id) { |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | public List<Map<String, Object>> getData_list() { |
| | | return data_list; |
| | | } |
| | | |
| | | public void setData_list(List<Map<String, Object>> data_list) { |
| | | this.data_list = data_list; |
| | | } |
| | | |
| | | public Boolean getIs_start_workflow() { |
| | | return is_start_workflow; |
| | | } |
| | | |
| | | public void setIs_start_workflow(Boolean is_start_workflow) { |
| | | this.is_start_workflow = is_start_workflow; |
| | | } |
| | | |
| | | public String getTransaction_id() { |
| | | return transaction_id; |
| | | } |
| | | |
| | | public void setTransaction_id(String transaction_id) { |
| | | this.transaction_id = transaction_id; |
| | | } |
| | | |
| | | |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getApp_id()) && StringUtils.isNotBlank(this.getEntry_id()); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "FormDataBatchCreateParam{" + |
| | | "app_id='" + app_id + '\'' + |
| | | ", entry_id='" + entry_id + '\'' + |
| | | ", data_list=" + data_list + |
| | | ", is_start_workflow=" + is_start_workflow + |
| | | ", transaction_id='" + transaction_id + '\'' + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.form; |
| | | |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.List; |
| | | |
| | | public class FormDataBatchRemoveParam { |
| | | |
| | | private List<String> data_ids; |
| | | |
| | | private String app_id; |
| | | |
| | | private String entry_id; |
| | | |
| | | public FormDataBatchRemoveParam(String app_id, String entry_id, List<String> data_ids) { |
| | | this.data_ids = data_ids; |
| | | this.app_id = app_id; |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | public List<String> getData_ids() { |
| | | return data_ids; |
| | | } |
| | | |
| | | public void setData_ids(List<String> data_ids) { |
| | | this.data_ids = data_ids; |
| | | } |
| | | |
| | | public String getApp_id() { |
| | | return app_id; |
| | | } |
| | | |
| | | public void setApp_id(String app_id) { |
| | | this.app_id = app_id; |
| | | } |
| | | |
| | | public String getEntry_id() { |
| | | return entry_id; |
| | | } |
| | | |
| | | public void setEntry_id(String entry_id) { |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getApp_id()) && StringUtils.isNotBlank(this.getEntry_id()) && CollectionUtils.isNotEmpty(data_ids); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "FormDataBatchRemoveParam{" + |
| | | "data_ids=" + data_ids + |
| | | ", app_id='" + app_id + '\'' + |
| | | ", entry_id='" + entry_id + '\'' + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.form; |
| | | |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | public class FormDataBatchUpdateParam { |
| | | /** |
| | | * åºç¨id |
| | | */ |
| | | private String app_id; |
| | | |
| | | /** |
| | | * 表åid |
| | | */ |
| | | private String entry_id; |
| | | |
| | | private List<String> data_ids; |
| | | |
| | | /** |
| | | * æ°æ® |
| | | */ |
| | | private Map<String, Object> data; |
| | | |
| | | |
| | | private String transaction_id; |
| | | |
| | | public FormDataBatchUpdateParam() { |
| | | } |
| | | |
| | | public FormDataBatchUpdateParam(String app_id, String entry_id) { |
| | | this.app_id = app_id; |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | |
| | | public String getTransaction_id() { |
| | | return transaction_id; |
| | | } |
| | | |
| | | public void setTransaction_id(String transaction_id) { |
| | | this.transaction_id = transaction_id; |
| | | } |
| | | |
| | | public String getApp_id() { |
| | | return app_id; |
| | | } |
| | | |
| | | public void setApp_id(String app_id) { |
| | | this.app_id = app_id; |
| | | } |
| | | |
| | | public String getEntry_id() { |
| | | return entry_id; |
| | | } |
| | | |
| | | public void setEntry_id(String entry_id) { |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | public List<String> getData_ids() { |
| | | return data_ids; |
| | | } |
| | | |
| | | public void setData_ids(List<String> data_ids) { |
| | | this.data_ids = data_ids; |
| | | } |
| | | |
| | | public Map<String, Object> getData() { |
| | | return data; |
| | | } |
| | | |
| | | public void setData(Map<String, Object> data) { |
| | | this.data = data; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getApp_id()) && StringUtils.isNotBlank(this.getEntry_id()) |
| | | && CollectionUtils.isNotEmpty(this.getData_ids()); |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "FormDataBatchUpdateParam{" + |
| | | "app_id='" + app_id + '\'' + |
| | | ", entry_id='" + entry_id + '\'' + |
| | | ", data_ids=" + data_ids + |
| | | ", data=" + data + |
| | | ", transaction_id='" + transaction_id + '\'' + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.form; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.Map; |
| | | |
| | | public class FormDataCreateParam { |
| | | /** |
| | | * åºç¨id |
| | | */ |
| | | private String app_id; |
| | | |
| | | /** |
| | | * 表åid |
| | | */ |
| | | private String entry_id; |
| | | |
| | | /** |
| | | * æ°æ® |
| | | */ |
| | | private Map<String, Object> data; |
| | | |
| | | private Boolean is_start_workflow; |
| | | |
| | | private Boolean is_start_trigger; |
| | | |
| | | private String transaction_id; |
| | | |
| | | public FormDataCreateParam() { |
| | | } |
| | | |
| | | public FormDataCreateParam(String app_id, String entry_id, Map<String, Object> data) { |
| | | this.app_id = app_id; |
| | | this.entry_id = entry_id; |
| | | this.data = data; |
| | | } |
| | | |
| | | public String getApp_id() { |
| | | return app_id; |
| | | } |
| | | |
| | | public void setApp_id(String app_id) { |
| | | this.app_id = app_id; |
| | | } |
| | | |
| | | public String getEntry_id() { |
| | | return entry_id; |
| | | } |
| | | |
| | | public void setEntry_id(String entry_id) { |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | public Map<String, Object> getData() { |
| | | return data; |
| | | } |
| | | |
| | | public void setData(Map<String, Object> data) { |
| | | this.data = data; |
| | | } |
| | | |
| | | public Boolean getIs_start_workflow() { |
| | | return is_start_workflow; |
| | | } |
| | | |
| | | public void setIs_start_workflow(Boolean is_start_workflow) { |
| | | this.is_start_workflow = is_start_workflow; |
| | | } |
| | | |
| | | public Boolean getIs_start_trigger() { |
| | | return is_start_trigger; |
| | | } |
| | | |
| | | public void setIs_start_trigger(Boolean is_start_trigger) { |
| | | this.is_start_trigger = is_start_trigger; |
| | | } |
| | | |
| | | public String getTransaction_id() { |
| | | return transaction_id; |
| | | } |
| | | |
| | | public void setTransaction_id(String transaction_id) { |
| | | this.transaction_id = transaction_id; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getApp_id()) && StringUtils.isNotBlank(this.getEntry_id()); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "FormDataCreateParam{" + |
| | | "app_id='" + app_id + '\'' + |
| | | ", entry_id='" + entry_id + '\'' + |
| | | ", data=" + data + |
| | | ", is_start_workflow=" + is_start_workflow + |
| | | ", is_start_trigger=" + is_start_trigger + |
| | | ", transaction_id='" + transaction_id + '\'' + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.form; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | public class FormDataDeleteParam { |
| | | /** |
| | | * åºç¨id |
| | | */ |
| | | private String app_id; |
| | | |
| | | /** |
| | | * 表åid |
| | | */ |
| | | private String entry_id; |
| | | |
| | | private String data_id; |
| | | |
| | | private Boolean is_start_trigger; |
| | | |
| | | |
| | | public FormDataDeleteParam() { |
| | | } |
| | | |
| | | public FormDataDeleteParam(String app_id, String entry_id, String data_id) { |
| | | this.app_id = app_id; |
| | | this.entry_id = entry_id; |
| | | this.data_id = data_id; |
| | | } |
| | | |
| | | public String getApp_id() { |
| | | return app_id; |
| | | } |
| | | |
| | | public void setApp_id(String app_id) { |
| | | this.app_id = app_id; |
| | | } |
| | | |
| | | public String getEntry_id() { |
| | | return entry_id; |
| | | } |
| | | |
| | | public void setEntry_id(String entry_id) { |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | public String getData_id() { |
| | | return data_id; |
| | | } |
| | | |
| | | public void setData_id(String data_id) { |
| | | this.data_id = data_id; |
| | | } |
| | | |
| | | public Boolean getIs_start_trigger() { |
| | | return is_start_trigger; |
| | | } |
| | | |
| | | public void setIs_start_trigger(Boolean is_start_trigger) { |
| | | this.is_start_trigger = is_start_trigger; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getApp_id()) && StringUtils.isNotBlank(this.getEntry_id()) |
| | | && StringUtils.isNotBlank(this.getData_id()); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "FormDataDeleteParam{" + |
| | | "app_id='" + app_id + '\'' + |
| | | ", entry_id='" + entry_id + '\'' + |
| | | ", data_id='" + data_id + '\'' + |
| | | ", is_start_trigger=" + is_start_trigger + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.form; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | public class FormDataQueryParam { |
| | | /** |
| | | * åºç¨id |
| | | */ |
| | | private String app_id; |
| | | |
| | | /** |
| | | * 表åid |
| | | */ |
| | | private String entry_id; |
| | | |
| | | /** |
| | | * æ°æ®ID |
| | | */ |
| | | private String data_id; |
| | | |
| | | /** |
| | | * ä» æ°æ®ID å¼å§è¿å limit æ¡æ°æ® |
| | | */ |
| | | private Integer limit; |
| | | |
| | | /** |
| | | * æ¥è¯¢çåæ®µ |
| | | */ |
| | | private List<String> fields; |
| | | |
| | | /** |
| | | * è¿æ»¤æ¡ä»¶ |
| | | */ |
| | | private Map<String, Object> filter; |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getApp_id()) && StringUtils.isNotBlank(this.getEntry_id()); |
| | | } |
| | | |
| | | public boolean isSingleQueryValid() { |
| | | return this.isValid() && StringUtils.isNotBlank(this.getData_id()); |
| | | } |
| | | |
| | | public FormDataQueryParam() { |
| | | } |
| | | |
| | | public FormDataQueryParam(String app_id, String entry_id) { |
| | | this.app_id = app_id; |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | public String getApp_id() { |
| | | return app_id; |
| | | } |
| | | |
| | | public void setApp_id(String app_id) { |
| | | this.app_id = app_id; |
| | | } |
| | | |
| | | public String getEntry_id() { |
| | | return entry_id; |
| | | } |
| | | |
| | | public void setEntry_id(String entry_id) { |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | public String getData_id() { |
| | | return data_id; |
| | | } |
| | | |
| | | public void setData_id(String data_id) { |
| | | this.data_id = data_id; |
| | | } |
| | | |
| | | public Integer getLimit() { |
| | | return limit; |
| | | } |
| | | |
| | | public void setLimit(Integer limit) { |
| | | this.limit = limit; |
| | | } |
| | | |
| | | public List<String> getFields() { |
| | | return fields; |
| | | } |
| | | |
| | | public void setFields(List<String> fields) { |
| | | this.fields = fields; |
| | | } |
| | | |
| | | public Map<String, Object> getFilter() { |
| | | return filter; |
| | | } |
| | | |
| | | public void setFilter(Map<String, Object> filter) { |
| | | this.filter = filter; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "FormDataQueryParam{" + |
| | | "app_id='" + app_id + '\'' + |
| | | ", entry_id='" + entry_id + '\'' + |
| | | ", data_id='" + data_id + '\'' + |
| | | ", limit=" + limit + |
| | | ", fields=" + fields + |
| | | ", filter=" + filter + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.form; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.Map; |
| | | |
| | | public class FormDataUpdateParam { |
| | | /** |
| | | * åºç¨id |
| | | */ |
| | | private String app_id; |
| | | |
| | | /** |
| | | * 表åid |
| | | */ |
| | | private String entry_id; |
| | | |
| | | private String data_id; |
| | | |
| | | /** |
| | | * æ°æ® |
| | | */ |
| | | private Map<String, Object> data; |
| | | |
| | | |
| | | private Boolean is_start_trigger; |
| | | |
| | | private String transaction_id; |
| | | |
| | | public FormDataUpdateParam() { |
| | | } |
| | | |
| | | public FormDataUpdateParam(String app_id, String entry_id, Map<String, Object> data) { |
| | | this.app_id = app_id; |
| | | this.entry_id = entry_id; |
| | | this.data = data; |
| | | } |
| | | |
| | | |
| | | public Map<String, Object> getData() { |
| | | return data; |
| | | } |
| | | |
| | | public void setData(Map<String, Object> data) { |
| | | this.data = data; |
| | | } |
| | | |
| | | |
| | | public Boolean getIs_start_trigger() { |
| | | return is_start_trigger; |
| | | } |
| | | |
| | | public void setIs_start_trigger(Boolean is_start_trigger) { |
| | | this.is_start_trigger = is_start_trigger; |
| | | } |
| | | |
| | | public String getTransaction_id() { |
| | | return transaction_id; |
| | | } |
| | | |
| | | public void setTransaction_id(String transaction_id) { |
| | | this.transaction_id = transaction_id; |
| | | } |
| | | |
| | | public String getApp_id() { |
| | | return app_id; |
| | | } |
| | | |
| | | public void setApp_id(String app_id) { |
| | | this.app_id = app_id; |
| | | } |
| | | |
| | | public String getEntry_id() { |
| | | return entry_id; |
| | | } |
| | | |
| | | public void setEntry_id(String entry_id) { |
| | | this.entry_id = entry_id; |
| | | } |
| | | |
| | | public String getData_id() { |
| | | return data_id; |
| | | } |
| | | |
| | | public void setData_id(String data_id) { |
| | | this.data_id = data_id; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getApp_id()) && StringUtils.isNotBlank(this.getEntry_id()) |
| | | && StringUtils.isNotBlank(this.getData_id()); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "FormDataUpdateParam{" + |
| | | "app_id='" + app_id + '\'' + |
| | | ", entry_id='" + entry_id + '\'' + |
| | | ", data_id='" + data_id + '\'' + |
| | | ", data=" + data + |
| | | ", is_start_trigger=" + is_start_trigger + |
| | | ", transaction_id='" + transaction_id + '\'' + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.form; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.base.PageBaseParam; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | public class FormQueryParam extends PageBaseParam { |
| | | |
| | | private String app_id; |
| | | |
| | | public String getApp_id() { |
| | | return app_id; |
| | | } |
| | | |
| | | public void setApp_id(String app_id) { |
| | | this.app_id = app_id; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getApp_id()) && super.isValid(); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "FormQueryParam{" + |
| | | "skip=" + super.getSkip() + |
| | | ", limit=" + super.getLimit() + |
| | | ", app_id=" + app_id + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.http; |
| | | |
| | | import com.doumee.core.jiandaoyun.util.LimitUtil; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.codec.Charsets; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.http.Header; |
| | | import org.apache.http.HttpEntity; |
| | | import org.apache.http.HttpResponse; |
| | | import org.apache.http.client.HttpClient; |
| | | import org.apache.http.client.methods.HttpPost; |
| | | import org.apache.http.client.methods.HttpRequestBase; |
| | | import org.apache.http.conn.ssl.SSLConnectionSocketFactory; |
| | | import org.apache.http.entity.ContentType; |
| | | import org.apache.http.entity.StringEntity; |
| | | import org.apache.http.entity.mime.MultipartEntityBuilder; |
| | | import org.apache.http.entity.mime.content.StringBody; |
| | | import org.apache.http.impl.client.HttpClients; |
| | | import org.apache.http.impl.io.EmptyInputStream; |
| | | import org.apache.http.message.BasicHeader; |
| | | import org.apache.http.ssl.SSLContextBuilder; |
| | | |
| | | import javax.net.ssl.SSLContext; |
| | | import java.io.File; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | @Slf4j |
| | | public abstract class ApiClient { |
| | | |
| | | /** |
| | | * apiKey |
| | | */ |
| | | private String apiKey; |
| | | |
| | | /** |
| | | * å°å |
| | | */ |
| | | private String host; |
| | | |
| | | /** |
| | | * é»è®¤çæ¬ |
| | | */ |
| | | private String defaultVersion; |
| | | |
| | | /** |
| | | * åæ³çæ¬ |
| | | */ |
| | | private List<String> validVersionList; |
| | | |
| | | public ApiClient(String apiKey, String host) { |
| | | this.apiKey = apiKey; |
| | | this.host = host; |
| | | } |
| | | |
| | | public String getApiKey() { |
| | | return apiKey; |
| | | } |
| | | |
| | | public void setApiKey(String apiKey) { |
| | | this.apiKey = apiKey; |
| | | } |
| | | |
| | | public String getHost() { |
| | | return host; |
| | | } |
| | | |
| | | public void setHost(String host) { |
| | | this.host = host; |
| | | } |
| | | |
| | | public String getDefaultVersion() { |
| | | return defaultVersion; |
| | | } |
| | | |
| | | public void setDefaultVersion(String defaultVersion) { |
| | | this.defaultVersion = defaultVersion; |
| | | } |
| | | |
| | | public List<String> getValidVersionList() { |
| | | return validVersionList; |
| | | } |
| | | |
| | | public void setValidVersionList(List<String> validVersionList) { |
| | | this.validVersionList = validVersionList; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * çæ path |
| | | * |
| | | * @param version - çæ¬å· |
| | | * @param path - è·¯å¾ |
| | | * @return æ¥å£çè·¯å¾ |
| | | */ |
| | | public abstract String generatePath(String version, String path); |
| | | |
| | | /** |
| | | * è·å¾åæ³ççæ¬å· |
| | | * |
| | | * @param version - çæ¬å· |
| | | * @return åæ³ççæ¬å· |
| | | */ |
| | | public String getValidVersion(String version) { |
| | | if (this.getValidVersionList() != null && this.getValidVersionList().contains(version)) { |
| | | return version; |
| | | } |
| | | return this.getDefaultVersion(); |
| | | } |
| | | |
| | | /** |
| | | * åéPOSTè¯·æ± |
| | | * |
| | | * @param param - 请æ±åæ° |
| | | * @return æ¥å£è¿ååæ° |
| | | */ |
| | | public Map<String, Object> sendPostRequest(HttpRequestParam param) throws Exception { |
| | | if (param == null || StringUtils.isBlank(param.getPath())) { |
| | | throw new RuntimeException("ç¼ºå¤±åæ°ï¼"); |
| | | } |
| | | HttpClient client = getSSLHttpClient(); |
| | | Header[] headers = getHttpHeaders(this.getApiKey()); |
| | | String url = this.host + param.getPath(); |
| | | HttpRequestBase request = new HttpPost(url); |
| | | |
| | | // 请æ±åæ° |
| | | if (param.getData() != null) { |
| | | ObjectMapper queryMap = new ObjectMapper(); |
| | | HttpEntity entity = new StringEntity(queryMap.writeValueAsString(param.getData()), Charsets.UTF_8); |
| | | ((HttpPost) request).setEntity(entity); |
| | | } |
| | | // 设置请æ±å¤´ |
| | | request.setHeaders(headers); |
| | | // éæµé»å¡ |
| | | LimitUtil.tryBeforeRun(); |
| | | // åé请æ±å¹¶è·åè¿åç»æ |
| | | HttpResponse response = client.execute(request); |
| | | // è¿åç¶æç |
| | | int statusCode = response.getStatusLine().getStatusCode(); |
| | | ObjectMapper mapper = new ObjectMapper(); |
| | | Map<String, Object> result = new HashMap<>(); |
| | | // æé¨åæ¥å£ç´æ¥è¿å æ²¡ææ°æ® |
| | | // fixï¼ä¸è½ç¨content-length大äº0夿ï¼response header为gzipç¼ç æ¹å¼çæ
åµä¸ä¸º-1 |
| | | if (!(response.getEntity().getContent() instanceof EmptyInputStream)) { |
| | | result = (Map<String, Object>) mapper.readValue(response.getEntity().getContent(), Object.class); |
| | | } |
| | | if (statusCode >= 400) { |
| | | throw new RuntimeException("请æ±é误ï¼statusCode:" + statusCode + ",Error Code: " + result.get("code") + ", Error Msg: " + result.get("msg")); |
| | | } else { |
| | | // å¤çè¿åç»æ |
| | | return result; |
| | | } |
| | | } |
| | | |
| | | private static HttpClient getSSLHttpClient() throws Exception { |
| | | //ä¿¡ä»»ææ |
| | | SSLContext sslContext = |
| | | new SSLContextBuilder().loadTrustMaterial(null, (chain, authType) -> true).build(); |
| | | SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslContext); |
| | | return HttpClients.custom().setSSLSocketFactory(sslsf).build(); |
| | | } |
| | | |
| | | /** |
| | | * è·å请æ±å¤´ä¿¡æ¯ |
| | | * |
| | | * @return 请æ±å¤´ä¿¡æ¯ |
| | | */ |
| | | private Header[] getHttpHeaders(String apiKey) { |
| | | List<Header> headerList = new ArrayList<>(); |
| | | headerList.add(new BasicHeader("Authorization", "Bearer " + apiKey)); |
| | | headerList.add(new BasicHeader("Content-Type", "application/json;charset=utf-8")); |
| | | return headerList.toArray(new Header[headerList.size()]); |
| | | } |
| | | |
| | | public Map<String, Object> httpPostFile(String url, String token, File file) throws Exception { |
| | | HttpClient client = getSSLHttpClient(); |
| | | HttpPost httpPost = new HttpPost(url); |
| | | MultipartEntityBuilder builder = MultipartEntityBuilder.create(); |
| | | httpPost.addHeader("token", token); |
| | | builder.addBinaryBody("file", file, ContentType.MULTIPART_FORM_DATA, file.getName()); |
| | | // ä¼ é token |
| | | builder.addTextBody("token", token); |
| | | StringBody tokenBody = new StringBody(token, ContentType.MULTIPART_FORM_DATA); |
| | | builder.addPart("token", tokenBody); |
| | | HttpEntity entity = builder.build(); |
| | | httpPost.setEntity(entity); |
| | | // éæµé»å¡ |
| | | LimitUtil.tryBeforeRun(); |
| | | // åé请æ±å¹¶è·åè¿åç»æ |
| | | HttpResponse response = client.execute(httpPost); |
| | | // è¿åç¶æç |
| | | int statusCode = response.getStatusLine().getStatusCode(); |
| | | ObjectMapper mapper = new ObjectMapper(); |
| | | Map<String, Object> result = new HashMap<>(); |
| | | // æé¨åæ¥å£ç´æ¥è¿å æ²¡ææ°æ® |
| | | // fixï¼ä¸è½ç¨content-length大äº0夿ï¼response header为gzipç¼ç æ¹å¼çæ
åµä¸ä¸º-1 |
| | | if (!(response.getEntity().getContent() instanceof EmptyInputStream)) { |
| | | result = (Map<String, Object>) mapper.readValue(response.getEntity().getContent(), Object.class); |
| | | } |
| | | if (statusCode >= 400) { |
| | | throw new RuntimeException("请æ±é误ï¼statusCode:" + statusCode + ",Error Code: " + result.get("code") + ", Error Msg: " + result.get("msg")); |
| | | } else { |
| | | // å¤çè¿åç»æ |
| | | return result; |
| | | } |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.http; |
| | | |
| | | import java.util.Map; |
| | | |
| | | public class HttpRequestParam { |
| | | |
| | | /** |
| | | * 请æ±è·¯å¾ |
| | | */ |
| | | private String path; |
| | | |
| | | /** |
| | | * 请æ±åæ° |
| | | */ |
| | | private Map<String, Object> data; |
| | | |
| | | public HttpRequestParam() { |
| | | } |
| | | |
| | | public HttpRequestParam(String path, Map<String, Object> data) { |
| | | this.path = path; |
| | | this.data = data; |
| | | } |
| | | |
| | | public String getPath() { |
| | | return path; |
| | | } |
| | | |
| | | public void setPath(String path) { |
| | | this.path = path; |
| | | } |
| | | |
| | | public Map<String, Object> getData() { |
| | | return data; |
| | | } |
| | | |
| | | public void setData(Map<String, Object> data) { |
| | | this.data = data; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "HttpRequestParam{" + |
| | | "path='" + path + '\'' + |
| | | ", data=" + data + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.request; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class BasePushRequest<T> { |
| | | private T data; |
| | | private String op;//"æä½ç±»å data_update" |
| | | private Long opTime;//æ¶é´æ³1766975613395 |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.request; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class DepartmentPushData { |
| | | private String _id; |
| | | private String name; |
| | | private Integer type; |
| | | private String dept_no; |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.request; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class FilePushData { |
| | | /** |
| | | * { |
| | | * "mime": "image/jpeg", |
| | | * "name": "微信å¾ç_20240909171527.jpg", |
| | | * "size": 66851, |
| | | * "url": "https://files.jiandaoyun.com/b3353092-0961-4766-b0f0-c0fd46d21a00?attname=%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20240909171527.jpg&e=1768273199&token=IAM-0WcXoIsrkVmXepo5BSXTXDcIPX-DF4zkUslHbLwm:1Hb-HdLvmhbEYzNaAf6_7OrpyA4=" |
| | | * } |
| | | */ |
| | | private String mime; |
| | | private String name; |
| | | private Integer size; |
| | | private String url; |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.request; |
| | | |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | @Data |
| | | public class MemberPushData{ |
| | | private String _id; |
| | | private String appId; |
| | | private String code; |
| | | private String createTime;// "2025-12-26T03:08:39.123Z", |
| | | private String updateTime; |
| | | private String username; |
| | | private String entryId; |
| | | private String sex; |
| | | private String job_date; |
| | | private String can_visit;//å¯æè®¿ ä¸å¯æè®¿ |
| | | private String phone; |
| | | private String name; |
| | | private String idcardno; |
| | | private String formName; |
| | | private String deleteTime; |
| | | private Object flowState; |
| | | private List<FilePushData> imgurl; |
| | | private String position;//å²ä½åç§° |
| | | private String status;//"å¨è;离è" |
| | | private UserPushData creator; |
| | | private DepartmentPushData department; |
| | | private UserPushData updater; |
| | | private UserPushData deleter; |
| | | private UserPushData user;//å
³èå
é¨äººå |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.request; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class MemberStatusSubmitData { |
| | | private String info; |
| | | private int status; |
| | | private String username ; |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.request; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class UserPushData { |
| | | private String _id; |
| | | private String name; |
| | | private Integer status; |
| | | private Integer type; |
| | | private String username; |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.role; |
| | | |
| | | |
| | | import com.doumee.core.jiandaoyun.model.base.PageBaseParam; |
| | | |
| | | public class RoleGroupListQueryParam extends PageBaseParam { |
| | | private boolean has_internal; |
| | | private boolean has_sync; |
| | | |
| | | public boolean isHas_internal() { |
| | | return has_internal; |
| | | } |
| | | |
| | | public void setHas_internal(boolean has_internal) { |
| | | this.has_internal = has_internal; |
| | | } |
| | | |
| | | public boolean isHas_sync() { |
| | | return has_sync; |
| | | } |
| | | |
| | | public void setHas_sync(boolean has_sync) { |
| | | this.has_sync = has_sync; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "RoleGroupListQueryParam{" + |
| | | "skip=" + super.getSkip() + |
| | | ", limit=" + super.getLimit() + |
| | | ", has_internal=" + has_internal + |
| | | ", has_sync=" + has_sync + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.role; |
| | | |
| | | |
| | | import com.doumee.core.jiandaoyun.model.base.PageBaseParam; |
| | | |
| | | public class RoleListQueryParam extends PageBaseParam { |
| | | |
| | | private boolean has_internal; |
| | | private boolean has_sync; |
| | | |
| | | public boolean isHas_internal() { |
| | | return has_internal; |
| | | } |
| | | |
| | | public void setHas_internal(boolean has_internal) { |
| | | this.has_internal = has_internal; |
| | | } |
| | | |
| | | public boolean isHas_sync() { |
| | | return has_sync; |
| | | } |
| | | |
| | | public void setHas_sync(boolean has_sync) { |
| | | this.has_sync = has_sync; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return super.isValid(); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "RoleListQueryParam{" + |
| | | "skip=" + super.getSkip() + |
| | | ", limit=" + super.getLimit() + |
| | | ", has_internal=" + has_internal + |
| | | ", has_sync=" + has_sync + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.role; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.base.PageBaseParam; |
| | | |
| | | public class RoleMemberQueryParam extends PageBaseParam { |
| | | private Integer role_no; |
| | | |
| | | public Integer getRole_no() { |
| | | return role_no; |
| | | } |
| | | |
| | | public void setRole_no(Integer role_no) { |
| | | this.role_no = role_no; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return this.getRole_no() != null && super.isValid(); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "RoleMemberQueryParam{" + |
| | | "skip=" + super.getSkip() + |
| | | ", limit=" + super.getLimit() + |
| | | ", role_no=" + role_no + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.role; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | public class RoleUpdateParam { |
| | | |
| | | private String name; |
| | | private Integer group_no; |
| | | private Integer role_no; |
| | | |
| | | public String getName() { |
| | | return name; |
| | | } |
| | | |
| | | public void setName(String name) { |
| | | this.name = name; |
| | | } |
| | | |
| | | public Integer getGroup_no() { |
| | | return group_no; |
| | | } |
| | | |
| | | public void setGroup_no(Integer group_no) { |
| | | this.group_no = group_no; |
| | | } |
| | | |
| | | public Integer getRole_no() { |
| | | return role_no; |
| | | } |
| | | |
| | | public void setRole_no(Integer role_no) { |
| | | this.role_no = role_no; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getName()) && this.getRole_no() != null && this.getGroup_no() != null; |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "RoleUpdateParam{" + |
| | | "name='" + name + '\'' + |
| | | ", group_no=" + group_no + |
| | | ", role_no=" + role_no + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.user; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.List; |
| | | |
| | | public class UserCreateParam { |
| | | |
| | | private String name; |
| | | |
| | | /** |
| | | * ç¨æ·å ç±æ°å忝åä¸åçº¿ç»æ |
| | | */ |
| | | private String username; |
| | | |
| | | /** |
| | | * éå¿
å¡« |
| | | */ |
| | | private List<Integer> departments; |
| | | |
| | | public UserCreateParam() { |
| | | } |
| | | |
| | | public UserCreateParam(String name, String userName) { |
| | | this.name = name; |
| | | this.username = userName; |
| | | } |
| | | |
| | | public String getName() { |
| | | return name; |
| | | } |
| | | |
| | | public void setName(String name) { |
| | | this.name = name; |
| | | } |
| | | |
| | | public String getUsername() { |
| | | return username; |
| | | } |
| | | |
| | | public void setUsername(String username) { |
| | | this.username = username; |
| | | } |
| | | |
| | | public List<Integer> getDepartments() { |
| | | return departments; |
| | | } |
| | | |
| | | public void setDepartments(List<Integer> departments) { |
| | | this.departments = departments; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getName()) && StringUtils.isNotBlank(this.getUsername()); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "UserCreateParam{" + |
| | | "name='" + name + '\'' + |
| | | ", username='" + username + '\'' + |
| | | ", departments=" + departments + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.user; |
| | | |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 人åå®ä½åæ° |
| | | */ |
| | | |
| | | @Data |
| | | public class UserEntityModel { |
| | | |
| | | private Integer dept_no;// Number é¨é¨ç¼å·ï¼ä¼ä¸å
å¯ä¸ ä¸åä¼ä¸ä¹é´å¯è½åå¨éå¤ |
| | | |
| | | private String username;// String æåçç¼å·ï¼ä¼ä¸å
å¯ä¸ ä¸åä¼ä¸ä¹é´å¯è½åå¨éå¤ |
| | | |
| | | private String name;// String æµç§° |
| | | |
| | | private List<Long> departments;//Number[] æåæå¨é¨é¨ç¼å·å表 |
| | | |
| | | private Integer type;//Numberæåç±» 0: å¸¸è§æå2: ä¼ä¸äºèå¤é¨å¯¹æ¥äºº |
| | | |
| | | private Integer status;// Number æåç¶æ 0: æªç¡®è®¤çæå 1: å·²å å
¥ |
| | | |
| | | private String integrate_id;// String éææ¨¡å¼åæ¥æåå
³è ID ä»
å¨éææ¨¡å¼ä¸è¿åï¼ä¸å¨ä¼ä¸äºèæ¥å£(å¤é¨å¯¹æ¥äºº)ä¸è¿å |
| | | |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.model.user; |
| | | |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | | import java.util.List; |
| | | |
| | | public class UserUpdateParam { |
| | | |
| | | private String name; |
| | | |
| | | private String userName; |
| | | |
| | | /** |
| | | * éå¿
å¡« |
| | | */ |
| | | private List<Integer> departmentList; |
| | | |
| | | public UserUpdateParam() { |
| | | } |
| | | |
| | | public UserUpdateParam(String name, String userName) { |
| | | this.name = name; |
| | | this.userName = userName; |
| | | } |
| | | |
| | | public String getName() { |
| | | return name; |
| | | } |
| | | |
| | | public void setName(String name) { |
| | | this.name = name; |
| | | } |
| | | |
| | | public String getUserName() { |
| | | return userName; |
| | | } |
| | | |
| | | public void setUserName(String userName) { |
| | | this.userName = userName; |
| | | } |
| | | |
| | | public List<Integer> getDepartmentList() { |
| | | return departmentList; |
| | | } |
| | | |
| | | public void setDepartmentList(List<Integer> departmentList) { |
| | | this.departmentList = departmentList; |
| | | } |
| | | |
| | | public boolean isValid() { |
| | | return StringUtils.isNotBlank(this.getName()) && StringUtils.isNotBlank(this.getUserName()); |
| | | } |
| | | |
| | | @Override |
| | | public String toString() { |
| | | return "UserCreateParam{" + |
| | | "name='" + name + '\'' + |
| | | ", userName='" + userName + '\'' + |
| | | ", departmentList=" + departmentList + |
| | | '}'; |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.core.jiandaoyun.util; |
| | | |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | |
| | | public class LimitUtil { |
| | | private static volatile int seq = 0; |
| | | |
| | | private static final int bucket = 1000; |
| | | |
| | | private static volatile List<Long> requestTimeList = Arrays.asList(0L, 0L, 0L, 0L, 0L); |
| | | |
| | | private LimitUtil() { |
| | | } |
| | | |
| | | /** |
| | | * éæµå®ç° ç¨ static synchronized 修饰 表示 对类ä¸é |
| | | * |
| | | * @throws InterruptedException |
| | | */ |
| | | public static synchronized void tryBeforeRun() throws InterruptedException { |
| | | long now = System.currentTimeMillis(); |
| | | // å½åæ¶é´ ä¸ ålimit个请æ±çæ¶é´ 使¯è¾ |
| | | long interval = now - requestTimeList.get(seq); |
| | | if (interval < 0) { |
| | | // æ§è¡æ¶é´: t[seq]+bucket=now-interval+bucket |
| | | // çå¾
æ¶é´: bucket-interval |
| | | Thread.sleep(bucket - interval); |
| | | // éæ°çå¾
|
| | | tryBeforeRun(); |
| | | } |
| | | if (interval < bucket) { |
| | | requestTimeList.set(seq, requestTimeList.get(seq) + bucket); |
| | | Thread.sleep(bucket - interval); |
| | | } else { |
| | | requestTimeList.set(seq, now); |
| | | } |
| | | seq = (seq + 1) % requestTimeList.size(); |
| | | } |
| | | } |
| | |
| | | <module>system_gateway</module> |
| | | <module>emaysms</module> |
| | | <module>visits/device_service</module> |
| | | <module>jiandaoyun_service</module> |
| | | <module>base_serivce</module> |
| | | </modules> |
| | | <parent> |
| | | <groupId>org.springframework.boot</groupId> |
| | |
| | | <java.version>1.8</java.version> |
| | | <swagger.version>2.9.2</swagger.version> |
| | | <swagger.bootstrap-ui.version>1.9.6</swagger.bootstrap-ui.version> |
| | | <fastjson.version>1.2.70</fastjson.version> |
| | | <druid.version>1.2.0</druid.version> |
| | | <mybatis.plus.version>3.5.7</mybatis.plus.version> |
| | | <apache.shiro.version>1.7.0</apache.shiro.version> |
| | | <oshi.version>5.7.0</oshi.version> |
| | | <jna.version>5.14.0</jna.version> |
| | | <poi.version>5.0.0</poi.version> |
| | | <spring-cloud.version>2021.0.3</spring-cloud.version> |
| | | <spring-cloud-alibaba.version>2021.0.1.0</spring-cloud-alibaba.version> |
| | | <!-- jwtToken --> |
| | | <jjwt.version>0.9.1</jjwt.version> |
| | | <!-- hutool å·¥å
·ç¸å
³--> |
| | | <hutool.version>5.5.8</hutool.version> |
| | | <!-- 微信å°ç¨åº --> |
| | | <weixin-java-miniapp.version>4.1.0</weixin-java-miniapp.version> |
| | | <!-- 微信æ¯ä» --> |
| | | <weixin-java-pay.version>4.1.0</weixin-java-pay.version> |
| | | <!-- é¿éäºOSSåå¨ --> |
| | | <aliyun-oss.version>3.8.0</aliyun-oss.version> |
| | | </properties> |
| | | <dependencies> |
| | | <dependency> |
| | | <groupId>com.doumee</groupId> |
| | | <artifactId>base_serivce</artifactId> |
| | | <version>1.0.0-SNAPSHOT</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-web</artifactId> |
| | |
| | | <groupId>org.apache.shiro</groupId> |
| | | <artifactId>shiro-spring</artifactId> |
| | | <version>${apache.shiro.version}</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.github.binarywang</groupId> |
| | | <artifactId>weixin-java-miniapp</artifactId> |
| | | <version>${weixin-java-miniapp.version}</version> |
| | | </dependency> |
| | | <!-- MyBatis plus --> |
| | | <dependency> |
| | |
| | | <scope>runtime</scope> |
| | | </dependency> |
| | | |
| | | <!-- swagger --> |
| | | <dependency> |
| | | <groupId>com.github.xiaoymin</groupId> |
| | | <artifactId>knife4j-spring-boot-starter</artifactId> |
| | | <version>3.0.3</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>io.springfox</groupId> |
| | | <artifactId>springfox-boot-starter</artifactId> |
| | | <version>3.0.0</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>io.swagger.core.v3</groupId> |
| | | <artifactId>swagger-annotations</artifactId> |
| | | <version>2.1.5</version> |
| | | </dependency> |
| | | <!-- lombok --> |
| | | <dependency> |
| | | <groupId>javax.validation</groupId> |
| | | <artifactId>validation-api</artifactId> |
| | | <version>2.0.1.Final</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.hibernate</groupId> |
| | | <artifactId>hibernate-validator</artifactId> |
| | |
| | | <artifactId>alibaba-dingtalk-service-sdk</artifactId> |
| | | <version>2.0.0</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.projectlombok</groupId> |
| | | <artifactId>lombok</artifactId> |
| | | </dependency> |
| | | <!--google kaptcha--> |
| | | <dependency> |
| | | <groupId>com.github.penggle</groupId> |
| | | <artifactId>kaptcha</artifactId> |
| | | <version>2.3.2</version> |
| | | </dependency> |
| | | <!-- å·¥å
·å
--> |
| | | <dependency> |
| | | <groupId>org.apache.commons</groupId> |
| | | <artifactId>commons-lang3</artifactId> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>fastjson</artifactId> |
| | | <version>${fastjson.version}</version> |
| | | </dependency> |
| | | <!-- Excel导å
¥/导åºä¾èµå
--> |
| | | <dependency> |
| | | <groupId>org.apache.poi</groupId> |
| | | <artifactId>poi</artifactId> |
| | | <version>${poi.version}</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>org.apache.poi</groupId> |
| | | <artifactId>poi-ooxml</artifactId> |
| | | <version>${poi.version}</version> |
| | | </dependency> |
| | | <!-- è·åç³»ç»ä¿¡æ¯ä¾èµå
--> |
| | | <dependency> |
| | | <groupId>com.github.oshi</groupId> |
| | | <artifactId>oshi-core</artifactId> |
| | | <version>${oshi.version}</version> |
| | | <exclusions> |
| | | <exclusion> |
| | | <artifactId>jna-platform</artifactId> |
| | | <groupId>net.java.dev.jna</groupId> |
| | | </exclusion> |
| | | <exclusion> |
| | | <artifactId>jna</artifactId> |
| | | <groupId>net.java.dev.jna</groupId> |
| | | </exclusion> |
| | | </exclusions> |
| | | </dependency> |
| | | <!-- https://mvnrepository.com/artifact/com.github.yulichang/mybatis-plus-join --> |
| | | <dependency> |
| | |
| | | <!-- <artifactId>weixin-java-pay</artifactId>--> |
| | | <!-- <version>${weixin-java-pay.version}</version>--> |
| | | <!-- </dependency>--> |
| | | |
| | | <!-- é¿éäºOSS--> |
| | | <dependency> |
| | | <groupId>com.aliyun.oss</groupId> |
| | | <artifactId>aliyun-sdk-oss</artifactId> |
| | | <version>${aliyun-oss.version}</version> |
| | | </dependency> |
| | | |
| | | <!-- aliyun sms SDK --> |
| | | <dependency> |
| | | <groupId>com.aliyun</groupId> |
| | | <artifactId>aliyun-java-sdk-core</artifactId> |
| | | <version>4.5.3</version> |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-configuration-processor</artifactId> |
| | |
| | | int erp = 1; |
| | | int hk = 2; |
| | | int self = 0; |
| | | int jdy = 3; |
| | | int dingding = 4; |
| | | } |
| | | |
| | | /** |
| | | * |
| | | å
é¨ç»ç»äººåæ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | */ |
| | | private Integer orgUserDataOrigin; |
| | | /** |
| | | * è®¿å®¢æ¥æºï¼0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | */ |
| | | private Integer visitorDataOrigin; |
| | | |
| | | private Boolean needDealImg; |
| | | } |
| | |
| | | @AllArgsConstructor |
| | | public enum ResponseStatus { |
| | | // 400å¼å¤´è¡¨ç¤ºåæ°é误 |
| | | JDY_BAD_REQUEST(401, "error"), |
| | | BAD_REQUEST(4000, "åæ°é误"), |
| | | DATA_EMPTY(4001, "æ¾ä¸å°ç®æ æ°æ®,该记å½ä¸åå¨æå·²è¢«å é¤"), |
| | | DATA_EXISTS(4002, "è®°å½å·²åå¨"), |
| | |
| | | public static final String JK_PLAN_MAX_CLUSTER ="JK_PLAN_MAX_CLUSTER" ; |
| | | public static final String JK_PLAN_DISTANCE_CLUSTER ="JK_PLAN_DISTANCE_CLUSTER" ; |
| | | public static final String HK_PUSH_THIRD_URL ="HK_PUSH_THIRD_URL" ; |
| | | public static final String JDY_CAR_SECRET = " JDY_CAR_SECRET"; |
| | | public static final String JDY_SECRET ="JDY_SECRET"; |
| | | public static final String JDY_MEMBER_PUSH_STATUS_URL ="JDY_MEMBER_PUSH_STATUS_URL"; |
| | | |
| | | /** |
| | | * æä½ç±»åï¼ç¨äºåæ¥å£éªè¯åç» |
| | |
| | | Date nowAsISO = null; |
| | | try { |
| | | nowAsISO = df.parse(date); |
| | | } catch (ParseException e) { |
| | | } catch (Exception e) { |
| | | } |
| | | return nowAsISO; |
| | | } |
| | | |
| | | public static Date getISO8601DateByStr2(String date) { |
| | | TimeZone tz = TimeZone.getTimeZone("Asia/Shanghai"); |
| | | if(date!=null ){ |
| | |
| | | Date nowAsISO = null; |
| | | try { |
| | | nowAsISO = df.parse(date); |
| | | } catch (ParseException e) { |
| | | } catch (Exception e) { |
| | | } |
| | | return nowAsISO; |
| | | } |
| | |
| | | |
| | | public static void main(String[] args) { |
| | | try { |
| | | |
| | | LocalDate today = LocalDate.now(); |
| | | |
| | | // è·åå½åæ¥ææ¯ææå |
| | | DayOfWeek dayOfWeek = today.getDayOfWeek(); |
| | | |
| | | // 计ç®å¨ä¸åå¨äºçæ¥æ |
| | | LocalDate monday = today.with(DayOfWeek.MONDAY); |
| | | LocalDate friday = today.with(DayOfWeek.FRIDAY); |
| | | |
| | | // è¾åºå¨ä¸åå¨äºçæ¥æ |
| | | System.out.println("Monday: " + monday.toString()); |
| | | System.out.println("Friday: " + friday.toString()); |
| | | |
| | | // Date date = getISO8601DateByStr("2024-04-15T07:46:36.014+08:00"); |
| | | // Date date1 = getISO8601DateByStr("2024-06-14T08:46:36.014+08:00"); |
| | | // System.out.println(DateUtil.afterMinutesDate(-5)); |
| | | |
| | | // System.out.println(DateUtil.getWeekZhouOfDate(getDateFromString2("2025-11-06 00:00:00"))); |
| | | |
| | | // System.out.println(getPlusTime2(DateUtil.addMonthToDate(new Date(),-1))); |
| | | // System.out.println(DateUtil.getBeforMonthStr(new Date(),12)); |
| | | |
| | | // List<Date> list =getThisMonthDateList(); |
| | | // for(Date d :list){ |
| | | // System.out.println(getPlusTime2(d)); |
| | | // } |
| | | // List<Date> list1 =getThisYearMonthList(); |
| | | // for(Date d :list1){ |
| | | // System.out.println(getPlusTime2(d)); |
| | | // } |
| | | |
| | | // Date startTime = DateUtil.StringToDate("2024-05-01 08:00:00" ,"yyyy-MM-dd HH:mm:ss"); |
| | | // Date endTime = DateUtil.StringToDate("2024-05-01 17:00:00" ,"yyyy-MM-dd HH:mm:ss"); |
| | | // Long intervalTime = 35L; |
| | | // |
| | | // |
| | | // DateUtil.checkDateInterval( startTime.toInstant() |
| | | // .atZone(ZoneId.systemDefault()) |
| | | // .toLocalDateTime(), endTime.toInstant() |
| | | // .atZone(ZoneId.systemDefault()) |
| | | // .toLocalDateTime(),intervalTime); |
| | | |
| | | System.out.println(getISO8601DateByStr("2025-12-26T03:08:39.123Z")); |
| | | } catch (Exception ex) { |
| | | ex.printStackTrace(); |
| | | } |
| | |
| | | |
| | | public static void main(String[] args) throws Exception { |
| | | try { |
| | | FtpUtil ftpUtil = new FtpUtil("175.27.187.84", 21, "ftpuser","doumee168" ); |
| | | ftpUtil.uploadOnlineFile("https://profile-avatar.csdnimg.cn/default.jpg!1", "test"+"/", UUID.randomUUID().toString()+"test.jpg"); |
| | | FtpUtil ftpUtil = new FtpUtil("192.168.0.7", 21, "uftp","doumee@168" ); |
| | | ftpUtil.uploadOnlineFile("https://profile-avatar.csdnimg.cn/default.jpg!1", "member"+"/20251229/", UUID.randomUUID().toString()+"test.jpg"); |
| | | /*FtpUtil myFtp = new FtpUtil("106.15.54.228", 21, "ftptlg", |
| | | "tlg168.com"); |
| | | System.out.println(myFtp.upload("D:\\devices.sql", "/1111/devices.sql")); |
| | |
| | | @ApiModelProperty(value = "ç»ç»ç¼ç è·¯å¾") |
| | | @TableField(exist = false) |
| | | private String companyPath; |
| | | @ApiModelProperty(value = "ç»ç»ä¿¡æ¯") |
| | | @TableField(exist = false) |
| | | private Company company; |
| | | @ApiModelProperty(value = "è´è´£äººç¼ç ï¼å
³èmember)") |
| | | @TableField(exist = false) |
| | | private Integer headId; |
| | |
| | | @ApiModelProperty(value = "æ¯å¦æ¥è¯¢é¥åææ ¡éªäººåï¼0=å¦ï¼1=æ¯" ) |
| | | @TableField(exist = false) |
| | | private Integer queryAuth; |
| | | |
| | | @ApiModelProperty(value = "é¨é¨é¨é¨éå" ) |
| | | @TableField(exist = false) |
| | | private List<Long> companyIdList; |
| | | } |
| | |
| | | return new ApiResponse<>(code, Boolean.FALSE, message, null, exceptionStack.toString()); |
| | | } |
| | | |
| | | public static void send200SuccessResponse(HttpServletResponse response) throws IOException { |
| | | try { |
| | | response.setStatus(200); |
| | | response.getWriter().write("success"); |
| | | response.getWriter().close(); |
| | | }catch (Exception e){ |
| | | |
| | | } |
| | | } |
| | | |
| | | public static void send401FailResponse(HttpServletResponse response) { |
| | | try { |
| | | response.setStatus(401); |
| | | response.getWriter().write("fail"); |
| | | response.getWriter().close(); |
| | | }catch (Exception e){ |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | public static void outputCode(HttpServletResponse response, String code) { |
| | |
| | | |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 1 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 1 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: true #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | |
| | |
| | | |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 1 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 1 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: true #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | |
| | |
| | | |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 1 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 1 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: true #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | |
| | |
| | | <artifactId>visits</artifactId> |
| | | <version>1.0.0-SNAPSHOT</version> |
| | | </parent> |
| | | |
| | | <artifactId>admin_timer</artifactId> |
| | | |
| | | <properties> |
| | | <maven.compiler.source>8</maven.compiler.source> |
| | | <maven.compiler.target>8</maven.compiler.target> |
| | | <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| | | </properties> |
| | | |
| | | <dependencies> |
| | | <dependency> |
| | | <groupId>com.doumee</groupId> |
| | |
| | | package com.doumee.api; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.dingTalk.DingTalk; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.HttpsUtil; |
| | | import com.doumee.core.wx.WXConstant; |
| | | import com.doumee.dao.system.model.SystemDictData; |
| | | import com.doumee.service.business.third.model.ApiResponse; |
| | | import com.doumee.service.system.SystemDictDataService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.apache.shiro.SecurityUtils; |
| | | import org.apache.shiro.mgt.DefaultSecurityManager; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import java.util.Date; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * @author æ±è¹è¹ |
| | |
| | | @PostMapping("/syncOrgData") |
| | | public ApiResponse syncOrgData() { |
| | | log.info("=========================å¼å¯å®æ¶åæ¥æµ·åº·ç»ç»æ°æ®===========start==========="); |
| | | if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp |
| | | || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self) { |
| | | if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.hk) { |
| | | //妿æ¯ERPç³»ç»åæ¥ä¸å |
| | | hkSyncOrgUserService.syncOrgData(null); |
| | | } |
| | |
| | | public ApiResponse syncMemberDelData() { |
| | | log.info("=========================å¼å¯å®æ¶éæ°ä¸åå é¤äººåæ°æ®===========start==========="); |
| | | hkSyncOrgUserService.syncMemberDelData(); |
| | | |
| | | log.info("=========================å¼å¯å®æ¶éæ°ä¸åå é¤äººåæ°æ®===========end==========="); |
| | | return ApiResponse.success("å¼å¯å®æ¶éæ°ä¸åå é¤äººåæ°æ®æå"); |
| | | } |
| | |
| | | @PostMapping("/syncUserData") |
| | | public ApiResponse syncUserData() { |
| | | log.info("=========================å¼å¯å®æ¶åæ¥æµ·åº·äººåæ°æ®===========start==========="); |
| | | if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp |
| | | || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self) { |
| | | if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.hk) { |
| | | //妿æ¯ERPç³»ç»åæ¥ä¸å |
| | | hkSyncOrgUserService.syncUserData(null); |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.api.business; |
| | | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.alibaba.fastjson.TypeReference; |
| | | import com.doumee.api.BaseController; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.config.annotation.LoginNoRequired; |
| | | import com.doumee.core.annotation.pr.PreventRepeat; |
| | | import com.doumee.core.annotation.trace.Trace; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.haikang.model.HKConstants; |
| | | import com.doumee.core.haikang.model.param.BaseResponse; |
| | | import com.doumee.core.haikang.model.param.request.FacePictureCheckRequest; |
| | | import com.doumee.core.haikang.model.param.respose.FacePictureCheckResponse; |
| | | import com.doumee.core.haikang.service.HKService; |
| | | import com.doumee.core.jiandaoyun.model.request.BasePushRequest; |
| | | import com.doumee.core.jiandaoyun.model.request.MemberPushData; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.core.utils.FtpUtil; |
| | | import com.doumee.core.utils.HttpsUtil; |
| | | import com.doumee.core.utils.aliyun.ALiYunUtil; |
| | | import com.doumee.core.wms.model.response.WmsBaseDataResponse; |
| | | import com.doumee.core.wms.model.response.WmsBaseResponse; |
| | | import com.doumee.dao.business.model.CarUseBook; |
| | | import com.doumee.dao.business.model.Cars; |
| | | import com.doumee.dao.business.model.JkCabinetLog; |
| | | import com.doumee.dao.web.reqeust.VisitRecordDTO; |
| | | import com.doumee.dao.web.response.VisitRecordVO; |
| | | import com.doumee.service.business.CarUseBookService; |
| | | import com.doumee.service.business.CarsService; |
| | | import com.doumee.service.business.MemberService; |
| | | import com.doumee.service.business.third.model.ApiResponse; |
| | | import com.doumee.service.business.third.model.PageData; |
| | | import com.doumee.service.business.third.model.PageWrap; |
| | | import com.sun.net.httpserver.HttpExchange; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiImplicitParam; |
| | | import io.swagger.annotations.ApiImplicitParams; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.codec.digest.DigestUtils; |
| | | import org.apache.commons.io.IOUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | import org.springframework.web.multipart.MultipartHttpServletRequest; |
| | | import org.springframework.web.multipart.commons.CommonsMultipartResolver; |
| | | |
| | | import javax.imageio.ImageIO; |
| | | import javax.imageio.stream.ImageOutputStream; |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.awt.*; |
| | | import java.awt.image.BufferedImage; |
| | | import java.io.*; |
| | | import java.net.URI; |
| | | import java.util.*; |
| | | |
| | | /** |
| | | * @author Eva.Caesar Liu |
| | | * @date 2023/02/14 11:14 |
| | | */ |
| | | |
| | | @Api(tags = "ãç®éäºãä¸å¡æ¥å£") |
| | | @RestController |
| | | @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/jiandaoyun") |
| | | @Slf4j |
| | | public class JiandaoyunCloudController extends BaseController { |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | |
| | | @Autowired |
| | | private MemberService memberService; |
| | | |
| | | public static final String SECRET ="yKSKuO0LoFf06jWGrwwuGudK"; |
| | | |
| | | @LoginNoRequired |
| | | @ApiOperation("ç®éäºæ¨éç¨æ·ä¿¡æ¯") |
| | | @PostMapping("/pushMemberData") |
| | | @PreventRepeat |
| | | public ApiResponse pushMemberData (HttpServletRequest request, HttpServletResponse response) { |
| | | BasePushRequest<MemberPushData> o = checkParamterValid(request,response,new TypeReference<BasePushRequest<MemberPushData>>(){}); |
| | | if(o == null || o.getData() ==null){ |
| | | return ApiResponse.failed(401,"error"); |
| | | } |
| | | int status =0; |
| | | String info ="忥æå"; |
| | | try { |
| | | memberService.dealJdyMemberInfo(o.getData());//å¤çç®éäºä¿¡æ¯ |
| | | }catch (BusinessException e){ |
| | | status =1; |
| | | info =e.getMessage(); |
| | | return ApiResponse.failed(e.getCode(),e.getMessage()); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | status =1; |
| | | info="忥åéå¼å¸¸"; |
| | | return ApiResponse.failed(ResponseStatus.SERVER_ERROR.getCode(),e.getMessage()); |
| | | }finally { |
| | | memberService.sendMemberInfoResult(o.getData().getUsername(),info,status); |
| | | } |
| | | |
| | | return ApiResponse.success("success"); |
| | | } |
| | | |
| | | private <T> BasePushRequest<T> checkParamterValid(HttpServletRequest request, HttpServletResponse response,TypeReference<BasePushRequest<T>> typeReference) { |
| | | |
| | | log.error("ãç®éäºã ç¨è½¦ç³è¯· =========getRequestURIï¼{}",request.getRequestURI()); |
| | | try { |
| | | String jdy = request.getHeader("x-jdy-signature"); |
| | | StringBuilder json = new StringBuilder(); |
| | | String line; |
| | | BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream())); |
| | | while ((line = reader.readLine()) != null) { |
| | | json.append(line); |
| | | } |
| | | String payload = json.toString(); |
| | | Map<String, String> parameterMap = parseParameter(request.getQueryString()); |
| | | String nonce = parameterMap.get("nonce"); |
| | | String timestamp = parameterMap.get("timestamp"); |
| | | String signature = getSignature(nonce, payload, systemDictDataBiz.queryByCode(Constants.JDY_CONFIG,Constants.JDY_SECRET).getCode(), timestamp); |
| | | log.error("ãç®éäºãæ°æ®æ¨é =========getRequestURIï¼{}\nï¼queryParamï¼{}\n,payload:{}\n,ç¾åï¼{}\n,æ£ç¡®ç¾å:{}\n",request.getRequestURI(),request.getQueryString(),payload,jdy,signature); |
| | | if (!signature.equals(jdy)) { |
| | | return null; |
| | | } |
| | | BasePushRequest<T> t = JSONObject.parseObject(payload, typeReference.getType()); |
| | | return t; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | log.error("ãç®éäºã ç¨è½¦ç³è¯· =========å¼å¸¸ï¼{}",e.getMessage()); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | |
| | | @ApiOperation("ç®éäºæäº¤é¥ååè¿ä¿¡æ¯") |
| | | @PostMapping("/submitKeyRecord") |
| | | public ApiResponse<JkCabinetLog> submitKeyRecord (HttpServletRequest request, HttpServletResponse response) { |
| | | JkCabinetLog log = new JkCabinetLog(); |
| | | log.setKeyId(1); |
| | | log.setCreateDate(new Date()); |
| | | log.setMemberName("å¼ ä¸"); |
| | | return ApiResponse.success(log); |
| | | } |
| | | |
| | | private static String getSignature(String nonce, String payload, String secret, String timestamp) { |
| | | return DigestUtils.sha1Hex(nonce + ":" + payload + ":" + secret + ":" + timestamp); |
| | | } |
| | | |
| | | private static Map<String, String> parseParameter(String query) { |
| | | Map<String, String> paramMap = new HashMap<String, String>(); |
| | | String[] params = query.split("&"); |
| | | for (String param : params) { |
| | | String[] keyValue = param.split("="); |
| | | paramMap.put(keyValue[0], keyValue[1]); |
| | | } |
| | | return paramMap; |
| | | } |
| | | public static void main(String[] args) { |
| | | /* |
| | | */ |
| | | String url = "https://api.jiandaoyun.com/api/v1/automation/tenant/6909b792324dc197821895d1/hooks/6909d0fbdb93695219faa27eb068192dc4a9532972993159"; |
| | | JSONObject object = new JSONObject(); |
| | | object.put("status",0); |
| | | object.put("username","20251104160000" ); |
| | | object.put("info", "è¿æ¯å¤æ³¨"); |
| | | String result = HttpsUtil.postJson(url,JSONObject.toJSONString(object)); |
| | | System.out.println(result); |
| | | } |
| | | } |
| | |
| | | public ApiResponse<List<CompanyDTO>> findCompanyTreePage(Integer type){ |
| | | return ApiResponse.success(companyService.findCompanyTreePage(type)); |
| | | } |
| | | |
| | | @ApiOperation("å
¨éé¨é¨ä¿¡æ¯åæ¥ - éé") |
| | | @PostMapping("/syncAllDingding") |
| | | // @CloudRequiredPermission("business:company:sync") |
| | | public ApiResponse syncAllDingding() throws ApiException { |
| | | companyService.syncDDCompany(); |
| | | return ApiResponse.success("忥æå"); |
| | | @ApiOperation("è·åå
é¨äººåç»ç»æ¥æºé
ç½®") |
| | | @GetMapping("/getSysConfig") |
| | | public ApiResponse<DataSyncConfig> getSysConfig(){ |
| | | return ApiResponse.success(dataSyncConfig); |
| | | } |
| | | |
| | | |
| | | |
| | | @ApiOperation("å
¨éé¨é¨ä¿¡æ¯åæ¥") |
| | | @PostMapping("/syncAll") |
| | | @CloudRequiredPermission("business:company:sync") |
| | | @CloudRequiredPermission("business:company:create") |
| | | public ApiResponse sync(@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ |
| | | if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp){ |
| | | return ApiResponse.success( erpSyncService.syncCompany(null)); |
| | |
| | | }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self){ |
| | | hkSyncOrgUserFromSelfService.syncOrgData(this.getLoginUser(token)); |
| | | return ApiResponse.success("忥æå"); |
| | | }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.dingding){ |
| | | companyService.syncDDCompany(); |
| | | return ApiResponse.success("忥æå"); |
| | | }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.jdy){ |
| | | companyService.syncJdyCompany(); |
| | | return ApiResponse.success("忥æå"); |
| | | } |
| | | return ApiResponse.failed("æ ææä½"); |
| | | } |
| | |
| | | |
| | | @ApiOperation("å
¨éä¿¡æ¯åæ¥") |
| | | @PostMapping("/syncAll") |
| | | @CloudRequiredPermission("business:member:sync") |
| | | @CloudRequiredPermission("business:member:create") |
| | | public ApiResponse sync(@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ |
| | | if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp){ |
| | | erpSyncService.syncUsers(null); |
| | |
| | | hkSyncOrgUserFHKService.syncUserData(this.getLoginUser(token)); |
| | | }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self){ |
| | | hkSyncOrgUserFromSelfService.syncUserData(this.getLoginUser(token)); |
| | | return ApiResponse.success("忥æå"); |
| | | }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.dingding){ |
| | | memberService.syncDDUserInfo(); |
| | | return ApiResponse.success("忥æå"); |
| | | }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.jdy){ |
| | | memberService.syncJdyUserInfo(); |
| | | return ApiResponse.success("忥æå"); |
| | | } |
| | | return ApiResponse.success("忥æå"); |
| | |
| | | } |
| | | |
| | | |
| | | @ApiOperation("å
¨é人åä¿¡æ¯åæ¥ - éé") |
| | | @PostMapping("/syncAllDingding") |
| | | // @CloudRequiredPermission("business:company:sync") |
| | | public ApiResponse syncAllDingding() throws ApiException { |
| | | memberService.syncDDUserInfo(); |
| | | return ApiResponse.success("忥æå"); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | .build(); |
| | | } |
| | | @Bean |
| | | public Docket getDocket() { |
| | | public Docket getDocket2() { |
| | | return new Docket(DocumentationType.SWAGGER_2) |
| | | .apiInfo(this.getApiInfo()).groupName("default") |
| | | .host(host) |
| | | .enable(enabled) |
| | | .select() |
| | | .apis( basePackage("com.doumee.cloud")) |
| | | // .apis( basePackage("com.doumee.api.common")) |
| | | |
| | | // .apis( basePackage("com.doumee.cloud.openapi;com.doumee.api.common")) |
| | | // .apis( basePackage("com.doumee.cloud.openapi")) |
| | | .apis( basePackage("com.doumee.cloud;")) |
| | | // 设置éè¦è¢«æ«æçç±»ï¼è¿é设置为添å äº@Api注解çç±» |
| | | // .apis(RequestHandlerSelectors.withClassAnnotation(Api.class)) |
| | | .paths(PathSelectors.any()) |
| | |
| | | basic: |
| | | enable: true |
| | | username: admin |
| | | password: 111111 |
| | | password: 111111 |
| | | |
| | |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.doumee</groupId> |
| | | <artifactId>jiandaoyun_service</artifactId> |
| | | <version>1.0.0-SNAPSHOT</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.doumee</groupId> |
| | | <artifactId>device_service</artifactId> |
| | | <version>1.0.0-SNAPSHOT</version> |
| | | </dependency> |
| | |
| | | |
| | | void updateSort(UpdateCompanySortDTO dto); |
| | | |
| | | void ddPushCompanyInfo(String eventType, JSONObject eventData) throws ApiException; |
| | | void ddPushCompanyInfo(String eventType, JSONObject eventData) ; |
| | | |
| | | String syncDDCompany()throws ApiException; |
| | | String syncDDCompany() ; |
| | | |
| | | String syncJdyCompany(); |
| | | } |
| | |
| | | package com.doumee.service.business; |
| | | |
| | | import com.doumee.core.jiandaoyun.model.request.MemberPushData; |
| | | import com.doumee.dao.web.response.DDAuthorizeVO; |
| | | import com.doumee.service.business.third.model.LoginUserInfo; |
| | | import com.doumee.service.business.third.model.PageData; |
| | |
| | | void registerDriver(RegisterDriverDTO registerDriverDTO); |
| | | |
| | | /** |
| | | * 忥ç®åäºç¨æ· |
| | | * @return |
| | | */ |
| | | String syncJdyUserInfo(); |
| | | /** |
| | | * å¾®ä¿¡æææ¥å£ |
| | | * @param code |
| | | * @return |
| | |
| | | |
| | | void initPinyinTool(); |
| | | |
| | | void syncDDUserInfo() throws ApiException; |
| | | void syncDDUserInfo() ; |
| | | |
| | | void ddPushMemberInfo(String eventType, shade.com.alibaba.fastjson2.JSONObject eventData) throws ApiException; |
| | | void ddPushMemberInfo(String eventType, shade.com.alibaba.fastjson2.JSONObject eventData) ; |
| | | |
| | | void dealJdyMemberInfo(MemberPushData data); |
| | | |
| | | void sendMemberInfoResult(String username, String info, int status); |
| | | } |
| | |
| | | package com.doumee.service.business.impl; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.TypeReference; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | |
| | | import com.doumee.core.haikang.model.param.respose.OrgOrUserAddResponse; |
| | | import com.doumee.core.haikang.model.param.respose.OrgUpdateFailureResponse; |
| | | import com.doumee.core.haikang.service.HKService; |
| | | import com.doumee.core.jiandaoyun.api.arch.DeptApiClient; |
| | | import com.doumee.core.jiandaoyun.constants.HttpConstant; |
| | | import com.doumee.core.jiandaoyun.model.dept.DeptEntityModel; |
| | | import com.doumee.core.wms.model.response.WmsBaseDataResponse; |
| | | import com.doumee.core.wms.model.response.WmsBaseResponse; |
| | | import com.doumee.service.business.third.model.LoginUserInfo; |
| | | import com.doumee.service.business.third.model.PageData; |
| | | import com.doumee.service.business.third.model.PageWrap; |
| | |
| | | import com.doumee.dao.system.model.SystemUser; |
| | | import com.doumee.service.business.CompanyService; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import com.taobao.api.ApiException; |
| | | import org.apache.commons.collections.CollectionUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.shiro.SecurityUtils; |
| | |
| | | company.setIsdeleted(Constants.ZERO); |
| | | company.setHkStatus(Constants.ONE); |
| | | company.setStatus(Constants.ZERO); |
| | | company.setSortnum(Objects.isNull(company.getSortnum())?0:company.getSortnum()); |
| | | company.setSortnum(0);//é»è®¤æä¸é¢ |
| | | company.setHkDate(company.getCreateDate()); |
| | | company.setEditDate(company.getCreateDate()); |
| | | company.setEditor(company.getCreator()); |
| | |
| | | OrgEditRequest request = (getOrgHkEditModel(company)); |
| | | BaseResponse result = HKService.editOrg(request); |
| | | if(result !=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE)){ |
| | | //å¤çæ°å¢æåçæ°æ®ï¼ä¿®æ¹æµ·åº·åæ¥ç¶æ |
| | | return true; |
| | | //å¤çæ°å¢æåçæ°æ®ï¼ä¿®æ¹æµ·åº·åæ¥ç¶æ |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | |
| | | request.setIndexCodes(new String[]{company.getHkId()}); |
| | | BaseResponse<List<OrgUpdateFailureResponse>> result = HKService.delBatchOrg(request); |
| | | if(result !=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE)){ |
| | | //å¤çæ°å¢æåçæ°æ®ï¼ä¿®æ¹æµ·åº·åæ¥ç¶æ |
| | | //å¤çæ°å¢æåçæ°æ®ï¼ä¿®æ¹æµ·åº·åæ¥ç¶æ |
| | | if(result.getData()!=null && result.getData().size()==0){ |
| | | return true; |
| | | } |
| | |
| | | if(company.getId() == null|| StringUtils.isBlank(company.getName())){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | if(company.getType()!=null && !(company.getType() ==0 || company.getType() ==1 || company.getType() ==-1)){ |
| | | if(company.getType()!=null && !(company.getType() ==-1 || company.getType() ==0 || company.getType() ==1)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "对ä¸èµ·ï¼ç»ç»ç±»å䏿£ç¡®ï¼è¯·æè¦æ±å¡«å~"); |
| | | } |
| | | //æ¥è¯¢åç§°ä¸è½éå¤ |
| | |
| | | company.setType(null); |
| | | company.setEditDate(new Date()); |
| | | company.setEditor(user.getId()); |
| | | |
| | | company.setHkStatus(Constants.ONE); |
| | | company.setHkDate(company.getHkDate()); |
| | | company.setHkId(StringUtils.defaultString(model.getHkId(),UUID.randomUUID().toString().replace("-",""))); |
| | |
| | | //æ´æ°çcompanyPath |
| | | String newName = model.getCompanyNamePath().replace(model.getName(),company.getName()); |
| | | companyMapper.update(null,new UpdateWrapper<Company>().lambda() |
| | | .setSql("company_name_path=REPLACE(company_name_path,'"+ model.getCompanyNamePath()+"','"+newName+"')") |
| | | .setSql("hk_company_path=REPLACE(hk_company_path,'"+ model.getCompanyNamePath()+"','"+newName+"')") |
| | | .setSql("company_name_path=REPLACE(company_name_path,'"+ model.getCompanyNamePath()+"','"+newName+"')") |
| | | .setSql("hk_company_path=REPLACE(hk_company_path,'"+ model.getCompanyNamePath()+"','"+newName+"')") |
| | | .likeRight(Company::getCompanyPath,model.getCompanyPath())); |
| | | //ä¸å海康å®é²å¹³å° |
| | | if(StringUtils.isNotBlank(model.getHkId())){ |
| | | if(!editHkOrg(company)){ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对ä¸èµ·ï¼ç»ç»åæ¥ä¸å失败ï¼è¯·ç¨åéè¯"); |
| | | } |
| | | if(!editHkOrg(company)){ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对ä¸èµ·ï¼ç»ç»åæ¥ä¸å失败ï¼è¯·ç¨åéè¯"); |
| | | } |
| | | }else{//å¦ææ²¡æä¸åè¿ï¼ç´æ¥æ°å»ºå®é²å¹³å°ç»ç» |
| | | if(!addHkOrg(company)){ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对ä¸èµ·ï¼ç»ç»åæ¥ä¸å失败ï¼è¯·ç¨åéè¯"); |
| | |
| | | // org_dept_remove é¨é¨å é¤ {"timeStamp":"1758785817760","eventId":"47e289f334e041719ed354052da474de","deptId":[1040735458]} |
| | | |
| | | @Override |
| | | public void ddPushCompanyInfo(String eventType, JSONObject eventData) throws ApiException { |
| | | JSONArray jsonArray = eventData.getJSONArray("deptId"); |
| | | if(jsonArray.isEmpty()){ |
| | | return; |
| | | } |
| | | if(eventType.equals("org_dept_remove")){ |
| | | //å é¤å¯¹åºé¨é¨ä¿¡æ¯ |
| | | List<Long> deptIdList = new ArrayList<>(); |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | Long deptId = jsonArray.getLong(i); |
| | | deptIdList.add(deptId); |
| | | public void ddPushCompanyInfo(String eventType, JSONObject eventData) { |
| | | try { |
| | | JSONArray jsonArray = eventData.getJSONArray("deptId"); |
| | | if(jsonArray.isEmpty()){ |
| | | return; |
| | | } |
| | | if(CollectionUtils.isNotEmpty(deptIdList)){ |
| | | syncDelCompany(deptIdList); |
| | | } |
| | | }else if(eventType.equals("org_dept_create")||eventType.equals("org_dept_modify")){ |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | Company company = companyMapper.selectOne(new QueryWrapper<Company>().lambda() |
| | | .eq(Company::getIsdeleted,Constants.ZERO) |
| | | .eq(Company::getErpId,jsonArray.getLong(i)) |
| | | ); |
| | | OapiV2DepartmentGetResponse.DeptGetResponse deptGetResponse = dingTalk.syncDepartmentInfo(jsonArray.getLong(i)); |
| | | if(Objects.isNull(company)){ |
| | | getAddCompanyModel(deptGetResponse,company); |
| | | }else{ |
| | | getUpdateCompanyModel(deptGetResponse,company); |
| | | if(eventType.equals("org_dept_remove")){ |
| | | //å é¤å¯¹åºé¨é¨ä¿¡æ¯ |
| | | List<Long> deptIdList = new ArrayList<>(); |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | Long deptId = jsonArray.getLong(i); |
| | | deptIdList.add(deptId); |
| | | } |
| | | if(CollectionUtils.isNotEmpty(deptIdList)){ |
| | | syncDelCompany(deptIdList); |
| | | } |
| | | }else if(eventType.equals("org_dept_create")||eventType.equals("org_dept_modify")){ |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | Company company = companyMapper.selectOne(new QueryWrapper<Company>().lambda() |
| | | .eq(Company::getIsdeleted,Constants.ZERO) |
| | | .eq(Company::getErpId,jsonArray.getLong(i)) |
| | | ); |
| | | OapiV2DepartmentGetResponse.DeptGetResponse deptGetResponse = dingTalk.syncDepartmentInfo(jsonArray.getLong(i)); |
| | | Company param = new Company(); |
| | | param.setName(deptGetResponse.getName()); |
| | | param.setErpId(deptGetResponse.getDeptId().toString()); |
| | | param.setErpParentId(deptGetResponse.getParentId().toString()); |
| | | if(Objects.isNull(company)){ |
| | | param.setSortnum(deptGetResponse.getOrder().intValue());//é»è®¤æä¸é¢ |
| | | getAddCompanyModel(param); |
| | | }else{ |
| | | getUpdateCompanyModel(param,company); |
| | | } |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"æ°æ®åæ¥å¤±è´¥"); |
| | | } |
| | | |
| | | } |
| | | |
| | | private void doHkDeleteOrg(List<Integer> delIds,List<String> delHkIds, Date date) { |
| | |
| | | } |
| | | |
| | | @Override |
| | | public String syncDDCompany() throws ApiException { |
| | | List<OapiV2DepartmentGetResponse.DeptGetResponse> list = dingTalk.syncAllDDDepartmentList(); |
| | | if(list !=null && list.size()>0){ |
| | | List<Company> addList = new ArrayList<>(); |
| | | List<Company> updateList = new ArrayList<>(); |
| | | List<Long> delIds = new ArrayList<>();//ä¿®æ¹ä¸ºä½¿ç¨ééid erpId |
| | | List<Company> allList = companyMapper.selectList(new QueryWrapper<Company>().lambda() |
| | | .eq(Company::getIsdeleted,Constants.ZERO).eq(Company::getType,Constants.ONE)); |
| | | dealCompanyChangeList(list,addList,updateList,delIds,allList); |
| | | if(delIds.size()>0){ |
| | | syncDelCompany(delIds); |
| | | public String syncDDCompany() { |
| | | try { |
| | | List<OapiV2DepartmentGetResponse.DeptGetResponse> list = dingTalk.syncAllDDDepartmentList(); |
| | | if(list !=null && list.size()>0){ |
| | | List<Company> addList = new ArrayList<>(); |
| | | List<Company> updateList = new ArrayList<>(); |
| | | List<Long> delIds = new ArrayList<>();//ä¿®æ¹ä¸ºä½¿ç¨ééid erpId |
| | | List<Company> allList = companyMapper.selectList(new QueryWrapper<Company>().lambda() |
| | | .eq(Company::getIsdeleted,Constants.ZERO).eq(Company::getType,Constants.ONE)); |
| | | dealCompanyChangeList(list,addList,updateList,delIds,allList); |
| | | if(delIds.size()>0){ |
| | | syncDelCompany(delIds); |
| | | } |
| | | return "åæ¥æ°æ®ï¼æ°å¢ã"+addList.size()+"ãæ¡ï¼æ´æ°ã"+updateList.size()+"ãæ¡ï¼å é¤ã"+delIds.size()+"ãæ¡"; |
| | | }else{ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "忥ééæ°æ®ä¸ºç©ºï¼"); |
| | | } |
| | | return "åæ¥æ°æ®ï¼æ°å¢ã"+addList.size()+"ãæ¡ï¼æ´æ°ã"+updateList.size()+"ãæ¡ï¼å é¤ã"+delIds.size()+"ãæ¡"; |
| | | }else{ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "忥ééæ°æ®ä¸ºç©ºï¼"); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "忥ééæ°æ®å¼å¸¸ï¼"); |
| | | } |
| | | } |
| | | @Override |
| | | public String syncJdyCompany() { |
| | | //{ |
| | | // "dept_no": 1,//æ°å 1 ä¸ºæ ¹é¨é¨ç¼å·ã |
| | | // "has_child": true |
| | | //} |
| | | DeptApiClient deptApiClient = new DeptApiClient(HttpConstant.API_KEY, HttpConstant.HOST); |
| | | try { |
| | | Map<String, Object> result = deptApiClient.deptList(1,true,deptApiClient.getDefaultVersion()); |
| | | if(result!=null && result.get("departments")!=null ){ |
| | | TypeReference<List<DeptEntityModel>> typeReference = new TypeReference<List<DeptEntityModel>>(){}; |
| | | Object obj = result.get("departments"); |
| | | List<DeptEntityModel> list = com.alibaba.fastjson.JSONObject.parseObject(JSON.toJSONString(obj), typeReference.getType()); |
| | | if(list !=null && list.size()>0){ |
| | | List<Company> addList = new ArrayList<>(); |
| | | List<Company> updateList = new ArrayList<>(); |
| | | List<Long> delIds = new ArrayList<>();//ä¿®æ¹ä¸ºä½¿ç¨ééid erpId |
| | | List<Company> allList = companyMapper.selectList(new QueryWrapper<Company>().lambda() |
| | | .eq(Company::getIsdeleted,Constants.ZERO).eq(Company::getType,Constants.ONE)); |
| | | dealCompanyChangeListJdy(list,addList,updateList,delIds,allList); |
| | | if(delIds.size()>0){ |
| | | syncDelCompany(delIds); |
| | | } |
| | | return "åæ¥æ°æ®ï¼æ°å¢ã"+addList.size()+"ãæ¡ï¼æ´æ°ã"+updateList.size()+"ãæ¡ï¼å é¤ã"+delIds.size()+"ãæ¡"; |
| | | }else{ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "忥ééæ°æ®ä¸ºç©ºï¼"); |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "åæ¥æ°æ®å¼å¸¸ï¼"); |
| | | } |
| | | |
| | | return null; |
| | | } |
| | | |
| | | private void dealCompanyChangeListJdy(List<DeptEntityModel> list, List<Company> addList, List<Company> updateList, List<Long> delIds, List<Company> allList) { |
| | | Date date = new Date(); |
| | | for(DeptEntityModel respone : list){ |
| | | Company param = new Company(); |
| | | param.setName(respone.getName()); |
| | | param.setErpId(respone.getDept_no().toString()); |
| | | param.setErpParentId(respone.getParent_no() !=null?respone.getParent_no() .toString():null); |
| | | param.setSortnum(respone.getSeq()!=null?respone.getSeq().intValue():null);//é»è®¤æä¸é¢ |
| | | //æ ¹æ®erpidæ¥è¯¢ä¼ä¸ä¿¡æ¯ï¼å¤ææ¯æ°å¢è¿æ¯æ´æ° |
| | | Company company = findCompanyByERPId(allList,respone.getDept_no().toString()); |
| | | if(company == null){ |
| | | //å¦ææ¯æ°å¢ |
| | | //å°è£
æ°å¢ç»ç»å¯¹è±¡æ°æ® |
| | | addList.add(getAddCompanyModel(param)); |
| | | }else{ |
| | | updateList.add(getUpdateCompanyModel(param,company)); |
| | | } |
| | | } |
| | | if(allList!=null && allList.size()>0){ |
| | | for(Company c : allList){ |
| | | if(!isCompanyDeletedJdy(c,list)){ |
| | | delIds.add(Long.valueOf(c.getErpId())); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | private void dealCompanyChangeList(List<OapiV2DepartmentGetResponse.DeptGetResponse> list, List<Company> addList, List<Company> updateList, List<Long> delIds, List<Company> allList) { |
| | | Date date = new Date(); |
| | | for(OapiV2DepartmentGetResponse.DeptGetResponse respone : list){ |
| | | Company param = new Company(); |
| | | param.setName(respone.getName()); |
| | | param.setErpId(respone.getDeptId().toString()); |
| | | param.setErpParentId(respone.getParentId().toString()); |
| | | param.setSortnum(respone.getOrder().intValue());//é»è®¤æä¸é¢ |
| | | //æ ¹æ®erpidæ¥è¯¢ä¼ä¸ä¿¡æ¯ï¼å¤ææ¯æ°å¢è¿æ¯æ´æ° |
| | | Company company = findCompanyByERPId(allList,respone.getDeptId().toString()); |
| | | if(company == null){ |
| | | //å¦ææ¯æ°å¢ |
| | | //å°è£
æ°å¢ç»ç»å¯¹è±¡æ°æ® |
| | | addList.add(getAddCompanyModel(respone,new Company())); |
| | | addList.add(getAddCompanyModel(param)); |
| | | }else{ |
| | | updateList.add(getUpdateCompanyModel(respone,company)); |
| | | updateList.add(getUpdateCompanyModel(param,company)); |
| | | } |
| | | } |
| | | if(allList!=null && allList.size()>0){ |
| | |
| | | |
| | | /** |
| | | * æ´çéé忥 æ°å¢ç»ç»å¯¹è±¡ |
| | | * @param deptGetResponse |
| | | * @return |
| | | */ |
| | | private Company getAddCompanyModel(OapiV2DepartmentGetResponse.DeptGetResponse deptGetResponse,Company company) { |
| | | return syncDDAddCompanyModel(deptGetResponse,company); |
| | | private Company getAddCompanyModel(Company param ) { |
| | | return syncDDAddCompanyModel(param); |
| | | } |
| | | |
| | | /** |
| | | * æ´çéé忥 æ°å¢ éè¦ä¿®æ¹çç»ç»å¯¹è±¡ |
| | | * @param deptGetResponse |
| | | * @param param |
| | | * @param company |
| | | * @return |
| | | */ |
| | | private Company getUpdateCompanyModel(OapiV2DepartmentGetResponse.DeptGetResponse deptGetResponse, Company company) { |
| | | return syncDDEditCompanyModel(deptGetResponse,company); |
| | | private Company getUpdateCompanyModel(Company param, Company company) { |
| | | return syncDDEditCompanyModel(param,company); |
| | | } |
| | | |
| | | |
| | |
| | | } |
| | | return false; |
| | | } |
| | | private boolean isCompanyDeletedJdy(Company c, List<DeptEntityModel> list) { |
| | | for(DeptEntityModel m : list){ |
| | | if(StringUtils.equals(c.getErpId(),m.getDept_no().toString())){ |
| | | return true; |
| | | } |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * æ´ç éé忥ç ç»ç»ä¿¡æ¯ |
| | | * @param deptGetResponse |
| | | * @param company |
| | | * @param param |
| | | * @return |
| | | */ |
| | | public Company syncDDAddCompanyModel(OapiV2DepartmentGetResponse.DeptGetResponse deptGetResponse,Company company){ |
| | | company = new Company(); |
| | | public Company syncDDAddCompanyModel(Company param ){ |
| | | Company company = new Company(); |
| | | company.setCreateDate(new Date()); |
| | | company.setIsdeleted(Constants.ZERO); |
| | | company.setStatus(Constants.ZERO); |
| | | |
| | | company.setName(deptGetResponse.getName()); |
| | | company.setErpId(deptGetResponse.getDeptId().toString()); |
| | | company.setErpParentId(deptGetResponse.getParentId().toString()); |
| | | company.setSortnum(deptGetResponse.getOrder().intValue());//é»è®¤æä¸é¢ |
| | | // company.setName(deptGetResponse.getName()); |
| | | // company.setErpId(deptGetResponse.getDeptId().toString()); |
| | | // company.setErpParentId(deptGetResponse.getParentId().toString()); |
| | | // company.setSortnum(deptGetResponse.getOrder().intValue());//é»è®¤æä¸é¢ |
| | | company.setName(param.getName()); |
| | | company.setErpId(param.getErpId() ); |
| | | company.setErpParentId(param.getErpParentId()); |
| | | company.setSortnum(param.getSortnum());//é»è®¤æä¸é¢ |
| | | |
| | | company.setType(Constants.ONE); |
| | | String rootOrgId = systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_ROOTORG_CODE).getCode(); |
| | | Company root =getRootCompanyModel(rootOrgId); |
| | | company.setCompanyPath(company.getId()+"/");//åç§°è·¯å¾ |
| | | company.setCompanyNamePath(company.getName());//åç§°è·¯å¾ |
| | | company.setHkParentId(rootOrgId); |
| | |
| | | Company parent = companyMapper.selectOne(new QueryWrapper<Company>().lambda().eq(Company::getErpId,company.getErpParentId()) |
| | | .eq(Company::getIsdeleted,Constants.ZERO).last(" limit 1 ")); |
| | | if(parent == null || Constants.equalsInteger(parent.getIsdeleted(),Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "对ä¸èµ·ï¼ç¶çº§ç»ç»ä¿¡æ¯ä¸åå¨~"); |
| | | //ç¶çº§ä¸åå¨çï¼ç´æ¥æå¨æ ¹ç»ç»ä¸ |
| | | parent = root; |
| | | // throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "对ä¸èµ·ï¼ç¶çº§ç»ç»ä¿¡æ¯ä¸åå¨~"); |
| | | } |
| | | // if(StringUtils.isBlank(parent.getHkId())){ |
| | | // throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "对ä¸èµ·ï¼ç¶çº§ç»ç»ä¿¡æ¯å°æªåæ¥ä¸åæå~"); |
| | |
| | | companyMapper.insert(company); |
| | | |
| | | company.setHkId(UUID.randomUUID().toString().replace("-","")); |
| | | Company com = new Company(); |
| | | com.setId(company.getId()); |
| | | com.setCompanyPath(idPath+company.getId()+"/"); |
| | | companyMapper.updateById(com); |
| | | //ä¸å海康å®é²å¹³å° |
| | | Boolean issueStatus = addHkOrg(company); |
| | | /* Boolean issueStatus = addHkOrg(company); |
| | | Company com = new Company(); |
| | | com.setId(company.getId()); |
| | | com.setHkId(issueStatus?company.getHkId():null); |
| | | com.setHkStatus(issueStatus?Constants.ONE:Constants.TWO); |
| | | com.setCompanyPath(idPath+company.getId()+"/"); |
| | | companyMapper.updateById(com); |
| | | companyMapper.updateById(com);*/ |
| | | return company; |
| | | } |
| | | |
| | | /** |
| | | * å
ç½®æ ¹ç»ç» |
| | | * @param rootOrgId |
| | | * @return |
| | | */ |
| | | private Company getRootCompanyModel(String rootOrgId) { |
| | | Company root = companyMapper.selectOne(new QueryWrapper<Company>().lambda() |
| | | .eq(Company::getIsdeleted,Constants.ZERO) |
| | | .isNull(Company::getParentId) |
| | | .last(" limit 1 ")); |
| | | if(root== null){ |
| | | String name =systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_ROOTORG_NAME).getCode(); |
| | | name =StringUtils.defaultString(name,"æ ¹ç»ç»"); |
| | | root = new Company(); |
| | | root.setCreateDate(new Date()); |
| | | root.setEditDate(new Date()); |
| | | root.setName(name); |
| | | root.setType(-1); |
| | | root.setHkId(rootOrgId); |
| | | root.setHkStatus(Constants.ONE); |
| | | root.setIsdeleted(Constants.ZERO); |
| | | root.setStatus(Constants.ZERO); |
| | | root.setHkCompanyPath(rootOrgId+"/"); |
| | | root.setCompanyNamePath(root.getName()); |
| | | root.setHkDate(new Date()); |
| | | root.setRemark("é»è®¤æ ¹ç»ç»"); |
| | | companyMapper.insert(root); |
| | | root.setCompanyPath(root.getId()+"/"); |
| | | companyMapper.updateById(root); |
| | | } |
| | | return root; |
| | | |
| | | public Company syncDDEditCompanyModel(OapiV2DepartmentGetResponse.DeptGetResponse deptGetResponse,Company company){ |
| | | company.setErpParentId(deptGetResponse.getParentId().toString()); |
| | | } |
| | | |
| | | |
| | | public Company syncDDEditCompanyModel(Company param,Company company){ |
| | | company.setErpParentId(param.getErpParentId().toString()); |
| | | String rootOrgId = systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_ROOTORG_CODE).getCode(); |
| | | Company root =getRootCompanyModel(rootOrgId); |
| | | String idPath = ""; |
| | | if(StringUtils.isNotBlank(company.getErpParentId())){ |
| | | Company parent = companyMapper.selectOne(new QueryWrapper<Company>().lambda().eq(Company::getErpId,company.getErpParentId()) |
| | | .eq(Company::getIsdeleted,Constants.ZERO).last("limit 1 ")); |
| | | Company parent = companyMapper.selectOne(new QueryWrapper<Company>().lambda() |
| | | .eq(Company::getErpId,company.getErpParentId()) |
| | | .eq(Company::getType,Constants.ONE) |
| | | .eq(Company::getIsdeleted,Constants.ZERO) |
| | | .last("limit 1 ")); |
| | | if(parent == null || Constants.equalsInteger(parent.getIsdeleted(),Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "对ä¸èµ·ï¼ç¶çº§ç»ç»ä¿¡æ¯ä¸åå¨~"); |
| | | parent =root; |
| | | } |
| | | if(Objects.nonNull(parent.getType())&&!Constants.equalsInteger(parent.getType(),-1)){ |
| | | /* if(Objects.nonNull(parent.getType())&&!Constants.equalsInteger(parent.getType(),-1)){ |
| | | if(!Constants.equalsInteger(company.getType(),parent.getType())){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ç»ç»ä¿¡æ¯é误"); |
| | | } |
| | | }else if(Objects.isNull(parent.getType())){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ç»ç»ä¿¡æ¯é误"); |
| | | } |
| | | }*/ |
| | | idPath = parent.getCompanyPath(); |
| | | company.setHkParentId(parent.getHkId()); |
| | | company.setCompanyPath(parent.getCompanyPath()+company.getId()+"/"); |
| | |
| | | company.setParentId(parent.getId()); |
| | | } |
| | | |
| | | company.setName(deptGetResponse.getName()); |
| | | company.setErpId(deptGetResponse.getDeptId().toString()); |
| | | company.setErpParentId(deptGetResponse.getParentId().toString()); |
| | | company.setSortnum(deptGetResponse.getOrder().intValue());//é»è®¤æä¸é¢ |
| | | company.setName(param.getName()); |
| | | company.setErpId(param.getErpId()); |
| | | company.setSortnum(param.getSortnum());//é»è®¤æä¸é¢ |
| | | company.setEditDate(new Date()); |
| | | company.setHkCompanyPath(company.getCompanyNamePath()); |
| | | // company.setHkCompanyPath(company.getCompanyNamePath()); |
| | | company.setHkStatus(Constants.ZERO); |
| | | company.setStatus(Constants.ZERO); |
| | | company.setSortnum(deptGetResponse.getOrder().intValue()); |
| | | company.setHkDate(company.getCreateDate()); |
| | | company.setEditDate(company.getCreateDate()); |
| | | company.setEditor(company.getCreator()); |
| | | company.setPinyin(Constants.getChinesePingyin(company.getName())); |
| | | companyMapper.updateById(company); |
| | | //ä¸å海康å®é²å¹³å° |
| | | Boolean issueStatus = editHkOrg(company); |
| | | /* Boolean issueStatus = editHkOrg(company); |
| | | Company com = new Company(); |
| | | com.setId(company.getId()); |
| | | com.setHkId(issueStatus?company.getHkId():null); |
| | | com.setHkStatus(issueStatus?Constants.ONE:Constants.TWO); |
| | | com.setCompanyPath(idPath+company.getId()+"/"); |
| | | companyMapper.updateById(com); |
| | | companyMapper.updateById(com);*/ |
| | | return company; |
| | | } |
| | | |
| | |
| | | doHkDeleteOrg(delIds,delHKIds,new Date()); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | if (pageWrap.getModel().getName() != null) { |
| | | queryWrapper.lambda().like(Device::getName, pageWrap.getModel().getName()); |
| | | } |
| | | if (pageWrap.getModel().getDoorNo() != null) { |
| | | queryWrapper.lambda().like(Device::getDoorNo, pageWrap.getModel().getDoorNo()); |
| | | } |
| | | if (pageWrap.getModel().getNo() != null) { |
| | | queryWrapper.lambda().like(Device::getNo, pageWrap.getModel().getNo()); |
| | | } |
| | | if (pageWrap.getModel().getDoorName() != null) { |
| | | queryWrapper.lambda().like(Device::getDoorName, pageWrap.getModel().getDoorName()); |
| | | } |
| | |
| | | } |
| | | MqttClientCache.clientMapCache.put("device"+param.getId(),mqttClient); |
| | | String curremak = "ã"+param.getLoginUserInfo().getRealname() |
| | | +"ãäº"+ DateUtil.getPlusTime2(new Date()) +"è¿è¡äº"+(Constants.equalsInteger(param.getStatus(),Constants.ONE)?"ãå¼é¸ã":"ãå
³é¸ã")+"æä½,å¼å
³ã"+param.getChannelNo()+"ãï¼"; |
| | | +"ãäº"+ DateUtil.getPlusTime2(new Date()) +"è¿è¡äº"+(Constants.equalsInteger(param.getStatus(),Constants.ONE)?"ãåé¸ã":"ãåé¸ã")+"æä½,å¼å
³ã"+param.getChannelNo()+"ãï¼"; |
| | | deviceMapper.update(null,new UpdateWrapper<Device>().lambda() |
| | | // .setSql("remark = concat(ifnull(remark,''),'"+curremak+"','\n')") |
| | | .set(Device::getRemark,curremak) |
| | |
| | | data.setVal1("è¿ç¨æ§å¶"); |
| | | data.setVal2(curremak); |
| | | data.setHappenTime(DateUtil.getPlusTime2(data.getCreateDate())); |
| | | data.setVal3((Constants.equalsInteger(param.getStatus(),Constants.ONE)?"ãå¼é¸ã":"ãå
³é¸ã")); |
| | | data.setVal3((Constants.equalsInteger(param.getStatus(),Constants.ONE)?"ãåé¸ã":"ãåé¸ã")); |
| | | data.setVal4(param.getLoginUserInfo().getRealname()); |
| | | data.setVal5(param.getChannelNo()); |
| | | deviceDataMapper.insert(data); |
| | |
| | | |
| | | import cn.hutool.core.util.IdcardUtil; |
| | | import cn.hutool.core.util.PhoneUtil; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.alibaba.fastjson.TypeReference; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | |
| | | import com.doumee.core.haikang.model.param.respose.UserAddResponse; |
| | | import com.doumee.core.haikang.model.param.respose.UserDelResponse; |
| | | import com.doumee.core.haikang.service.HKService; |
| | | import com.doumee.core.jiandaoyun.api.arch.DeptApiClient; |
| | | import com.doumee.core.jiandaoyun.constants.HttpConstant; |
| | | import com.doumee.core.jiandaoyun.model.dept.DeptEntityModel; |
| | | import com.doumee.core.jiandaoyun.model.request.MemberPushData; |
| | | import com.doumee.core.jiandaoyun.model.request.UserPushData; |
| | | import com.doumee.core.jiandaoyun.model.user.UserEntityModel; |
| | | import com.doumee.dao.web.response.DDAuthorizeVO; |
| | | import com.doumee.service.business.third.TmsService; |
| | | import com.doumee.service.business.third.model.LoginUserInfo; |
| | |
| | | import com.doumee.service.business.third.model.response.TmsEmployeeListResponse; |
| | | import com.doumee.service.system.SystemLoginService; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import com.taobao.api.ApiException; |
| | | import lombok.Synchronized; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import me.chanjar.weixin.common.util.DataUtils; |
| | | import org.apache.commons.collections.CollectionUtils; |
| | | import org.apache.commons.lang3.RandomStringUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.poi.ss.usermodel.CellType; |
| | | import org.apache.shiro.SecurityUtils; |
| | | import org.checkerframework.checker.units.qual.C; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.context.annotation.Lazy; |
| | | import org.springframework.data.redis.core.RedisTemplate; |
| | | import org.springframework.scheduling.annotation.Async; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | |
| | | * @author æ±è¹è¹ |
| | | * @date 2023/11/30 15:33 |
| | | */ |
| | | @Slf4j |
| | | @Service |
| | | public class MemberServiceImpl implements MemberService { |
| | | |
| | |
| | | |
| | | @Autowired |
| | | private DingTalk dingTalk; |
| | | |
| | | |
| | | @Value("${debug_model}") |
| | | private Boolean isDebug; |
| | | @Override |
| | |
| | | Member insert = initAddMemberModel(member,loginUserInfo); |
| | | //æµ·åº·äººåæ°å¢ä¸å¡ |
| | | try { |
| | | if(dealHkUserBiz(insert)){ |
| | | memberMapper.insert(insert); |
| | | //å建系ç»ç»éè´¦å·ï¼é»è®¤æ ä»»ä½è§è²ï¼ |
| | | // if(dealHkUserBiz(insert)){ |
| | | memberMapper.insert(insert); |
| | | //å建系ç»ç»éè´¦å·ï¼é»è®¤æ ä»»ä½è§è²ï¼ |
| | | // if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){ |
| | | //妿æ¯å
é¨ç»ç»äººåï¼æ°å¢ç³»ç»ç»éè´¦å· |
| | | systemUserMapper.insert(createSystemUser(insert,systemDictDataBiz)); |
| | | //å¤çå¹è®æææä¸å¡ |
| | | dealTrainTIme(member,0,loginUserInfo); |
| | | //妿æ¯å
é¨ç»ç»äººåï¼æ°å¢ç³»ç»ç»éè´¦å· |
| | | systemUserMapper.insert(createSystemUser(insert,systemDictDataBiz)); |
| | | //å¤çå¹è®æææä¸å¡ |
| | | dealTrainTIme(member,0,loginUserInfo); |
| | | // } |
| | | }else{ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对ä¸èµ·ï¼å工信æ¯åæ¥å®é²å¹³å°å¤±è´¥ï¼è¯·ç¨åéè¯ï¼"); |
| | | } |
| | | // }else{ |
| | | // throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对ä¸èµ·ï¼å工信æ¯åæ¥å®é²å¹³å°å¤±è´¥ï¼è¯·ç¨åéè¯ï¼"); |
| | | // } |
| | | }catch (BusinessException e){ |
| | | //妿åçå¼å¸¸ï¼å é¤å·²ç»å建ç人åä¿¡æ¯ |
| | | deleteHkUserBiz(new String[]{insert.getHkId()}); |
| | |
| | | } |
| | | return insert; |
| | | } |
| | | |
| | | public static SystemUser createSystemUser(Member insert,SystemDictDataBiz systemDictDataBiz) { |
| | | SystemUser user = new SystemUser(); |
| | | // çæå¯ç ç |
| | |
| | | insert.setHkDate(new Date()); |
| | | insert.setDdId(member.getDdId()); |
| | | insert.setErpId(member.getErpId()); |
| | | insert.setWorkStatus(Constants.ZERO);//é»è®¤å¨è |
| | | insert.setCanVisit(Constants.ZERO);//é»è®¤ä¸å¯è®¿é® |
| | | insert.setWorkStatus(Constants.formatIntegerNum(member.getWorkStatus()));//é»è®¤å¨è |
| | | insert.setCanVisit(Constants.formatIntegerNum(member.getCanVisit()));//é»è®¤ä¸å¯è®¿é® |
| | | insert.setAuthStatus(Constants.ZERO); |
| | | insert.setName(member.getName()); |
| | | insert.setHkId(UUID.randomUUID().toString().replace("-","")); |
| | | insert.setHkStatus(Constants.ONE); |
| | | insert.setHkStatus(Constants.ZERO); |
| | | insert.setSex(Constants.getSexByCardNo( member.getIdcardNo()));//æ ¹æ®èº«ä»½è¯å·è·åæ§å« |
| | | insert.setJobDate(member.getJobDate()); |
| | | insert.setIsDangyuan(member.getIsDangyuan()); |
| | |
| | | |
| | | private void isMemberParamValid(Member member) { |
| | | if(member.getCompanyId() == null){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"æå±ç»ç»ä¸åå¨ï¼"); |
| | | } |
| | | if (StringUtils.isBlank(member.getPhone())||!PhoneUtil.isPhone(member.getPhone())){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"çµè¯å·ç æ ¼å¼æè¯¯"); |
| | |
| | | .eq(Member::getIsdeleted,Constants.ZERO) ) >0){ |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "ææºå·ã"+member.getPhone()+"ã已被使ç¨ï¼ä¸è½éå¤"); |
| | | } |
| | | Company company = companyMapper.selectById(member.getCompanyId()); |
| | | Company company = member.getCompany()!=null ?member.getCompany(): companyMapper.selectById(member.getCompanyId()); |
| | | if(company == null || Constants.equalsInteger(company.getIsdeleted(),Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼è¯¥ç»ç»ä¿¡æ¯å·²è¢«å é¤ï¼è¯·å·æ°é¡µé¢éè¯ï¼"); |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼è¯¥ç»ç»ä¿¡æ¯å·²è¢«å é¤ï¼"); |
| | | } |
| | | if(StringUtils.isBlank(company.getHkId())){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼è¯¥ç»ç»ä¿¡æ¯æªåæ¥å®é²å¹³å°ï¼è¯·å
åå¾ãç»ç»ç®¡çãèåè¿è¡ç»´æ¤ï¼"); |
| | | } |
| | | // if(StringUtils.isBlank(company.getHkId())){ |
| | | // throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼è¯¥ç»ç»ä¿¡æ¯æªåæ¥å®é²å¹³å°ï¼è¯·å
åå¾ãç»ç»ç®¡çãèåè¿è¡ç»´æ¤ï¼"); |
| | | // } |
| | | member.setHkOrgId(company.getHkId()); |
| | | member.setCompanyType(company.getType()); |
| | | if(Constants.equalsInteger(company.getType(),Constants.ONE)){ |
| | |
| | | isNeedUpdateUser = true; |
| | | } |
| | | if(StringUtils.isNotBlank(member.getCode()) && StringUtils.equals(member.getPhone(),model.getCode())){ |
| | | // éªè¯å·¥å· |
| | | // éªè¯å·¥å· |
| | | SystemUser queryUserDto = new SystemUser(); |
| | | queryUserDto = new SystemUser(); |
| | | queryUserDto.setDeleted(Boolean.FALSE); |
| | |
| | | } |
| | | if(member.getCompanyId()!=null && !Constants.equalsInteger(member.getCompanyId(),model.getCompanyId())){ |
| | | //妿ç»ç»åçåå |
| | | Company company = companyMapper.selectById(member.getCompanyId()); |
| | | Company company = member.getCompany()!=null ?member.getCompany(): companyMapper.selectById(member.getCompanyId()); |
| | | if(company == null || Constants.equalsInteger(company.getIsdeleted(),Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼è¯¥ç»ç»ä¿¡æ¯å·²è¢«å é¤ï¼è¯·å·æ°é¡µé¢éè¯ï¼"); |
| | | } |
| | |
| | | if(isNeedUpdateUser){ |
| | | //æ´æ°ç³»ç»ç¨æ·è´¦å·ä¿¡æ¯ |
| | | systemUserMapper.update(null,new UpdateWrapper<SystemUser>().lambda() |
| | | .set(SystemUser::getUpdateUser,member.getLoginUserInfo().getId()) |
| | | .set(SystemUser::getUpdateTime,new Date()) |
| | | .set(StringUtils.isNotBlank(member.getFaceImg()),SystemUser::getAvatar,member.getFaceImg()) |
| | | .set(StringUtils.isNotBlank(member.getName()),SystemUser::getPinyin,Constants.getChinesePingyin(member.getName())) |
| | | .set(StringUtils.isNotBlank(member.getPhone()),SystemUser::getMobile,member.getPhone()) |
| | | .set(StringUtils.isNotBlank(member.getPhone()),SystemUser::getUsername,member.getPhone()) |
| | | .set(StringUtils.isNotBlank(member.getName()),SystemUser::getRealname,member.getName()) |
| | | .set(member.getCompanyId() !=null,SystemUser::getCompanyId,member.getCompanyId()) |
| | | .set(StringUtils.isNotBlank(member.getCode()),SystemUser::getEmpNo,member.getCode()) |
| | | .set(SystemUser::getUpdateUser,member.getLoginUserInfo()!=null?member.getLoginUserInfo().getId():null) |
| | | .set(SystemUser::getUpdateTime,new Date()) |
| | | .set(StringUtils.isNotBlank(member.getFaceImg()),SystemUser::getAvatar,member.getFaceImg()) |
| | | .set(StringUtils.isNotBlank(member.getName()),SystemUser::getPinyin,Constants.getChinesePingyin(member.getName())) |
| | | .set(StringUtils.isNotBlank(member.getPhone()),SystemUser::getMobile,member.getPhone()) |
| | | .set(StringUtils.isNotBlank(member.getPhone()),SystemUser::getUsername,member.getPhone()) |
| | | .set(StringUtils.isNotBlank(member.getName()),SystemUser::getRealname,member.getName()) |
| | | .set(member.getCompanyId() !=null,SystemUser::getCompanyId,member.getCompanyId()) |
| | | .set(StringUtils.isNotBlank(member.getCode()),SystemUser::getEmpNo,member.getCode()) |
| | | .eq(SystemUser::getMemberId,model.getId())); |
| | | } |
| | | if(Constants.equalsInteger(model.getCompanyType(),Constants.ZERO) |
| | |
| | | && member.getTrainStartTime()!=null){ |
| | | TrainTime trainTime = new TrainTime(); |
| | | trainTime.setIsdeleted(Constants.ZERO); |
| | | trainTime.setCreator(member.getLoginUserInfo().getId()); |
| | | trainTime.setCreator(member.getLoginUserInfo()!=null?member.getLoginUserInfo().getId():null); |
| | | trainTime.setCreateDate(new Date()); |
| | | trainTime.setEdirot(trainTime.getCreator()); |
| | | trainTime.setEditDate(trainTime.getCreateDate()); |
| | |
| | | Member member=new Member(); |
| | | member.setId(id); |
| | | member.setIsdeleted(Constants.ONE); |
| | | member.setEditor(loginUserInfo.getId()); |
| | | member.setEditor(loginUserInfo!=null?loginUserInfo.getId():null); |
| | | member.setEditDate(date); |
| | | member.setHkStatus(Constants.ZERO); |
| | | member.setRemark("人åå·²å é¤ï¼çå¾
å é¤é¨ç¦æé"); |
| | |
| | | ); |
| | | if (carsList!=null && carsList.size()>0){ |
| | | for(Cars car :carsList){ |
| | | if(Constants.equalsInteger(car.getAuthStatus(),Constants.ONE)){ |
| | | carsMapper.update(null,new UpdateWrapper<Cars>().lambda() |
| | | .eq(Cars::getId,car.getId()) |
| | | .set(Cars::getStartTime,null) |
| | | if(Constants.equalsInteger(car.getAuthStatus(),Constants.ONE)){ |
| | | carsMapper.update(null,new UpdateWrapper<Cars>().lambda() |
| | | .eq(Cars::getId,car.getId()) |
| | | .set(Cars::getStartTime,null) |
| | | // .set(Cars::getMemberId,null) |
| | | .set(Cars::getEndTime,null) |
| | | .set(Cars::getAuthTimeType,null) |
| | | .set(Cars::getAuthStatus,Constants.ZERO) |
| | | .set(Cars::getEditDate,member.getEditDate()) |
| | | .set(Cars::getEdirot,member.getEditor()) |
| | | ); |
| | | //å é¤å·²ææä¸åçå
æææ |
| | | CarsServiceImpl.dealCancelBookBiz(car.getCode(),date,parkBookMapper); |
| | | } |
| | | .set(Cars::getEndTime,null) |
| | | .set(Cars::getAuthTimeType,null) |
| | | .set(Cars::getAuthStatus,Constants.ZERO) |
| | | .set(Cars::getEditDate,member.getEditDate()) |
| | | .set(Cars::getEdirot,member.getEditor()) |
| | | ); |
| | | //å é¤å·²ææä¸åçå
æææ |
| | | CarsServiceImpl.dealCancelBookBiz(car.getCode(),date,parkBookMapper); |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | if(Constants.equalsInteger(memberRole.getTimeType(),Constants.ZERO) ){ |
| | | memberRole.setStartTime(null); |
| | | memberRole.setEndTime(null); |
| | | memberRole.setStartTime(null); |
| | | memberRole.setEndTime(null); |
| | | } |
| | | for (Integer id : memberRole.getIds()){ |
| | | Member member = memberMapper.selectById(id); |
| | | if(member==null || member.getIsdeleted().equals(Constants.ONE)){ |
| | | //妿å工信æ¯ä¸åæ³ç´æ¥è·³è¿ |
| | | continue; |
| | | continue; |
| | | } |
| | | if(StringUtils.isBlank(member.getFaceId()) || !Constants.equalsInteger(member.getFaceStatus(),Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼ç¨æ·ã"+member.getName()+"ãç人è¸ä¿¡æ¯ä¸æ»¡è¶³æææ¡ä»¶ï¼è¯·è¿åå®åååè¿è¡è¯¥æä½ï¼"); |
| | |
| | | saveUserActionBiz(member,memberRole.getLoginUserInfo(), Constants.UserActionType.AUTH_ROLE,userActionJoinMapper,null); |
| | | //éæ°ææ |
| | | HkSyncOrgUserToHKServiceImpl.dealMemberRoleEmpowerDo(null,member,deviceRoleMapper,empowerMapper,deviceMapper); |
| | | } |
| | | } |
| | | } |
| | | |
| | | public static Integer getRoleIdByParam(Integer[] param, Member member,MemberRoleMapper memberRoleMapper,DeviceRoleMapper deviceRoleMapper) { |
| | |
| | | //æ£æ¥ç¨æ·æ
嵿é忬就æ¯ç©ºçï¼ åæ éå¤ç |
| | | return 0; |
| | | } |
| | | if((param == null || param.length==0 ) &&( roleList!=null && roleList.size()>0) ){ |
| | | if((param == null || param.length==0 ) &&( roleList!=null && roleList.size()>0) ){ |
| | | //妿æ¸
ç©ºåæ¥ææéï¼æ¥å£è¿è¡æéå é¤åææéå³å¯ |
| | | memberRoleMapper.delete(new QueryWrapper<MemberRole>().lambda().eq(MemberRole::getMemberId,member.getId())); |
| | | return 1; |
| | |
| | | @Override |
| | | public void empowerByList(Member member) { |
| | | if(member.getIdList()!=null && member.getIdList().size() >0){ |
| | | List<Member> members = memberMapper.selectList(new QueryWrapper<Member>().lambda() |
| | | .in(Member::getId,member.getIdList()) |
| | | .eq(Member::getIsdeleted,Constants.ZERO)); |
| | | if(members!=null){ |
| | | for(Member m : members){ |
| | | HkSyncOrgUserToHKServiceImpl.dealMemberRoleEmpowerDo(null,m,deviceRoleMapper,empowerMapper,deviceMapper); |
| | | } |
| | | } |
| | | List<Member> members = memberMapper.selectList(new QueryWrapper<Member>().lambda() |
| | | .in(Member::getId,member.getIdList()) |
| | | .eq(Member::getIsdeleted,Constants.ZERO)); |
| | | if(members!=null){ |
| | | for(Member m : members){ |
| | | HkSyncOrgUserToHKServiceImpl.dealMemberRoleEmpowerDo(null,m,deviceRoleMapper,empowerMapper,deviceMapper); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | } |
| | | //æ ¡éªåæ° å¹¶ä¸æ´æ°systemuser ææºå·åå·¥å·ä¿¡æ¯ï¼å¦æéè¦ä¿®æ¹çè¯ï¼ |
| | | Member model = isMemberUpdateParamValid(updateMember); |
| | | updateMember.setEditor(loginUserInfo.getId()); |
| | | updateMember.setEditor(loginUserInfo!=null?loginUserInfo.getId():null); |
| | | updateMember.setEditDate(new Date()); |
| | | //æµ·åº·äººåæ°å¢ä¸å¡ |
| | | if(dealHkUserForUpdateBiz(updateMember)){ |
| | | updateMember.setHkId(null); |
| | | updateMember.setAuthStatus(Constants.ZERO); |
| | | memberMapper.update(null,new UpdateWrapper<Member>().lambda() |
| | | .set(Member::getStartTime,null) |
| | | .set(Member::getEndTime,null) |
| | | .set(Member::getRoleId,null) |
| | | .set(StringUtils.isNotBlank(updateMember.getPhone()),Member::getPhone,updateMember.getPhone()) |
| | | .set(StringUtils.isNotBlank(updateMember.getName()),Member::getName,updateMember.getName()) |
| | | .set(Member::getEditDate,updateMember.getEditDate()) |
| | | .set(Member::getEditor,updateMember.getEditor()) |
| | | .set(StringUtils.isNotBlank(updateMember.getName()),Member::getPinyin,Constants.getChinesePingyin(updateMember.getName())) |
| | | .set(StringUtils.isNotBlank(updateMember.getIdcardNo()),Member::getIdcardNo,updateMember.getIdcardNo()) |
| | | .set(StringUtils.isNotBlank(updateMember.getIdcardDecode()),Member::getIdcardDecode,updateMember.getIdcardDecode()) |
| | | .set( Member::getAuthStatus,Constants.ZERO) |
| | | .set(updateMember.getHkStatus()!=null,Member::getHkStatus,updateMember.getHkStatus()) |
| | | .set(updateMember.getSex()!=null,Member::getSex,updateMember.getSex()) |
| | | .set(updateMember.getFaceStatus()!=null,Member::getFaceStatus,updateMember.getFaceStatus()) |
| | | .set(updateMember.getHkDate()!=null,Member::getHkDate,updateMember.getHkDate()) |
| | | .set(StringUtils.isNotBlank(updateMember.getRemark()),Member::getRemark,updateMember.getRemark()) |
| | | .set(StringUtils.isNotBlank(updateMember.getFaceImg()),Member::getFaceImg,updateMember.getFaceImg()) |
| | | .set(updateMember.getFaceId()!=null,Member::getFaceId,updateMember.getFaceId()) |
| | | .set(updateMember.getCompanyId()!=null,Member::getCompanyId,updateMember.getCompanyId()) |
| | | .set(Member::getCode,updateMember.getCode()) |
| | | // if(dealHkUserForUpdateBiz(updateMember)){ |
| | | updateMember.setHkId(null); |
| | | updateMember.setAuthStatus(Constants.ZERO); |
| | | memberMapper.update(null,new UpdateWrapper<Member>().lambda() |
| | | .set(Member::getStartTime,null) |
| | | .set(Member::getEndTime,null) |
| | | .set(Member::getRoleId,null) |
| | | .set(StringUtils.isNotBlank(updateMember.getPhone()),Member::getPhone,updateMember.getPhone()) |
| | | .set(StringUtils.isNotBlank(updateMember.getName()),Member::getName,updateMember.getName()) |
| | | .set(Member::getEditDate,updateMember.getEditDate()) |
| | | .set(Member::getEditor,updateMember.getEditor()) |
| | | .set(StringUtils.isNotBlank(updateMember.getName()),Member::getPinyin,Constants.getChinesePingyin(updateMember.getName())) |
| | | .set(StringUtils.isNotBlank(updateMember.getIdcardNo()),Member::getIdcardNo,updateMember.getIdcardNo()) |
| | | .set(StringUtils.isNotBlank(updateMember.getIdcardDecode()),Member::getIdcardDecode,updateMember.getIdcardDecode()) |
| | | .set( Member::getAuthStatus,Constants.ZERO) |
| | | .set(updateMember.getHkStatus()!=null,Member::getHkStatus,updateMember.getHkStatus()) |
| | | .set(updateMember.getSex()!=null,Member::getSex,updateMember.getSex()) |
| | | .set(updateMember.getCanVisit()!=null,Member::getCanVisit,updateMember.getCanVisit()) |
| | | .set(updateMember.getFaceStatus()!=null,Member::getFaceStatus,updateMember.getFaceStatus()) |
| | | .set(updateMember.getHkDate()!=null,Member::getHkDate,updateMember.getHkDate()) |
| | | .set(updateMember.getHkDate()!=null,Member::getHkDate,updateMember.getHkDate()) |
| | | .set(StringUtils.isNotBlank(updateMember.getRemark()),Member::getRemark,updateMember.getRemark()) |
| | | .set(StringUtils.isNotBlank(updateMember.getFaceImg()),Member::getFaceImg,updateMember.getFaceImg()) |
| | | .set(updateMember.getFaceId()!=null,Member::getFaceId,updateMember.getFaceId()) |
| | | .set(updateMember.getCompanyId()!=null,Member::getCompanyId,updateMember.getCompanyId()) |
| | | .set(Member::getCode,updateMember.getCode()) |
| | | // .set(StringUtils.isNotBlank(updateMember.getCode()),Member::getCode,updateMember.getCode()) |
| | | .set( updateMember.getPositionId()!=null,Member::getPositionId,updateMember.getPositionId()) |
| | | .set( updateMember.getIsDangyuan()!=null,Member::getIsDangyuan,updateMember.getIsDangyuan()) |
| | | .set( updateMember.getJobDate()!=null,Member::getJobDate,updateMember.getJobDate()) |
| | | .eq(Member::getId,updateMember.getId())); |
| | | dealTrainTIme(updateMember,1,loginUserInfo); |
| | | cancelAllMemberEmpower(updateMember,memberRoleMapper,empowerMapper); |
| | | //è®°å½æä½æ¥å¿ |
| | | saveUserActionBiz(updateMember,loginUserInfo,Constants.UserActionType.EDIT,userActionJoinMapper,null); |
| | | }else{ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对ä¸èµ·ï¼å工信æ¯åæ¥å®é²å¹³å°å¤±è´¥ï¼è¯·ç¨åéè¯ï¼"); |
| | | } |
| | | .set( updateMember.getPositionId()!=null,Member::getPositionId,updateMember.getPositionId()) |
| | | .set( updateMember.getIsDangyuan()!=null,Member::getIsDangyuan,updateMember.getIsDangyuan()) |
| | | .set( updateMember.getJobDate()!=null,Member::getJobDate,updateMember.getJobDate()) |
| | | .eq(Member::getId,updateMember.getId())); |
| | | dealTrainTIme(updateMember,1,loginUserInfo); |
| | | cancelAllMemberEmpower(updateMember,memberRoleMapper,empowerMapper); |
| | | //è®°å½æä½æ¥å¿ |
| | | saveUserActionBiz(updateMember,loginUserInfo,Constants.UserActionType.EDIT,userActionJoinMapper,null); |
| | | // }else{ |
| | | // throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"对ä¸èµ·ï¼å工信æ¯åæ¥å®é²å¹³å°å¤±è´¥ï¼è¯·ç¨åéè¯ï¼"); |
| | | // } |
| | | } |
| | | |
| | | private void dealTrainTIme(Member updateMember, int i,LoginUserInfo loginUserInfo) { |
| | |
| | | |
| | | public static void saveUserActionBiz(Member updateMember,LoginUserInfo user, Constants.UserActionType type,UserActionJoinMapper userActionMapper,String content) { |
| | | updateMember.setEditDate(updateMember.getEditDate()==null?new Date():updateMember.getEditDate()); |
| | | UserAction userAction=new UserAction(); |
| | | UserAction userAction=new UserAction(); |
| | | userAction.setIsdeleted(Constants.ZERO); |
| | | userAction.setCreateDate(updateMember.getEditDate()); |
| | | userAction.setCreator(updateMember.getEditor()); |
| | |
| | | QueryWrapper<Member> wrapper = new QueryWrapper<>(member); |
| | | wrapper.lambda().ne(Member::getRemark,"人è¸å·²åæ¥ææ°"); |
| | | List<Member> list =memberMapper.selectList(wrapper); |
| | | if(list!=null){ |
| | | String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_LOCAL_RESOURCE_PATH).getCode() |
| | | +systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode(); |
| | | for(Member m : list){ |
| | | String faceId= HkSyncOrgUserToHKServiceImpl.dealMemberFace(m,path); |
| | | if(StringUtils.isNotBlank(faceId)){ |
| | | Member update = new Member(); |
| | | update.setId(m.getId()); |
| | | update.setFaceId(faceId); |
| | | update.setRemark("人è¸å·²åæ¥ææ°"); |
| | | update.setFaceStatus(Constants.ONE); |
| | | memberMapper.updateById(update); |
| | | return true; |
| | | } |
| | | } |
| | | } |
| | | return false; |
| | | if(list!=null){ |
| | | String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_LOCAL_RESOURCE_PATH).getCode() |
| | | +systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode(); |
| | | for(Member m : list){ |
| | | String faceId= HkSyncOrgUserToHKServiceImpl.dealMemberFace(m,path); |
| | | if(StringUtils.isNotBlank(faceId)){ |
| | | Member update = new Member(); |
| | | update.setId(m.getId()); |
| | | update.setFaceId(faceId); |
| | | update.setRemark("人è¸å·²åæ¥ææ°"); |
| | | update.setFaceStatus(Constants.ONE); |
| | | memberMapper.updateById(update); |
| | | return true; |
| | | } |
| | | } |
| | | } |
| | | return false; |
| | | } |
| | | @Override |
| | | public void delHkForce(Member member) { |
| | | Member model =memberMapper.selectById(member.getId()); |
| | | if(model ==null) { |
| | | Member model =memberMapper.selectById(member.getId()); |
| | | if(model ==null) { |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对ä¸èµ·ï¼äººåä¿¡æ¯ä¸åå¨ï¼"); |
| | | } |
| | | } |
| | | if(!Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼åªæé对离è人åå¯è¿è¡è¯¥æä½ï¼"); |
| | | } |
| | | } |
| | | if(Constants.equalsInteger(model.getHkStatus(),Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·ï¼è¯¥äººå已被å é¤ï¼"); |
| | | } |
| | | } |
| | | if(StringUtils.isBlank(model.getHkId())){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对ä¸èµ·ï¼è¯¥äººåéå®é²å¹³å°å建人åï¼ä¸è½è¿è¡è¯¥æä½ï¼"); |
| | | } |
| | | } |
| | | HkSyncEmpowerServiceImpl.doHkDeleteUser(model.getId(),model.getHkId(),new Date(),memberMapper,memberCardMapper); |
| | | } |
| | | @Override |
| | |
| | | if(model ==null) { |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对ä¸èµ·ï¼äººåä¿¡æ¯ä¸åå¨ï¼"); |
| | | } |
| | | if(model.getCompanyId()!=null) { |
| | | if(Constants.equalsInteger(member.getHeadStatus(),Constants.ONE)){ |
| | | //妿æ¯åæ¶ä¸»ç®¡ |
| | | companyMapper.update(null,new UpdateWrapper<Company>().lambda() |
| | | .eq(Company::getId,model.getCompanyId()) |
| | | .set(Company::getHeadId,member.getId())); |
| | | //è®°å½æä½æ¥å¿ |
| | | saveUserActionBiz(member,member.getLoginUserInfo(), Constants.UserActionType.BE_HEAD,userActionJoinMapper,null); |
| | | }else{ |
| | | //妿æ¯è®¾ä¸ºä¸»ç®¡ |
| | | companyMapper.update(null,new UpdateWrapper<Company>().lambda() |
| | | .eq(Company::getId,model.getCompanyId()) |
| | | .set(Company::getHeadId,null) |
| | | ); |
| | | saveUserActionBiz(member,member.getLoginUserInfo(),Constants.UserActionType.NOT_HEAD,userActionJoinMapper,null); |
| | | } |
| | | } |
| | | if(model.getCompanyId()!=null) { |
| | | if(Constants.equalsInteger(member.getHeadStatus(),Constants.ONE)){ |
| | | //妿æ¯åæ¶ä¸»ç®¡ |
| | | companyMapper.update(null,new UpdateWrapper<Company>().lambda() |
| | | .eq(Company::getId,model.getCompanyId()) |
| | | .set(Company::getHeadId,member.getId())); |
| | | //è®°å½æä½æ¥å¿ |
| | | saveUserActionBiz(member,member.getLoginUserInfo(), Constants.UserActionType.BE_HEAD,userActionJoinMapper,null); |
| | | }else{ |
| | | //妿æ¯è®¾ä¸ºä¸»ç®¡ |
| | | companyMapper.update(null,new UpdateWrapper<Company>().lambda() |
| | | .eq(Company::getId,model.getCompanyId()) |
| | | .set(Company::getHeadId,null) |
| | | ); |
| | | saveUserActionBiz(member,member.getLoginUserInfo(),Constants.UserActionType.NOT_HEAD,userActionJoinMapper,null); |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Override |
| | |
| | | List<Member> list = memberJoinMapper.selectList(queryWrapper); |
| | | if(list!=null){ |
| | | for(Member m : list){ |
| | | if(m.getName()!=null){ |
| | | Member u = new Member(); |
| | | u.setId(m.getId()); |
| | | u.setPinyin(Constants.getChinesePingyin(m.getName())); |
| | | memberMapper.updateById(u); |
| | | } |
| | | if(m.getName()!=null){ |
| | | Member u = new Member(); |
| | | u.setId(m.getId()); |
| | | u.setPinyin(Constants.getChinesePingyin(m.getName())); |
| | | memberMapper.updateById(u); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | if (pageWrap.getModel().getKeyword() != null) { |
| | | queryWrapper.lambda().and( ms->ms.like(Member::getName,pageWrap.getModel().getKeyword()) |
| | | .or().like(Member::getPhone,pageWrap.getModel().getKeyword()) |
| | | .or().like(Member::getPhone,pageWrap.getModel().getKeyword()) |
| | | .or().like(Member::getCode,pageWrap.getModel().getKeyword())); |
| | | } |
| | | if(pageWrap.getModel().getType() != null){ |
| | |
| | | systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode(); |
| | | //é¨ç¦ç»ä¿¡æ¯ |
| | | List<DeviceRole> deviceRoleList = deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda() |
| | | .select(DeviceRole::getId,DeviceRole::getName) |
| | | .select(DeviceRole::getId,DeviceRole::getName) |
| | | .eq(DeviceRole::getIsdeleted,Constants.ZERO)); |
| | | for (Member memberInfoDTO:memberIPage.getRecords()) { |
| | | //è·å¾é¨ç¦ç»åç§°æ°ç» |
| | |
| | | queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); |
| | | queryWrapper.selectAll(Member.class) |
| | | .selectAs(Company::getName,Member::getCompanyName) |
| | | .selectAs(Position::getName,Member::getPositionName) |
| | | .leftJoin(Position.class,Position::getId,Member::getPositionId) |
| | | .selectAs(Position::getName,Member::getPositionName) |
| | | .leftJoin(Position.class,Position::getId,Member::getPositionId) |
| | | .selectAs(Member::getLastVisitDate,Member::getLastVisitDate) |
| | | .select(" (select count(v.id) from visits v where v.MEMBER_ID=t.id and v.ISDELETED=0 and v.status in (7,8) ) as visitTimes"); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getName()),Member::getName,pageWrap.getModel().getName()) |
| | |
| | | .selectAs(Company::getCompanyNamePath,Member::getCompanyName) |
| | | .select(" (select ua.remark from user_action ua where ua.MEMBER_ID=t.id and ua.ISDELETED=0 and ua.type="+actiontype+" order by ua.CREATE_DATE desc limit 1) as optRemark") |
| | | .eq(Member::getIsdeleted,Constants.ZERO); |
| | | queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getCreaterId()),Member::getEditor,pageWrap.getModel().getCreaterId()); |
| | | queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Member::getType,pageWrap.getModel().getType()); |
| | | queryWrapper |
| | | queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getCreaterId()),Member::getEditor,pageWrap.getModel().getCreaterId()); |
| | | queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Member::getType,pageWrap.getModel().getType()); |
| | | queryWrapper |
| | | .and(StringUtils.isNotBlank(pageWrap.getModel().getName()),ms->ms.like(Member::getPhone,pageWrap.getModel().getName()) |
| | | .or().like(Member::getName,pageWrap.getModel().getName())) |
| | | .and(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()), |
| | | ms->ms.like(Company::getName,pageWrap.getModel().getCompanyName()) |
| | | .or().like(Member::getVisitCompanyName,pageWrap.getModel().getCompanyName())) |
| | | .or().like(Member::getVisitCompanyName,pageWrap.getModel().getCompanyName())) |
| | | .like(StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()),Member::getIdcardNo,pageWrap.getModel().getIdcardNo()) |
| | | .eq(Member::getStatus,Constants.Status.FREEZE.getValue()) |
| | | .eq((pageWrap.getModel().getCompanyId())!=null,Company::getId,pageWrap.getModel().getCompanyId()) |
| | |
| | | .apply("to_days(LAST_VISIT_DATE)+ "+days+" < to_days(now())" ) |
| | | .orderByAsc(Member::getPinyin)); |
| | | if(CollectionUtils.isEmpty(memberList)){ |
| | | return; |
| | | return; |
| | | } |
| | | List<Integer> memberIds = memberList.stream().map(m->m.getId()).collect(Collectors.toList()); |
| | | //å»ç»ç¶æ |
| | |
| | | public List<MemberVO> getVisitedMember(CheckVisitedDTO checkVisitedDTO){ |
| | | List<Member> memberList = memberJoinMapper.selectJoinList(Member.class,new MPJLambdaWrapper<Member>() |
| | | .selectAll(Member.class) |
| | | .selectAs(Company::getName,Member::getCompanyName) |
| | | .selectAs(Company::getName,Member::getCompanyName) |
| | | .leftJoin(Company.class,Company::getId,Member::getCompanyId) |
| | | .selectAs(Position::getName,Member::getPositionName) |
| | | .leftJoin(Position.class,Position::getId,Member::getPositionId) |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @Override |
| | | public StagingDataVO stagingHead(StagingDataVO stagingHeadVO){ |
| | | //人åä¿¡æ¯ |
| | |
| | | .groupBy(Company::getId,Company::getName) |
| | | ); |
| | | List<Map<String,Object>> retentionMaps = retentionJoinMapper.selectMaps(new MPJLambdaWrapper<Retention>() |
| | | .select(" count(1) as memberCount, type as memberType ") |
| | | .ne(Retention::getType,3) |
| | | .select(" count(1) as memberCount, type as memberType ") |
| | | .ne(Retention::getType,3) |
| | | .groupBy(Retention::getType) |
| | | ); |
| | | stagingHeadVO.setCompanyUsers(companyMaps); |
| | |
| | | model.setPhone(ScientificNotationTUtil.convertToString(model.getPhone())); |
| | | model.setIdcardNo(ScientificNotationTUtil.convertToString(model.getIdcardNo())); |
| | | if(StringUtils.isBlank(model.getName()) |
| | | &&StringUtils.isBlank(model.getIdcardNo()) |
| | | &&StringUtils.isBlank(model.getIdcardNo()) |
| | | &&StringUtils.isBlank(model.getPhone()) |
| | | &&StringUtils.isBlank(model.getCompanyName())){ |
| | | continue; |
| | | continue; |
| | | } |
| | | Member member = checkModelParam(model,newList,i,loginUserInfo,list,companyList,companyType,positionList); |
| | | newList.add(member); |
| | |
| | | for(Member insert: newList){ |
| | | //å建系ç»ç»éè´¦å·ï¼é»è®¤æ ä»»ä½è§è²ï¼ |
| | | // if(Constants.equalsInteger(insert.getCompanyType(),Constants.ONE)){ |
| | | //妿æ¯å
é¨ç»ç»äººåï¼æ°å¢ç³»ç»ç»éè´¦å· |
| | | userList.add(createSystemUser(insert,systemDictDataBiz)); |
| | | //妿æ¯å
é¨ç»ç»äººåï¼æ°å¢ç³»ç»ç»éè´¦å· |
| | | userList.add(createSystemUser(insert,systemDictDataBiz)); |
| | | // } |
| | | } |
| | | if(userList.size()>0){ |
| | |
| | | @Transactional(rollbackFor = {Exception.class,BusinessException.class}) |
| | | public void registerDriver(RegisterDriverDTO registerDriverDTO){ |
| | | if(Objects.isNull(registerDriverDTO) |
| | | || StringUtils.isBlank(registerDriverDTO.getName()) |
| | | || StringUtils.isBlank(registerDriverDTO.getName()) |
| | | || StringUtils.isBlank(registerDriverDTO.getPassword()) |
| | | || StringUtils.isBlank(registerDriverDTO.getValidCode()) |
| | | || StringUtils.isBlank(registerDriverDTO.getPhone()) |
| | |
| | | }; |
| | | if(systemUserMapper.selectCount(new QueryWrapper<SystemUser>().lambda() |
| | | .eq(SystemUser::getDeleted,Constants.ZERO) |
| | | .and(i->i.eq(SystemUser::getMobile,registerDriverDTO.getPhone()).or().eq(SystemUser::getUsername,registerDriverDTO.getPhone())) |
| | | .and(i->i.eq(SystemUser::getMobile,registerDriverDTO.getPhone()).or().eq(SystemUser::getUsername,registerDriverDTO.getPhone())) |
| | | )>Constants.ZERO){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"ææºå·å·²æ³¨å!"); |
| | | }; |
| | |
| | | * 忥ééå
é¨åå·¥ä¿¡æ¯ |
| | | */ |
| | | @Override |
| | | public void syncDDUserInfo() throws ApiException { |
| | | List<OapiV2UserGetResponse.UserGetResponse> list = dingTalk.syncAllUserInfo(); |
| | | if(CollectionUtils.isEmpty(list)){ |
| | | return; |
| | | } |
| | | List<Member> addList = new ArrayList<>(); |
| | | List<Member> updateList = new ArrayList<>(); |
| | | List<String> delIds = new ArrayList<>();//ä¿®æ¹ä¸ºä½¿ç¨ééid erpId |
| | | List<Member> allList = memberMapper.selectList(new QueryWrapper<Member>().lambda() |
| | | .eq(Member::getIsdeleted,Constants.ZERO) |
| | | .eq(Member::getType,Constants.TWO)); |
| | | dealMemberChangeList(list,addList,updateList,delIds,allList); |
| | | public void syncDDUserInfo(){ |
| | | try { |
| | | List<OapiV2UserGetResponse.UserGetResponse> list = dingTalk.syncAllUserInfo(); |
| | | if(CollectionUtils.isEmpty(list)){ |
| | | return; |
| | | } |
| | | log.error("éé人åä¿¡æ¯åæ¥è¡æ°ï¼"+ list.size()); |
| | | log.error("éé人åä¿¡æ¯åæ¥å
容ï¼"+ JSONObject.toJSONString(list)); |
| | | List<Member> addList = new ArrayList<>(); |
| | | List<Member> updateList = new ArrayList<>(); |
| | | List<String> delIds = new ArrayList<>();//ä¿®æ¹ä¸ºä½¿ç¨ééid erpId |
| | | List<Member> allList = memberMapper.selectList(new QueryWrapper<Member>().lambda() |
| | | .eq(Member::getIsdeleted,Constants.ZERO) |
| | | .eq(Member::getType,Constants.TWO)); |
| | | dealMemberChangeList(list,addList,updateList,delIds,allList); |
| | | |
| | | if(delIds.size()>0){ |
| | | syncDelMember(delIds); |
| | | if(delIds.size()>0){ |
| | | syncDelMember(delIds); |
| | | } |
| | | }catch (Exception e){ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"忥éé人åä¿¡æ¯å¼å¸¸ï¼"); |
| | | } |
| | | |
| | | |
| | | } |
| | | @Override |
| | | @Async |
| | | public void sendMemberInfoResult(String username, String info, int status){ |
| | | try { |
| | | String url = systemDictDataBiz.queryByCode(Constants.JDY_CONFIG,Constants.JDY_MEMBER_PUSH_STATUS_URL).getCode(); |
| | | log.error("==========æ¨é人å{}ï¼åæ¥ç»æå¼å§=====status={},username={},info={},url={}",username,status,info,url); |
| | | JSONObject object = new JSONObject(); |
| | | object.put("status",status); |
| | | object.put("username",username); |
| | | object.put("info",info); |
| | | String result = HttpsUtil.postJson(url,JSONObject.toJSONString(object)); |
| | | log.error("==========æ¨é人å{}ï¼åæ¥ç»æç»æ=====",result); |
| | | }catch (Exception e){ |
| | | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * å¤çç®éäºç¨æ·ä¿¡æ¯ |
| | | * @param data |
| | | */ |
| | | @Override |
| | | public void dealJdyMemberInfo(MemberPushData data){ |
| | | if(StringUtils.isBlank(data.getUsername()) |
| | | ||StringUtils.isBlank(data.getPhone()) |
| | | ||StringUtils.isBlank(data.getName())){ |
| | | throw new BusinessException(ResponseStatus.JDY_BAD_REQUEST.getCode(),"人åä¿¡æ¯ä¸å®æ´ï¼"); |
| | | } |
| | | //å
é¨äººåä¿¡æ¯ |
| | | Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda() |
| | | .eq( Member::getErpId,data.getUsername() ) |
| | | .eq( Member::getIsdeleted,Constants.ZERO ) |
| | | .eq( Member::getType,Constants.TWO ) |
| | | .last("limit 1")); |
| | | if(member == null){ |
| | | //æ°å¢äººå |
| | | if(data.getDeleter()!=null){ |
| | | //妿æ¯å·²ç»å é¤äººåï¼ä¸å¤ç |
| | | return; |
| | | } |
| | | member = getAddOrUpdateModelFromJDY(data,true); |
| | | this.create(member); |
| | | }else{ |
| | | //æ´æ°äººå |
| | | if(data.getDeleter()!=null){ |
| | | //妿æ¯å·²ç»å é¤äººåï¼ä¸å¤ç |
| | | this.deleteById(member.getId(),null); |
| | | }else{ |
| | | //æ´æ°äººåä¿¡æ¯ |
| | | Member updateMember =getAddOrUpdateModelFromJDY(data,false); |
| | | updateMember.setId(member.getId()); |
| | | this.updateById(updateMember); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | private Member getAddOrUpdateModelFromJDY(MemberPushData data, boolean add) { |
| | | Member member = new Member(); |
| | | member.setName(data.getName()); |
| | | member.setType(Constants.TWO); |
| | | member.setIdcardType(Constants.ZERO); |
| | | member.setIdcardNo(data.getIdcardno()); |
| | | member.setPhone(data.getPhone()); |
| | | if(StringUtils.isNotBlank(data.getSex())){ |
| | | member.setSex(StringUtils.equals(data.getSex(),"ç·")?0:1); |
| | | } |
| | | if(StringUtils.isNotBlank(data.getStatus())){ |
| | | member.setWorkStatus(StringUtils.equals(data.getStatus(),"å¨è")?0:1); |
| | | } |
| | | if(StringUtils.isNotBlank(data.getCan_visit())){ |
| | | member.setCanVisit(StringUtils.equals(data.getCan_visit(),"å¯æè®¿")?1:0); |
| | | } |
| | | member.setErpId(data.getUsername()); |
| | | if(data.getDepartment()!=null){ |
| | | member.setErpOrgId(data.getDepartment().getDept_no()); |
| | | } |
| | | member.setHkStatus(Constants.ZERO);//å¾
æ´æ° |
| | | if(data.getImgurl()!=null &&data.getImgurl().size()>0){ |
| | | String imgurl = data.getImgurl().get(0).getUrl(); |
| | | if(StringUtils.isNotBlank(imgurl)){ |
| | | member.setImgurl(getMemberImgByJdyImg(imgurl)); |
| | | member.setFaceStatus(Constants.ZERO); |
| | | member.setFaceImg(member.getImgurl()); |
| | | } |
| | | } |
| | | member.setCreateDate(DateUtil.getISO8601DateByStr(data.getCreateTime())); |
| | | member.setEditDate(DateUtil.getISO8601DateByStr(data.getUpdateTime())); |
| | | member.setCode(data.getCode()); |
| | | member.setJobDate(DateUtil.getISO8601DateByStr(data.getJob_date())); |
| | | member.setIsdeleted(Constants.ZERO); |
| | | if(add ){ |
| | | SystemUser c= getSystemuserByErpId(data.getCreator());//æ¥è¯¢å建人 |
| | | if(c!=null){ |
| | | member.setCreator(c.getId()); |
| | | } |
| | | } |
| | | SystemUser up= getSystemuserByErpId(data.getUpdater()); //æ¥è¯¢æ´æ°äºº |
| | | if(up!=null){ |
| | | member.setEditor(up.getId()); |
| | | } |
| | | //æ¥è¯¢ç»ç»ä¿¡æ¯ |
| | | Company depart = companyMapper.selectOne(new QueryWrapper<Company>().lambda() |
| | | .eq( Company::getErpId,data.getDepartment().getDept_no() ) |
| | | .eq( Company::getIsdeleted,Constants.ZERO )); |
| | | if(depart!=null){ |
| | | member.setCompanyId(depart.getId()); |
| | | } |
| | | member.setCompany(depart); |
| | | return member; |
| | | } |
| | | |
| | | private String getMemberImgByJdyImg(String imgurl) { |
| | | try { |
| | | String folder = systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode(); |
| | | FtpUtil ftp = new FtpUtil(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_HOST).getCode(), |
| | | Integer.parseInt(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PORT).getCode()), |
| | | systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_USERNAME).getCode(), |
| | | systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_PWD).getCode()); |
| | | String date = DateUtil.getNowShortDate()+"/"; |
| | | String name = UUID.randomUUID().toString(); |
| | | if(ftp.uploadOnlineFile(imgurl,folder+date,name)){ |
| | | log.error("=======ä¸ä¼ ç®éäºå¾çæåï¼result:{}=url:{}",date+name,imgurl); |
| | | return date+name; |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("=======ä¸ä¼ ç®éäºå¾ç失败ï¼urlï¼{}",imgurl); |
| | | } |
| | | return null; |
| | | |
| | | } |
| | | |
| | | private SystemUser getSystemuserByErpId(UserPushData user) { |
| | | if(user!=null &&StringUtils.isNotBlank(user.getUsername())){ |
| | | return systemUserMapper.selectJoinOne(SystemUser.class,new MPJLambdaWrapper<SystemUser>(). |
| | | selectAll(SystemUser.class ) |
| | | .leftJoin(Member.class,Member::getId,SystemUser::getMemberId) |
| | | .eq(SystemUser::getDeleted,Boolean.FALSE) |
| | | .eq(Member::getErpId,user.getUsername()) |
| | | .last("limit 1")); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | @Override |
| | | public String syncJdyUserInfo() { |
| | | DeptApiClient deptApiClient = new DeptApiClient(HttpConstant.API_KEY, HttpConstant.HOST); |
| | | try { |
| | | Map<String, Object> result = deptApiClient.deptMemberList(1,true,deptApiClient.getDefaultVersion()); |
| | | if(result!=null && result.get("users")!=null ){ |
| | | TypeReference<List<UserEntityModel>> typeReference = new TypeReference<List<UserEntityModel>>(){}; |
| | | Object obj = result.get("users"); |
| | | List<UserEntityModel> list = com.alibaba.fastjson.JSONObject.parseObject(JSON.toJSONString(obj), typeReference.getType()); |
| | | if(list !=null && list.size()>0){ |
| | | List<Member> addList = new ArrayList<>(); |
| | | List<Member> updateList = new ArrayList<>(); |
| | | List<String> delIds = new ArrayList<>();//ä¿®æ¹ä¸ºä½¿ç¨ééid erpId |
| | | List<Member> allList = memberMapper.selectList(new QueryWrapper<Member>().lambda() |
| | | .eq(Member::getIsdeleted,Constants.ZERO) |
| | | .eq(Member::getType,Constants.TWO)); |
| | | dealMemberChangeListJdy(list,addList,updateList,delIds,allList); |
| | | if(delIds.size()>0){ |
| | | syncDelMember(delIds); |
| | | } |
| | | return "åæ¥æ°æ®ï¼æ°å¢ã"+addList.size()+"ãæ¡ï¼æ´æ°ã"+updateList.size()+"ãæ¡ï¼å é¤ã"+delIds.size()+"ãæ¡"; |
| | | }else{ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "忥ééæ°æ®ä¸ºç©ºï¼"); |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "åæ¥æ°æ®å¼å¸¸ï¼"); |
| | | } |
| | | |
| | | return null; |
| | | } |
| | | |
| | | private void syncDelMember(List<String> delIds) { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void dealMemberChangeListJdy(List<UserEntityModel> list, List<Member> addList, List<Member> updateList, List<String> delIds, List<Member> allList) { |
| | | Date date = new Date(); |
| | | for(UserEntityModel respone : list){ |
| | | //æ ¹æ®erpidæ¥è¯¢ä¼ä¸ä¿¡æ¯ï¼å¤ææ¯æ°å¢è¿æ¯æ´æ° |
| | | Member param = new Member(); |
| | | param.setErpId(respone.getUsername()); |
| | | param.setName(respone.getName()); |
| | | param.setDdId(respone.getIntegrate_id()); |
| | | param.setCompanyIdList(respone.getDepartments()); |
| | | Member member = findMemberByERPId(allList,respone.getUsername()); |
| | | if(member == null){ |
| | | //å¦ææ¯æ°å¢ //å°è£
æ°å¢ç»ç»å¯¹è±¡æ°æ® |
| | | addList.add(syncDDAddMemberModel(param,new Member())); |
| | | }else{ |
| | | updateList.add(syncDDEditMemberModel(param,member)); |
| | | } |
| | | } |
| | | if(allList!=null && allList.size()>0){ |
| | | for(Member m : allList){ |
| | | if(!isMemberDeletedJdy(m,list)){ |
| | | delIds.add(m.getErpId()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | private Member getAddMemberModel(OapiV2UserGetResponse.UserGetResponse deptGetResponse,Member member) { |
| | | return syncDDAddMemberModel(deptGetResponse,member); |
| | | Member param = new Member(); |
| | | param.setErpId(deptGetResponse.getUnionid()); |
| | | param.setPhone(deptGetResponse.getMobile()); |
| | | param.setName(deptGetResponse.getName()); |
| | | param.setCode(deptGetResponse.getJobNumber()); |
| | | param.setDdId(deptGetResponse.getUserid()); |
| | | param.setCompanyIdList(deptGetResponse.getDeptIdList()); |
| | | return syncDDAddMemberModel(param,member); |
| | | } |
| | | |
| | | |
| | | private Member getUpdateMemberModel(OapiV2UserGetResponse.UserGetResponse deptGetResponse,Member member) { |
| | | return syncDDEditMemberModel(deptGetResponse,member); |
| | | Member param = new Member(); |
| | | param.setErpId(deptGetResponse.getUnionid()); |
| | | param.setPhone(deptGetResponse.getMobile()); |
| | | param.setName(deptGetResponse.getName()); |
| | | param.setCode(deptGetResponse.getJobNumber()); |
| | | param.setDdId(deptGetResponse.getUserid()); |
| | | param.setCompanyIdList(deptGetResponse.getDeptIdList()); |
| | | return syncDDEditMemberModel(param,member); |
| | | } |
| | | |
| | | |
| | | private Member syncDDAddMemberModel(OapiV2UserGetResponse.UserGetResponse deptGetResponse,Member member) { |
| | | private Member syncDDAddMemberModel(Member deptGetResponse,Member member) { |
| | | member.setCreateDate(new Date()); |
| | | member.setErpId(deptGetResponse.getUnionid()); |
| | | member.setPhone(deptGetResponse.getMobile()); |
| | | member.setErpId(deptGetResponse.getErpId()); |
| | | member.setPhone(deptGetResponse.getPhone()); |
| | | member.setName(deptGetResponse.getName()); |
| | | member.setCode(deptGetResponse.getJobNumber()); |
| | | member.setDdId(deptGetResponse.getUserid()); |
| | | isMemberParamValidDetail(member,deptGetResponse.getDeptIdList()); |
| | | member.setCode(deptGetResponse.getCode()); |
| | | member.setDdId(deptGetResponse.getDdId()); |
| | | isMemberParamValidDetail(member,deptGetResponse.getCompanyIdList()); |
| | | //è·ååºçæ¥æ |
| | | //è±ææä½ |
| | | Member insert = initAddMemberModel(member,null); |
| | |
| | | } |
| | | if(Objects.nonNull(deptIdList)){ |
| | | List<Company> companyList = companyMapper.selectList(new QueryWrapper<Company>().lambda().in(Company::getErpId,deptIdList) |
| | | .eq(Company::getType,Constants.ONE).eq(Company::getIsdeleted,Constants.ZERO) |
| | | .eq(Company::getType,Constants.ONE).eq(Company::getIsdeleted,Constants.ZERO) |
| | | // .isNotNull(Company::getHkId) ææ¶æ æ³åæ¥æµ·åº· å
注é |
| | | ); |
| | | if(CollectionUtils.isNotEmpty(companyList)){ |
| | |
| | | } |
| | | member.setCompanyType(Constants.ONE); |
| | | SystemUser queryUserDto = new SystemUser(); |
| | | queryUserDto.setUsername(member.getPhone()); |
| | | queryUserDto.setUsername(StringUtils.defaultString(member.getPhone(),member.getErpId())); |
| | | queryUserDto.setDeleted(Boolean.FALSE); |
| | | SystemUser user = systemUserMapper.selectOne(new QueryWrapper<>(queryUserDto).last("limit 1")); |
| | | if (user != null) { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | public Member syncDDEditMemberModel(OapiV2UserGetResponse.UserGetResponse deptGetResponse,Member updateMember) { |
| | | |
| | | public Member syncDDEditMemberModel(Member deptGetResponse1,Member updateMember) { |
| | | updateMember.setEditDate(new Date()); |
| | | updateMember.setErpId(deptGetResponse.getUnionid()); |
| | | updateMember.setPhone(deptGetResponse.getMobile()); |
| | | updateMember.setName(deptGetResponse.getName()); |
| | | updateMember.setCode(deptGetResponse.getJobNumber()); |
| | | updateMember.setDdId(deptGetResponse.getUserid()); |
| | | // updateMember.setErpId(deptGetResponse.getErpId()); |
| | | // updateMember.setPhone(deptGetResponse.getPhone()); |
| | | // updateMember.setName(deptGetResponse.getName()); |
| | | // updateMember.setCode(deptGetResponse.getCode()); |
| | | // updateMember.setDdId(deptGetResponse.getDdId()); |
| | | updateMember.setHkId(null); |
| | | updateMember.setAuthStatus(Constants.ZERO); |
| | | Boolean hkFlag = dealHkUserForUpdateBiz(updateMember); |
| | |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | private boolean isMemberDeletedJdy(Member member, List<UserEntityModel> list) { |
| | | for(UserEntityModel m : list){ |
| | | if(StringUtils.equals(m.getUsername(),member.getErpId())){ |
| | | return true; |
| | | } |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | @Override |
| | | public void ddPushMemberInfo(String eventType, shade.com.alibaba.fastjson2.JSONObject eventData) throws ApiException { |
| | | JSONArray jsonArray = eventData.getJSONArray("userId"); |
| | | if(jsonArray.isEmpty()){ |
| | | return; |
| | | } |
| | | if(eventType.equals("user_leave_org")){ |
| | | //å é¤å¯¹äººåä¿¡æ¯ |
| | | List<String> userIdList = new ArrayList<>(); |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | String deptId = jsonArray.getString(i); |
| | | userIdList.add(deptId); |
| | | public void ddPushMemberInfo(String eventType, shade.com.alibaba.fastjson2.JSONObject eventData) { |
| | | try { |
| | | JSONArray jsonArray = eventData.getJSONArray("userId"); |
| | | if(jsonArray.isEmpty()){ |
| | | return; |
| | | } |
| | | if(CollectionUtils.isNotEmpty(userIdList)){ |
| | | syncDelMember(userIdList); |
| | | } |
| | | }else if(eventType.equals("user_add_org")||eventType.equals("user_modify_org")){ |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | OapiV2UserGetResponse.UserGetResponse userGetResponse = dingTalk.syncUserInfo(jsonArray.getString(i)); |
| | | Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda() |
| | | .eq(Member::getIsdeleted,Constants.ZERO) |
| | | .eq(Member::getErpId,userGetResponse.getUnionid()) |
| | | .last(" limit 1") |
| | | ); |
| | | if(Objects.isNull(member)){ |
| | | member = new Member(); |
| | | getAddMemberModel(userGetResponse,member); |
| | | }else{ |
| | | getUpdateMemberModel(userGetResponse,member); |
| | | if(eventType.equals("user_leave_org")){ |
| | | //å é¤å¯¹äººåä¿¡æ¯ |
| | | List<String> userIdList = new ArrayList<>(); |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | String deptId = jsonArray.getString(i); |
| | | userIdList.add(deptId); |
| | | } |
| | | if(CollectionUtils.isNotEmpty(userIdList)){ |
| | | syncDelMember(userIdList); |
| | | } |
| | | }else if(eventType.equals("user_add_org")||eventType.equals("user_modify_org")){ |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | OapiV2UserGetResponse.UserGetResponse userGetResponse = dingTalk.syncUserInfo(jsonArray.getString(i)); |
| | | Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda() |
| | | .eq(Member::getIsdeleted,Constants.ZERO) |
| | | .eq(Member::getErpId,userGetResponse.getUnionid()) |
| | | .last(" limit 1") |
| | | ); |
| | | if(Objects.isNull(member)){ |
| | | member = new Member(); |
| | | getAddMemberModel(userGetResponse,member); |
| | | }else{ |
| | | getUpdateMemberModel(userGetResponse,member); |
| | | } |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"æ°æ®å¤ç失败ï¼"); |
| | | } |
| | | |
| | | } |
| | | |
| | | /** |
| | |
| | | * @param code |
| | | * @param source |
| | | * @return |
| | | * @throws ApiException |
| | | */ |
| | | @Override |
| | | public DDAuthorizeVO ddAuthorize(String code, Integer source) throws ApiException { |
| | | if(StringUtils.isBlank(code)||Objects.isNull(source)){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | OapiV2UserGetuserinfoResponse.UserGetByCodeResponse userGetByCodeResponse = dingTalk.getDDUserByCode(code); |
| | | if(Objects.isNull(userGetByCodeResponse) |
| | | || StringUtils.isBlank(userGetByCodeResponse.getUnionid())){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"ééææå¤±è´¥"); |
| | | } |
| | | String unionId = userGetByCodeResponse.getUnionid(); |
| | | public DDAuthorizeVO ddAuthorize(String code, Integer source) { |
| | | try { |
| | | if(StringUtils.isBlank(code)||Objects.isNull(source)){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | OapiV2UserGetuserinfoResponse.UserGetByCodeResponse userGetByCodeResponse = dingTalk.getDDUserByCode(code); |
| | | if(Objects.isNull(userGetByCodeResponse) |
| | | || StringUtils.isBlank(userGetByCodeResponse.getUnionid())){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"ééææå¤±è´¥"); |
| | | } |
| | | String unionId = userGetByCodeResponse.getUnionid(); |
| | | |
| | | DDAuthorizeVO ddAuthorizeVO = new DDAuthorizeVO(); |
| | | if(StringUtils.isBlank(unionId)){ |
| | | return ddAuthorizeVO; |
| | | } |
| | | ddAuthorizeVO.setUnionId(unionId); |
| | | DDAuthorizeVO ddAuthorizeVO = new DDAuthorizeVO(); |
| | | if(StringUtils.isBlank(unionId)){ |
| | | return ddAuthorizeVO; |
| | | } |
| | | ddAuthorizeVO.setUnionId(unionId); |
| | | // if(source==1){ |
| | | // //å¤çæ®é访客人åèªå¨ææé»è¾ |
| | | // dealVisitUserAuthBiz(wxAuthorizeVO,openId,source); |
| | |
| | | //妿æ¯å
é¨äººåï¼åä»system_useræ¥è¯¢ |
| | | dealSystemUserAuthBizByDD(ddAuthorizeVO,unionId,source); |
| | | // } |
| | | return ddAuthorizeVO; |
| | | return ddAuthorizeVO; |
| | | }catch (Exception e){ |
| | | |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | */ |
| | | @Override |
| | | public void syncOrgData(LoginUserInfo user){ |
| | | if(Constants.DEALING_HK_ORG || |
| | | !(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp |
| | | || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self)){ |
| | | if(Constants.DEALING_HK_ORG || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.hk ){ |
| | | return ; |
| | | } |
| | | Constants.DEALING_HK_ORG =true; |
| | |
| | | */ |
| | | @Override |
| | | public void syncUserData(LoginUserInfo user){ |
| | | if(Constants.DEALING_HK_USER || |
| | | !(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp |
| | | || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self)){ |
| | | //人åæå»ºä»¥å®é²å¹³å°ä¸ºä¸»ï¼ä¸æ§è¡è¯¥æä½ |
| | | if(Constants.DEALING_HK_USER || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.hk){ |
| | | return ; |
| | | } |
| | | Constants.DEALING_HK_USER =true; |
| | |
| | | */ |
| | | @Override |
| | | public void syncMemberDelData(){ |
| | | if(Constants.DEALING_HK_DEL_USER |
| | | || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin())== DataSyncConfig.origin.hk){ |
| | | if(Constants.DEALING_HK_DEL_USER || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin())== DataSyncConfig.origin.hk){ |
| | | return ; |
| | | } |
| | | Constants.DEALING_HK_DEL_USER =true; |
| | |
| | | @Override |
| | | @Transactional |
| | | public void syncOrgData(LoginUserInfo user){ |
| | | if(Constants.DEALING_HK_ORG){ |
| | | return ; |
| | | if(Constants.DEALING_HK_ORG || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.hk){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对ä¸èµ·ï¼å½å䏿¯æç»ç»åæ¥æä½~"); |
| | | } |
| | | Constants.DEALING_HK_ORG =true; |
| | | try { |
| | | if( Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.hk){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对ä¸èµ·ï¼å½å䏿¯æç»ç»åæ¥æä½~"); |
| | | } |
| | | TimeRangeListRequest param = new TimeRangeListRequest(); |
| | | //è·åERPç»ç»ä¿¡æ¯ï¼å
¨éåæ¥ï¼ |
| | | boolean hasNext = true; |
| | |
| | | */ |
| | | @Override |
| | | public void syncUserData(LoginUserInfo user){ |
| | | if(Constants.DEALING_HK_USER){ |
| | | return ; |
| | | if(Constants.DEALING_HK_USER || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.hk){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对ä¸èµ·ï¼å½å䏿¯æç»ç»åæ¥æä½~"); |
| | | } |
| | | Constants.DEALING_HK_USER =true; |
| | | try { |
| | | if( Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.hk){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对ä¸èµ·ï¼å½å䏿¯æç»ç»åæ¥æä½~"); |
| | | } |
| | | List<Company> companies = companyMapper.selectList(new QueryWrapper<>()); |
| | | if(companies == null || companies.size() == 0){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对ä¸èµ·ï¼è¯·å
忥ä¼ä¸ç»ç»ä¿¡æ¯~"); |
| | |
| | | @Override |
| | | @Transactional |
| | | public void syncOrgData(LoginUserInfo user ){ |
| | | if(Constants.DEALING_HK_ORG){ |
| | | return ; |
| | | //åå§åå®é²å¹³å°æ°æ® |
| | | if(Constants.DEALING_HK_ORG || Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.hk){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对ä¸èµ·ï¼å½å䏿¯æç»ç»åæ¥æä½~"); |
| | | } |
| | | Constants.DEALING_HK_ORG =true; |
| | | try { |
| | | if( Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.self){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对ä¸èµ·ï¼å½å䏿¯æç»ç»åæ¥æä½~"); |
| | | } |
| | | TimeRangeListRequest param = null; |
| | | //è·åERPç»ç»ä¿¡æ¯ï¼å
¨éåæ¥ï¼ |
| | | boolean hasNext = true; |
| | |
| | | } |
| | | Constants.DEALING_HK_USER =true; |
| | | try { |
| | | if( Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) != DataSyncConfig.origin.self){ |
| | | if( Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.hk){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对ä¸èµ·ï¼å½å䏿¯æç»ç»åæ¥æä½~"); |
| | | } |
| | | List<Company> companies = companyMapper.selectList(new QueryWrapper<>()); |
| | |
| | | |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 0 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 0 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: true #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | |
| | |
| | | debug_model: true |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 2 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: false #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | # Swaggeré
ç½® |
| | |
| | | |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 0 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 0 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: true #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | |
| | |
| | | |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 1 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 1 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: true #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | ########################微信æ¯ä»ç¸å
³é
ç½®######################## |
| | |
| | | |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 0 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 0 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: true #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | |
| | |
| | | |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 0 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 0 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: true #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | |
| | |
| | | |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 1 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 1 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: true #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | ########################微信æ¯ä»ç¸å
³é
ç½®######################## |
| | |
| | | debug_model: true |
| | | ########################åæ¥æ°æ®æ¨¡å¼ ######################## |
| | | data-sync: |
| | | org-user-data-origin: 2 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» |
| | | org-user-data-origin: 3 #ç»ç»æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 3ç®éäº 4éé |
| | | visitor-data-origin: 2 #è®¿å®¢æ°æ® 0èªå»º 2以海康为主 1åæERPç³»ç» 2ç®éäº |
| | | need-deal-img: false #æ¯å¦éè¦å¤çå¾çæ°æ® |
| | | |
| | | # Swaggeré
ç½® |