From 098386f316ecaa7122bc979809d8160db81304ed Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期四, 06 二月 2025 18:17:26 +0800
Subject: [PATCH] Merge branch '2.0.1' of http://139.186.142.91:10010/r/productDev/funingyunwei into 2.0.1
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java | 18
server/system_service/pom.xml | 52 +
h5/pages/polling/detail.vue | 4
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomContractDataVO.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwStocktakingService.java | 4
h5/pages/login.vue | 80 +-
h5/pages/polling/point.vue | 10
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java | 134 +++
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java | 24
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java | 66 ++
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkDeskCloutController.java | 17
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java | 8
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwProblem.java | 10
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WorkbenchesService.java | 4
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java | 5
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectDataVO.java | 5
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java | 1
h5/pages.json | 7
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java | 52 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java | 5
admin/src/views/stock/components/config.js | 5
h5/utils/service.js | 4
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java | 32 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceService.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java | 65 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java | 29
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java | 249 ++++++-
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwFloorStatusDataVO.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractBillService.java | 4
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwOutinboundRecordCloudController.java | 92 ++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwBuildingServiceImpl.java | 1
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStockServiceImpl.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwCallTempDataDTO.java | 30
admin/src/views/stock/out.vue | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolTaskRecordService.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java | 25
admin/src/views/stock/record.vue | 2
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwTempConfigCloudController.java | 45
server/system_service/src/main/java/com/doumee/core/utils/Constants.java | 1
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolTaskRecordController.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java | 108 ++
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProblemController.java | 15
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundRecordServiceImpl.java | 9
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwContractBillDTO.java | 55 +
h5/pages/polling/task.vue | 2
server/system_service/src/main/java/com/doumee/dao/business/model/SmsEmail.java | 8
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java | 7
server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java | 9
server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java | 4
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStocktakingController.java | 10
h5/static/side/default_empty@2x.png | 0
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java | 44
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java | 20
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceCloudController.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomStatusDataVO.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwSmsEmailBillCallDTO.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProblemService.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java | 15
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java | 3
h5/pages/polling/empty.vue | 49 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwTempConfigService.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WorkbenchesServiceImpl.java | 50 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java | 230 ++++++-
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStockController.java | 14
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java | 41
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java | 52 +
70 files changed, 1,547 insertions(+), 342 deletions(-)
diff --git a/admin/src/views/stock/components/config.js b/admin/src/views/stock/components/config.js
index f03110b..819a718 100644
--- a/admin/src/views/stock/components/config.js
+++ b/admin/src/views/stock/components/config.js
@@ -3,13 +3,14 @@
{ name: '棰嗙敤閫�鍥�', id: 1, type: 0 },
{ name: '搴撳瓨璋冩暣', id: 2, type: 0 },
{ name: '鍏跺畠鍏ュ簱', id: 3, type: 0 },
- // { name: '鐩樼泩鍏ュ簱', id: 4, type: 0 },
+ { name: '鐩樼泩鍏ュ簱', id: 4, type: 0 },
+
{ name: '棰嗙敤鍑哄簱', id: 5, type: 1 },
{ name: '浠撳簱鍑哄崟', id: 6, type: 1 },
{ name: '璋冩暣鍑哄簱', id: 7, type: 1 },
{ name: '閲囪喘鍑哄簱', id: 8, type: 1 },
{ name: '鍏跺畠鍑哄簱', id: 9, type: 1 },
- // { name: '鐩樺嚭鍑哄簱', id: 10, type: 1 },
+ { name: '鐩樺嚭鍑哄簱', id: 10, type: 1 },
]
export const rules = {
warehouseId: [{ required: true, message: '璇烽�夋嫨', trigger: 'blur' }],
diff --git a/admin/src/views/stock/out.vue b/admin/src/views/stock/out.vue
index c94aedf..f181d40 100644
--- a/admin/src/views/stock/out.vue
+++ b/admin/src/views/stock/out.vue
@@ -87,7 +87,7 @@
label: '鍑哄簱绫诲瀷',
labelCode: 'name',
valueCode: 'id',
- options: StoreTypeOps.filter(i => i.type == 0)
+ options: StoreTypeOps.filter(i => i.type == 1)
},
],
online: true
diff --git a/admin/src/views/stock/record.vue b/admin/src/views/stock/record.vue
index b2e1863..94cc276 100644
--- a/admin/src/views/stock/record.vue
+++ b/admin/src/views/stock/record.vue
@@ -5,7 +5,7 @@
<el-button @click="handleEx()" v-permissions="['business:ywoutinboundrecord:exportExcel']">瀵煎嚭</el-button>
</div>
<el-table v-loading="loading" :data="list" stripe>
- <el-table-column prop="doneDate" label="鍗曟嵁鏃ユ湡" min-width="90" show-overflow-tooltip />
+ <el-table-column prop="doneDate" label="鍗曟嵁鏃ユ湡" min-width="100" show-overflow-tooltip />
<el-table-column prop="materialCode" label="鐗╂枡缂栫爜" min-width="90" show-overflow-tooltip />
<el-table-column prop="materialName" label="鐗╂枡鍚嶇О" min-width="90" show-overflow-tooltip />
<el-table-column prop="carCodeFront" label="鐗╂枡鍒嗙被" min-width="120" show-overflow-tooltip>
diff --git a/h5/pages.json b/h5/pages.json
index 908bd3a..f5f619d 100644
--- a/h5/pages.json
+++ b/h5/pages.json
@@ -118,6 +118,13 @@
{
"navigationBarTitleText" : "浠诲姟涓績"
}
+ },
+ {
+ "path" : "pages/polling/empty",
+ "style" :
+ {
+ "navigationBarTitleText" : "鎵爜宸℃"
+ }
}
],
"globalStyle": {
diff --git a/h5/pages/login.vue b/h5/pages/login.vue
index dc65036..2a7e31a 100644
--- a/h5/pages/login.vue
+++ b/h5/pages/login.vue
@@ -29,8 +29,8 @@
loginPost,
getUserInfo,
sendSMsPost,
- ywWxAuthorize,
-
+ ywWxAuthorize,
+
getRecordByUserPoint
} from '@/api'
import {
@@ -45,7 +45,7 @@
form: {
phone: '',
code: ''
- },
+ },
ywinfo: {},
downTime: 0,
code: ''
@@ -53,11 +53,11 @@
},
onLoad(option) {
console.log('onLoad');
- // https://zhcg.fnwtzx.com/#/pages/login?type=0&ywid=ywid
- const ywinfo = uni.getStorageSync('ywinfo') || {}
- if (ywinfo.ywid && (ywinfo.type || ywinfo.type == 0)) {
- this.ywinfo = ywinfo
- uni.setStorageSync('ywinfo', {})
+ // https://zhcg.fnwtzx.com/#/pages/login?type=0&ywid=ywid
+ const ywinfo = uni.getStorageSync('ywinfo') || {}
+ if (ywinfo.ywid && (ywinfo.type || ywinfo.type == 0)) {
+ this.ywinfo = ywinfo
+ uni.setStorageSync('ywinfo', {})
}
if (option.ywid || option.ywid == 0) {
uni.setStorageSync('ywinfo', {
@@ -83,7 +83,7 @@
code: code || this.code
}).then(res => {
if (res.code === 200) {
- console.log('res', res);
+ // console.log('res', res);
that.$store.commit('setOpenId', res.data.openid)
if (res.data.token && res.data.token != '') {
that.$store.commit('setToken', res.data.token)
@@ -91,13 +91,19 @@
that.$store.commit('setUserInfo', ress.data)
})
const ywinfo = this.ywinfo
- if (ywinfo.ywid && (ywinfo.type || ywinfo.type == 0)) {
- getRecordByUserPoint({pointCode: ywinfo.ywid}).then(res => {
- if(res.data && res.data.id){
- uni.redirectTo({
- url: "/pages/polling/point?id=" + res.data.id
- })
- }
+ if (ywinfo.ywid && (ywinfo.type || ywinfo.type == 0)) {
+ getRecordByUserPoint({
+ pointCode: ywinfo.ywid
+ }).then(res => {
+ if (res.data && res.data.id) {
+ uni.redirectTo({
+ url: "/pages/polling/point?id=" + res.data.id
+ })
+ } else {
+ uni.redirectTo({
+ url: "/pages/polling/empty"
+ })
+ }
})
} else {
setTimeout(() => {
@@ -111,8 +117,8 @@
})
} else {
// let url = 'https://zhcg.fnwtzx.com/yunwei_h5'
- // const appID = 'wx95ac1efb67f0330d'
- let url = 'https://dmtest.ahapp.net/yunwei_h5'
+ // const appID = 'wx95ac1efb67f0330d'
+ let url = 'https://dmtest.ahapp.net/yunwei_h5'
const appID = 'wx4d7c10bdec51942b'
let uri = encodeURIComponent(url)
let authURL =
@@ -145,22 +151,28 @@
this.setToken(res.data)
this.showToast('鐧诲綍鎴愬姛')
getUserInfo().then(ress => {
- this.setUserInfo(ress.data)
- const ywinfo = this.ywinfo
- if (ywinfo.ywid && (ywinfo.type || ywinfo.type == 0)) {
- getRecordByUserPoint({pointCode: ywinfo.ywid}).then(res => {
- getRecordByUserPoint({pointCode: ywinfo.ywid}).then(res => {
- if(res.data && res.data.id){
- uni.redirectTo({
- url: "/pages/polling/point?id=" + res.data.id
- })
- }
- })
- })
- } else {
- uni.redirectTo({
- url: "/pages/index"
- })
+ this.setUserInfo(ress.data)
+ const ywinfo = this.ywinfo
+ if (ywinfo.ywid && (ywinfo.type || ywinfo.type == 0)) {
+ // getRecordByUserPoint({pointCode: ywinfo.ywid}).then(res => {
+ getRecordByUserPoint({
+ pointCode: ywinfo.ywid
+ }).then(res => {
+ if (res.data && res.data.id) {
+ uni.redirectTo({
+ url: "/pages/polling/point?id=" + res.data.id
+ })
+ } else {
+ uni.redirectTo({
+ url: "/pages/polling/empty"
+ })
+ }
+ })
+ // })
+ } else {
+ uni.redirectTo({
+ url: "/pages/index"
+ })
}
})
}
diff --git a/h5/pages/polling/detail.vue b/h5/pages/polling/detail.vue
index 2f2620a..202dfeb 100644
--- a/h5/pages/polling/detail.vue
+++ b/h5/pages/polling/detail.vue
@@ -42,7 +42,7 @@
<template v-if="item.status == 1">
<view class="line">
<view class="la">宸℃缁撴灉锛�</view>
- <view class="val" :class="{ red: item.dealStatus == 1 }">{{ item.dealStatus == 0 ? '姝e父' : '寮傚父' }}</view>
+ <view class="val" :class="{ red: item.dealStatus == 1 }">{{ item.dealStatus == 0 ? '姝e父' : item.dealStatus == 1 ? '寮傚父' : '-' }}</view>
</view>
<view class="line">
<view class="la">宸℃鏃堕棿锛�</view>
@@ -181,7 +181,7 @@
this.info = res.data
let time = new Date(res.data.startDate).getTime()
console.log('res.data.startDate', new Date().getTime());
- this.flag = new Date().getTime() > time && (this.info.status == 0 || this.info.status == 1)
+ this.flag = new Date().getTime() > time && (this.info.status == 0 || this.info.status == 1 || this.info.status == 2)
})
ywPatrolTaskRecord({
capacity: 999,
diff --git a/h5/pages/polling/empty.vue b/h5/pages/polling/empty.vue
new file mode 100644
index 0000000..00181a5
--- /dev/null
+++ b/h5/pages/polling/empty.vue
@@ -0,0 +1,49 @@
+<template>
+ <view class="main_app">
+ <image class="logo" src="@/static/side/default_empty@2x.png" mode=""></image>
+ <view class="btn" @click="backHome">杩斿洖涓婚〉</view>
+ </view>
+</template>
+
+<script>
+ export default {
+ data() {
+ return {
+
+ };
+ },
+ methods: {
+ backHome(){
+ uni.redirectTo({
+ url: '/pages/index'
+ })
+ }
+ }
+ }
+</script>
+
+<style lang="scss">
+.main_app{
+ .logo{
+ width: 272rpx;
+ height: 228rpx;
+ margin: 60% auto 0;
+ }
+ .btn{
+ position: fixed;
+ bottom: 64rpx;
+ left: 40rpx;
+ width: 670rpx;
+ height: 88rpx;
+ background: #0068FF;
+ box-shadow: 0rpx 8rpx 20rpx 0rpx rgba(0,104,255,0.3);
+ border-radius: 44rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ font-weight: 500;
+ font-size: 32rpx;
+ color: #FFFFFF;
+ }
+}
+</style>
diff --git a/h5/pages/polling/point.vue b/h5/pages/polling/point.vue
index 122737b..a71efb0 100644
--- a/h5/pages/polling/point.vue
+++ b/h5/pages/polling/point.vue
@@ -8,7 +8,7 @@
<template v-if="info.status == 1">
<view class="line">
<div class="la">宸℃缁撴灉锛�</div>
- <div class="val primaryColor" :class="{red: info.dealStatus == 1}">{{ info.dealStatus == 0 ? '姝e父' : '寮傚父' }}
+ <div class="val primaryColor" :class="{red: info.dealStatus == 1}">{{ info.dealStatus == 0 ? '姝e父' : info.dealStatus == 1 ? '寮傚父' : '-' }}
</div>
</view>
<view class="line">
@@ -141,10 +141,10 @@
id: 1,
name: '寮傚父'
},
- {
- id: '',
- name: '璺宠繃'
- },
+ // {
+ // id: 2,
+ // name: '璺宠繃'
+ // },
]
],
diff --git a/h5/pages/polling/task.vue b/h5/pages/polling/task.vue
index e76a9cc..0fcaf6b 100644
--- a/h5/pages/polling/task.vue
+++ b/h5/pages/polling/task.vue
@@ -44,7 +44,7 @@
<view class="line" @click="itemClick(item)">鎵ц鏃堕棿锛歿{ item.startDate.slice(11, 16) }} 鑷� {{ item.endDate.slice(11, 16) }}</view>
<view class="line">
<view @click="itemClick(item)">瀹屾垚鎯呭喌锛歿{item.finishNum || 0}}/{{item.patrolNum}}</view>
- <view v-if="param.queryStatus == '0,1' && item.flag && (item.status == 0 || item.status == 1)" class="btn" @click="openSc(item)">
+ <view v-if="param.queryStatus == '0,1' && item.flag && (item.status == 0 || item.status == 1 || item.status == 2)" class="btn" @click="openSc(item)">
<image src="@/static/side/ic_saoma@2x.png" class="saoma" mode=""></image>
<view>鎵爜宸℃</view>
</view>
diff --git a/h5/static/side/default_empty@2x.png b/h5/static/side/default_empty@2x.png
new file mode 100644
index 0000000..72c83fd
--- /dev/null
+++ b/h5/static/side/default_empty@2x.png
Binary files differ
diff --git a/h5/utils/service.js b/h5/utils/service.js
index 0a05213..6df5176 100644
--- a/h5/utils/service.js
+++ b/h5/utils/service.js
@@ -37,10 +37,10 @@
if (data.code === 500 || data.code === 5112) {
uni.clearStorageSync()
return uni.navigateTo({
- url: '/pages/login/login'
+ url: '/pages/login'
})
}
- return
+ return resolve(data)
}
resolve(data)
// return response.data
diff --git a/server/system_service/pom.xml b/server/system_service/pom.xml
index 22a532c..234c0a4 100644
--- a/server/system_service/pom.xml
+++ b/server/system_service/pom.xml
@@ -311,7 +311,59 @@
<type>pom</type>
<scope>import</scope>
</dependency>
+ <!-- 澶勭悊word鏂囦欢 -->
+ <dependency>
+ <groupId>org.jxls</groupId>
+ <artifactId>jxls</artifactId>
+ <version>2.6.0</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-core</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.jxls</groupId>
+ <artifactId>jxls-poi</artifactId>
+ <version>1.2.0</version>
+ </dependency>
+ <dependency>
+ <groupId>fr.opensagres.xdocreport</groupId>
+ <artifactId>fr.opensagres.xdocreport.core</artifactId>
+ <version>2.0.2</version>
+ </dependency>
+ <dependency>
+ <groupId>fr.opensagres.xdocreport</groupId>
+ <artifactId>fr.opensagres.xdocreport.document</artifactId>
+ <version>2.0.2</version>
+ </dependency>
+ <dependency>
+ <groupId>fr.opensagres.xdocreport</groupId>
+ <artifactId>fr.opensagres.xdocreport.template</artifactId>
+ <version>2.0.2</version>
+ </dependency>
+ <dependency>
+ <groupId>fr.opensagres.xdocreport</groupId>
+ <artifactId>fr.opensagres.xdocreport.document.docx</artifactId>
+ <version>2.0.2</version>
+ </dependency>
+ <dependency>
+ <groupId>fr.opensagres.xdocreport</groupId>
+ <artifactId>fr.opensagres.xdocreport.template.freemarker</artifactId>
+ <version>2.0.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.freemarker</groupId>
+ <artifactId>freemarker</artifactId>
+ <version>2.3.23</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>2.5</version>
+ </dependency>
<!-- <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
diff --git a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
index 820bb4d..29ead0a 100644
--- a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -63,6 +63,7 @@
public static final String YW_CONTRACT_BILL ="YW_CONTRACT_BILL" ;
public static final String YW_MATERIAL ="YW_MATERIAL" ;
public static final String YW_PROBLEM ="YW_PROBLEM" ;
+ public static final String YW_QUICK_MODEL ="YW_QUICK_MODEL" ;
public static final String RESERVATION_TOTAL_NUM ="RESERVATION_TOTAL_NUM" ;
public static final String SIGN_IN_PLACE_LAT ="SIGN_IN_PLACE_LAT" ;
diff --git a/server/system_service/src/main/java/com/doumee/dao/business/model/SmsEmail.java b/server/system_service/src/main/java/com/doumee/dao/business/model/SmsEmail.java
index 0d205a8..f28469d 100644
--- a/server/system_service/src/main/java/com/doumee/dao/business/model/SmsEmail.java
+++ b/server/system_service/src/main/java/com/doumee/dao/business/model/SmsEmail.java
@@ -74,8 +74,8 @@
@ExcelColumn(name="閭")
private String email;
- @ApiModelProperty(value = "鐘舵�� 0鏈娇鐢� 1宸蹭娇鐢� 2绛夊緟鍙戦��")
- @ExcelColumn(name="鐘舵�� 0鏈娇鐢� 1宸蹭娇鐢� 2绛夊緟鍙戦��")
+ @ApiModelProperty(value = "鐘舵�� 0=鎴愬姛锛�1=澶辫触")
+ @ExcelColumn(name="鐘舵�� 0=鎴愬姛锛�1=澶辫触")
private Integer status;
@ApiModelProperty(value = "绫诲瀷 0鐭俊 1閭欢")
@@ -86,8 +86,8 @@
@ExcelColumn(name="鍏宠仈瀵硅薄缂栫爜")
private Integer objId;
- @ApiModelProperty(value = "鍏宠仈瀵硅薄绫诲瀷 0=楠岃瘉鐮侊紱1=璁垮涓氬姟锛�2=璁垮鎶ュ锛�3=闅愭偅闅忔墜鎷嶏紱4=鐢ㄨ溅鐢宠锛�5=浼氳瀹や俊鎭紱6=鐗╂祦杞﹂绾︼紱7=鐗╂祦杞︿綔涓�")
- @ExcelColumn(name="鍏宠仈瀵硅薄绫诲瀷 0=楠岃瘉鐮侊紱1=璁垮涓氬姟锛�2=璁垮鎶ュ锛�3=闅愭偅闅忔墜鎷嶏紱4=鐢ㄨ溅鐢宠锛�5=浼氳瀹や俊鎭紱6=鐗╂祦杞﹂绾︼紱7=鐗╂祦杞︿綔涓�;8=浼氳瀹ょ敵璇�")
+ @ApiModelProperty(value = "鍏宠仈瀵硅薄绫诲瀷 0=楠岃瘉鐮侊紱1=鍌垂鐭俊锛�2=鍌垂閭欢")
+ @ExcelColumn(name="鍏宠仈瀵硅薄绫诲瀷 0=楠岃瘉鐮侊紱1=鍌垂鐭俊锛�2=鍌垂閭欢")
private String objType;
@ApiModelProperty(value = "闄勪欢闆嗗悎")
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java b/server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java
index a3a456a..9a51e6f 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java
@@ -71,7 +71,7 @@
@ExcelColumn(name="鍏宠仈瀵硅薄缂栫爜")
private Integer objId;
- @ApiModelProperty(value = "鍏宠仈瀵硅薄绫诲瀷 0=鐩樼偣涓氬姟 1=宸℃浠诲姟")
+ @ApiModelProperty(value = "鍏宠仈瀵硅薄绫诲瀷 0=鐩樼偣涓氬姟 1=宸℃浠诲姟 2=宸ュ崟涓氬姟")
@ExcelColumn(name="鍏宠仈瀵硅薄绫诲瀷")
private Integer objType;
@@ -87,16 +87,15 @@
@TableField(exist = false)
private String typeDetail;
- @ApiModelProperty(value = "鍏宠仈鍙傛暟1" ,notes = "鍏宠仈鍙傛暟1")
+ @ApiModelProperty(value = "寰呭姙鏃ユ湡" ,notes = "鍏宠仈鍙傛暟1")
@ExcelColumn(name="鍏宠仈鍙傛暟1")
private String param1;
- @ApiModelProperty(value = "鍏宠仈鍙傛暟2",notes = "鍏宠仈鍙傛暟2")
+ @ApiModelProperty(value = "jsonH5灞曠ず鏁版嵁",notes = "鍏宠仈鍙傛暟2")
@ExcelColumn(name="鍏宠仈鍙傛暟2")
private String param2;
- @ApiModelProperty(value = "鍏宠仈鍙傛暟3",notes = "鍏宠仈鍙傛暟3")
- @ExcelColumn(name="鍏宠仈鍙傛暟3")
+ @ApiModelProperty(value = "涓氬姟鐘舵�侊細0=寰呭鐞�/鏈紑濮嬶紱1=杩涜涓紱2=宸插畬鎴�/宸插鐞�",notes = "鍏宠仈鍙傛暟3")
private String param3;
@ApiModelProperty(value = "鍏宠仈鍙傛暟4")
diff --git a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
index 05e1749..e2b5955 100644
--- a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
+++ b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
@@ -230,7 +230,7 @@
throw new BusinessException(ResponseStatus.NO_ALLOW_LOGIN);
}
- if(isDebug == null || !isDebug){
+ /*if(isDebug == null || !isDebug){
//楠岃瘉 鐭俊鐮�
SmsEmail model = smsEmailMapper.selectOne(new QueryWrapper<SmsEmail>().lambda()
.eq(SmsEmail::getType, Constants.ZERO)
@@ -254,7 +254,7 @@
model.setStatus(Constants.ONE);
model.setEditDate(new Date());
smsEmailMapper.updateById(model);
- }
+ }*/
Company company = new Company();
if(Objects.nonNull(user.getCompanyId())){
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java
index 8d6816a..1d6d9d6 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwContractBillCloudController.java
@@ -9,10 +9,12 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.dto.YwSmsEmailBillCallDTO;
import com.doumee.dao.business.model.YwContractBill;
import com.doumee.dao.business.vo.YwContractBillCallDataVO;
import com.doumee.dao.business.vo.YwContractBillDataVO;
import com.doumee.service.business.YwContractBillService;
+import com.doumee.service.business.impl.SmsEmailServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@@ -33,6 +35,9 @@
@Autowired
private YwContractBillService ywContractBillService;
+
+ @Autowired
+ private SmsEmailServiceImpl smsEmailService;
@PreventRepeat
@ApiOperation("鏂板缓")
@@ -139,4 +144,23 @@
return ApiResponse.success(ywContractBillService.getNoticeCustomerData(billIds));
}
+
+ @ApiOperation("涓嬭浇鍌垂鏂囦欢")
+ @PostMapping("/downloadCallFeeDoc")
+ @CloudRequiredPermission("business:ywcontractbill:query")
+ public void downloadCallFeeDoc(@RequestBody List<Integer> billIds,@RequestHeader(Constants.HEADER_USER_TOKEN) String token,HttpServletResponse response) {
+ ywContractBillService.downloadCallFeeDoc(billIds,getLoginUser(token),response);
+ }
+
+ @ApiOperation("鍙戦�佺煭淇′笌閭欢")
+ @PostMapping("/sendSmsEmail")
+ @CloudRequiredPermission("business:ywcontractbill:query")
+ public ApiResponse sendSmsEmail(@RequestBody List<YwSmsEmailBillCallDTO> ywSmsEmailBillCallDTOList, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywContractBillService.sendSmsEmail(ywSmsEmailBillCallDTOList,smsEmailService,getLoginUser(token));
+ return ApiResponse.success(null);
+ }
+
+
+
+
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceCloudController.java
index 6c3738c..db601da 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwDeviceCloudController.java
@@ -9,6 +9,7 @@
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.YwDevice;
import com.doumee.dao.business.vo.YwDeviceCateDataVO;
+import com.doumee.dao.business.vo.YwDeviceParentCateDataVO;
import com.doumee.dao.business.vo.YwDeviceStatusDataVO;
import com.doumee.service.business.YwDeviceService;
import io.swagger.annotations.Api;
@@ -106,7 +107,7 @@
@ApiOperation("璁惧鏁伴噺鍒嗙被缁熻")
@PostMapping("/getDeviceCateData")
@CloudRequiredPermission("business:ywdevice:query")
- public ApiResponse<Set<YwDeviceCateDataVO>> getDeviceCateData (@RequestBody YwDevice ywDevice,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ public ApiResponse<Set<YwDeviceParentCateDataVO>> getDeviceCateData (@RequestBody YwDevice ywDevice, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywDeviceService.getDeviceCateData(ywDevice));
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwOutinboundRecordCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwOutinboundRecordCloudController.java
new file mode 100644
index 0000000..963ecc6
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwOutinboundRecordCloudController.java
@@ -0,0 +1,92 @@
+package com.doumee.cloud.admin;
+
+import com.doumee.api.BaseController;
+import com.doumee.config.annotation.CloudRequiredPermission;
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.model.PageData;
+import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.model.YwOutinboundRecord;
+import com.doumee.service.business.YwOutinboundRecordService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletResponse;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2025/01/06 14:28
+ */
+@Api(tags = "杩愮淮鍑哄叆搴撲俊鎭槑缁嗚〃")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywOutinboundRecord")
+public class YwOutinboundRecordCloudController extends BaseController {
+
+ @Autowired
+ private YwOutinboundRecordService ywOutinboundRecordService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ywoutinboundrecord:create")
+ public ApiResponse create(@RequestBody YwOutinboundRecord ywOutinboundRecord,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywOutinboundRecordService.create(ywOutinboundRecord));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ywoutinboundrecord:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywOutinboundRecordService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ywoutinboundrecord:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ywOutinboundRecordService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ywoutinboundrecord:update")
+ public ApiResponse updateById(@RequestBody YwOutinboundRecord ywOutinboundRecord,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywOutinboundRecordService.updateById(ywOutinboundRecord);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ywoutinboundrecord:query")
+ public ApiResponse<PageData<YwOutinboundRecord>> findPage (@RequestBody PageWrap<YwOutinboundRecord> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywOutinboundRecordService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ywoutinboundrecord:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwOutinboundRecord> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ExcelExporter.build(YwOutinboundRecord.class).export(ywOutinboundRecordService.findPage(pageWrap).getRecords(), "杩愮淮鍑哄叆搴撲俊鎭槑缁嗚〃", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ywoutinboundrecord:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywOutinboundRecordService.findById(id));
+ }
+}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolTaskRecordController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolTaskRecordController.java
index 052f8bd..b798212 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolTaskRecordController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwPatrolTaskRecordController.java
@@ -2,6 +2,7 @@
import com.doumee.api.BaseController;
import com.doumee.config.annotation.CloudRequiredPermission;
+import com.doumee.config.annotation.LoginNoRequired;
import com.doumee.core.annotation.excel.ExcelExporter;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.model.ApiResponse;
@@ -102,11 +103,15 @@
@ApiOperation("鎵爜鑾峰彇宸℃鐐逛换鍔′俊鎭�")
@PostMapping("/getPointRecordByCode")
- @CloudRequiredPermission("business:ywpatroltaskrecord:update")
public ApiResponse<YwPatrolTaskRecord> getPointRecordByCode(@RequestBody YwPatrolTaskRecord ywPatrolTaskRecord,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success("鏌ヨ鎴愬姛",ywPatrolTaskRecordService.getPointRecordByCode(ywPatrolTaskRecord));
}
+ @ApiOperation("鎵爜鑾峰彇宸℃鐐逛换鍔′俊鎭�")
+ @PostMapping("/getRecordByUserPoint")
+ public ApiResponse<YwPatrolTaskRecord> getRecordByUserPoint(@RequestBody YwPatrolTaskRecord ywPatrolTaskRecord,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success("鏌ヨ鎴愬姛",ywPatrolTaskRecordService.getRecordByUserPoint(ywPatrolTaskRecord,getLoginUser(token)));
+ }
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProblemController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProblemController.java
index 54e6b7d..4e68564 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProblemController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProblemController.java
@@ -37,6 +37,7 @@
@Autowired
private YwWorkorderServiceImpl ywWorkorderService;
+
@LoginNoRequired
@PreventRepeat
@ApiOperation("闂鎻愭姤")
@@ -48,7 +49,7 @@
- @ApiOperation("鏍规嵁ID淇敼")
+ @ApiOperation("杞伐鍗�")
@PostMapping("/editProblem")
@CloudRequiredPermission("business:ywproblem:update")
public ApiResponse editProblem(@RequestBody YwProblem ywProblem,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
@@ -105,6 +106,16 @@
@GetMapping("/{id}")
@CloudRequiredPermission("business:ywproblem:query")
public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- return ApiResponse.success(ywProblemService.getDetail(id));
+ return ApiResponse.success(ywProblemService.getDetail(id,null));
}
+
+
+
+ @ApiOperation("鏍规嵁宸ュ崟鏌ヨ")
+ @GetMapping("/getByWorkorderId")
+ @CloudRequiredPermission("business:ywproblem:query")
+ public ApiResponse getByWorkorderId(@RequestParam Integer workorderId,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(ywProblemService.getDetail(null,workorderId));
+ }
+
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java
index 02ec71c..ac43583 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwProjectCloudController.java
@@ -95,8 +95,6 @@
return ApiResponse.success(ywProjectService.projectTree(dataDTO));
}
-
-
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
@CloudRequiredPermission("business:ywproject:exportExcel")
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStockController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStockController.java
index badb715..bfe3148 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStockController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStockController.java
@@ -36,14 +36,14 @@
@ApiOperation("鏂板缓")
@PostMapping("/create")
@CloudRequiredPermission("business:ywstock:create")
- public ApiResponse create(@RequestBody YwStock ywStock) {
+ public ApiResponse create(@RequestBody YwStock ywStock,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywStockService.create(ywStock));
}
@ApiOperation("鏍规嵁ID鍒犻櫎")
@GetMapping("/delete/{id}")
@CloudRequiredPermission("business:ywstock:delete")
- public ApiResponse deleteById(@PathVariable Integer id) {
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
ywStockService.deleteById(id);
return ApiResponse.success(null);
}
@@ -51,7 +51,7 @@
@ApiOperation("鎵归噺鍒犻櫎")
@GetMapping("/delete/batch")
@CloudRequiredPermission("business:ywstock:delete")
- public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
String [] idArray = ids.split(",");
List<Integer> idList = new ArrayList<>();
for (String id : idArray) {
@@ -64,7 +64,7 @@
@ApiOperation("鏍规嵁ID淇敼")
@PostMapping("/updateById")
@CloudRequiredPermission("business:ywstock:update")
- public ApiResponse updateById(@RequestBody YwStock ywStock) {
+ public ApiResponse updateById(@RequestBody YwStock ywStock,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
ywStockService.updateById(ywStock);
return ApiResponse.success(null);
}
@@ -72,21 +72,21 @@
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
@CloudRequiredPermission("business:ywstock:query")
- public ApiResponse<PageData<YwStock>> findPage (@RequestBody PageWrap<YwStock> pageWrap) {
+ public ApiResponse<PageData<YwStock>> findPage (@RequestBody PageWrap<YwStock> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywStockService.findPage(pageWrap));
}
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
@CloudRequiredPermission("business:ywstock:exportExcel")
- public void exportExcel (@RequestBody PageWrap<YwStock> pageWrap, HttpServletResponse response) {
+ public void exportExcel (@RequestBody PageWrap<YwStock> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
ExcelExporter.build(YwStock.class).export(ywStockService.findPage(pageWrap).getRecords(), "杩愮淮搴撳瓨淇℃伅琛�", response);
}
@ApiOperation("鏍规嵁ID鏌ヨ")
@GetMapping("/{id}")
@CloudRequiredPermission("business:ywstock:query")
- public ApiResponse findById(@PathVariable Integer id) {
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywStockService.findById(id));
}
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStocktakingController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStocktakingController.java
index 97e1230..14dfbf1 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStocktakingController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwStocktakingController.java
@@ -8,8 +8,11 @@
import com.doumee.core.model.PageWrap;
import com.doumee.core.model.PageData;
import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.model.YwOutinbound;
import com.doumee.dao.business.model.YwStocktaking;
+import com.doumee.service.business.YwOutinboundService;
import com.doumee.service.business.YwStocktakingService;
+import com.doumee.service.business.impl.YwOutinboundServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
@@ -31,6 +34,9 @@
@Autowired
private YwStocktakingService ywStocktakingService;
+
+ @Autowired
+ private YwOutinboundServiceImpl ywOutinboundService;
@PreventRepeat
@ApiOperation("鏂板缓")
@@ -87,7 +93,7 @@
@ApiOperation("鏍规嵁ID鏌ヨ")
@GetMapping("/{id}")
@CloudRequiredPermission("business:ywstocktaking:query")
- public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ public ApiResponse<YwStocktaking> findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywStocktakingService.getDetail(id));
}
@@ -115,7 +121,7 @@
@GetMapping("/finishById")
@CloudRequiredPermission("business:ywstocktaking:delete")
public ApiResponse finishById(@RequestParam Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
- ywStocktakingService.finishById(id,getLoginUser(token));
+ ywStocktakingService.finishById(id,ywOutinboundService,getLoginUser(token));
return ApiResponse.success(null);
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwTempConfigCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwTempConfigCloudController.java
index 8d9a5d0..2a945b1 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwTempConfigCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwTempConfigCloudController.java
@@ -1,18 +1,19 @@
package com.doumee.cloud.admin;
import com.doumee.api.BaseController;
+import com.doumee.config.annotation.CloudRequiredPermission;
import com.doumee.core.annotation.excel.ExcelExporter;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageWrap;
import com.doumee.core.model.PageData;
import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.dto.YwCallTempDataDTO;
import com.doumee.dao.business.model.YwTempConfig;
import com.doumee.dao.business.vo.YwCallTempDataVO;
import com.doumee.service.business.YwTempConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
@@ -35,23 +36,23 @@
@PreventRepeat
@ApiOperation("鏂板缓")
@PostMapping("/create")
- @RequiresPermissions("business:ywtempconfig:create")
- public ApiResponse create(@RequestBody YwTempConfig ywTempConfig) {
+ @CloudRequiredPermission("business:ywtempconfig:create")
+ public ApiResponse create(@RequestBody YwTempConfig ywTempConfig,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywTempConfigService.create(ywTempConfig));
}
@ApiOperation("鏍规嵁ID鍒犻櫎")
@GetMapping("/delete/{id}")
- @RequiresPermissions("business:ywtempconfig:delete")
- public ApiResponse deleteById(@PathVariable Integer id) {
+ @CloudRequiredPermission("business:ywtempconfig:delete")
+ public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
ywTempConfigService.deleteById(id);
return ApiResponse.success(null);
}
@ApiOperation("鎵归噺鍒犻櫎")
@GetMapping("/delete/batch")
- @RequiresPermissions("business:ywtempconfig:delete")
- public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+ @CloudRequiredPermission("business:ywtempconfig:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
String [] idArray = ids.split(",");
List<Integer> idList = new ArrayList<>();
for (String id : idArray) {
@@ -63,41 +64,49 @@
@ApiOperation("鏍规嵁ID淇敼")
@PostMapping("/updateById")
- @RequiresPermissions("business:ywtempconfig:update")
- public ApiResponse updateById(@RequestBody YwTempConfig ywTempConfig) {
+ @CloudRequiredPermission("business:ywtempconfig:update")
+ public ApiResponse updateById(@RequestBody YwTempConfig ywTempConfig,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
ywTempConfigService.updateById(ywTempConfig);
return ApiResponse.success(null);
}
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
- @RequiresPermissions("business:ywtempconfig:query")
- public ApiResponse<PageData<YwTempConfig>> findPage (@RequestBody PageWrap<YwTempConfig> pageWrap) {
+ @CloudRequiredPermission("business:ywtempconfig:query")
+ public ApiResponse<PageData<YwTempConfig>> findPage (@RequestBody PageWrap<YwTempConfig> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywTempConfigService.findPage(pageWrap));
}
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
- @RequiresPermissions("business:ywtempconfig:exportExcel")
- public void exportExcel (@RequestBody PageWrap<YwTempConfig> pageWrap, HttpServletResponse response) {
+ @CloudRequiredPermission("business:ywtempconfig:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<YwTempConfig> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
ExcelExporter.build(YwTempConfig.class).export(ywTempConfigService.findPage(pageWrap).getRecords(), "鍌即淇℃伅閰嶇疆", response);
}
@ApiOperation("鏍规嵁ID鏌ヨ")
@GetMapping("/{id}")
- @RequiresPermissions("business:ywtempconfig:query")
- public ApiResponse findById(@PathVariable Integer id) {
+ @CloudRequiredPermission("business:ywtempconfig:query")
+ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywTempConfigService.findById(id));
}
- @ApiOperation("鏍规嵁ID鏌ヨ")
+ @ApiOperation("鑾峰彇閰嶇疆淇℃伅")
@GetMapping("/getCallTemp")
- @RequiresPermissions("business:ywtempconfig:query")
- public ApiResponse<YwCallTempDataVO> getCallTemp() {
+ @CloudRequiredPermission("business:ywtempconfig:query")
+ public ApiResponse<YwCallTempDataVO> getCallTemp(@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
return ApiResponse.success(ywTempConfigService.getCallTemp());
}
+ @ApiOperation("鏇存柊閰嶇疆妯℃澘淇℃伅")
+ @PostMapping("/updTempConfig")
+ @CloudRequiredPermission("business:ywtempconfig:update")
+ public ApiResponse updTempConfig (@RequestBody YwCallTempDataDTO ywCallTempDataDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ ywTempConfigService.updTempConfig(ywCallTempDataDTO);
+ return ApiResponse.success(null);
+ }
+
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkDeskCloutController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkDeskCloutController.java
index 008e05e..e7c3479 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkDeskCloutController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkDeskCloutController.java
@@ -12,10 +12,12 @@
import com.doumee.dao.business.model.YwQuickModel;
import com.doumee.dao.business.vo.MonthDataResponse;
import com.doumee.dao.business.vo.WorkDeskDataResponse;
+import com.doumee.dao.system.model.Notices;
import com.doumee.service.business.WorkbenchesService;
import com.doumee.service.business.YwPatrolTaskRecordService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -41,8 +43,15 @@
return ApiResponse.success(workbenchesService.getYwQuickList(getLoginUser(token)));
}
+ @ApiOperation("鑾峰彇榛樿蹇嵎鑿滃崟妯″潡淇℃伅")
+ @GetMapping("/getDefaultYwQuickList")
+ public ApiResponse<List<YwQuickModel>> getDefaultYwQuickList() {
+ return ApiResponse.success(workbenchesService.getYwQuickList(null));
+ }
+
+
@ApiOperation("鏇存柊蹇嵎妯″潡鏁版嵁")
- @GetMapping("/updMyYwQuickModel")
+ @PostMapping("/updMyYwQuickModel")
public ApiResponse updMyYwQuickModel(@RequestBody List<Integer> idList,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
workbenchesService.updMyYwQuickModel(idList,getLoginUser(token));
return ApiResponse.success("鎿嶄綔鎴愬姛");
@@ -60,6 +69,10 @@
return ApiResponse.success(workbenchesService.workDeskData(getLoginUser(token)));
}
-
+ @ApiOperation("H5-鎴戠殑寰呭姙")
+ @PostMapping("/myNoticesH5")
+ public ApiResponse<PageData<Notices>> myNoticesH5 (@RequestBody PageWrap<Notices> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
+ return ApiResponse.success(workbenchesService.getMyNotices(pageWrap,getLoginUser(token)));
+ }
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java
index 9694405..e0c27a1 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/excel/ExcelReplaceCommon.java
@@ -4,6 +4,11 @@
import com.doumee.core.exception.BusinessException;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.YwTempConfig;
+import fr.opensagres.xdocreport.document.IXDocReport;
+import fr.opensagres.xdocreport.document.registry.XDocReportRegistry;
+import fr.opensagres.xdocreport.template.IContext;
+import fr.opensagres.xdocreport.template.TemplateEngineKind;
+import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
@@ -33,7 +38,7 @@
- public static String modifyWordTemplate(String templatePath, List<YwTempConfig> ywTempConfigList,String fileName) {
+ public static String modifyWordTemplate_old(String templatePath, List<YwTempConfig> ywTempConfigList,String fileName) {
try (
XWPFDocument document = new XWPFDocument(getFileInputStream(templatePath))) {
// 姝ゅ杩炴帴鍒板悗缁浛鎹㈡楠�
@@ -42,10 +47,15 @@
for (XWPFRun run : paragraph.getRuns()) {
// 鏇挎崲鍗犱綅绗�
String text = run.getText(0);
+ System.out.println(text);
if (text != null) {
- for (YwTempConfig ywTempConfig:ywTempConfigList
- ) {
- text = text.replace(ywTempConfig.getTitle(), ywTempConfig.getUrl());
+ for (YwTempConfig ywTempConfig:ywTempConfigList) {
+ if(StringUtils.isNotBlank(ywTempConfig.getUrl())){
+ text = text.replace(ywTempConfig.getTitle(), ywTempConfig.getUrl());
+ }else{
+ text = text.replace(ywTempConfig.getTitle(), "");
+ }
+
}
run.setText(text, 0); // 閲嶆柊璁剧疆鏂囨湰
}
@@ -67,6 +77,53 @@
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏂囦欢杞崲寮傚父!");
}
+
+
+
+ public static String modifyWordTemplate(String templatePath, List<YwTempConfig> ywTempConfigList,String fileName,String zipFilePath) {
+ InputStream ins = null;
+ OutputStream out = null;
+ try{
+ //鑾峰彇Word妯℃澘锛屾ā鏉垮瓨鏀捐矾寰勫湪椤圭洰鐨剅esources鐩綍涓�
+ ins = getFileInputStream(templatePath) ;
+// ins = new FileInputStream("D:\\3.docx");
+ //娉ㄥ唽xdocreport瀹炰緥骞跺姞杞紽reeMarker妯℃澘寮曟搸
+ IXDocReport report = XDocReportRegistry.getRegistry().loadReport(ins,
+ TemplateEngineKind.Freemarker);
+ //鍒涘缓xdocreport涓婁笅鏂囧璞�
+ IContext context = report.createContext();
+ for (YwTempConfig ywTempConfig:ywTempConfigList) {
+ if(StringUtils.isBlank(ywTempConfig.getUrl())){
+ ywTempConfig.setUrl("-");
+ }
+ context.put(ywTempConfig.getTitle().replace("${","").replace("}",""), ywTempConfig.getUrl());
+ }
+ String path = zipFilePath + fileName;
+ out = new FileOutputStream(new File(path));
+ report.process(context, out);
+ return path;
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (null != ins) {
+ try {
+ ins.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ return null;
+ }
+
+
+
+
+
+
+
+
+
/*璇诲彇缃戠粶鏂囦欢*/
public static InputStream getFileInputStream(String path) {
URL url = null;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwCallTempDataDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwCallTempDataDTO.java
new file mode 100644
index 0000000..417ad77
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwCallTempDataDTO.java
@@ -0,0 +1,30 @@
+package com.doumee.dao.business.dto;
+
+import com.doumee.dao.business.model.YwTempConfig;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * Created by IntelliJ IDEA.
+ *
+ * @Author : Rk
+ * @create 2025/1/8 15:32
+ */
+@Data
+public class YwCallTempDataDTO {
+
+ @ApiModelProperty(value = "鐭伅妯℃澘", example = "1")
+ private YwTempConfig smsTemp;
+
+ @ApiModelProperty(value = "閭欢淇℃伅妯℃澘", example = "1")
+ private YwTempConfig emailTemp;
+
+ @ApiModelProperty(value = "绉熻祦閫氱煡鍗曟ā鏉�", example = "1")
+ private YwTempConfig leaseTemp;
+
+ @ApiModelProperty(value = "鍏朵粬閫氱煡鍗曟ā鏉�", example = "1")
+ private YwTempConfig otherTemp;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwContractBillDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwContractBillDTO.java
new file mode 100644
index 0000000..5e969a2
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwContractBillDTO.java
@@ -0,0 +1,55 @@
+package com.doumee.dao.business.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.doumee.core.annotation.excel.ExcelColumn;
+import com.doumee.core.model.LoginUserModel;
+import com.doumee.dao.business.model.YwContractBill;
+import com.doumee.dao.business.model.YwContractRevenue;
+import com.doumee.dao.business.model.YwContractRoom;
+import com.doumee.dao.system.model.Multifile;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 杩愮淮鍚堝悓璐﹀崟淇℃伅琛�
+ * @author 姹熻箘韫�
+ * @date 2024/11/19 16:07
+ */
+@Data
+public class YwContractBillDTO {
+
+ @ApiModelProperty(value = "寮�濮嬫椂闂�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date startDate;
+
+ @ApiModelProperty(value = "缁撴潫鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date endDate;
+
+ @ApiModelProperty(value = "璁″垝浠樻鏃�")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date planPayDate;
+
+ @ApiModelProperty(value = "鎺掑簭鐮�", example = "1")
+ private Integer sortnum;
+
+ @ApiModelProperty(value = "璐﹀崟閲戦", example = "1")
+ private BigDecimal totleFee;
+
+ @ApiModelProperty(value = "璐圭敤绫诲瀷锛�0=绉熻祦璐癸紱1=鐗╀笟璐癸紱2=绉熻祦鎶奸噾锛�3=鐗╀笟鎶奸噾锛�4=姘寸數璐癸紱5=鏉傞」璐癸紱6=鍏朵粬; 7=淇濊瘉閲�", example = "1")
+ private Integer costType;
+
+
+
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwSmsEmailBillCallDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwSmsEmailBillCallDTO.java
index 4d71839..d4f0398 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwSmsEmailBillCallDTO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/YwSmsEmailBillCallDTO.java
@@ -11,7 +11,7 @@
* @date 2023/02/14 11:14
*/
@Data
-public class YwSmsEmailBillCallDTO implements Serializable {
+public class YwSmsEmailBillCallDTO{
@ApiModelProperty(value = "鎺ユ敹浜轰富閿�" )
private Integer userId;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
index 4d5198f..de03a54 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import com.doumee.core.model.LoginUserModel;
+import com.doumee.dao.business.dto.YwContractBillDTO;
import com.doumee.dao.system.model.Multifile;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -161,6 +162,7 @@
@ExcelColumn(name="鐗╀笟绉熻祦鏉℃浠锋牸鍗曚綅")
private Integer wyFirstCircle;
+
@ApiModelProperty(value = "绉熻祦鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�", example = "1")
@ExcelColumn(name="绉熻祦鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�")
private Integer zlPayType;
@@ -205,6 +207,9 @@
@ApiModelProperty(value = "鎴块棿涓婚敭 鏌ヨ浣跨敤")
@TableField(exist = false)
private Integer roomId;
+ @ApiModelProperty(value = "妤煎畤涓婚敭 鏌ヨ浣跨敤")
+ @TableField(exist = false)
+ private Integer buildingId;
@ApiModelProperty(value = "闄勪欢闆嗗悎")
@TableField(exist = false)
private List<Multifile> fileList;
@@ -273,7 +278,34 @@
@ApiModelProperty(value = "閫�绉熸椂鏂板鐨勬敹浠樻璐﹀崟")
@TableField(exist = false)
private List<YwContractBill> addBillList;
+ @ApiModelProperty(value = "绉熻祦澶╂暟", example = "1")
+ @TableField(exist = false)
+ private Integer leaseDays;
+ @ApiModelProperty(value = "绉熻祦鍗曚环锛堝厓锛�", example = "1")
+ @TableField(exist = false)
+ private BigDecimal leasePrice;
@ApiModelProperty(value = "褰撳墠鏀寔閫�娆句慨鏀归噾棰濈殑璐﹀崟闆嗗悎")
@TableField(exist = false)
private List<YwContractBill> canBackRentBills;
+
+ @ApiModelProperty(value = "鍚堝悓鍒涘缓璐﹀崟淇℃伅")
+ @TableField(exist = false)
+ private List<YwContractBillDTO> ywContractBillDTOList;
+
+
+ @ApiModelProperty(value = "绉熻祦璐硅处鍗�",hidden = true)
+ @TableField(exist = false)
+ private List<YwContractBillDTO> zlBillDTOList;
+ @ApiModelProperty(value = "鐗╀笟璐硅处鍗�",hidden = true)
+ @TableField(exist = false)
+ private List<YwContractBillDTO> wyBillDTOList;
+ @ApiModelProperty(value = "鐗╀笟鎶奸噾璐﹀崟",hidden = true)
+ @TableField(exist = false)
+ private YwContractBillDTO wyBillDTO;
+ @ApiModelProperty(value = "绉熻祦鎶奸噾璐﹀崟",hidden = true)
+ @TableField(exist = false)
+ private YwContractBillDTO zlBillDTO;
+
+
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
index 16238e4..c59d394 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContractBill.java
@@ -143,6 +143,7 @@
@ApiModelProperty(value = "閫�绉熺粨绠楅噾棰濆悎璁�", example = "1")
@ExcelColumn(name="閫�绉熺粨绠楅噾棰濆悎璁�")
private BigDecimal btFee;
+
@ApiModelProperty(value = "瀹㈡埛鍚嶇О锛堜粯娆炬柟锛�", example = "1")
@ExcelColumn(name="瀹㈡埛鍚嶇О",index = 0,width = 10)
@TableField(exist = false)
@@ -156,6 +157,13 @@
@TableField(exist = false)
private Integer customerId;
+ @ApiModelProperty(value = "鏄惁鍙戦�侀偖浠讹細0=鍚︼紱1=鏄�", example = "1")
+ @TableField(exist = false)
+ private Integer isSendEmail;
+
+ @ApiModelProperty(value = "鏄惁鍙戦�佺煭淇★細0=鍚︼紱1=鏄�", example = "1")
+ @TableField(exist = false)
+ private Integer isSendSms;
@ApiModelProperty(value = "鍏徃鍚嶇О", example = "1")
@TableField(exist = false)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java
index ef14ea2..2d95c9c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwDevice.java
@@ -124,6 +124,10 @@
@ApiModelProperty(value = "缁翠繚璇存槑")
private String maintenanceContent;
+ @ApiModelProperty(value = "璐叆鏃ユ湡")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date buyDate;
+
@ApiModelProperty(value = "鍒嗙被鍚嶇О")
@TableField(exist = false)
private String categoryName;
@@ -140,6 +144,10 @@
@TableField(exist = false)
private String realName;
+ @ApiModelProperty(value = "缁翠繚浜哄憳鍚嶇О")
+ @TableField(exist = false)
+ private String maintenanceUserName;
+
@ApiModelProperty(value = "鍥剧墖鍦板潃")
@TableField(exist = false)
private String fileUrl;
@@ -153,6 +161,18 @@
private List<Multifile> multifileList;
+ @ApiModelProperty(value = "椤圭洰鍚嶇О")
+ @TableField(exist = false)
+ private String projectName;
+ @ApiModelProperty(value = "妤煎畤鍚嶇О")
+ @TableField(exist = false)
+ private String buildingName;
+ @ApiModelProperty(value = "妤煎眰鍚嶇О")
+ @TableField(exist = false)
+ private String floorName;
+ @ApiModelProperty(value = "鎴块棿鍚嶇О")
+ @TableField(exist = false)
+ private String roomName;
// @ApiModelProperty(value = "闄勪欢淇℃伅")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java
index e84edc2..36e1608 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinbound.java
@@ -35,7 +35,7 @@
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java
index b201cb7..d8a3f12 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwOutinboundRecord.java
@@ -33,7 +33,7 @@
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createDate;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -99,6 +99,7 @@
@ApiModelProperty(value = "鍗曟嵁鏃ユ湡")
@TableField(exist = false)
+ @JsonFormat(pattern = "yyyy-MM-dd")
private Date doneDate;
@ApiModelProperty(value = "涓�绾у垎绫诲悕绉�")
@@ -117,6 +118,10 @@
@TableField(exist = false)
private String code;
+ @ApiModelProperty(value = "绫诲瀷 0閲囪喘鍏ュ簱 1棰嗙敤閫�鍥� 2璋冩暣鍏ュ簱 3鍏朵粬鍏ュ簱 4鐩樼泩鍏ュ簱 5棰嗙敤鍑哄簱 6浠撳簱鍑哄簱 7璋冩暣鍑哄簱 8閲囪喘鍑哄簱 9鍏朵粬鍑哄簱 10鐩樹簭鍑哄簱", example = "1")
+ @TableField(exist = false)
+ private Integer type;
+
@ApiModelProperty(value = "鍗曟嵁鏃ユ湡 寮�濮� yyyy-MM-dd", example = "1")
@TableField(exist = false)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java
index 3b798da..2b673e3 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwPatrolScheme.java
@@ -56,7 +56,7 @@
@ApiModelProperty(value = "澶囨敞")
private String remark;
- @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤", example = "1")
+ @ApiModelProperty(value = "鐘舵�� 0鍚敤 1绂佺敤 ", example = "1")
@ExcelColumn(name="鐘舵��",index = 8,width = 6,valueMapping = "0=鍚敤;1=鍋滅敤;")
private Integer status;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwProblem.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwProblem.java
index 8eae329..9346c4b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwProblem.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwProblem.java
@@ -77,7 +77,6 @@
@ApiModelProperty(value = "鎻愭姤鏃堕棿")
@ExcelColumn(name="鎻愭姤鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date submitDate;
@ApiModelProperty(value = "缂栧彿")
@@ -142,6 +141,15 @@
@TableField(exist = false)
private Integer workOrderFloorId;
+ @ApiModelProperty(value = "鎵�灞為」鐩紪鐮�", example = "1")
+ @TableField(exist = false)
+ private Integer workOrderProjectId;
+
+ @ApiModelProperty(value = "鎵�灞炴ゼ瀹囩紪鐮�", example = "1")
+ @TableField(exist = false)
+ private Integer workOrderBuildId;
+
+
@ApiModelProperty(value = "宸ュ崟鍒嗙被缂栫爜(鍏宠仈category锛�", example = "1")
@TableField(exist = false)
private Integer workOrderCateId;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java
index 8dee35e..caa8f4a 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwRoom.java
@@ -120,4 +120,5 @@
@TableField(exist = false)
private String floorName;
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
index 06c1422..6c80566 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
@@ -174,6 +174,9 @@
@ExcelColumn(name="宸ュ崟鍒嗙被",index = 3,width = 10)
@TableField(exist = false)
private String categoryName;
+ @ApiModelProperty(value = "宸ュ崟鐖剁骇鍒嗙被")
+ @TableField(exist = false)
+ private String categoryParentName;
@ApiModelProperty(value = "鍒嗛厤浜哄鍚�")
@TableField(exist = false)
private String dispatchUserName;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectDataVO.java
index ba8b2d3..3d2ed39 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectDataVO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/ProjectDataVO.java
@@ -1,5 +1,6 @@
package com.doumee.dao.business.vo;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.dao.business.model.Approve;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -25,6 +26,10 @@
@ApiModelProperty(value = "闈㈢Н")
private BigDecimal area;
+ @ApiModelProperty(value = "绉熻祦鐘舵�侊細0=寰呯璧侊紱1=宸茬璧� ;2=鏈紑鍚璧�", example = "1")
+ private Integer leaseStatus;
+
+
@ApiModelProperty(value = "鐖剁骇涓婚敭")
private Integer pId;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwFloorStatusDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwFloorStatusDataVO.java
index 1108049..d2e4d98 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwFloorStatusDataVO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwFloorStatusDataVO.java
@@ -24,9 +24,6 @@
@ApiModelProperty(value = "妤煎眰鍚嶇О", example = "1")
private String floorName;
- @ApiModelProperty(value = "妤煎眰鏁�", example = "1")
- private Integer floor;
-
@ApiModelProperty(value = "鎴块棿鐘舵�佹暟鎹�", example = "1")
private List<YwRoomStatusDataVO> ywRoomStatusDataVOList;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomContractDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomContractDataVO.java
index 46bf123..446627b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomContractDataVO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomContractDataVO.java
@@ -27,6 +27,9 @@
@ApiModelProperty(value = "鍙嫑鍟嗘埧婧愭暟", example = "1")
private Integer investmentRoomAmount;
+ @ApiModelProperty(value = "鍦ㄧ姣忓ぉ閲戦", example = "1" ,hidden = true)
+ private BigDecimal leaseDayPrice;
+
@ApiModelProperty(value = "鍦ㄧ瀹炴椂鍧囦环", example = "1")
private BigDecimal leasePrice;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomStatusDataVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomStatusDataVO.java
index 5936073..47b3c90 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomStatusDataVO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/YwRoomStatusDataVO.java
@@ -31,7 +31,7 @@
@ApiModelProperty(value = "绉熷鍚嶇О", example = "1")
private String customerName;
- @ApiModelProperty(value = "鎴块棿鐘舵�侊細0=寰呯锛�1=宸茬锛�2=鍗冲皢鍒版湡", example = "1")
+ @ApiModelProperty(value = "鎴块棿鐘舵�侊細0=寰呯锛�1=宸茬锛�2=鍗冲皢鍒版湡锛�", example = "1")
private Integer roomStatus;
@ApiModelProperty(value = "鍒版湡鏃ユ湡", example = "1")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WorkbenchesService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WorkbenchesService.java
index 02cbc28..9602e28 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WorkbenchesService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WorkbenchesService.java
@@ -1,9 +1,12 @@
package com.doumee.service.business;
import com.doumee.core.model.LoginUserInfo;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.YwQuickModel;
import com.doumee.dao.business.vo.MonthDataResponse;
import com.doumee.dao.business.vo.WorkDeskDataResponse;
+import com.doumee.dao.system.model.Notices;
import java.util.List;
@@ -23,4 +26,5 @@
WorkDeskDataResponse workDeskData(LoginUserInfo loginUserInfo);
+ PageData<Notices> getMyNotices(PageWrap<Notices> pageWrap, LoginUserInfo loginUserInfo);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractBillService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractBillService.java
index bc2952d..ef6208f 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractBillService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwContractBillService.java
@@ -3,9 +3,11 @@
import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.dto.YwSmsEmailBillCallDTO;
import com.doumee.dao.business.model.YwContractBill;
import com.doumee.dao.business.vo.YwContractBillCallDataVO;
import com.doumee.dao.business.vo.YwContractBillDataVO;
+import com.doumee.service.business.impl.SmsEmailServiceImpl;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@@ -122,6 +124,6 @@
void downloadCallFeeDoc(List<Integer> billIds, LoginUserInfo loginUserInfo, HttpServletResponse response);
-
+ void sendSmsEmail(List<YwSmsEmailBillCallDTO> ywSmsEmailBillCallDTOList, SmsEmailServiceImpl smsEmailService, LoginUserInfo loginUserInfo);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceService.java
index b32779c..ef46e18 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwDeviceService.java
@@ -6,6 +6,7 @@
import com.doumee.dao.business.model.YwDevice;
import com.doumee.dao.business.vo.YwDeviceCateDataVO;
import com.doumee.dao.business.vo.YwDeviceDataVO;
+import com.doumee.dao.business.vo.YwDeviceParentCateDataVO;
import com.doumee.dao.business.vo.YwDeviceStatusDataVO;
import java.util.List;
@@ -108,7 +109,7 @@
YwDevice findByCode(String deviceCode);
- Set<YwDeviceCateDataVO> getDeviceCateData(YwDevice model);
+ Set<YwDeviceParentCateDataVO> getDeviceCateData(YwDevice model);
YwDeviceStatusDataVO getDeviceStatus(YwDevice model);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolTaskRecordService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolTaskRecordService.java
index deae531..26070ef 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolTaskRecordService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwPatrolTaskRecordService.java
@@ -1,5 +1,6 @@
package com.doumee.service.business;
+import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.YwPatrolTaskRecord;
@@ -101,4 +102,6 @@
YwPatrolTaskRecord getDetail(Integer id);
YwPatrolTaskRecord getPointRecordByCode(YwPatrolTaskRecord bean);
+
+ YwPatrolTaskRecord getRecordByUserPoint(YwPatrolTaskRecord bean, LoginUserInfo loginUserInfo);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProblemService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProblemService.java
index 8b209b6..228310d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProblemService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwProblemService.java
@@ -65,7 +65,7 @@
*/
YwProblem findById(Integer id);
- YwProblem getDetail(Integer id);
+ YwProblem getDetail(Integer id,Integer workorderId);
/**
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwStocktakingService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwStocktakingService.java
index 0df5bf2..aeb5e12 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwStocktakingService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwStocktakingService.java
@@ -4,6 +4,8 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.YwStocktaking;
+import com.doumee.service.business.impl.YwOutinboundServiceImpl;
+
import java.util.List;
/**
@@ -32,7 +34,7 @@
void beginById(Integer id, LoginUserInfo loginUserInfo);
- void finishById(Integer id, LoginUserInfo loginUserInfo);
+ void finishById(Integer id, YwOutinboundServiceImpl ywOutinboundService,LoginUserInfo loginUserInfo);
/**
* 鍒犻櫎
*
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwTempConfigService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwTempConfigService.java
index 5a967f9..bf6df36 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwTempConfigService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwTempConfigService.java
@@ -2,6 +2,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.dto.YwCallTempDataDTO;
import com.doumee.dao.business.model.YwTempConfig;
import com.doumee.dao.business.vo.YwCallTempDataVO;
@@ -98,4 +99,6 @@
long count(YwTempConfig ywTempConfig);
YwCallTempDataVO getCallTemp();
+
+ void updTempConfig(YwCallTempDataDTO ywCallTempDataDTO);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java
index 8a856a8..4d4beaf 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/SmsEmailServiceImpl.java
@@ -584,21 +584,22 @@
@Override
public Integer sendBillSms(String content,String mobile,Integer billId) {
+ boolean result = true;
if(StringUtils.isBlank(mobile)){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ result = false;
}
- boolean result= emayService.sendSingleSms(mobile,content);
- if(!result){
- throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鐭俊鍙戦�佸け璐ワ紝璇风◢鍚庨噸璇曪紒");
+ if(result){
+ result = emayService.sendSingleSms(mobile,content);
}
SmsEmail smsEmail = new SmsEmail();
smsEmail.setIsdeleted(Constants.ZERO);
smsEmail.setCreateDate(new Date());
- smsEmail.setStatus(Constants.ZERO);
+ smsEmail.setStatus(result?Constants.ZERO:Constants.ONE);
smsEmail.setType(Constants.ZERO);
+ smsEmail.setRemark(result?"鐭俊鍙戦�佹垚鍔�":"鐭俊鍙戦�佸け璐�");
smsEmail.setTitle("璐﹀崟鍌垂");
smsEmail.setObjId(billId);
- smsEmail.setObjType(Constants.ZERO+"");
+ smsEmail.setObjType(Constants.ONE+"");
smsEmail.setContent(content);
smsEmailMapper.insert(smsEmail);
return smsEmail.getId();
@@ -609,21 +610,21 @@
@Override
public Integer sendEmail(String email,String content,Integer billId) {
+ boolean result = true;
if(StringUtils.isBlank(email)){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ result = false;
}
- boolean result= emailService.sendEmail(email,"璐﹀崟鍌垂",content,null);
+ if(result){
+ result= emailService.sendEmail(email,"璐﹀崟鍌垂",content,null);
+ }
SmsEmail smsEmail = new SmsEmail();
- smsEmail.setRemark("閭欢鍙戠敓鎴愬姛");
- if(!result){
- smsEmail.setRemark("閭欢鍙戠敓澶辫触");
- }
+ smsEmail.setRemark(result?"閭欢鍙戦�佹垚鍔�":"閭欢鍙戦�佸け璐�");
smsEmail.setIsdeleted(Constants.ZERO);
smsEmail.setCreateDate(new Date());
- smsEmail.setStatus(Constants.ONE);
+ smsEmail.setStatus(result?Constants.ZERO:Constants.ONE);
smsEmail.setType(Constants.TWO);
smsEmail.setObjId(billId);
- smsEmail.setObjType(Constants.ONE+"");
+ smsEmail.setObjType(Constants.TWO+"");
smsEmail.setContent(content);
smsEmailMapper.insert(smsEmail);
return smsEmail.getId();
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WorkbenchesServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WorkbenchesServiceImpl.java
index ef8aa92..d30cd58 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WorkbenchesServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WorkbenchesServiceImpl.java
@@ -2,12 +2,18 @@
import com.alibaba.druid.sql.visitor.functions.Concat;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.LoginUserModel;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DateUtil;
+import com.doumee.core.utils.Utils;
import com.doumee.dao.business.*;
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.vo.MonthDataResponse;
@@ -18,7 +24,6 @@
import com.doumee.service.business.WorkbenchesService;
import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
-import io.jsonwebtoken.lang.Objects;
import io.swagger.models.auth.In;
import org.apache.tomcat.util.bcel.classfile.Constant;
import org.springframework.beans.factory.annotation.Autowired;
@@ -27,6 +32,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.Objects;
import java.util.stream.Collectors;
/**
@@ -53,21 +59,32 @@
@Autowired
private YwStocktakingMapper ywStocktakingMapper;
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
+
@Override
public List<YwQuickModel> getYwQuickList(LoginUserInfo loginUserInfo){
List<YwQuickModel> ywQuickModelList = ywQuickModelMapper.selectList(new QueryWrapper<YwQuickModel>().lambda()
.eq(YwQuickModel::getIsdeleted, Constants.ZERO)
- .eq(YwQuickModel::getUserId,loginUserInfo.getId())
+ .isNull(YwQuickModel::getUserId)
.orderByAsc(YwQuickModel::getSort)
);
- if(CollectionUtils.isEmpty(ywQuickModelList)){
- ywQuickModelList = ywQuickModelMapper.selectList(new QueryWrapper<YwQuickModel>().lambda()
+ if(Objects.nonNull(loginUserInfo)){
+ List<YwQuickModel> userModelList = ywQuickModelMapper.selectList(new QueryWrapper<YwQuickModel>().lambda()
.eq(YwQuickModel::getIsdeleted, Constants.ZERO)
- .isNull(YwQuickModel::getUserId)
+ .eq(YwQuickModel::getUserId,loginUserInfo.getId())
.orderByAsc(YwQuickModel::getSort)
);
+ if(CollectionUtils.isNotEmpty(userModelList)){
+ ywQuickModelList = userModelList;
+ }
+ }
+ String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
+ +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_QUICK_MODEL).getCode();
+ for (YwQuickModel ywQuickModel:ywQuickModelList) {
+ ywQuickModel.setIcoPath(path + ywQuickModel.getIcoPath());
}
return ywQuickModelList;
}
@@ -80,7 +97,7 @@
.isNull(YwQuickModel::getUserId)
.orderByAsc(YwQuickModel::getSort)
);
- if(CollectionUtils.isEmpty(ywQuickModelList) || Constants.equalsInteger(idList.size(),ywQuickModelList.size())){
+ if(CollectionUtils.isEmpty(ywQuickModelList) ){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"蹇嵎妯″潡閰嶇疆寮傚父,璇疯仈绯荤鐞嗗憳");
}
ywQuickModelMapper.delete(new QueryWrapper<YwQuickModel>().lambda().eq(YwQuickModel::getUserId,loginUserInfo.getId()));
@@ -111,6 +128,8 @@
.eq(Notices::getUserId,loginUserInfo.getId())
.eq(Notices::getIsdeleted,Constants.ZERO)
.eq(Notices::getStatus,Constants.ZERO)
+ .like(Notices::getParam1,yearMonth)
+ .ne(Notices::getObjType,Constants.TWO)
);
for (String str:dataList) {
MonthDataResponse monthDataResponse = new MonthDataResponse();
@@ -173,9 +192,22 @@
-
-
-
+ @Override
+ public PageData<Notices> getMyNotices(PageWrap<Notices> pageWrap,LoginUserInfo loginUserInfo) {
+ IPage<Notices> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ MPJLambdaWrapper<Notices> queryWrapper = new MPJLambdaWrapper<>();
+ Notices model = pageWrap.getModel();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ queryWrapper.selectAll(Notices.class)
+ .eq(Notices::getUserId,loginUserInfo.getId())
+ .eq(Notices::getIsdeleted,Constants.ZERO)
+ .eq(Objects.nonNull(model)&&Objects.nonNull(model.getStatus()),Notices::getStatus,model.getStatus())
+ .apply(" param1 <= CURDATE() ")
+ .orderByAsc(Notices::getReaded)
+ .orderByDesc(Notices::getId);
+ PageData<Notices> pageData = PageData.from(noticesJoinMapper.selectJoinPage(page,Notices.class, queryWrapper));
+ return pageData;
+ }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwBuildingServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwBuildingServiceImpl.java
index 713148c..2023119 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwBuildingServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwBuildingServiceImpl.java
@@ -116,7 +116,6 @@
.selectAs(YwProject::getName,YwBuilding::getProjectName)
.select(" (select ifnull(sum(y.FEE_AREA),0) from yw_room y where y.ISDELETED = 0 and y.status = 0 and y.IS_INVESTMENT = 1 and y.BUILDING_ID = t.id ) ",YwBuilding::getRoomFeeArea)
.select(" (select ifnull(sum(y.RENT_AREA),0) from yw_room y where y.ISDELETED = 0 and y.status = 0 and y.IS_INVESTMENT = 1 and y.BUILDING_ID = t.id ) ",YwBuilding::getRoomRentArea)
- .select("",YwBuilding::getRoomFeeArea)
.leftJoin(YwProject.class,YwProject::getId,YwBuilding::getProjectId)
.eq(YwBuilding::getId,id)
.last(" limit 1 ")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java
index e941edb..436e79a 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java
@@ -28,6 +28,7 @@
import org.apache.commons.lang3.StringUtils;
import org.checkerframework.checker.units.qual.C;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
@@ -66,11 +67,17 @@
private YwContractMapper ywContractMapper;
@Autowired
+ private YwAccountMapper ywAccountMapper;
+
+ @Autowired
private MemberMapper memberMapper;
@Autowired
private YwTempConfigMapper ywTempConfigMapper;
+
+ @Value("${zip_file_path}")
+ private String zipFilePath;
@Override
public Integer create(YwContractBill ywContractBill) {
@@ -682,12 +689,13 @@
.selectAs(YwContractDetail::getType,YwContractBill::getDetailType)
.selectAs(YwContract::getZlPayType,YwContractBill::getZlPayType)
.selectAs(YwContract::getWyPayType,YwContractBill::getWyPayType)
- .select(" ( select ifnull(sum(r.rent_area),0) from yw_room y left join yw_contract_room yr on y.id = yr.room_id where yr.contract_id = t.contract_id and y.IS_INVESTMENT = 0 and yr.type = 0 ) " , YwContractBill::getTotalArea)
+ .select(" ( select ifnull(sum(y.rent_area),0) from yw_room y left join yw_contract_room yr on y.id = yr.room_id where yr.contract_id = t.contract_id and y.IS_INVESTMENT = 0 and yr.type = 0 ) " , YwContractBill::getTotalArea)
.leftJoin(YwContract.class,YwContract::getId,YwContractBill::getContractId)
.leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId)
.leftJoin(YwContractDetail.class,YwContractDetail::getId,YwContractBill::getDetailId)
.in(YwContractBill::getId,billIds)
);
+ this.dealRoomDetail(ywContractBillList);
List<YwTempConfig> ywTempConfigList = ywTempConfigMapper.selectList(new QueryWrapper<YwTempConfig>().lambda().eq(YwTempConfig::getIsdeleted,Constants.ZERO));
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(ywTempConfigList)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌妯℃澘閰嶇疆椤�,璇疯仈绯荤鐞嗗憳");
@@ -700,7 +708,7 @@
}
List<File> fileList = new ArrayList<>();
for (YwContractBill ywContractBill:ywContractBillList) {
- this.dealTempData(tempList,ywContractBill,loginUserInfo);
+ List<YwTempConfig> dealList = this.dealTempData(tempList,ywContractBill,loginUserInfo);
String fileName = "鍌垂閫氱煡鍗昣" +ywContractBill.getCode() +"_" + System.currentTimeMillis()+".docx";
YwTempConfig ywTempConfig = new YwTempConfig();
if(Constants.equalsInteger(ywContractBill.getType(),Constants.ZERO)){
@@ -717,7 +725,7 @@
if(Objects.isNull(ywTempConfig)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"妯℃澘淇℃伅寮傚父,璇疯仈绯荤鐞嗗憳");
}
- String path = ExcelReplaceCommon.modifyWordTemplate(ywTempConfig.getUrl(),tempList,fileName);
+ String path = ExcelReplaceCommon.modifyWordTemplate(ywTempConfig.getUrl(),dealList,fileName,zipFilePath);
File f = new File(path);
if(f !=null && f.isFile()){
fileList.add(f);
@@ -739,9 +747,13 @@
}
- public void dealTempData(List<YwTempConfig> ywTempConfigList , YwContractBill ywContractBill, LoginUserInfo loginUserInfo){
+ public List<YwTempConfig> dealTempData(List<YwTempConfig> ywTempConfigList , YwContractBill ywContractBill, LoginUserInfo loginUserInfo){
//鏌ヨ鏀舵敮璐﹀彿鏁版嵁
+ YwAccount ywAccount = ywAccountMapper.selectOne(new QueryWrapper<YwAccount>().lambda().eq(YwAccount::getIsdeleted,Constants.ZERO).eq(YwAccount::getStatus,Constants.ZERO).eq(YwAccount::getCompanyId,ywContractBill.getCompanyId())
+ .orderByDesc(YwAccount::getId)
+ .last(" limit 1 "));
+ List<YwTempConfig> dealList = new ArrayList<>();
for (YwTempConfig y:ywTempConfigList) {
if(y.getTitle().equals("${璐圭敤鍚嶇О}")&&Objects.nonNull(ywContractBill.getCostType())){
//璐圭敤绫诲瀷锛�0=绉熻祦璐癸紱1=鐗╀笟璐癸紱2=绉熻祦鎶奸噾锛�3=鐗╀笟鎶奸噾锛�4=姘寸數璐癸紱5=鏉傞」璐癸紱6=鍏朵粬; 7=淇濊瘉閲�
@@ -798,15 +810,15 @@
y.setUrl("鍏冩瘡骞崇背澶�");
}else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ONE)){
y.setUrl("鍏冩瘡骞崇背鏈�");
- }else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ONE)){
+ }else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.TWO)){
y.setUrl("鍏冩瘡骞崇背骞�");
- } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ONE)){
+ } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.THREE)){
y.setUrl("鍏冩瘡澶�");
- } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ONE)){
+ } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.FOUR)){
y.setUrl("鍏冩瘡鏈�");
- } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ONE)){
+ } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.FIVE)){
y.setUrl("鍏冩瘡骞�");
- } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ONE)){
+ } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.SIX)){
y.setUrl("鍏冩瘡鍦�");
}
}else if(y.getTitle().equals("${搴旀敹鏃ユ湡}")&&Objects.nonNull(ywContractBill.getPlanPayDate())){
@@ -821,7 +833,7 @@
}
}else if(y.getTitle().equals("${绉熷鍚嶇О}")&&StringUtils.isNotBlank(ywContractBill.getCustomerName())){
y.setUrl(ywContractBill.getCustomerName());
- }else if(y.getTitle().equals("${妤煎畤/妤煎眰/鎴挎簮}")){
+ }else if(y.getTitle().equals("${鎴块棿淇℃伅}")){
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractBill.getYwContractRoomList())){
StringBuilder roomPathName = new StringBuilder();
for (YwContractRoom ywContractRoom:ywContractBill.getYwContractRoomList()) {
@@ -846,21 +858,37 @@
}else if(y.getTitle().equals("${绉熻祦闈㈢Н}")&&Objects.nonNull(ywContractBill.getTotalArea())){
y.setUrl(ywContractBill.getTotalArea().toString());
}else if(y.getTitle().equals("${鎵�灞炲叕鍙歌处鎴峰悕绉皚")){
- y.setUrl("鎵�灞炲叕鍙歌处鎴峰悕绉�");
+ if(Objects.nonNull(ywAccount)&&StringUtils.isNotBlank(ywAccount.getName())){
+ y.setUrl(ywAccount.getName());
+ }else{
+ y.setUrl("-");
+ }
}else if(y.getTitle().equals("${鎵�灞炲叕鍙搁摱琛岃处鍙穧")){
y.setUrl("鎵�灞炲叕鍙搁摱琛岃处鍙�");
+ if(Objects.nonNull(ywAccount)&&StringUtils.isNotBlank(ywAccount.getName())){
+ y.setUrl(ywAccount.getName());
+ }else{
+ y.setUrl("-");
+ }
}else if(y.getTitle().equals("${鎵�灞炲叕鍙稿紑鎴烽摱琛寎")){
- y.setUrl("鎵�灞炲叕鍙稿紑鎴烽摱琛�");
+ if(Objects.nonNull(ywAccount)&&StringUtils.isNotBlank(ywAccount.getBankNo())){
+ y.setUrl(ywAccount.getBankNo());
+ }else{
+ y.setUrl("-");
+ }
}else if(y.getTitle().equals("${閫氱煡鍗曠敓鎴愭棩鏈焳")){
y.setUrl(DateUtil.formatDate(new Date(),"yyyy-MM-dd"));
- }else if(y.getTitle().equals("${褰撳墠鐢ㄦ埛濮撳悕}")){
+ }else if(y.getTitle().equals("${鍒惰〃浜哄悕绉皚")){
y.setUrl(loginUserInfo.getRealname());
}
+ dealList.add(y);
}
+ return dealList;
}
- public void sendSmsEmail(List<YwSmsEmailBillCallDTO> ywSmsEmailBillCallDTOList,LoginUserInfo loginUserInfo){
+ @Override
+ public void sendSmsEmail(List<YwSmsEmailBillCallDTO> ywSmsEmailBillCallDTOList,SmsEmailServiceImpl smsEmailService,LoginUserInfo loginUserInfo){
if(CollectionUtils.isEmpty(ywSmsEmailBillCallDTOList)){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
@@ -874,12 +902,15 @@
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(tempList)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌妯℃澘閰嶇疆椤�,璇疯仈绯荤鐞嗗憳");
}
+ Optional<YwTempConfig> smsTempConfigOptional = ywTempConfigList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ZERO)).findAny();
+ Optional<YwTempConfig> emailTempConfigOptional = ywTempConfigList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)).findAny();
for (YwSmsEmailBillCallDTO ywSmsEmailBillCallDTO:ywSmsEmailBillCallDTOList) {
if(Objects.isNull(ywSmsEmailBillCallDTO)
- || Objects.isNull(ywSmsEmailBillCallDTO.getBillId())
+ || Objects.isNull(ywSmsEmailBillCallDTO.getBillId())
|| Objects.isNull(ywSmsEmailBillCallDTO.getUserId())
- ||Objects.isNull(ywSmsEmailBillCallDTO.getSendEmail())
- || Objects.isNull(ywSmsEmailBillCallDTO.getSendSms())){
+ ||Objects.isNull(ywSmsEmailBillCallDTO.getSendEmail())
+ || Objects.isNull(ywSmsEmailBillCallDTO.getSendSms())
+ ){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
@@ -906,29 +937,156 @@
if(Objects.isNull(member)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀛樺湪鏈煡璇㈠埌鐨勪汉鍛樹俊鎭�");
}
-
-
+ if(Objects.nonNull(member)){
+ if(Constants.equalsInteger(ywSmsEmailBillCallDTO.getSendSms(),Constants.ONE) && StringUtils.isNotBlank(member.getPhone())
+ && smsTempConfigOptional.isPresent()){
+ String content = this.dealTempSmsEmailData(smsTempConfigOptional.get().getTitle(),tempList,ywContractBill,loginUserInfo);
+ smsEmailService.sendBillSms(content,member.getPhone(),ywContractBill.getId());
+ }
+ if(Constants.equalsInteger(ywSmsEmailBillCallDTO.getSendEmail(),Constants.ONE) && StringUtils.isNotBlank(member.getEmail())
+ && emailTempConfigOptional.isPresent()){
+ String content = this.dealTempSmsEmailData(emailTempConfigOptional.get().getTitle(),tempList,ywContractBill,loginUserInfo);
+ smsEmailService.sendEmail(content,member.getEmail(),ywContractBill.getId());
+ }
+ }
}
+
+ }
- for (YwSmsEmailBillCallDTO ywSmsEmailBillCallDTO:ywSmsEmailBillCallDTOList) {
-
-
-
-
-
+ public String dealTempSmsEmailData(String tempStr,List<YwTempConfig> ywTempConfigList , YwContractBill ywContractBill, LoginUserInfo loginUserInfo){
+ //鏌ヨ鏀舵敮璐﹀彿鏁版嵁
+ YwAccount ywAccount = ywAccountMapper.selectOne(new QueryWrapper<YwAccount>().lambda().eq(YwAccount::getIsdeleted,Constants.ZERO).eq(YwAccount::getStatus,Constants.ZERO).eq(YwAccount::getCompanyId,ywContractBill.getCompanyId())
+ .orderByDesc(YwAccount::getId)
+ .last(" limit 1 "));
+ for (YwTempConfig y:ywTempConfigList) {
+ if(y.getTitle().equals("${璐圭敤鍚嶇О}")&&Objects.nonNull(ywContractBill.getCostType())){
+ //璐圭敤绫诲瀷锛�0=绉熻祦璐癸紱1=鐗╀笟璐癸紱2=绉熻祦鎶奸噾锛�3=鐗╀笟鎶奸噾锛�4=姘寸數璐癸紱5=鏉傞」璐癸紱6=鍏朵粬; 7=淇濊瘉閲�
+ if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.ZERO)){
+ tempStr.replace("${璐圭敤鍚嶇О}","绉熻祦璐�");
+ }else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.ONE)){
+ tempStr.replace("${璐圭敤鍚嶇О}","鐗╀笟璐�");
+ }else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.TWO)){
+ tempStr.replace("${璐圭敤鍚嶇О}","绉熻祦鎶奸噾");
+ }else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.THREE)){
+ tempStr.replace("${璐圭敤鍚嶇О}","鐗╀笟鎶奸噾");
+ }else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.FOUR)){
+ tempStr.replace("${璐圭敤鍚嶇О}","姘寸數璐�");
+ }else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.FIVE)){
+ tempStr.replace("${璐圭敤鍚嶇О}","鏉傞」璐�");
+ }else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.SIX)){
+ tempStr.replace("${璐圭敤鍚嶇О}","鍏朵粬");
+ }else if(Constants.equalsInteger(ywContractBill.getCostType(),Constants.SEVEN)){
+ tempStr.replace("${璐圭敤鍚嶇О}","淇濊瘉閲�");
+ }
+ }else if(y.getTitle().equals("${璁¤垂鍛ㄦ湡}")&&Objects.nonNull(ywContractBill.getDetailType())){
+ if(Constants.equalsInteger(ywContractBill.getDetailType(),Constants.ZERO)){
+ //绉熻祦鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�
+ if(Objects.nonNull(ywContractBill.getZlPayType())){
+ if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.ZERO)){
+ tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�娆℃�т粯娆�");
+ }else if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.ONE)){
+ tempStr.replace("${璁¤垂鍛ㄦ湡}","姣忎笁涓湀涓�浠�");
+ }else if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.TWO)){
+ tempStr.replace("${璁¤垂鍛ㄦ湡}","鍏釜鏈堜竴浠�");
+ }else if(Constants.equalsInteger(ywContractBill.getZlPayType(),Constants.THREE)){
+ tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�骞翠竴浠�");
+ }
+ }
+ }else{
+ //鐗╀笟鏀粯鏂瑰紡 0=涓�娆℃�т粯娆撅紱1=姣忎笁涓湀涓�浠橈紱2=鍏釜鏈堜竴浠橈紱3=涓�骞翠竴浠�
+ if(Objects.nonNull(ywContractBill.getWyPayType())){
+ if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.ZERO)){
+ tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�娆℃�т粯娆�");
+ }else if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.ONE)){
+ tempStr.replace("${璁¤垂鍛ㄦ湡}","姣忎笁涓湀涓�浠�");
+ }else if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.TWO)){
+ tempStr.replace("${璁¤垂鍛ㄦ湡}","鍏釜鏈堜竴浠�");
+ }else if(Constants.equalsInteger(ywContractBill.getWyPayType(),Constants.THREE)){
+ tempStr.replace("${璁¤垂鍛ㄦ湡}","涓�骞翠竴浠�");
+ }
+ }
+ }
+ }else if(y.getTitle().equals("${鍗曚环}")&&Objects.nonNull(ywContractBill.getPrice())){
+ tempStr.replace("${鍗曚环}",ywContractBill.getPrice().toString());
+ }else if(y.getTitle().equals("${鍗曚綅}")&&Objects.nonNull(ywContractBill.getCircleType())){
+ //浠樻鍛ㄦ湡绫诲瀷 0=鍏冩瘡骞崇背澶�;1=鍏冩瘡骞崇背鏈�;2=鍏冩瘡骞崇背骞�;3=鍏冩瘡澶�;4=鍏冩瘡鏈�;5=鍏冩瘡骞�;6=鍏冩瘡鍦�;
+ if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ZERO)){
+ tempStr.replace("${鍗曚綅}","鍏冩瘡骞崇背澶�");
+ }else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.ONE)){
+ tempStr.replace("${鍗曚綅}","鍏冩瘡骞崇背鏈�");
+ }else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.TWO)){
+ tempStr.replace("${鍗曚綅}","鍏冩瘡骞崇背骞�");
+ } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.THREE)){
+ tempStr.replace("${鍗曚綅}","鍏冩瘡澶�");
+ } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.FOUR)){
+ tempStr.replace("${鍗曚綅}","鍏冩瘡鏈�");
+ } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.FIVE)){
+ tempStr.replace("${鍗曚綅}","鍏冩瘡骞�");
+ } else if(Constants.equalsInteger(ywContractBill.getCircleType(),Constants.SIX)){
+ tempStr.replace("${鍗曚綅}","鍏冩瘡鍦�");
+ }
+ }else if(y.getTitle().equals("${搴旀敹鏃ユ湡}")&&Objects.nonNull(ywContractBill.getPlanPayDate())){
+ tempStr.replace("${搴旀敹鏃ユ湡}",DateUtil.formatDate(ywContractBill.getPlanPayDate(),"yyyy-MM-dd"));
+ }else if(y.getTitle().equals("${搴旀敹閲戦}")&&Objects.nonNull(ywContractBill.getReceivableFee())){
+ tempStr.replace("${搴旀敹閲戦}",ywContractBill.getReceivableFee().toString());
+ }else if(y.getTitle().equals("${璐﹀崟澶囨敞}")){
+ if(StringUtils.isNotBlank(ywContractBill.getRemark())){
+ tempStr.replace("${璐﹀崟澶囨敞}",ywContractBill.getRemark());
+ }else{
+ tempStr.replace("${璐﹀崟澶囨敞}","");
+ }
+ }else if(y.getTitle().equals("${绉熷鍚嶇О}")&&StringUtils.isNotBlank(ywContractBill.getCustomerName())){
+ tempStr.replace("${绉熷鍚嶇О}",ywContractBill.getCustomerName());
+ }else if(y.getTitle().equals("${鎴块棿淇℃伅}")){
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractBill.getYwContractRoomList())){
+ StringBuilder roomPathName = new StringBuilder();
+ for (YwContractRoom ywContractRoom:ywContractBill.getYwContractRoomList()) {
+ if(StringUtils.isNotBlank(ywContractRoom.getProjectName())){
+ roomPathName.append(ywContractRoom.getProjectName()+"/");
+ }
+ if(StringUtils.isNotBlank(ywContractRoom.getBuildingName())){
+ roomPathName.append(ywContractRoom.getBuildingName()+"/");
+ }
+ if(StringUtils.isNotBlank(ywContractRoom.getFloorName())){
+ roomPathName.append(ywContractRoom.getFloorName()+"/");
+ }
+ if(StringUtils.isNotBlank(ywContractRoom.getRoomName())){
+ roomPathName.append(ywContractRoom.getRoomName());
+ }
+ if(StringUtils.isNotBlank(roomPathName)){
+ roomPathName.append(";");
+ }
+ }
+ tempStr.replace("${鎴块棿淇℃伅}",roomPathName.toString());
+ }
+ }else if(y.getTitle().equals("${绉熻祦闈㈢Н}")&&Objects.nonNull(ywContractBill.getTotalArea())){
+ tempStr.replace("${绉熻祦闈㈢Н}",ywContractBill.getTotalArea().toString());
+ }else if(y.getTitle().equals("${鎵�灞炲叕鍙歌处鎴峰悕绉皚")){
+ if(Objects.nonNull(ywAccount)&&StringUtils.isNotBlank(ywAccount.getName())){
+ tempStr.replace("${鎵�灞炲叕鍙歌处鎴峰悕绉皚",ywAccount.getName());
+ }else{
+ tempStr.replace("${鎵�灞炲叕鍙歌处鎴峰悕绉皚","-");
+ }
+ }else if(y.getTitle().equals("${鎵�灞炲叕鍙搁摱琛岃处鍙穧")){
+ if(Objects.nonNull(ywAccount)&&StringUtils.isNotBlank(ywAccount.getName())){
+ tempStr.replace("${鎵�灞炲叕鍙搁摱琛岃处鍙穧",ywAccount.getName());
+ }else{
+ tempStr.replace("${鎵�灞炲叕鍙搁摱琛岃处鍙穧","-");
+ }
+ }else if(y.getTitle().equals("${鎵�灞炲叕鍙稿紑鎴烽摱琛寎")){
+ if(Objects.nonNull(ywAccount)&&StringUtils.isNotBlank(ywAccount.getBankNo())){
+ tempStr.replace("${鎵�灞炲叕鍙稿紑鎴烽摱琛寎",ywAccount.getBankNo());
+ }else{
+ tempStr.replace("${鎵�灞炲叕鍙稿紑鎴烽摱琛寎","-");
+ }
+ }else if(y.getTitle().equals("${閫氱煡鍗曠敓鎴愭棩鏈焳")){
+ tempStr.replace("${閫氱煡鍗曠敓鎴愭棩鏈焳",DateUtil.formatDate(new Date(),"yyyy-MM-dd"));
+ }else if(y.getTitle().equals("${鍒惰〃浜哄悕绉皚")){
+ tempStr.replace("${鍒惰〃浜哄悕绉皚",loginUserInfo.getRealname());
+ }
}
-
-
-
-
-
-
-
-
-
-
-
+ return tempStr;
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java
index ad8f044..49ecb0b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java
@@ -12,6 +12,7 @@
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.*;
import com.doumee.dao.business.dao.CompanyMapper;
+import com.doumee.dao.business.dto.YwContractBillDTO;
import com.doumee.dao.business.model.*;
import com.doumee.dao.system.MultifileMapper;
import com.doumee.dao.system.SystemUserMapper;
@@ -25,6 +26,7 @@
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.StringUtils;
import org.checkerframework.checker.units.qual.C;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -75,8 +77,6 @@
@Transactional(rollbackFor = {BusinessException.class,Exception.class})
public Integer create(YwContract model) {
isParamValidCreated(model);
-
-
model.setCreator(model.getLoginUserInfo().getId());
model.setIsdeleted(Constants.ZERO);
model.setCreateDate(new Date());
@@ -91,7 +91,7 @@
}
model.setRemark(getRemarlByParam(model));
ywContractMapper.insert(model);
- dealDetailListBiz(model);//澶勭悊鏉℃淇℃伅
+ dealDetailListBiz(model,false);//澶勭悊鏉℃淇℃伅
dealMultifileBiz(model);//澶勭悊闄勪欢淇℃伅
dealRoomsForContract(model);//澶勭悊鎴挎簮鍏宠仈琛�
dealLogBiz(model,Constants.YwLogType.CONTRACT_CREATE,model.getLoginUserInfo().getRealname(),"銆�"+model.getRemark().replace("鍚堝悓鎽樿锛�","")+"銆�");//璁板綍鏂板缓鏃ュ織
@@ -162,7 +162,7 @@
isParamValidForBill(model);
model.setCreateDate(new Date());
model.setEditDate(model.getCreateDate());
- dealDetailListBiz(model);//澶勭悊鏉℃淇℃伅
+ dealDetailListBiz(model,true);//澶勭悊鏉℃淇℃伅
return model.getBillList();
}
@@ -177,8 +177,7 @@
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇锋寜椤甸潰瑕佹眰濉啓鍚堝悓淇℃伅");
}
- if(model.getEndDate().getTime()<= model.getStartDate().getTime()){
-
+ if(model.getEndDate().getTime()< model.getStartDate().getTime()){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝鍚堝悓鏈夋晥鏈熺粨鏉熸椂闂翠笉寰楁棭浜庡紑濮嬫椂闂达紒");
}
@@ -211,7 +210,7 @@
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇锋寜椤甸潰瑕佹眰濉啓绉熻祦鏉℃淇℃伅!");
}
- if(d.getEndDate().getTime()<= d.getStartDate().getTime()){
+ if(d.getEndDate().getTime()< d.getStartDate().getTime()){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绉熻祦鏉℃鏈夋晥鏈熺粨鏉熸椂闂翠笉寰楁棭浜庡紑濮嬫椂闂达紒");
}
@@ -387,7 +386,7 @@
.set(YwContract::getEditDate,DateUtil.getCurrDateTime())
.eq(YwContract::getIsdeleted,Constants.ZERO)
.in(YwContract::getStatus,Constants.ONE,Constants.ZERO)
- .apply(" END_DATE < NOW() ")
+ .apply(" END_DATE < CURRENT_DATE ")
);
}
@@ -605,7 +604,11 @@
}
}
- private void dealDetailListBiz(YwContract model) {
+ /**
+ * @param model
+ * @param createBill 鏍规嵁鏉℃鐢熸垚璐﹀崟 false 鍒欐牴鎹墠绔紪杈戝悗鐨勬暟鎹敓鎴�
+ */
+ private void dealDetailListBiz(YwContract model,boolean createBill) {
List<YwContractDetail> details1 = new ArrayList<>();
List<YwContractDetail> details2 = new ArrayList<>();
int num = 0;
@@ -645,7 +648,90 @@
}
}
//澶勭悊璐﹀崟淇℃伅
- dealBillListBiz(model,details1,details2);
+ if(createBill){
+ dealBillListBiz(model,details1,details2);
+ }else{
+ //2025-1-23 13:56:53 鍔犲叆 鍓嶇鍏ュ弬璋冩暣鍚庣殑璐﹀崟淇℃伅
+ List<YwContractBill> ywContractBillList = new ArrayList<>();
+ //鏌ヨ绉熻祦鏉℃
+ if(Constants.equalsInteger(model.getType(),Constants.ZERO )
+ || Constants.equalsInteger(model.getType(),Constants.TWO)&& com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(details1)){
+ YwContractDetail ywContractDetail = details1.get(Constants.ZERO);
+ YwContractBill zlBill = new YwContractBill();
+ BeanUtils.copyProperties(model.getZlBillDTO(),zlBill);
+ zlBill.setCreator(model.getCreator());
+ zlBill.setCreateDate(model.getCreateDate());
+ zlBill.setIsdeleted(Constants.ZERO);
+ zlBill.setStatus(Constants.ZERO);
+ zlBill.setReceivableFee(zlBill.getTotleFee());
+ zlBill.setType(Constants.ZERO);
+ zlBill.setCompanyId(model.getCompanyId());
+ zlBill.setContractId(model.getId());
+ zlBill.setBillType(Constants.ZERO);
+ zlBill.setPayStatus(Constants.ZERO);
+ ywContractBillList.add(zlBill);
+ Integer sortnum = Constants.ONE;
+ for (YwContractBillDTO zlBillDTO:model.getZlBillDTOList()) {
+ YwContractBill zl = new YwContractBill();
+ BeanUtils.copyProperties(zlBillDTO,zl);
+ zl.setCreator(model.getCreator());
+ zl.setCreateDate(model.getCreateDate());
+ zl.setIsdeleted(Constants.ZERO);
+ zl.setStatus(Constants.ZERO);
+ zl.setReceivableFee(zl.getTotleFee());
+ zl.setType(Constants.ZERO);
+ zl.setCompanyId(model.getCompanyId());
+ zl.setContractId(model.getId());
+ zl.setBillType(Constants.ZERO);
+ zl.setPayStatus(Constants.ZERO);
+ zl.setSortnum(sortnum);
+ zl.setDetailId(ywContractDetail.getId());
+ ywContractBillList.add(zl);
+ sortnum++;
+ }
+ }
+ //鏌ヨ鐗╀笟璐﹀崟
+ if(Constants.equalsInteger(model.getType(),Constants.ZERO )
+ || Constants.equalsInteger(model.getType(),Constants.TWO)&& com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(details2)){
+ YwContractDetail ywContractDetail = details2.get(Constants.ZERO);
+ YwContractBill wyBill = new YwContractBill();
+ BeanUtils.copyProperties(model.getWyBillDTO(),wyBill);
+ wyBill.setCreator(model.getCreator());
+ wyBill.setCreateDate(model.getCreateDate());
+ wyBill.setIsdeleted(Constants.ZERO);
+ wyBill.setStatus(Constants.ZERO);
+ wyBill.setReceivableFee(wyBill.getTotleFee());
+ wyBill.setType(Constants.ZERO);
+ wyBill.setCompanyId(model.getCompanyId());
+ wyBill.setContractId(model.getId());
+ wyBill.setBillType(Constants.ZERO);
+ wyBill.setPayStatus(Constants.ZERO);
+ ywContractBillList.add(wyBill);
+ Integer sortnum = Constants.ONE;
+ for (YwContractBillDTO wyBillDTO:model.getWyBillDTOList()) {
+ YwContractBill wy = new YwContractBill();
+ BeanUtils.copyProperties(wyBillDTO,wy);
+ wy.setCreator(model.getCreator());
+ wy.setCreateDate(model.getCreateDate());
+ wy.setIsdeleted(Constants.ZERO);
+ wy.setStatus(Constants.ZERO);
+ wy.setReceivableFee(wy.getTotleFee());
+ wy.setType(Constants.ZERO);
+ wy.setCompanyId(model.getCompanyId());
+ wy.setContractId(model.getId());
+ wy.setBillType(Constants.ZERO);
+ wy.setPayStatus(Constants.ZERO);
+ wy.setSortnum(sortnum);
+ wy.setDetailId(ywContractDetail.getId());
+ ywContractBillList.add(wy);
+ sortnum++;
+ }
+ }
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractBillList)){
+ ywContractBillMapper.insert(ywContractBillList);
+ }
+ }
+
}
/**
@@ -1043,8 +1129,7 @@
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇锋寜椤甸潰瑕佹眰濉啓鍚堝悓淇℃伅");
}
- if(model.getEndDate().getTime()<= model.getStartDate().getTime()){
-
+ if(model.getEndDate().getTime()< model.getStartDate().getTime()){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝鍚堝悓鏈夋晥鏈熺粨鏉熸椂闂翠笉寰楁棭浜庡紑濮嬫椂闂达紒");
}
if(Constants.equalsInteger(model.getType(),Constants.ZERO )
@@ -1080,7 +1165,7 @@
){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇锋寜椤甸潰瑕佹眰濉啓绉熻祦鏉℃淇℃伅!");
}
- if(d.getEndDate().getTime()<= d.getStartDate().getTime()){
+ if(d.getEndDate().getTime()< d.getStartDate().getTime()){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绉熻祦鏉℃鏈夋晥鏈熺粨鏉熸椂闂翠笉寰楁棭浜庡紑濮嬫椂闂达紒");
}
if(d.getEndDate().getTime()>model.getEndDate().getTime() ||d.getStartDate().getTime()<model.getStartDate().getTime()){
@@ -1188,7 +1273,53 @@
if(user ==null || (user.getDeleted()!=null && user.getDeleted()) ){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝缁忓姙浜轰俊鎭笉瀛樺湪锛岃灏濊瘯鍒锋柊椤甸潰閲嶈瘯锛�");
}
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(model.getYwContractBillDTOList())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鏃犺处鍗曚俊鎭紝璇峰埛鏂伴噸璇�");
+ }
+ for (YwContractBillDTO billDTO:model.getYwContractBillDTOList()) {
+ if(
+ Objects.isNull(billDTO.getStartDate())
+ ||Objects.isNull(billDTO.getEndDate())
+ ||Objects.isNull(billDTO.getPlanPayDate())
+ ||Objects.isNull(billDTO.getTotleFee())
+ ||Objects.isNull(billDTO.getCostType())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"璐﹀崟鏄庣粏鍙傛暟閿欒");
+ }
+ }
+ List<YwContractBillDTO> ywContractBillDTOList = model.getYwContractBillDTOList();
+ //鏌ヨ绉熻祦鏉℃
+ if(Constants.equalsInteger(model.getType(),Constants.ZERO )
+ || Constants.equalsInteger(model.getType(),Constants.TWO)){
+ List<YwContractBillDTO> leaseBillDTOList = ywContractBillDTOList.stream()
+ .filter(i->Constants.equalsInteger(i.getCostType(),Constants.ZERO)).collect(Collectors.toList());
+ if(CollectionUtils.isEmpty(leaseBillDTOList)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏃犵璧佽垂璐﹀崟锛�");
+ }
+ model.setZlBillDTOList(leaseBillDTOList);
+ Optional<YwContractBillDTO> leaseBillOptional = ywContractBillDTOList.stream()
+ .filter(i->Constants.equalsInteger(i.getCostType(),Constants.TWO)).findAny();
+ if(!leaseBillOptional.isPresent()){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏃犵璧佹娂閲戣处鍗曪紒");
+ }
+ model.setZlBillDTO(leaseBillOptional.get());
+ }
+ if(Constants.equalsInteger(model.getType(),Constants.ZERO )
+ || Constants.equalsInteger(model.getType(),Constants.ONE)){
+ List<YwContractBillDTO> wyBillDTOList = ywContractBillDTOList.stream()
+ .filter(i->Constants.equalsInteger(i.getCostType(),Constants.ONE)).collect(Collectors.toList());
+ if(CollectionUtils.isEmpty(wyBillDTOList)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏃犵墿涓氳垂璐﹀崟锛�");
+ }
+ model.setWyBillDTOList(wyBillDTOList);
+ Optional<YwContractBillDTO> wyBillOptional = ywContractBillDTOList.stream()
+ .filter(i->Constants.equalsInteger(i.getCostType(),Constants.THREE)).findAny();
+ if(!wyBillOptional.isPresent()){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏃犵墿涓氭娂閲戣处鍗曪紒");
+ }
+ model.setWyBillDTO(wyBillOptional.get());
+ }
}
@Override
@@ -1276,38 +1407,38 @@
if (model == null) {
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
- //鍚堝悓闄勪欢
- initFiles(model);
- //鏌ヨ鎴挎簮淇℃伅鏁版嵁
- MPJLambdaWrapper<YwRoom> rw = new MPJLambdaWrapper<>();
- rw.selectAll(YwRoom.class)
- .selectAs(YwProject::getName, YwRoom::getProjectName)
- .selectAs(YwFloor::getName, YwRoom::getFloorName)
- .selectAs(YwBuilding::getName, YwRoom::getBuildingName)
- .leftJoin(YwProject.class, YwProject::getId, YwRoom::getProjectId)
- .leftJoin(YwBuilding.class, YwBuilding::getId, YwRoom::getBuildingId)
- .leftJoin(YwFloor.class, YwFloor::getId, YwRoom::getFloor)
- .eq(YwRoom::getIsdeleted, Constants.ZERO)
- .exists("(select a.id from yw_contract_room a where a.isdeleted=0 and a.type=0 and a.room_id=t.id and a.contract_id=" + model.getId() + ")");
- model.setRoomList(roomMapper.selectJoinList(YwRoom.class, rw));
- model.setWyFirstCircleStr(Constants.getUnitTypeByNum(model.getWyFirstCircle()));
- model.setZlFirstCircleStr(Constants.getUnitTypeByNum(model.getZlFirstCircle()));
- //鏌ヨ绉熻硟鏉℃淇℃伅
- MPJLambdaWrapper<YwContractDetail> dw = new MPJLambdaWrapper<>();
- dw.selectAll(YwContractDetail.class)
- .eq(YwContractDetail::getIsdeleted, Constants.ZERO)
- .eq(YwContractDetail::getContractId, model.getId())
- .in(YwContractDetail::getType, Constants.ZERO, Constants.TWO)
- .orderByAsc(YwContractDetail::getSortnum);
- model.setZlDetailList(ywContractDetailMapper.selectJoinList(YwContractDetail.class, dw));
- //鏌ヨ鐗╂キ鏉℃淇℃伅
- dw = new MPJLambdaWrapper<>();
- dw.selectAll(YwContractDetail.class)
- .eq(YwContractDetail::getIsdeleted, Constants.ZERO)
- .eq(YwContractDetail::getContractId, model.getId())
- .in(YwContractDetail::getType, Constants.ONE, Constants.THREE)
- .orderByAsc(YwContractDetail::getSortnum);
- model.setWyDetailList(ywContractDetailMapper.selectJoinList(YwContractDetail.class, dw));
+ //鍚堝悓闄勪欢
+ initFiles(model);
+ //鏌ヨ鎴挎簮淇℃伅鏁版嵁
+ MPJLambdaWrapper<YwRoom> rw = new MPJLambdaWrapper<>();
+ rw.selectAll(YwRoom.class)
+ .selectAs(YwProject::getName, YwRoom::getProjectName)
+ .selectAs(YwFloor::getName, YwRoom::getFloorName)
+ .selectAs(YwBuilding::getName, YwRoom::getBuildingName)
+ .leftJoin(YwProject.class, YwProject::getId, YwRoom::getProjectId)
+ .leftJoin(YwBuilding.class, YwBuilding::getId, YwRoom::getBuildingId)
+ .leftJoin(YwFloor.class, YwFloor::getId, YwRoom::getFloor)
+ .eq(YwRoom::getIsdeleted, Constants.ZERO)
+ .exists("(select a.id from yw_contract_room a where a.isdeleted=0 and a.type=0 and a.room_id=t.id and a.contract_id=" + model.getId() + ")");
+ model.setRoomList(roomMapper.selectJoinList(YwRoom.class, rw));
+ model.setWyFirstCircleStr(Constants.getUnitTypeByNum(model.getWyFirstCircle()));
+ model.setZlFirstCircleStr(Constants.getUnitTypeByNum(model.getZlFirstCircle()));
+ //鏌ヨ绉熻硟鏉℃淇℃伅
+ MPJLambdaWrapper<YwContractDetail> dw = new MPJLambdaWrapper<>();
+ dw.selectAll(YwContractDetail.class)
+ .eq(YwContractDetail::getIsdeleted, Constants.ZERO)
+ .eq(YwContractDetail::getContractId, model.getId())
+ .in(YwContractDetail::getType, Constants.ZERO, Constants.TWO)
+ .orderByAsc(YwContractDetail::getSortnum);
+ model.setZlDetailList(ywContractDetailMapper.selectJoinList(YwContractDetail.class, dw));
+ //鏌ヨ鐗╂キ鏉℃淇℃伅
+ dw = new MPJLambdaWrapper<>();
+ dw.selectAll(YwContractDetail.class)
+ .eq(YwContractDetail::getIsdeleted, Constants.ZERO)
+ .eq(YwContractDetail::getContractId, model.getId())
+ .in(YwContractDetail::getType, Constants.ONE, Constants.THREE)
+ .orderByAsc(YwContractDetail::getSortnum);
+ model.setWyDetailList(ywContractDetailMapper.selectJoinList(YwContractDetail.class, dw));
return model;
}
@@ -1429,7 +1560,8 @@
queryWrapper.selectAll(YwContract.class )
.selectAs(Company::getName,YwContract::getCompanyName )
.selectAs(YwCustomer::getName,YwContract::getRenterName )
- .select("(select sum(r.area) from yw_contract_room cr left join yw_room r on r.id = cr.room_id where r.isdeleted=0 and cr.contract_id =t.id)",YwContract::getTotalArea )
+ .select("(select sum(r.RENT_AREA) from yw_contract_room cr left join yw_room r on r.id = cr.room_id where r.isdeleted=0 and cr.contract_id =t.id)",YwContract::getTotalArea )
+ .select(" ( select ifnull(sum(y.TOTLE_FEE),0) from yw_contract_bill y where y.CONTRACT_ID = t.id and y.type = 0 and y.COST_TYPE=0 and y.BILL_TYPE = 0 ) " , YwContract::getTotalFee)
.leftJoin(Company.class,Company::getId,YwContract::getCompanyId)
.leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId);
Utils.MP.blankToNull(pageWrap.getModel());
@@ -1537,6 +1669,9 @@
if (pageWrap.getModel().getRoomId() != null) {
queryWrapper.apply(" t.id in ( select ycr.CONTRACT_ID from yw_contract_room ycr where ycr.type = 0 and ycr.ROOM_ID = "+pageWrap.getModel().getRoomId()+" ) ");
}
+ if (pageWrap.getModel().getBuildingId() != null) {
+ queryWrapper.apply(" t.id in ( select ycr.CONTRACT_ID from yw_contract_room ycr left join yw_room yr on ycr.ROOM_ID = yr.id where ycr.type = 0 and yr.BUILDING_ID = "+pageWrap.getModel().getBuildingId()+" ) ");
+ }
queryWrapper.ge(Objects.nonNull(pageWrap.getModel().getQueryStartTime()), YwContract::getStartDate, pageWrap.getModel().getQueryStartTime())
.le(Objects.nonNull(pageWrap.getModel().getQueryEndTime()), YwContract::getEndDate, pageWrap.getModel().getQueryEndTime());
queryWrapper.orderByDesc(YwContract::getCreateDate );
@@ -1545,6 +1680,28 @@
for(YwContract model : data.getRecords()){
model.setWyFirstCircleStr(Constants.getUnitTypeByNum(model.getWyFirstCircle()));
model.setZlFirstCircleStr(Constants.getUnitTypeByNum(model.getZlFirstCircle()));
+ //鏌ヨ鎴挎簮淇℃伅鏁版嵁
+ MPJLambdaWrapper<YwRoom> rw = new MPJLambdaWrapper<>();
+ rw.selectAll(YwRoom.class)
+ .selectAs(YwProject::getName, YwRoom::getProjectName)
+ .selectAs(YwFloor::getName, YwRoom::getFloorName)
+ .selectAs(YwBuilding::getName, YwRoom::getBuildingName)
+ .leftJoin(YwProject.class, YwProject::getId, YwRoom::getProjectId)
+ .leftJoin(YwBuilding.class, YwBuilding::getId, YwRoom::getBuildingId)
+ .leftJoin(YwFloor.class, YwFloor::getId, YwRoom::getFloor)
+ .eq(YwRoom::getIsdeleted, Constants.ZERO)
+ .exists("(select a.id from yw_contract_room a where a.isdeleted=0 and a.type=0 and a.room_id=t.id and a.contract_id=" + model.getId() + ")");
+ model.setRoomList(roomMapper.selectJoinList(YwRoom.class, rw));
+ model.setLeaseDays(
+ DateUtil.daysBetweenDates(model.getEndDate(),model.getStartDate()) + 1
+ );
+ if(Objects.nonNull(model.getLeaseDays())&&Objects.nonNull(model.getTotalArea())&&Objects.nonNull(model.getTotalFee())){
+ model.setLeasePrice(model.getTotalFee().divide((model.getTotalArea().multiply(new BigDecimal(model.getLeaseDays()))),2,BigDecimal.ROUND_HALF_UP));
+ }else{
+ model.setLeasePrice(BigDecimal.ZERO);
+ }
+
+
}
}
return data;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java
index 5aa6aef..dda5508 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwDeviceServiceImpl.java
@@ -11,10 +11,7 @@
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.YwDeviceMapper;
import com.doumee.dao.business.YwDeviceRecordMapper;
-import com.doumee.dao.business.model.Category;
-import com.doumee.dao.business.model.Company;
-import com.doumee.dao.business.model.YwDevice;
-import com.doumee.dao.business.model.YwDeviceRecord;
+import com.doumee.dao.business.model.*;
import com.doumee.dao.business.vo.YwDeviceCateDataVO;
import com.doumee.dao.business.vo.YwDeviceDataVO;
import com.doumee.dao.business.vo.YwDeviceParentCateDataVO;
@@ -103,7 +100,7 @@
}
multifile.setCreateDate(ywDevice.getCreateDate());
multifile.setEditDate(ywDevice.getCreateDate());
- multifile.setCreator(ywDevice.getEditor());
+ multifile.setCreator(ywDevice.getCreator());
multifile.setIsdeleted(Constants.ZERO);
multifile.setObjId(ywDevice.getId());
multifile.setEditor(ywDevice.getCreator());
@@ -226,7 +223,28 @@
@Override
public YwDevice getDetail(Integer id) {
- YwDevice ywDevice = ywDeviceMapper.selectById(id);
+ YwDevice ywDevice = ywDeviceMapper.selectJoinOne(YwDevice.class,
+ new MPJLambdaWrapper<YwDevice>()
+ .selectAll(YwDevice.class)
+ .select("c.name",YwDevice::getCategoryName)
+ .select("c1.name",YwDevice::getCategoryParentName)
+ .select("s.realname",YwDevice::getRealName)
+ .select("s1.realname",YwDevice::getMaintenanceUserName)
+ .selectAs(YwProject::getName,YwDevice::getProjectName)
+ .selectAs(YwFloor::getName,YwDevice::getFloorName)
+ .selectAs(YwBuilding::getName,YwDevice::getBuildingName)
+ .selectAs(YwRoom::getCode,YwDevice::getRoomName)
+ .leftJoin(YwRoom.class,YwRoom::getId,YwDevice::getRoomId)
+ .leftJoin(YwFloor.class,YwFloor::getId,YwRoom::getFloor)
+ .leftJoin(YwProject.class,YwProject::getId,YwRoom::getProjectId)
+ .leftJoin(YwBuilding.class,YwBuilding::getId,YwRoom::getBuildingId)
+ .leftJoin("category c on t.CATE_ID = c.id")
+ .leftJoin("category c1 on c.PARENT_ID = c1.id")
+ .leftJoin("system_user s on t.user_id = s.id")
+ .leftJoin("system_user s1 on t.MAINTENANCE_USER_ID = s1.id")
+ .eq(YwDevice::getId,id)
+ .last(" limit 1 ")
+ );
Multifile multifile = multifileMapper.selectOne(new QueryWrapper<Multifile>().lambda()
.eq(Multifile::getObjId,id).eq(Multifile::getObjType,Constants.MultiFile.FN_DEVICE_FILE.getKey()).last(" limit 1"));
if(Objects.nonNull(multifile)){
@@ -303,10 +321,12 @@
queryWrapper.selectAll(YwDevice.class)
.select("c.name",YwDevice::getCategoryName)
.select("c1.name",YwDevice::getCategoryParentName)
- .selectAs(SystemUser::getRealname,YwDevice::getRealName)
- .leftJoin(SystemUser.class,SystemUser::getId,YwDevice::getUserId)
+ .select("s.realname",YwDevice::getRealName)
+ .select("s1.realname",YwDevice::getMaintenanceUserName)
.leftJoin("category c on t.CATE_ID = c.id")
.leftJoin("category c1 on c.PARENT_ID = c1.id")
+ .leftJoin("system_user s on t.user_id = s.id")
+ .leftJoin("system_user s1 on t.MAINTENANCE_USER_ID = s1.id")
.and(Objects.nonNull(model)&&StringUtils.isNotBlank(model.getName()),i->i.like(YwDevice::getName,model.getName()).or().like(YwDevice::getCode,model.getName()))
.eq(Objects.nonNull(model.getStatus()),YwDevice::getStatus,model.getStatus())
.eq(Objects.nonNull(model.getRoomId()),YwDevice::getRoomId,model.getRoomId())
@@ -343,7 +363,7 @@
}
@Override
- public Set<YwDeviceCateDataVO> getDeviceCateData(YwDevice model){
+ public Set<YwDeviceParentCateDataVO> getDeviceCateData(YwDevice model){
MPJLambdaWrapper<YwDevice> queryWrapper = new MPJLambdaWrapper<YwDevice>();
queryWrapper.selectAll(YwDevice.class)
.select("c.name",YwDevice::getCategoryName)
@@ -370,6 +390,7 @@
ywDeviceCateDataVO.setCateName(y.getCategoryName());
ywDeviceCateDataVO.setCateParentId(y.getCateParentId());
ywDeviceCateDataVOSet.add(ywDeviceCateDataVO);
+
YwDeviceParentCateDataVO ywDeviceParentCateDataVO = new YwDeviceParentCateDataVO();
ywDeviceParentCateDataVO.setCateId(y.getCateParentId());
ywDeviceParentCateDataVO.setCateName(y.getCategoryParentName());
@@ -390,7 +411,7 @@
ywDeviceCateDataVOSet.stream().filter(i->Constants.equalsInteger(i.getCateParentId(),ywDeviceParentCateDataVO.getCateId())).collect(Collectors.toList())
);
}
- return ywDeviceCateDataVOSet;
+ return ywDeviceParentCateDataVOSet;
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java
index 0b48d11..a434cd2 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java
@@ -103,7 +103,7 @@
@Override
public void deleteById(Integer id) {
if(ywOutinboundRecordMapper.selectCount(new QueryWrapper<YwOutinboundRecord>().lambda().eq(YwOutinboundRecord::getMaterialId,id))>Constants.ZERO){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠璧勪骇宸叉湁鍑哄叆搴撹褰曪紝涓嶅彲鍒犻櫎");
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠鐗╂枡宸叉湁鍑哄叆搴撹褰曪紝涓嶅彲鍒犻櫎");
}
ywMaterialMapper.update(new UpdateWrapper<YwMaterial>().lambda().set(YwMaterial::getIsdeleted,Constants.ONE).eq(YwMaterial::getId,id));
}
@@ -219,7 +219,10 @@
.and(StringUtils.isNotBlank(model.getCode()),i->i.like(YwMaterial::getCode,model.getCode()).or().like(YwMaterial::getName,model.getCode()))
.like(StringUtils.isNotBlank(model.getAttr()),YwMaterial::getAttr,model.getAttr())
.eq(Objects.nonNull(model.getProjectId()),YwRoom::getProjectId,model.getProjectId())
+ .eq(Objects.nonNull(model.getStatus()),YwMaterial::getStatus,model.getStatus())
.eq(Objects.nonNull(model.getRoomId()),YwMaterial::getRoomId,model.getRoomId())
+ .eq(Objects.nonNull(model.getCateId()),YwMaterial::getCateId,model.getCateId())
+ .eq(Objects.nonNull(model.getParentCateId()),YwMaterial::getParentCateId,model.getParentCateId())
.eq(Objects.nonNull(model.getFloorId()),YwRoom::getFloor,model.getFloorId())
.eq(Objects.nonNull(model.getBuildingId()),YwRoom::getBuildingId,model.getBuildingId())
.eq(YwMaterial::getIsdeleted,Constants.ZERO)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundRecordServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundRecordServiceImpl.java
index b839bc7..7aa22d3 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundRecordServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundRecordServiceImpl.java
@@ -20,6 +20,7 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
+import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -97,13 +98,15 @@
MPJLambdaWrapper<YwOutinboundRecord> queryWrapper = new MPJLambdaWrapper<YwOutinboundRecord>();
Utils.MP.blankToNull(pageWrap.getModel());
YwOutinboundRecord model = pageWrap.getModel();
- if(Objects.isNull(model)||Objects.isNull(model.getInOut())){
- throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ List<Integer> typeList = new ArrayList<>();
+ if(!(Objects.isNull(model)||Objects.isNull(model.getInOut()))){
+ typeList = Constants.ywOutInType.getAllTypeKey(model.getInOut());
}
- List<Integer> typeList = Constants.ywOutInType.getAllTypeKey(model.getInOut());
queryWrapper.selectAll(YwOutinboundRecord.class)
.selectAs(SystemUser::getRealname,YwOutinboundRecord::getCreateUserName)
.selectAs(YwOutinbound::getCode,YwOutinboundRecord::getCode)
+ .selectAs(YwOutinbound::getType,YwOutinboundRecord::getType)
+ .selectAs(YwOutinbound::getDoneDate,YwOutinboundRecord::getDoneDate)
.selectAs(YwWarehouse::getName,YwOutinboundRecord::getWarehouseName)
.selectAs(YwMaterial::getCode,YwOutinboundRecord::getMaterialCode)
.selectAs(YwMaterial::getName,YwOutinboundRecord::getMaterialName)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java
index 21d53b2..203c692 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwOutinboundServiceImpl.java
@@ -80,6 +80,7 @@
ywOutinbound.setOrigin(Constants.ZERO);
ywOutinboundMapper.insert(ywOutinbound);
for (YwOutinboundRecord ywOutinboundRecord:recordList) {
+ ywOutinboundRecord.setOutInBoundId(ywOutinbound.getId());
ywOutinboundRecord.setCreator(loginUserInfo.getId());
ywOutinboundRecord.setCreateDate(new Date());
ywOutinboundRecord.setIsdeleted(Constants.ZERO);
@@ -94,7 +95,7 @@
public List<YwOutinboundRecord> verifyData(YwOutinbound ywOutinbound){
if(Objects.isNull(ywOutinbound)
|| Objects.isNull(ywOutinbound.getType())
- || (Objects.nonNull(ywOutinbound.getType()) && (!(ywOutinbound.getType() == Constants.ZERO || ywOutinbound.getType() == Constants.ONE)))
+// || (Objects.nonNull(ywOutinbound.getType()) && (!(ywOutinbound.getType() == Constants.ZERO || ywOutinbound.getType() == Constants.ONE)))
|| Objects.isNull(ywOutinbound.getWarehouseId())
|| Objects.isNull(ywOutinbound.getDoneDate())
|| com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(ywOutinbound.getRecordList())
@@ -110,6 +111,7 @@
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ ywOutinboundRecord.setId(null);
}
//鍒ゆ柇褰撳墠鏄惁瀛樺湪杩涜涓殑鐩樼偣鍗�
if(ywStocktakingMapper.selectCount(new QueryWrapper<YwStocktaking>().lambda().eq(YwStocktaking::getIsdeleted,Constants.ZERO)
@@ -130,10 +132,13 @@
public void dealStockData(YwOutinbound ywOutinbound,List<YwOutinboundRecord> recordList,Integer inOut){
for (YwOutinboundRecord ywOutinboundRecord:recordList) {
- YwStock ywStock = ywStockMapper.selectOne(new QueryWrapper<YwStock>().lambda().eq(YwStock::getIsdeleted,Constants.ZERO).eq(YwStock::getWarehouseId,ywOutinbound.getWarehouseId()).eq(YwStock::getMaterialId,ywOutinboundRecord.getMaterialId()));
+ YwStock ywStock = ywStockMapper.selectOne(new QueryWrapper<YwStock>().lambda().eq(YwStock::getIsdeleted,Constants.ZERO)
+ .eq(YwStock::getWarehouseId,ywOutinbound.getWarehouseId()).eq(YwStock::getMaterialId,ywOutinboundRecord.getMaterialId()));
if(Constants.equalsInteger(inOut,Constants.ZERO)){
//鍏ュ簱
if(Objects.isNull(ywStock)){
+ ywStock = new YwStock();
+ ywStock.setIsdeleted(Constants.ZERO);
ywStock.setStock(ywOutinboundRecord.getStock());
ywStock.setWarehouseId(ywOutinbound.getWarehouseId());
ywStock.setMaterialId(ywOutinboundRecord.getMaterialId());
@@ -142,7 +147,7 @@
ywStockMapper.insert(ywStock);
}else{
ywStockMapper.update(new UpdateWrapper<YwStock>().lambda()
- .set(YwStock::getStock," ( stock + " + ywStock.getStock() + " )")
+ .setSql(" stock = ( stock + "+ywOutinboundRecord.getStock()+") ")
.set(YwStock::getEditDate, DateUtil.getCurrDateTime())
.set(YwStock::getEditor, ywOutinbound.getCreator())
.eq(YwStock::getId,ywStock.getId())
@@ -157,7 +162,7 @@
ywStockMapper.deleteById(ywStock.getId());
}else{
ywStockMapper.update(new UpdateWrapper<YwStock>().lambda()
- .set(YwStock::getStock," ( stock - " + ywStock.getStock() + " )")
+ .setSql(" stock = ( stock - "+ywOutinboundRecord.getStock()+") ")
.set(YwStock::getEditDate, DateUtil.getCurrDateTime())
.set(YwStock::getEditor, ywOutinbound.getCreator())
.eq(YwStock::getId,ywStock.getId())
@@ -376,7 +381,7 @@
public synchronized String getNextInOutCode(Integer inOut){
- String prefix = Constants.equalsInteger(inOut,0)?"RK-":"CK-" + DateUtil.getDate(new Date(),"yyyyMMdd") +"-";
+ String prefix = (Constants.equalsInteger(inOut,0)?"RK-":"CK-") + DateUtil.getDate(new Date(),"yyyyMMdd") +"-";
Integer countNum = RedisUtil.getObject(redisTemplate,
Constants.equalsInteger(inOut,0)?Constants.RedisKeys.COM_OUTBOUND_OUT_KEY:Constants.RedisKeys.COM_OUTBOUND_IN_KEY,
Integer.class);
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
index 6c64cf8..c8c5326 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
@@ -1,5 +1,6 @@
package com.doumee.service.business.impl;
+import com.alibaba.fastjson.JSONObject;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.LoginUserInfo;
@@ -213,22 +214,35 @@
if(StringUtils.isNotBlank(ywPatrolScheme.getUserIds())){
String [] userIds = ywPatrolScheme.getUserIds().split(",");
- for (String userId:userIds) {
- //娣诲姞寰呭姙淇℃伅
- Notices notices = new Notices();
- notices.setCreateDate(new Date());
- notices.setCreator(ywPatrolScheme.getCreator());
- notices.setIsdeleted(Constants.ZERO);
- notices.setParam1(DateUtil.formatDate(ywPatrolTask.getStartDate(),"yyyy-MM-dd"));
- notices.setTitle("宸℃浠诲姟寰呭姙");
- notices.setContent("["+ywPatrolTask.getCode()+"]灏嗗湪["+notices.getParam1()+"]杩涜宸℃锛岃鎸夋椂鎵ц");
- notices.setObjId(ywPatrolTask.getId());
- notices.setObjType(Constants.ONE);
- notices.setType(notices.getObjType());
- notices.setUserId(Integer.valueOf(userId));
- notices.setStatus(Constants.ZERO);
- noticesJoinMapper.insert(notices);
+ List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda().in(SystemUser::getId,userIds));
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemUserList)){
+ List<String> names = systemUserList.stream().filter(i->StringUtils.isNotBlank(i.getRealname())).map(i->i.getRealname()).collect(Collectors.toList());
+ for (SystemUser systemUser:systemUserList) {
+ //娣诲姞寰呭姙淇℃伅
+ Notices notices = new Notices();
+ notices.setCreateDate(new Date());
+ notices.setCreator(ywPatrolScheme.getCreator());
+ notices.setIsdeleted(Constants.ZERO);
+ notices.setParam1(DateUtil.formatDate(ywPatrolTask.getStartDate(),"yyyy-MM-dd"));
+ notices.setTitle("宸℃浠诲姟寰呭姙");
+ notices.setContent("["+ywPatrolTask.getCode()+"]灏嗗湪["+notices.getParam1()+"]杩涜宸℃锛岃鎸夋椂鎵ц");
+ notices.setObjId(ywPatrolTask.getId());
+ notices.setObjType(Constants.ONE);
+ notices.setType(notices.getObjType());
+ notices.setUserId(Integer.valueOf(systemUser.getId()));
+ notices.setStatus(Constants.ZERO);
+ //鏁寸悊json鏁版嵁
+ Map<String,Object> jsonMap = new HashMap<>();
+ jsonMap.put("key1", ywPatrolScheme.getTitle());
+ jsonMap.put("key2", DateUtil.getFomartDate(ywPatrolTask.getStartDate(),"yyyy-MM-dd"));
+ jsonMap.put("key3", DateUtil.getFomartDate(ywPatrolTask.getStartDate(),"HH:mm") + "-" + DateUtil.getFomartDate(ywPatrolTask.getEndDate(),"HH:mm"));
+ jsonMap.put("key4", StringUtils.join(names , "銆�"));
+ notices.setParam2(JSONObject.toJSONString(jsonMap));
+ notices.setParam3(Constants.ZERO+"");
+ noticesJoinMapper.insert(notices);
+ }
}
+
}
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
index f78013f..d556571 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
@@ -234,13 +234,7 @@
.set(YwPatrolTaskRecord::getDealInfo, ywPatrolTaskRecord.getDealInfo())
.eq(YwPatrolTaskRecord::getId,ywPatrolTaskRecord.getId()));
- //鏍囪寰呭姙宸插鐞�
- noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
- .set(Notices::getStatus,Constants.ONE)
- .eq(Notices::getIsdeleted,Constants.ZERO)
- .eq(Notices::getObjType,Constants.ONE)
- .eq(Notices::getObjId,ywPatrolTask.getId())
- );
+
if(ywPatrolTaskRecordMapper.selectCount(new QueryWrapper<YwPatrolTaskRecord>().lambda()
.eq(YwPatrolTaskRecord::getTaskId,ywPatrolTask.getId())
.eq(YwPatrolTaskRecord::getStatus,Constants.ZERO)
@@ -255,18 +249,27 @@
.set(YwPatrolTask::getEditor,loginUserInfo.getId())
);
- if(ywPatrolTaskMapper.selectCount(new QueryWrapper<YwPatrolTask>().lambda()
- .eq(YwPatrolTask::getSchemeId,ywPatrolTask.getSchemeId())
- .in(YwPatrolTask::getStatus,Constants.ZERO,Constants.ONE)
- .ne(YwPatrolTask::getId,ywPatrolTask.getId())
- )==Constants.ZERO){
- ywPatrolSchemeMapper.update(null,new UpdateWrapper<YwPatrolScheme>().lambda()
- .eq(YwPatrolScheme::getId,ywPatrolScheme.getId())
- .set(YwPatrolScheme::getStatus,Constants.TWO)
- .set(YwPatrolScheme::getEditDate,DateUtil.getCurrDateTime())
- .set(YwPatrolScheme::getEditor,loginUserInfo.getId())
- );
- }
+// if(ywPatrolTaskMapper.selectCount(new QueryWrapper<YwPatrolTask>().lambda()
+// .eq(YwPatrolTask::getSchemeId,ywPatrolTask.getSchemeId())
+// .in(YwPatrolTask::getStatus,Constants.ZERO,Constants.ONE)
+// .ne(YwPatrolTask::getId,ywPatrolTask.getId())
+// )==Constants.ZERO){
+// ywPatrolSchemeMapper.update(null,new UpdateWrapper<YwPatrolScheme>().lambda()
+// .eq(YwPatrolScheme::getId,ywPatrolScheme.getId())
+// .set(YwPatrolScheme::getStatus,Constants.TWO)
+// .set(YwPatrolScheme::getEditDate,DateUtil.getCurrDateTime())
+// .set(YwPatrolScheme::getEditor,loginUserInfo.getId())
+// );
+// }
+
+ //鏍囪寰呭姙宸插鐞�
+ noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
+ .set(Notices::getStatus,Constants.ONE)
+ .set(Notices::getParam3,Constants.TWO)
+ .eq(Notices::getIsdeleted,Constants.ZERO)
+ .eq(Notices::getObjType,Constants.ONE)
+ .eq(Notices::getObjId,ywPatrolTask.getId())
+ );
}else{
if(Constants.equalsInteger(ywPatrolTask.getStatus(),Constants.ZERO)){
ywPatrolTaskMapper.update(null,new UpdateWrapper<YwPatrolTask>().lambda()
@@ -276,14 +279,21 @@
.set(YwPatrolTask::getEditor,loginUserInfo.getId())
);
}
- if(Constants.equalsInteger(ywPatrolScheme.getStatus(),Constants.ZERO)){
- ywPatrolSchemeMapper.update(null,new UpdateWrapper<YwPatrolScheme>().lambda()
- .eq(YwPatrolScheme::getId,ywPatrolScheme.getId())
- .set(YwPatrolScheme::getStatus,Constants.ONE)
- .set(YwPatrolScheme::getEditDate,DateUtil.getCurrDateTime())
- .set(YwPatrolScheme::getEditor,loginUserInfo.getId())
- );
- }
+// if(Constants.equalsInteger(ywPatrolScheme.getStatus(),Constants.ZERO)){
+// ywPatrolSchemeMapper.update(null,new UpdateWrapper<YwPatrolScheme>().lambda()
+// .eq(YwPatrolScheme::getId,ywPatrolScheme.getId())
+// .set(YwPatrolScheme::getStatus,Constants.ONE)
+// .set(YwPatrolScheme::getEditDate,DateUtil.getCurrDateTime())
+// .set(YwPatrolScheme::getEditor,loginUserInfo.getId())
+// );
+// }
+ //鏍囪寰呭姙宸插鐞�
+ noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
+ .set(Notices::getParam3,Constants.ONE)
+ .eq(Notices::getIsdeleted,Constants.ZERO)
+ .eq(Notices::getObjType,Constants.ONE)
+ .eq(Notices::getObjId,ywPatrolTask.getId())
+ );
}
//闄勪欢鏁版嵁
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywPatrolTaskRecord.getMultifileList())){
@@ -324,7 +334,7 @@
.leftJoin(YwPatrolPoint.class,YwPatrolPoint::getId,YwPatrolTaskRecord::getPointId)
.leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTaskRecord::getDealUserId)
.leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
- .eq(YwPatrolScheme::getIsdeleted, Constants.ZERO)
+ .eq(YwPatrolTaskRecord::getIsdeleted, Constants.ZERO)
.eq(YwPatrolPoint::getCode,bean.getPointCode())
.eq(YwPatrolTaskRecord::getTaskId,bean.getTaskId())
.orderByDesc(YwPatrolScheme::getCreateDate)
@@ -339,6 +349,48 @@
}
+ /**
+ * 鏍规嵁鐧诲綍浜轰笌宸℃鐐规煡璇换鍔′俊鎭�
+ * @param bean
+ * @return
+ */
+ @Override
+ public YwPatrolTaskRecord getRecordByUserPoint(YwPatrolTaskRecord bean,LoginUserInfo loginUserInfo) {
+ if(Objects.isNull(bean)
+ || StringUtils.isBlank(bean.getPointCode())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ if(ywPatrolPointMapper.selectCount(new QueryWrapper<YwPatrolPoint>().lambda().eq(YwPatrolPoint::getCode,bean.getPointCode()))==Constants.ZERO){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈尮閰嶅埌宸℃鐐癸紝璇烽噸鏂版壂鐮�!");
+ }
+ YwPatrolTaskRecord ywPatrolTaskRecord = ywPatrolTaskRecordMapper.selectJoinOne(YwPatrolTaskRecord.class,new MPJLambdaWrapper<YwPatrolTaskRecord>()
+ .selectAll(YwPatrolTaskRecord.class)
+ .selectAs(YwPatrolPoint::getName,YwPatrolTaskRecord::getPointName)
+ .selectAs(YwPatrolPoint::getContent,YwPatrolTaskRecord::getContent)
+ .selectAs(YwPatrolPoint::getDeviceId,YwPatrolTaskRecord::getDeviceId)
+ .selectAs(YwPatrolScheme::getTitle,YwPatrolTaskRecord::getSchemeTitle)
+ .selectAs(SystemUser::getRealname,YwPatrolTaskRecord::getRealname)
+ .selectAs(Company::getName,YwPatrolTaskRecord::getCompanyName)
+ .leftJoin(YwPatrolPoint.class,YwPatrolPoint::getId,YwPatrolTaskRecord::getPointId)
+ .leftJoin(YwPatrolTask.class,YwPatrolTask::getId,YwPatrolTaskRecord::getTaskId)
+ .leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId)
+ .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTaskRecord::getDealUserId)
+ .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
+ .eq(YwPatrolTaskRecord::getIsdeleted, Constants.ZERO)
+ .eq(YwPatrolTaskRecord::getStatus, Constants.ZERO)
+ .eq(YwPatrolPoint::getCode,bean.getPointCode())
+ .apply(" DATE(t2.START_DATE) = DATE(NOW()) and find_in_set('"+loginUserInfo.getId()+"', t3.USER_IDS ) ")
+ .orderByDesc(YwPatrolScheme::getCreateDate)
+ .last(" limit 1 ")
+ );
+ if(Objects.isNull(ywPatrolTaskRecord)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"浠婃棩鏆傛棤宸℃浠诲姟!");
+ }
+ getFileListByModel(ywPatrolTaskRecord);
+ return ywPatrolTaskRecord;
+
+ }
+
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java
index 67906be..2c33a6c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java
@@ -53,7 +53,6 @@
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
public Integer create(YwProblem ywProblem) {
if(Objects.isNull(ywProblem)
- || Objects.isNull(ywProblem.getSubmitDate())
|| StringUtils.isBlank(ywProblem.getContent())
|| StringUtils.isBlank(ywProblem.getPhone())
|| StringUtils.isBlank(ywProblem.getName())
@@ -64,6 +63,7 @@
ywProblem.setIsdeleted(Constants.ZERO);
ywProblem.setStatus(Constants.ZERO);
ywProblem.setDealStatus(Constants.ZERO);
+ ywProblem.setSubmitDate(new Date());
ywProblemMapper.insert(ywProblem);
List<Multifile> fileList = new ArrayList<>();
@@ -130,14 +130,16 @@
@Override
- public YwProblem getDetail(Integer id) {
+ public YwProblem getDetail(Integer id,Integer workorderId) {
MPJLambdaWrapper<YwProblem> queryWrapper = new MPJLambdaWrapper<YwProblem>();
queryWrapper.selectAll(YwProblem.class)
.selectAs(SystemUser::getRealname,YwProblem::getDealUserName)
.selectAs(Company::getName,YwProblem::getDealUserCompanyName)
.leftJoin(SystemUser.class,SystemUser::getId,YwProblem::getDealUserId)
.leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
- .eq(YwProblem::getId,id)
+ .eq(Objects.nonNull(id),YwProblem::getId,id)
+ .eq(Objects.nonNull(workorderId),YwProblem::getWorkorderId,workorderId)
+ .last(" limit 1 ")
;
YwProblem ywProblem = ywProblemMapper.selectJoinOne(YwProblem.class,queryWrapper);
if(Objects.isNull(ywProblem)){
@@ -149,7 +151,7 @@
.eq(Multifile::getIsdeleted,Constants.ZERO));
if(multifiles!=null){
String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
- +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_PROBLEM).getCode();
+ +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_WORKORDER_FILE).getCode();
for(Multifile f : multifiles){
if(StringUtils.isBlank(f.getFileurl())){
continue;
@@ -160,6 +162,8 @@
}
return ywProblem;
}
+
+
@@ -190,14 +194,16 @@
}else{
if(Objects.isNull(ywProblem.getWorkOrderAreaType())
||Objects.isNull(ywProblem.getWorkOrderCateId())
- ||StringUtils.isBlank(ywProblem.getWorkOrderContent())
+ ||StringUtils.isBlank(ywProblem.getDealInfo())
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
YwWorkorder ywWorkorder = new YwWorkorder();
+ ywWorkorder.setProjectId(ywProblem.getWorkOrderProjectId());
+ ywWorkorder.setBuildingId(ywProblem.getWorkOrderBuildId());
ywWorkorder.setAreaType(ywProblem.getWorkOrderAreaType());
ywWorkorder.setCateId(ywProblem.getWorkOrderCateId());
- ywWorkorder.setContent(ywProblem.getWorkOrderContent());
+ ywWorkorder.setContent(ywProblem.getDealInfo());
ywWorkorder.setRoomId(ywProblem.getWorkOrderRoomId());
ywWorkorder.setFloorId(ywProblem.getWorkOrderFloorId());
ywWorkorder.setGetDate(ywProblem.getWorkOrderGetDate());
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java
index 81b1493..36cda9c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProjectServiceImpl.java
@@ -23,6 +23,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.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.StringUtils;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.BeanUtils;
@@ -293,7 +294,15 @@
projectDataVOList.add(projectDataVO);
}
- List<YwRoom> ywRoomList = ywRoomMapper.selectList(new QueryWrapper<YwRoom>().lambda()
+ List<YwRoom> ywRoomList = ywRoomMapper.selectJoinList(YwRoom.class,new MPJLambdaWrapper<YwRoom>()
+ .selectAll(YwRoom.class)
+// .select(" ( SELECT count(1) FROM yw_contract y1 " +
+// " left join yw_contract_room y2 on y1.id = y2.contract_id " +
+// " where 1 = 1 and y2.type = 0 and y1.`STATUS` in( 0,1,2) " +
+// " and y1.START_DATE < now() and y1.END_DATE > now() and y2.ROOM_ID = yw_room.id ) as investmentStatus ")
+ .select(" ifnull( ( select case when y1.status = 3 then now() BETWEEN y1.START_DATE and y1.BT_DATE else now() BETWEEN y1.START_DATE and y1.END_DATE END " +
+ "from yw_contract y1 left join yw_contract_room y2 on y1.id = y2.CONTRACT_ID and y2.TYPE = 0 " +
+ "where y1.`STATUS` <> 4 and y2.room_id = t.id order by y1.create_date desc limit 1 ) ,0) ",YwRoom::getLeaseStatus)
.eq(YwRoom::getIsdeleted,Constants.ZERO)
.eq(YwRoom::getStatus,Constants.ZERO)
.eq(YwRoom::getIsInvestment,Constants.ONE)
@@ -316,6 +325,7 @@
projectDataVO.setArea(data.getRentArea().setScale(2, BigDecimal.ROUND_HALF_UP));
projectDataVO.setPId(data.getFloor());
projectDataVO.setLv(Constants.THREE);
+ projectDataVO.setLeaseStatus(data.getLeaseStatus());
projectDataVOList.add(projectDataVO);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java
index af4bcbc..b5c03ed 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwRoomServiceImpl.java
@@ -25,10 +25,7 @@
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
import java.util.stream.Collectors;
/**
@@ -288,7 +285,7 @@
YwRoomStatusDataVO roomStatusDataVO = new YwRoomStatusDataVO();
roomStatusDataVO.setFloorId(ywRoom.getFloor());
roomStatusDataVO.setRoomId(ywRoom.getId());
- roomStatusDataVO.setRoomCode(ywRoom.getCode());
+ roomStatusDataVO.setRoomCode(ywRoom.getRoomNum());
roomStatusDataVO.setRoomRentArea(ywRoom.getRentArea());
List<YwContract> roomContractList = ywContractMapper.selectJoinList(YwContract.class,new MPJLambdaWrapper<YwContract>()
@@ -297,10 +294,10 @@
.leftJoin(YwContractRoom.class,YwContractRoom::getContractId,YwContract::getId)
.leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId)
.eq(YwContract::getIsdeleted,Constants.ZERO)
- .ge(YwContract::getStartDate, DateUtil.getCurrDateTime())
+ .le(YwContract::getStartDate, DateUtil.getCurrDateTime())
+ .ge(YwContract::getEndDate, DateUtil.getCurrDateTime())
.eq(YwContractRoom::getType,Constants.ZERO)
.eq(YwContractRoom::getRoomId,ywRoom.getId())
- .ne(YwContract::getBillStatus,Constants.THREE)
.orderByDesc(YwContract::getStartDate)
);
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(roomContractList)){
@@ -320,9 +317,24 @@
roomStatusDataVO.setOverData(ywContract.getBtDate());
}
}else{
- if(Objects.nonNull(ywContract.getEndDate()) && DateUtil.getBetweenDays(DateUtil.getFomartDate(ywContract.getEndDate(),"yyyy-MM-dd"),DateUtil.getFomartDate(new Date(),"yyyy-MM-dd"))<=90){
+ System.out.println(DateUtil.daysBetweenDates(ywContract.getEndDate(),new Date()));
+ if(Objects.nonNull(ywContract.getEndDate())
+ &&
+ DateUtil.daysBetweenDates(ywContract.getEndDate(),new Date())<=90){
roomStatusDataVO.setRoomStatus(Constants.TWO);
roomStatusDataVO.setOverData(ywContract.getEndDate());
+ }else{
+ roomStatusDataVO.setOverData(ywContract.getEndDate());
+ }
+ }
+ }else{
+ roomStatusDataVO.setRoomStatus(Constants.ZERO);
+ //宸查��绉� 璁$畻閫�绉熸椂闂�
+ if(Objects.nonNull(ywContract.getBtDate())){
+ //鏌ヨ閫�绉熸棩鏈熷拰褰撳墠鏃ユ湡鐩稿樊澶╂暟
+ Integer btDays = DateUtil.daysBetweenDates(new Date(),ywContract.getBtDate());
+ if(btDays>=Constants.ZERO){
+ roomStatusDataVO.setFreeDayAmount(btDays);
}
}
}
@@ -332,12 +344,15 @@
}
for (YwFloor ywFloor:ywFloorList) {
YwFloorStatusDataVO ywFloorStatusDataVO = new YwFloorStatusDataVO();
- ywFloorStatusDataVO.setFloor(ywFloor.getFloor());
+ ywFloorStatusDataVO.setFloorName(ywFloor.getName());
ywFloorStatusDataVO.setFloorId(ywFloor.getId());
- ywFloorStatusDataVO.setFloorArea(ywFloor.getArea());
+ ywFloorStatusDataVO.setFloorArea(BigDecimal.ZERO);
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(roomStatusDataList)){
List<YwRoomStatusDataVO> floorRoomList = roomStatusDataList.stream().filter(i->Objects.nonNull(i.getFloorId())&&Constants.equalsInteger(i.getFloorId(),ywFloor.getId())).collect(Collectors.toList());
ywFloorStatusDataVO.setYwRoomStatusDataVOList(floorRoomList);
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(floorRoomList)){
+ ywFloorStatusDataVO.setFloorArea(floorRoomList.stream().filter(i->Objects.nonNull(i.getRoomRentArea())).map(i->i.getRoomRentArea()).reduce(BigDecimal.ZERO,BigDecimal::add));
+ }
}
ywFloorStatusDataVOList.add(ywFloorStatusDataVO);
}
@@ -358,6 +373,7 @@
ywRoomContractDataVO.setLeasePrice(BigDecimal.ZERO);
ywRoomContractDataVO.setLeaseArea(BigDecimal.ZERO);
ywRoomContractDataVO.setLeaseRoomAmount(Constants.ZERO);
+ ywRoomContractDataVO.setLeaseDayPrice(BigDecimal.ZERO);
List<YwRoom> ywRoomList = ywRoomMapper.selectList(new QueryWrapper<YwRoom>().lambda()
.eq(YwRoom::getIsdeleted,Constants.ZERO)
@@ -376,15 +392,13 @@
List<YwContract> roomContractList = ywContractMapper.selectJoinList(YwContract.class,new MPJLambdaWrapper<YwContract>()
.selectAll(YwContract.class)
.select(" ( select ifnull(sum(yr.RENT_AREA),0) from yw_contract_room y left join yw_room yr on y.room_id = yr.id where y.type = 0 and y.CONTRACT_ID = t.id ) " , YwContract::getTotalArea)
- .select(" ( select ifnull(sum(y.TOTLE_FEE),0) from yw_contract_bill y where y.CONTRACT_ID = t.id and y.type = 0 ) " , YwContract::getTotalFee)
+ .select(" ( select ifnull(sum(y.TOTLE_FEE),0) from yw_contract_bill y where y.CONTRACT_ID = t.id and y.type = 0 and y.COST_TYPE=0 and y.BILL_TYPE = 0 ) " , YwContract::getTotalFee)
.eq(YwContract::getIsdeleted,Constants.ZERO)
.in(YwContract::getStatus,Constants.ONE,Constants.TWO,Constants.THREE)
- .ne(YwContract::getBillStatus,Constants.THREE)
.apply(Objects.nonNull(model.getBuildingId()),
" t.id in ( select y.CONTRACT_ID from yw_contract_room y left join yw_room yr on y.room_id = yr.id where y.type = 0 and yr.BUILDING_ID = "+model.getBuildingId()+" ) ")
.apply(Objects.nonNull(model.getProjectId()),
" t.id in ( select y.CONTRACT_ID from yw_contract_room y left join yw_room yr on y.room_id = yr.id where y.type = 0 and yr.PROJECT_ID = "+model.getProjectId()+" ) ")
- .apply(Objects.nonNull(model.getProjectId())," ")
.orderByDesc(YwContract::getStartDate)
);
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(roomContractList)){
@@ -392,17 +406,21 @@
}
//澶勭悊绉熻祦鍗曚环 鏍规嵁 鍚堝悓绉熻祦鎬婚 / 锛堢璧佹椂闀� * 绉熻祦闈㈢Н锛�
for (YwContract ywContract:roomContractList) {
- long contractDayAmount = DateUtil.getBetweenDays(DateUtil.getFomartDate(ywContract.getEndDate(),"yyyy-MM-dd"),DateUtil.getFomartDate(ywContract.getStartDate(),"yyyy-MM-dd"));
+ long contractDayAmount = DateUtil.daysBetweenDates(ywContract.getEndDate()
+ ,ywContract.getStartDate());
if(Objects.nonNull(contractDayAmount) && Objects.nonNull(ywContract.getTotalArea()) && Objects.nonNull(ywContract.getTotalFee())){
- ywRoomContractDataVO.setLeasePrice(
- ywRoomContractDataVO.getLeasePrice().add(
+ ywRoomContractDataVO.setLeaseDayPrice(
+ ywRoomContractDataVO.getLeaseDayPrice().add(
ywContract.getTotalFee().divide((ywContract.getTotalArea().multiply(new BigDecimal(Long.toString(contractDayAmount)))),2,BigDecimal.ROUND_HALF_UP)
)
);
}
}
-
ywRoomContractDataVO.setLeaseContractAmount(roomContractList.size());
+ if(Objects.nonNull(ywRoomContractDataVO.getLeaseDayPrice())&&ywRoomContractDataVO.getLeaseDayPrice().compareTo(BigDecimal.ZERO)>Constants.ZERO){
+ ywRoomContractDataVO.setLeasePrice(
+ ywRoomContractDataVO.getLeaseDayPrice().divide(new BigDecimal(Integer.toString(ywRoomContractDataVO.getLeaseContractAmount())),2,BigDecimal.ROUND_HALF_UP));
+ }
List<Integer> contractId = roomContractList.stream().map(i->i.getId()).collect(Collectors.toList());
List<YwRoom> ywLeaseRoomList = ywRoomMapper.selectJoinList(YwRoom.class,new MPJLambdaWrapper<YwRoom>()
.selectAll(YwRoom.class)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStockServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStockServiceImpl.java
index 628057e..f773bba 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStockServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStockServiceImpl.java
@@ -105,8 +105,7 @@
.leftJoin(YwWarehouse.class,YwWarehouse::getId,YwStock::getWarehouseId)
.leftJoin(YwMaterial.class,YwMaterial::getId,YwStock::getMaterialId)
.eq(Objects.nonNull(model.getWarehouseId()),YwOutinbound::getWarehouseId,model.getWarehouseId())
- .and(StringUtils.isNotBlank(model.getMaterialCode()),i->i.like(YwMaterial::getName,model.getMaterialCode()).or().like(YwMaterial::getName,model.getMaterialCode()))
- .like(StringUtils.isNotBlank(model.getMaterialCode()),YwMaterial::getCode,model.getMaterialCode())
+ .and(StringUtils.isNotBlank(model.getMaterialCode()),i->i.like(YwMaterial::getCode,model.getMaterialCode()).or().like(YwMaterial::getName,model.getMaterialCode()))
.like(StringUtils.isNotBlank(model.getMaterialAttr()),YwMaterial::getAttr,model.getMaterialAttr())
.orderByAsc(YwMaterial::getCode)
;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java
index a03a028..b04ef29 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingRecordServiceImpl.java
@@ -145,7 +145,8 @@
.eq(Objects.nonNull(model.getStocktakingId()),YwStocktakingRecord::getStocktakingId,model.getStocktakingId())
.and(StringUtils.isNotBlank(model.getMaterialCode()),i->i.like(YwMaterial::getCode,model.getMaterialCode()).or().like(YwMaterial::getName,model.getMaterialCode()))
.eq(Objects.nonNull(model.getType()),YwStocktakingRecord::getType,model.getType())
- .eq(Objects.nonNull(model.getStatus()),YwStocktakingRecord::getStatus,model.getStatus());
+ .eq(Objects.nonNull(model.getStatus()),YwStocktakingRecord::getStatus,model.getStatus())
+ .eq(Objects.nonNull(model.getMaterialQrcode()),YwMaterial::getQrcode,model.getMaterialQrcode());
IPage iPage = ywStocktakingRecordMapper.selectJoinPage(page, YwStocktakingRecord.class,queryWrapper);
return PageData.from(iPage);
}
@@ -168,7 +169,7 @@
}
LoginUserInfo loginUserInfo = ywStocktakingRecord.getLoginUserInfo();
YwStocktakingRecord model = ywStocktakingRecordMapper.selectById(ywStocktakingRecord.getId());
- if(Objects.nonNull(model)){
+ if(Objects.isNull(model)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
YwStocktaking ywStocktaking = ywStocktakingMapper.selectById(ywStocktakingRecord.getStocktakingId());
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java
index b905879..76ba25d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java
@@ -1,5 +1,6 @@
package com.doumee.service.business.impl;
+import com.alibaba.fastjson.JSONObject;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.LoginUserInfo;
@@ -14,8 +15,10 @@
import com.doumee.dao.business.YwStocktakingRecordMapper;
import com.doumee.dao.business.YwWarehouseMapper;
import com.doumee.dao.business.model.*;
+import com.doumee.dao.system.SystemUserMapper;
import com.doumee.dao.system.join.NoticesJoinMapper;
import com.doumee.dao.system.model.Notices;
+import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.YwStocktakingService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -30,10 +33,7 @@
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
import java.util.stream.Collectors;
/**
@@ -61,6 +61,9 @@
private NoticesJoinMapper noticesJoinMapper;
@Autowired
+ private SystemUserMapper systemUserMapper;
+
+ @Autowired
private RedisTemplate<String, Object> redisTemplate;
@Override
@@ -79,9 +82,16 @@
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌浠撳簱鏁版嵁");
}
//鍒ゆ柇褰撳墠浠撳簱褰撳墠鏃ユ湡鏄惁瀛樺湪鐩樼偣鍗�
- if(ywStocktakingMapper.selectCount(new QueryWrapper<YwStocktaking>().lambda().eq(YwStocktaking::getIsdeleted,Constants.ZERO).eq(YwStocktaking::getStatus,Constants.ZERO)
- .eq(YwStocktaking::getWarehouseId,ywStocktaking.getWarehouseId()).apply(" DATE(PLAN_DATE) = '" + DateUtil.formatDate(ywStocktaking.getPlanDate(),"yyyy-MM-dd") +"'" ))>0){
+ if(ywStocktakingMapper.selectCount(new QueryWrapper<YwStocktaking>().lambda()
+ .eq(YwStocktaking::getIsdeleted,Constants.ZERO)
+ .in(YwStocktaking::getStatus,Constants.ZERO,Constants.ONE)
+ .eq(YwStocktaking::getWarehouseId,ywStocktaking.getWarehouseId())
+ .apply(" DATE(PLAN_DATE) = '" + DateUtil.formatDate(ywStocktaking.getPlanDate(),"yyyy-MM-dd") +"'" ))>0){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"["+DateUtil.formatDate(ywStocktaking.getPlanDate(),"yyyy-MM-dd")+"]["+ywWarehouse.getName()+"]宸叉湁鐩樼偣鍗曪紝涓嶅彲閲嶅鍙戣捣鐩樼偣");
+ }
+ SystemUser systemUser = systemUserMapper.selectById(ywStocktaking.getUserId());
+ if(Objects.isNull(systemUser)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鐩樼偣浜轰俊鎭�");
}
LoginUserInfo loginUserInfo = ywStocktaking.getLoginUserInfo();
ywStocktaking.setCreator(loginUserInfo.getId());
@@ -103,6 +113,14 @@
notices.setType(notices.getObjType());
notices.setUserId(ywStocktaking.getUserId());
notices.setStatus(Constants.ZERO);
+ //鏁寸悊json鏁版嵁
+ Map<String,Object> jsonMap = new HashMap<>();
+ jsonMap.put("key1","鐩樼偣鍗�"+ywStocktaking.getCode());
+ jsonMap.put("key2", DateUtil.getFomartDate(ywStocktaking.getPlanDate(),"yyyy-MM-dd"));
+ jsonMap.put("key3", ywWarehouse.getName());
+ jsonMap.put("key4", systemUser.getRealname());
+ notices.setParam2(JSONObject.toJSONString(jsonMap));
+ notices.setParam3(Constants.ZERO+"");
noticesJoinMapper.insert(notices);
return ywStocktaking.getId();
}
@@ -122,7 +140,8 @@
.eq(YwStocktaking::getId,id)
);
//鏍囪寰呭姙鍒犻櫎
- noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda().set(Notices::getIsdeleted,Constants.ONE)
+ noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
+ .set(Notices::getIsdeleted,Constants.ONE)
.eq(Notices::getIsdeleted,Constants.ZERO)
.eq(Notices::getObjType,Constants.ZERO)
.eq(Notices::getObjId,id)
@@ -147,7 +166,8 @@
.set(YwStocktaking::getEditor,loginUserInfo.getId())
.set(YwStocktaking::getStatus,Constants.THREE).eq(YwStocktaking::getId,id));
//鏍囪寰呭姙鍒犻櫎
- noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda().set(Notices::getIsdeleted,Constants.ONE)
+ noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
+ .set(Notices::getIsdeleted,Constants.ONE)
.eq(Notices::getIsdeleted,Constants.ZERO)
.eq(Notices::getObjType,Constants.ZERO)
.eq(Notices::getObjId,id)
@@ -164,7 +184,7 @@
if(Objects.isNull(model)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鐩樼偣鍗曟暟鎹�");
}
- if(model.getPlanDate().getTime()<System.currentTimeMillis()){
+ if(model.getPlanDate().getTime()>System.currentTimeMillis()){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈埌寮�濮嬫椂闂达紝鏃犳硶杩涜璇ユ搷浣�");
}
if(Constants.equalsInteger(model.getStatus(),Constants.ZERO)&&Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
@@ -178,7 +198,8 @@
//鏍囪寰呭姙宸插鐞�
noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
- .set(Notices::getStatus,Constants.ONE)
+ .set(Notices::getParam3,Constants.ONE)
+ .eq(Notices::getStatus,Constants.ZERO)
.eq(Notices::getIsdeleted,Constants.ZERO)
.eq(Notices::getObjType,Constants.ZERO)
.eq(Notices::getObjId,id)
@@ -195,6 +216,7 @@
ywStocktakingRecord.setIsdeleted(Constants.ZERO);
ywStocktakingRecord.setStatus(Constants.ZERO);
ywStocktakingRecord.setMaterialId(ywStock.getMaterialId());
+ ywStocktakingRecord.setUserId(model.getUserId()+"");
ywStocktakingRecord.setStock(ywStock.getStock());
ywStocktakingRecord.setStocktakingId(model.getId());
ywStocktakingRecordList.add(ywStocktakingRecord);
@@ -209,7 +231,7 @@
@Override
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
- public void finishById(Integer id, LoginUserInfo loginUserInfo) {
+ public void finishById(Integer id, YwOutinboundServiceImpl ywOutinboundService, LoginUserInfo loginUserInfo) {
YwStocktaking model = ywStocktakingMapper.selectById(id);
if(Objects.isNull(model)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鐩樼偣鍗曟暟鎹�");
@@ -222,6 +244,10 @@
}
List<YwStocktakingRecord> recordList = ywStocktakingRecordMapper.selectList(new QueryWrapper<YwStocktakingRecord>().lambda()
.eq(YwStocktakingRecord::getStocktakingId,id).eq(YwStocktakingRecord::getIsdeleted,Constants.ZERO));
+ //鐩樼泩鏁版嵁鍒楄〃
+ List<YwOutinboundRecord> inBoundRecordList = new ArrayList<>();
+ //鐩樹簭鏁版嵁鍒楄〃
+ List<YwOutinboundRecord> outBoundRecordList = new ArrayList<>();
for (YwStocktakingRecord ywStocktakingRecord:recordList) {
//鎻愪氦鏃� 鏈繘琛岀洏鐐圭殑鏄庣粏鏁版嵁
if(Constants.equalsInteger(ywStocktakingRecord.getStatus(),Constants.ZERO)){
@@ -230,18 +256,30 @@
.set(YwStocktakingRecord::getUserId,loginUserInfo.getId())
.eq(YwStocktakingRecord::getId,ywStocktakingRecord.getId())
);
+ continue;
}
//鏌ヨ搴撳瓨淇℃伅 杩涜搴撳瓨鏇存柊
YwStock ywStock = ywStockMapper.selectOne(new QueryWrapper<YwStock>().lambda().eq(YwStock::getMaterialId,ywStocktakingRecord.getMaterialId())
.eq(YwStock::getWarehouseId,model.getWarehouseId()).eq(YwStock::getStock,ywStocktakingRecord.getStock()));
- if(Objects.isNull(ywStock)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"搴撳瓨淇℃伅寮傚父锛岃鑱旂郴绠$悊鍛�");
+ if(ywStock.getStock().compareTo(ywStocktakingRecord.getActStock())<Constants.ZERO ){
+ YwOutinboundRecord ywOutinboundRecord = new YwOutinboundRecord();
+ ywOutinboundRecord.setMaterialId(ywStock.getMaterialId());
+ ywOutinboundRecord.setStock(ywStocktakingRecord.getActStock().subtract(ywStock.getStock()));
+ inBoundRecordList.add(ywOutinboundRecord);
+ }else if(ywStock.getStock().compareTo(ywStocktakingRecord.getActStock())>Constants.ZERO ){
+ YwOutinboundRecord ywOutinboundRecord = new YwOutinboundRecord();
+ ywOutinboundRecord.setMaterialId(ywStock.getMaterialId());
+ ywOutinboundRecord.setStock(ywStock.getStock().subtract(ywStocktakingRecord.getActStock()));
+ outBoundRecordList.add(ywOutinboundRecord);
}
- if(ywStocktakingRecord.getActStock().compareTo(BigDecimal.ZERO)==Constants.ZERO){
- ywStockMapper.deleteById(ywStock.getId());
- }else {
- ywStockMapper.update(new UpdateWrapper<YwStock>().lambda().set(YwStock::getStock,ywStocktakingRecord.getActStock()).eq(YwStock::getId,ywStock.getId()));
- }
+// if(Objects.isNull(ywStock)){
+// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"搴撳瓨淇℃伅寮傚父锛岃鑱旂郴绠$悊鍛�");
+// }
+// if(ywStocktakingRecord.getActStock().compareTo(BigDecimal.ZERO)==Constants.ZERO){
+// ywStockMapper.deleteById(ywStock.getId());
+// }else {
+// ywStockMapper.update(new UpdateWrapper<YwStock>().lambda().set(YwStock::getStock,ywStocktakingRecord.getActStock()).eq(YwStock::getId,ywStock.getId()));
+// }
}
ywStocktakingMapper.update(new UpdateWrapper<YwStocktaking>().lambda()
.set(YwStocktaking::getEditDate,DateUtil.getCurrDateTime())
@@ -250,6 +288,40 @@
.set(YwStocktaking::getEditor,loginUserInfo.getId())
.set(YwStocktaking::getStatus,Constants.TWO)
.eq(YwStocktaking::getId,model.getId()));
+ //鐢熶骇鐩樼泩鐨勫叆搴撳崟
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(inBoundRecordList)){
+ YwOutinbound ywOutinbound = new YwOutinbound();
+ ywOutinbound.setDoneDate(new Date());
+ ywOutinbound.setWarehouseId(model.getWarehouseId());
+ ywOutinbound.setType(4);
+ ywOutinbound.setOrigin(1);
+ ywOutinbound.setContent("鐩樼偣鍗曘��"+model.getCode() +"銆戝鐞嗙敓鎴愮洏鐩堟暟鎹�");
+ ywOutinbound.setStatus(Constants.ZERO);
+ ywOutinbound.setRecordList(inBoundRecordList);
+ ywOutinbound.setLoginUserInfo(loginUserInfo);
+ ywOutinboundService.create(ywOutinbound);
+ }
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(outBoundRecordList)){
+ YwOutinbound ywOutinbound = new YwOutinbound();
+ ywOutinbound.setDoneDate(new Date());
+ ywOutinbound.setWarehouseId(model.getWarehouseId());
+ ywOutinbound.setType(10);
+ ywOutinbound.setOrigin(1);
+ ywOutinbound.setContent("鐩樼偣鍗曘��"+model.getCode() +"銆戝鐞嗙敓鎴愮洏浜忔暟鎹�");
+ ywOutinbound.setStatus(Constants.ZERO);
+ ywOutinbound.setRecordList(outBoundRecordList);
+ ywOutinbound.setLoginUserInfo(loginUserInfo);
+ ywOutinboundService.create(ywOutinbound);
+ }
+
+ //鏍囪寰呭姙宸插畬鎴�
+ noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
+ .set(Notices::getStatus,Constants.ONE)
+ .set(Notices::getParam3,Constants.TWO)
+ .eq(Notices::getIsdeleted,Constants.ZERO)
+ .eq(Notices::getObjType,Constants.ZERO)
+ .eq(Notices::getObjId,id)
+ );
}
@@ -282,6 +354,12 @@
if(Objects.isNull(model)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鐩樼偣鍗曟暟鎹�");
}
+
+ SystemUser systemUser = systemUserMapper.selectById(ywStocktaking.getUserId());
+ if(Objects.isNull(systemUser)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鐩樼偣浜轰俊鎭�");
+ }
+
YwWarehouse ywWarehouse = ywWarehouseMapper.selectById(ywStocktaking.getWarehouseId());
if(Objects.isNull(ywWarehouse)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌浠撳簱鏁版嵁");
@@ -301,7 +379,7 @@
//鏍囪寰呭姙宸插鐞�
noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
.set(Notices::getStatus,Constants.ONE)
- .eq(Notices::getIsdeleted,Constants.ZERO)
+ .eq(Notices::getIsdeleted,Constants.ONE)
.eq(Notices::getObjType,Constants.ZERO)
.eq(Notices::getObjId,ywStocktaking.getId())
);
@@ -319,6 +397,14 @@
notices.setType(notices.getObjType());
notices.setUserId(ywStocktaking.getUserId());
notices.setStatus(Constants.ZERO);
+ //鏁寸悊json鏁版嵁
+ Map<String,Object> jsonMap = new HashMap<>();
+ jsonMap.put("key1","鐩樼偣鍗�"+ywStocktaking.getCode());
+ jsonMap.put("key2", DateUtil.getFomartDate(ywStocktaking.getPlanDate(),"yyyy-MM-dd"));
+ jsonMap.put("key3", ywWarehouse.getName());
+ jsonMap.put("key4", systemUser.getRealname());
+ notices.setParam2(JSONObject.toJSONString(jsonMap));
+ notices.setParam3(Constants.ZERO+"");
noticesJoinMapper.insert(notices);
@@ -343,8 +429,8 @@
public YwStocktaking getDetail(Integer id) {
MPJLambdaWrapper<YwStocktaking> queryWrapper = new MPJLambdaWrapper<>();
queryWrapper.selectAll(YwStocktaking.class)
- .select(" s.name ", YwStocktaking::getUserName)
- .select(" s1.name ",YwStocktaking::getCreateName)
+ .select(" s.realname ", YwStocktaking::getUserName)
+ .select(" s1.realname ",YwStocktaking::getCreateName)
.selectAs(YwWarehouse::getName,YwStocktaking::getWarehouseName)
.leftJoin(YwWarehouse.class,YwWarehouse::getId,YwStocktaking::getWarehouseId)
.leftJoin("system_user s on t.user_id = s.id")
@@ -383,8 +469,8 @@
Utils.MP.blankToNull(pageWrap.getModel());
YwStocktaking model = pageWrap.getModel();
queryWrapper.selectAll(YwStocktaking.class)
- .select(" s.name ", YwStocktaking::getUserName)
- .select(" s1.name ",YwStocktaking::getCreateName)
+ .select(" s.realname ", YwStocktaking::getUserName)
+ .select(" s1.realname ",YwStocktaking::getCreateName)
.selectAs(YwWarehouse::getName,YwStocktaking::getWarehouseName)
.leftJoin(YwWarehouse.class,YwWarehouse::getId,YwStocktaking::getWarehouseId)
.leftJoin("system_user s on t.user_id = s.id")
@@ -392,10 +478,10 @@
.eq(YwStocktaking::getIsdeleted,Constants.ZERO)
.like(StringUtils.isNotBlank(model.getName()),YwStocktaking::getName,model.getName())
.eq(Objects.nonNull(model.getStatus()),YwStocktaking::getStatus,model.getStatus())
+ .eq(Objects.nonNull(model.getUserId()),YwStocktaking::getUserId,model.getUserId())
.orderByAsc(YwStocktaking::getStatus)
.orderByDesc(YwStocktaking::getPlanDate)
;
-
IPage iPage = ywStocktakingMapper.selectJoinPage(page, YwStocktaking.class,queryWrapper);
return PageData.from(iPage);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java
index e3887f4..6568f12 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwTempConfigServiceImpl.java
@@ -1,10 +1,13 @@
package com.doumee.service.business.impl;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.YwTempConfigMapper;
+import com.doumee.dao.business.dto.YwCallTempDataDTO;
import com.doumee.dao.business.model.YwTempConfig;
import com.doumee.dao.business.vo.YwCallTempDataVO;
import com.doumee.service.business.YwTempConfigService;
@@ -12,11 +15,14 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.List;
+import java.util.Objects;
import java.util.Optional;
import java.util.stream.Collectors;
@@ -182,6 +188,66 @@
+ @Override
+ @Transactional(rollbackFor = {BusinessException.class,Exception.class})
+ public void updTempConfig(YwCallTempDataDTO ywCallTempDataDTO){
+ if(Objects.isNull(ywCallTempDataDTO)
+ || Objects.isNull(ywCallTempDataDTO.getSmsTemp())
+ || Objects.isNull(ywCallTempDataDTO.getEmailTemp())
+ || Objects.isNull(ywCallTempDataDTO.getLeaseTemp())
+ || Objects.isNull(ywCallTempDataDTO.getOtherTemp())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ YwTempConfig smsTemp = ywCallTempDataDTO.getSmsTemp();
+ if(Objects.isNull(smsTemp.getId())
+ || Objects.isNull(smsTemp.getTitle())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐭伅妯℃澘鍙傛暟閿欒");
+ }
+ ywTempConfigMapper.update(new UpdateWrapper<YwTempConfig>().lambda()
+ .set(YwTempConfig::getTitle,smsTemp.getTitle())
+ .eq(YwTempConfig::getId,smsTemp.getId())
+ );
+
+
+ YwTempConfig emailTemp = ywCallTempDataDTO.getEmailTemp();
+ if(Objects.isNull(emailTemp.getId())
+ || Objects.isNull(emailTemp.getTitle())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"閭欢妯℃澘鍙傛暟閿欒");
+ }
+ ywTempConfigMapper.update(new UpdateWrapper<YwTempConfig>().lambda()
+ .set(YwTempConfig::getTitle,emailTemp.getTitle())
+ .eq(YwTempConfig::getId,emailTemp.getId())
+ );
+
+ YwTempConfig leasesTemp = ywCallTempDataDTO.getLeaseTemp();
+ if(Objects.isNull(leasesTemp.getId())
+ || Objects.isNull(leasesTemp.getTitle())
+ || StringUtils.isBlank(leasesTemp.getUrl())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"绉熻祦閫氱煡鍗曟ā鏉垮弬鏁伴敊璇�");
+ }
+ ywTempConfigMapper.update(new UpdateWrapper<YwTempConfig>().lambda()
+ .set(YwTempConfig::getTitle,leasesTemp.getTitle())
+ .set(YwTempConfig::getUrl,leasesTemp.getUrl())
+ .eq(YwTempConfig::getId,leasesTemp.getId())
+ );
+
+
+ YwTempConfig otherTemp = ywCallTempDataDTO.getOtherTemp();
+ if(Objects.isNull(otherTemp.getId())
+ || Objects.isNull(otherTemp.getTitle())
+ || StringUtils.isBlank(otherTemp.getUrl())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鍏朵粬閫氱煡鍗曟ā鏉垮弬鏁伴敊璇�");
+ }
+ ywTempConfigMapper.update(new UpdateWrapper<YwTempConfig>().lambda()
+ .set(YwTempConfig::getTitle,otherTemp.getTitle())
+ .set(YwTempConfig::getUrl,otherTemp.getUrl())
+ .eq(YwTempConfig::getId,otherTemp.getId())
+ );
+
+ }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java
index c0281af..cf15928 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java
@@ -71,11 +71,11 @@
if(Objects.isNull(ywWarehouse)){
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
- //鍒ゆ柇鏁版嵁涓嬫槸鍚﹀瓨鍦ㄨ祫浜ф暟鎹�
+ //鍒ゆ柇鏁版嵁涓嬫槸鍚﹀瓨鍦ㄧ墿鏂欐暟鎹�
if(ywStockMapper.selectCount(new QueryWrapper<YwStock>().lambda().eq(YwStock::getIsdeleted,Constants.ZERO)
.gt(YwStock::getStock,Constants.ZERO)
.eq(YwStock::getWarehouseId,ywWarehouse.getId()))>Constants.ZERO){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠浠撳簱鍐呮湁搴撳瓨鐨勮祫浜э紝涓嶅彲鍒犻櫎");
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠浠撳簱鍐呮湁搴撳瓨鐨勭墿鏂欙紝涓嶅彲鍒犻櫎");
};
ywWarehouseMapper.update(new UpdateWrapper<YwWarehouse>().lambda()
.set(YwWarehouse::getEditDate, DateUtil.getCurrDateTime())
@@ -128,6 +128,12 @@
){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
+ //鍒ゆ柇鏁版嵁涓嬫槸鍚﹀瓨鍦ㄧ墿鏂欐暟鎹�
+ if(ywStockMapper.selectCount(new QueryWrapper<YwStock>().lambda().eq(YwStock::getIsdeleted,Constants.ZERO)
+ .gt(YwStock::getStock,Constants.ZERO)
+ .eq(YwStock::getWarehouseId,ywWarehouse.getId()))>Constants.ZERO){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠浠撳簱鍐呮湁搴撳瓨鐨勭墿鏂欙紝涓嶅彲鍒犻櫎");
+ };
ywWarehouseMapper.update(new UpdateWrapper<YwWarehouse>().lambda().eq(YwWarehouse::getId,ywWarehouse.getId()).set(YwWarehouse::getStatus,ywWarehouse.getStatus()));
}
@@ -177,13 +183,18 @@
.like(StringUtils.isNotBlank(model.getName()),YwWarehouse::getName,model.getName())
.eq(YwWarehouse::getIsdeleted,Constants.ZERO)
;
- for(PageWrap.SortData sortData: pageWrap.getSorts()) {
- if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
- queryWrapper.orderByDesc(sortData.getProperty());
- } else {
- queryWrapper.orderByAsc(sortData.getProperty());
+ if(CollectionUtils.isEmpty(pageWrap.getSorts())){
+ queryWrapper.orderByAsc(YwWarehouse::getSortnum);
+ }else{
+ for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+ if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+ queryWrapper.orderByDesc(sortData.getProperty());
+ } else {
+ queryWrapper.orderByAsc(sortData.getProperty());
+ }
}
}
+
IPage iPage = ywWarehouseMapper.selectJoinPage(page,YwWarehouse.class,queryWrapper);
return PageData.from(iPage);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
index 4346ef6..58d10e9 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
@@ -1,5 +1,6 @@
package com.doumee.service.business.impl;
+import com.alibaba.fastjson.JSONObject;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
@@ -16,7 +17,9 @@
import com.doumee.dao.business.vo.YwWorkorderDataVO;
import com.doumee.dao.system.MultifileMapper;
import com.doumee.dao.system.SystemUserMapper;
+import com.doumee.dao.system.join.NoticesJoinMapper;
import com.doumee.dao.system.model.Multifile;
+import com.doumee.dao.system.model.Notices;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.YwWorkorderService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -60,6 +63,9 @@
private YwBuildingMapper ywBuildingMapper;
@Autowired
private YwFloorMapper ywFloorMapper;
+ @Autowired
+ private NoticesJoinMapper noticesJoinMapper;
+
@Override
@Transactional(rollbackFor = {BusinessException.class,Exception.class})
@@ -194,6 +200,30 @@
update.setDispatchInfo(ywWorkorder.getDispatchInfo());
update.setDealUserId(ywWorkorder.getDealUserId());
ywWorkorderMapper.updateById(update);
+
+ //娣诲姞寰呭姙淇℃伅
+ Notices notices = new Notices();
+ notices.setCreateDate(new Date());
+ notices.setCreator(update.getEditor());
+ notices.setIsdeleted(Constants.ZERO);
+ notices.setParam1(DateUtil.formatDate(model.getCreateDate(),"yyyy-MM-dd"));
+ notices.setTitle("宸ュ崟寰呭姙");
+ notices.setObjId(update.getId());
+ notices.setObjType(Constants.TWO);
+ notices.setType(notices.getObjType());
+ notices.setUserId(ywWorkorder.getDealUserId());
+ notices.setStatus(Constants.ZERO);
+ //鏁寸悊json鏁版嵁
+ Map<String,Object> jsonMap = new HashMap<>();
+ jsonMap.put("key1", model.getBuildingName()+"/"+model.getFloorName());
+ jsonMap.put("key2", DateUtil.getFomartDate(model.getCreateDate(),"yyyy-MM-dd HH:mm:ss"));
+ jsonMap.put("key3", Constants.equalsInteger(model.getAreaType(),Constants.ZERO)?"瀹ゅ唴缁翠慨":"鍏叡鍖哄煙");
+ jsonMap.put("key4", model.getCategoryParentName()+"/"+model.getCategoryName());
+ notices.setParam2(JSONObject.toJSONString(jsonMap));
+ notices.setParam3(Constants.ZERO+"");
+ noticesJoinMapper.insert(notices);
+
+
dealLogBiz(model,Constants.YwLogType.WORKORDER_DISPATCH,ywWorkorder.getLoginUserInfo().getRealname(),user.getRealname());//璁板綍鏂板缓鏃ュ織
}
@Override
@@ -220,6 +250,17 @@
update.setDealDate(update.getEditDate());
update.setDealInfo(ywWorkorder.getDealInfo());
ywWorkorderMapper.updateById(update);
+
+
+ //鏍囪寰呭姙宸插鐞�
+ noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
+ .set(Notices::getStatus,Constants.ONE)
+ .set(Notices::getParam3,Constants.TWO)
+ .eq(Notices::getIsdeleted,Constants.ZERO)
+ .eq(Notices::getObjType,Constants.TWO)
+ .eq(Notices::getObjId,update.getId())
+ );
+
List<Multifile> fileList = new ArrayList<>();
if(ywWorkorder.getDealFileList()!=null && ywWorkorder.getDealFileList().size()>0){
@@ -330,8 +371,9 @@
.selectAs(Company::getName,YwWorkorder::getDealUserCompany)
.select("t3.realname",YwWorkorder::getCreatorName)
.select("t3.mobile",YwWorkorder::getCreatorMobile)
- .select("t9.name",YwWorkorder::getCreatorCompany)
- .selectAs(Category::getName,YwWorkorder::getCategoryName)
+ .select("c.name",YwWorkorder::getCreatorCompany)
+ .select("ct.name",YwWorkorder::getCategoryName)
+ .select("ct1.name",YwWorkorder::getCategoryParentName)
.selectAs(YwRoom::getName,YwWorkorder::getRoomName)
.selectAs(YwRoom::getRoomNum,YwWorkorder::getRoomNum)
.selectAs(YwFloor::getName,YwWorkorder::getFloorName)
@@ -345,7 +387,9 @@
.leftJoin(YwFloor.class,YwFloor::getId,YwWorkorder::getFloorId)
.leftJoin(YwBuilding.class,YwBuilding::getId,YwWorkorder::getBuildingId)
.leftJoin(YwProject.class,YwProject::getId,YwWorkorder::getProjectId)
- .leftJoin(" company t9 on t9.id = t1.company_id ")
+ .leftJoin(" company c on c.id = t1.company_id ")
+ .leftJoin(" category ct on ct.id = t.cate_id ")
+ .leftJoin(" category ct1 on ct1.id = ct.PARENT_ID ")
.eq(YwWorkorder::getId,id);
YwWorkorder model = ywWorkorderMapper.selectJoinOne(YwWorkorder.class,queryWrapper);
initFiles(model);//璇诲彇闄勪欢淇℃伅
@@ -551,7 +595,7 @@
.eq(Constants.equalsInteger(dto.getQueryType(),Constants.THREE),YwWorkorder::getRoomId,dto.getQueryId()));
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(list)){
ywWorkorderDataVO.setAmount(list.size());
- ywWorkorderDataVO.setMonthAmount(list.stream().filter(i-> DateUtil.formatDate(i.getSubmitDate(),"yyyy-MM").equals(DateUtil.formatDate(new Date(),"yyyy-MM"))).collect(Collectors.toList()).size());
+ ywWorkorderDataVO.setMonthAmount(list.stream().filter(i-> DateUtil.formatDate(i.getCreateDate(),"yyyy-MM").equals(DateUtil.formatDate(new Date(),"yyyy-MM"))).collect(Collectors.toList()).size());
ywWorkorderDataVO.setWaitDealAmount(list.stream().filter(i-> Constants.equalsInteger(i.getDealStatus(),Constants.ONE)).collect(Collectors.toList()).size());
ywWorkorderDataVO.setWaitAssignAmount(list.stream().filter(i-> Constants.equalsInteger(i.getDealStatus(),Constants.ZERO)).collect(Collectors.toList()).size());
}
--
Gitblit v1.9.3