From 2ba1c199ce3199a243f7735ef992babf80737d65 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期一, 01 四月 2024 09:05:44 +0800
Subject: [PATCH] mrshi
---
server/service/src/main/java/com/doumee/dao/business/model/Solutions.java | 3
server/service/src/main/java/com/doumee/service/business/ApplyChangeService.java | 6
company/src/views/enterprise/myPolicy.vue | 22
company/src/components/business/OperaWtbApplyCheckWindow.vue | 501 ++++++++
server/service/src/main/java/com/doumee/dao/business/model/UnionApply.java | 25
server/service/src/main/java/com/doumee/service/business/impl/ApplyChagneDetailServiceImpl.java | 2
server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java | 5
server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java | 58
server/service/src/main/java/com/doumee/dao/business/dto/UnionChangeBXDDTO.java | 8
server/company/src/main/java/com/doumee/api/business/UnionChangeController.java | 36
server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java | 4
company/src/components/business/operaverifyPhoneNumberWindew.vue | 150 +-
server/company/src/main/java/com/doumee/api/business/UnionApplyController.java | 49
server/service/src/main/java/com/doumee/dao/business/dto/ApplyDetailPageDTO.java | 2
server/service/src/main/java/com/doumee/core/utils/Constants.java | 94
server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java | 341 ++++
server/shop/src/main/java/com/doumee/api/business/ApplyChangeController.java | 9
company/src/assets/style/style.scss | 8
server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java | 4
server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java | 75 +
company/src/components/business/OperaWtbApplyShopWindow.vue | 1025 ++++++++++++++++
server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java | 3
company/src/api/business/insuranceApply.js | 14
company/src/components/common/MenuSelect.vue | 5
server/company/src/main/java/com/doumee/api/business/InsuranceApplyController.java | 25
company/.env.developmentCom | 2
server/company/src/main/java/com/doumee/api/business/ApplyChangeController.java | 11
server/service/src/main/java/com/doumee/service/business/UnionChangeService.java | 12
company/src/components/business/OperaSolutionsWindow.vue | 18
company/src/views/business/insuranceApplyShop.vue | 20
server/service/src/main/java/com/doumee/dao/business/dto/UploadMultifileDTO.java | 12
server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java | 201 ++
server/shop/src/main/java/com/doumee/api/business/UnionApplyController.java | 54
server/service/src/main/java/com/doumee/dao/business/join/UnionChangeJoinMapper.java | 13
server/service/src/main/java/com/doumee/dao/business/dto/SmsCheckDTO.java | 23
server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java | 6
server/service/src/main/java/com/doumee/dao/business/model/UnionChange.java | 56
server/service/src/main/java/com/doumee/service/business/UnionApplyService.java | 6
server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java | 231 +++
server/service/src/main/java/com/doumee/service/business/third/SignService.java | 5
server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java | 3
server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java | 18
company/src/views/enterprise/insuranceApply.vue | 82
server/shop/src/main/java/com/doumee/api/business/UnionChangeController.java | 39
company/src/components/common/UploadFile.vue | 35
server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java | 16
server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java | 379 ++++++
47 files changed, 3,259 insertions(+), 457 deletions(-)
diff --git a/company/.env.developmentCom b/company/.env.developmentCom
index fd0d4ea..b9e8f99 100644
--- a/company/.env.developmentCom
+++ b/company/.env.developmentCom
@@ -15,4 +15,4 @@
# 骞冲彴绔�-钀嶅
# VUE_APP_API = 'http://192.168.0.105:10023/'
-VUE_APP_API = 'http://localhost:10032/'
+VUE_APP_API = 'http://192.168.0.176:10032/'
diff --git a/company/src/api/business/insuranceApply.js b/company/src/api/business/insuranceApply.js
index d7352e2..df25333 100644
--- a/company/src/api/business/insuranceApply.js
+++ b/company/src/api/business/insuranceApply.js
@@ -62,6 +62,20 @@
export function getSignLink (id) {
return request.get(`business/insuranceApply/getSignLink/${id}`)
}
+export function getSignTBQRSLink (data) {
+ // return request.get('/business/insuranceApply/signTBQRSLink')
+ return request.post('/business/insuranceApply/signTBQRSLink', data)
+}
+export function getMemberListOnlineSignLink (data) {
+ return request.post('/business/insuranceApply/getMemberListOnlineSignLink', data, {
+ trim: true
+ })
+}
+export function getSignWTBTBDLinkk (data) {
+ return request.post('/business/insuranceApply/getSignWTBTBDLinkk', data, {
+ trim: true
+ })
+}
export function getJiajianBaoSignLink (data) {
return request.post('/business/applyChange/getJiajianBaoSignLink', data, {
trim: true
diff --git a/company/src/assets/style/style.scss b/company/src/assets/style/style.scss
index 44a053b..1e51656 100644
--- a/company/src/assets/style/style.scss
+++ b/company/src/assets/style/style.scss
@@ -77,20 +77,22 @@
::v-deep .el-table__cell {
height: 100% !important;
}
-.apply-status0, .apply-status2 , .apply-status3, .apply-status10,
+.apply-status0, .apply-status28,.apply-status20,.apply-status21,.apply-status22,
+.apply-status25,.apply-status2 , .apply-status3, .apply-status10,
.change-status0,.change-status1,.change-status2,
.settle-status0,.settle-status2,.settle-status3,
.tax-status0,
.du-status0 {
color: #216EEE !important;
}
- .apply-status1 , .apply-status4, .apply-status6, .apply-status7, .apply-status8, .apply-status11,
+.apply-status1 ,.apply-status24,.apply-status23, .apply-status4, .apply-status6,
+.apply-status7, .apply-status8, .apply-status11,
.change-status3,.change-status4,.change-status5,.change-status8,
.settle-status1,
.tax-status2,
.du-status2 {
color: #F95601 !important;
}
- .apply-status5,.change-status7,.settle-status7,.tax-status1,.du-status1,.settle-status4 {
+ .apply-status5,.apply-status26,.change-status7,.settle-status7,.tax-status1,.du-status1,.settle-status4 {
color: #00BA92 !important;
}
diff --git a/company/src/components/business/OperaSolutionsWindow.vue b/company/src/components/business/OperaSolutionsWindow.vue
index b123011..c48dbfe 100644
--- a/company/src/components/business/OperaSolutionsWindow.vue
+++ b/company/src/components/business/OperaSolutionsWindow.vue
@@ -95,6 +95,9 @@
</el-option>
</el-select>
</el-form-item>
+ <el-form-item label="涓婁紶鏂规纭涔︼細" prop="fanganFile" v-if="form.type =='1'">
+ <UploadFile :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="editFanganFile" />
+ </el-form-item>
<el-form-item label="鎺ユ敹鏂囦欢閭" prop="email">
<el-input v-model="form.email" placeholder="璇疯緭鍏�" v-trim/>
</el-form-item>
@@ -157,10 +160,11 @@
import { all as allWorktype } from '@/api/business/worktype'
import { solutionsId } from '@/api/business/solutions'
import { pageAll as shopList } from '@/api/business/company'
+import UploadFile from "@/components/common/UploadFile";
export default {
name: 'OperaSolutionsWindow',
extends: BaseOpera,
- components: { GlobalWindow },
+ components: { GlobalWindow ,UploadFile},
data () {
var validType = (rule, value, callback) => {
if (this.form.validType === 0 && !value) {
@@ -192,6 +196,8 @@
ortherInfo: '',
signKeyword: '',
validTypeNum: '',
+ fileList1:[],
+ fanganFile:null,
worktypeIdList: [{ worktypeId: '' }]
},
// 楠岃瘉瑙勫垯
@@ -236,6 +242,9 @@
})
},
methods: {
+ editFanganFile(data){
+ this.form.fanganFile=data
+ },
// 鍒囨崲鍏徃
getAllWorktype1 () {
this.form.worktypeIdList = [{ worktypeId: '' }]
@@ -287,7 +296,10 @@
this.form.insureCycleUnit = ''
this.form.validTypeNum = ''
this.visible = true
+ this.form.fanganFile=null
+ this.form.fileList1= new Array();
this.form.worktypeIdList = [{ worktypeId: '' }]
+ // this.$refs['$upload'].clearFiles()//鍒濆鍖栧鍏ョ粍浠�
this.allCompany()
this.allShops()
// 鏂板缓
@@ -305,6 +317,10 @@
for (const key in this.form) {
this.form[key] = res[key]
}
+ if(this.form.fanganFile && this.form.fanganFile.fileurl){
+ this.form.fileList1= [{url: this.form.fanganFile.fileurlFull, name:this.form.fanganFile.name}];
+ }
+ console.log(this.form.fileList1)
this.form.worktypeIdList = res.worktypeList.map(item => {
return {
worktypeId: item.worktypeId
diff --git a/company/src/components/business/OperaWtbApplyCheckWindow.vue b/company/src/components/business/OperaWtbApplyCheckWindow.vue
new file mode 100644
index 0000000..973f19b
--- /dev/null
+++ b/company/src/components/business/OperaWtbApplyCheckWindow.vue
@@ -0,0 +1,501 @@
+<template>
+ <GlobalWindow
+ :title="title"
+ width="50%"
+ :visible.sync="visible"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <!-- 閫�鍥炴姇淇� -->
+ <el-form v-if="visible1==true" :model="form" ref="form1" :rules="rules1" style="width: 100%;">
+ <el-form-item label="濉啓閫�鍥炶鏄庯細" prop="backCheckInfo">
+ <el-input type="textarea" v-model="form.backCheckInfo" placeholder="璇疯緭鍏�" v-trim/>
+ </el-form-item>
+ </el-form>
+ <el-form v-if="visible2==true" :model="form" ref="form2" :rules="rules2" style="width: 100%;">
+ <el-form-item label="涓婁紶鎶曚繚鍗曪細" prop="toubaodanFile">
+ <UploadFile @remove="dele2" :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList" @uploadSuccess="toubaoFileUploaded" />
+ </el-form-item>
+ </el-form>
+ <!-- 涓婁紶淇濋櫓鍗� -->
+ <el-form v-if="visible3==true" :model="form" ref="form3" :rules="rules3" style="width: 100%;">
+ <el-form-item label="瀹㈡埛鏈熸湜淇濋櫓鐢熸晥璧锋湡锛�">
+ {{ model.applyStartTime }}
+ </el-form-item>
+ <el-form-item label="" >
+ <el-radio-group v-model="form.selectRadio" @change="selectChange">
+ <el-radio :label="0" >涓庝繚鍗曚竴鑷�</el-radio>
+ <el-radio :label="1" >涓庝繚鍗曚笉涓�鑷�</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ <el-form-item label="淇濋櫓鐢熸晥璧锋湡锛�" prop="startTime" v-if="form.selectRadio === 1">
+ <el-date-picker
+ v-model="form.startTime"
+ type="date"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ placeholder="閫夋嫨鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="淇濋櫓鐢熸晥璧锋湡锛�">
+ {{ form.startTime }}
+ </el-form-item>
+ <el-form-item label="淇濆崟鍙凤細" prop="code">
+ <el-input v-model="form.code" placeholder="璇疯緭鍏�" v-trim/>
+ </el-form-item>
+ <el-form-item label="涓婁紶淇濋櫓鍗曪細" prop="baoxianFile">
+ <UploadFile :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="baoxianFileUploaded" />
+ </el-form-item>
+ </el-form>
+ <!-- 淇敼淇濋櫓鍗� -->
+ <el-form v-if="visible4==true" :model="form" ref="form4" :rules="rules4" style="width: 100%;">
+ <el-form-item label="淇濋櫓鐢熸晥璧锋湡锛�">
+ {{ model.startTime }}
+ </el-form-item>
+ <el-form-item label="淇濆崟鍙凤細" prop="editCode">
+ <el-input v-model="form.editCode" placeholder="璇疯緭鍏�" v-trim/>
+ </el-form-item>
+ <el-form-item label="涓婁紶淇濋櫓鍗曪細" prop="editBaoxianFile">
+ <UploadFile :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="editBaoxianFileUploaded" />
+ </el-form-item>
+ <el-form-item label="淇敼鍘熷洜锛�" prop="editCheckInfo">
+ <el-input type="textarea" v-model="form.editCheckInfo" placeholder="璇疯緭鍏�" v-trim/>
+ </el-form-item>
+ </el-form>
+ <el-form v-if="visible5==true || visible6==true" :model="form" ref="form5" :rules="rules5" style="width: 100%;">
+ <el-form-item label="濉啓璇存槑锛�" prop="dealBackInfo">
+ <el-input type="textarea" v-model="form.dealBackInfo" placeholder="璇疯緭鍏�" v-trim/>
+ </el-form-item>
+ </el-form>
+ <template v-slot:footer>
+ <el-button type="primary" @click="doSubmit">纭� 瀹�</el-button>
+ <el-button @click="visible=false">鍙栨秷</el-button>
+ </template>
+ </GlobalWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+import {
+ dealBackApply,
+ back,
+ uploadBaoxiandan,
+ editBaoxiandan,
+ uploadToubaodan,
+ check
+} from "@/api/business/insuranceApply";
+import UploadFile from "@/components/common/UploadFile";
+import {remark} from "@/api/business/settleClaims";
+export default {
+ name: 'OperaWtbApplyCheckWindow',
+ extends: BaseOpera,
+ components: {UploadFile, GlobalWindow },
+ data () {
+ return {
+ // 琛ㄥ崟鏁版嵁
+ model: {},
+ falg :0,
+ rules1: {
+ backCheckInfo: [
+ { required: true, message: '璇峰畬鍠勪俊鎭�' }
+ ]
+ },
+ rules2: {
+ toubaodanFile: [
+ { required: true, message: '璇峰畬鍠勪俊鎭�' }
+ ]
+ },
+ rules3: {
+ code: [
+ { required: true, message: '璇峰畬鍠勪俊鎭�' }
+ ],
+ startTime: [
+ { required: true, message: '璇峰畬鍠勪俊鎭�' }
+ ],
+ baoxianFile: [
+ { required: true, message: '璇峰畬鍠勪俊鎭�' }
+ ],
+ },
+ rules5: {
+ dealBackInfo: [
+ { required: true, message: '璇峰畬鍠勪俊鎭�' }
+ ]
+ },
+ rules4: {
+ editCode: [
+ { required: true, message: '璇峰畬鍠勪俊鎭�' }
+ ],
+ editBaoxianFile: [
+ { required: true, message: '璇峰畬鍠勪俊鎭�' }
+ ],
+ editCheckInfo: [
+ { required: true, message: '璇峰畬鍠勪俊鎭�' }
+ ]
+ },
+ form: {
+ id: null,
+ backCheckInfo:'',
+ dealBackInfo:'',
+ editCheckInfo:'',
+ editDate: '',
+ editCode: '',
+ startTime:null,
+ code:null,
+ toubaodanFile:null,
+ baoxianFile:null,
+ editBaoxianFile:null,
+ fileList: [],
+ fileList1: [],
+ fileList2: [],
+ selectRadio:0
+ },
+ visible1: false,
+ visible2: false,
+ visible3: false,
+ visible4: false,
+ visible5: false,
+ visible6: false,
+ }
+ },
+ created () {
+ this.config({
+ api: '/business/insuranceApply',
+ 'field.id': 'id'
+ })
+ },
+ methods: {
+ dele2() {
+ this.form.toubaodanFile = ''
+ },
+ open(title,target,flag){
+ this.visible=true
+ this.model={}
+ this.form= {
+ id: null,
+ backCheckInfo:'',
+ dealBackInfo:'',
+ editCheckInfo:'',
+ editDate: '',
+ editCode: '',
+ startTime:null,
+ code:null,
+ toubaodanFile:null,
+ baoxianFile:null,
+ editBaoxianFile:null,
+ fileList: [],
+ fileList1: [],
+ fileList2: [],
+ selectRadio:0
+ },
+ this.model = target
+ this.form.startTime = target.startTime
+ this.title = title
+ this.flag = flag
+ this.visible1 = false
+ this.visible2 = false
+ this.visible3 = false
+ this.visible4 = false
+ this.visible5 = false
+ this.visible6 = false
+ if(flag == 1){
+ this.visible1 = true
+ }
+ if(flag == 2){
+ this.visible2 = true
+ }
+ if(flag == 3){
+ this.visible3 = true
+ }
+ if(flag == 4){
+ this.visible4 = true
+ this.$nextTick(() => {
+ this.$refs.form4.resetFields()
+ })
+ }
+ if(flag == 5){
+ this.visible5 = true
+ }
+ if(flag == 6){
+ this.visible6 = true
+ }
+ },
+ doSubmit(){
+ if (this.flag == 1) {
+ this.$refs.form1.validate((valid) => {
+ // debugger
+ if (!valid) {
+ return
+ }
+ this.backDo()
+ })
+ } else if (this.flag == 2) {
+ this.$refs.form2.validate((valid) => {
+ // debugger
+ if (!valid) {
+ return
+ }
+ this.uploadToubaodan()
+ })
+ } else if (this.flag == 3) {
+ this.$refs.form3.validate((valid) => {
+ // debugger
+ if (!valid) {
+ return
+ }
+ this.uploadBaoxiandan()
+ })
+ } else if (this.flag == 4) {
+ this.$refs.form4.validate((valid) => {
+ // debugger
+ if (!valid) {
+ return
+ }
+ this.editBaoxiandan()
+ })
+ } else if (this.flag == 5) {
+ this.$refs.form5.validate((valid) => {
+ // debugger
+ if (!valid) {
+ return
+ }
+ this.dealBackApply(1)
+ })
+ } else if (this.flag == 6) {
+ this.$refs.form5.validate((valid) => {
+ // debugger
+ if (!valid) {
+ return
+ }
+ this.dealBackApply(0)
+ })
+ }
+ },
+ selectChange(){
+ if(this.form.selectRadio == 0){
+ this.form.startTime = this.model.startTime
+ }else{
+ this.form.startTime = ''
+ }
+ },
+ toubaoFileUploaded(data){
+ this.form.toubaodanFile=data
+ },
+ baoxianFileUploaded(data){
+ this.form.baoxianFile=data
+ },
+ editBaoxianFileUploaded(data){
+ this.form.editBaoxianFile=data
+ },
+ backDo(){
+ this.$dialog.messageConfirm('纭杩涜璇ユ搷浣滃悧锛�')
+ .then(() => {
+ this.isWorking = true
+ back({id:this.model.id,checkInfo:this.form.backCheckInfo})
+ .then(response => {
+ this.visible = false
+ this.$emit('success')
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ })
+ },
+ uploadToubaodan(){
+ this.$dialog.messageConfirm('纭杩涜璇ユ搷浣滃悧锛�')
+ .then(() => {
+ this.isWorking = true
+ uploadToubaodan({id:this.model.id,toubaodanFile:this.form.toubaodanFile})
+ .then(response => {
+ this.visible = false
+ this.$emit('success')
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ })
+ },
+ dealBackApply(type){
+ this.$dialog.messageConfirm('纭杩涜璇ユ搷浣滃悧锛�')
+ .then(() => {
+ this.isWorking = true
+ dealBackApply({ id: this.model.id, checkInfo: this.form.dealBackInfo, dealBackApply: type })
+ .then(response => {
+ this.visible = false
+ this.$emit('success')
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ })
+ },
+ uploadBaoxiandan(){
+ this.$dialog.messageConfirm('纭杩涜璇ユ搷浣滃悧锛�')
+ .then(() => {
+ this.isWorking = true
+ uploadBaoxiandan({id:this.model.id,startTime:this.form.startTime,code:this.form.code,baoxiandanFile:this.form.baoxianFile})
+ .then(response => {
+ this.visible = false
+ this.$emit('success')
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ })
+
+ },
+ editBaoxiandan(){
+ this.$dialog.messageConfirm('纭杩涜璇ユ搷浣滃悧锛�')
+ .then(() => {
+ this.isWorking = true
+ editBaoxiandan({id:this.model.id, checkInfo:this.form.editCheckInfo,code:this.form.editCode,baoxiandanFile:this.form.editBaoxianFile})
+ .then(response => {
+ this.visible = false
+ this.$emit('success')
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ })
+ },
+ handleRemove(file, fileList) {
+ console.log(file, fileList);
+ },
+ handlePreview(file) {
+ console.log(file);
+ },
+ handleExceed(files, fileList) {
+ this.$message.warning(`褰撳墠闄愬埗閫夋嫨 3 涓枃浠讹紝鏈閫夋嫨浜� ${files.length} 涓枃浠讹紝鍏遍�夋嫨浜� ${files.length + fileList.length} 涓枃浠禶);
+ },
+ beforeRemove(file, fileList) {
+ return this.$confirm(`纭畾绉婚櫎 ${ file.name }锛焋);
+ },
+ successEvent() {
+
+ },
+ handleSizeChange(val) {
+ console.log(`姣忛〉 ${val} 鏉);
+ },
+ handleCurrentChange(val) {
+ console.log(`褰撳墠椤�: ${val}`);
+ },
+ handleClick(tab, event) {
+ console.log(tab, event);
+ },
+ onSubmit() {
+
+ }
+ }
+}
+</script>
+<style>
+
+</style>
+<style lang="scss" scoped>
+ .form {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ flex-direction: column;
+ .form_span {
+ width: 100%;
+ display: flex;
+ align-items: start;
+ flex-direction: column;
+ margin-bottom: 20px;
+ span {
+ font-size: 14px;
+ &:nth-child(1) {
+ color: black;
+ margin-bottom: 5px;
+ }
+ &:nth-child(2) {
+ color: #8c939d;
+ }
+ }
+ }
+ .form_item {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ margin-bottom: 20px;
+ &:last-child {
+ margin: 0 !important;
+ }
+ .form_item_label {
+ flex-shrink: 0;
+ /*width: 170px;*/
+ color: black;
+ font-size: 14px;
+ span {
+ color: red;
+ font-size: 14px;
+ }
+ }
+ .form_item_val {
+ flex: 1;
+ /*height: 40px;*/
+ margin-left: 20px;
+ textarea {
+ width: 100%;
+ height: 70px;
+ border: 1px solid #cbcbcb;
+ padding: 10px;
+ outline: none;
+ box-sizing: border-box;
+ }
+ input {
+ width: 100%;
+ height: 40px;
+ outline: none;
+ border-radius: 5px;
+ border: 1px solid #cbcbcb;
+ padding: 0 20px;
+ box-sizing: border-box;
+ }
+ }
+ }
+ }
+ .desc {
+ width: 100%;
+ .desc_item {
+ width: 100%;
+ display: flex;
+ flex-direction: column;
+ .desc_item_label {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin-bottom: 10px;
+ span {
+ font-size: 14px;
+ color: black;
+ margin-right: 30px;
+ }
+ }
+ .desc_item_from {
+ width: 100%;
+ margin-bottom: 10px;
+ .desc_item_from_page {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: end;
+ margin-top: 10px;
+ }
+ }
+ .desc_item_cate {
+ width: 100%;
+ margin-bottom: 10px;
+ }
+ .desc_item_search {
+ width: 100%;
+ margin-bottom: 20px;
+ }
+ .desc_item_review {
+ width: 100%;
+ .desc_item_review_label {
+ font-size: 20px;
+ color: black;
+ font-weight: bold;
+ margin-bottom: 15px;
+ }
+ }
+ }
+ }
+</style>
diff --git a/company/src/components/business/OperaWtbApplyShopWindow.vue b/company/src/components/business/OperaWtbApplyShopWindow.vue
new file mode 100644
index 0000000..ff5a3a5
--- /dev/null
+++ b/company/src/components/business/OperaWtbApplyShopWindow.vue
@@ -0,0 +1,1025 @@
+<template>
+ <GlobalWindow
+ :title="title"
+ width="100%"
+ :visible.sync="visible"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <div class="desc">
+ <div class="desc_item">
+ <div class="desc_item_label" v-if="userInfo.type === 1 &&(model.statusCollect === 2 || model.statusCollect === 3)">
+ <div class="desc_item_label_left">
+ <span>淇濋櫓鍒版湡杩樻湁 <b style="color: #F95601;">{{model.loseEfficacyDays ? model.loseEfficacyDays : '-'}}</b> 澶�</span>
+ <el-button type="primary" v-if="model.statusCollect === 2 || model.statusCollect === 3" @click="$refs.OperaInsuranceApply.open('缁繚', { id: dataId, type: 1 })">涓�閿画淇�</el-button>
+ <el-button type="primary" v-if="model.statusCollect === 2" @click="$refs.additionSubtractionApplication.open('鍔犲噺淇濈敵璇�', { id: dataId })">鍔犲噺淇濈敵璇�</el-button>
+ <el-button type="primary" v-if="model.statusCollect === 2" @click="$refs.factoryChange.open('鏇存崲娲鹃仯鍗曚綅鐢宠', { id: dataId })">鏇存崲娲鹃仯鍗曚綅鐢宠</el-button>
+ </div>
+ </div>
+ <div class="desc_item_label">
+ <div class="desc_item_label_left">
+ <span>鎶曚繚浼佷笟锛歿{ model.companyName }}</span>
+ <span>淇濆崟鐘舵�侊細<span :class="'apply-status'+model.status" >{{ model.statusInfo }}</span></span>
+ <span>鎻愪氦鏃堕棿锛歿{ model.createDate }}</span>
+ </div>
+ <div class="desc_item_label_right">
+ <template v-if="userInfo.type === 1">
+ <el-button v-if="model.status == 24" type="primary" @click="$refs.OperaInsuranceApply.open('鎶曚繚鐢宠', {id: dataId})">鍐嶆鎶曚繚</el-button>
+ <el-button v-if="model.status == 24" type="primary" @click="closeOrder">鍏抽棴璁㈠崟</el-button>
+ <el-button v-if="[21,22,23,24,25,26,27].includes(model.status)" type="primary" @click="viewFanganshu">鏌ョ湅纭涔�</el-button>
+ <el-button v-if="[22,23,24,25,26,27].includes(model.status)" type="primary" @click="viewShenqingdan">鏌ョ湅鐢宠鍗�</el-button>
+ <el-button v-if="[1,2,3].includes(model.unionApplyTbdStatus)" type="primary" @click="viewToubaodan">鏌ョ湅鎶曚繚鍗�</el-button>
+ <el-button v-if="[3].includes(model.unionApplyTbdStatus) " type="primary" @click="viewBaoxiandan">鏌ョ湅淇濋櫓鍗�</el-button>
+<!-- goSign-->
+ <el-button v-if="model.status == 20" type="primary" @click="getSignLink(0)">绛剧讲鏂规纭涔�</el-button>
+ <el-button v-if="model.status == 21" type="primary" @click="getSignLink(1)">绛剧讲鐢宠鍗�</el-button>
+ <el-button v-if="model.unionApplyTbdStatus == 1" type="primary" @click="getSignLink(2)">绛剧讲鎶曚繚鍗�</el-button>
+ </template>
+ <template v-if="userInfo.type === 2">
+ <el-button v-if="[21,22,23,24,25,26,27].includes(model.status)" type="primary" @click="viewFanganshu">鏌ョ湅纭涔�</el-button>
+ <el-button v-if="[22,23,24,25,26,27].includes(model.status)" type="primary" @click="viewShenqingdan">鏌ョ湅鐢宠鍗�</el-button>
+ <el-button v-if="model.status == 22" type="primary" @click="$refs.InsuranceDetails.open('鎶曚繚瀹℃牳',model,1)">鎶曚繚瀹℃牳</el-button>
+ <el-button v-if="model.status == 22" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炵敵璇�</el-button>
+ <el-button v-if="model.status == 23" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('閫�鍥炴姇淇�',model,1)">鍏抽棴鐢宠</el-button>
+ </template>
+ <template v-if="userInfo.type === 0">
+ <el-button v-if="[27].includes(model.status)" type="primary" @click="viewFanganshu">鏌ョ湅纭涔�</el-button>
+ <el-button v-if="[27].includes(model.status)" type="primary" @click="viewShenqingdan">鏌ョ湅鐢宠鍗�</el-button>
+ <el-button v-if="[27].includes(model.status)" type="primary" @click="viewToubaodan">鏌ョ湅鎶曚繚鍗�</el-button>
+ <el-button v-if="[27].includes(model.status)" type="primary" @click="viewBaoxiandan">鏌ョ湅淇濋櫓鍗�</el-button>
+ </template>
+ </div>
+ </div>
+ <div class="desc_item_from">
+ <el-table
+ :data="tableData"
+ border
+ style="width: 100%">
+ <el-table-column
+ prop="code"
+ align="center"
+ label="淇濆崟鍙�">
+ </el-table-column>
+ <el-table-column
+ prop="solutionsName"
+ label="淇濋櫓鏂规"
+ align="center"
+ width="180">
+ </el-table-column>
+ <el-table-column
+ prop="startTime"
+ align="center"
+ label="淇濋櫓鐢熸晥璧锋湡">
+ </el-table-column>
+ <el-table-column
+ prop="endTime"
+ align="center"
+ label="淇濋櫓鐢熸晥姝㈡湡">
+ </el-table-column>
+ <el-table-column
+ prop="insureNum"
+ align="center"
+ label="鎶曚繚浜烘暟">
+ </el-table-column>
+ <el-table-column
+ prop="serviceDays"
+ align="center"
+ label="鍦ㄤ繚鏃堕暱锛堝ぉ锛�">
+ </el-table-column>
+ <el-table-column
+ prop="currentFee"
+ align="center"
+ label="宸蹭骇鐢熻垂鐢�(鍏�)">
+ </el-table-column>
+ <el-table-column
+ prop="fee"
+ align="center"
+ label="鎬昏垂鐢�(鍏�)">
+ </el-table-column>
+ </el-table>
+ </div>
+ <div class="desc_item_cate">
+ <el-tabs v-model="activeName" @tab-click="handleClick">
+ <el-tab-pane label="鍦ㄤ繚浜哄憳" name="0" ></el-tab-pane>
+ <el-tab-pane label="鍔�/鍑忎繚璁板綍" name="1"></el-tab-pane>
+ <el-tab-pane label="鏇存崲娲鹃仯鍗曚綅璁板綍" name="2"></el-tab-pane>
+ </el-tabs>
+ </div>
+ <div class="desc_item_search">
+ <el-form :inline="true" :model="formInline" ref="sou" class="demo-form-inline">
+ <template v-if="activeName === '0'">
+ <el-form-item label="鍦ㄤ繚鐘舵��" prop="applyStatus">
+ <el-select v-model="formInline.applyStatus" @change="search" placeholder="璇烽�夋嫨">
+ <el-option label="鍏ㄩ儴" value="0"></el-option>
+ <el-option label="淇濋殰涓�" value="1"></el-option>
+ <el-option label="涓嶅湪淇�" value="2"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="娲鹃仯鍗曚綅" prop="duId">
+ <el-select v-model="formInline.duId" placeholder="璇烽�夋嫨" @change="search">
+ <el-option
+ v-for="item in dwList"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鎵�灞炲伐绉�" prop="workTypeId">
+ <el-select v-model="formInline.workTypeId" placeholder="璇烽�夋嫨" @change="search">
+ <el-option
+ v-for="item in gzList"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鍛樺伐濮撳悕" prop="memberName">
+ <el-input v-model="formInline.memberName" placeholder="璇疯緭鍏�" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <el-form-item label="淇濋櫓鐢熸晥璧锋湡" prop="end">
+ <el-date-picker
+ @change="changeStart"
+ v-model="formInline.end"
+ type="daterange"
+ format="yyyy 骞� MM 鏈� dd 鏃�"
+ value-format="yyyy-MM-dd"
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="淇濋櫓鐢熸晥姝㈡湡" prop="start">
+ <el-date-picker
+ @change="changeEnd"
+ v-model="formInline.start"
+ type="daterange"
+ format="yyyy 骞� MM 鏈� dd 鏃�"
+ value-format="yyyy-MM-dd"
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ </template>
+ <template v-else>
+ <el-form-item label="鐘舵��" prop="applyStatus">
+ <el-select v-model="formInline.applyStatus" @change="search" placeholder="璇烽�夋嫨">
+ <el-option label="鍏ㄩ儴" value=""></el-option>
+ <el-option label="寰呯缃�" value="0"></el-option>
+ <el-option label="寰呭鏍�" value="1"></el-option>
+ <el-option label="宸茬敓鏁�" value="2"></el-option>
+ <el-option label="鐢宠閫�鍥�" value="3"></el-option>
+ <el-option label="宸查��鍥�" value="5"></el-option>
+ <el-option label="宸插叧闂�" value="6"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鎵瑰崟鐢熸晥璧锋湡" prop="end">
+ <el-date-picker
+ @change="changeStart"
+ v-model="formInline.end"
+ type="daterange"
+ format="yyyy 骞� MM 鏈� dd 鏃�"
+ value-format="yyyy-MM-dd"
+ range-separator="鑷�"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ </template>
+ <el-form-item>
+ <el-button type="primary" style="width: 80px;" @click="search">鏌ヨ</el-button>
+ <el-button @click="resetting" style="width: 80px;">閲嶇疆</el-button>
+ <el-button type="primary" style="width: 80px;" @click="exportExcel" v-if="activeName === '0'">瀵煎嚭鍚嶅崟</el-button>
+ </el-form-item>
+ </el-form>
+ </div>
+ <div class="desc_item_from">
+ <el-table
+ :data="list"
+ border
+ ref="table"
+ v-if="activeName === '0'"
+ style="width: 100%">
+ <el-table-column label="搴忓彿"
+ align="center">
+ <template slot-scope="scope">
+ <span>{{scope.$index + 1}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="memberName"
+ align="center"
+ label="鍛樺伐濮撳悕">
+ </el-table-column>
+ <el-table-column
+ align="center"
+ :key="Math.random()"
+ label="鎬у埆">
+ <template slot-scope="{row}">
+ <span v-if="row.sex === 0">鐢�</span>
+ <span v-else>濂�</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="idcardNo"
+ align="center"
+ label="韬唤璇佸彿">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="duName"
+ align="center"
+ label="娲鹃仯鍗曚綅">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="workTypeName"
+ align="center"
+ label="鎵�灞炲伐绉�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="startTime"
+ align="center"
+ label="淇濋櫓鐢熸晥璧锋湡">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="endTime"
+ align="center"
+ label="淇濋櫓鐢熸晥姝㈡湡">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ align="center"
+ prop="fee"
+ label="浜х敓璐圭敤">
+ </el-table-column>
+ </el-table>
+ <el-table
+ :data="list1"
+ border
+ ref="table"
+ v-if="activeName === '1'"
+ style="width: 100%">
+ <el-table-column
+ label="搴忓彿"
+ align="center">
+ <template slot-scope="scope">
+ <span>{{scope.$index + 1}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="淇濆崟鐘舵��" :key="Math.random()"
+ align="center">
+ <template slot-scope="{row}">
+ <span :class="'change-status'+row.status" v-if="row.status === 0">寰呯缃�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 1">寰呭鏍�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 2">宸茬敓鏁�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 3 || row.status === 4">鐢宠閫�鍥�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 5 || row.status === 8">宸查��鍥�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 6">宸插叧闂�</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="applyCode"
+ align="center"
+ label="鎵瑰崟鍙�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="addNum"
+ align="center"
+ label="澧炲姞浜烘暟锛堜汉锛�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="delNum"
+ align="center"
+ label="鍑忓皯浜烘暟锛堜汉锛�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="createDate"
+ align="center"
+ label="鎻愪氦鏃堕棿">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="applyStartTime"
+ align="center"
+ label="鎵瑰崟鐢熸晥璧锋湡">
+ </el-table-column>
+ <el-table-column
+ align="center"
+ :key="Math.random()"
+ label="鎿嶄綔">
+ <template slot-scope="{row}">
+ <el-button type="text" @click="$refs.OperaApplyChangeDetailWindow.open('鍔犲噺淇濊鎯�', row)">鏌ョ湅璇︽儏</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <el-table
+ :data="list2"
+ border
+ ref="table"
+ v-if="activeName === '2'"
+ style="width: 100%">
+ <el-table-column label="搴忓彿"
+ align="center">
+ <template slot-scope="scope">
+ <span>{{scope.$index + 1}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ align="center" label="淇濆崟鐘舵��" :key="Math.random()">
+ <template slot-scope="{row}">
+ <span :class="'change-status'+row.status" v-if="row.status === 0">寰呯缃�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 1">寰呭鏍�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 2">宸茬敓鏁�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 3 || row.status === 4">鐢宠閫�鍥�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 5 || row.status === 8">宸查��鍥�</span>
+ <span :class="'change-status'+row.status" v-if="row.status === 6">宸插叧闂�</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ align="center"
+ prop="applyCode"
+ label="鎵瑰崟鍙�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="changeNum"
+ align="center"
+ label="鏇存崲娲鹃仯鍗曚綅浜烘暟">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="createDate"
+ align="center"
+ label="鎻愪氦鏃堕棿">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="applyStartTime"
+ align="center"
+ label="鎵瑰崟鐢熸晥璧锋湡">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ align="center"
+ label="鎿嶄綔">
+ <template slot-scope="{row}">
+ <el-button type="text" @click="$refs.OperaApplyChangeUnitDetailWindow.open('鏇存崲娲鹃仯鍗曚綅璇︽儏', row)">鏌ョ湅璇︽儏</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <div class="desc_item_from_page">
+ <el-pagination
+ @current-change="handleCurrentChange"
+ :current-page="currentPage"
+ :page-size="10"
+ layout="total, prev, pager, next, jumper"
+ :total="total">
+ </el-pagination>
+ </div>
+ </div>
+ <div class="desc_item_review">
+ <div class="desc_item_review_label">瀹℃牳娴佺▼</div>
+ <el-timeline :reverse="reverse">
+ <el-timeline-item
+ v-for="(activity, index) in activities"
+ :key="index">
+ <div style="display: flex; flex-direction: column;">
+ <span style="font-size: 16px; font-weight: 400; color: black;">
+ {{activity.title}}
+ <span style="font-size: 16px; font-weight: 400; color: black; margin-left: 10px;" v-if="[1, 2, 5, 6, 9, 11, 22].includes(activity.objType)">
+ {{activity.content}}
+ </span>
+ </span>
+ <span style="margin-top: 5px; font-size: 12px; font-weight: 400; color: #999999;">
+ 鎿嶄綔鍛�-{{activity.creatorName}}锛坽{activity.creatorType == 1 ? activity.companyName: "骞冲彴绔�"}}锛墈{activity.createDate}}
+ </span>
+ </div>
+ </el-timeline-item>
+ </el-timeline>
+ </div>
+ </div>
+ </div>
+ <InsuranceDetails ref="InsuranceDetails" @success="successEvent" />
+ <OperaInsuranceApplyCheckWindow ref="OperaInsuranceApplyCheckWindow" @success="successEvent" />
+ <!-- 浼佷笟鐢宠閫�鍥� -->
+ <applyReturn ref="applyReturn" @success="successEvent" />
+ <!-- 鏂板鎶曚繚 -->
+ <OperaInsuranceApply ref="OperaInsuranceApply" @success="successEvent" />
+ <!-- 鍔犲噺淇濈敵璇� -->
+ <additionSubtractionApplication ref="additionSubtractionApplication" @success="successEvent" />
+ <!-- 鏇存崲娲鹃仯鍗曚綅鐢宠 -->
+ <factoryChange ref="factoryChange" @success="successEvent" />
+ <!-- 鍔犲噺淇濊鎯� -->
+ <OperaApplyChangeDetailWindow ref="OperaApplyChangeDetailWindow" @success="successEvent"/>
+ <!-- 鏇存崲娲鹃仯鍗曚綅璇︽儏 -->
+ <OperaApplyChangeUnitDetailWindow ref="OperaApplyChangeUnitDetailWindow" @success="successEvent"/>
+ <!-- 楠岃瘉鎵嬫満鍙� -->
+ <operaverifyPhoneNumberWindew ref="operaverifyPhoneNumberWindew" @success="goSign" />
+ <template v-slot:footer>
+ <el-button @click="visible=false">杩斿洖</el-button>
+ </template>
+
+ <!-- 淇敼鎵嬫満鍙� -->
+ <el-dialog
+ :title="signTitle"
+ :visible.sync="visiblePhone"
+ width="500px"
+ :modal="false"
+ :show-close="false"
+ :close-on-click-modal="false"
+ center>
+ <el-form :model="form" ref="form" :rules="rules">
+ <el-form-item label="鎵嬫満鍙�" prop="phone">
+ <el-input v-model="form.phone" placeholder="璇疯緭鍏�" disabled v-trim/>
+ </el-form-item>
+ <el-form-item label="楠岃瘉鐮�" prop="code">
+ <div style="width: 100%; display: flex; align-items: center;">
+ <el-input v-model="form.code" placeholder="璇疯緭鍏�" v-trim/>
+ <el-button type="primary" style="margin-left: 15px;" @click="send" v-if="num === 0">鍙戦�侀獙璇佺爜</el-button>
+ <el-button type="primary" style="margin-left: 15px;" v-else>{{num}}s</el-button>
+ </div>
+ </el-form-item>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="goSignDo()">纭� 瀹�</el-button>
+ <el-button @click="visiblePhone=false">鍙� 娑�</el-button>
+ </span>
+ </el-dialog>
+ </GlobalWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+import InsuranceDetails from '@/components/business/InsuranceDetails'
+import OperaInsuranceApplyCheckWindow from '@/components/business/OperaInsuranceApplyCheckWindow'
+import additionSubtractionApplication from '@/components/enterprise/additionSubtractionApplication'
+import factoryChange from '@/components/enterprise/factoryChange'
+import operaverifyPhoneNumberWindew from '@/components/business/operaverifyPhoneNumberWindew'
+import OperaApplyChangeDetailWindow from '@/components/business/OperaApplyChangeDetailWindow'
+import OperaApplyChangeUnitDetailWindow from '@/components/business/OperaApplyChangeUnitDetailWindow'
+
+import applyReturn from '@/components/enterprise/applyReturn'
+import {
+ getDetail,
+ getSignLink,
+ applyDetailPage,
+ exportExcel,
+ applyChagneDetailExcel,
+ applyOpt,
+ getMemberListOnlineSignLink, getSignTBQRSLink
+} from '@/api/business/insuranceApply'
+import { findListByDTO } from '@/api/business/dispatchUnit'
+import { fetchList } from '@/api/business/applyChange'
+import { findListByDTO as worktypeFindListByDTO } from '@/api/business/worktype'
+import OperaInsuranceApply from '@/components/enterprise/OperaInsuranceApplyWindow'
+import { mapState } from 'vuex'
+import {sendSms, validateCode} from "@/api/business/smsEmail";
+
+export default {
+ name: 'OperaWtbApplyShopWindow',
+ extends: BaseOpera,
+ components: {
+ GlobalWindow,
+ InsuranceDetails,
+ OperaInsuranceApplyCheckWindow,
+ applyReturn,
+ OperaInsuranceApply,
+ additionSubtractionApplication,
+ factoryChange,
+ OperaApplyChangeDetailWindow,
+ OperaApplyChangeUnitDetailWindow,
+ operaverifyPhoneNumberWindew
+ },
+ data () {
+ return {
+ // 琛ㄥ崟鏁版嵁
+ dataId: null,
+ signTitle: '鎵嬫満鍙烽獙璇�',
+ model: {},
+ form: {
+ businessId: null,
+ phone: this.$store.state.userInfo.company.phone,
+ code: '',
+ type:0
+ },
+ rules: {
+ code: [
+ { required: true, message: '璇疯緭鍏ラ獙璇佺爜' }
+ ]
+ },
+ num: 0,
+ timer: null,
+ formInline: {
+ applyStatus: '',
+ duId: '',
+ workTypeId: '',
+ memberName: '',
+ end: [],
+ start: [],
+ endTimeE: '',
+ endTimeS: '',
+ startTimeE: '',
+ startTimeS: '',
+ type: ''
+ },
+ visible1: false,
+ visible2: false,
+ visible3: false,
+ visible4: false,
+ visible5: false,
+ visiblePhone: false,
+ reverse: false,
+ radio: 0,
+ activities: [],
+ tableData: [],
+ list: [],
+ list1: [],
+ list2: [],
+ dwList: [],
+ gzList: [],
+ activeName: '0',
+ total: 0,
+ currentPage: 1
+ }
+ },
+ created () {
+ this.config({
+ api: '/business/insuranceApply',
+ 'field.id': 'id'
+ })
+ },
+ computed: {
+ ...mapState(['userInfo'])
+ },
+ methods: {
+ open (title, target) {
+ this.visible = true
+ this.title = title
+ this.model = {}
+ this.dataId = null
+ this.dataId = target.id
+ this.form.businessId = target.id
+ this.formInline.applyStatus = ''
+ this.formInline.duId = ''
+ this.formInline.workTypeId = ''
+ this.formInline.memberName = ''
+ this.formInline.end = ''
+ this.formInline.start = ''
+ this.formInline.endTimeE = ''
+ this.formInline.endTimeS = ''
+ this.formInline.startTimeE = ''
+ this.formInline.startTimeS = ''
+ this.formInline.type = ''
+ this.activeName = '0'
+ this.getDetail()
+ this.getList()
+ this.getDW()
+ this.getGZ()
+ },
+ getSignLink (flag) {
+ if (flag === 0) {
+ this.signTitle = '绛剧讲鏂规纭涔�'
+ } else if (flag === 1) {
+ this.signTitle = '绛剧讲鐢宠鍗�'
+ } else if (flag === 2) {
+ this.signTitle = '绛剧讲鎶曚繚鍗�'
+ }
+ this.form.type = flag
+ this.visiblePhone = true
+ this.$nextTick(() => {
+ this.$refs.form.resetFields()
+ });
+ },
+ goSignDo(){
+ this.$refs.form.validate((valid) => {
+ if (!valid) {
+ return
+ }
+ this.isWorking = true
+ if(this.form.type===0){
+ getSignTBQRSLink(this.form).then(res => {
+ setTimeout(() => {
+ this.visiblePhone=false
+ window.open(res)
+ }, 500)
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ } else if (this.form.type === 1) {
+ getMemberListOnlineSignLink(this.form).then(res => {
+ setTimeout(() => {
+ this.visiblePhone=false
+ window.open(res)
+ }, 500)
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ } else if (this.form.type === 2) {
+ getSignLink(this.dataId).then(res => {
+ setTimeout(() => {
+ this.visiblePhone=false
+ window.open(res)
+ }, 500)
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ }
+ })
+ },
+ send () {
+ sendSms({
+ phone: this.form.phone
+ }).then(res => {
+ this.num = 60
+ this.setTime()
+ })
+ },
+ setTime () {
+ this.timer = setInterval(() => {
+ if (this.num === 0) {
+ clearInterval(this.timer)
+ this.timer = null
+ return
+ }
+ this.num = this.num - 1
+ }, 1000)
+ },
+ // 鍏抽棴璁㈠崟
+ closeOrder () {
+ this.$confirm('纭鍏抽棴姝よ鍗曞悧?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ applyOpt({
+ applyId: this.dataId,
+ optType: 2
+ }).then(res => {
+ this.getDetail()
+ })
+ }).catch(() => {
+
+ })
+ },
+ // 娲鹃仯鍗曚綅
+ getDW () {
+ findListByDTO({ applyId: this.dataId })
+ .then(res => {
+ this.dwList = res
+ })
+ },
+ // 宸ョ
+ getGZ () {
+ worktypeFindListByDTO({
+ id: this.dataId,
+ queryType: 2
+ }).then(res => {
+ this.gzList = res
+ })
+ },
+ resetting () {
+ if (this.activeName === '0') {
+ this.formInline.applyStatus = '0'
+ } else {
+ this.formInline.applyStatus = ''
+ }
+ this.formInline.start = ''
+ this.formInline.startTimeE = ''
+ this.formInline.endTimeE = ''
+ this.list = []
+ this.list1 = []
+ this.list2 = []
+ this.formInline.duId = ''
+ this.formInline.workTypeId = ''
+ this.formInline.memberName = ''
+ this.formInline.end = []
+ this.formInline.end = []
+ this.formInline.endTimeE = ''
+ this.formInline.endTimeS = ''
+ this.formInline.startTimeE = ''
+ this.formInline.startTimeS = ''
+ this.search()
+ },
+ search () {
+ this.currentPage = 1
+ this.getList()
+ },
+ changeStart (e) {
+ if (e.length > 0) {
+ this.formInline.startTimeS = e[0]
+ this.formInline.startTimeE = e[1]
+ } else {
+ this.formInline.startTimeS = ''
+ this.formInline.startTimeE = ''
+ }
+ this.search()
+ },
+ changeEnd (e) {
+ if (e.length > 0) {
+ this.formInline.endTimeS = e[0]
+ this.formInline.endTimeE = e[1]
+ } else {
+ this.formInline.endTimeS = ''
+ this.formInline.endTimeE = ''
+ }
+ this.search()
+ },
+ exportExcel () {
+ if (this.activeName === '0') {
+ exportExcel({
+ capacity: 10,
+ page: this.currentPage,
+ model: {
+ solutionName: this.tableData[0].solutionsName,
+ applyId: this.dataId,
+ applyStatus: this.formInline.applyStatus,
+ duId: this.formInline.duId,
+ workTypeId: this.formInline.workTypeId,
+ memberName: this.formInline.memberName,
+ endTimeE: this.formInline.endTimeE,
+ endTimeS: this.formInline.endTimeS,
+ startTimeE: this.formInline.startTimeE,
+ startTimeS: this.formInline.startTimeS
+ }
+ }).then(response => {
+ this.download(response)
+ })
+ } else {
+ applyChagneDetailExcel({
+ capacity: 10,
+ page: this.currentPage,
+ model: {
+ applyId: this.dataId,
+ applyStatus: this.formInline.applyStatus,
+ duId: this.formInline.duId,
+ workTypeId: this.formInline.workTypeId,
+ memberName: this.formInline.memberName,
+ endTimeE: this.formInline.endTimeE,
+ endTimeS: this.formInline.endTimeS,
+ startTimeE: this.formInline.startTimeE,
+ startTimeS: this.formInline.startTimeS,
+ type: this.formInline.type
+ }
+ }).then(response => {
+ this.download(response)
+ })
+ }
+ },
+ getList () {
+ if (this.activeName === '0') {
+ applyDetailPage({
+ capacity: 10,
+ page: this.currentPage,
+ model: {
+ applyId: this.dataId,
+ applyStatus: this.formInline.applyStatus,
+ duId: this.formInline.duId,
+ workTypeId: this.formInline.workTypeId,
+ memberName: this.formInline.memberName,
+ endTimeE: this.formInline.endTimeE,
+ endTimeS: this.formInline.endTimeS,
+ startTimeE: this.formInline.startTimeE,
+ startTimeS: this.formInline.startTimeS
+ }
+ }).then(res => {
+ this.list = res.records
+ this.total = res.total
+ this.$nextTick(() => {
+ console.log(this.$refs.table)
+ if (this.$refs.table && this.$refs.table.doLayout) {
+ this.$refs.table.doLayout()
+ }
+ })
+ })
+ } else {
+ fetchList({
+ capacity: 10,
+ page: this.currentPage,
+ model: {
+ applyId: this.dataId,
+ status: this.formInline.applyStatus,
+ endTimeE: this.formInline.endTimeS,
+ endTimeS: this.formInline.startTimeS,
+ type: this.formInline.type
+ }
+ }).then(res => {
+ if (this.activeName === '1') {
+ this.list1 = res.records
+ } else if (this.activeName === '2') {
+ this.list2 = res.records
+ }
+ this.total = res.total
+ this.$nextTick(() => {
+ console.log(this.$refs.table)
+ if (this.$refs.table && this.$refs.table.doLayout) {
+ this.$refs.table.doLayout()
+ }
+ })
+ })
+ }
+ },
+ handleClick (e) {
+ this.activeName = e.index
+ if (e.index === '1') {
+ this.formInline.type = 0
+ } else if (e.index === '2') {
+ this.formInline.type = 1
+ }
+ this.resetting()
+ },
+ goSign () {
+ getSignLink(this.dataId).then(res => {
+ setTimeout(() => {
+ window.open(res)
+ }, 500)
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ },
+ viewToubaodan () {
+ if (this.model.toubaodanSignedFile && this.model.toubaodanSignedFile.fileurlFull) {
+ setTimeout(() => {
+ window.open(this.model.toubaodanSignedFile.fileurlFull)
+ }, 500)
+ } else if (this.model.toubaodanFile && this.model.toubaodanFile.fileurlFull) {
+ setTimeout(() => {
+ window.open(this.model.toubaodanFile.fileurlFull)
+ }, 500)
+ }
+ },
+ viewBaoxiandan () {
+ if (this.model.baoxiandanFile && this.model.baoxiandanFile.fileurlFull) {
+ window.open(this.model.baoxiandanFile.fileurlFull)
+ }
+ },
+ viewFanganshu () {
+ if (this.model.fanganFile && this.model.fanganFile.fileurlFull) {
+ window.open(this.model.fanganFile.fileurlFull)
+ }
+ },
+ viewShenqingdan () {
+ if (this.model.shenqingdanFile && this.model.shenqingdanFile.fileurlFull) {
+ window.open(this.model.shenqingdanFile.fileurlFull)
+ }
+ },
+ handleSizeChange (val) {
+ console.log(val)
+ },
+ handleCurrentChange (val) {
+ console.log(val)
+ this.currentPage = val
+ this.getList()
+ },
+ onSubmit () {
+
+ },
+ getDetail () {
+ getDetail(this.dataId).then(res => {
+ this.model = res
+ this.tableData = new Array()
+ this.tableData.push(res)
+ console.log(this.tableData)
+ this.activities = res.applyLogList
+ }).catch(err => {
+ })
+ },
+ successEvent () {
+ // this.visible=false
+ this.getDetail()
+ this.$emit('success')
+ }
+ }
+}
+</script>
+<style scoped>
+ ::v-deep .el-tabs__item{
+ font-weight: 600;
+ }
+</style>
+<style lang="scss" scoped>
+ .form {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ flex-direction: column;
+ .form_span {
+ width: 100%;
+ display: flex;
+ align-items: start;
+ flex-direction: column;
+ margin-bottom: 20px;
+ span {
+ font-size: 14px;
+ &:nth-child(1) {
+ color: black;
+ margin-bottom: 5px;
+ }
+ &:nth-child(2) {
+ color: #8c939d;
+ }
+ }
+ }
+ .form_item {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ margin-bottom: 20px;
+ &:last-child {
+ margin: 0 !important;
+ }
+ .form_item_label {
+ flex-shrink: 0;
+ width: 170px;
+ color: black;
+ font-size: 14px;
+ span {
+ color: red;
+ font-size: 14px;
+ }
+ }
+ .form_item_val {
+ flex: 1;
+ /*height: 40px;*/
+ margin-left: 20px;
+ textarea {
+ width: 100%;
+ height: 70px;
+ border: 1px solid #cbcbcb;
+ padding: 10px;
+ outline: none;
+ box-sizing: border-box;
+ }
+ input {
+ width: 100%;
+ height: 40px;
+ outline: none;
+ border-radius: 5px;
+ border: 1px solid #cbcbcb;
+ padding: 0 20px;
+ box-sizing: border-box;
+ }
+ }
+ }
+ }
+ .desc {
+ width: 100%;
+ .desc_item {
+ width: 100%;
+ display: flex;
+ flex-direction: column;
+ .desc_item_label {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin-bottom: 10px;
+ span {
+ font-size: 14px;
+ color: black;
+ margin-right: 30px;
+ }
+ }
+ .desc_item_from {
+ width: 100%;
+ margin-bottom: 10px;
+ .desc_item_from_page {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: end;
+ margin-top: 10px;
+ }
+ }
+ .desc_item_cate {
+ width: 100%;
+ margin-bottom: 10px;
+ }
+ .desc_item_search {
+ width: 100%;
+ margin-bottom: 20px;
+ }
+ .desc_item_review {
+ width: 100%;
+ .desc_item_review_label {
+ font-size: 20px;
+ color: black;
+ font-weight: bold;
+ margin-bottom: 15px;
+ }
+ }
+ }
+ }
+</style>
diff --git a/company/src/components/business/operaverifyPhoneNumberWindew.vue b/company/src/components/business/operaverifyPhoneNumberWindew.vue
index 85cd927..f218701 100644
--- a/company/src/components/business/operaverifyPhoneNumberWindew.vue
+++ b/company/src/components/business/operaverifyPhoneNumberWindew.vue
@@ -22,80 +22,80 @@
</template>
<script>
- import BaseOpera from '@/components/base/BaseOpera'
- import GlobalWindow from '@/components/common/GlobalWindow'
- import { sendSms, validateCode } from '@/api/business/smsEmail'
- import { mapState } from 'vuex'
- export default {
- name: 'operaverifyPhoneNumberWindew',
- extends: BaseOpera,
- components: { GlobalWindow },
- data () {
- return {
- form: {
- phone: this.$store.state.userInfo.company.phone,
- code: ''
- },
- rules: {
- code: [
- { required: true, message: '璇疯緭鍏ラ獙璇佺爜' }
- ]
- },
- num: 0,
- timer: null
- }
- },
- computed: {
- ...mapState(['userInfo'])
- },
- methods: {
- open (title) {
- this.title = title
- this.num = 0
- clearInterval(this.timer)
- this.timer = null
- this.visible = true
- this.$nextTick(() => {
- this.$refs.form.resetFields()
- })
- },
- send () {
- sendSms({
- phone: this.form.phone
- }).then(res => {
- this.num = 60
- this.setTime()
- })
- },
- setTime () {
- this.timer = setInterval(() => {
- if (this.num === 0) {
- clearInterval(this.timer)
- this.timer = null
- return
- }
- this.num = this.num - 1
- }, 1000)
- },
- confirm () {
- this.$refs.form.validate((valid) => {
- if (!valid) {
- return
- }
- this.isWorking = true
- validateCode({
- code: this.form.code
- }).then(res => {
- this.visible = false
- this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
- this.$emit('success')
- }).catch(e => {
- this.$tip.apiFailed(e)
- }).finally(() => {
- this.isWorking = false
- })
- })
- }
- }
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+import { sendSms, validateCode } from '@/api/business/smsEmail'
+import { mapState } from 'vuex'
+export default {
+ name: 'operaverifyPhoneNumberWindew',
+ extends: BaseOpera,
+ components: { GlobalWindow },
+ data () {
+ return {
+ form: {
+ phone: this.$store.state.userInfo.company.phone,
+ code: ''
+ },
+ rules: {
+ code: [
+ { required: true, message: '璇疯緭鍏ラ獙璇佺爜' }
+ ]
+ },
+ num: 0,
+ timer: null
}
+ },
+ computed: {
+ ...mapState(['userInfo'])
+ },
+ methods: {
+ open (title) {
+ this.title = title
+ this.num = 0
+ clearInterval(this.timer)
+ this.timer = null
+ this.visible = true
+ this.$nextTick(() => {
+ this.$refs.form.resetFields()
+ })
+ },
+ send () {
+ sendSms({
+ phone: this.form.phone
+ }).then(res => {
+ this.num = 60
+ this.setTime()
+ })
+ },
+ setTime () {
+ this.timer = setInterval(() => {
+ if (this.num === 0) {
+ clearInterval(this.timer)
+ this.timer = null
+ return
+ }
+ this.num = this.num - 1
+ }, 1000)
+ },
+ confirm () {
+ this.$refs.form.validate((valid) => {
+ if (!valid) {
+ return
+ }
+ this.isWorking = true
+ validateCode({
+ code: this.form.code
+ }).then(res => {
+ this.visible = false
+ this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
+ this.$emit('success')
+ }).catch(e => {
+ this.$tip.apiFailed(e)
+ }).finally(() => {
+ this.isWorking = false
+ })
+ })
+ }
+ }
+}
</script>
diff --git a/company/src/components/common/MenuSelect.vue b/company/src/components/common/MenuSelect.vue
index 5cfa78e..5cdb3a9 100644
--- a/company/src/components/common/MenuSelect.vue
+++ b/company/src/components/common/MenuSelect.vue
@@ -43,6 +43,9 @@
}
},
watch: {
+ type: function (newVal, oldVal) {
+ this.type = newVal
+ },
excludeId () {
this.fetchData()
}
@@ -50,7 +53,7 @@
methods: {
// 鑾峰彇鎵�鏈夎彍鍗�
fetchData () {
- if (this.type == '1' || this.type == '2') {
+ if (this.type == '1' || this.type == '2') {
fetchTree1(this.type)
.then(records => {
this.data = []
diff --git a/company/src/components/common/UploadFile.vue b/company/src/components/common/UploadFile.vue
index 03d73b0..9218330 100644
--- a/company/src/components/common/UploadFile.vue
+++ b/company/src/components/common/UploadFile.vue
@@ -1,6 +1,7 @@
<template>
<div>
<el-upload
+ ref="uploadFileBtn"
class="upload-demo"
:accept="uploadData.fileTyp"
:action="uploadImgUrl"
@@ -11,8 +12,8 @@
:on-error="uploadError"
:before-upload="beforeFileUpload"
:file-list="fileList">
- <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
- <div slot="tip" class="el-upload__tip">鍙兘涓婁紶{{ uploadData.fileType }}鏂囦欢锛屼笖涓嶈秴杩�5mb</div>
+ <el-button size="small" type="primary" >鐐瑰嚮涓婁紶</el-button>
+ <div style="display: inline-block" slot="tip" class="el-upload__tip">(鍙兘涓婁紶{{ uploadData.fileType }}鏂囦欢锛屼笖涓嶈秴杩�5mb)</div>
</el-upload>
</div>
@@ -21,6 +22,10 @@
<script>
export default {
props: {
+ fileList:{
+ type: Array,
+ default: () => []
+ },
file: {
type: Object,
default: () => {}
@@ -28,40 +33,50 @@
tipsLabel: '',
customStyle: {
type: String,
- default: 'width: 190px; height: 190px;'
+ default: 'width: 190px; height: 190px;'
},
uploadData: Object
},
data() {
return {
- fileList:null,
+ // fileList:[],
uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/public/upload?folder='+this.uploadData.folder
}
},
-
+ watch: {
+ fileList (nv,ov) {
+ if(this.fileList ==null){
+ this.fileList = new Array();
+ }
+ // alert(this.fileList)
+ }
+ },
methods: {
removes() {
this.$emit('remove')
},
// 涓婁紶鍥剧墖
- handleExceed(){},
+ handleExceed(){
+ this.$message.error('鍙厑璁镐笂浼�1涓枃浠讹紝璇峰垹闄ゅ凡浼犳枃浠讹紝閲嶈瘯锛�')
+ },
handleFileSuccess(res, file) {
if (res.code == 200) {
let { data } = res
// this.fileList = [{name: data.originname, url: data.url }]
this.$message.success('涓婁紶鎴愬姛')
- this.$emit('uploadSuccess', { fileurl: data.imgaddr, fileurlFull: data.url, name: data.originname })
+ this.$emit('uploadSuccess', { fileurl: data.imgaddr, fileurlFull: data.url, name: data.originname })
} else {
- this.$tip.apiFailed('涓婁紶澶辫触')
+ this.$message.apiFailed('涓婁紶澶辫触')
}
this.$emit('uploadEnd')
},
uploadError() {
- this.$tip.apiFailed('涓婁紶澶辫触')
+ this.$message.apiFailed('涓婁紶澶辫触')
this.$emit('endUpload')
},
// // 鎷︽埅
beforeFileUpload(file) {
+
this.$emit('uploadBegin')
return true
}
@@ -81,7 +96,7 @@
cursor: pointer;
position: relative;
width: $image-width;
- height: $image-width;
+ height: auto;
overflow: hidden;
}
.avatar-uploader .el-upload:hover {
diff --git a/company/src/views/business/insuranceApplyShop.vue b/company/src/views/business/insuranceApplyShop.vue
index 6b641ff..21de88b 100644
--- a/company/src/views/business/insuranceApplyShop.vue
+++ b/company/src/views/business/insuranceApplyShop.vue
@@ -4,6 +4,7 @@
<el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
<el-form-item label="淇濆崟鐘舵��" prop="statusCollect">
<el-select v-model="searchForm.statusCollect" placeholder="璇烽�夋嫨" @keypress.enter.native="search">
+<<<<<<< HEAD
<el-option label="寰呭鏍�" value="0"></el-option>
<el-option label="寰呭嚭鍗�" value="1"></el-option>
<el-option label="寰呯缃�" value="7"></el-option>
@@ -12,6 +13,15 @@
<el-option label="宸查��鍥�" value="4"></el-option>
<el-option label="閫�鍥炵敵璇蜂腑" value="5"></el-option>
<el-option label="宸插叧闂�" value="6"></el-option>
+=======
+ <el-option label="寰呯缃�" value="28"></el-option>
+ <el-option label="寰呭鏍�" value="22"></el-option>
+ <el-option label="寰呭嚭鍗�" value="23"></el-option>
+ <el-option label="宸查��鍥�" value="24"></el-option>
+ <el-option label="宸插叧闂�" value="25"></el-option>
+ <el-option label="鎶曚繚涓�" value="26"></el-option>
+ <el-option label="淇濋殰涓�" value="27"></el-option>
+>>>>>>> 2ce7d1d9934f97604ff00b1789dd3628d814dd60
</el-select>
</el-form-item>
<el-form-item label="鎶曚繚浼佷笟" prop="companyId">
@@ -64,7 +74,7 @@
</el-table-column>
<el-table-column prop="statusInfo" label="鎶曚繚鐘舵��" min-width="100px">
<template slot-scope="{row}">
- <span :class="'apply-status'+row.status" >{{row.statusInfo}}</span>
+ <span :class="'apply-status'+row.statusCollect" >{{row.statusInfo}}</span>
</template>
</el-table-column>
<el-table-column prop="companyName" label="鎶曚繚浼佷笟" min-width="100px"></el-table-column>
@@ -79,7 +89,7 @@
fixed="right"
>
<template slot-scope="{row}">
- <el-button type="text" @click="$refs.operaInsuranceApplyShopWindow.open('濮旀墭鎶曚繚璇︽儏', row)" icon="el-icon-edit" v-permissions="['business:insuranceapply:update']">鏌ョ湅璇︽儏</el-button>
+ <el-button type="text" @click="$refs.operaWtbApplyShopWindow.open('濮旀墭鎶曚繚璇︽儏', row)" icon="el-icon-edit" v-permissions="['business:insuranceapply:update']">鏌ョ湅璇︽儏</el-button>
</template>
</el-table-column>
</el-table>
@@ -91,7 +101,7 @@
</pagination>
</template>
<!-- 鏂板缓/淇敼 -->
- <OperaInsuranceApplyShopWindow ref="operaInsuranceApplyShopWindow" @success="handlePageChange"/>
+ <OperaWtbApplyShopWindow ref="operaWtbApplyShopWindow" @success="handlePageChange"/>
</TableLayout>
</template>
@@ -101,11 +111,11 @@
import Pagination from '@/components/common/Pagination'
import { all as solutionAll } from '@/api/business/solutions'
import { pageAll as companyAll } from '@/api/business/company'
-import OperaInsuranceApplyShopWindow from '@/components/business/OperaInsuranceApplyShopWindow'
+import OperaWtbApplyShopWindow from '@/components/business/OperaWtbApplyShopWindow'
export default {
name: 'InsuranceApply',
extends: BaseTable,
- components: { TableLayout, Pagination, OperaInsuranceApplyShopWindow },
+ components: { TableLayout, Pagination, OperaWtbApplyShopWindow },
data () {
return {
// 鎼滅储
diff --git a/company/src/views/enterprise/insuranceApply.vue b/company/src/views/enterprise/insuranceApply.vue
index 99b8b8d..f5aadd4 100644
--- a/company/src/views/enterprise/insuranceApply.vue
+++ b/company/src/views/enterprise/insuranceApply.vue
@@ -12,6 +12,7 @@
<el-option label="宸查��鍥�" value="4"></el-option>
<el-option label="閫�鍥炵敵璇蜂腑" value="5"></el-option>
<el-option label="宸插叧闂�" value="6"></el-option>
+ <el-option label="鎶曚繚涓�" value="25"></el-option>
</el-select>
</el-form-item>
<el-form-item label="淇濋櫓鏂规" prop="baseSolutionId">
@@ -61,6 +62,12 @@
</template>
</el-table-column>
<el-table-column prop="solutionsName" label="淇濋櫓鏂规"></el-table-column>
+ <el-table-column label="绫诲瀷">
+ <template slot-scope="{row}">
+ <span style="color: #00BA92" v-if="row.solutionType == 1">濮旀墭鎶曚繚</span>
+ <span style="color: #F95601;" v-else>鐩存帴鎶曚繚</span>
+ </template>
+ </el-table-column>
<el-table-column prop="insureNum" label="鎶曚繚浜烘暟"></el-table-column>
<el-table-column label="鎶曚繚鏃堕暱锛堝ぉ锛�">
<template slot-scope="{row}">
@@ -78,7 +85,7 @@
fixed="right"
>
<template slot-scope="{row}">
- <el-button type="text" @click="$refs.OperaInsuranceApplyDetails.open('鎶曚繚璇︽儏', { id: row.id })" v-permissions="['business:insuranceapply:update']">鏌ョ湅璇︽儏</el-button>
+ <el-button type="text" @click="godetail(row)" v-permissions="['business:insuranceapply:update']">鏌ョ湅璇︽儏</el-button>
</template>
</el-table-column>
</el-table>
@@ -91,6 +98,7 @@
</template>
<!-- 鏂板鎶曚繚 -->
<OperaInsuranceApplyWindow ref="OperaInsuranceApplyWindow" @success="handlePageChange" />
+ <OperaWtbApplyShopWindow ref="OperaWtbApplyShopWindow" @success="handlePageChange" />
<!-- 鎶曚繚璇︽儏 -->
<OperaInsuranceApplyDetails ref="OperaInsuranceApplyDetails" @success="handlePageChange" />
</TableLayout>
@@ -102,40 +110,48 @@
import Pagination from '@/components/common/Pagination'
import OperaInsuranceApplyWindow from '@/components/enterprise/OperaInsuranceApplyWindow'
import OperaInsuranceApplyDetails from '@/components/business/OperaInsuranceApplyWindow'
+import OperaWtbApplyShopWindow from '@/components/business/OperaWtbApplyShopWindow'
-import { all as solutionAll} from '@/api/business/solutions'
+import { all as solutionAll } from '@/api/business/solutions'
export default {
- name: 'InsuranceApply',
- extends: BaseTable,
- components: { TableLayout, Pagination, OperaInsuranceApplyWindow, OperaInsuranceApplyDetails },
- data () {
- return {
- // 鎼滅储
- searchForm: {
- createTimeS: '',
- createTimeE: '',
- baseSolutionId: '',
- statusCollect: ''
- },
- solutionList:[]
- }
- },
- created () {
- this.config({
- module: '鎶曚繚鐢宠淇℃伅琛�',
- api: '/business/insuranceApply',
- 'field.id': 'id',
- 'field.main': 'id'
- })
- this.search()
- this.loadSelectList()
- },
- methods:{
- loadSelectList() {
- solutionAll({ dataType:2}).then(res => {
- this.solutionList = res
- })
- }
+ name: 'InsuranceApply',
+ extends: BaseTable,
+ components: { TableLayout, Pagination, OperaInsuranceApplyWindow, OperaInsuranceApplyDetails,OperaWtbApplyShopWindow },
+ data () {
+ return {
+ // 鎼滅储
+ searchForm: {
+ createTimeS: '',
+ createTimeE: '',
+ baseSolutionId: '',
+ statusCollect: ''
+ },
+ solutionList: []
}
+ },
+ created () {
+ this.config({
+ module: '鎶曚繚鐢宠淇℃伅琛�',
+ api: '/business/insuranceApply',
+ 'field.id': 'id',
+ 'field.main': 'id'
+ })
+ this.search()
+ this.loadSelectList()
+ },
+ methods: {
+ godetail (row) {
+ if (row.solutionType == 1) {
+ this.$refs.OperaWtbApplyShopWindow.open('濮旀墭鎶曚繚璇︽儏', { id: row.id })
+ } else {
+ this.$refs.OperaInsuranceApplyDetails.open('鎶曚繚璇︽儏', { id: row.id })
+ }
+ },
+ loadSelectList () {
+ solutionAll({ dataType: 2 }).then(res => {
+ this.solutionList = res
+ })
+ }
+ }
}
</script>
diff --git a/company/src/views/enterprise/myPolicy.vue b/company/src/views/enterprise/myPolicy.vue
index 887b8c7..c1289e4 100644
--- a/company/src/views/enterprise/myPolicy.vue
+++ b/company/src/views/enterprise/myPolicy.vue
@@ -87,7 +87,13 @@
</template>
</el-table-column>
<el-table-column prop="solutionsName" label="淇濋櫓鏂规"></el-table-column>
- <el-table-column label="淇濆崟鍙�">
+ <el-table-column label="绫诲瀷">
+ <template slot-scope="{row}">
+ <span style="color: #00BA92" v-if="row.solutionType == 1">濮旀墭鎶曚繚</span>
+ <span style="color: #F95601;" v-else>鐩存帴鎶曚繚</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="淇濆崟鍙�">
<template slot-scope="{row}">
<span>{{row.code ? row.code : '-'}}</span>
</template>
@@ -110,7 +116,7 @@
fixed="right"
>
<template slot-scope="{row}">
- <el-button type="text" @click="$refs.OperaInsuranceApplyDetails.open('鎶曚繚璇︽儏', { id: row.id })" v-permissions="['business:insuranceapply:update']">鏌ョ湅璇︽儏</el-button>
+ <el-button type="text" @click="godetail(row)" v-permissions="['business:insuranceapply:update']">鏌ョ湅璇︽儏</el-button>
<!-- <template v-if="row.statusCollect === 2">-->
<!-- <el-button type="text" @click="$refs.additionSubtractionApplication.open('鍔犲噺淇濈敵璇�', { id: row.id })">鍔犲噺淇濈敵璇�</el-button>-->
<!-- </template>-->
@@ -128,6 +134,7 @@
<OperaInsuranceApplyWindow ref="OperaInsuranceApplyWindow" @success="handlePageChange" />
<!-- 鎶曚繚璇︽儏 -->
<OperaInsuranceApplyDetails ref="OperaInsuranceApplyDetails" @success="handlePageChange" />
+ <OperaWtbApplyShopWindow ref="OperaWtbApplyShopWindow" @success="handlePageChange" />
<!-- 鍔犲噺淇濈敵璇� -->
<additionSubtractionApplication ref="additionSubtractionApplication" @success="handlePageChange" />
<!-- 缁繚寮圭獥 -->
@@ -143,6 +150,7 @@
import OperaInsuranceApplyDetails from '@/components/business/OperaInsuranceApplyWindow'
import additionSubtractionApplication from '@/components/enterprise/additionSubtractionApplication'
import renewalInsurance from '@/components/enterprise/renewalInsurance'
+ import OperaWtbApplyShopWindow from '@/components/business/OperaWtbApplyShopWindow'
import { all as solutionAll} from '@/api/business/solutions'
import { getCaptcha, closeApplyNotice } from '@/api/business/notices'
@@ -155,7 +163,8 @@
OperaInsuranceApplyWindow,
OperaInsuranceApplyDetails,
renewalInsurance,
- additionSubtractionApplication
+ additionSubtractionApplication,
+ OperaWtbApplyShopWindow
},
data () {
return {
@@ -190,6 +199,13 @@
this.getNum()
},
methods:{
+ godetail (row) {
+ if (row.solutionType == 1) {
+ this.$refs.OperaWtbApplyShopWindow.open('濮旀墭鎶曚繚璇︽儏', { id: row.id })
+ } else {
+ this.$refs.OperaInsuranceApplyDetails.open('鎶曚繚璇︽儏', { id: row.id })
+ }
+ },
see() {
this.searchForm.statusCollect = '7'
this.search()
diff --git a/server/company/src/main/java/com/doumee/api/business/ApplyChangeController.java b/server/company/src/main/java/com/doumee/api/business/ApplyChangeController.java
index ac9af61..4d4e470 100644
--- a/server/company/src/main/java/com/doumee/api/business/ApplyChangeController.java
+++ b/server/company/src/main/java/com/doumee/api/business/ApplyChangeController.java
@@ -8,10 +8,7 @@
import com.doumee.core.model.PageWrap;
import com.doumee.core.model.PageData;
import com.doumee.core.utils.Constants;
-import com.doumee.dao.business.dto.ApplyChangeCyclePriceDTO;
-import com.doumee.dao.business.dto.ApplyChangeOptDTO;
-import com.doumee.dao.business.dto.CountCyclePriceDTO;
-import com.doumee.dao.business.dto.InsuranceApplyOptDTO;
+import com.doumee.dao.business.dto.*;
import com.doumee.dao.business.model.ApplyChange;
import com.doumee.dao.business.vo.CountCyclePriceVO;
import com.doumee.service.business.ApplyChangeService;
@@ -134,10 +131,10 @@
}
@ApiOperation("鎶曚繚纭涔︾绔犱笟鍔�")
- @GetMapping("/getChangeMemberListOnlineSignLink/{id}")
+ @PostMapping("/getChangeMemberListOnlineSignLink")
@RequiresPermissions("business:applychange:query")
- public ApiResponse<String> getChangeMemberListOnlineSignLink(@PathVariable Integer id) {
- return ApiResponse.success(applyChangeService.getChangeMemberListOnlineSignLink(id));
+ public ApiResponse<String> getChangeMemberListOnlineSignLink(@RequestBody SmsCheckDTO smsCheckDTO) {
+ return ApiResponse.success(applyChangeService.getChangeMemberListOnlineSignLink(smsCheckDTO));
}
}
diff --git a/server/company/src/main/java/com/doumee/api/business/InsuranceApplyController.java b/server/company/src/main/java/com/doumee/api/business/InsuranceApplyController.java
index 007be44..a8180c8 100644
--- a/server/company/src/main/java/com/doumee/api/business/InsuranceApplyController.java
+++ b/server/company/src/main/java/com/doumee/api/business/InsuranceApplyController.java
@@ -9,6 +9,7 @@
import com.doumee.dao.business.dto.CountCyclePriceDTO;
import com.doumee.dao.business.dto.InsuranceApplyOptDTO;
import com.doumee.dao.business.dto.InsuranceApplyQueryDTO;
+import com.doumee.dao.business.dto.SmsCheckDTO;
import com.doumee.dao.business.model.InsuranceApply;
import com.doumee.dao.business.vo.CountCyclePriceVO;
import com.doumee.service.business.InsuranceApplyService;
@@ -151,20 +152,24 @@
}
-
- @ApiOperation("鎶曚繚纭涔︾绔犱笟鍔�")
- @GetMapping("/getSignTBQRSLink/{id}")
+ @ApiOperation("鏂规纭涔︾绔犱笟鍔�")
+ @PostMapping("/signTBQRSLink")
@RequiresPermissions("business:insuranceapply:query")
- public ApiResponse<String> getSignTBQRSLink(@PathVariable Integer id) {
- return ApiResponse.success(insuranceApplyService.getSignTBQRSLink(id));
+ public ApiResponse<String> getSignTBQRSLink(@RequestBody SmsCheckDTO smsCheckDTO) {
+ return ApiResponse.success(insuranceApplyService.getSignTBQRSLink(smsCheckDTO));
+ }
+ @ApiOperation("浜哄憳鍚嶅崟绛剧珷")
+ @PostMapping("/getMemberListOnlineSignLink")
+ @RequiresPermissions("business:insuranceapply:query")
+ public ApiResponse<String> getMemberListOnlineSignLink(@RequestBody SmsCheckDTO smsCheckDTO) {
+ return ApiResponse.success(insuranceApplyService.getMemberListOnlineSignLink(smsCheckDTO));
}
-
- @ApiOperation("浜哄憳鍚嶅崟绛剧珷")
- @GetMapping("/getMemberListOnlineSignLink/{id}")
+ @ApiOperation("鎶曚繚鐢宠鍗曠绔犱笟鍔�")
+ @PostMapping("/getSignWTBTBDLink")
@RequiresPermissions("business:insuranceapply:query")
- public ApiResponse<String> getMemberListOnlineSignLink(@PathVariable Integer id) {
- return ApiResponse.success(insuranceApplyService.getMemberListOnlineSignLink(id));
+ public ApiResponse<String> getSignWTBTBDLink(@RequestBody SmsCheckDTO smsCheckDTO) {
+ return ApiResponse.success(insuranceApplyService.getSignWTBTBDLink(smsCheckDTO));
}
diff --git a/server/company/src/main/java/com/doumee/api/business/UnionApplyController.java b/server/company/src/main/java/com/doumee/api/business/UnionApplyController.java
index 7fdc5ec..9181c55 100644
--- a/server/company/src/main/java/com/doumee/api/business/UnionApplyController.java
+++ b/server/company/src/main/java/com/doumee/api/business/UnionApplyController.java
@@ -82,55 +82,6 @@
ExcelExporter.build(UnionApply.class).export(unionApplyService.findPage(pageWrap).getRecords(), "鍚堝苟鎶曚繚鍗曚俊鎭〃", response);
}
- @ApiOperation("鏍规嵁ID鏌ヨ")
- @GetMapping("/{id}")
- @RequiresPermissions("business:unionapply:query")
- public ApiResponse findById(@PathVariable Integer id) {
- return ApiResponse.success(unionApplyService.findById(id));
- }
-
-
- @PreventRepeat
- @ApiOperation("鍒涘缓鍚堝苟鍗�")
- @PostMapping("/merge")
- @RequiresPermissions("business:unionapply:create")
- public ApiResponse merge(@RequestBody SaveUnionApplyDTO saveUnionApplyDTO) {
- return ApiResponse.success(unionApplyService.merge(saveUnionApplyDTO));
- }
-
- @ApiOperation("鍏抽棴鍚堝苟鍗�")
- @GetMapping("/close")
- @RequiresPermissions("business:unionapply:close")
- public ApiResponse close(@RequestParam Integer id) {
- unionApplyService.cancelMerge(id);
- return ApiResponse.success(null);
- }
-
- @PreventRepeat
- @ApiOperation("涓婁紶鎶曚繚鍗�")
- @PostMapping("/uploadToubaodan")
- @RequiresPermissions("business:unionapply:create")
- public ApiResponse uploadToubaodan(@RequestBody UploadMultifileDTO uploadMultifileDTO) {
- unionApplyService.uploadToubaodan(uploadMultifileDTO);
- return ApiResponse.success(null);
- }
-
- @ApiOperation("绛剧讲鐢宠鍗�")
- @GetMapping("/getSignLink")
- @RequiresPermissions("business:unionapply:query")
- public ApiResponse getSignLink(@RequestParam Integer id) {
- unionApplyService.getSignLink(id);
- return ApiResponse.success(null);
- }
-
-
- @ApiOperation("涓婁紶淇濋櫓鍗�")
- @PostMapping("/uploadBXD")
- @RequiresPermissions("business:unionchange:query")
- public ApiResponse uploadBXD(@RequestBody UnionApplyBXDDTO unionApplyBXDDTO) {
- unionApplyService.uploadBXD(unionApplyBXDDTO);
- return ApiResponse.success(null);
- }
}
diff --git a/server/company/src/main/java/com/doumee/api/business/UnionChangeController.java b/server/company/src/main/java/com/doumee/api/business/UnionChangeController.java
index 7098f83..1f5e10a 100644
--- a/server/company/src/main/java/com/doumee/api/business/UnionChangeController.java
+++ b/server/company/src/main/java/com/doumee/api/business/UnionChangeController.java
@@ -90,40 +90,4 @@
return ApiResponse.success(unionChangeService.findById(id));
}
- @PreventRepeat
- @ApiOperation("鍒涘缓鍚堝苟鍗�")
- @PostMapping("/merge")
- @RequiresPermissions("business:unionchange:create")
- public ApiResponse merge(@RequestBody SaveUnionChangeDTO saveUnionChangeDTO) {
- return ApiResponse.success(unionChangeService.merge(saveUnionChangeDTO));
- }
-
-
- @ApiOperation("鍏抽棴鍚堝苟鍗�")
- @GetMapping("/close")
- @RequiresPermissions("business:unionchange:close")
- public ApiResponse close(@RequestParam Integer id) {
- unionChangeService.cancelMerge(id);
- return ApiResponse.success(null);
- }
-
-
- @ApiOperation("绛剧讲鐢宠鍗�")
- @GetMapping("/getSignLink")
- @RequiresPermissions("business:unionchange:query")
- public ApiResponse getSignLink(@RequestParam Integer id) {
- unionChangeService.getSignLink(id);
- return ApiResponse.success(null);
- }
-
-
-
- @ApiOperation("涓婁紶淇濋櫓鍗�")
- @PostMapping("/uploadBXD")
- @RequiresPermissions("business:unionchange:query")
- public ApiResponse uploadBXD(@RequestBody UnionChangeBXDDTO unionChangeBXDDTO) {
- unionChangeService.uploadBXD(unionChangeBXDDTO);
- return ApiResponse.success(null);
- }
-
}
diff --git a/server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java b/server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
index 4b9bd83..207b8d2 100644
--- a/server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
+++ b/server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
@@ -3,10 +3,8 @@
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.utils.Constants;
-import com.doumee.dao.business.model.ApplyChagneDetail;
-import com.doumee.dao.business.model.ApplyChange;
-import com.doumee.dao.business.model.ApplyDetail;
-import com.doumee.dao.business.model.InsuranceApply;
+import com.doumee.dao.business.model.*;
+import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import lombok.AllArgsConstructor;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
@@ -26,6 +24,7 @@
import java.nio.charset.Charset;
import java.text.SimpleDateFormat;
import java.util.*;
+import java.util.stream.Collectors;
/**
* Excel瀵煎嚭瀹炵幇
@@ -1278,4 +1277,376 @@
private Field field;
}
+
+
+ /**
+ * 瀵煎嚭 鍚堝苟鍗� 鎹㈠巶 鐢宠璇﹀崟
+ * @param data 鏁版嵁
+ * @param sheetName Sheet鍚嶇О
+ */
+ public String exportUnionChangeOtherUnitExcelToPdf (UnionChange data, String sheetName) {
+ SXSSFWorkbook sxssfWorkbook;
+ try {
+ sxssfWorkbook = new SXSSFWorkbook();
+ Sheet sheet = sxssfWorkbook.createSheet(sheetName);
+ for (int i = 0; i < 8; i++) {
+ sheet.setColumnWidth(i, ((i==3|| i== 4|| i== 5 ||i== 6 || i==7)?16:8) * 2 * 256);
+ }
+ sheet.createFreezePane(0, 1);
+ sheet.addMergedRegion(new CellRangeAddress(0 ,0,0,7));
+ Row title = sheet.createRow(0);
+ title.setHeight((short) 2000);
+ Cell c = title.createCell(0);
+ c.setCellValue(sheetName);
+ configFirstCell(sxssfWorkbook,c);
+ for (int i = 0; i < 8; i++) {
+ if(i>0){
+ title.createCell(i).setCellValue("");
+ }
+ configTitleCell(sxssfWorkbook,title.getCell(i));
+ }
+ Row header1 = sheet.createRow(1);
+ header1.createCell(0).setCellValue("鎶曚繚浜�");
+ header1.createCell(1).setCellValue("淇濋櫓鏂规");
+ header1.createCell(2).setCellValue("");
+ header1.createCell(3).setCellValue("");
+ header1.createCell(4).setCellValue("淇濆崟鍙�");
+ header1.createCell(5).setCellValue("淇濋櫓鐢熸晥璧锋湡");
+ header1.createCell(6).setCellValue("淇濋櫓鐢熸晥姝㈡湡");
+ header1.createCell(7).setCellValue("鎹㈠巶浜烘暟");
+ header1.createCell(8).setCellValue("鏈熸湜鎵瑰崟鐢熸晥鏈�");
+ for (int i = 0; i < 9; i++) {
+ configFirstCell(sxssfWorkbook,header1.getCell(i));
+ }
+ sheet.addMergedRegion(new CellRangeAddress(1 ,1,1,3));
+
+ Row header2 = sheet.createRow(2);
+ header2.createCell(0).setCellValue(data.getShopName());
+ header2.createCell(1).setCellValue(data.getSolutionsName());
+ header2.createCell(2).setCellValue("");
+ header2.createCell(3).setCellValue("");
+ header2.createCell(4).setCellValue(data.getApplyCode());
+ header2.createCell(5).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getStartTime()));
+ header2.createCell(6).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getEndTime()));
+ header2.createCell(7).setCellValue(data.getApplyChagneDetailList().stream().filter(i->i.getType().equals(Constants.TWO)).collect(Collectors.toList()).size());
+ header2.createCell(8).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getApplyStartTime()));
+ sheet.addMergedRegion(new CellRangeAddress(2 ,2,1,3));
+ for (int i = 0; i < 9; i++) {
+ configDataCell(sxssfWorkbook,header2.getCell(i));
+ }
+
+
+ Row header3 = sheet.createRow(3);
+ header3.createCell(0).setCellValue("琚繚闄╀汉");
+ header3.createCell(1).setCellValue(data.getCompanyNames());
+ header3.createCell(2).setCellValue("");
+ header3.createCell(3).setCellValue("");
+ header3.createCell(4).setCellValue("");
+ header3.createCell(5).setCellValue("");
+ header3.createCell(6).setCellValue("");
+ header3.createCell(7).setCellValue("");
+ header3.createCell(8).setCellValue("");
+ for (int i = 0; i < 9; i++) {
+ configFirstCell(sxssfWorkbook,header3.getCell(i));
+ }
+ sheet.addMergedRegion(new CellRangeAddress(3 ,3,1,8));
+
+
+ Row header4 = sheet.createRow(4);
+ header4.createCell(0).setCellValue("搴忓彿");
+ header4.createCell(1).setCellValue("鍛樺伐濮撳悕");
+ header4.createCell(2).setCellValue("鎬у埆");
+ header4.createCell(3).setCellValue("韬唤璇佸彿");
+ header4.createCell(4).setCellValue("琚繚闄╀汉");
+ header4.createCell(5).setCellValue("鍘熸淳閬e崟浣�");
+ header4.createCell(6).setCellValue("鍘熸墍鎵�灞炲伐绉�");
+ header4.createCell(7).setCellValue("鏇存敼鍚庢淳閬e崟浣�");
+ header4.createCell(8).setCellValue("鏇存敼鍚庢墍灞炲伐绉�");
+ for (int i = 0; i < 9; i++) {
+ configFirstCell(sxssfWorkbook,header4.getCell(i));
+ }
+
+ List<ApplyChagneDetail> otherChangeDetailList = data.getApplyChagneDetailList().stream().filter(i->i.getType().equals(Constants.TWO)).collect(Collectors.toList());
+
+ Integer row = 4;
+
+ if(CollectionUtils.isNotEmpty(otherChangeDetailList)){
+ row = row + 1;
+ Row header5 = sheet.createRow(row);
+ header5.createCell(0).setCellValue("搴忓彿");
+ header5.createCell(1).setCellValue("鍛樺伐濮撳悕");
+ header5.createCell(2).setCellValue("鎬у埆");
+ header5.createCell(3).setCellValue("韬唤璇佸彿");
+ header5.createCell(4).setCellValue("琚繚闄╀汉");
+ header5.createCell(5).setCellValue("鍘熸淳閬e崟浣�");
+ header5.createCell(6).setCellValue("鍘熸墍灞炲伐绉�");
+ header5.createCell(7).setCellValue("鏇存敼鍚庢淳閬e崟浣�");
+ header5.createCell(8).setCellValue("鏇存敼鍚庢墍灞炲伐绉�");
+ for (int i = 0; i < 9; i++) {
+ configFirstCell(sxssfWorkbook,header5.getCell(i));
+ }
+ for (int rowIndex = 0; rowIndex < otherChangeDetailList.size(); rowIndex++) {
+ row = row + 1;
+ Row header6 = sheet.createRow(row);
+ ApplyChagneDetail applyChagneDetail = otherChangeDetailList.get(rowIndex);
+ header6.createCell(0).setCellValue(rowIndex + 1);
+ header6.createCell(1).setCellValue(applyChagneDetail.getMemberName());
+ header6.createCell(2).setCellValue(Constants.equalsInteger(applyChagneDetail.getSex(),0)?"鐢�":(Constants.equalsInteger(applyChagneDetail.getSex(),1)?"濂�":"-"));
+ header6.createCell(3).setCellValue(applyChagneDetail.getIdcardNo());
+ header6.createCell(4).setCellValue(applyChagneDetail.getCompanyName());
+ header6.createCell(5).setCellValue(applyChagneDetail.getOldDuName());
+ header6.createCell(6).setCellValue(applyChagneDetail.getOldWorkTypeName());
+ header6.createCell(7).setCellValue(applyChagneDetail.getDuName());
+ header6.createCell(8).setCellValue(applyChagneDetail.getWorkTypeName());
+ for (int i = 0; i < 9; i++) {
+ configFirstCell(sxssfWorkbook,header6.getCell(i));
+ }
+ }
+ }
+ int rowIndex = row + 1 ;
+ Row header6= sheet.createRow(rowIndex);
+ header6.createCell(0).setCellValue("鎶曚繚浼佷笟鐢虫槑:\n" +
+ "1銆佸湪鐢宠涔︿笂濉啓鐨勪竴鍒囧唴瀹瑰睘瀹烇紝鍚﹀垯鏈紒涓氭壙鎷呬竴鍒囨硶寰嬭矗浠汇�俓n" +
+ "2銆佺敱浜庡彉鏇村彈鐩婁汉浜х敓鐨勬硶寰嬬籂绾锋湰浼佷笟鎰挎壙鎷呬竴鍒囨硶寰嬭矗浠汇�俓n" +
+ "3銆佹湰鐢宠琛ㄧ殑绛剧珷涓烘湰浼佷笟浜茶嚜绛剧讲锛屽鐢辨浜х敓鐨勬硶寰嬬籂绾锋湰浼佷笟鎰挎壙鎷呬竴鍒囨硶寰嬭矗浠汇�俓n");
+ for (int i = 1; i < 9; i++) {
+ header6.createCell(i).setCellValue("");
+ }
+ for (int i =0; i < 9; i++) {
+ if(i>0){
+ header6.createCell(i).setCellValue("");
+ }
+ configInfoCell(sxssfWorkbook,header6.getCell(i),HorizontalAlignment.LEFT);
+ }
+ header6.setHeight((short) 2000);
+ sheet.addMergedRegion(new CellRangeAddress(rowIndex ,rowIndex,0,8));
+ Row header7= sheet.createRow(rowIndex+1);
+ header7.setHeight((short) 3000);
+ header7.createCell(0).setCellValue("鎶曚繚浜虹绔� 锛� \n \n \n" +"鏃ユ湡锛� 骞� 鏈� 鏃� ");
+ for (int i =0; i < 9; i++) {
+ if(i>0){
+ header7.createCell(i).setCellValue("");
+ }
+ configInfoCell(sxssfWorkbook,header7.getCell(i),HorizontalAlignment.RIGHT);
+ }
+ sheet.addMergedRegion(new CellRangeAddress(rowIndex+1 ,rowIndex+1,0,8));
+
+ //涓存椂缂撳啿鍖�
+ ByteArrayOutputStream out = new ByteArrayOutputStream();
+ //鍒涘缓涓存椂鏂囦欢
+ sxssfWorkbook.write(out);
+ byte [] bookByteAry = out.toByteArray();
+ InputStream in = new ByteArrayInputStream(bookByteAry);
+ String tempExcel = saveIsToFile(in);
+ String tempPdf =System.getProperty("java.io.tmpdir")+File.separator+UUID.randomUUID().toString()+".pdf";
+// ExcelToPdfTool.excelToPdf(in,tempPdf);//杞琍DF
+ ExcelToPdfTool.excelToPdf(tempExcel,tempPdf);//杞琍DF
+ File f = new File(tempPdf);
+ if(f!=null && f.isFile() && f.length()>0){
+ return tempPdf;
+ }
+ } catch (Exception e) {
+ // throw new BusinessException(ResponseStatus.EXPORT_EXCEL_ERROR, e);
+ }
+ return null;
+ }
+
+
+
+ /**
+ * 瀵煎嚭 鍚堝苟鍗曞姞鍑忎繚鐢宠璇﹀崟
+ * @param data 鏁版嵁
+ * @param sheetName Sheet鍚嶇О
+ */
+ public String exportUnionChangeExcelToPdf (UnionChange data, String sheetName) {
+ SXSSFWorkbook sxssfWorkbook;
+ try {
+ sxssfWorkbook = new SXSSFWorkbook();
+ Sheet sheet = sxssfWorkbook.createSheet(sheetName);
+ for (int i = 0; i < 12; i++) {
+ sheet.setColumnWidth(i, ((i==3|| i==4|| i== 5 || i==9||i==10|| i==11)?16:8) * 2 * 256);
+ }
+ sheet.createFreezePane(0, 1);
+ sheet.addMergedRegion(new CellRangeAddress(0 ,0,0,11));
+ Row title = sheet.createRow(0);
+ title.setHeight((short) 2000);
+ for (int i = 0; i < 12; i++) {
+ title.createCell(i).setCellValue(i==0?sheetName:"");
+ configTitleCell(sxssfWorkbook,title.getCell(i));
+ }
+ Row header1 = sheet.createRow(1);
+ header1.createCell(0).setCellValue("鎶曚繚浜�");
+ header1.createCell(1).setCellValue("淇濋櫓鏂规");
+ header1.createCell(2).setCellValue("淇濆崟鍙�");
+ header1.createCell(3).setCellValue("淇濋櫓鐢熸晥璧锋湡");
+ header1.createCell(4).setCellValue("淇濋櫓鐢熸晥姝㈡湡");
+ header1.createCell(5).setCellValue("鍔犱繚浜烘暟");
+ header1.createCell(6).setCellValue("鍑忎繚浜烘暟");
+ header1.createCell(7).setCellValue("鏈熸湜鎵瑰崟鐢熸晥鏈�");
+ for (int i = 0; i < 8; i++) {
+ configFirstCell(sxssfWorkbook,header1.getCell(i));
+ }
+
+ Row header2 = sheet.createRow(2);
+ header2.createCell(0).setCellValue(data.getShopName());
+ header2.createCell(1).setCellValue(data.getSolutionsName());
+ header2.createCell(2).setCellValue(data.getApplyCode());
+ header2.createCell(3).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getStartTime()));
+ header2.createCell(4).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getEndTime()));
+ header2.createCell(5).setCellValue(data.getApplyChagneDetailList().stream().filter(i->i.getType().equals(Constants.ZERO)).collect(Collectors.toList()).size());
+ header2.createCell(6).setCellValue(data.getApplyChagneDetailList().stream().filter(i->i.getType().equals(Constants.ONE)).collect(Collectors.toList()).size());
+ header2.createCell(7).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getValidTime()));
+ for (int i = 0; i < 8; i++) {
+ configDataCell(sxssfWorkbook, header2.getCell(i));
+ }
+
+ Row header3 = sheet.createRow(3);
+ header3.createCell(0).setCellValue("琚繚闄╀汉");
+ header3.createCell(1).setCellValue(data.getCompanyNames());
+ header3.createCell(2).setCellValue("");
+ header3.createCell(3).setCellValue("");
+ header3.createCell(4).setCellValue("");
+ header3.createCell(5).setCellValue("");
+ header3.createCell(6).setCellValue("");
+ header3.createCell(7).setCellValue("");
+ for (int i = 0; i < 8; i++) {
+ configFirstCell(sxssfWorkbook,header3.getCell(i));
+ }
+ sheet.addMergedRegion(new CellRangeAddress(3 ,3,1,7));
+
+ Integer row = 4;
+ List<ApplyChagneDetail> addChangeDetailList = data.getApplyChagneDetailList().stream().filter(i->i.getType().equals(Constants.ZERO)).collect(Collectors.toList());
+ if(CollectionUtils.isNotEmpty(addChangeDetailList)){
+ Row header4 = sheet.createRow(row);
+ header4.createCell(0).setCellValue("鍔犱繚浜哄憳");
+ for (int i = 0; i < 8; i++) {
+ configFirstCell(sxssfWorkbook, header4.getCell(i));
+ }
+ sheet.addMergedRegion(new CellRangeAddress(row ,row,0,7));
+ row = row + 1;
+ Row header5 = sheet.createRow(row);
+ header5.createCell(0).setCellValue("搴忓彿");
+ header5.createCell(1).setCellValue("鍛樺伐濮撳悕");
+ header5.createCell(2).setCellValue("鎬у埆");
+ header5.createCell(3).setCellValue("韬唤璇佸彿");
+ header5.createCell(4).setCellValue("琚繚闄╀汉");
+ header5.createCell(5).setCellValue("娲鹃仯鍗曚綅");
+ header5.createCell(6).setCellValue("");
+ header5.createCell(7).setCellValue("鎵�灞炲伐绉�");
+ for (int i = 0; i < 8; i++) {
+ configFirstCell(sxssfWorkbook,header5.getCell(i));
+ }
+ sheet.addMergedRegion(new CellRangeAddress(row ,row,5,6));
+ for (int rowIndex = 0; rowIndex < addChangeDetailList.size(); rowIndex++) {
+ row = row + 1 ;
+ Row header6 = sheet.createRow(row);
+ ApplyChagneDetail applyChagneDetail = addChangeDetailList.get(rowIndex);
+ header6.createCell(0).setCellValue(rowIndex + 1);
+ header6.createCell(1).setCellValue(applyChagneDetail.getMemberName());
+ header6.createCell(2).setCellValue(Constants.equalsInteger(applyChagneDetail.getSex(),0)?"鐢�":(Constants.equalsInteger(applyChagneDetail.getSex(),1)?"濂�":"-"));
+ header6.createCell(3).setCellValue(applyChagneDetail.getIdcardNo());
+ header6.createCell(4).setCellValue(applyChagneDetail.getCompanyName());
+ header6.createCell(5).setCellValue(applyChagneDetail.getDuName());
+ header6.createCell(6).setCellValue("");
+ header6.createCell(7).setCellValue(applyChagneDetail.getWorkTypeName());
+ for (int i = 0; i < 8; i++) {
+ configFirstCell(sxssfWorkbook,header6.getCell(i));
+ }
+ sheet.addMergedRegion(new CellRangeAddress(row ,row,5,6));
+ }
+ }
+
+ List<ApplyChagneDetail> reduceChangeDetailList = data.getApplyChagneDetailList().stream().filter(i->i.getType().equals(Constants.ONE)).collect(Collectors.toList());
+ row = row + 1;
+ if(CollectionUtils.isNotEmpty(reduceChangeDetailList)){
+ Row header4 = sheet.createRow(row);
+ header4.createCell(0).setCellValue("鍑忎繚浜哄憳");
+ for (int i = 0; i < 8; i++) {
+ configFirstCell(sxssfWorkbook, header4.getCell(i));
+ }
+ sheet.addMergedRegion(new CellRangeAddress(row ,row,0,7));
+
+ row = row + 1;
+ Row header5 = sheet.createRow(row);
+ header5.createCell(0).setCellValue("搴忓彿");
+ header5.createCell(1).setCellValue("鍛樺伐濮撳悕");
+ header5.createCell(2).setCellValue("鎬у埆");
+ header5.createCell(3).setCellValue("韬唤璇佸彿");
+ header5.createCell(4).setCellValue("琚繚闄╀汉");
+ header5.createCell(5).setCellValue("娲鹃仯鍗曚綅");
+ header5.createCell(6).setCellValue("");
+ header5.createCell(7).setCellValue("鎵�灞炲伐绉�");
+ for (int i = 0; i < 8; i++) {
+ configFirstCell(sxssfWorkbook,header5.getCell(i));
+ }
+ sheet.addMergedRegion(new CellRangeAddress(row ,row,5,6));
+
+ row = row + 1 ;
+ for (int rowIndex = 0; rowIndex < reduceChangeDetailList.size(); rowIndex++) {
+ row = row + rowIndex;
+ Row header6 = sheet.createRow(row);
+ ApplyChagneDetail applyChagneDetail = reduceChangeDetailList.get(rowIndex);
+ header6.createCell(0).setCellValue(rowIndex + 1);
+ header6.createCell(1).setCellValue(applyChagneDetail.getMemberName());
+ header6.createCell(2).setCellValue(Constants.equalsInteger(applyChagneDetail.getSex(),0)?"鐢�":(Constants.equalsInteger(applyChagneDetail.getSex(),1)?"濂�":"-"));
+ header6.createCell(3).setCellValue(applyChagneDetail.getIdcardNo());
+ header6.createCell(4).setCellValue(applyChagneDetail.getCompanyName());
+ header6.createCell(5).setCellValue(applyChagneDetail.getDuName());
+ header6.createCell(6).setCellValue("");
+ header6.createCell(7).setCellValue(applyChagneDetail.getWorkTypeName());
+ for (int i = 0; i < 8; i++) {
+ configFirstCell(sxssfWorkbook,header6.getCell(i));
+ }
+ sheet.addMergedRegion(new CellRangeAddress(row ,row,5,6));
+ }
+ }
+
+ int rowIndex = row + 1;
+ Row header6= sheet.createRow(rowIndex);
+ header6.createCell(0).setCellValue("鎶曚繚浼佷笟鐢虫槑:\n" +
+ "1銆佸湪鐢宠涔︿笂濉啓鐨勪竴鍒囧唴瀹瑰睘瀹烇紝鍚﹀垯鏈紒涓氭壙鎷呬竴鍒囨硶寰嬭矗浠汇�俓n" +
+ "2銆佺敱浜庡彉鏇村彈鐩婁汉浜х敓鐨勬硶寰嬬籂绾锋湰浼佷笟鎰挎壙鎷呬竴鍒囨硶寰嬭矗浠汇�俓n" +
+ "3銆佹湰鐢宠琛ㄧ殑绛剧珷涓烘湰浼佷笟浜茶嚜绛剧讲锛屽鐢辨浜х敓鐨勬硶寰嬬籂绾锋湰浼佷笟鎰挎壙鎷呬竴鍒囨硶寰嬭矗浠汇�俓n");
+ for (int i = 1; i < 8; i++) {
+ header6.createCell(i).setCellValue("");
+ }
+ for (int i =0; i < 8; i++) {
+ if(i>0){
+ header6.createCell(i).setCellValue("");
+ }
+ configInfoCell(sxssfWorkbook,header6.getCell(i),HorizontalAlignment.LEFT);
+ }
+ header6.setHeight((short) 2000);
+ sheet.addMergedRegion(new CellRangeAddress(rowIndex ,rowIndex,0,11));
+ Row header7= sheet.createRow(rowIndex+1);
+ header7.setHeight((short) 3000);
+ header7.createCell(0).setCellValue("鎶曚繚浜虹绔� 锛� \n \n \n" +"鏃ユ湡锛� 骞� 鏈� 鏃� ");
+ for (int i =0; i < 8; i++) {
+ if(i>0){
+ header7.createCell(i).setCellValue("");
+ }
+ configInfoCell(sxssfWorkbook,header7.getCell(i),HorizontalAlignment.RIGHT);
+ }
+ sheet.addMergedRegion(new CellRangeAddress(rowIndex+1 ,rowIndex+1,0,11));
+
+ //涓存椂缂撳啿鍖�
+ ByteArrayOutputStream out = new ByteArrayOutputStream();
+ //鍒涘缓涓存椂鏂囦欢
+ sxssfWorkbook.write(out);
+ byte [] bookByteAry = out.toByteArray();
+ InputStream in = new ByteArrayInputStream(bookByteAry);
+ String tempExcel = saveIsToFile(in);
+ String tempPdf =System.getProperty("java.io.tmpdir")+File.separator+UUID.randomUUID().toString()+".pdf";
+// ExcelToPdfTool.excelToPdf(in,tempPdf);//杞琍DF
+ ExcelToPdfTool.excelToPdf(tempExcel,tempPdf);//杞琍DF
+ File f = new File(tempPdf);
+ if(f!=null && f.isFile() && f.length()>0){
+ return tempPdf;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ // throw new BusinessException(ResponseStatus.EXPORT_EXCEL_ERROR, e);
+ }
+ return null;
+ }
}
diff --git a/server/service/src/main/java/com/doumee/core/utils/Constants.java b/server/service/src/main/java/com/doumee/core/utils/Constants.java
index bc4bf5c..b609979 100644
--- a/server/service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/service/src/main/java/com/doumee/core/utils/Constants.java
@@ -27,7 +27,8 @@
public static final int ZERO = 0 ;
public static final int ONE = 1 ;
public static final int TWO = 2 ;
- public static final int THREE = 3 ;
+ public static final int
+ THREE = 3 ;
public static final int SEVEN = 7 ;
public static final String ACCESS_ID="ACCESS_ID";
public static final String BUCKETNAME = "BUCKETNAME";
@@ -441,17 +442,14 @@
HBD_BD_APPLY_PDF(15, "鍚堝苟鍗�-淇濆崟鐢宠琛≒DF ", "鍚堝苟鍗�-淇濆崟鐢宠琛≒DF "),
HBD_BD_SIGNED_PDF(16, "鍚堝苟鍗�-绛剧讲鍚庝繚鍗曠敵璇疯〃PDF", "鍚堝苟鍗�-绛剧讲鍚庝繚鍗曠敵璇疯〃PDF"),
- COMPANY_TBD_SIGNED_PDF(17, "鍚堝苟鍗�-鎶曚繚鍗�-鍟嗘埛鎻愪氦锛堜紒涓氱缃诧級", "鍚堝苟鍗�-绛剧讲鍚庝繚鍗曠敵璇疯〃PDF"),
- SOLUTIONS_CONFIRMATION_LATTER(18, "濮旀墭淇� - 鎶曚繚鏂规纭涔�", "濮旀墭淇� - 鏂规纭涔�"),
- MEMBER_LIST_LATTER(19, "濮旀墭淇� - 鎶曚繚浜哄憳鍚嶅崟", "濮旀墭淇� - 鏂规纭涔�"),
- CHANGE_MEMBER_LIST_LATTER(20, "濮旀墭淇� - 鍔犲噺淇濅汉鍛樺悕鍗�", "濮旀墭淇� - 鏂规纭涔�"),
-
-
-
-
-
-
-
+ COMPANY_TBD_SIGNED(17, "鍚堝苟鍗�-鎶曚繚鍗�-鍟嗘埛鎻愪氦", "鍚堝苟鍗�-鎶曚繚鍗�-鍟嗘埛鎻愪氦"),
+ SOLUTIONS_CONFIRMATION_LATTER(18, "鎶曚繚鏂规纭涔�", "鎶曚繚鏂规纭涔�"),
+ MEMBER_LIST_LATTER(19, "濮旀墭淇� - 鎶曚繚浜哄憳鍚嶅崟", "濮旀墭淇� - 鎶曚繚浜哄憳鍚嶅崟"),
+ CHANGE_MEMBER_LIST_LATTER(20, "濮旀墭淇� - 鍔犲噺淇濅汉鍛樺悕鍗�", "濮旀墭淇� - 鍔犲噺淇濅汉鍛樺悕鍗�"),
+ WTB_BD_DONE_PDF(21, "濮旀墭鎶曚繚鍗� - 鍚堝苟鍗曟渶缁堜繚鍗�", "濮旀墭鎶曚繚鍗� - 鍚堝苟鍗曟渶缁堜繚鍗�"),
+ COMPANY_TBD_SIGNED_PDF(22, "鍚堝苟鍗�-鎶曚繚鍗�-鍟嗘埛鎻愪氦锛堜紒涓氱缃诧級PDF", "鍚堝苟鍗�-鎶曚繚鍗�-鍟嗘埛鎻愪氦锛堜紒涓氱缃诧級PDF"),
+ WTB_CA_DONE_PDF(23, "濮旀墭鍔犲噺淇�/鎹㈠巶涓氬姟 - 鍚堝苟鍗曟渶缁堜繚鍗�", "濮旀墭鍔犲噺淇�/鎹㈠巶涓氬姟 - 鍚堝苟鍗曟渶缁堜繚鍗�"),
+ WTB_CONFIRMATION_LATTER(24, "濮旀墭淇� - 鎶曚繚鏂规纭涔�", "濮旀墭淇� - 鎶曚繚鏂规纭涔�"),
;
// 鎴愬憳鍙橀噺
private String name;
@@ -709,6 +707,14 @@
THSQZ(5, "鐢宠閫�鍥�"),
YGB(6, "宸插叧闂�"),
DQYQZ(7, "寰呯缃�"),
+
+ WTBDQS(28, "寰呯缃�"),
+ WTBDSH(22, "寰呭鏍�"),
+ WTBDCD(23, "寰呭嚭鍗�"),
+ WTBYTH(24, "宸查��鍥�"),
+ WTBYGB(25, "宸插叧闂�"),
+ WTBTBZ(26, "鎶曚繚涓�"),
+ WTBBZZ(27, "淇濋殰涓�"),
;
// 鎴愬憳鍙橀噺
private String name;
@@ -780,6 +786,17 @@
CA_JIAJIAN_APPLY_SIGN(23, "鍔犲噺淇濈敵璇蜂紒涓氱绔�","",1),
CA_CHANGUNIT_APPLY_SIGN(24, "鎹㈠巶鐢宠浼佷笟绛剧珷","",1),
CA_UPLOAD_AGAIN(25, "鍐嶆鎶曚繚","",1),
+
+
+ WTB_FINISH_FAQRS(26, "濮旀墭淇� - 浼佷笟瀹屾垚绛剧讲鏂规纭涔�","",0),
+ WTB_FINISH_MEMBER_LIST(27, "濮旀墭淇� - 浼佷笟瀹屾垚绛剧讲浜哄憳鍚嶅崟","",0),
+
+ CA_WTB_FINISH_MEMBER_LIST(28, "濮旀墭淇� - 鍔犲噺淇濈缃蹭汉鍛樺悕鍗�","",1),
+
+
+
+
+
;
// 鎴愬憳鍙橀噺
private String name;
@@ -954,24 +971,22 @@
public enum UnionChangeStatus {
- MERGE(0, "寰呯缃茬敵璇峰崟","",0),
- UPLOAD_INSURANCE_POLICY(1, "寰呬笂浼犱繚鍗�","",0),
- FINISH(2, "淇濋殰涓�","",0),
- CLOSE(3, "鍏抽棴","",0),
+ MERGE(0, "寰呯缃茬敵璇峰崟",""),
+ UPLOAD_INSURANCE_POLICY(1, "寰呬笂浼犱繚鍗�",""),
+ FINISH(2, "淇濋殰涓�",""),
+ CLOSE(3, "鍏抽棴",""),
;
// 鎴愬憳鍙橀噺
private String name;
private String info;
private int key;
- private int collectStatus;
// 鏋勯�犳柟娉�
- UnionChangeStatus(int key, String name,String info,int collectStatus) {
+ UnionChangeStatus(int key, String name,String info) {
this.name = name;
this.key = key;
this.info = info;
- this.collectStatus = collectStatus;
}
// 鏅�氭柟娉�
@@ -979,25 +994,6 @@
for (UnionChangeStatus c : UnionChangeStatus.values()) {
if (c.getKey() == index) {
return c.name;
- }
- }
- return null;
- }
- public static List<Integer> getKesByStatus(Integer collectStatus) {
- List<Integer> list = new ArrayList<>();
- if(collectStatus!=null){
- for (UnionChangeStatus c : UnionChangeStatus.values()) {
- if (Constants.equalsInteger(c.getCollectStatus() ,collectStatus)) {
- list.add(c.getKey());
- }
- }
- }
- return list;
- }
- public static Integer getCollectStatus(Integer index) {
- for (UnionChangeStatus c : UnionChangeStatus.values()) {
- if (Constants.equalsInteger(c.getKey() , index)) {
- return c.collectStatus;
}
}
return null;
@@ -1035,14 +1031,6 @@
public void setInfo(String info) {
this.info = info;
}
-
- public int getCollectStatus() {
- return collectStatus;
- }
-
- public void setCollectStatus(int collectStatus) {
- this.collectStatus = collectStatus;
- }
}
public enum InsuranceApplyStatus {
@@ -1058,8 +1046,18 @@
CLOSE(9, "璁㈠崟鍏抽棴","",6),
PLATFORM_CHECK_PASS(10,"骞冲彴鎶曚繚瀹℃牳閫氳繃","鎻愪氦鎰忚锛�${param}",0),
COMPANY_BACK_APPLY_PASS(11, "浼佷笟鐢宠閫�鍥�(骞冲彴鎶曚繚瀹℃牳閫氳繃)","鎻愪氦鎰忚锛�${param}",5),
- COMPANY_APPLY_SIGNATURE(12, "濮旀墭淇�-浼佷笟宸茬缃叉姇淇濈‘璁や功","鎻愪氦鎰忚锛�${param}",5),
- COMPANY_MEMBER_LIST_SIGNATURE(13, "濮旀墭淇�-浼佷笟宸茬缃蹭汉鍛樺悕鍗�","鎻愪氦鎰忚锛�${param}",5),
+
+
+
+ WTB_UPLOAD(20, "鎻愪氦鎶曚繚","",28),
+ WTB_COMPANY_APPLY_SIGNATURE(21, "濮旀墭淇�-浼佷笟宸茬缃叉姇淇濈‘璁や功","鎻愪氦鎰忚锛�${param}",28),
+ WTB_COMPANY_MEMBER_LIST_SIGNATURE(22, "濮旀墭淇�-浼佷笟宸茬缃蹭汉鍛樺悕鍗�","鎻愪氦鎰忚锛�${param}",22),
+ WTB_BUSINESS_CHECK_PASS(23,"鍟嗘埛鎶曚繚瀹℃牳閫氳繃","鎻愪氦鎰忚锛�${param}",23),
+ WTB_RETURN(24, "宸查��鍥�","鎻愪氦鎰忚锛�${param}",24),
+ WTB_CLOSED(25, "宸插叧闂�","鎻愪氦鎰忚锛�${param}",25),
+ WTB_TOUBAOING(26, "鎶曚繚涓�","鎻愪氦鎰忚锛�${param}",26),
+ WTB_DONE(27, "淇濋殰涓�","鎻愪氦鎰忚锛�${param}",27),
+
;
// 鎴愬憳鍙橀噺
private String name;
diff --git a/server/service/src/main/java/com/doumee/dao/business/dto/ApplyDetailPageDTO.java b/server/service/src/main/java/com/doumee/dao/business/dto/ApplyDetailPageDTO.java
index 1ba8ae8..93dabf6 100644
--- a/server/service/src/main/java/com/doumee/dao/business/dto/ApplyDetailPageDTO.java
+++ b/server/service/src/main/java/com/doumee/dao/business/dto/ApplyDetailPageDTO.java
@@ -50,6 +50,8 @@
private Integer applyId;
@ApiModelProperty(value = "鍔犲噺淇濅富閿�")
private Integer applyChangeId;
+ @ApiModelProperty(value = "鍚堝苟鍗曚富閿�")
+ private Integer unionApplyId;
@ApiModelProperty(value = "绫诲瀷锛�0=鍔犱繚锛�1=鍑忎繚锛�2=鎹㈠巶 ")
private List<Integer> types;
diff --git a/server/service/src/main/java/com/doumee/dao/business/dto/SmsCheckDTO.java b/server/service/src/main/java/com/doumee/dao/business/dto/SmsCheckDTO.java
new file mode 100644
index 0000000..bc8297e
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/dto/SmsCheckDTO.java
@@ -0,0 +1,23 @@
+package com.doumee.dao.business.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+ * @author RenKang
+ */
+@Data
+public class SmsCheckDTO {
+
+ @ApiModelProperty(value = "涓氬姟涓婚敭", example = "1")
+ private Integer businessId;
+
+ @ApiModelProperty(value = "楠岃瘉鐮�")
+ private String code;
+
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/dto/UnionChangeBXDDTO.java b/server/service/src/main/java/com/doumee/dao/business/dto/UnionChangeBXDDTO.java
index b33d8d9..98e0d03 100644
--- a/server/service/src/main/java/com/doumee/dao/business/dto/UnionChangeBXDDTO.java
+++ b/server/service/src/main/java/com/doumee/dao/business/dto/UnionChangeBXDDTO.java
@@ -1,5 +1,6 @@
package com.doumee.dao.business.dto;
+import com.doumee.dao.business.model.Multifile;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -27,9 +28,12 @@
private Date applyDate;
@ApiModelProperty(value = "淇濆崟鏂囦欢鍦板潃")
- private String fileUrl;
+ private String fileurl;
@ApiModelProperty(value = "淇濆崟鏂囦欢鍚嶇О")
- private String fileName;
+ private String name;
+
+ @ApiModelProperty(value = "鍔犲噺淇� 淇濆崟鏂囦欢鏁版嵁")
+ private List<Multifile> applyChangeBXDList;
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/dto/UploadMultifileDTO.java b/server/service/src/main/java/com/doumee/dao/business/dto/UploadMultifileDTO.java
index 1b472ca..628858a 100644
--- a/server/service/src/main/java/com/doumee/dao/business/dto/UploadMultifileDTO.java
+++ b/server/service/src/main/java/com/doumee/dao/business/dto/UploadMultifileDTO.java
@@ -1,7 +1,10 @@
package com.doumee.dao.business.dto;
+import com.doumee.dao.business.model.Multifile;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+
+import java.util.List;
/**
* Created by IntelliJ IDEA.
@@ -16,10 +19,13 @@
@ApiModelProperty(value = "涓氬姟涓婚敭")
private Integer businessId;
- @ApiModelProperty(value = "鏂囦欢璺緞")
- private String filePath;
+ @ApiModelProperty(value = "鏂囦欢璺緞 ")
+ private String fileurl;
@ApiModelProperty(value = "鏂囦欢鍚嶇О")
- private String fileName;
+ private String name;
+
+ @ApiModelProperty(value = "浼佷笟淇濆崟 - 淇濋櫓鍗�")
+ private List<Multifile> multifileList;
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/join/UnionChangeJoinMapper.java b/server/service/src/main/java/com/doumee/dao/business/join/UnionChangeJoinMapper.java
new file mode 100644
index 0000000..b7ed9f4
--- /dev/null
+++ b/server/service/src/main/java/com/doumee/dao/business/join/UnionChangeJoinMapper.java
@@ -0,0 +1,13 @@
+package com.doumee.dao.business.join;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.UnionChange;
+import com.github.yulichang.base.mapper.MPJJoinMapper;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/03/12 11:34
+ */
+public interface UnionChangeJoinMapper extends MPJJoinMapper<UnionChange> {
+
+}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java b/server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java
index 0a023a4..127994e 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java
@@ -147,6 +147,10 @@
@TableField(exist = false)
private Integer solutionId;
+ @ApiModelProperty(value = "鍛樺伐浼佷笟鍚嶇О")
+ @TableField(exist = false)
+ private String companyName;
+
@ApiModelProperty(value = "骞撮緞")
@TableField(exist = false)
private long age;
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java b/server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java
index 12970c1..4be61b8 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java
@@ -220,6 +220,12 @@
@ApiModelProperty(value = "鏂规绫诲瀷 0鐩翠繚 1濮旀墭鎶曚繚")
@TableField(exist = false)
private Integer solutionType;
+
+ @ApiModelProperty(value = "鍚堝苟鍗曚富閿紙淇濆崟锛�")
+ @TableField(exist = false)
+ private Integer unionApplyId;
+
+
public TaxesInvoicingVO toTaxesInvoicingVO(){
TaxesInvoicingVO taxesInvoicingVO = new TaxesInvoicingVO();
taxesInvoicingVO.setId(this.getId());
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java b/server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java
index 46a235c..3647d7c 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java
@@ -143,4 +143,8 @@
@TableField(exist = false)
private String workTypeName;
+ @ApiModelProperty(value = "浼佷笟鍚嶇О")
+ @TableField(exist = false)
+ private String companyName;
+
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java b/server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java
index fa689c9..3dec0e7 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/InsuranceApply.java
@@ -108,8 +108,12 @@
@ExcelColumn(name="鍚堝苟鍗曠紪鐮侊紙鍏宠仈union_apply)")
private Integer unionApplyId;
- @ApiModelProperty(value = "鍚堝苟鍗�-鎶曚繚鍗曠姸鎬� 0=鏈笂浼�;1=宸蹭笂浼�;2=宸茬缃�", example = "1")
+ @ApiModelProperty(value = "鍚堝苟鍗�-鎶曚繚鍗曠姸鎬� 0=鏈笂浼�;1=宸蹭笂浼�;2=宸茬缃�;3=宸蹭笂浼犱繚闄╁崟", example = "1")
private Integer unionApplyTbdStatus;
+
+ @ApiModelProperty(value = "濮旀墭淇�-鎶曚繚鍗曞悎鍚屽彿 锛堝晢鎴蜂笂浼狅紝浼佷笟绛剧讲锛�")
+ @ExcelColumn(name="濮旀墭淇�-鎶曚繚鍗曞悎鍚屽彿 锛堝晢鎴蜂笂浼狅紝浼佷笟绛剧讲锛�")
+ private String applyTbdNo;
@ApiModelProperty(value = "鍗曞彿")
@ExcelColumn(name="鍗曞彿")
@@ -118,7 +122,8 @@
@ExcelColumn(name="鍦ㄧ嚎绛剧珷鍚堝悓鍙�")
private String signApplyNo;
- @ApiModelProperty(value = "鐘舵�� 0寰呭鏍� 1骞冲彴閫�鍥炰繚鍗曪紙宸查��鍥烇級 2宸蹭笂浼犱唬绛剧敵璇疯〃寰呬紒涓氱绔狅紙寰呯缃诧級 3宸茬绔犲緟涓婁紶淇濋櫓鍗曪紙寰呭嚭鍗曪級 4淇濆崟鍑哄叿澶辫触閫�鍥烇紙宸查��鍥烇級 5宸蹭笂浼犱繚鍗曪紙淇濋殰涓級6浼佷笟鐢宠閫�鍥炰腑 7骞冲彴鍚屾剰閫�鍥烇紙宸查��鍥烇級 8浼佷笟鍏抽棴 锛堝凡鍏抽棴锛�", example = "1")
+ @ApiModelProperty(value = "鐘舵�� 0寰呭鏍� 1骞冲彴閫�鍥炰繚鍗曪紙宸查��鍥烇級 2宸蹭笂浼犱唬绛剧敵璇疯〃寰呬紒涓氱绔狅紙寰呯缃诧級 3宸茬绔犲緟涓婁紶淇濋櫓鍗曪紙寰呭嚭鍗曪級 4淇濆崟鍑哄叿澶辫触閫�鍥烇紙宸查��鍥烇級 5宸蹭笂浼犱繚鍗曪紙淇濋殰涓級6浼佷笟鐢宠閫�鍥炰腑 7骞冲彴鍚屾剰閫�鍥烇紙宸查��鍥烇級 8浼佷笟鍏抽棴 锛堝凡鍏抽棴锛�;" +
+ " 銆愬鎵樻姇淇濄�� 0鎻愪氦鎶曚繚 12宸茬缃叉柟妗堢‘璁や功 13宸茬缃插悕鍗� 10瀹℃牳閫氳繃 5淇濋殰涓�", example = "1")
@ExcelColumn(name="鐘舵�� 0寰呭鏍� 1骞冲彴閫�鍥炰繚鍗曪紙宸查��鍥烇級 2宸蹭笂浼犱唬绛剧敵璇疯〃寰呬紒涓氱绔狅紙寰呯缃诧級 3宸茬绔犲緟涓婁紶淇濋櫓鍗曪紙寰呭嚭鍗曪級 4淇濆崟鍑哄叿澶辫触閫�鍥烇紙宸查��鍥烇級 5宸蹭笂浼犱繚鍗曪紙淇濋殰涓級6浼佷笟鐢宠閫�鍥炰腑 7骞冲彴鍚屾剰閫�鍥烇紙宸查��鍥烇級 8浼佷笟鍏抽棴 锛堝凡鍏抽棴锛�")
private Integer status;
@@ -190,6 +195,13 @@
@TableField(exist = false)
private Multifile baoxiandanFile;
+ @ApiModelProperty(value = "鐢宠鍗曞璞�")
+ @TableField(exist = false)
+ private Multifile shenqingdanFile;
+ @ApiModelProperty(value = "绛剧讲鍚庢柟妗堢‘璁や功瀵硅薄")
+ @TableField(exist = false)
+ private Multifile fanganFile;
+
@ApiModelProperty(value = "鏃ュ織璁板綍")
@TableField(exist = false)
private List<ApplyLog> applyLogList;
@@ -207,7 +219,6 @@
@TableField(exist = false)
private Date lastChangeDate;
-
@ApiModelProperty(value = "鏈�浣庡勾榫�", example = "1")
@TableField(exist = false)
private Integer minAge;
@@ -215,7 +226,6 @@
@ApiModelProperty(value = "鏈�楂樺勾榫�", example = "1")
@TableField(exist = false)
private Integer maxAge;
-
@ApiModelProperty(value = "淇濋櫓璐圭敤(浜�/澶╋級", example = "1")
@TableField(exist = false)
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java b/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
index 29c91bd..ee6648f 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
@@ -177,5 +177,8 @@
@ApiModelProperty(value = "濮旀墭鍟嗘埛鍚嶇О", example = "1")
@TableField(exist = false)
private String shopName;
+ @ApiModelProperty(value = "鏂规纭涔﹀璞�", example = "1")
+ @TableField(exist = false)
+ private Multifile fanganFile;
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/UnionApply.java b/server/service/src/main/java/com/doumee/dao/business/model/UnionApply.java
index b1f4ee3..3d5f275 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/UnionApply.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/UnionApply.java
@@ -1,5 +1,6 @@
package com.doumee.dao.business.model;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -62,17 +63,14 @@
@ApiModelProperty(value = "瀹為檯淇濋櫓鐢熸晥姝㈡湡")
@ExcelColumn(name="瀹為檯淇濋櫓鐢熸晥姝㈡湡")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date endTime;
@ApiModelProperty(value = "瀹為檯淇濋櫓鐢熸晥璧锋湡")
@ExcelColumn(name="瀹為檯淇濋櫓鐢熸晥璧锋湡")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date startTime;
@ApiModelProperty(value = "鏈�杩戞搷浣滄椂闂�")
@ExcelColumn(name="鏈�杩戞搷浣滄椂闂�")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date checkDate;
@ApiModelProperty(value = "鏈�杩戞搷浣滃娉�")
@@ -107,4 +105,25 @@
@ExcelColumn(name="鏂规缂栫爜锛堝叧鑱攕olutions锛�")
private Integer solutionId;
+ @ApiModelProperty(value = "鍟嗘埛鍚嶇О", example = "1")
+ @TableField(exist = false)
+ private String companyName;
+
+ @ApiModelProperty(value = "鏂规鍚嶇О", example = "1")
+ @TableField(exist = false)
+ private String solutionName;
+
+ @ApiModelProperty(value = "鏌ヨ寮�濮嬫棩鏈�", example = "1")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField(exist = false)
+ private Date queryStartTime;
+
+ @ApiModelProperty(value = "鏌ヨ缁撴潫鏃ユ湡", example = "1")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField(exist = false)
+ private Date queryEndTime;
+
+ @ApiModelProperty(value = "鏈嶅姟澶╂暟")
+ @TableField(exist = false)
+ private Integer serviceDays;
}
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/UnionChange.java b/server/service/src/main/java/com/doumee/dao/business/model/UnionChange.java
index bdf08f7..d73a164 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/UnionChange.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/UnionChange.java
@@ -1,5 +1,6 @@
package com.doumee.dao.business.model;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -8,7 +9,10 @@
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
+
+import java.math.BigDecimal;
import java.util.Date;
+import java.util.List;
/**
* 鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�
@@ -93,4 +97,56 @@
@ExcelColumn(name="鍚堝苟淇濆崟涓婚敭")
private Integer unionApplyId;
+ @ApiModelProperty(value = "鍟嗘埛鍚嶇О")
+ @TableField(exist = false)
+ private String shopName;
+
+ @ApiModelProperty(value = "鏂规鍚嶇О")
+ @TableField(exist = false)
+ private String solutionsName;
+
+ @ApiModelProperty(value = "鍚堝苟鍗曠紪鍙�")
+ @TableField(exist = false)
+ private String applyCode;
+
+
+ @ApiModelProperty(value = "瀹為檯淇濋櫓鐢熸晥姝㈡湡")
+ @TableField(exist = false)
+ private Date endTime;
+
+ @ApiModelProperty(value = "瀹為檯淇濋櫓鐢熸晥璧锋湡")
+ @TableField(exist = false)
+ private Date startTime;
+
+
+ @ApiModelProperty(value = "浼佷笟鍚嶇О ,鍒嗗壊")
+ @TableField(exist = false)
+ private String companyNames;
+
+ @ApiModelProperty(value = "鏌ヨ寮�濮嬫棩鏈�", example = "1")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField(exist = false)
+ private Date queryStartTime;
+
+ @ApiModelProperty(value = "鏌ヨ缁撴潫鏃ユ湡", example = "1")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @TableField(exist = false)
+ private Date queryEndTime;
+
+
+ @ApiModelProperty(value = "鏄庣粏琛岃褰�")
+ @TableField(exist = false)
+ private List<ApplyChagneDetail> applyChagneDetailList;
+
+ @ApiModelProperty(value = "鍔犱繚浜烘暟")
+ @TableField(exist = false)
+ private Integer addNum;
+
+ @ApiModelProperty(value = "鍑忎繚浜烘暟")
+ @TableField(exist = false)
+ private Integer delNum;
+
+ @ApiModelProperty(value = "鎹㈠巶浜烘暟")
+ @TableField(exist = false)
+ private Integer changeNum;
}
diff --git a/server/service/src/main/java/com/doumee/service/business/ApplyChangeService.java b/server/service/src/main/java/com/doumee/service/business/ApplyChangeService.java
index f831e59..c9848d7 100644
--- a/server/service/src/main/java/com/doumee/service/business/ApplyChangeService.java
+++ b/server/service/src/main/java/com/doumee/service/business/ApplyChangeService.java
@@ -4,6 +4,7 @@
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.dto.ApplyChangeCyclePriceDTO;
import com.doumee.dao.business.dto.ApplyChangeOptDTO;
+import com.doumee.dao.business.dto.SmsCheckDTO;
import com.doumee.dao.business.model.ApplyChange;
import com.doumee.dao.business.model.InsuranceApply;
import com.doumee.dao.business.vo.CountCyclePriceVO;
@@ -28,6 +29,7 @@
Integer back(ApplyChange param);
Integer dealBackApply(ApplyChange param);
Integer uploadPidan(ApplyChange insuranceApply);
+ Integer check(ApplyChange applyChange);
/**
* 涓婚敭鍒犻櫎
*
@@ -124,9 +126,9 @@
/**
* 濮旀墭淇� 浜哄憳鍚嶅崟绛剧讲
- * @param applyChangeId
+ * @param smsCheckDTO
* @return
*/
- String getChangeMemberListOnlineSignLink(Integer applyChangeId);
+ String getChangeMemberListOnlineSignLink(SmsCheckDTO smsCheckDTO);
}
diff --git a/server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java b/server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java
index f46c055..0ee55fd 100644
--- a/server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java
+++ b/server/service/src/main/java/com/doumee/service/business/InsuranceApplyService.java
@@ -5,6 +5,7 @@
import com.doumee.dao.business.dto.CountCyclePriceDTO;
import com.doumee.dao.business.dto.InsuranceApplyOptDTO;
import com.doumee.dao.business.dto.InsuranceApplyQueryDTO;
+import com.doumee.dao.business.dto.SmsCheckDTO;
import com.doumee.dao.business.model.InsuranceApply;
import com.doumee.dao.business.vo.CountCyclePriceVO;
import com.jzq.common.bean.sign.NotifyDataReq;
@@ -143,16 +144,23 @@
/**
* 濮旀墭淇� 鎶曚繚纭涔︾绔犱笟鍔�
- * @param applyId
+ * @param smsCheckDTO
* @return
*/
- String getSignTBQRSLink(Integer applyId);
+ String getSignTBQRSLink(SmsCheckDTO smsCheckDTO);
/**
* 浜哄憳鍚嶅崟绛剧珷
- * @param applyId
+ * @param smsCheckDTO
* @return
*/
- String getMemberListOnlineSignLink(Integer applyId);
+ String getMemberListOnlineSignLink(SmsCheckDTO smsCheckDTO);
+
+ /**
+ * 濮旀墭淇� 鎶曚繚鐢宠绛剧讲
+ * @param smsCheckDTO
+ * @return
+ */
+ String getSignWTBTBDLink(SmsCheckDTO smsCheckDTO);
}
diff --git a/server/service/src/main/java/com/doumee/service/business/UnionApplyService.java b/server/service/src/main/java/com/doumee/service/business/UnionApplyService.java
index 6e36ad7..bc3f69e 100644
--- a/server/service/src/main/java/com/doumee/service/business/UnionApplyService.java
+++ b/server/service/src/main/java/com/doumee/service/business/UnionApplyService.java
@@ -3,6 +3,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.dto.SaveUnionApplyDTO;
+import com.doumee.dao.business.dto.SmsCheckDTO;
import com.doumee.dao.business.dto.UnionApplyBXDDTO;
import com.doumee.dao.business.dto.UploadMultifileDTO;
import com.doumee.dao.business.model.UnionApply;
@@ -118,10 +119,10 @@
/**
* 鍚堝苟鍗� 淇濆崟绛剧讲
- * @param id
+ * @param smsCheckDTO
* @return
*/
- String getSignLink(Integer id);
+ String getSignLink(SmsCheckDTO smsCheckDTO);
/**
* 涓婁紶淇濋櫓鍗�
@@ -129,4 +130,5 @@
*/
void uploadBXD(UnionApplyBXDDTO unionApplyBXDDTO);
+ UnionApply detail(Integer applyId);
}
diff --git a/server/service/src/main/java/com/doumee/service/business/UnionChangeService.java b/server/service/src/main/java/com/doumee/service/business/UnionChangeService.java
index d626d1f..ed1c9e3 100644
--- a/server/service/src/main/java/com/doumee/service/business/UnionChangeService.java
+++ b/server/service/src/main/java/com/doumee/service/business/UnionChangeService.java
@@ -3,6 +3,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.dto.SaveUnionChangeDTO;
+import com.doumee.dao.business.dto.SmsCheckDTO;
import com.doumee.dao.business.dto.UnionChangeBXDDTO;
import com.doumee.dao.business.model.UnionChange;
import java.util.List;
@@ -113,10 +114,10 @@
/**
* 鍚堝苟鍗曪紙鍔犲噺淇�/鎹㈠巶锛� - 鎶曚繚鐢宠绛剧讲
- * @param id
+ * @param smsCheckDTO
* @return
*/
- String getSignLink(Integer id);
+ String getSignLink(SmsCheckDTO smsCheckDTO);
/**
@@ -125,5 +126,10 @@
*/
void uploadBXD(UnionChangeBXDDTO unionChangeBXDDTO);
-
+ /**
+ * 鏌ヨ璇︽儏
+ * @param id
+ * @return
+ */
+ UnionChange getDetail(Integer id);
}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChagneDetailServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChagneDetailServiceImpl.java
index d51c086..7e765d2 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChagneDetailServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChagneDetailServiceImpl.java
@@ -189,6 +189,7 @@
MPJLambdaWrapper<ApplyChagneDetail> queryWrapper = new MPJLambdaWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
queryWrapper.selectAll(ApplyChagneDetail.class);
+ queryWrapper.selectAs(Company::getName,ApplyChagneDetail::getCompanyName);
queryWrapper.select("t2.name",ApplyChagneDetail::getWorkTypeName);
queryWrapper.select("t3.name",ApplyChagneDetail::getDuName);
queryWrapper.select("t4.name",ApplyChagneDetail::getOldWorkTypeName);
@@ -201,6 +202,7 @@
queryWrapper.leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyChagneDetail::getDuId);
queryWrapper.leftJoin(Worktype.class,Worktype::getId,ApplyChagneDetail::getOldWorktypeId);
queryWrapper.leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyChagneDetail::getOldDuId);
+ queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId);
ApplyDetailPageDTO applyDetailPageDTO = pageWrap.getModel();
queryWrapper.exists(!Objects.isNull(applyDetailPageDTO.getApplyId()),
" select 1 from apply_change ac where ac.isdeleted = 0 and ac.status in (1,2) and ac.apply_id = "+applyDetailPageDTO.getApplyId()+" and ac.id = t.apply_change_id ");
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
index 33dbed9..8dceba4 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
@@ -12,10 +12,7 @@
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.*;
-import com.doumee.dao.business.dto.ApplyChangeCyclePriceDTO;
-import com.doumee.dao.business.dto.ApplyChangeOptDTO;
-import com.doumee.dao.business.dto.CountCyclePriceDTO;
-import com.doumee.dao.business.dto.InsuranceApplyOptDTO;
+import com.doumee.dao.business.dto.*;
import com.doumee.dao.business.join.*;
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.vo.CountCyclePriceVO;
@@ -25,6 +22,7 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.service.business.SmsEmailService;
import com.doumee.service.business.third.SignService;
import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -104,6 +102,8 @@
@Autowired
private SolutionsMapper solutionsMapper;
+ @Autowired
+ private SmsEmailService smsEmailService;
@Autowired
private NoticesMapper noticesMapper;
/**
@@ -1465,7 +1465,7 @@
.in(!Objects.isNull(model.getStatus())&&model.getStatus().equals(Constants.ApplyChangeStatus.RETURN_APPLY_UPLOAD.getKey()),ApplyChange::getStatus,
Constants.ApplyChangeStatus.RETURN_APPLY_UPLOAD.getKey(),
Constants.ApplyChangeStatus.RETURN_APPLY_SIGNATURE.getKey())
-// .eq(!Objects.isNull(model.getCompanyId()),InsuranceApply::getCompanyId,model.getCompanyId())
+ .eq(!Objects.isNull(model.getUnionApplyId()),InsuranceApply::getUnionApplyId,model.getUnionApplyId())
// .eq(!Objects.isNull(model.getSolutionsId()),ApplyChange::getSolutionsId,model.getSolutionsId())
.eq(!Objects.isNull(model.getSolutionType()),Solutions::getType,model.getSolutionType())
.eq(!Objects.isNull(model.getApplyId()),ApplyChange::getApplyId,model.getApplyId())
@@ -1967,8 +1967,18 @@
* 浜哄憳鍚嶅崟绛剧珷
*/
@Override
- public String getChangeMemberListOnlineSignLink(Integer applyChangeId) {
- ApplyChange model = this.queryApplyChangeData(applyChangeId);
+ public String getChangeMemberListOnlineSignLink(SmsCheckDTO smsCheckDTO) {
+ if(Objects.isNull(smsCheckDTO)
+ || Objects.isNull(smsCheckDTO.getBusinessId())
+ || StringUtils.isBlank(smsCheckDTO.getCode())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ //楠岃瘉 楠岃瘉鐮�
+ if(!debugModel){
+ smsEmailService.validateCode(smsCheckDTO.getCode());
+ }
+ ApplyChange model = this.queryApplyChangeData(smsCheckDTO.getBusinessId());
if(Objects.isNull(model)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠姞鍑忎繚淇℃伅");
}
@@ -2020,6 +2030,57 @@
+ @Override
+ @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+ public Integer check(ApplyChange applyChange) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(!user.getType().equals(Constants.TWO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲晢鎴风鏃犳硶杩涜璇ユ搷浣�");
+ }
+ if(applyChange.getId() == null){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ ApplyChange model = applyChangeJoinMapper.selectJoinOne(ApplyChange.class,
+ new MPJLambdaWrapper<ApplyChange>()
+ .selectAll(ApplyChange.class)
+ .selectAs(InsuranceApply::getSolutionId,ApplyChange::getSolutionsId)
+ .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId)
+ .eq(ApplyChange::getId,applyChange.getId())
+ .last(" limit 1")
+ );
+ if(model == null ||!Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ Solutions solutions = solutionsMapper.selectById(model.getSolutionsId());
+ if(Objects.isNull(solutions)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈡柟妗堜俊鎭�");
+ }
+ if(solutions.getType().equals(Constants.ZERO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐩翠繚鍗曟嵁鏃犳硶杩涜璇ユ搷浣�");
+ }else{
+ if(!Constants.equalsInteger(model.getStatus(),Constants.ApplyChangeStatus.COMPANY_SIGN.getKey())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔璇ユ搷浣渵");
+ }
+ }
+
+ ApplyChange update = new ApplyChange();
+ update.setEditDate(new Date());
+ update.setEditor(user.getId());
+ update.setCheckDate(update.getEditDate());
+ update.setCheckInfo(applyChange.getCheckInfo());
+ update.setCheckUserId(user.getId());
+ update.setId(model.getId());
+ if(applyChange.getDealBackApply() ==1){
+ //濡傛灉鏄笉閫氳繃
+ update.setStatus(Constants.ApplyChangeStatus.PALTFORM_CHECK_PASS_NO.getKey());
+ }else{
+ update.setStatus(Constants.ApplyChangeStatus.PALTFORM_CHECK_PASS.getKey());
+ }
+ applyChangeJoinMapper.updateById(update);
+
+ return 1;
+
+ }
}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java
index b62574e..5c1ffc7 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java
@@ -201,12 +201,14 @@
queryWrapper.selectAs(Member::getIdcardNo,ApplyDetail::getIdcardNo);
queryWrapper.selectAs(Member::getName,ApplyDetail::getMemberName);
queryWrapper.selectAs(Solutions::getName,ApplyDetail::getSolutionName);
+ queryWrapper.selectAs(Company::getName,ApplyDetail::getCompanyName);
queryWrapper.selectAs(InsuranceApply::getStatus,ApplyDetail::getSolutionName);
queryWrapper.leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyDetail::getDuId);
queryWrapper.leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId);
queryWrapper.leftJoin(Member.class,Member::getId,ApplyDetail::getMemberId);
queryWrapper.leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyDetail::getApplyId);
queryWrapper.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId);
+ queryWrapper.leftJoin(Company.class,Company::getId,InsuranceApply::getCompanyId);
ApplyDetailPageDTO applyDetailPageDTO = pageWrap.getModel();
@@ -225,6 +227,7 @@
queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getDuId()),ApplyDetail::getDuId,applyDetailPageDTO.getDuId());
queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getWorkTypeId()),ApplyDetail::getWorktypeId,applyDetailPageDTO.getWorkTypeId());
+ queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getUnionApplyId()),ApplyDetail::getUnionApplyId,applyDetailPageDTO.getUnionApplyId());
queryWrapper.like(StringUtils.isNotBlank(applyDetailPageDTO.getMemberName()),Member::getName,applyDetailPageDTO.getMemberName());
queryWrapper.ge(StringUtils.isNotBlank(applyDetailPageDTO.getStartTimeS()),ApplyDetail::getStartTime,applyDetailPageDTO.getStartTimeS()+" 00:00:00.0");
queryWrapper.le(StringUtils.isNotBlank(applyDetailPageDTO.getStartTimeE()),ApplyDetail::getStartTime,applyDetailPageDTO.getStartTimeE()+" 23:59:59.0");
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java
index e090617..1b1b51e 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java
@@ -156,7 +156,8 @@
newVersion = dispatchUnitMapper.selectOne(new QueryWrapper<DispatchUnit>().lambda()
.eq(DispatchUnit::getIsdeleted,Constants.ZERO)
.eq(DispatchUnit::getDataType,Constants.TWO)
- .eq(DispatchUnit::getBaseId,model.getId()).last(" limit 1"));
+ .eq(DispatchUnit::getBaseId,model.getId())
+ .last(" limit 1"));
}
if(Objects.isNull(newVersion)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌娲鹃仯鍗曚綅鏈�鏂扮増鏈�");
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
index 03a8e69..0902a7f 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
@@ -16,6 +16,7 @@
import com.doumee.dao.business.dto.CountCyclePriceDTO;
import com.doumee.dao.business.dto.InsuranceApplyOptDTO;
import com.doumee.dao.business.dto.InsuranceApplyQueryDTO;
+import com.doumee.dao.business.dto.SmsCheckDTO;
import com.doumee.dao.business.join.*;
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.vo.CountCyclePriceVO;
@@ -514,7 +515,7 @@
InsuranceApply update = new InsuranceApply();
update.setEditDate(new Date());
update.setEditor(model.getCreator());
- update.setStatus(Constants.InsuranceApplyStatus.COMPANY_APPLY_SIGNATURE.getKey());
+ update.setStatus(Constants.InsuranceApplyStatus.WTB_COMPANY_APPLY_SIGNATURE.getKey());
update.setCheckDate(update.getEditDate());
update.setCheckInfo("浼佷笟瀹屾垚绛剧讲鏂规纭涔�");
update.setCheckUserId(model.getCreator());
@@ -526,13 +527,56 @@
f.setCreator(model.getCreator());
f.setObjId(update.getId());
f.setCreateDate(update.getEditDate());
- f.setObjType(Constants.MultiFile.SOLUTIONS_CONFIRMATION_LATTER.getKey());
+ f.setObjType(Constants.MultiFile.WTB_CONFIRMATION_LATTER.getKey());
f.setType(Constants.TWO);
f.setFileurl(fileurl);
f.setFileurlFull(fullUrl);
f.setInfo("浼佷笟瀹屾垚绛剧讲鏂规纭涔�");
f.setName("鏂规纭涔�.pdf");
multifileMapper.insert(f);
+
+ Constants.ApplyLogType applyLogType = Constants.ApplyLogType.WTB_FINISH_FAQRS;
+ ApplyLog log = new ApplyLog(update,applyLogType.getName(), null
+ ,update.getId(),applyLogType.getKey(),JSONObject.toJSONString(model), JSONObject.toJSONString(update));
+ applyLogMapper.insert(log);
+ return f;
+ }
+
+ /**
+ * 濮旀墭淇� 浼佷笟绛剧讲鎶曚繚鐢宠涔�
+ * @param model
+ * @param fileurl
+ * @param fullUrl
+ * @return
+ */
+ public Multifile uploadTBSQSSignedFileDo(InsuranceApply model,String fileurl,String fullUrl) {
+ InsuranceApply update = new InsuranceApply();
+ update.setEditDate(new Date());
+ update.setEditor(model.getCreator());
+ update.setUnionApplyTbdStatus(Constants.TWO);
+ update.setCheckDate(update.getEditDate());
+ update.setCheckInfo("濮旀墭淇濅紒涓氬畬鎴愮缃叉姇淇濈敵璇蜂功");
+ update.setCheckUserId(model.getCreator());
+ update.setId(model.getId());
+ insuranceApplyMapper.updateById(update);
+
+ Multifile f = new Multifile();
+ f.setIsdeleted(Constants.ZERO);
+ f.setCreator(model.getCreator());
+ f.setObjId(update.getId());
+ f.setCreateDate(update.getEditDate());
+ f.setObjType(Constants.MultiFile.COMPANY_TBD_SIGNED_PDF.getKey());
+ f.setType(Constants.TWO);
+ f.setFileurl(fileurl);
+ f.setFileurlFull(fullUrl);
+ f.setInfo("濮旀墭淇濅紒涓氬畬鎴愮缃叉姇淇濈敵璇蜂功");
+ f.setName("鎶曚繚鐢宠涔�.pdf");
+ multifileMapper.insert(f);
+
+ Constants.ApplyLogType applyLogType = Constants.ApplyLogType.SIGNATURE;
+ ApplyLog log = new ApplyLog(update,applyLogType.getName(), null
+ ,update.getId(),applyLogType.getKey(),JSONObject.toJSONString(model), JSONObject.toJSONString(update));
+ applyLogMapper.insert(log);
return f;
}
@@ -547,7 +591,7 @@
InsuranceApply update = new InsuranceApply();
update.setEditDate(new Date());
update.setEditor(model.getCreator());
- update.setStatus(Constants.InsuranceApplyStatus.COMPANY_MEMBER_LIST_SIGNATURE.getKey());
+ update.setStatus(Constants.InsuranceApplyStatus.WTB_COMPANY_MEMBER_LIST_SIGNATURE.getKey());
update.setCheckDate(update.getEditDate());
update.setCheckInfo("浼佷笟瀹屾垚绛剧讲浜哄憳鍚嶅崟");
update.setCheckUserId(model.getCreator());
@@ -566,6 +610,12 @@
f.setInfo("浼佷笟瀹屾垚绛剧讲浜哄憳鍚嶅崟");
f.setName("浜哄憳鍚嶅崟.pdf");
multifileMapper.insert(f);
+
+
+ Constants.ApplyLogType applyLogType = Constants.ApplyLogType.WTB_FINISH_MEMBER_LIST;
+ ApplyLog log = new ApplyLog(update,applyLogType.getName(), null
+ ,update.getId(),applyLogType.getKey(),JSONObject.toJSONString(model), JSONObject.toJSONString(update));
+ applyLogMapper.insert(log);
return f;
}
@@ -608,6 +658,7 @@
f.setInfo("浼佷笟鐢宠琛ㄧ缃叉枃浠�");
f.setName("绛剧珷鐢宠琛�.pdf");
multifileMapper.insert(f);
+
Constants.ApplyLogType applyLogType =Constants.equalsInteger(Constants.ZERO,model.getType())? Constants.ApplyLogType.CA_JIAJIAN_APPLY_SIGN: Constants.ApplyLogType.CA_CHANGUNIT_APPLY_SIGN;
ApplyLog log = new ApplyLog(update,applyLogType.getName(), null,update.getId(),applyLogType.getKey(),JSONObject.toJSONString(model), JSONObject.toJSONString(update));
applyLogMapper.insert(log);
@@ -640,6 +691,10 @@
f.setInfo("浼佷笟瀹屾垚绛剧讲浜哄憳鍚嶅崟");
f.setName("绛剧珷浜哄憳鍚嶅崟.pdf");
multifileMapper.insert(f);
+
+ Constants.ApplyLogType applyLogType = Constants.ApplyLogType.CA_WTB_FINISH_MEMBER_LIST;
+ ApplyLog log = new ApplyLog(update,applyLogType.getName(), null,update.getId(),applyLogType.getKey(),JSONObject.toJSONString(model), JSONObject.toJSONString(update));
+ applyLogMapper.insert(log);
return f;
}
@@ -737,10 +792,10 @@
String fileUrl = uploadSignFile(link);
if(StringUtils.isBlank(fileUrl)){
//濡傛灉涓嬭浇澶辫触锛屾竻闄ゅ悎鍚岋紝涓嬫绛剧珷閲嶆柊鐢熸垚鏂板悎鍚�
- return;
+ continue;
}
uploadSignedFileDo(model,fileUrl,path+fileUrl);
- return;
+// return;
}
}
//濮旀墭淇� 浼佷笟绛剧讲鎶曚繚纭涔�
@@ -752,7 +807,7 @@
.selectAs(Company::getName,InsuranceApply::getCompanyName)
.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
.leftJoin(Company.class,Company::getId,InsuranceApply::getCompanyId)
- .eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD.getKey())
+ .eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.WTB_UPLOAD.getKey())
.eq(Solutions::getType,Constants.ONE)
.isNotNull(InsuranceApply::getSignQrsNo));
if(applyList !=null && applyList.size()>0 ){
@@ -765,10 +820,10 @@
String fileUrl = uploadSignFile(link);
if(StringUtils.isBlank(fileUrl)){
//濡傛灉涓嬭浇澶辫触锛屾竻闄ゅ悎鍚岋紝涓嬫绛剧珷閲嶆柊鐢熸垚鏂板悎鍚�
- return;
+ continue;
}
uploadFAQRSSignedFileDo(model,fileUrl,path+fileUrl);
- return;
+// return;
}
}
@@ -781,7 +836,7 @@
.selectAs(Company::getName,InsuranceApply::getCompanyName)
.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
.leftJoin(Company.class,Company::getId,InsuranceApply::getCompanyId)
- .eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.COMPANY_APPLY_SIGNATURE.getKey())
+ .eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.WTB_COMPANY_APPLY_SIGNATURE.getKey())
.eq(Solutions::getType,Constants.ONE)
.isNotNull(InsuranceApply::getSignMemberListNo));
if(applyList !=null && applyList.size()>0 ){
@@ -794,12 +849,44 @@
String fileUrl = uploadSignFile(link);
if(StringUtils.isBlank(fileUrl)){
//濡傛灉涓嬭浇澶辫触锛屾竻闄ゅ悎鍚岋紝涓嬫绛剧珷閲嶆柊鐢熸垚鏂板悎鍚�
- return;
+ continue;
}
uploadApplyMemberListSignedFileDo(model,fileUrl,path+fileUrl);
- return;
+// return;
}
}
+
+ //濮旀墭淇濅紒涓氱缃叉姇淇濈敵璇峰崟
+ applyList = insuranceApplyJoinMapper.selectJoinList(InsuranceApply.class,
+ new MPJLambdaWrapper<InsuranceApply>()
+ .selectAll(InsuranceApply.class)
+ .selectAs(Solutions::getName,InsuranceApply::getSolutionsName)
+ .selectAs(Solutions::getEmail,InsuranceApply::getSolutionEmail)
+ .selectAs(Company::getName,InsuranceApply::getCompanyName)
+ .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
+ .leftJoin(Company.class,Company::getId,InsuranceApply::getCompanyId)
+ .eq(InsuranceApply::getUnionApplyTbdStatus,Constants.ONE)
+ .eq(Solutions::getType,Constants.ONE)
+ .isNotNull(InsuranceApply::getApplyTbdNo));
+
+ if(applyList !=null && applyList.size()>0 ){
+ for(InsuranceApply model : applyList){
+ String status = signService.linkFileStatus(model.getApplyTbdNo());
+ if(!StringUtils.equals(status,"3")){
+ continue;
+ }
+ String link = signService.linkFile(model.getApplyTbdNo());
+ String fileUrl = uploadSignFile(link);
+ if(StringUtils.isBlank(fileUrl)){
+ //濡傛灉涓嬭浇澶辫触锛屾竻闄ゅ悎鍚岋紝涓嬫绛剧珷閲嶆柊鐢熸垚鏂板悎鍚�
+ continue;
+ }
+ uploadTBSQSSignedFileDo(model,fileUrl,path+fileUrl);
+// return;
+ }
+ }
+
+
List<ApplyChange> chagneList = applyChangeMapper.selectJoinList(ApplyChange.class,
new MPJLambdaWrapper<ApplyChange>()
@@ -824,10 +911,10 @@
String fileUrl = uploadSignFile(link);
if(StringUtils.isBlank(fileUrl)){
//濡傛灉涓嬭浇澶辫触锛屾竻闄ゅ悎鍚岋紝涓嬫绛剧珷閲嶆柊鐢熸垚鏂板悎鍚�
- return;
+ continue;
}
uploadChangeSignedFileDo(model,fileUrl,path+fileUrl);
- return;
+// return;
}
}
@@ -854,10 +941,10 @@
String fileUrl = uploadSignFile(link);
if(StringUtils.isBlank(fileUrl)){
//濡傛灉涓嬭浇澶辫触锛屾竻闄ゅ悎鍚岋紝涓嬫绛剧珷閲嶆柊鐢熸垚鏂板悎鍚�
- return;
+ continue;
}
uploadChangeMemberListSignedFileDo(model,fileUrl,path+fileUrl);
- return;
+// return;
}
}
@@ -881,12 +968,16 @@
String fileUrl = uploadSignFile(link);
if(StringUtils.isBlank(fileUrl)){
//濡傛灉涓嬭浇澶辫触锛屾竻闄ゅ悎鍚岋紝涓嬫绛剧珷閲嶆柊鐢熸垚鏂板悎鍚�
- return;
+ continue;
}
uploadUnionApplySignedFileDo(model,fileUrl,path+fileUrl);
- return;
+// return;
}
}
+
+
+
+
}
@Override
@@ -933,7 +1024,7 @@
.eq(Solutions::getType,Constants.ONE)
.eq(InsuranceApply::getSignQrsNo,data.getApplyNo())
.last("limit 1" ));
- if(modelTBQRS != null && Constants.equalsInteger(modelTBQRS.getStatus(),Constants.InsuranceApplyStatus.UPLOAD.getKey())){
+ if(modelTBQRS != null && Constants.equalsInteger(modelTBQRS.getStatus(),Constants.InsuranceApplyStatus.WTB_UPLOAD.getKey())){
//瀹屾垚绛剧讲宸插畬鎴愭搷浣�
String link = signService.linkFile(data.getApplyNo());
String fileUrl = uploadSignFile(link);
@@ -944,6 +1035,9 @@
uploadFAQRSSignedFileDo(modelTBQRS,fileUrl,path+fileUrl);
return;
}
+
+
+
//濮旀墭淇� 浼佷笟绛剧讲浜哄憳鍚嶅崟
InsuranceApply modelMemberList = insuranceApplyJoinMapper.selectJoinOne(InsuranceApply.class,
new MPJLambdaWrapper<InsuranceApply>()
@@ -956,7 +1050,7 @@
.eq(Solutions::getType,Constants.ONE)
.eq(InsuranceApply::getSignMemberListNo,data.getApplyNo())
.last("limit 1" ));
- if(modelMemberList != null && Constants.equalsInteger(modelMemberList.getStatus(),Constants.InsuranceApplyStatus.COMPANY_APPLY_SIGNATURE.getKey())){
+ if(modelMemberList != null && Constants.equalsInteger(modelMemberList.getStatus(),Constants.InsuranceApplyStatus.WTB_COMPANY_APPLY_SIGNATURE.getKey())){
//瀹屾垚绛剧讲宸插畬鎴愭搷浣�
String link = signService.linkFile(data.getApplyNo());
String fileUrl = uploadSignFile(link);
@@ -965,6 +1059,31 @@
return;
}
uploadApplyMemberListSignedFileDo(modelMemberList,fileUrl,path+fileUrl);
+ return;
+ }
+
+
+ //濮旀墭淇� 鎶曚繚鐢宠涔︾缃�
+ InsuranceApply modelTBQSQ = insuranceApplyJoinMapper.selectJoinOne(InsuranceApply.class,
+ new MPJLambdaWrapper<InsuranceApply>()
+ .selectAll(InsuranceApply.class)
+ .selectAs(Solutions::getName,InsuranceApply::getSolutionsName)
+ .selectAs(Solutions::getEmail,InsuranceApply::getSolutionEmail)
+ .selectAs(Company::getName,InsuranceApply::getCompanyName)
+ .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
+ .leftJoin(Company.class,Company::getId,InsuranceApply::getCompanyId)
+ .eq(Solutions::getType,Constants.ONE)
+ .eq(InsuranceApply::getApplyTbdNo,data.getApplyNo())
+ .last("limit 1" ));
+ if(modelTBQRS != null && Constants.equalsInteger(modelTBQSQ.getUnionApplyTbdStatus(),Constants.ONE)){
+ //瀹屾垚绛剧讲宸插畬鎴愭搷浣�
+ String link = signService.linkFile(data.getApplyNo());
+ String fileUrl = uploadSignFile(link);
+ if(StringUtils.isBlank(fileUrl)){
+ //濡傛灉涓嬭浇澶辫触锛屾竻闄ゅ悎鍚岋紝涓嬫绛剧珷閲嶆柊鐢熸垚鏂板悎鍚�
+ return;
+ }
+ uploadTBSQSSignedFileDo(modelTBQSQ,fileUrl,path+fileUrl);
return;
}
@@ -1129,6 +1248,7 @@
@Override
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
public Integer check(InsuranceApply insuranceApply) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
if(insuranceApply.getId() == null){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
@@ -1137,31 +1257,35 @@
if(model == null ||!Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
- if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.UPLOAD.getKey())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔璇ユ搷浣渵");
- }
-
Solutions solutions = solutionsMapper.selectById(model.getSolutionId());
if(Objects.isNull(solutions)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈡柟妗堜俊鎭�");
}
+ if(solutions.getType().equals(Constants.ZERO)){
+ if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.UPLOAD.getKey())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔璇ユ搷浣渵");
+ }
+ }else{
+ if(!user.getType().equals(Constants.TWO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲晢鎴风鏃犳硶杩涜璇ユ搷浣�");
+ }
+ if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.WTB_RETURN.getKey())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔璇ユ搷浣渵");
+ }
+ }
Constants.ApplyLogType applyLogType = null;
- LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
InsuranceApply update = new InsuranceApply();
update.setEditDate(new Date());
update.setEditor(user.getId());
update.setCheckDate(update.getEditDate());
update.setCheckInfo(insuranceApply.getCheckInfo());
update.setCheckUserId(user.getId());
- update.setId(model.getId());
- Constants.NoticeType noticeType = Constants.NoticeType.ONE;
+ update.setId(model.getId());
if(insuranceApply.getDealBackApply() ==1){
//濡傛灉鏄笉閫氳繃
applyLogType = Constants.ApplyLogType.PLATFORM_RETURN ;
update.setStatus(Constants.InsuranceApplyStatus.PLATFORM_RETURN.getKey());
-
- noticeType = Constants.NoticeType.FOUR;
}else{
applyLogType = Constants.ApplyLogType.PLATFORM_CHECK_PASS;
update.setStatus(Constants.InsuranceApplyStatus.PLATFORM_CHECK_PASS.getKey());
@@ -1173,10 +1297,7 @@
//鍒犻櫎鍏朵粬寰呭姙
noticesMapper.delete(new QueryWrapper<Notices>().lambda().eq(Notices::getObjType,noticeObjectType.getKey())
.ne(Notices::getType,Constants.NoticeType.SIX.getStatus())
- .eq(Notices::getObjId,model.getId()));
-// Notices notices = new Notices(noticeObjectType,Constants.ONE,model.getId(),solutions.getName(),model.getCompanyId(),noticeType);
-// noticesMapper.insert(notices);
-
+ .eq(Notices::getObjId,model.getId()));
String info =applyLogType.getInfo();
if(StringUtils.isNotBlank(update.getCheckInfo())){
info = info.replace("${param}", update.getCheckInfo());
@@ -1220,6 +1341,9 @@
throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"鍛樺伐淇℃伅瀛樺湪閲嶅淇℃伅");
}
Constants.InsuranceApplyStatus insuranceApplyStatus = Constants.InsuranceApplyStatus.UPLOAD;
+ if(solutions.getType().equals(Constants.ONE)){
+ insuranceApplyStatus = Constants.InsuranceApplyStatus.WTB_UPLOAD;
+ }
insuranceApply.setCreateDate(new Date());
insuranceApply.setCreator(loginUserInfo.getId());
insuranceApply.setEditor(loginUserInfo.getId());
@@ -1522,13 +1646,37 @@
QueryWrapper<InsuranceApply> wrapper = new QueryWrapper<>(insuranceApply);
return insuranceApplyMapper.selectList(wrapper);
}
+
+ public List<Integer> getCollectStatus(Integer collectStatus){
+ if(collectStatus ==null){
+ return new ArrayList<>();
+ }
+ List<Integer> statusList = Constants.InsuranceApplyStatus.getKesByStatus(collectStatus);
+ if(collectStatus.equals(Constants.ApplyCollectStatus.DCD)){
+ statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBDCD.getKey()));
+ }else if(collectStatus.equals(Constants.ApplyCollectStatus.DSP)){
+ statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBDSH.getKey()));
+ }else if(collectStatus.equals(Constants.ApplyCollectStatus.BZZ)){
+ statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBBZZ.getKey()));
+ }else if(collectStatus.equals(Constants.ApplyCollectStatus.YTH)){
+ statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBYTH.getKey()));
+ }else if(collectStatus.equals(Constants.ApplyCollectStatus.YGB)){
+ statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBYGB.getKey()));
+ }else if(collectStatus.equals(Constants.ApplyCollectStatus.DQYQZ)){
+ statusList.addAll(Constants.InsuranceApplyStatus.getKesByStatus(Constants.ApplyCollectStatus.WTBDQS.getKey()));
+ }
+
+ return statusList;
+ }
@Override
public PageData<InsuranceApply> findPage(PageWrap<InsuranceApplyQueryDTO> pageWrap) {
IPage<InsuranceApply> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
MPJLambdaWrapper<InsuranceApply> queryWrapper = new MPJLambdaWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
- List<Integer> statusList = Constants.InsuranceApplyStatus.getKesByStatus(pageWrap.getModel().getStatusCollect());
+
+ List<Integer> statusList = this.getCollectStatus(pageWrap.getModel().getStatusCollect());
+
queryWrapper.selectAll(InsuranceApply.class);
queryWrapper.selectAs(Company::getName,InsuranceApply::getCompanyName);
queryWrapper.selectAs(Solutions::getName,InsuranceApply::getSolutionsName);
@@ -1806,11 +1954,14 @@
private void initImgData(InsuranceApply model) {
List<Multifile> multifiles = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda()
- .eq(Multifile::getObjId,Constants.equalsInteger(model.getSolutionType(),Constants.ZERO)? model.getId():model.getUnionApplyId())
+ .eq(Multifile::getObjId, model.getId())
.in(Multifile::getObjType,Arrays.asList(new Integer[]{Constants.MultiFile.BD_APPLY_PDF.getKey()
,Constants.MultiFile.BD_SIGNED_PDF.getKey()
+ ,Constants.MultiFile.WTB_CONFIRMATION_LATTER.getKey()
+ ,Constants.MultiFile.MEMBER_LIST_LATTER.getKey()
,Constants.MultiFile.BD_DONE_PDF.getKey()}))
- .eq(Multifile::getIsdeleted,Constants.ZERO));
+ .eq(Multifile::getIsdeleted,Constants.ZERO)
+ .orderByAsc(Multifile::getId));
if(multifiles!=null){
String path = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()
+systemDictDataBiz.queryByCode(Constants.OSS,Constants.APPLY_FILE).getCode();
@@ -1828,6 +1979,12 @@
}else if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.BD_DONE_PDF.getKey())){
//鏈�绲備繚闄╁崟
model.setBaoxiandanFile(f);
+ }else if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.MEMBER_LIST_LATTER.getKey())){
+ //鐢宠鍗�
+ model.setShenqingdanFile(f);
+ }else if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.WTB_CONFIRMATION_LATTER.getKey())){
+ //绛剧讲鍚庣‘璁や功
+ model.setFanganFile(f);
}
// if(model.getStatus().equals(Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey())){
@@ -2053,21 +2210,26 @@
/**
* 濮旀墭瀹� 鎶曚繚纭涔�
- * @param id
+ * @param smsCheckDTO
* @return
*/
@Override
- public String getSignTBQRSLink(Integer id) {
- if(id == null ){
+ public String getSignTBQRSLink(SmsCheckDTO smsCheckDTO) {
+ if(Objects.isNull(smsCheckDTO)
+ || Objects.isNull(smsCheckDTO.getBusinessId())
+ || StringUtils.isBlank(smsCheckDTO.getCode())
+ ){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ if(!debugModel){
+ smsEmailService.validateCode(smsCheckDTO.getCode());
}
MPJLambdaWrapper wrapper= new MPJLambdaWrapper<InsuranceApply>()
.selectAll(InsuranceApply.class)
.selectAs(Solutions::getSignKeyword,InsuranceApply::getSignKeyword)
.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
- .eq(InsuranceApply::getId,id)
+ .eq(InsuranceApply::getId,smsCheckDTO.getBusinessId())
.last("limit 1");
-
InsuranceApply model = insuranceApplyJoinMapper.selectJoinOne(InsuranceApply.class,wrapper);
if(model == null ||!Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
@@ -2076,14 +2238,14 @@
if(Objects.isNull(solutions)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈡柟妗堜俊鎭�");
}
- if(solutions.getType().equals(Constants.ZERO)){
+ if(Constants.equalsInteger(solutions.getType(),(Constants.ZERO))){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝闈炲鎵樹繚鏂规淇濆崟!");
}
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
Constants.ApplyLogType applyLogType = null;
String info = "";
//濡傛灉鏄┏鍥�,鍙兘鍙┏鍥炲凡绛剧珷鐘舵�佷笅鐨勯��鍥炵敵璇风姸鎬佽繘琛屾搷浣�
- if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.UPLOAD.getKey())){
+ if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.WTB_UPLOAD.getKey())){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔璇ユ搷浣渵");
}
Company company = user.getCompany();
@@ -2120,6 +2282,8 @@
return link;
}
+
+
@Override
public InsuranceApply queryApplyDetail(Integer applyId){
InsuranceApply model = findDetail(applyId);
@@ -2146,15 +2310,25 @@
* 浜哄憳鍚嶅崟绛剧珷
*/
@Override
- public String getMemberListOnlineSignLink(Integer applyId) {
- InsuranceApply model = this.queryApplyDetail(applyId);
+ public String getMemberListOnlineSignLink(SmsCheckDTO smsCheckDTO) {
+ if(Objects.isNull(smsCheckDTO)
+ || Objects.isNull(smsCheckDTO.getBusinessId())
+ || StringUtils.isBlank(smsCheckDTO.getCode())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ //楠岃瘉 楠岃瘉鐮�
+ if(!debugModel){
+ smsEmailService.validateCode(smsCheckDTO.getCode());
+ }
+ InsuranceApply model = this.queryApplyDetail(smsCheckDTO.getBusinessId());
if(Objects.isNull(model)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇繚鍗曚俊鎭�");
}
if(Objects.isNull(model) ||! Constants.equalsInteger(Constants.ZERO,model.getIsdeleted())){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
- if(!Constants.equalsInteger(Constants.ZERO,model.getStatus())){
+ if(!Constants.equalsInteger(Constants.InsuranceApplyStatus.WTB_COMPANY_APPLY_SIGNATURE.getKey(),model.getStatus())){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔绛剧珷鎿嶄綔锛�");
}
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
@@ -2193,6 +2367,83 @@
}
+ /**
+ * 濮旀墭淇� 鎶曚繚鐢宠绛剧讲
+ * @param smsCheckDTO
+ * @return
+ */
+ @Override
+ public String getSignWTBTBDLink(SmsCheckDTO smsCheckDTO) {
+ if(Objects.isNull(smsCheckDTO)
+ || Objects.isNull(smsCheckDTO.getBusinessId())
+ || StringUtils.isBlank(smsCheckDTO.getCode())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ //楠岃瘉 楠岃瘉鐮�
+ if(!debugModel){
+ smsEmailService.validateCode(smsCheckDTO.getCode());
+ }
+ MPJLambdaWrapper wrapper= new MPJLambdaWrapper<InsuranceApply>()
+ .selectAll(InsuranceApply.class)
+ .selectAs(Solutions::getSignKeyword,InsuranceApply::getSignKeyword)
+ .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
+ .eq(InsuranceApply::getId,smsCheckDTO.getBusinessId())
+ .last("limit 1");
+ InsuranceApply model = insuranceApplyJoinMapper.selectJoinOne(InsuranceApply.class,wrapper);
+ if(model == null ||!Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ Solutions solutions = solutionsMapper.selectById(model.getSolutionId());
+ if(Objects.isNull(solutions)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈡柟妗堜俊鎭�");
+ }
+ if(solutions.getType().equals(Constants.ZERO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝闈炲鎵樹繚鏂规淇濆崟!");
+ }
+ if(!model.getUnionApplyTbdStatus().equals(Constants.ONE)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鍟嗘埛鏈笂浼犳垨宸茬缃�");
+ }
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ Constants.ApplyLogType applyLogType = null;
+ String info = "";
+ //濡傛灉鏄┏鍥�,鍙兘鍙┏鍥炲凡绛剧珷鐘舵�佷笅鐨勯��鍥炵敵璇风姸鎬佽繘琛屾搷浣�
+ if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.WTB_UPLOAD.getKey())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔璇ユ搷浣渵");
+ }
+ Company company = user.getCompany();
+ if(debugModel){
+ company = companyMapper.selectById(model.getCompanyId());
+ }
+ if(company== null || StringUtils.isBlank( company.getEmail()) || !Constants.equalsInteger(company.getSignStatus(),Constants.THREE)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝浼佷笟灏氭湭鍏峰鍦ㄧ嚎绛剧珷鏉′欢锛岃鑱旂郴骞冲彴绠$悊鍛樼‘璁");
+ }
+ Multifile f = multifileMapper.selectOne(new QueryWrapper<Multifile>().lambda()
+ .eq(Multifile::getObjId,model.getId())
+ .eq(Multifile::getObjType,Constants.MultiFile.COMPANY_TBD_SIGNED.getKey())
+ .eq(Multifile::getIsdeleted,Constants.ZERO).last("limit 1"));
+ if(f == null || StringUtils.isBlank(f.getFileurl())){
+ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鑾峰彇纭涔︽枃浠跺け璐ワ紝璇疯仈绯诲晢鎴风‘璁ゆ姇淇濈敵璇蜂功鏄惁姝g‘锛�");
+ }
+ String url = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+systemDictDataBiz.queryByCode(Constants.OSS,Constants.APPLY_FILE).getCode()+f.getFileurl();
+ String notifyUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.SIGN_DONE_NOTIFY_URL).getCode();
+ notifyUrl = notifyUrl.replace("${type}","0").replace("${id}",model.getId().toString());
+ String applyNo = signService.applySign(company.getName(),url,company.getName(),company.getCode(),company.getEmail(),model.getSignKeyword(),company.getSignId(),notifyUrl);
+ if(StringUtils.isBlank(applyNo) ){
+ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鑾峰彇鍦ㄧ嚎绛剧珷鍦板潃澶辫触锛岃绋嶅悗閲嶈瘯锛�");
+ }
+ String link = signService.signLink(applyNo,company.getName(),company.getCode());
+ if(StringUtils.isBlank(link) ){
+ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鑾峰彇鍦ㄧ嚎绛剧珷鍦板潃澶辫触锛岃绋嶅悗閲嶈瘯锛�");
+ }
+ InsuranceApply update= new InsuranceApply();
+ update.setId(model.getId());
+ update.setEditor(user.getId());
+ update.setEditDate(new Date());
+ update.setApplyTbdNo(applyNo);
+ insuranceApplyMapper.updateById(update);
+ return link;
+ }
}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java
index 32a4157..71efde3 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java
@@ -46,6 +46,8 @@
private EmayService emayService;
@Autowired
private EmailService emailService;
+ @Value("${debug_model}")
+ private boolean debugModel;
public static void isCaptcheValide(SmsEmailMapper smsEmailMapper, String phone, String captche) {
SmsEmail model = smsEmailMapper.selectOne(new QueryWrapper<SmsEmail>().lambda()
@@ -137,6 +139,9 @@
if(StringUtils.isBlank(code)){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ if(debugModel){
+ return;
+ }
LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
if(!loginUserInfo.getType().equals(Constants.ONE)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛绫诲埆閿欒");
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
index 7ad77ab..82c40bd 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
@@ -1,5 +1,6 @@
package com.doumee.service.business.impl;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.LoginUserInfo;
@@ -27,10 +28,7 @@
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
-import java.util.UUID;
+import java.util.*;
/**
* 淇濋櫓鏂规淇℃伅琛⊿ervice瀹炵幇
@@ -40,6 +38,10 @@
@Service
public class SolutionsServiceImpl implements SolutionsService {
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
+ @Autowired
+ private MultifileMapper multifileMapper;
@Autowired
private SolutionsMapper solutionsMapper;
@Autowired
@@ -87,6 +89,22 @@
solutionsMapper.insert(newModel);
dealWorkType(solutions,newModel,solutions.getWorktypeIdList(),true);
+ if(Constants.equalsObject(solutions.getType(),Constants.ONE) ){
+ if (solutions.getFanganFile()==null || StringUtils.isBlank(solutions.getFanganFile().getFileurl())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"璇蜂笂浼犳柟妗堢‘璁や功锛�");
+ }
+
+ Multifile file = solutions.getFanganFile();
+ file.setIsdeleted(Constants.ZERO);
+ file.setCreateDate(new Date());
+ file.setCreator(user.getId());
+ file.setObjId(solutions.getId());
+ file.setObjType(Constants.MultiFile.SOLUTIONS_CONFIRMATION_LATTER.getKey());
+ file.setType(Constants.formatIntegerNum(file.getType()));
+ multifileMapper.insert(file);
+ file.setObjId(newModel.getId());
+ multifileMapper.insert(file);
+ }
return solutions.getId();
}
@@ -216,7 +234,27 @@
.lambda()
.eq(SolutionWorktype::getSolutionId,solutions.getId())
);
-
+ if(Constants.equalsObject(solutions.getType(),Constants.ONE) ){
+ if (solutions.getFanganFile()!=null && StringUtils.isNotBlank(solutions.getFanganFile().getFileurl())){
+ multifileMapper.update(null,new UpdateWrapper<Multifile>().lambda()
+ .set(Multifile::getIsdeleted,Constants.ONE)
+ .set(Multifile::getEditDate,solutions.getEditDate())
+ .set(Multifile::getEditor,solutions.getEditor())
+ .eq(Multifile::getObjId,solutions.getId())
+ .eq(Multifile::getIsdeleted,Constants.ZERO)
+ .eq(Multifile::getObjType,Constants.MultiFile.SOLUTIONS_CONFIRMATION_LATTER.getKey()));
+ Multifile file = solutions.getFanganFile();
+ file.setIsdeleted(Constants.ZERO);
+ file.setCreateDate(solutions.getEditDate());
+ file.setCreator(solutions.getEditor());
+ file.setObjId(solutions.getId());
+ file.setObjType(Constants.MultiFile.SOLUTIONS_CONFIRMATION_LATTER.getKey());
+ file.setType(Constants.formatIntegerNum(file.getType()));
+ multifileMapper.insert(file);
+ file.setObjId(newModel.getId());
+ multifileMapper.insert(file);
+ }
+ }
solutionsMapper.update(null,new UpdateWrapper<Solutions>()
.lambda()
@@ -303,6 +341,16 @@
wrapper.orderByAsc(SolutionWorktype::getSortnum);
List<SolutionWorktype> worktypeList = solutionWorktypeJoinMapper.selectJoinList(SolutionWorktype.class,wrapper);
model.setWorktypeList(worktypeList);
+ Multifile f = multifileMapper.selectOne(new QueryWrapper<Multifile>().lambda()
+ .eq(Multifile::getObjId,model.getId())
+ .eq(Multifile::getObjType,Constants.MultiFile.SOLUTIONS_CONFIRMATION_LATTER.getKey())
+ .eq(Multifile::getIsdeleted,Constants.ZERO)
+ .last("limit 1"));
+ if(f!=null && StringUtils.isNotBlank(f.getFileurl())){
+ String url = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+systemDictDataBiz.queryByCode(Constants.OSS,Constants.APPLY_FILE).getCode()+f.getFileurl();
+ f.setFileurlFull(url);
+ model.setFanganFile(f);//鏂规纭涔�
+ }
return model;
}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java
index 8088df0..04b339c 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/UnionApplyServiceImpl.java
@@ -14,14 +14,12 @@
import com.doumee.dao.business.MultifileMapper;
import com.doumee.dao.business.SolutionsMapper;
import com.doumee.dao.business.UnionApplyMapper;
-import com.doumee.dao.business.dto.SaveUnionApplyDTO;
-import com.doumee.dao.business.dto.UnionApplyBXDDDetailTO;
-import com.doumee.dao.business.dto.UnionApplyBXDDTO;
-import com.doumee.dao.business.dto.UploadMultifileDTO;
+import com.doumee.dao.business.dto.*;
import com.doumee.dao.business.join.ApplyDetailJoinMapper;
import com.doumee.dao.business.join.InsuranceApplyJoinMapper;
import com.doumee.dao.business.join.UnionApplyJoinMapper;
import com.doumee.dao.business.model.*;
+import com.doumee.service.business.SmsEmailService;
import com.doumee.service.business.UnionApplyService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -33,9 +31,10 @@
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
+import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import java.math.BigDecimal;
import java.util.ArrayList;
@@ -78,6 +77,12 @@
@Autowired
private SignService signService;
+
+ @Autowired
+ private SmsEmailService smsEmailService;
+
+ @Value("${debug_model}")
+ private boolean debugModel;
@Override
public Integer create(UnionApply unionApply) {
@@ -139,69 +144,81 @@
@Override
public PageData<UnionApply> findPage(PageWrap<UnionApply> pageWrap) {
IPage<UnionApply> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
- QueryWrapper<UnionApply> queryWrapper = new QueryWrapper<>();
+ MPJLambdaWrapper<UnionApply> queryWrapper = new MPJLambdaWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
+ queryWrapper.selectAll(UnionApply.class);
+ queryWrapper.leftJoin(Solutions.class,Solutions::getId,UnionApply::getSolutionId);
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(user.getType().equals(Constants.TWO)){
+ queryWrapper.eq(UnionApply::getCompanyId, pageWrap.getModel().getCompanyId());
+ }
if (pageWrap.getModel().getId() != null) {
- queryWrapper.lambda().eq(UnionApply::getId, pageWrap.getModel().getId());
+ queryWrapper.eq(UnionApply::getId, pageWrap.getModel().getId());
}
if (pageWrap.getModel().getCreator() != null) {
- queryWrapper.lambda().eq(UnionApply::getCreator, pageWrap.getModel().getCreator());
+ queryWrapper.eq(UnionApply::getCreator, pageWrap.getModel().getCreator());
+ }
+ if (pageWrap.getModel().getQueryStartTime() != null) {
+ queryWrapper.ge(UnionApply::getCreateDate, pageWrap.getModel().getQueryStartTime() +" 00:00:00" );
+ }
+ if (pageWrap.getModel().getQueryEndTime() != null) {
+ queryWrapper.le(UnionApply::getCreateDate, pageWrap.getModel().getQueryEndTime() +" 23:59:59");
}
if (pageWrap.getModel().getCreateDate() != null) {
- queryWrapper.lambda().ge(UnionApply::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
- queryWrapper.lambda().le(UnionApply::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ queryWrapper.ge(UnionApply::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.le(UnionApply::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
}
if (pageWrap.getModel().getEditor() != null) {
- queryWrapper.lambda().eq(UnionApply::getEditor, pageWrap.getModel().getEditor());
+ queryWrapper.eq(UnionApply::getEditor, pageWrap.getModel().getEditor());
}
if (pageWrap.getModel().getEditDate() != null) {
- queryWrapper.lambda().ge(UnionApply::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
- queryWrapper.lambda().le(UnionApply::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ queryWrapper.ge(UnionApply::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.le(UnionApply::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
}
if (pageWrap.getModel().getIsdeleted() != null) {
- queryWrapper.lambda().eq(UnionApply::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ queryWrapper.eq(UnionApply::getIsdeleted, pageWrap.getModel().getIsdeleted());
}
if (pageWrap.getModel().getRemark() != null) {
- queryWrapper.lambda().eq(UnionApply::getRemark, pageWrap.getModel().getRemark());
+ queryWrapper.eq(UnionApply::getRemark, pageWrap.getModel().getRemark());
}
if (pageWrap.getModel().getSortnum() != null) {
- queryWrapper.lambda().eq(UnionApply::getSortnum, pageWrap.getModel().getSortnum());
+ queryWrapper.eq(UnionApply::getSortnum, pageWrap.getModel().getSortnum());
}
if (pageWrap.getModel().getCompanyId() != null) {
- queryWrapper.lambda().eq(UnionApply::getCompanyId, pageWrap.getModel().getCompanyId());
+ queryWrapper.eq(UnionApply::getCompanyId, pageWrap.getModel().getCompanyId());
}
if (pageWrap.getModel().getEndTime() != null) {
- queryWrapper.lambda().ge(UnionApply::getEndTime, Utils.Date.getStart(pageWrap.getModel().getEndTime()));
- queryWrapper.lambda().le(UnionApply::getEndTime, Utils.Date.getEnd(pageWrap.getModel().getEndTime()));
+ queryWrapper.ge(UnionApply::getEndTime, Utils.Date.getStart(pageWrap.getModel().getEndTime()));
+ queryWrapper.le(UnionApply::getEndTime, Utils.Date.getEnd(pageWrap.getModel().getEndTime()));
}
if (pageWrap.getModel().getStartTime() != null) {
- queryWrapper.lambda().ge(UnionApply::getStartTime, Utils.Date.getStart(pageWrap.getModel().getStartTime()));
- queryWrapper.lambda().le(UnionApply::getStartTime, Utils.Date.getEnd(pageWrap.getModel().getStartTime()));
+ queryWrapper.ge(UnionApply::getStartTime, Utils.Date.getStart(pageWrap.getModel().getStartTime()));
+ queryWrapper.le(UnionApply::getStartTime, Utils.Date.getEnd(pageWrap.getModel().getStartTime()));
}
if (pageWrap.getModel().getCheckDate() != null) {
- queryWrapper.lambda().ge(UnionApply::getCheckDate, Utils.Date.getStart(pageWrap.getModel().getCheckDate()));
- queryWrapper.lambda().le(UnionApply::getCheckDate, Utils.Date.getEnd(pageWrap.getModel().getCheckDate()));
+ queryWrapper.ge(UnionApply::getCheckDate, Utils.Date.getStart(pageWrap.getModel().getCheckDate()));
+ queryWrapper.le(UnionApply::getCheckDate, Utils.Date.getEnd(pageWrap.getModel().getCheckDate()));
}
if (pageWrap.getModel().getCheckInfo() != null) {
- queryWrapper.lambda().eq(UnionApply::getCheckInfo, pageWrap.getModel().getCheckInfo());
+ queryWrapper.eq(UnionApply::getCheckInfo, pageWrap.getModel().getCheckInfo());
}
if (pageWrap.getModel().getCheckUserId() != null) {
- queryWrapper.lambda().eq(UnionApply::getCheckUserId, pageWrap.getModel().getCheckUserId());
+ queryWrapper.eq(UnionApply::getCheckUserId, pageWrap.getModel().getCheckUserId());
}
if (pageWrap.getModel().getCode() != null) {
- queryWrapper.lambda().eq(UnionApply::getCode, pageWrap.getModel().getCode());
+ queryWrapper.eq(UnionApply::getCode, pageWrap.getModel().getCode());
}
if (pageWrap.getModel().getStatus() != null) {
- queryWrapper.lambda().eq(UnionApply::getStatus, pageWrap.getModel().getStatus());
+ queryWrapper.eq(UnionApply::getStatus, pageWrap.getModel().getStatus());
}
if (pageWrap.getModel().getCurrentFee() != null) {
- queryWrapper.lambda().eq(UnionApply::getCurrentFee, pageWrap.getModel().getCurrentFee());
+ queryWrapper.eq(UnionApply::getCurrentFee, pageWrap.getModel().getCurrentFee());
}
if (pageWrap.getModel().getFee() != null) {
- queryWrapper.lambda().eq(UnionApply::getFee, pageWrap.getModel().getFee());
+ queryWrapper.eq(UnionApply::getFee, pageWrap.getModel().getFee());
}
if (pageWrap.getModel().getSignApplyNo() != null) {
- queryWrapper.lambda().eq(UnionApply::getSignApplyNo, pageWrap.getModel().getSignApplyNo());
+ queryWrapper.eq(UnionApply::getSignApplyNo, pageWrap.getModel().getSignApplyNo());
}
for(PageWrap.SortData sortData: pageWrap.getSorts()) {
if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
@@ -210,7 +227,8 @@
queryWrapper.orderByAsc(sortData.getProperty());
}
}
- return PageData.from(unionApplyMapper.selectPage(page, queryWrapper));
+ PageData<UnionApply> pageData = PageData.from(unionApplyJoinMapper.selectJoinPage(page,UnionApply.class, queryWrapper));
+ return pageData;
}
@Override
@@ -220,10 +238,44 @@
}
+
+ @Override
+ public UnionApply detail(Integer applyId){
+ UnionApply unionApply = unionApplyJoinMapper.selectJoinOne(UnionApply.class,
+ new MPJLambdaWrapper<UnionApply>()
+ .selectAll(UnionApply.class)
+ .selectAs(Solutions::getName,UnionApply::getSolutionName)
+ .selectAs(Company::getName,UnionApply::getCompanyName)
+ .select(" ( select count(DISTINCT(ad.MEMBER_ID)) from apply_detail ad where ad.UNION_APPLY_ID = t.id ) as insureNum")
+ .leftJoin(Solutions.class,Solutions::getId,UnionApply::getSolutionId)
+ .leftJoin(Company.class,Company::getId,UnionApply::getCompanyId)
+ .eq(UnionApply::getId,applyId)
+ .last(" limit 1 ")
+ );
+ unionApply.setServiceDays(Constants.ZERO);
+ if(unionApply.getStatus().equals(Constants.UnionApplyStatus.FINISH.getKey())){
+ //濡傛灉褰撳墠鏃堕棿澶т簬缁撴潫鏃ユ湡 鍒欎娇鐢ㄧ粨鏉熸棩鏈熷姣斿紑濮嬫棩鏈�
+ if(DateUtil.compareDate(new Date(),unionApply.getEndTime())>=Constants.ZERO){
+ unionApply.setServiceDays(
+ DateUtil.daysBetweenDates(unionApply.getEndTime(),unionApply.getStartTime())+1
+ );
+ }else if(DateUtil.compareDate(unionApply.getStartTime(),new Date())>=Constants.ZERO){
+ //鏈紑濮�
+ unionApply.setServiceDays(Constants.ZERO);
+ }else{
+ unionApply.setServiceDays(DateUtil.daysBetweenDates(new Date(),unionApply.getStartTime())+1);
+ }
+ }
+ return unionApply;
+ }
+
+
+
+
@Override
public Integer merge(SaveUnionApplyDTO saveUnionApplyDTO){
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
- if(user.getType().equals(Constants.TWO)){
+ if(!user.getType().equals(Constants.TWO)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲晢鎴风敤鎴凤紝鏃犳硶杩涜璇ユ搷浣�");
}
if(Objects.isNull(saveUnionApplyDTO)
@@ -240,7 +292,7 @@
.selectAs(InsuranceApply::getSolutionBaseId,Solutions::getBaseId)
.leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
.eq(InsuranceApply::getIsdeleted, Constants.ZERO)
- .eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.COMPANY_MEMBER_LIST_SIGNATURE.getKey())
+ .eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.WTB_BUSINESS_CHECK_PASS.getKey())
.eq(Solutions::getBaseId,saveUnionApplyDTO.getBaseSolutionId())
.in(InsuranceApply::getId,saveUnionApplyDTO.getApplyIds())
.isNull(InsuranceApply::getUnionApplyId)
@@ -271,6 +323,7 @@
.set(InsuranceApply::getUnionApplyId,unionApply.getId())
.set(InsuranceApply::getCheckDate,new Date())
.set(InsuranceApply::getCheckUserId,user.getId())
+ .set(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.WTB_TOUBAOING.getKey())
.in(InsuranceApply::getId,saveUnionApplyDTO.getApplyIds()));
applyDetailJoinMapper.update(null,new UpdateWrapper<ApplyDetail>().lambda()
@@ -290,7 +343,7 @@
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
public void cancelMerge(Integer id){
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
- if(user.getType().equals(Constants.TWO)){
+ if(!user.getType().equals(Constants.TWO)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲晢鎴风敤鎴凤紝鏃犳硶杩涜璇ユ搷浣滐紒");
}
UnionApply unionApply = unionApplyMapper.selectById(id);
@@ -316,6 +369,7 @@
.set(InsuranceApply::getUnionApplyId,null)
.set(InsuranceApply::getCheckDate,new Date())
.set(InsuranceApply::getCheckUserId,user.getId())
+ .set(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.WTB_BUSINESS_CHECK_PASS.getKey())
.eq(InsuranceApply::getUnionApplyId,unionApply.getId()));
applyDetailJoinMapper.update(null,new UpdateWrapper<ApplyDetail>().lambda()
@@ -335,11 +389,14 @@
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
public void uploadToubaodan(UploadMultifileDTO uploadMultifileDTO){
if(uploadMultifileDTO.getBusinessId() == null
- ||StringUtils.isBlank( uploadMultifileDTO.getFilePath())
- ||StringUtils.isBlank( uploadMultifileDTO.getFileName())){
+ ||StringUtils.isBlank( uploadMultifileDTO.getFileurl())
+ ||StringUtils.isBlank( uploadMultifileDTO.getName())){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(!user.getType().equals(Constants.TWO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲晢鎴风敤鎴凤紝鏃犳硶杩涜璇ユ搷浣滐紒");
+ }
UnionApply unionApply = unionApplyMapper.selectById(uploadMultifileDTO.getBusinessId());
if(Objects.isNull(unionApply)||!Constants.equalsInteger(unionApply.getIsdeleted(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
@@ -353,6 +410,41 @@
if(unionApply.getStatus().equals(Constants.UnionApplyStatus.MERGE.getKey())){
throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"瀵逛笉璧凤紝鍚堝苟鍗曚笟鍔″凡娴佽浆锛屾偍鏃犳硶杩涜璇ユ搷浣滐紒");
}
+
+ if(CollectionUtils.isNotEmpty(uploadMultifileDTO.getMultifileList())){
+ List<Multifile> multifileList = uploadMultifileDTO.getMultifileList();
+ for (Multifile multifile:multifileList) {
+ if(Objects.isNull(multifile.getObjId())
+ ||Objects.isNull(multifile.getName())
+ ||Objects.isNull(multifile.getFileurl())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"浼佷笟鎶曚繚鍗曢檮浠跺弬鏁伴敊璇�");
+ }
+ InsuranceApply insuranceApply = insuranceApplyJoinMapper.selectOne(new QueryWrapper<InsuranceApply>().lambda()
+ .eq(InsuranceApply::getId,multifile.getObjId())
+ .eq(InsuranceApply::getUnionApplyId,uploadMultifileDTO.getBusinessId())
+ );
+ if(Objects.isNull(insuranceApply)){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"浼佷笟鎶曚繚鍗曟湭鏌ヨ鍒�");
+ }
+
+ multifile.setIsdeleted(Constants.ZERO);
+ multifile.setCreator(user.getId());
+ multifile.setCreateDate(new Date());
+ multifile.setCreateDate(new Date());
+ multifile.setObjType(Constants.MultiFile.COMPANY_TBD_SIGNED.getKey());
+ multifile.setType(Constants.TWO);
+ multifileMapper.insert(multifile);
+
+ insuranceApplyJoinMapper.update(null,new UpdateWrapper<InsuranceApply>().lambda()
+ .set(InsuranceApply::getUnionApplyTbdStatus,Constants.ONE)
+ .set(InsuranceApply::getEditDate,new Date())
+ .set(InsuranceApply::getEditor,user.getId())
+ .eq(InsuranceApply::getId,multifile.getObjId())
+ );
+
+ }
+ }
+
unionApply.setCheckDate(new Date());
unionApply.setCheckUserId(user.getId());
@@ -369,9 +461,12 @@
multifile.setCreateDate(new Date());
multifile.setObjType(Constants.MultiFile.HBD_BD_SIGNED_PDF.getKey());
multifile.setType(Constants.TWO);
- multifile.setFileurl(uploadMultifileDTO.getFilePath());
- multifile.setName(uploadMultifileDTO.getFileName());
+ multifile.setFileurl(uploadMultifileDTO.getFileurl());
+ multifile.setName(uploadMultifileDTO.getName());
multifileMapper.insert(multifile);
+
+
+
}
@@ -383,12 +478,22 @@
*/
@Override
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
- public String getSignLink(Integer id) {
- if(id == null ){
+ public String getSignLink(SmsCheckDTO smsCheckDTO) {
+ if(Objects.isNull(smsCheckDTO)
+ || Objects.isNull(smsCheckDTO.getBusinessId())
+ || StringUtils.isBlank(smsCheckDTO.getCode())
+ ){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ //楠岃瘉 楠岃瘉鐮�
+ if(!debugModel){
+ smsEmailService.validateCode(smsCheckDTO.getCode());
+ }
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
- UnionApply unionApply = unionApplyJoinMapper.selectById(id);
+ if(!user.getType().equals(Constants.TWO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲晢鎴风敤鎴凤紝鏃犳硶杩涜璇ユ搷浣滐紒");
+ }
+ UnionApply unionApply = unionApplyJoinMapper.selectById(smsCheckDTO.getBusinessId());
if(unionApply == null ||!Constants.equalsInteger(unionApply.getIsdeleted(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
@@ -451,6 +556,9 @@
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(!user.getType().equals(Constants.TWO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲晢鎴风敤鎴凤紝鏃犳硶杩涜璇ユ搷浣滐紒");
+ }
UnionApply unionApply = unionApplyJoinMapper.selectById(unionApplyBXDDTO.getId());
if(unionApply == null ||!Constants.equalsInteger(unionApply.getIsdeleted(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
@@ -507,7 +615,7 @@
multifile.setCreator(user.getId());
multifile.setCreateDate(new Date());
multifile.setObjId(insuranceApply.getId());
- multifile.setObjType(Constants.MultiFile.COMPANY_TBD_SIGNED_PDF.getKey());
+ multifile.setObjType(Constants.MultiFile.BD_DONE_PDF.getKey());
multifile.setType(Constants.TWO);
multifile.setFileurl(unionApplyBXDDDetailTO.getFileUrl());
multifile.setName(unionApplyBXDDDetailTO.getFileName());
@@ -522,7 +630,8 @@
new BigDecimal(applyDetails.size())
.multiply(price)
)
- .set(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey())
+ .set(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.WTB_DONE.getKey())
+ .set(InsuranceApply::getUnionApplyTbdStatus,3)
.set(InsuranceApply::getFee,price.multiply(new BigDecimal(applyDetails.size())).multiply(new BigDecimal(maxDays)))
.set(InsuranceApply::getCurrentFee,currentFee.multiply(new BigDecimal(applyDetails.size())))
.set(InsuranceApply::getStartTime,unionApplyBXDDTO.getStartTime())
@@ -564,16 +673,12 @@
multifile.setCreator(user.getId());
multifile.setCreateDate(new Date());
multifile.setObjId(unionApply.getId());
- multifile.setObjType(Constants.MultiFile.HBD_BD_APPLY_PDF.getKey());
+ multifile.setObjType(Constants.MultiFile.WTB_BD_DONE_PDF.getKey());
multifile.setType(Constants.TWO);
multifile.setFileurl(unionApplyBXDDTO.getFileUrl());
multifile.setName(unionApplyBXDDTO.getFileName());
multifileMapper.insert(multifile);
}
-
-
-
-
}
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java
index ade3466..d113bb0 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/UnionChangeServiceImpl.java
@@ -13,13 +13,12 @@
import com.doumee.dao.business.*;
import com.doumee.dao.business.dto.SaveUnionApplyDTO;
import com.doumee.dao.business.dto.SaveUnionChangeDTO;
+import com.doumee.dao.business.dto.SmsCheckDTO;
import com.doumee.dao.business.dto.UnionChangeBXDDTO;
-import com.doumee.dao.business.join.ApplyChagneDetailJoinMapper;
-import com.doumee.dao.business.join.ApplyChangeJoinMapper;
-import com.doumee.dao.business.join.ApplyDetailJoinMapper;
-import com.doumee.dao.business.join.MemberInsuranceJoinMapper;
+import com.doumee.dao.business.join.*;
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.vo.CountCyclePriceVO;
+import com.doumee.service.business.SmsEmailService;
import com.doumee.service.business.UnionChangeService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -31,10 +30,12 @@
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
+import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -50,6 +51,9 @@
@Autowired
private UnionChangeMapper unionChangeMapper;
+
+ @Autowired
+ private UnionChangeJoinMapper unionChangeJoinMapper;
@Autowired
private ApplyChangeJoinMapper applyChangeJoinMapper;
@@ -80,6 +84,13 @@
@Autowired
private InsuranceApplyMapper insuranceApplyMapper;
+
+ @Value("${debug_model}")
+ private boolean debugModel;
+ @Autowired
+ private SmsEmailService smsEmailService;
+ @Autowired
+ private MultifileMapper multifileMapper;
@Override
public Integer create(UnionChange unionChange) {
@@ -126,6 +137,31 @@
return unionChangeMapper.selectById(id);
}
+
+ @Override
+ public UnionChange getDetail(Integer id){
+ UnionChange unionChange = unionChangeJoinMapper.selectJoinOne(UnionChange.class,
+ new MPJLambdaWrapper<UnionChange>()
+ .selectAll(UnionChange.class)
+ .selectAs(UnionApply::getCode,UnionChange::getApplyCode)
+ .selectAs(Solutions::getName,UnionChange::getSolutionsName)
+ .selectAs(UnionApply::getStartTime,UnionChange::getStartTime)
+ .selectAs(UnionApply::getEndTime,UnionChange::getEndTime)
+ .selectAs(Company::getName,UnionChange::getShopName)
+ .select("( select count(1) from apply_chagne_detail ad where t.id = ad.UNION_CHANGE_ID and ad.TYPE = 0 )",UnionChange::getAddNum)
+ .select("( select count(1) from apply_chagne_detail ad where t.id = ad.UNION_CHANGE_ID and ad.TYPE = 1 )",UnionChange::getDelNum)
+ .select("( select count(1) from apply_chagne_detail ad where t.id = ad.UNION_CHANGE_ID and ad.TYPE = 2 )",UnionChange::getChangeNum)
+ .leftJoin(UnionApply.class,UnionApply::getId,UnionChange::getUnionApplyId)
+ .leftJoin(Solutions.class,Solutions::getId,UnionApply::getSolutionId)
+ .leftJoin(Company.class,Company::getId,UnionChange::getShopId)
+ .eq(UnionChange::getId,id)
+ .last(" limit 1 ")
+ );
+ return unionChange;
+ }
+
+
+
@Override
public UnionChange findOne(UnionChange unionChange) {
QueryWrapper<UnionChange> wrapper = new QueryWrapper<>(unionChange);
@@ -141,59 +177,78 @@
@Override
public PageData<UnionChange> findPage(PageWrap<UnionChange> pageWrap) {
IPage<UnionChange> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
- QueryWrapper<UnionChange> queryWrapper = new QueryWrapper<>();
+ MPJLambdaWrapper<UnionChange> queryWrapper = new MPJLambdaWrapper<>();
+ queryWrapper.selectAll(UnionChange.class);
+ queryWrapper.selectAs(UnionApply::getCode,UnionChange::getApplyCode)
+ .select("( select count(1) from apply_chagne_detail ad where t.id = ad.UNION_CHANGE_ID and ad.TYPE = 0 )",UnionChange::getAddNum)
+ .select("( select count(1) from apply_chagne_detail ad where t.id = ad.UNION_CHANGE_ID and ad.TYPE = 1 )",UnionChange::getDelNum)
+ .select("( select count(1) from apply_chagne_detail ad where t.id = ad.UNION_CHANGE_ID and ad.TYPE = 2 )",UnionChange::getChangeNum);
+ queryWrapper.leftJoin(UnionApply.class,UnionApply::getId,UnionChange::getUnionApplyId);
+ queryWrapper.leftJoin(Solutions.class,Solutions::getId,UnionApply::getSolutionId);
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(user.getType().equals(Constants.TWO)){
+ queryWrapper.eq(UnionChange::getShopId, pageWrap.getModel().getShopId());
+ }
Utils.MP.blankToNull(pageWrap.getModel());
if (pageWrap.getModel().getId() != null) {
- queryWrapper.lambda().eq(UnionChange::getId, pageWrap.getModel().getId());
+ queryWrapper.eq(UnionChange::getId, pageWrap.getModel().getId());
}
if (pageWrap.getModel().getCreator() != null) {
- queryWrapper.lambda().eq(UnionChange::getCreator, pageWrap.getModel().getCreator());
+ queryWrapper.eq(UnionChange::getCreator, pageWrap.getModel().getCreator());
}
+
+ if (pageWrap.getModel().getQueryStartTime() != null) {
+ queryWrapper.ge(UnionChange::getCreateDate, pageWrap.getModel().getQueryStartTime() +" 00:00:00" );
+ }
+ if (pageWrap.getModel().getQueryEndTime() != null) {
+ queryWrapper.le(UnionChange::getCreateDate, pageWrap.getModel().getQueryEndTime() +" 23:59:59");
+ }
+
if (pageWrap.getModel().getCreateDate() != null) {
- queryWrapper.lambda().ge(UnionChange::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
- queryWrapper.lambda().le(UnionChange::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+ queryWrapper.ge(UnionChange::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+ queryWrapper.le(UnionChange::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
}
if (pageWrap.getModel().getEditor() != null) {
- queryWrapper.lambda().eq(UnionChange::getEditor, pageWrap.getModel().getEditor());
+ queryWrapper.eq(UnionChange::getEditor, pageWrap.getModel().getEditor());
}
if (pageWrap.getModel().getEditDate() != null) {
- queryWrapper.lambda().ge(UnionChange::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
- queryWrapper.lambda().le(UnionChange::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+ queryWrapper.ge(UnionChange::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+ queryWrapper.le(UnionChange::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
}
if (pageWrap.getModel().getIsdeleted() != null) {
- queryWrapper.lambda().eq(UnionChange::getIsdeleted, pageWrap.getModel().getIsdeleted());
+ queryWrapper.eq(UnionChange::getIsdeleted, pageWrap.getModel().getIsdeleted());
}
if (pageWrap.getModel().getRemark() != null) {
- queryWrapper.lambda().eq(UnionChange::getRemark, pageWrap.getModel().getRemark());
+ queryWrapper.eq(UnionChange::getRemark, pageWrap.getModel().getRemark());
}
if (pageWrap.getModel().getSortnum() != null) {
- queryWrapper.lambda().eq(UnionChange::getSortnum, pageWrap.getModel().getSortnum());
+ queryWrapper.eq(UnionChange::getSortnum, pageWrap.getModel().getSortnum());
}
if (pageWrap.getModel().getShopId() != null) {
- queryWrapper.lambda().eq(UnionChange::getShopId, pageWrap.getModel().getShopId());
+ queryWrapper.eq(UnionChange::getShopId, pageWrap.getModel().getShopId());
}
if (pageWrap.getModel().getCode() != null) {
- queryWrapper.lambda().eq(UnionChange::getCode, pageWrap.getModel().getCode());
+ queryWrapper.eq(UnionChange::getCode, pageWrap.getModel().getCode());
}
if (pageWrap.getModel().getApplyStartTime() != null) {
- queryWrapper.lambda().ge(UnionChange::getApplyStartTime, Utils.Date.getStart(pageWrap.getModel().getApplyStartTime()));
- queryWrapper.lambda().le(UnionChange::getApplyStartTime, Utils.Date.getEnd(pageWrap.getModel().getApplyStartTime()));
+ queryWrapper.ge(UnionChange::getApplyStartTime, Utils.Date.getStart(pageWrap.getModel().getApplyStartTime()));
+ queryWrapper.le(UnionChange::getApplyStartTime, Utils.Date.getEnd(pageWrap.getModel().getApplyStartTime()));
}
if (pageWrap.getModel().getStatus() != null) {
- queryWrapper.lambda().eq(UnionChange::getStatus, pageWrap.getModel().getStatus());
+ queryWrapper.eq(UnionChange::getStatus, pageWrap.getModel().getStatus());
}
if (pageWrap.getModel().getValidTime() != null) {
- queryWrapper.lambda().ge(UnionChange::getValidTime, Utils.Date.getStart(pageWrap.getModel().getValidTime()));
- queryWrapper.lambda().le(UnionChange::getValidTime, Utils.Date.getEnd(pageWrap.getModel().getValidTime()));
+ queryWrapper.ge(UnionChange::getValidTime, Utils.Date.getStart(pageWrap.getModel().getValidTime()));
+ queryWrapper.le(UnionChange::getValidTime, Utils.Date.getEnd(pageWrap.getModel().getValidTime()));
}
if (pageWrap.getModel().getValidCode() != null) {
- queryWrapper.lambda().eq(UnionChange::getValidCode, pageWrap.getModel().getValidCode());
+ queryWrapper.eq(UnionChange::getValidCode, pageWrap.getModel().getValidCode());
}
if (pageWrap.getModel().getType() != null) {
- queryWrapper.lambda().eq(UnionChange::getType, pageWrap.getModel().getType());
+ queryWrapper.eq(UnionChange::getType, pageWrap.getModel().getType());
}
if (pageWrap.getModel().getSignApplyNo() != null) {
- queryWrapper.lambda().eq(UnionChange::getSignApplyNo, pageWrap.getModel().getSignApplyNo());
+ queryWrapper.eq(UnionChange::getSignApplyNo, pageWrap.getModel().getSignApplyNo());
}
for(PageWrap.SortData sortData: pageWrap.getSorts()) {
if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
@@ -202,7 +257,8 @@
queryWrapper.orderByAsc(sortData.getProperty());
}
}
- return PageData.from(unionChangeMapper.selectPage(page, queryWrapper));
+ PageData<UnionChange> pageData = PageData.from(unionChangeJoinMapper.selectJoinPage(page,UnionChange.class, queryWrapper));
+ return pageData;
}
@Override
@@ -233,7 +289,7 @@
.leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId)
.eq(ApplyChange::getIsdeleted, Constants.ZERO)
.eq(InsuranceApply::getUnionApplyId,saveUnionChangeDTO.getUnionApplyId())
- .eq(ApplyChange::getStatus,Constants.ApplyChangeStatus.COMPANY_SIGN.getKey())
+ .eq(ApplyChange::getStatus,Constants.ApplyChangeStatus.PALTFORM_CHECK_PASS.getKey())
.eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey())
.eq(ApplyChange::getType,saveUnionChangeDTO.getBusinessType())
.in(ApplyChange::getId,saveUnionChangeDTO.getApplyIds())
@@ -315,19 +371,77 @@
}
+ public UnionChange unionChangeDetail(Integer unionChangeId){
+
+ UnionChange unionChange = unionChangeJoinMapper.selectJoinOne(UnionChange.class,
+ new MPJLambdaWrapper<UnionChange>()
+ .selectAll(UnionChange.class)
+ .selectAs(Company::getName,UnionChange::getShopName)
+ .selectAs(Solutions::getName,UnionChange::getSolutionsName)
+ .selectAs(UnionApply::getCode,UnionChange::getApplyCode)
+ .selectAs(UnionApply::getStartTime,UnionChange::getStartTime)
+ .selectAs(UnionApply::getEndTime,UnionChange::getEndTime)
+ .leftJoin(UnionApply.class,UnionApply::getId,UnionChange::getUnionApplyId)
+ .leftJoin(Company.class,Company::getId,UnionChange::getShopId)
+ .leftJoin(Solutions.class,Solutions::getId,UnionApply::getSolutionId)
+ .eq(UnionChange::getId,unionChangeId)
+ .last(" limit 1 ")
+ );
+ //浼佷笟鍚嶇О
+ List<ApplyChange> applyChangeList = applyChangeJoinMapper.selectJoinList(ApplyChange.class,new MPJLambdaWrapper<ApplyChange>()
+ .selectAs(Company::getName,ApplyChange::getCompanyName)
+ .leftJoin(Company.class,Company::getId,ApplyChange::getCompanyId)
+ .eq(ApplyChange::getUnionChangeId,unionChangeId)
+ );
+
+ String companyNames = String.join(",",applyChangeList.stream().map(m->m.getCompanyName()).collect(Collectors.toList()));
+
+ List<ApplyChagneDetail> applyChagneDetailList = applyChagneDetailJoinMapper.selectJoinList(ApplyChagneDetail.class,new MPJLambdaWrapper<ApplyChagneDetail>()
+ .selectAll(ApplyChagneDetail.class)
+ .selectAs(Member::getName,ApplyChagneDetail::getMemberName)
+ .selectAs(Member::getIdcardNo,ApplyChagneDetail::getIdcardNo)
+ .selectAs(Member::getSex,ApplyChagneDetail::getSex)
+ .selectAs(Company::getName,ApplyChagneDetail::getCompanyName)
+ .select("t2.name",ApplyChagneDetail::getWorkTypeName)
+ .select("t3.name",ApplyChagneDetail::getDuName)
+ .select("t4.name",ApplyChagneDetail::getOldWorkTypeName)
+ .select("t5.name",ApplyChagneDetail::getOldDuName)
+ .leftJoin(Member.class,Member::getId,ApplyChagneDetail::getMemberId)
+ .leftJoin(Worktype.class,Worktype::getId,ApplyChagneDetail::getWorktypeId)
+ .leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyChagneDetail::getDuId)
+ .leftJoin(Worktype.class,Worktype::getId,ApplyChagneDetail::getOldWorktypeId)
+ .leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyChagneDetail::getOldDuId)
+ .leftJoin(Company.class,Company::getId,Member::getCompanyId)
+ .eq(ApplyChagneDetail::getUnionChangeId,unionChangeId)
+ );
+
+ unionChange.setCompanyNames(companyNames);
+ unionChange.setApplyChagneDetailList(applyChagneDetailList);
+ return unionChange;
+ }
+
+
+
/**
* 鍚堝苟鍗曪紙鍔犲噺淇�/鎹㈠巶锛� - 鎶曚繚鐢宠绛剧讲
- * @param id
+ * @param smsCheckDTO
* @return
*/
@Override
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
- public String getSignLink(Integer id) {
- if(id == null ){
+ public String getSignLink(SmsCheckDTO smsCheckDTO) {
+ if(Objects.isNull(smsCheckDTO)
+ || Objects.isNull(smsCheckDTO.getBusinessId())
+ || StringUtils.isBlank(smsCheckDTO.getCode())
+ ){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ //楠岃瘉 楠岃瘉鐮�
+ if(!debugModel){
+ smsEmailService.validateCode(smsCheckDTO.getCode());
+ }
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
- UnionChange unionChange = unionChangeMapper.selectById(id);
+ UnionChange unionChange = this.unionChangeDetail(smsCheckDTO.getBusinessId());
if(Objects.isNull(unionChange)||!Constants.equalsInteger(unionChange.getIsdeleted(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
@@ -350,11 +464,10 @@
String fileUrl = null;
if(Constants.equalsObject(unionChange.getType(), Constants.ONE)){
-// fileUrl = ExcelExporter.build(ApplyChange.class).exportChangeUnitExcelToPdf(model,"鎹㈠巶鐢宠琛�","琚繚闄╀汉");
+ fileUrl = ExcelExporter.build(UnionChange.class).exportUnionChangeOtherUnitExcelToPdf(unionChange,"鎹㈠巶鐢宠琛�");
}else{
-// fileUrl = ExcelExporter.build(ApplyChange.class).exportJiajianBaoExcelToPdf(model,"鍔犲噺淇濈敵璇疯〃","琚繚闄╀汉");
+ fileUrl = ExcelExporter.build(UnionChange.class).exportUnionChangeExcelToPdf(unionChange,"鍔犲噺淇濈敵璇疯〃");
}
-
String notifyUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.SIGN_DONE_NOTIFY_URL).getCode();
notifyUrl = notifyUrl.replace("${type}","0").replace("${id}",unionChange.getId().toString());
String applyNo = signService.applySignLocalFile(company.getName(),company.getName(),fileUrl,company.getCode(),company.getEmail(),"鍚堝苟鍗曪紙鍔犲噺淇�/鎹㈠巶锛夌敵璇风缃�",company.getSignId(),notifyUrl);
@@ -383,8 +496,8 @@
if(Objects.isNull(unionChangeBXDDTO)
|| Objects.isNull(unionChangeBXDDTO.getId())
|| Objects.isNull(unionChangeBXDDTO.getApplyDate())
- || StringUtils.isBlank(unionChangeBXDDTO.getFileName())
- || StringUtils.isBlank(unionChangeBXDDTO.getFileUrl())
+ || StringUtils.isBlank(unionChangeBXDDTO.getName())
+ || StringUtils.isBlank(unionChangeBXDDTO.getFileurl())
|| StringUtils.isBlank(unionChangeBXDDTO.getCode())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
@@ -414,14 +527,60 @@
.selectAs(InsuranceApply::getCode,ApplyChange::getApplyCode)
.leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId)
.eq(ApplyChange::getUnionChangeId,unionChange.getId()));
+
+ //瀛樺偍鍚堝苟鍗曚繚闄╁崟
+ Multifile multifile = new Multifile();
+ multifile.setIsdeleted(Constants.ZERO);
+ multifile.setCreator(user.getId());
+ multifile.setCreateDate(new Date());
+ multifile.setObjId(unionChangeBXDDTO.getId());
+ multifile.setCreateDate(new Date());
+ multifile.setObjType(Constants.MultiFile.WTB_CA_DONE_PDF.getKey());
+ multifile.setType(Constants.TWO);
+ multifile.setFileurl(unionChangeBXDDTO.getFileurl());
+ multifile.setName(unionChangeBXDDTO.getName());
+ multifileMapper.insert(multifile);
+
+ if(CollectionUtils.isNotEmpty(unionChangeBXDDTO.getApplyChangeBXDList())){
+ //鏌ヨ鏄惁涓嶅瓨鍦ㄥ綋鍓嶅悎骞跺崟鐨勬暟鎹�
+ if(applyChangeJoinMapper.selectCount(new QueryWrapper<ApplyChange>()
+ .lambda().ne(ApplyChange::getUnionChangeId,unionChangeBXDDTO.getId())
+ .in(ApplyChange::getId,
+ unionChangeBXDDTO.getApplyChangeBXDList().stream().map(m->m.getObjId()).collect(Collectors.toList())
+ )
+ )>Constants.ZERO){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎵瑰崟鏄庣粏璁板綍瀛樺湪闈炴湰鍚堝苟鍗曟暟鎹�");
+ };
+ for (Multifile m:unionChangeBXDDTO.getApplyChangeBXDList()) {
+ if(Objects.isNull(m.getObjId())
+ ||StringUtils.isBlank(m.getFileurl())
+ ||StringUtils.isBlank(m.getName())
+ ){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鍔犲噺淇�/鎹㈠巶涓氬姟鎵瑰崟鏂囦欢淇℃伅缂哄け");
+ }
+ multifile.setIsdeleted(Constants.ZERO);
+ multifile.setCreator(user.getId());
+ multifile.setCreateDate(new Date());
+ multifile.setCreateDate(new Date());
+ multifile.setObjType(Constants.MultiFile.CA_PD_PDF.getKey());
+ multifile.setType(Constants.TWO);
+ multifileMapper.insert(multifile);
+ }
+ }
+
+
if(CollectionUtils.isNotEmpty(applyChangeList)){
for (ApplyChange applyChange:applyChangeList) {
applyChange.setApplyStartTime(unionChangeBXDDTO.getApplyDate());
applyChange.setValidTime(unionChangeBXDDTO.getApplyDate());
applyChange.setEditDate(new Date());
applyChange.setEditor(user.getId());
+ applyChange.setStatus(Constants.ApplyChangeStatus.APPROVE.getKey());
List<ApplyChagneDetail> allList = applyChagneDetailJoinMapper.selectList(new QueryWrapper<ApplyChagneDetail>().lambda().eq(ApplyChagneDetail::getApplyChangeId,applyChange.getId()));
this.dealApplyChangeDetail(applyChange,allList);
+ applyChange.setCode(unionChangeBXDDTO.getCode());
+ applyChange.setCheckUserId(user.getId());
+ applyChangeJoinMapper.updateById(applyChange);
}
}
unionChangeMapper.update(null,new UpdateWrapper<UnionChange>().lambda()
diff --git a/server/service/src/main/java/com/doumee/service/business/third/SignService.java b/server/service/src/main/java/com/doumee/service/business/third/SignService.java
index 73596b0..785b3be 100644
--- a/server/service/src/main/java/com/doumee/service/business/third/SignService.java
+++ b/server/service/src/main/java/com/doumee/service/business/third/SignService.java
@@ -304,7 +304,6 @@
/**
* 鍙戣捣绛剧害
* @param name
- * @param fileUrl
* @param file
* @param creditCoe
* @param email
@@ -318,7 +317,7 @@
params.put("serverCa",1); //浣跨敤浜戣瘉涔�
params.put("file",new File(file));
params.put("dealType",5); //鎸囧畾鍚堝悓鏂囦欢绛剧讲鏂瑰紡 5 涓洪儴鍒嗚嚜鍔ㄧ
- params.put("positionType",2); //鎸囧畾閫氳繃琛ㄥ崟鍩熸柟寮忚缃瀛椾綅缃�
+ params.put("positionType",0); //鎸囧畾閫氳繃琛ㄥ崟鍩熸柟寮忚缃瀛椾綅缃�
params.put("fileType",0);
params.put("needQifengSign",1);
params.put("notifyUrl",notifyUrl);
@@ -330,7 +329,7 @@
sReq.setEmail(email); //鍦ㄥ悰瀛愮娉ㄥ唽璁よ瘉鐨勯偖绠�
// sReq.setChapteJson("[{\"page\":0,\"chaptes\":[{\"offsetX\":0.12,\"offsetY\":0.23}]},{\"page\":1,\"chaptes\":[{\"offsetX\":0.45,\"offsetY\":0.67}]}]");
// sReq.setChapteJson(postionJson);
- sReq.setSearchKey(postionJson);
+// sReq.setSearchKey(postionJson);
sReq.setSignId(singId);
sReq.setSearchConvertExtend("{\"fixX\":-80,\"fixY\":-80}");
sReq.setNoNeedVerify(1);
diff --git a/server/shop/src/main/java/com/doumee/api/business/ApplyChangeController.java b/server/shop/src/main/java/com/doumee/api/business/ApplyChangeController.java
index 9bf62a2..a05160a 100644
--- a/server/shop/src/main/java/com/doumee/api/business/ApplyChangeController.java
+++ b/server/shop/src/main/java/com/doumee/api/business/ApplyChangeController.java
@@ -7,6 +7,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.ApplyChange;
+import com.doumee.dao.business.model.InsuranceApply;
import com.doumee.service.business.ApplyChangeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -140,4 +141,12 @@
public ApiResponse<ApplyChange> findById(@PathVariable Integer id) {
return ApiResponse.success(applyChangeService.findDetail(id));
}
+
+
+ @ApiOperation("鍟嗘埛瀹℃牳 - 濮旀墭淇濅笟鍔�")
+ @PostMapping("/check")
+ @RequiresPermissions("business:applychange:check")
+ public ApiResponse check(@RequestBody ApplyChange model) {
+ return ApiResponse.success(applyChangeService.check(model));
+ }
}
diff --git a/server/shop/src/main/java/com/doumee/api/business/UnionApplyController.java b/server/shop/src/main/java/com/doumee/api/business/UnionApplyController.java
index 7e39a97..10f399e 100644
--- a/server/shop/src/main/java/com/doumee/api/business/UnionApplyController.java
+++ b/server/shop/src/main/java/com/doumee/api/business/UnionApplyController.java
@@ -6,6 +6,10 @@
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.dto.SaveUnionApplyDTO;
+import com.doumee.dao.business.dto.SmsCheckDTO;
+import com.doumee.dao.business.dto.UnionApplyBXDDTO;
+import com.doumee.dao.business.dto.UploadMultifileDTO;
import com.doumee.dao.business.model.UnionApply;
import com.doumee.service.business.UnionApplyService;
import io.swagger.annotations.Api;
@@ -81,10 +85,56 @@
ExcelExporter.build(UnionApply.class).export(unionApplyService.findPage(pageWrap).getRecords(), "鍚堝苟鎶曚繚鍗曚俊鎭〃", response);
}
+
@ApiOperation("鏍规嵁ID鏌ヨ")
@GetMapping("/{id}")
@RequiresPermissions("business:unionapply:query")
- public ApiResponse findById(@PathVariable Integer id) {
- return ApiResponse.success(unionApplyService.findById(id));
+ public ApiResponse<UnionApply> findById(@PathVariable Integer id) {
+ return ApiResponse.success(unionApplyService.detail(id));
}
+
+
+ @PreventRepeat
+ @ApiOperation("鍒涘缓鍚堝苟鍗�")
+ @PostMapping("/merge")
+ @RequiresPermissions("business:unionapply:create")
+ public ApiResponse merge(@RequestBody SaveUnionApplyDTO saveUnionApplyDTO) {
+ return ApiResponse.success(unionApplyService.merge(saveUnionApplyDTO));
+ }
+
+ @ApiOperation("鍏抽棴鍚堝苟鍗�")
+ @GetMapping("/close")
+ @RequiresPermissions("business:unionapply:close")
+ public ApiResponse close(@RequestParam Integer id) {
+ unionApplyService.cancelMerge(id);
+ return ApiResponse.success(null);
+ }
+
+ @PreventRepeat
+ @ApiOperation("涓婁紶鎶曚繚鍗�")
+ @PostMapping("/uploadToubaodan")
+ @RequiresPermissions("business:unionapply:create")
+ public ApiResponse uploadToubaodan(@RequestBody UploadMultifileDTO uploadMultifileDTO) {
+ unionApplyService.uploadToubaodan(uploadMultifileDTO);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("绛剧讲鐢宠鍗�")
+ @PostMapping("/getSignLink")
+ @RequiresPermissions("business:unionapply:query")
+ public ApiResponse getSignLink(@RequestBody SmsCheckDTO smsCheckDTO) {
+ unionApplyService.getSignLink(smsCheckDTO);
+ return ApiResponse.success(null);
+ }
+
+
+ @ApiOperation("涓婁紶淇濋櫓鍗�")
+ @PostMapping("/uploadBXD")
+ @RequiresPermissions("business:unionchange:query")
+ public ApiResponse uploadBXD(@RequestBody UnionApplyBXDDTO unionApplyBXDDTO) {
+ unionApplyService.uploadBXD(unionApplyBXDDTO);
+ return ApiResponse.success(null);
+ }
+
+
}
diff --git a/server/shop/src/main/java/com/doumee/api/business/UnionChangeController.java b/server/shop/src/main/java/com/doumee/api/business/UnionChangeController.java
index 08d9a26..01480f7 100644
--- a/server/shop/src/main/java/com/doumee/api/business/UnionChangeController.java
+++ b/server/shop/src/main/java/com/doumee/api/business/UnionChangeController.java
@@ -6,6 +6,9 @@
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.dto.SaveUnionChangeDTO;
+import com.doumee.dao.business.dto.SmsCheckDTO;
+import com.doumee.dao.business.dto.UnionChangeBXDDTO;
import com.doumee.dao.business.model.UnionChange;
import com.doumee.service.business.UnionChangeService;
import io.swagger.annotations.Api;
@@ -85,6 +88,40 @@
@GetMapping("/{id}")
@RequiresPermissions("business:unionchange:query")
public ApiResponse findById(@PathVariable Integer id) {
- return ApiResponse.success(unionChangeService.findById(id));
+ return ApiResponse.success(unionChangeService.getDetail(id));
+ }
+
+ @PreventRepeat
+ @ApiOperation("鍒涘缓鍚堝苟鍗�")
+ @PostMapping("/merge")
+ @RequiresPermissions("business:unionchange:create")
+ public ApiResponse merge(@RequestBody SaveUnionChangeDTO saveUnionChangeDTO) {
+ return ApiResponse.success(unionChangeService.merge(saveUnionChangeDTO));
+ }
+
+
+ @ApiOperation("鍏抽棴鍚堝苟鍗�")
+ @GetMapping("/close")
+ @RequiresPermissions("business:unionchange:close")
+ public ApiResponse close(@RequestParam Integer id) {
+ unionChangeService.cancelMerge(id);
+ return ApiResponse.success(null);
+ }
+
+
+ @ApiOperation("绛剧讲鐢宠鍗�")
+ @PostMapping("/getSignLink")
+ @RequiresPermissions("business:unionchange:query")
+ public ApiResponse getSignLink(@RequestBody SmsCheckDTO smsCheckDTO) {
+ unionChangeService.getSignLink(smsCheckDTO);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("涓婁紶淇濋櫓鍗�")
+ @PostMapping("/uploadBXD")
+ @RequiresPermissions("business:unionchange:query")
+ public ApiResponse uploadBXD(@RequestBody UnionChangeBXDDTO unionChangeBXDDTO) {
+ unionChangeService.uploadBXD(unionChangeBXDDTO);
+ return ApiResponse.success(null);
}
}
--
Gitblit v1.9.3