Commit ea4bb3525f5b71f1dbbe45c707f549bf37c5304e
1 parent
eef82803
1
Showing
12 changed files
with
2085 additions
and
321 deletions
admin-web-master/src/api/newly.js
| 1 | import request from '@/utils/request' | 1 | import request from '@/utils/request' |
| 2 | // import request from '@/utils/request2' | 2 | // import request from '@/utils/request2' |
| 3 | - | ||
| 4 | - | 3 | +// 退租决算管理oa |
| 4 | +export function generalBySurrenderTenancy(data) { | ||
| 5 | + return request({ | ||
| 6 | + url: '/oaInterconnection/generalBySurrenderTenancy', | ||
| 7 | + method: 'post', | ||
| 8 | + data | ||
| 9 | + }) | ||
| 10 | +} | ||
| 11 | +// 退租决算管理修改 | ||
| 12 | +export function changeContractInformationedit(data) { | ||
| 13 | + return request({ | ||
| 14 | + url: '/changeContractInformation/edit', | ||
| 15 | + method: 'post', | ||
| 16 | + data | ||
| 17 | + }) | ||
| 18 | +} | ||
| 5 | // 退租决算管理 | 19 | // 退租决算管理 |
| 6 | export function changeContractInformationqueryByPage(data) { | 20 | export function changeContractInformationqueryByPage(data) { |
| 7 | return request({ | 21 | return request({ |
admin-web-master/src/components/buscha/busChanew.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div> | ||
| 3 | + <div v-show="type == '1'"> | ||
| 4 | + <el-tabs v-model="xiangTab"> | ||
| 5 | + <el-tab-pane label="申请信息" name="one"> | ||
| 6 | + <div style="margin-top: 30px;" class="editcss"> | ||
| 7 | + <TitleWithCircle title="基础信息" /> | ||
| 8 | + <div style="padding: 20px;margin-top: 10px;"> | ||
| 9 | + <el-form :model="newinfo" ref="ruleForm" label-width="140px" class="demo-ruleForm"> | ||
| 10 | + <el-form-item label="类型" prop="contractType"> | ||
| 11 | + <div class="duiqi">{{newinfo.contractType=='0'?'退租':newinfo.contractType=='1'?'续租':'-'}}</div> | ||
| 12 | + </el-form-item> | ||
| 13 | + <el-form-item label="申请理由" prop="contractType"> | ||
| 14 | + <div class="duiqi">{{newinfo.reasonForApplication || '-'}}</div> | ||
| 15 | + </el-form-item> | ||
| 16 | + <el-form-item label="申请时间" prop="contractNumber"> | ||
| 17 | + <div class="duiqi">{{newinfo.applicationTime || '-'}}</div> | ||
| 18 | + </el-form-item> | ||
| 19 | + </el-form> | ||
| 20 | + </div> | ||
| 21 | + </div> | ||
| 22 | + </el-tab-pane> | ||
| 23 | + <el-tab-pane label="合同信息" name="first"> | ||
| 24 | + <div style="margin-top: 30px;" class="editcss"> | ||
| 25 | + <TitleWithCircle title="合同信息" /> | ||
| 26 | + <div style="padding: 20px;margin-top: 10px;"> | ||
| 27 | + <el-form :model="info" ref="ruleForm" label-width="140px" class="demo-ruleForm"> | ||
| 28 | + <el-row :gutter="20"> | ||
| 29 | + <el-col :span="item.width == '50%(半行)'?12:item.width == '100%(一行)'?24:12" v-for="(item,index) in list1" > | ||
| 30 | + <el-form-item :label="item.name" prop="appendicesContract" v-if="item.type == '附件'"> | ||
| 31 | + <div class="duiqi greens" @click ="item.value?openfile(item.value):''">{{item.value?'查看详情':'暂无文件'}}</div> | ||
| 32 | + </el-form-item> | ||
| 33 | + <el-form-item :label="item.name" prop="paymentDay" v-else-if="item.type != '资源' && item.type != '商家'"> | ||
| 34 | + <div class="duiqi">{{item.value}}<span v-if="item.key == 'earnestMoney' || item.key == 'contractAmount'"> 元</span></div> | ||
| 35 | + </el-form-item> | ||
| 36 | + </el-col> | ||
| 37 | + </el-row> | ||
| 38 | + <el-form-item label="附件信息" prop="appendicesContract"> | ||
| 39 | + <div class="duiqi greens" @click ="info.appendicesContract?openfile(info.appendicesContract):''">{{info.appendicesContract?'查看详情':'暂无文件'}}</div> | ||
| 40 | + </el-form-item> | ||
| 41 | + </el-form> | ||
| 42 | + </div> | ||
| 43 | + <TitleWithCircle title="合同修订历史" /> | ||
| 44 | + <div style="padding: 20px;margin-top: 10px;"> | ||
| 45 | + <el-table :data="list" | ||
| 46 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> | ||
| 47 | + | ||
| 48 | + <el-table-column label="类型"> | ||
| 49 | + <template slot-scope="scope"> | ||
| 50 | + {{scope.row.contractChangeReason}} | ||
| 51 | + | ||
| 52 | + </template> | ||
| 53 | + </el-table-column> | ||
| 54 | + <el-table-column label="操作时间"> | ||
| 55 | + <template slot-scope="scope"> | ||
| 56 | + {{scope.row.updateDate}} | ||
| 57 | + | ||
| 58 | + </template> | ||
| 59 | + </el-table-column> | ||
| 60 | + <el-table-column label="操作人"> | ||
| 61 | + <template slot-scope="scope"> | ||
| 62 | + {{scope.row.updateUser}} | ||
| 63 | + | ||
| 64 | + </template> | ||
| 65 | + </el-table-column> | ||
| 66 | + <el-table-column label="操作"> | ||
| 67 | + <template slot-scope="scope"> | ||
| 68 | + <div @click="open(scope.row)" class="tableBtn greens">查看</div> | ||
| 69 | + </template> | ||
| 70 | + </el-table-column> | ||
| 71 | + </el-table> | ||
| 72 | + | ||
| 73 | + </div> | ||
| 74 | + </div> | ||
| 75 | + </el-tab-pane> | ||
| 76 | + <el-tab-pane label="商家信息" name="second"> | ||
| 77 | + <div style="margin-top: 30px;" class="editcss"> | ||
| 78 | + <TitleWithCircle title="基础信息" /> | ||
| 79 | + <div style="padding: 20px;margin-top: 10px;"> | ||
| 80 | + <el-form :model="shop" ref="ruleForm" label-width="140px" class="demo-ruleForm"> | ||
| 81 | + <el-row :gutter="20"> | ||
| 82 | + <el-col :span="9"> | ||
| 83 | + <el-form-item label="姓名" prop="name"> | ||
| 84 | + <div class="duiqi">{{shop.name}}</div> | ||
| 85 | + </el-form-item> | ||
| 86 | + </el-col> | ||
| 87 | + <el-col :span="9"> | ||
| 88 | + <el-form-item label="手机号" prop="phone"> | ||
| 89 | + <div class="duiqi">{{shop.phone}}</div> | ||
| 90 | + </el-form-item> | ||
| 91 | + </el-col> | ||
| 92 | + </el-row> | ||
| 93 | + <el-row :gutter="20"> | ||
| 94 | + <el-col :span="9"> | ||
| 95 | + <el-form-item label="证件类型" prop="idCardType"> | ||
| 96 | + <div class="duiqi">{{shop.idCardType}}</div> | ||
| 97 | + </el-form-item> | ||
| 98 | + </el-col> | ||
| 99 | + <el-col :span="9"> | ||
| 100 | + <el-form-item label="身份证号码" prop="idCardNumber"> | ||
| 101 | + <div class="duiqi">{{shop.idCardNumber}}</div> | ||
| 102 | + </el-form-item> | ||
| 103 | + </el-col> | ||
| 104 | + </el-row> | ||
| 105 | + <el-form-item label="身份证照片(正)" prop="idCardFrontImage"> | ||
| 106 | + <!-- <div style="margin-top: 10px;"> | ||
| 107 | + <el-image style="width: 200px;" :src="$baseURL+shop.idCardFrontImage" fit="contain"></el-image> | ||
| 108 | + </div> --> | ||
| 109 | + <div style="display: flex;"> | ||
| 110 | + <allimg :src="shop.idCardFrontImage" fit="contain" style="width: 112px;height: 112px;border: 1px dotted #dcdfe6;border-radius: 2px;overflow: hidden;margin: 0 10px 10px 0;"/> | ||
| 111 | + </div> | ||
| 112 | + </el-form-item> | ||
| 113 | + <el-form-item label="身份证照片(反)" prop="idCardBackImage"> | ||
| 114 | + <!-- <div style="margin-top: 10px;"> | ||
| 115 | + <el-image style="width: 200px;" :src="$baseURL+shop.idCardBackImage" fit="contain"></el-image> | ||
| 116 | + </div> --> | ||
| 117 | + <div style="display: flex;"> | ||
| 118 | + <allimg :src="shop.idCardBackImage" fit="contain" style="width: 112px;height: 112px;border: 1px dotted #dcdfe6;border-radius: 2px;overflow: hidden;margin: 0 10px 10px 0;"/> | ||
| 119 | + </div> | ||
| 120 | + </el-form-item> | ||
| 121 | + </el-form> | ||
| 122 | + </div> | ||
| 123 | + </div> | ||
| 124 | + </el-tab-pane> | ||
| 125 | + <el-tab-pane label="商户租赁信息" name="third"> | ||
| 126 | + <div class="editcss"> | ||
| 127 | + <div> | ||
| 128 | + <el-table :data="tableData" | ||
| 129 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> | ||
| 130 | + <el-table-column label="商铺名称"> | ||
| 131 | + <template slot-scope="scope"> | ||
| 132 | + {{scope.row.shopName ? scope.row.shopName : scope.row.advertisingName?scope.row.advertisingName:scope.row.venueName}} | ||
| 133 | + | ||
| 134 | + </template> | ||
| 135 | + </el-table-column> | ||
| 136 | + <el-table-column label="实际使用面积" > | ||
| 137 | + <template slot-scope="scope"> | ||
| 138 | + {{scope.row.actualArea ? scope.row.actualArea : scope.row.actualUsableArea?scope.row.actualUsableArea:'-'}} | ||
| 139 | + | ||
| 140 | + </template> | ||
| 141 | + </el-table-column> | ||
| 142 | + <el-table-column label="类型" > | ||
| 143 | + <template slot-scope="scope"> | ||
| 144 | + {{scope.row.shopName ? '商铺' : scope.row.advertisingType?scope.row.advertisingType:'场地'}} | ||
| 145 | + | ||
| 146 | + </template> | ||
| 147 | + </el-table-column> | ||
| 148 | + <!-- <el-table-column label="状态" min-width="150"> | ||
| 149 | + <template slot-scope="scope"> | ||
| 150 | + {{scope.row.cereContractInformation.tenantName}} | ||
| 151 | + | ||
| 152 | + </template> | ||
| 153 | + </el-table-column> --> | ||
| 154 | + <el-table-column label="操作" > | ||
| 155 | + <template slot-scope="scope"> | ||
| 156 | + <div class="tableBtn greens" @click="details(scope.row)">查看</div> | ||
| 157 | + </template> | ||
| 158 | + </el-table-column> | ||
| 159 | + </el-table> | ||
| 160 | + | ||
| 161 | + </div> | ||
| 162 | + </div> | ||
| 163 | + </el-tab-pane> | ||
| 164 | + </el-tabs> | ||
| 165 | + <div v-if="newinfo.status == '1' && issp == '2'" style="margin-top: 20px;"> | ||
| 166 | + <TitleWithCircle title="审核情况"/> | ||
| 167 | + <div style="padding: 20px;"> | ||
| 168 | + <el-form :model="info" label-width="100px" class="demo-ruleForm"> | ||
| 169 | + <el-form-item label="状态"> | ||
| 170 | + <el-radio v-model="radio" label="2">通过</el-radio> | ||
| 171 | + <el-radio v-model="radio" label="3">不通过</el-radio> | ||
| 172 | + </el-form-item> | ||
| 173 | + <el-form-item label="审核意见"> | ||
| 174 | + <el-input maxlength="200" show-word-limit rows="4" v-model="reviewComments" placeholder="请输入审核意见" | ||
| 175 | + type="textarea" /> | ||
| 176 | + </el-form-item> | ||
| 177 | + </el-form> | ||
| 178 | + </div> | ||
| 179 | + </div> | ||
| 180 | + <div v-if="(newinfo.status == '2' || newinfo.status == '3')&& newinfo.isInterior == '1'" style="margin-top: 20px;"> | ||
| 181 | + <TitleWithCircle title="审核结果"/> | ||
| 182 | + <div style="padding: 20px;"> | ||
| 183 | + <el-form :model="newinfo" label-width="100px" class="demo-ruleForm"> | ||
| 184 | + <el-form-item label="状态"> | ||
| 185 | + <div class="duiqi">{{newinfo.status=='2'?'已同意':newinfo.status=='3'?'已拒绝':'无'}}</div> | ||
| 186 | + </el-form-item> | ||
| 187 | + <el-form-item label="审核意见"> | ||
| 188 | + <div class="duiqi">{{newinfo.reviewComments || '无'}}</div> | ||
| 189 | + </el-form-item> | ||
| 190 | + </el-form> | ||
| 191 | + </div> | ||
| 192 | + </div> | ||
| 193 | + <div> | ||
| 194 | + <el-button v-if="newinfo.status == '1' && issp == '2'" @click="minSev" | ||
| 195 | + style="background-color: #3F9B6A;color: #fff;">确定</el-button> | ||
| 196 | + <el-button class="buttonHover" | ||
| 197 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;margin-top: 20px;" | ||
| 198 | + @click="changetype">返回</el-button> | ||
| 199 | + </div> | ||
| 200 | + </div> | ||
| 201 | + <div v-show="type == '2'"> | ||
| 202 | + <oneht ref="onhet"></oneht> | ||
| 203 | + <div> | ||
| 204 | + <el-button class="buttonHover" | ||
| 205 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;margin-top: 20px;" | ||
| 206 | + @click="changetype">返回</el-button> | ||
| 207 | + </div> | ||
| 208 | + </div> | ||
| 209 | + <div v-show="type == '3'"> | ||
| 210 | + <div v-if="detailstype == '商铺'"> | ||
| 211 | + <resourceCommodity :editbgid="detailsinfo" @removeonaction="removeonaction"></resourceCommodity> | ||
| 212 | + </div> | ||
| 213 | + <div v-if="detailstype == '广告位'"> | ||
| 214 | + <chakanmap :editbgid="detailsinfo" @removeonaction="removeonaction"></chakanmap> | ||
| 215 | + </div> | ||
| 216 | + <div v-if="detailstype == '场地'"> | ||
| 217 | + <chakancd :editbgid="detailsinfo" @removeonaction="removeonaction"></chakancd> | ||
| 218 | + </div> | ||
| 219 | + </div> | ||
| 220 | + | ||
| 221 | + </div> | ||
| 222 | +</template> | ||
| 223 | + | ||
| 224 | +<script> | ||
| 225 | + import oneht from "@/components/chakan/oneht"; | ||
| 226 | + import { | ||
| 227 | + queryByContractcontractNumber | ||
| 228 | + } from '../../api/commodityLease.js' | ||
| 229 | + import { | ||
| 230 | + businessListGetById | ||
| 231 | + } from '../../api/business.js' | ||
| 232 | + import TitleWithCircle from '@/components/top/index'; | ||
| 233 | + import { | ||
| 234 | + cerePlatformMerchantinfo | ||
| 235 | + } from '../../api/newly.js' | ||
| 236 | + import resourceCommodity from '@/components/resourceCommodity/index' | ||
| 237 | + import chakanmap from '@/components/chakan/map' | ||
| 238 | + import allimg from '@/components/chakan/allimg.vue'; | ||
| 239 | + import chakancd from '@/components/chakan/cd' | ||
| 240 | + | ||
| 241 | + import { | ||
| 242 | + changeContractInformationedit | ||
| 243 | + } from '@/api/newly.js' | ||
| 244 | + export default { | ||
| 245 | + components: { | ||
| 246 | + oneht, | ||
| 247 | + TitleWithCircle, | ||
| 248 | + chakancd, | ||
| 249 | + chakanmap, | ||
| 250 | + resourceCommodity, | ||
| 251 | + allimg | ||
| 252 | + }, | ||
| 253 | + props: { | ||
| 254 | + info: { | ||
| 255 | + type: Object, | ||
| 256 | + default: function() { | ||
| 257 | + return {}; // 返回一个空数组作为默认值 | ||
| 258 | + }, | ||
| 259 | + }, | ||
| 260 | + newinfo: { | ||
| 261 | + type: Object, | ||
| 262 | + default: function() { | ||
| 263 | + return {}; // 返回一个空数组作为默认值 | ||
| 264 | + }, | ||
| 265 | + }, | ||
| 266 | + issp: { | ||
| 267 | + type: String, | ||
| 268 | + default: function() { | ||
| 269 | + return '1'; | ||
| 270 | + }, | ||
| 271 | + }, | ||
| 272 | + }, | ||
| 273 | + data() { | ||
| 274 | + return { | ||
| 275 | + reviewComments:'', | ||
| 276 | + radio: '2', | ||
| 277 | + url:'', | ||
| 278 | + type:'1', | ||
| 279 | + tableData: [], | ||
| 280 | + xiangTab: 'one', | ||
| 281 | + siteIds: [], | ||
| 282 | + list: [], | ||
| 283 | + advIds: [], | ||
| 284 | + shopIds: [], | ||
| 285 | + shop: {}, | ||
| 286 | + newshop:{}, | ||
| 287 | + newinfo:{}, | ||
| 288 | + detailsinfo:{}, | ||
| 289 | + detailstype:'', | ||
| 290 | + list1:[] | ||
| 291 | + } | ||
| 292 | + }, | ||
| 293 | + created() { | ||
| 294 | + console.log(this.info) | ||
| 295 | + this.list1 = JSON.parse(this.info.templateInformation) | ||
| 296 | + console.log(this.list1) | ||
| 297 | + this.url = process.env.VUE_APP_DOMAIN_PREFIX_1 | ||
| 298 | + queryByContractcontractNumber({ | ||
| 299 | + contractNumber: this.info.contractNumber | ||
| 300 | + }).then(res => { | ||
| 301 | + console.error(res) | ||
| 302 | + // this.shop = res.data.shop | ||
| 303 | + this.siteIds = res.data.siteIds | ||
| 304 | + this.shopIds = res.data.shopIds | ||
| 305 | + this.advIds = res.data.advIds | ||
| 306 | + this.list = res.data.list | ||
| 307 | + this.tableData = [...res.data.siteIds, ...res.data.shopIds, ...res.data.advIds] | ||
| 308 | + }) | ||
| 309 | + cerePlatformMerchantinfo({id:this.info.relatedMerchants}).then(res => { | ||
| 310 | + console.error(res) | ||
| 311 | + this.shop = res.data | ||
| 312 | + }) | ||
| 313 | + }, | ||
| 314 | + computed: { | ||
| 315 | + | ||
| 316 | + }, | ||
| 317 | + methods: { | ||
| 318 | + minSev() { | ||
| 319 | + changeContractInformationedit({ | ||
| 320 | + ...this.newinfo, | ||
| 321 | + status: this.radio, | ||
| 322 | + reviewComments: this.reviewComments?this.reviewComments:null | ||
| 323 | + }).then(res => { | ||
| 324 | + console.error(res) | ||
| 325 | + if (res.code == 200) { | ||
| 326 | + this.$message({ | ||
| 327 | + message: '处理成功', | ||
| 328 | + type: 'success' | ||
| 329 | + }) | ||
| 330 | + this.newinfo.status = this.radio | ||
| 331 | + this.$emit('removeonaction', '1') | ||
| 332 | + } else { | ||
| 333 | + this.$message({ | ||
| 334 | + message: '处理失败', | ||
| 335 | + type: 'error' | ||
| 336 | + }) | ||
| 337 | + } | ||
| 338 | + }) | ||
| 339 | + }, | ||
| 340 | + removeonaction() { | ||
| 341 | + this.type = '1' | ||
| 342 | + }, | ||
| 343 | + details(row) { | ||
| 344 | + this.detailstype = row.shopName?'商铺':row.advertisingType?'广告位':'场地' | ||
| 345 | + this.detailsinfo = row | ||
| 346 | + this.type = '3' | ||
| 347 | + }, | ||
| 348 | + openfile(e) { | ||
| 349 | + if (e) { | ||
| 350 | + const fullUrl = this.$baseURL + e; | ||
| 351 | + try { | ||
| 352 | + window.open(fullUrl, '_blank'); // 在新标签页中打开文件 | ||
| 353 | + } catch (error) { | ||
| 354 | + console.error('打开文件失败:', error); | ||
| 355 | + } | ||
| 356 | + } else { | ||
| 357 | + console.error('无文件可查看'); | ||
| 358 | + } | ||
| 359 | + }, | ||
| 360 | + changetype(){ | ||
| 361 | + this.xiangTab= 'first' | ||
| 362 | + if(this.type == '1'){ | ||
| 363 | + this.$emit('removeonaction', '1') | ||
| 364 | + }else{ | ||
| 365 | + this.type = '1' | ||
| 366 | + } | ||
| 367 | + }, | ||
| 368 | + open(row) { | ||
| 369 | + console.error(row) | ||
| 370 | + this.type = '2' | ||
| 371 | + this.$refs.onhet.open(row) | ||
| 372 | + }, | ||
| 373 | + closeFn() { | ||
| 374 | + this.$emit('change', false); | ||
| 375 | + }, | ||
| 376 | + } | ||
| 377 | + } | ||
| 378 | +</script> | ||
| 379 | +<style> | ||
| 380 | + .el-form-item__label { | ||
| 381 | + color: #a2a2a2; | ||
| 382 | + } | ||
| 383 | + | ||
| 384 | + .greens { | ||
| 385 | + color: #3F9B6A; | ||
| 386 | + } | ||
| 387 | +</style> |
admin-web-master/src/main.js
| @@ -37,15 +37,15 @@ Vue.prototype.$hostUrl =`${window.location.protocol}//${window.location.host}/cd | @@ -37,15 +37,15 @@ Vue.prototype.$hostUrl =`${window.location.protocol}//${window.location.host}/cd | ||
| 37 | 37 | ||
| 38 | let host = window.location.host; | 38 | let host = window.location.host; |
| 39 | if(host === 'localhost:8080' || host === 'localhost:8081' || host === 'localhost:9528'|| host === '192.168.31.45:9528'|| host === 'localhost:9529' ) { | 39 | if(host === 'localhost:8080' || host === 'localhost:8081' || host === 'localhost:9528'|| host === '192.168.31.45:9528'|| host === 'localhost:9529' ) { |
| 40 | - Vue.prototype.$baseURL ='https://jy.scjysm.asia:18086/cdwlMall' | ||
| 41 | - Vue.prototype.$fontBold = `https://jy.scjysm.asia:18086/cdwlMall/zsfwzxt/assets/Alibaba-PuHuiTi-Bold.ttf` | ||
| 42 | - Vue.prototype.$fontRegular = `https://jy.scjysm.asia:18086/cdwlMall/zsfwzxt/assets/Alibaba-PuHuiTi-Regular.ttf` | ||
| 43 | - Vue.prototype.$API = `https://jy.scjysm.asia:18086/cdwlMall/meserver/api` | 40 | + // Vue.prototype.$baseURL ='https://jy.scjysm.asia:18086/cdwlMall' |
| 41 | + // Vue.prototype.$fontBold = `https://jy.scjysm.asia:18086/cdwlMall/zsfwzxt/assets/Alibaba-PuHuiTi-Bold.ttf` | ||
| 42 | + // Vue.prototype.$fontRegular = `https://jy.scjysm.asia:18086/cdwlMall/zsfwzxt/assets/Alibaba-PuHuiTi-Regular.ttf` | ||
| 43 | + // Vue.prototype.$API = `https://jy.scjysm.asia:18086/cdwlMall/meserver/api` | ||
| 44 | 44 | ||
| 45 | - // Vue.prototype.$baseURL ='https://zhgw-uat.028wlkj.com/cdwlMall' | ||
| 46 | - // Vue.prototype.$fontBold = `https://zhgw-uat.028wlkj.com/cdwlMall/zsfwzxt/assets/Alibaba-PuHuiTi-Bold.ttf` | ||
| 47 | - // Vue.prototype.$fontRegular = `https://zhgw-uat.028wlkj.com/cdwlMall/zsfwzxt/assets/Alibaba-PuHuiTi-Regular.ttf` | ||
| 48 | - // Vue.prototype.$API = `https://zhgw-uat.028wlkj.com/cdwlMall/meserver/api` | 45 | + Vue.prototype.$baseURL ='https://zhgw-uat.028wlkj.com/cdwlMall' |
| 46 | + Vue.prototype.$fontBold = `https://zhgw-uat.028wlkj.com/cdwlMall/zsfwzxt/assets/Alibaba-PuHuiTi-Bold.ttf` | ||
| 47 | + Vue.prototype.$fontRegular = `https://zhgw-uat.028wlkj.com/cdwlMall/zsfwzxt/assets/Alibaba-PuHuiTi-Regular.ttf` | ||
| 48 | + Vue.prototype.$API = `https://zhgw-uat.028wlkj.com/cdwlMall/meserver/api` | ||
| 49 | } else { | 49 | } else { |
| 50 | Vue.prototype.$API = `${window.location.protocol}//${window.location.host}/cdwlMall/meserver/api` | 50 | Vue.prototype.$API = `${window.location.protocol}//${window.location.host}/cdwlMall/meserver/api` |
| 51 | Vue.prototype.$baseURL =`${window.location.protocol}//${window.location.host}/cdwlMall` | 51 | Vue.prototype.$baseURL =`${window.location.protocol}//${window.location.host}/cdwlMall` |
admin-web-master/src/utils/request.js
| @@ -22,7 +22,7 @@ if(host === 'localhost:8080' || host === 'localhost:8081' || host === 'localhost | @@ -22,7 +22,7 @@ if(host === 'localhost:8080' || host === 'localhost:8081' || host === 'localhost | ||
| 22 | // baseURL = process.env.VUE_APP_DOMAIN_PREFIX_1; | 22 | // baseURL = process.env.VUE_APP_DOMAIN_PREFIX_1; |
| 23 | 23 | ||
| 24 | 24 | ||
| 25 | - baseURL = 'http://128.10.249.23:9003'; | 25 | + baseURL = 'http://128.10.249.8:9003'; |
| 26 | 26 | ||
| 27 | 27 | ||
| 28 | } else { | 28 | } else { |
admin-web-master/src/views/shopRental/renewalMan/index copy.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div style="background-color:#f7f7f7;padding:10px 10px;"> | ||
| 3 | + <div class="zhuti" v-if="onaction == '1'"> | ||
| 4 | + <div style="height:58px;line-height:58px;"> | ||
| 5 | + <div style="color:#0006"> <span>商铺租赁服务</span> <span style="padding:0 5px;">></span> <span | ||
| 6 | + style="color:#000000e6">续租管理</span></div> | ||
| 7 | + </div> | ||
| 8 | + <!-- 线上 --> | ||
| 9 | + <div> | ||
| 10 | + <!-- 搜索 --> | ||
| 11 | + <div class="formSearch"> | ||
| 12 | + <el-form :inline="true" :model="pagequery"> | ||
| 13 | + <el-form-item label="合同名称"> | ||
| 14 | + <el-input v-model="pagequery.contractName" placeholder="请输入" style="width:168px;" /> | ||
| 15 | + </el-form-item> | ||
| 16 | + </el-form> | ||
| 17 | + | ||
| 18 | + <div> | ||
| 19 | + <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询 | ||
| 20 | + </el-button> | ||
| 21 | + <el-button @click="resetting" class="buttonHover" | ||
| 22 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">重置 | ||
| 23 | + </el-button> | ||
| 24 | + </div> | ||
| 25 | + </div> | ||
| 26 | + <div style="margin-bottom: 20px;"> | ||
| 27 | + <el-button @click="openyujingSet()" style="background-color: #3F9B6A;color: #fff;padding:8px 15px;" | ||
| 28 | + icon="el-icon-circle-plus-outline">预警设置</el-button> | ||
| 29 | + <!-- <el-button @click="" style="background-color: #3F9B6A;color: #fff">批量导入</el-button> --> | ||
| 30 | + </div> | ||
| 31 | + <!-- 表格 --> | ||
| 32 | + | ||
| 33 | + <el-table :data="tableData" | ||
| 34 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> | ||
| 35 | + <el-table-column label="承租人名称"> | ||
| 36 | + <template slot-scope="scope"> | ||
| 37 | + {{scope.row.tenantName}} | ||
| 38 | + | ||
| 39 | + </template> | ||
| 40 | + </el-table-column> | ||
| 41 | + <el-table-column label="租赁类型"> | ||
| 42 | + <template slot-scope="scope"> | ||
| 43 | + {{scope.row.contractType}} | ||
| 44 | + | ||
| 45 | + </template> | ||
| 46 | + </el-table-column> | ||
| 47 | + <el-table-column label="租金/周期"> | ||
| 48 | + <template slot-scope="scope"> | ||
| 49 | + {{scope.row.contractAmount}} / {{scope.row.paymentCycle}} | ||
| 50 | + | ||
| 51 | + </template> | ||
| 52 | + </el-table-column> | ||
| 53 | + <el-table-column label="合同编号"> | ||
| 54 | + <template slot-scope="scope"> | ||
| 55 | + {{scope.row.contractNumber}} | ||
| 56 | + | ||
| 57 | + </template> | ||
| 58 | + </el-table-column> | ||
| 59 | + <el-table-column label="租赁起止时间"> | ||
| 60 | + <template slot-scope="scope"> | ||
| 61 | + {{scope.row.contractSigningDate}}至{{scope.row.contractTerminationDate}} | ||
| 62 | + | ||
| 63 | + </template> | ||
| 64 | + </el-table-column> | ||
| 65 | + <el-table-column label="到期天数"> | ||
| 66 | + <template slot-scope="scope"> | ||
| 67 | + {{ calculateDaysUntilExpiration(scope.row.contractTerminationDate)}} | ||
| 68 | + | ||
| 69 | + </template> | ||
| 70 | + </el-table-column> | ||
| 71 | + <el-table-column label="操作" fixed="right"> | ||
| 72 | + <template slot-scope="scope"> | ||
| 73 | + <div @click="details(scope.row)" class="tableBtn greens">查看</div> | ||
| 74 | + <!-- <div @click="addgzd(scope.row)" class="tableBtn greens">发送提醒</div> --> | ||
| 75 | + </template> | ||
| 76 | + </el-table-column> | ||
| 77 | + </el-table> | ||
| 78 | + <div style="display: flex;justify-content: space-between;" class="bom"> | ||
| 79 | + <div style="font-size: 14px;">共 <span style="color: #3F9B6A;">{{total}}</span> 项数据</div> | ||
| 80 | + <el-pagination :current-page="pagequery.pageNumber+1" :page-sizes="[10, 20, 50, 100]" :page-size="10" | ||
| 81 | + background small layout="prev, pager, next" :total="total" @size-change="handleSizeChange" | ||
| 82 | + @current-change="handleCurrentChange"> | ||
| 83 | + </el-pagination> | ||
| 84 | + </div> | ||
| 85 | + | ||
| 86 | + </div> | ||
| 87 | + | ||
| 88 | + </div> | ||
| 89 | + | ||
| 90 | + | ||
| 91 | + | ||
| 92 | + | ||
| 93 | + | ||
| 94 | + | ||
| 95 | + <el-dialog title="预警设置" :visible.sync="yujingSet" style="padding: 0;" width="60%" center :close-on-click-modal="false" :show-close="false" top="20vh"> | ||
| 96 | + <div> | ||
| 97 | + <div style="margin-bottom: 20px;"> | ||
| 98 | + <el-form ref="form" :model="zhong" label-width="120px"> | ||
| 99 | + <el-form-item label="合同剩余天数"> | ||
| 100 | + <el-input v-model="zhong.contractExpirationDays"></el-input> | ||
| 101 | + </el-form-item> | ||
| 102 | + <el-form-item label="提醒内容"> | ||
| 103 | + <wang-editor v-model="zhong.reminderContent" ref="editor" :height="200"></wang-editor> | ||
| 104 | + </el-form-item> | ||
| 105 | + | ||
| 106 | + | ||
| 107 | + | ||
| 108 | + </el-form> | ||
| 109 | + | ||
| 110 | + </div> | ||
| 111 | + <div style="display: flex;justify-content: flex-end;"> | ||
| 112 | + <el-button @click="yuclose" class="buttonHover" | ||
| 113 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">返回</el-button> | ||
| 114 | + <el-button @click="yuChenk" style="background-color: #3F9B6A;color: #fff">确定</el-button> | ||
| 115 | + </div> | ||
| 116 | + </div> | ||
| 117 | + </el-dialog> | ||
| 118 | + | ||
| 119 | + <div class="zhuti" v-if="onaction == '3'"> | ||
| 120 | + <div style="height:58px;line-height:58px;"> | ||
| 121 | + <div style="color:#0006"> <span>出租管理</span> <span style="padding:0 5px;">></span> <span | ||
| 122 | + style="color:#000000e6">查看</span></div> | ||
| 123 | + </div> | ||
| 124 | + <div> | ||
| 125 | + <busCha :info="detailsinfo" @removeonaction="removeonaction"></busCha> | ||
| 126 | + </div> | ||
| 127 | + <!-- <div> | ||
| 128 | + <el-button class="buttonHover" | ||
| 129 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;margin-top: 20px;" | ||
| 130 | + @click="removeonaction('1')">返回</el-button> | ||
| 131 | + </div> --> | ||
| 132 | + </div> | ||
| 133 | + | ||
| 134 | + </div> | ||
| 135 | + <!-- </div> --> | ||
| 136 | + | ||
| 137 | +</template> | ||
| 138 | + | ||
| 139 | +<script> | ||
| 140 | + import { | ||
| 141 | + contractRenewalReminder, | ||
| 142 | + } from '@/api/newly.js' | ||
| 143 | + import { | ||
| 144 | + cereReminderSet, | ||
| 145 | + cereReminderSetedit | ||
| 146 | + } from '../../../api/commodityLease.js' | ||
| 147 | + // import add from './add' | ||
| 148 | + import busCha from '../../../components/buscha/busCha' | ||
| 149 | + import wangEditor from "@/components/editor/index" | ||
| 150 | + export default { | ||
| 151 | + data() { | ||
| 152 | + return { | ||
| 153 | + zhong: { | ||
| 154 | + | ||
| 155 | + }, | ||
| 156 | + yujingSet: false, | ||
| 157 | + detailsinfo: {}, | ||
| 158 | + pagequery: { | ||
| 159 | + pageNumber: 0, | ||
| 160 | + pageSize: 10, | ||
| 161 | + dataStatus:'1', | ||
| 162 | + contractName: '' | ||
| 163 | + }, | ||
| 164 | + tableData: [], | ||
| 165 | + total: 0, | ||
| 166 | + onaction: '1', | ||
| 167 | + info: {} | ||
| 168 | + } | ||
| 169 | + }, | ||
| 170 | + components: { | ||
| 171 | + busCha, | ||
| 172 | + wangEditor | ||
| 173 | + }, | ||
| 174 | + created() { | ||
| 175 | + this.getAll() | ||
| 176 | + | ||
| 177 | + }, | ||
| 178 | + methods: { | ||
| 179 | + | ||
| 180 | + calculateDaysUntilExpiration(endDateString) { | ||
| 181 | + const endDate = new Date(endDateString); | ||
| 182 | + const today = new Date(); | ||
| 183 | + const timeDifference = endDate - today; | ||
| 184 | + const daysDifference = Math.ceil(timeDifference / (1000 * 60 * 60 * 24)); | ||
| 185 | + return daysDifference >= 0 ? daysDifference : '已过期'; | ||
| 186 | + }, | ||
| 187 | + | ||
| 188 | + yuclose() { | ||
| 189 | + this.yujingSet = false | ||
| 190 | + }, | ||
| 191 | + yuChenk() { | ||
| 192 | + console.error(this.zhong) | ||
| 193 | + cereReminderSetedit(this.zhong).then(res => { | ||
| 194 | + console.error(res) | ||
| 195 | + if (res.code == 200) { | ||
| 196 | + this.$message({ | ||
| 197 | + message: '预警设置成功', | ||
| 198 | + type: 'success' | ||
| 199 | + }) | ||
| 200 | + this.yujingSet = false | ||
| 201 | + } else { | ||
| 202 | + this.$message({ | ||
| 203 | + message: '预警设置失败', | ||
| 204 | + type: 'error' | ||
| 205 | + }) | ||
| 206 | + } | ||
| 207 | + }) | ||
| 208 | + | ||
| 209 | + }, | ||
| 210 | + openyujingSet() { | ||
| 211 | + cereReminderSet({ | ||
| 212 | + reminderType: '2' | ||
| 213 | + }).then(res => { | ||
| 214 | + console.error(res) | ||
| 215 | + this.zhong = res.data | ||
| 216 | + }) | ||
| 217 | + this.yujingSet = true | ||
| 218 | + }, | ||
| 219 | + addgzd(row) { | ||
| 220 | + this.detailsinfo = row | ||
| 221 | + this.onaction = '2' | ||
| 222 | + }, | ||
| 223 | + details(row) { | ||
| 224 | + this.detailsinfo = row | ||
| 225 | + this.onaction = '3' | ||
| 226 | + }, | ||
| 227 | + biangeng(row) { | ||
| 228 | + alert(`合同变更 - 店铺ID: ${row.id}`); | ||
| 229 | + }, | ||
| 230 | + xuyue(row) { | ||
| 231 | + alert(`合同续约 - 店铺ID: ${row.id}`); | ||
| 232 | + }, | ||
| 233 | + zhongzhi(row) { | ||
| 234 | + alert(`合同终止 - 店铺ID: ${row.id}`); | ||
| 235 | + }, | ||
| 236 | + async getAll() { | ||
| 237 | + const res = await contractRenewalReminder(this.pagequery) | ||
| 238 | + this.tableData = res.data.content | ||
| 239 | + this.total = res.data.totalElements | ||
| 240 | + }, | ||
| 241 | + removeonaction(e) { | ||
| 242 | + console.error(e) | ||
| 243 | + this.onaction = e | ||
| 244 | + }, | ||
| 245 | + handleCurrentChange(val) { | ||
| 246 | + this.pagequery.pageNumber = val - 1 | ||
| 247 | + this.getAll() | ||
| 248 | + }, | ||
| 249 | + handleSizeChange(val) { | ||
| 250 | + this.pagequery.pageSize = val | ||
| 251 | + }, | ||
| 252 | + // 查询按钮 | ||
| 253 | + async onSubmit() { | ||
| 254 | + this.pagequery.pageNumber = 0 | ||
| 255 | + this.getAll() | ||
| 256 | + }, | ||
| 257 | + //重置按钮 | ||
| 258 | + resetting() { | ||
| 259 | + this.pagequery = { | ||
| 260 | + pageNumber: 0, | ||
| 261 | + pageSize: 10, | ||
| 262 | + dataStatus:'1', | ||
| 263 | + contractName: '' | ||
| 264 | + }, | ||
| 265 | + this.getAll() | ||
| 266 | + }, | ||
| 267 | + } | ||
| 268 | + | ||
| 269 | + } | ||
| 270 | +</script> | ||
| 271 | + | ||
| 272 | +<style scoped> | ||
| 273 | + .zhuti { | ||
| 274 | + padding: 0 20px 20px 20px; | ||
| 275 | + min-height: calc(100vh - 50px - 20px); | ||
| 276 | + background-color: #Fff; | ||
| 277 | + | ||
| 278 | + } | ||
| 279 | + .chengeXia{ | ||
| 280 | + border-bottom: 6px solid #3F9B6A;padding-bottom: 4px;color: #3F9B6A; | ||
| 281 | + } | ||
| 282 | + | ||
| 283 | + /deep/ .el-form-item__content { | ||
| 284 | + line-height: 0; | ||
| 285 | + } | ||
| 286 | + | ||
| 287 | + | ||
| 288 | + | ||
| 289 | + .formSearch { | ||
| 290 | + display: flex; | ||
| 291 | + width: 100%; | ||
| 292 | + font-size: 14px; | ||
| 293 | + justify-content: space-between; | ||
| 294 | + padding-bottom: 10px; | ||
| 295 | + | ||
| 296 | + } | ||
| 297 | + | ||
| 298 | + .greens { | ||
| 299 | + color: #3F9B6A; | ||
| 300 | + } | ||
| 301 | + | ||
| 302 | + /deep/ .el-table__row { | ||
| 303 | + font-size: 14px; | ||
| 304 | + color:#000000e6; | ||
| 305 | + height:42px; | ||
| 306 | + } | ||
| 307 | + | ||
| 308 | + .fenye { | ||
| 309 | + margin-top: 20px; | ||
| 310 | + display: flex; | ||
| 311 | + justify-content: flex-end; | ||
| 312 | + } | ||
| 313 | + | ||
| 314 | + /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { | ||
| 315 | + background-color: #3F9B6A; | ||
| 316 | + } | ||
| 317 | + | ||
| 318 | + .el-row { | ||
| 319 | + margin-bottom: 20px; | ||
| 320 | + | ||
| 321 | + &:last-child { | ||
| 322 | + margin-bottom: 0; | ||
| 323 | + } | ||
| 324 | + } | ||
| 325 | + | ||
| 326 | + .el-col { | ||
| 327 | + border-radius: 4px; | ||
| 328 | + } | ||
| 329 | + | ||
| 330 | + .bg-purple-dark { | ||
| 331 | + background: #99a9bf; | ||
| 332 | + } | ||
| 333 | + | ||
| 334 | + .bg-purple { | ||
| 335 | + background: #d3dce6; | ||
| 336 | + } | ||
| 337 | + | ||
| 338 | + .bg-purple-light { | ||
| 339 | + background: #e5e9f2; | ||
| 340 | + } | ||
| 341 | + | ||
| 342 | + .grid-content { | ||
| 343 | + border-radius: 4px; | ||
| 344 | + min-height: 36px; | ||
| 345 | + } | ||
| 346 | + | ||
| 347 | + .row-bg { | ||
| 348 | + padding: 10px 0; | ||
| 349 | + background-color: #f9fafc; | ||
| 350 | + } | ||
| 351 | + | ||
| 352 | + /deep/ .bg-purple[data-v-0e3fe4ec] { | ||
| 353 | + background: #fff; | ||
| 354 | + height: 50px; | ||
| 355 | + } | ||
| 356 | + /deep/ .bg-purple[data-v-3bebae82]{ | ||
| 357 | + background: #fff; | ||
| 358 | + height: 50px; | ||
| 359 | + } | ||
| 360 | + | ||
| 361 | +::v-deep .bg-purple{ | ||
| 362 | + background: #fff; | ||
| 363 | + height: 50px; | ||
| 364 | + } | ||
| 365 | + /deep/ .el-form--label-top .el-form-item__label { | ||
| 366 | + padding: 0; | ||
| 367 | + } | ||
| 368 | +::v-deep .el-form-item{ | ||
| 369 | + margin-bottom:16px; | ||
| 370 | +} | ||
| 371 | + .device-form .el-form-item__label::after { | ||
| 372 | + content: "*"; | ||
| 373 | + color: #1A1A1A; | ||
| 374 | + margin-left: 5px; | ||
| 375 | + font-size: 16px; | ||
| 376 | + } | ||
| 377 | + | ||
| 378 | + | ||
| 379 | + ::v-deep .el-dialog__wrapper { | ||
| 380 | + .el-dialog__header { | ||
| 381 | + background-color: #FAFAFA; | ||
| 382 | + } | ||
| 383 | + } | ||
| 384 | + ::v-deep .el-input__inner:focus { | ||
| 385 | + border: #3F9B6A 1px solid; | ||
| 386 | + } | ||
| 387 | + .dialog-footer { | ||
| 388 | + display: flex; | ||
| 389 | + justify-content: flex-end; | ||
| 390 | + border-top: solid rgba(209, 209, 209, 0.2) 2px; | ||
| 391 | + padding-top: 20px; | ||
| 392 | + } | ||
| 393 | + ::v-deep .el-input__inner:focus { | ||
| 394 | + border: #3F9B6A 1px solid; | ||
| 395 | + } | ||
| 396 | + ::v-deep .el-input__inner:hover { | ||
| 397 | + border: #3F9B6A 1px solid; | ||
| 398 | + } | ||
| 399 | + ::v-deep .el-select .el-input.is-focus .el-input__inner{ | ||
| 400 | + border-color:#3F9B6A | ||
| 401 | + } | ||
| 402 | +::v-deep .btn .el-button:focus, | ||
| 403 | +.el-button:hover { | ||
| 404 | + border: 1px solid #3F9B6A; | ||
| 405 | +} | ||
| 406 | +.el-select-dropdown__item.selected{ | ||
| 407 | + color: #3F9B6A; | ||
| 408 | +} | ||
| 409 | + | ||
| 410 | +.el-pagination__sizes .el-input .el-input__inner:hover{ | ||
| 411 | + border-color: #3F9B6A; | ||
| 412 | +} | ||
| 413 | +::v-deep .el-dialog__wrapper{ | ||
| 414 | + | ||
| 415 | + .dialog_css{ | ||
| 416 | + margin-right: 12px; | ||
| 417 | + margin-top:61px !important; | ||
| 418 | + .el-dialog__title { | ||
| 419 | + font-size: 16px !important; | ||
| 420 | + font-weight: 600; | ||
| 421 | + color: #000; | ||
| 422 | + } | ||
| 423 | + } | ||
| 424 | + .diaslog_zhong{ | ||
| 425 | + margin-left: 20%; | ||
| 426 | + margin-top:61px !important; | ||
| 427 | + } | ||
| 428 | + | ||
| 429 | +} | ||
| 430 | + ::v-deep .diaslog_zhong{ | ||
| 431 | + margin-left: 20%; | ||
| 432 | + margin-top:61px !important; | ||
| 433 | + .el-dialog__header{ | ||
| 434 | + background-color:#fff; | ||
| 435 | + border-bottom:1px solid #EFEFEF; | ||
| 436 | + .el-dialog__title{ | ||
| 437 | + font-size: 14px; | ||
| 438 | + color: #000000e6; | ||
| 439 | + } | ||
| 440 | + } | ||
| 441 | + .el-dialog__body{ | ||
| 442 | + padding:10px 20px 30px 20px | ||
| 443 | + } | ||
| 444 | + } | ||
| 445 | + | ||
| 446 | + /deep/ .el-table_1_column_8 .hetong{ | ||
| 447 | + color:#7DBB9A; | ||
| 448 | + text-decoration: underline; | ||
| 449 | +} | ||
| 450 | +/deep/ .first-column-bg { | ||
| 451 | + background-color: #FAFAFA !important; | ||
| 452 | + } | ||
| 453 | + | ||
| 454 | +.el-table tr{ | ||
| 455 | + height:56px; | ||
| 456 | +} | ||
| 457 | + | ||
| 458 | +::v-deep .table3{ | ||
| 459 | + .el-table__empty-block{ | ||
| 460 | + display:none; | ||
| 461 | + } | ||
| 462 | +} | ||
| 463 | +::v-deep .textarea{ | ||
| 464 | + width: 85%; | ||
| 465 | + .el-textarea__inner{ | ||
| 466 | + width: 100%; | ||
| 467 | + } | ||
| 468 | +} | ||
| 469 | +::v-deep .el-button--mini{ | ||
| 470 | + padding: 7px 10px; | ||
| 471 | +} | ||
| 472 | +::v-deep .pass_input{ | ||
| 473 | + width: 100%; | ||
| 474 | + .el-input__inner { | ||
| 475 | + border: none; | ||
| 476 | + padding:0; | ||
| 477 | + } | ||
| 478 | + } | ||
| 479 | +::v-deep .pass_select{ | ||
| 480 | + width: 100%; | ||
| 481 | + .el-input__inner { | ||
| 482 | + border: none; | ||
| 483 | + padding:0; | ||
| 484 | + } | ||
| 485 | + .el-icon-arrow-up:before{ | ||
| 486 | + content:'' | ||
| 487 | + } | ||
| 488 | + | ||
| 489 | +} | ||
| 490 | + /deep/ .el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{ | ||
| 491 | + background-color: #fff; | ||
| 492 | +} | ||
| 493 | + | ||
| 494 | + | ||
| 495 | +</style> | ||
| 496 | +<style lang="scss" scoped> | ||
| 497 | + ::v-deep .bian_css{ | ||
| 498 | + .el-dialog__header{ | ||
| 499 | + padding:0px; | ||
| 500 | + } | ||
| 501 | + } | ||
| 502 | + ::v-deep .buttonHover:hover{ | ||
| 503 | + color:#3f9b6a !important; | ||
| 504 | + border-color: #c5e1d2 !important; | ||
| 505 | + background-color: #ecf5f0 !important; | ||
| 506 | + outline: none; | ||
| 507 | + } | ||
| 508 | + ::v-deep .el-pagination__total{ | ||
| 509 | + position: absolute; | ||
| 510 | + left: 33px; | ||
| 511 | + } | ||
| 512 | +</style> | ||
| 513 | + |
admin-web-master/src/views/shopRental/renewalMan/index.vue
| @@ -3,18 +3,26 @@ | @@ -3,18 +3,26 @@ | ||
| 3 | <div class="zhuti" v-if="onaction == '1'"> | 3 | <div class="zhuti" v-if="onaction == '1'"> |
| 4 | <div style="height:58px;line-height:58px;"> | 4 | <div style="height:58px;line-height:58px;"> |
| 5 | <div style="color:#0006"> <span>商铺租赁服务</span> <span style="padding:0 5px;">></span> <span | 5 | <div style="color:#0006"> <span>商铺租赁服务</span> <span style="padding:0 5px;">></span> <span |
| 6 | - style="color:#000000e6">续租管理</span></div> | 6 | + style="color:#000000e6">退租决算管理</span></div> |
| 7 | </div> | 7 | </div> |
| 8 | <!-- 线上 --> | 8 | <!-- 线上 --> |
| 9 | <div> | 9 | <div> |
| 10 | <!-- 搜索 --> | 10 | <!-- 搜索 --> |
| 11 | <div class="formSearch"> | 11 | <div class="formSearch"> |
| 12 | <el-form :inline="true" :model="pagequery"> | 12 | <el-form :inline="true" :model="pagequery"> |
| 13 | - <el-form-item label="合同名称"> | 13 | + <!-- <el-form-item label="合同名称"> |
| 14 | <el-input v-model="pagequery.contractName" placeholder="请输入" style="width:168px;" /> | 14 | <el-input v-model="pagequery.contractName" placeholder="请输入" style="width:168px;" /> |
| 15 | </el-form-item> | 15 | </el-form-item> |
| 16 | + <el-form-item label="合同状态" prop="status"> | ||
| 17 | + <el-select v-model="pagequery.status" clearable placeholder="请选择" style="width: 168px;margin-right: 15px"> | ||
| 18 | + <el-option label="使用中" value="1"></el-option> | ||
| 19 | + <el-option label="往期合同" value="2"></el-option> | ||
| 20 | + <el-option label="已终止" value="3"></el-option> | ||
| 21 | + | ||
| 22 | + </el-select> | ||
| 23 | + </el-form-item> --> | ||
| 16 | </el-form> | 24 | </el-form> |
| 17 | - | 25 | + |
| 18 | <div> | 26 | <div> |
| 19 | <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询 | 27 | <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询 |
| 20 | </el-button> | 28 | </el-button> |
| @@ -24,54 +32,55 @@ | @@ -24,54 +32,55 @@ | ||
| 24 | </div> | 32 | </div> |
| 25 | </div> | 33 | </div> |
| 26 | <div style="margin-bottom: 20px;"> | 34 | <div style="margin-bottom: 20px;"> |
| 27 | - <el-button @click="openyujingSet()" style="background-color: #3F9B6A;color: #fff;padding:8px 15px;" | ||
| 28 | - icon="el-icon-circle-plus-outline">预警设置</el-button> | ||
| 29 | - <!-- <el-button @click="" style="background-color: #3F9B6A;color: #fff">批量导入</el-button> --> | ||
| 30 | </div> | 35 | </div> |
| 31 | <!-- 表格 --> | 36 | <!-- 表格 --> |
| 32 | - | ||
| 33 | <el-table :data="tableData" | 37 | <el-table :data="tableData" |
| 34 | :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> | 38 | :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> |
| 35 | <el-table-column label="承租人名称"> | 39 | <el-table-column label="承租人名称"> |
| 36 | <template slot-scope="scope"> | 40 | <template slot-scope="scope"> |
| 37 | - {{scope.row.tenantName}} | ||
| 38 | - | 41 | + {{scope.row.cereContractInformation.tenantName}} |
| 39 | </template> | 42 | </template> |
| 40 | </el-table-column> | 43 | </el-table-column> |
| 41 | <el-table-column label="租赁类型"> | 44 | <el-table-column label="租赁类型"> |
| 42 | <template slot-scope="scope"> | 45 | <template slot-scope="scope"> |
| 43 | - {{scope.row.contractType}} | ||
| 44 | - | 46 | + {{scope.row.cereContractInformation.contractType}} |
| 45 | </template> | 47 | </template> |
| 46 | </el-table-column> | 48 | </el-table-column> |
| 47 | - <el-table-column label="租金/周期"> | 49 | + <el-table-column label="手机号"> |
| 48 | <template slot-scope="scope"> | 50 | <template slot-scope="scope"> |
| 49 | - {{scope.row.contractAmount}} / {{scope.row.paymentCycle}} | ||
| 50 | - | 51 | + {{scope.row.cereContractInformation.tenantTelephone}} |
| 51 | </template> | 52 | </template> |
| 52 | </el-table-column> | 53 | </el-table-column> |
| 53 | - <el-table-column label="合同编号"> | 54 | + <el-table-column label="资源名称"> |
| 54 | <template slot-scope="scope"> | 55 | <template slot-scope="scope"> |
| 55 | - {{scope.row.contractNumber}} | ||
| 56 | - | 56 | + {{scope.row.cereContractInformation.cereBasicInformationShop.shopName || scope.row.cereContractInformation.cereAdvertisingInformation.advertisingName || scope.row.cereContractInformation.cereBasicInformationVenue.venueName}} |
| 57 | </template> | 57 | </template> |
| 58 | </el-table-column> | 58 | </el-table-column> |
| 59 | <el-table-column label="租赁起止时间"> | 59 | <el-table-column label="租赁起止时间"> |
| 60 | <template slot-scope="scope"> | 60 | <template slot-scope="scope"> |
| 61 | - {{scope.row.contractSigningDate}}至{{scope.row.contractTerminationDate}} | ||
| 62 | - | 61 | + {{scope.row.cereContractInformation.contractSigningDate}}至{{scope.row.cereContractInformation.contractTerminationDate}} |
| 63 | </template> | 62 | </template> |
| 64 | </el-table-column> | 63 | </el-table-column> |
| 65 | - <el-table-column label="到期天数"> | 64 | + <el-table-column label="申请时间"> |
| 66 | <template slot-scope="scope"> | 65 | <template slot-scope="scope"> |
| 67 | - {{ calculateDaysUntilExpiration(scope.row.contractTerminationDate)}} | ||
| 68 | - | 66 | + {{scope.row.createTime}} |
| 69 | </template> | 67 | </template> |
| 70 | </el-table-column> | 68 | </el-table-column> |
| 71 | - <el-table-column label="操作" fixed="right"> | 69 | + <el-table-column prop="status" label="状态"> |
| 72 | <template slot-scope="scope"> | 70 | <template slot-scope="scope"> |
| 73 | - <div @click="details(scope.row)" class="tableBtn greens">查看</div> | ||
| 74 | - <!-- <div @click="addgzd(scope.row)" class="tableBtn greens">发送提醒</div> --> | 71 | + <span v-if='scope.row.status == 1'>待审核</span> |
| 72 | + <span v-else-if='scope.row.status == 2'>已同意</span> | ||
| 73 | + <span v-else-if='scope.row.status == 3'>已拒绝</span> | ||
| 74 | + <span v-else>待发起</span> | ||
| 75 | + </template> | ||
| 76 | + </el-table-column> | ||
| 77 | + <el-table-column label="操作" min-width="150" fixed="right"> | ||
| 78 | + <template slot-scope="scope"> | ||
| 79 | + <div @click="details(scope.row,'1')" class="tableBtn greens">查看</div> | ||
| 80 | + <!-- <div v-if='scope.row.status == 2' @click="addgzd(scope.row)" class="tableBtn greens">生成退租告知单</div> --> | ||
| 81 | + <div v-if='scope.row.status == 1 && scope.row.isInterior == 1' @click="details(scope.row,'2')" class="tableBtn greens">审核</div> | ||
| 82 | + <div v-if="scope.row.status == null || scope.row.status == '0'" @click="remove(scope.row)" class="tableBtn greens">内部审核</div> | ||
| 83 | + <div v-if="scope.row.status == null || scope.row.status == '0'" @click="openOAitem(scope.row)" class="tableBtn greens">OA审核</div> | ||
| 75 | </template> | 84 | </template> |
| 76 | </el-table-column> | 85 | </el-table-column> |
| 77 | </el-table> | 86 | </el-table> |
| @@ -92,37 +101,23 @@ | @@ -92,37 +101,23 @@ | ||
| 92 | 101 | ||
| 93 | 102 | ||
| 94 | 103 | ||
| 95 | - <el-dialog title="预警设置" :visible.sync="yujingSet" style="padding: 0;" width="60%" center :close-on-click-modal="false" :show-close="false" top="20vh"> | ||
| 96 | - <div> | ||
| 97 | - <div style="margin-bottom: 20px;"> | ||
| 98 | - <el-form ref="form" :model="zhong" label-width="120px"> | ||
| 99 | - <el-form-item label="合同剩余天数"> | ||
| 100 | - <el-input v-model="zhong.contractExpirationDays"></el-input> | ||
| 101 | - </el-form-item> | ||
| 102 | - <el-form-item label="提醒内容"> | ||
| 103 | - <wang-editor v-model="zhong.reminderContent" ref="editor" :height="200"></wang-editor> | ||
| 104 | - </el-form-item> | ||
| 105 | - | ||
| 106 | - | ||
| 107 | - | ||
| 108 | - </el-form> | ||
| 109 | - | ||
| 110 | - </div> | ||
| 111 | - <div style="display: flex;justify-content: flex-end;"> | ||
| 112 | - <el-button @click="yuclose" class="buttonHover" | ||
| 113 | - style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">返回</el-button> | ||
| 114 | - <el-button @click="yuChenk" style="background-color: #3F9B6A;color: #fff">确定</el-button> | ||
| 115 | - </div> | 104 | + <div class="zhuti" v-if="onaction == '2'"> |
| 105 | + <div style="height:58px;line-height:58px;"> | ||
| 106 | + <div style="color:#0006"> <span>退租决算管理</span> <span style="padding:0 5px;">></span> <span | ||
| 107 | + style="color:#000000e6">新增</span></div> | ||
| 116 | </div> | 108 | </div> |
| 117 | - </el-dialog> | ||
| 118 | 109 | ||
| 110 | + <div style="padding: 20px 20px 20px 0;"> | ||
| 111 | + <add :info="detailsinfo" @removeonaction="removeonaction"></add> | ||
| 112 | + </div> | ||
| 113 | + </div> | ||
| 119 | <div class="zhuti" v-if="onaction == '3'"> | 114 | <div class="zhuti" v-if="onaction == '3'"> |
| 120 | <div style="height:58px;line-height:58px;"> | 115 | <div style="height:58px;line-height:58px;"> |
| 121 | - <div style="color:#0006"> <span>出租管理</span> <span style="padding:0 5px;">></span> <span | 116 | + <div style="color:#0006"> <span>退租决算管理</span> <span style="padding:0 5px;">></span> <span |
| 122 | style="color:#000000e6">查看</span></div> | 117 | style="color:#000000e6">查看</span></div> |
| 123 | </div> | 118 | </div> |
| 124 | <div> | 119 | <div> |
| 125 | - <busCha :info="detailsinfo" @removeonaction="removeonaction"></busCha> | 120 | + <busCha :issp="issp" :info="detailsinfo.cereContractInformation" :newinfo="detailsinfo" @removeonaction="removeonaction"></busCha> |
| 126 | </div> | 121 | </div> |
| 127 | <!-- <div> | 122 | <!-- <div> |
| 128 | <el-button class="buttonHover" | 123 | <el-button class="buttonHover" |
| @@ -130,117 +125,316 @@ | @@ -130,117 +125,316 @@ | ||
| 130 | @click="removeonaction('1')">返回</el-button> | 125 | @click="removeonaction('1')">返回</el-button> |
| 131 | </div> --> | 126 | </div> --> |
| 132 | </div> | 127 | </div> |
| 128 | + <div class="zhuti" v-if="onaction == '4'"> | ||
| 129 | + <div style="height:58px;line-height:58px;"> | ||
| 130 | + <div style="color:#0006"> <span>退租决算管理</span> <span style="padding:0 5px;">></span> <span | ||
| 131 | + style="color:#000000e6">{{contractChangeReason}}</span></div> | ||
| 132 | + </div> | ||
| 133 | 133 | ||
| 134 | + <div style="padding: 20px 20px 20px 0;"> | ||
| 135 | + <!-- <addremove :info="detailsinfo" :contractChangeReason="contractChangeReason" @removeonaction="removeonaction"> | ||
| 136 | + </addremove> --> | ||
| 137 | + <!-- <add :info="detailsinfo" :contractChangeReason="contractChangeReason" @removeonaction="removeonaction"></add> --> | ||
| 138 | + </div> | ||
| 139 | + </div> | ||
| 140 | + <el-dialog :visible.sync="openoa" title="OA" width="65%" append-to-body center :close-on-click-modal="false" | ||
| 141 | + :close-on-press-escape="false" :show-close="false"> | ||
| 142 | + <el-form v-if="openoa" style="padding-right: 50px;padding-top: 20px;" :model="ruleForm" :rules="rulesoa" ref="oaForm" label-width="130px" class="demo-ruleForm"> | ||
| 143 | + <el-form-item label="审核人" prop="reviewers"> | ||
| 144 | + <el-select v-model="ruleForm.reviewers" placeholder="请选择" style="width: 100%;"> | ||
| 145 | + <el-option label="陈阳" value="1858710592190291968"></el-option> | ||
| 146 | + </el-select> | ||
| 147 | + </el-form-item> | ||
| 148 | + | ||
| 149 | + </el-form> | ||
| 150 | + <div style="display: flex; justify-content: flex-end; align-items: center;padding: 20px 50px;"> | ||
| 151 | + <el-button @click="openoa =false" class="buttonHover" | ||
| 152 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">取消</el-button> | ||
| 153 | + <el-button @click="OA" style="background-color: #3F9B6A;color: #fff;">确定</el-button> | ||
| 154 | + </div> | ||
| 155 | + </el-dialog> | ||
| 134 | </div> | 156 | </div> |
| 135 | - <!-- </div> --> | 157 | + |
| 136 | 158 | ||
| 137 | </template> | 159 | </template> |
| 138 | 160 | ||
| 139 | <script> | 161 | <script> |
| 140 | - import { | ||
| 141 | - contractRenewalReminder, | 162 | + import { |
| 163 | + changeContractInformationqueryByPage,changeContractInformationedit,generalBySurrenderTenancy | ||
| 142 | } from '@/api/newly.js' | 164 | } from '@/api/newly.js' |
| 143 | import { | 165 | import { |
| 144 | - cereReminderSet, | ||
| 145 | - cereReminderSetedit | ||
| 146 | - } from '../../../api/commodityLease.js' | ||
| 147 | - // import add from './add' | ||
| 148 | - import busCha from '../../../components/buscha/busCha' | ||
| 149 | - import wangEditor from "@/components/editor/index" | 166 | + contractGetAllnew, |
| 167 | + edit, | ||
| 168 | + editById | ||
| 169 | + } from '@/api/manage.js' | ||
| 170 | +// import add from './add' | ||
| 171 | + import addremove from '@/components/add/addremoveht.vue' | ||
| 172 | + import busCha from '@/components/buscha/busChanew' | ||
| 173 | + import { | ||
| 174 | + cereContractInformation | ||
| 175 | + } from '@/api/commodityLease.js' | ||
| 176 | + import { | ||
| 177 | + modifyResourceStatus,general | ||
| 178 | + } from '@/api/newly.js' | ||
| 179 | + import axios from 'axios' | ||
| 150 | export default { | 180 | export default { |
| 151 | data() { | 181 | data() { |
| 152 | return { | 182 | return { |
| 153 | - zhong: { | ||
| 154 | - | 183 | + issp:'1', |
| 184 | + rulesoa: { | ||
| 185 | + reviewers: [{ | ||
| 186 | + required: true, | ||
| 187 | + message: '请选择审核人', | ||
| 188 | + trigger: 'blur' | ||
| 189 | + }, ], | ||
| 155 | }, | 190 | }, |
| 156 | - yujingSet: false, | 191 | + ruleForm:{ |
| 192 | + reviewers:"" | ||
| 193 | + }, | ||
| 194 | + openoa:false, | ||
| 195 | + contractChangeReason: '', | ||
| 157 | detailsinfo: {}, | 196 | detailsinfo: {}, |
| 158 | pagequery: { | 197 | pagequery: { |
| 198 | + // status:'1', | ||
| 159 | pageNumber: 0, | 199 | pageNumber: 0, |
| 160 | pageSize: 10, | 200 | pageSize: 10, |
| 161 | - dataStatus:'1', | 201 | + contractType:'1', |
| 162 | contractName: '' | 202 | contractName: '' |
| 163 | }, | 203 | }, |
| 164 | tableData: [], | 204 | tableData: [], |
| 165 | total: 0, | 205 | total: 0, |
| 166 | onaction: '1', | 206 | onaction: '1', |
| 167 | - info: {} | 207 | + formInline: {}, |
| 208 | + oainfo:{} | ||
| 168 | } | 209 | } |
| 169 | }, | 210 | }, |
| 170 | components: { | 211 | components: { |
| 212 | + // add, | ||
| 171 | busCha, | 213 | busCha, |
| 172 | - wangEditor | 214 | + addremove |
| 173 | }, | 215 | }, |
| 174 | created() { | 216 | created() { |
| 175 | this.getAll() | 217 | this.getAll() |
| 176 | - | ||
| 177 | }, | 218 | }, |
| 178 | methods: { | 219 | methods: { |
| 179 | - | ||
| 180 | - calculateDaysUntilExpiration(endDateString) { | ||
| 181 | - const endDate = new Date(endDateString); | ||
| 182 | - const today = new Date(); | ||
| 183 | - const timeDifference = endDate - today; | ||
| 184 | - const daysDifference = Math.ceil(timeDifference / (1000 * 60 * 60 * 24)); | ||
| 185 | - return daysDifference >= 0 ? daysDifference : '已过期'; | ||
| 186 | - }, | ||
| 187 | - | ||
| 188 | - yuclose() { | ||
| 189 | - this.yujingSet = false | 220 | + addgzd(row) { |
| 221 | + this.detailsinfo = row | ||
| 222 | + this.onaction = '2' | ||
| 223 | + }, | ||
| 224 | + remove(row) { | ||
| 225 | + let that = this | ||
| 226 | + this.$confirm('是否确定内部审核吗?', '提示', { | ||
| 227 | + confirmButtonText: '确定', | ||
| 228 | + cancelButtonText: '取消', | ||
| 229 | + type: 'warning' | ||
| 230 | + }).then(() => { | ||
| 231 | + changeContractInformationedit({ | ||
| 232 | + ...row, | ||
| 233 | + isInterior:'1', | ||
| 234 | + status: '1', | ||
| 235 | + }).then(res => { | ||
| 236 | + console.error(res) | ||
| 237 | + if (res.code == 200) { | ||
| 238 | + this.$message({ | ||
| 239 | + message: '处理成功', | ||
| 240 | + type: 'success' | ||
| 241 | + }) | ||
| 242 | + this.resetting() | ||
| 243 | + | ||
| 244 | + } else { | ||
| 245 | + this.$message({ | ||
| 246 | + message: res.msg, | ||
| 247 | + type: 'error' | ||
| 248 | + }) | ||
| 249 | + } | ||
| 250 | + | ||
| 251 | + }) | ||
| 252 | + }) | ||
| 253 | + }, | ||
| 254 | + openOAitem(row){ | ||
| 255 | + this.oainfo = row | ||
| 256 | + this.ruleForm.reviewers = '' | ||
| 257 | + this.openoa = true | ||
| 258 | + }, | ||
| 259 | + downloadBase64File(base64String, fileName, mimeType) { | ||
| 260 | + try { | ||
| 261 | + // 将 Base64 字符串解码为二进制数据 | ||
| 262 | + const byteCharacters = atob(base64String); | ||
| 263 | + const byteNumbers = new Array(byteCharacters.length); | ||
| 264 | + for (let i = 0; i < byteCharacters.length; i++) { | ||
| 265 | + byteNumbers[i] = byteCharacters.charCodeAt(i); | ||
| 266 | + } | ||
| 267 | + const byteArray = new Uint8Array(byteNumbers); | ||
| 268 | + | ||
| 269 | + // 创建 Blob 对象 | ||
| 270 | + const blob = new Blob([byteArray], { type: mimeType }); | ||
| 271 | + | ||
| 272 | + // 生成下载链接并触发下载 | ||
| 273 | + const url = window.URL.createObjectURL(blob); | ||
| 274 | + const link = document.createElement('a'); | ||
| 275 | + link.href = url; | ||
| 276 | + link.setAttribute('download', fileName); // 设置下载文件名 | ||
| 277 | + document.body.appendChild(link); | ||
| 278 | + link.click(); | ||
| 279 | + | ||
| 280 | + // 清理生成的 URL 对象 | ||
| 281 | + window.URL.revokeObjectURL(url); | ||
| 282 | + document.body.removeChild(link); | ||
| 283 | + | ||
| 284 | + console.log('文件下载成功:', fileName); | ||
| 285 | + } catch (error) { | ||
| 286 | + console.error('文件下载失败:', error); | ||
| 287 | + } | ||
| 190 | }, | 288 | }, |
| 191 | - yuChenk() { | ||
| 192 | - console.error(this.zhong) | ||
| 193 | - cereReminderSetedit(this.zhong).then(res => { | ||
| 194 | - console.error(res) | ||
| 195 | - if (res.code == 200) { | 289 | + async OA(){ |
| 290 | + // console.error(row) | ||
| 291 | + let row = this.oainfo | ||
| 292 | + await this.$refs.oaForm.validate((valid) => { | ||
| 293 | + | ||
| 294 | + }) | ||
| 295 | + if(!this.ruleForm.reviewers) { | ||
| 296 | + return | ||
| 297 | + } | ||
| 298 | + const loading = this.$loading({ | ||
| 299 | + fullscreen: true | ||
| 300 | + }) | ||
| 301 | + this.openoa = false | ||
| 302 | + const response = await axios({ | ||
| 303 | + method: 'get', | ||
| 304 | + url: this.$baseURL + row.cereContractInformation.appendicesContract, // 文件 URL | ||
| 305 | + responseType: 'arraybuffer' // 指定响应类型为二进制数据 | ||
| 306 | + }); | ||
| 307 | + const file = new File([response.data], 'filename.txt', { type: 'text/plain' }); | ||
| 308 | + let fd = new FormData(); | ||
| 309 | + fd.append('files', file); | ||
| 310 | + fd.append('reviewers', this.ruleForm.reviewers); | ||
| 311 | + fd.append('fileNames', '合同.docx'); | ||
| 312 | + fd.append('title', `${row.cereContractInformation.contractName}退租审批`); | ||
| 313 | + fd.append('changeContractInformationId', row.id); | ||
| 314 | + // fd.append('sponsor', userData.user.id); | ||
| 315 | + fd.append('sponsor', 11); | ||
| 316 | + console.log(fd); | ||
| 317 | + | ||
| 318 | + generalBySurrenderTenancy(fd).then(res => { | ||
| 319 | + console.log(res); | ||
| 320 | + let data = JSON.parse(res.data) | ||
| 321 | + if(data.code == '0'){ | ||
| 196 | this.$message({ | 322 | this.$message({ |
| 197 | - message: '预警设置成功', | ||
| 198 | - type: 'success' | 323 | + type: 'success', |
| 324 | + message: '发起成功' | ||
| 199 | }) | 325 | }) |
| 200 | - this.yujingSet = false | 326 | + loading.close(); |
| 327 | + this.resetting() | ||
| 201 | } else { | 328 | } else { |
| 202 | this.$message({ | 329 | this.$message({ |
| 203 | - message: '预警设置失败', | ||
| 204 | - type: 'error' | 330 | + type: 'error', |
| 331 | + message: data.message | ||
| 205 | }) | 332 | }) |
| 206 | } | 333 | } |
| 207 | }) | 334 | }) |
| 335 | + | ||
| 208 | 336 | ||
| 209 | }, | 337 | }, |
| 210 | - openyujingSet() { | ||
| 211 | - cereReminderSet({ | ||
| 212 | - reminderType: '2' | ||
| 213 | - }).then(res => { | ||
| 214 | - console.error(res) | ||
| 215 | - this.zhong = res.data | ||
| 216 | - }) | ||
| 217 | - this.yujingSet = true | 338 | + gettime() { |
| 339 | + // 获取当前时间 | ||
| 340 | + let currentTime = new Date(); | ||
| 341 | + | ||
| 342 | + // 获取年份 | ||
| 343 | + let year = currentTime.getFullYear(); | ||
| 344 | + | ||
| 345 | + // 获取月份(注意月份是从0开始计数的,所以需要加1) | ||
| 346 | + let month = currentTime.getMonth() + 1; | ||
| 347 | + | ||
| 348 | + // 获取日期 | ||
| 349 | + let day = currentTime.getDate(); | ||
| 350 | + | ||
| 351 | + // 获取小时 | ||
| 352 | + let hours = currentTime.getHours(); | ||
| 353 | + | ||
| 354 | + // 获取分钟 | ||
| 355 | + let minutes = currentTime.getMinutes(); | ||
| 356 | + | ||
| 357 | + // 获取秒数 | ||
| 358 | + let seconds = currentTime.getSeconds(); | ||
| 359 | + | ||
| 360 | + // 获取毫秒数 | ||
| 361 | + let milliseconds = currentTime.getMilliseconds(); | ||
| 362 | + | ||
| 363 | + // 格式化时间为 YYYY-MM-DD | ||
| 364 | + let formattedDate = `${year}-${month.toString().padStart(2, '0')}-${day.toString().padStart(2, '0')}`; | ||
| 365 | + | ||
| 366 | + // 格式化时间为 HH:MM:SS | ||
| 367 | + let formattedTime = | ||
| 368 | + `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`; | ||
| 369 | + | ||
| 370 | + // 格式化时间为 YYYY-MM-DD HH:MM:SS | ||
| 371 | + let formattedDateTime = `${formattedDate} ${formattedTime}`; | ||
| 372 | + return formattedDateTime | ||
| 373 | + | ||
| 218 | }, | 374 | }, |
| 219 | - addgzd(row) { | ||
| 220 | - this.detailsinfo = row | ||
| 221 | - this.onaction = '2' | 375 | + removeinfozz(row, e) { |
| 376 | + let that = this | ||
| 377 | + this.$confirm('确定要终止合同吗?', '提示', { | ||
| 378 | + confirmButtonText: '确定', | ||
| 379 | + cancelButtonText: '取消', | ||
| 380 | + type: 'warning' | ||
| 381 | + }).then(() => { | ||
| 382 | + cereContractInformation({ | ||
| 383 | + ...row, | ||
| 384 | + contractChangeReason: e, | ||
| 385 | + status: '3', | ||
| 386 | + originalContractCode: row.contractNumber, | ||
| 387 | + updateDate: that.gettime(), | ||
| 388 | + createDate: that.gettime(), | ||
| 389 | + contractChangeTime: that.gettime(), | ||
| 390 | + updateUser:localStorage.getItem('roleName') | ||
| 391 | + }).then(res => { | ||
| 392 | + console.error(res) | ||
| 393 | + if (res.code == 200) { | ||
| 394 | + this.$message({ | ||
| 395 | + message: '终止成功', | ||
| 396 | + type: 'success' | ||
| 397 | + }) | ||
| 398 | + let c1 = row.shopNumber | ||
| 399 | + modifyResourceStatus({ | ||
| 400 | + resourcesId: c1, | ||
| 401 | + status:"0" | ||
| 402 | + }).then(res => { | ||
| 403 | + console.error(res) | ||
| 404 | + }) | ||
| 405 | + // this.$emit('removeonaction', '1') | ||
| 406 | + this.getAll() | ||
| 407 | + } else { | ||
| 408 | + this.$message({ | ||
| 409 | + message: res.msg, | ||
| 410 | + type: 'error' | ||
| 411 | + }) | ||
| 412 | + } | ||
| 413 | + | ||
| 414 | + }) | ||
| 415 | + }) | ||
| 222 | }, | 416 | }, |
| 223 | - details(row) { | 417 | + details(row,e) { |
| 418 | + this.issp = e | ||
| 224 | this.detailsinfo = row | 419 | this.detailsinfo = row |
| 225 | this.onaction = '3' | 420 | this.onaction = '3' |
| 226 | }, | 421 | }, |
| 227 | - biangeng(row) { | ||
| 228 | - alert(`合同变更 - 店铺ID: ${row.id}`); | ||
| 229 | - }, | ||
| 230 | - xuyue(row) { | ||
| 231 | - alert(`合同续约 - 店铺ID: ${row.id}`); | ||
| 232 | - }, | ||
| 233 | - zhongzhi(row) { | ||
| 234 | - alert(`合同终止 - 店铺ID: ${row.id}`); | 422 | + removeinfo(row, e) { |
| 423 | + this.contractChangeReason = e | ||
| 424 | + // console.error(this.contractChangeReason) | ||
| 425 | + this.detailsinfo = row | ||
| 426 | + this.onaction = '4' | ||
| 235 | }, | 427 | }, |
| 236 | async getAll() { | 428 | async getAll() { |
| 237 | - const res = await contractRenewalReminder(this.pagequery) | 429 | + const res = await changeContractInformationqueryByPage(this.pagequery) |
| 238 | this.tableData = res.data.content | 430 | this.tableData = res.data.content |
| 239 | this.total = res.data.totalElements | 431 | this.total = res.data.totalElements |
| 240 | }, | 432 | }, |
| 241 | removeonaction(e) { | 433 | removeonaction(e) { |
| 242 | console.error(e) | 434 | console.error(e) |
| 243 | this.onaction = e | 435 | this.onaction = e |
| 436 | + this.pagequery.pageNumber = 0 | ||
| 437 | + this.getAll() | ||
| 244 | }, | 438 | }, |
| 245 | handleCurrentChange(val) { | 439 | handleCurrentChange(val) { |
| 246 | this.pagequery.pageNumber = val - 1 | 440 | this.pagequery.pageNumber = val - 1 |
| @@ -259,7 +453,8 @@ | @@ -259,7 +453,8 @@ | ||
| 259 | this.pagequery = { | 453 | this.pagequery = { |
| 260 | pageNumber: 0, | 454 | pageNumber: 0, |
| 261 | pageSize: 10, | 455 | pageSize: 10, |
| 262 | - dataStatus:'1', | 456 | + status:'', |
| 457 | + contractType:'1', | ||
| 263 | contractName: '' | 458 | contractName: '' |
| 264 | }, | 459 | }, |
| 265 | this.getAll() | 460 | this.getAll() |
| @@ -270,29 +465,38 @@ | @@ -270,29 +465,38 @@ | ||
| 270 | </script> | 465 | </script> |
| 271 | 466 | ||
| 272 | <style scoped> | 467 | <style scoped> |
| 468 | + .el-table { | ||
| 469 | + /* height: calc(100vh - 330px); */ | ||
| 470 | + } | ||
| 471 | + | ||
| 273 | .zhuti { | 472 | .zhuti { |
| 274 | - padding: 0 20px 20px 20px; | 473 | + padding: 0 20px 20px 20px; |
| 275 | min-height: calc(100vh - 50px - 20px); | 474 | min-height: calc(100vh - 50px - 20px); |
| 276 | background-color: #Fff; | 475 | background-color: #Fff; |
| 277 | 476 | ||
| 278 | } | 477 | } |
| 279 | - .chengeXia{ | ||
| 280 | - border-bottom: 6px solid #3F9B6A;padding-bottom: 4px;color: #3F9B6A; | 478 | + |
| 479 | + .chengeXia { | ||
| 480 | + border-bottom: 6px solid #3F9B6A; | ||
| 481 | + padding-bottom: 4px; | ||
| 482 | + color: #3F9B6A; | ||
| 281 | } | 483 | } |
| 282 | 484 | ||
| 283 | - /deep/ .el-form-item__content { | 485 | + /* /deep/ .el-form-item__content { |
| 284 | line-height: 0; | 486 | line-height: 0; |
| 285 | - } | 487 | + } */ |
| 286 | 488 | ||
| 287 | - | 489 | + .tableBtn { |
| 490 | + display: inline-block; | ||
| 491 | + margin-right: 10px; | ||
| 492 | + color: #ACACAC; | ||
| 493 | + } | ||
| 288 | 494 | ||
| 289 | .formSearch { | 495 | .formSearch { |
| 290 | display: flex; | 496 | display: flex; |
| 291 | width: 100%; | 497 | width: 100%; |
| 292 | font-size: 14px; | 498 | font-size: 14px; |
| 293 | justify-content: space-between; | 499 | justify-content: space-between; |
| 294 | - padding-bottom: 10px; | ||
| 295 | - | ||
| 296 | } | 500 | } |
| 297 | 501 | ||
| 298 | .greens { | 502 | .greens { |
| @@ -301,27 +505,21 @@ | @@ -301,27 +505,21 @@ | ||
| 301 | 505 | ||
| 302 | /deep/ .el-table__row { | 506 | /deep/ .el-table__row { |
| 303 | font-size: 14px; | 507 | font-size: 14px; |
| 304 | - color:#000000e6; | ||
| 305 | - height:42px; | 508 | + color: #000000e6; |
| 509 | + height: 42px; | ||
| 306 | } | 510 | } |
| 307 | 511 | ||
| 308 | .fenye { | 512 | .fenye { |
| 309 | margin-top: 20px; | 513 | margin-top: 20px; |
| 310 | display: flex; | 514 | display: flex; |
| 311 | - justify-content: flex-end; | 515 | + justify-content: space-between; |
| 312 | } | 516 | } |
| 313 | 517 | ||
| 314 | /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { | 518 | /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { |
| 315 | background-color: #3F9B6A; | 519 | background-color: #3F9B6A; |
| 316 | } | 520 | } |
| 317 | 521 | ||
| 318 | - .el-row { | ||
| 319 | - margin-bottom: 20px; | ||
| 320 | 522 | ||
| 321 | - &:last-child { | ||
| 322 | - margin-bottom: 0; | ||
| 323 | - } | ||
| 324 | - } | ||
| 325 | 523 | ||
| 326 | .el-col { | 524 | .el-col { |
| 327 | border-radius: 4px; | 525 | border-radius: 4px; |
| @@ -353,161 +551,124 @@ | @@ -353,161 +551,124 @@ | ||
| 353 | background: #fff; | 551 | background: #fff; |
| 354 | height: 50px; | 552 | height: 50px; |
| 355 | } | 553 | } |
| 356 | - /deep/ .bg-purple[data-v-3bebae82]{ | 554 | + |
| 555 | + /deep/ .bg-purple[data-v-3bebae82] { | ||
| 357 | background: #fff; | 556 | background: #fff; |
| 358 | height: 50px; | 557 | height: 50px; |
| 359 | } | 558 | } |
| 360 | 559 | ||
| 361 | -::v-deep .bg-purple{ | 560 | + ::v-deep .bg-purple { |
| 362 | background: #fff; | 561 | background: #fff; |
| 363 | height: 50px; | 562 | height: 50px; |
| 364 | } | 563 | } |
| 564 | + | ||
| 365 | /deep/ .el-form--label-top .el-form-item__label { | 565 | /deep/ .el-form--label-top .el-form-item__label { |
| 366 | padding: 0; | 566 | padding: 0; |
| 367 | } | 567 | } |
| 368 | -::v-deep .el-form-item{ | ||
| 369 | - margin-bottom:16px; | ||
| 370 | -} | ||
| 371 | - .device-form .el-form-item__label::after { | ||
| 372 | - content: "*"; | ||
| 373 | - color: #1A1A1A; | ||
| 374 | - margin-left: 5px; | ||
| 375 | - font-size: 16px; | ||
| 376 | - } | ||
| 377 | - | ||
| 378 | 568 | ||
| 379 | ::v-deep .el-dialog__wrapper { | 569 | ::v-deep .el-dialog__wrapper { |
| 380 | .el-dialog__header { | 570 | .el-dialog__header { |
| 381 | - background-color: #FAFAFA; | 571 | + background-color: #fff; |
| 382 | } | 572 | } |
| 383 | } | 573 | } |
| 384 | - ::v-deep .el-input__inner:focus { | ||
| 385 | - border: #3F9B6A 1px solid; | ||
| 386 | - } | 574 | + |
| 575 | + | ||
| 576 | + | ||
| 387 | .dialog-footer { | 577 | .dialog-footer { |
| 388 | display: flex; | 578 | display: flex; |
| 389 | justify-content: flex-end; | 579 | justify-content: flex-end; |
| 390 | border-top: solid rgba(209, 209, 209, 0.2) 2px; | 580 | border-top: solid rgba(209, 209, 209, 0.2) 2px; |
| 391 | padding-top: 20px; | 581 | padding-top: 20px; |
| 392 | } | 582 | } |
| 393 | - ::v-deep .el-input__inner:focus { | ||
| 394 | - border: #3F9B6A 1px solid; | ||
| 395 | - } | ||
| 396 | - ::v-deep .el-input__inner:hover { | ||
| 397 | - border: #3F9B6A 1px solid; | ||
| 398 | - } | ||
| 399 | - ::v-deep .el-select .el-input.is-focus .el-input__inner{ | ||
| 400 | - border-color:#3F9B6A | ||
| 401 | - } | ||
| 402 | -::v-deep .btn .el-button:focus, | ||
| 403 | -.el-button:hover { | ||
| 404 | - border: 1px solid #3F9B6A; | ||
| 405 | -} | ||
| 406 | -.el-select-dropdown__item.selected{ | 583 | + |
| 584 | + | ||
| 585 | + | ||
| 586 | + | ||
| 587 | + .el-select-dropdown__item.selected { | ||
| 407 | color: #3F9B6A; | 588 | color: #3F9B6A; |
| 408 | -} | 589 | + } |
| 590 | + | ||
| 591 | + ::v-deep .el-dialog__title { | ||
| 592 | + color: #000; | ||
| 593 | + } | ||
| 409 | 594 | ||
| 410 | -.el-pagination__sizes .el-input .el-input__inner:hover{ | ||
| 411 | - border-color: #3F9B6A; | ||
| 412 | -} | ||
| 413 | -::v-deep .el-dialog__wrapper{ | 595 | + ::v-deep .el-dialog__wrapper { |
| 414 | 596 | ||
| 415 | - .dialog_css{ | 597 | + .dialog_css { |
| 416 | margin-right: 12px; | 598 | margin-right: 12px; |
| 417 | - margin-top:61px !important; | ||
| 418 | - .el-dialog__title { | ||
| 419 | - font-size: 16px !important; | ||
| 420 | - font-weight: 600; | ||
| 421 | - color: #000; | ||
| 422 | - } | 599 | + margin-top: 61px !important; |
| 600 | + | ||
| 601 | + } | ||
| 602 | + | ||
| 603 | + .diaslog_zhong { | ||
| 604 | + margin-left: 222px; | ||
| 605 | + margin-top: 61px !important; | ||
| 606 | + } | ||
| 607 | + | ||
| 608 | + } | ||
| 609 | + | ||
| 610 | + /deep/ .el-table_1_column_8 .hetong { | ||
| 611 | + color: #7DBB9A; | ||
| 612 | + text-decoration: underline; | ||
| 423 | } | 613 | } |
| 424 | - .diaslog_zhong{ | ||
| 425 | - margin-left: 20%; | ||
| 426 | - margin-top:61px !important; | ||
| 427 | - } | ||
| 428 | - | ||
| 429 | -} | ||
| 430 | - ::v-deep .diaslog_zhong{ | ||
| 431 | - margin-left: 20%; | ||
| 432 | - margin-top:61px !important; | ||
| 433 | - .el-dialog__header{ | ||
| 434 | - background-color:#fff; | ||
| 435 | - border-bottom:1px solid #EFEFEF; | ||
| 436 | - .el-dialog__title{ | ||
| 437 | - font-size: 14px; | ||
| 438 | - color: #000000e6; | ||
| 439 | - } | ||
| 440 | - } | ||
| 441 | - .el-dialog__body{ | ||
| 442 | - padding:10px 20px 30px 20px | ||
| 443 | - } | ||
| 444 | - } | ||
| 445 | - | ||
| 446 | - /deep/ .el-table_1_column_8 .hetong{ | ||
| 447 | - color:#7DBB9A; | ||
| 448 | - text-decoration: underline; | ||
| 449 | -} | ||
| 450 | -/deep/ .first-column-bg { | 614 | + |
| 615 | + /deep/ .first-column-bg { | ||
| 451 | background-color: #FAFAFA !important; | 616 | background-color: #FAFAFA !important; |
| 452 | } | 617 | } |
| 453 | 618 | ||
| 454 | -.el-table tr{ | ||
| 455 | - height:56px; | ||
| 456 | -} | 619 | + .el-table tr { |
| 620 | + height: 56px; | ||
| 621 | + } | ||
| 457 | 622 | ||
| 458 | -::v-deep .table3{ | ||
| 459 | - .el-table__empty-block{ | ||
| 460 | - display:none; | 623 | + ::v-deep .table3 { |
| 624 | + .el-table__empty-block { | ||
| 625 | + display: none; | ||
| 626 | + } | ||
| 461 | } | 627 | } |
| 462 | -} | ||
| 463 | -::v-deep .textarea{ | ||
| 464 | - width: 85%; | ||
| 465 | - .el-textarea__inner{ | ||
| 466 | - width: 100%; | 628 | + |
| 629 | + ::v-deep .textarea { | ||
| 630 | + width: 85%; | ||
| 631 | + | ||
| 632 | + .el-textarea__inner { | ||
| 633 | + width: 100%; | ||
| 634 | + } | ||
| 467 | } | 635 | } |
| 468 | -} | ||
| 469 | -::v-deep .el-button--mini{ | ||
| 470 | - padding: 7px 10px; | ||
| 471 | -} | ||
| 472 | -::v-deep .pass_input{ | 636 | + |
| 637 | + ::v-deep .el-button--mini { | ||
| 638 | + padding: 7px 10px; | ||
| 639 | + } | ||
| 640 | + | ||
| 641 | + ::v-deep .pass_input { | ||
| 473 | width: 100%; | 642 | width: 100%; |
| 643 | + | ||
| 474 | .el-input__inner { | 644 | .el-input__inner { |
| 475 | border: none; | 645 | border: none; |
| 476 | - padding:0; | ||
| 477 | - } | ||
| 478 | - } | ||
| 479 | -::v-deep .pass_select{ | ||
| 480 | - width: 100%; | ||
| 481 | - .el-input__inner { | ||
| 482 | - border: none; | ||
| 483 | - padding:0; | 646 | + padding: 0; |
| 484 | } | 647 | } |
| 485 | - .el-icon-arrow-up:before{ | ||
| 486 | - content:'' | ||
| 487 | } | 648 | } |
| 488 | 649 | ||
| 489 | -} | ||
| 490 | - /deep/ .el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{ | ||
| 491 | - background-color: #fff; | ||
| 492 | -} | 650 | + ::v-deep .pass_select { |
| 651 | + width: 100%; | ||
| 493 | 652 | ||
| 653 | + .el-input__inner { | ||
| 654 | + border: none; | ||
| 655 | + padding: 0; | ||
| 656 | + } | ||
| 494 | 657 | ||
| 495 | -</style> | ||
| 496 | -<style lang="scss" scoped> | ||
| 497 | - ::v-deep .bian_css{ | ||
| 498 | - .el-dialog__header{ | ||
| 499 | - padding:0px; | 658 | + .el-icon-arrow-up:before { |
| 659 | + content: '' | ||
| 500 | } | 660 | } |
| 661 | + | ||
| 501 | } | 662 | } |
| 502 | - ::v-deep .buttonHover:hover{ | ||
| 503 | - color:#3f9b6a !important; | ||
| 504 | - border-color: #c5e1d2 !important; | ||
| 505 | - background-color: #ecf5f0 !important; | ||
| 506 | - outline: none; | ||
| 507 | - } | ||
| 508 | - ::v-deep .el-pagination__total{ | ||
| 509 | - position: absolute; | ||
| 510 | - left: 33px; | 663 | + |
| 664 | + /deep/ .el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell { | ||
| 665 | + background-color: #fff; | ||
| 511 | } | 666 | } |
| 512 | </style> | 667 | </style> |
| 668 | +<style lang="scss" scoped> | ||
| 669 | + ::v-deep .el-dialog__body { | ||
| 670 | + padding: 0 0 !important; | ||
| 671 | + } | ||
| 513 | 672 | ||
| 673 | + | ||
| 674 | +</style> |
admin-web-master/src/views/shopRental/rentTermination/index copy 3.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div style="background-color:#f7f7f7;padding:10px 10px;"> | ||
| 3 | + <div class="zhuti" v-if="onaction == '1'"> | ||
| 4 | + <div style="height:58px;line-height:58px;"> | ||
| 5 | + <div style="color:#0006"> <span>商铺租赁服务</span> <span style="padding:0 5px;">></span> <span | ||
| 6 | + style="color:#000000e6">退租决算管理</span></div> | ||
| 7 | + </div> | ||
| 8 | + <!-- 线上 --> | ||
| 9 | + <div> | ||
| 10 | + <!-- 搜索 --> | ||
| 11 | + <div class="formSearch"> | ||
| 12 | + <el-form :inline="true" :model="pagequery"> | ||
| 13 | + <el-form-item label="合同名称"> | ||
| 14 | + <el-input v-model="pagequery.contractName" placeholder="请输入" style="width:168px;" /> | ||
| 15 | + </el-form-item> | ||
| 16 | + </el-form> | ||
| 17 | + | ||
| 18 | + <div> | ||
| 19 | + <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询 | ||
| 20 | + </el-button> | ||
| 21 | + <el-button @click="resetting" class="buttonHover" | ||
| 22 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">重置 | ||
| 23 | + </el-button> | ||
| 24 | + </div> | ||
| 25 | + </div> | ||
| 26 | + <!-- <div style="margin-bottom: 20px;"> | ||
| 27 | + <el-button @click="removeonaction('2')" style="background-color: #3F9B6A;color: #fff;padding:8px 15px;" | ||
| 28 | + icon="el-icon-circle-plus-outline">新增</el-button> | ||
| 29 | + <el-button @click="" style="background-color: #3F9B6A;color: #fff">批量导入</el-button> | ||
| 30 | + </div> --> | ||
| 31 | + <!-- 表格 --> | ||
| 32 | + | ||
| 33 | + <el-table :data="tableData" | ||
| 34 | + :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> | ||
| 35 | + <el-table-column label="承租人名称"> | ||
| 36 | + <template slot-scope="scope"> | ||
| 37 | + {{scope.row.cereContractInformation.tenantName}} | ||
| 38 | + | ||
| 39 | + </template> | ||
| 40 | + </el-table-column> | ||
| 41 | + <el-table-column label="租赁类型"> | ||
| 42 | + <template slot-scope="scope"> | ||
| 43 | + {{scope.row.cereContractInformation.contractType}} | ||
| 44 | + | ||
| 45 | + </template> | ||
| 46 | + </el-table-column> | ||
| 47 | + <el-table-column label="手机号"> | ||
| 48 | + <template slot-scope="scope"> | ||
| 49 | + {{scope.row.cereContractInformation.tenantTelephone}} | ||
| 50 | + | ||
| 51 | + </template> | ||
| 52 | + </el-table-column> | ||
| 53 | + <el-table-column label="资源名称"> | ||
| 54 | + <template slot-scope="scope"> | ||
| 55 | + {{scope.row.cereContractInformation.cereBasicInformationShop.shopName || scope.row.cereContractInformation.cereAdvertisingInformation.advertisingName || scope.row.cereContractInformation.cereBasicInformationVenue.venueName}} | ||
| 56 | + | ||
| 57 | + </template> | ||
| 58 | + </el-table-column> | ||
| 59 | + <el-table-column label="租赁起止时间"> | ||
| 60 | + <template slot-scope="scope"> | ||
| 61 | + {{scope.row.cereContractInformation.contractSigningDate}}至{{scope.row.cereContractInformation.contractTerminationDate}} | ||
| 62 | + | ||
| 63 | + </template> | ||
| 64 | + </el-table-column> | ||
| 65 | + <el-table-column label="申请时间"> | ||
| 66 | + <template slot-scope="scope"> | ||
| 67 | + {{scope.row.createTime}} | ||
| 68 | + | ||
| 69 | + </template> | ||
| 70 | + </el-table-column> | ||
| 71 | + <el-table-column label="操作" fixed="right"> | ||
| 72 | + <template slot-scope="scope"> | ||
| 73 | + <div @click="details(scope.row)" class="tableBtn greens">查看</div> | ||
| 74 | + <div @click="addgzd(scope.row)" class="tableBtn greens">生成退租告知单</div> | ||
| 75 | + </template> | ||
| 76 | + </el-table-column> | ||
| 77 | + </el-table> | ||
| 78 | + <div style="display: flex;justify-content: space-between;" class="bom"> | ||
| 79 | + <div style="font-size: 14px;">共 <span style="color: #3F9B6A;">{{total}}</span> 项数据</div> | ||
| 80 | + <el-pagination :current-page="pagequery.pageNumber+1" :page-sizes="[10, 20, 50, 100]" :page-size="10" background | ||
| 81 | + small layout="prev, pager, next" :total="total" @size-change="handleSizeChange" | ||
| 82 | + @current-change="handleCurrentChange"> | ||
| 83 | + </el-pagination> | ||
| 84 | + </div> | ||
| 85 | + | ||
| 86 | + </div> | ||
| 87 | + | ||
| 88 | + </div> | ||
| 89 | + | ||
| 90 | + | ||
| 91 | + | ||
| 92 | + | ||
| 93 | + | ||
| 94 | + | ||
| 95 | + <div class="zhuti" v-if="onaction == '2'"> | ||
| 96 | + <div style="height:58px;line-height:58px;"> | ||
| 97 | + <div style="color:#0006"> <span>退租决算管理</span> <span style="padding:0 5px;">></span> <span | ||
| 98 | + style="color:#000000e6">新增</span></div> | ||
| 99 | + </div> | ||
| 100 | + | ||
| 101 | + <div style="padding: 20px 20px 20px 0;"> | ||
| 102 | + <add :info="detailsinfo" @removeonaction="removeonaction"></add> | ||
| 103 | + </div> | ||
| 104 | + </div> | ||
| 105 | + <div class="zhuti" v-if="onaction == '3'"> | ||
| 106 | + <div style="height:58px;line-height:58px;"> | ||
| 107 | + <div style="color:#0006"> <span>退租决算管理</span> <span style="padding:0 5px;">></span> <span | ||
| 108 | + style="color:#000000e6">查看</span></div> | ||
| 109 | + </div> | ||
| 110 | + <div> | ||
| 111 | + <busCha :info="detailsinfo" @removeonaction="removeonaction"></busCha> | ||
| 112 | + </div> | ||
| 113 | + <!-- <div> | ||
| 114 | + <el-button class="buttonHover" | ||
| 115 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;margin-top: 20px;" | ||
| 116 | + @click="removeonaction('1')">返回</el-button> | ||
| 117 | + </div> --> | ||
| 118 | + </div> | ||
| 119 | + </div> | ||
| 120 | + | ||
| 121 | + | ||
| 122 | +</template> | ||
| 123 | + | ||
| 124 | +<script> | ||
| 125 | + import { | ||
| 126 | + changeContractInformationqueryByPage, | ||
| 127 | + } from '@/api/newly.js' | ||
| 128 | + import add from './add' | ||
| 129 | + import busCha from '../../../components/buscha/busCha' | ||
| 130 | + export default { | ||
| 131 | + data() { | ||
| 132 | + return { | ||
| 133 | + detailsinfo:{}, | ||
| 134 | + pagequery: { | ||
| 135 | + pageNumber: 0, | ||
| 136 | + pageSize: 10, | ||
| 137 | + contractName: '', | ||
| 138 | + dataStatus:'1', | ||
| 139 | + }, | ||
| 140 | + tableData: [], | ||
| 141 | + total: 0, | ||
| 142 | + onaction: '1', | ||
| 143 | + info:{} | ||
| 144 | + } | ||
| 145 | + }, | ||
| 146 | + components: { | ||
| 147 | + add,busCha | ||
| 148 | + }, | ||
| 149 | + created() { | ||
| 150 | + this.getAll() | ||
| 151 | + | ||
| 152 | + }, | ||
| 153 | + methods: { | ||
| 154 | + addgzd(row) { | ||
| 155 | + this.detailsinfo = row | ||
| 156 | + this.onaction = '2' | ||
| 157 | + }, | ||
| 158 | + details(row) { | ||
| 159 | + this.detailsinfo = row | ||
| 160 | + this.onaction = '3' | ||
| 161 | + }, | ||
| 162 | + biangeng(row) { | ||
| 163 | + alert(`合同变更 - 店铺ID: ${row.id}`); | ||
| 164 | + }, | ||
| 165 | + xuyue(row) { | ||
| 166 | + alert(`合同续约 - 店铺ID: ${row.id}`); | ||
| 167 | + }, | ||
| 168 | + zhongzhi(row) { | ||
| 169 | + alert(`合同终止 - 店铺ID: ${row.id}`); | ||
| 170 | + }, | ||
| 171 | + async getAll() { | ||
| 172 | + const res = await changeContractInformationqueryByPage(this.pagequery) | ||
| 173 | + this.tableData = res.data.content | ||
| 174 | + this.total = res.data.totalElements | ||
| 175 | + }, | ||
| 176 | + removeonaction(e) { | ||
| 177 | + console.error(e) | ||
| 178 | + this.onaction = e | ||
| 179 | + }, | ||
| 180 | + handleCurrentChange(val) { | ||
| 181 | + this.pagequery.pageNumber = val-1 | ||
| 182 | + this.getAll() | ||
| 183 | + }, | ||
| 184 | + handleSizeChange(val) { | ||
| 185 | + this.pagequery.pageSize = val | ||
| 186 | + }, | ||
| 187 | + // 查询按钮 | ||
| 188 | + async onSubmit() { | ||
| 189 | + this.pagequery.pageNumber = 0 | ||
| 190 | + this.getAll() | ||
| 191 | + }, | ||
| 192 | + //重置按钮 | ||
| 193 | + resetting() { | ||
| 194 | + this.pagequery = { | ||
| 195 | + pageNumber: 0, | ||
| 196 | + pageSize: 10, | ||
| 197 | + contractName: '', | ||
| 198 | + dataStatus:'1', | ||
| 199 | + }, | ||
| 200 | + this.getAll() | ||
| 201 | + }, | ||
| 202 | + } | ||
| 203 | + | ||
| 204 | + } | ||
| 205 | +</script> | ||
| 206 | + | ||
| 207 | +<style scoped> | ||
| 208 | + .el-table { | ||
| 209 | + /* height: calc(100vh - 330px); */ | ||
| 210 | + } | ||
| 211 | + | ||
| 212 | + .zhuti { | ||
| 213 | + padding: 0 20px 20px 20px; | ||
| 214 | + min-height: calc(100vh - 50px - 20px); | ||
| 215 | + background-color: #Fff; | ||
| 216 | + | ||
| 217 | + } | ||
| 218 | + | ||
| 219 | + .chengeXia { | ||
| 220 | + border-bottom: 6px solid #3F9B6A; | ||
| 221 | + padding-bottom: 4px; | ||
| 222 | + color: #3F9B6A; | ||
| 223 | + } | ||
| 224 | + | ||
| 225 | + /* /deep/ .el-form-item__content { | ||
| 226 | + line-height: 0; | ||
| 227 | + } */ | ||
| 228 | + | ||
| 229 | + .tableBtn { | ||
| 230 | + display: inline-block; | ||
| 231 | + margin-right: 10px; | ||
| 232 | + color: #ACACAC; | ||
| 233 | + } | ||
| 234 | + | ||
| 235 | + .formSearch { | ||
| 236 | + display: flex; | ||
| 237 | + width: 100%; | ||
| 238 | + font-size: 14px; | ||
| 239 | + justify-content: space-between; | ||
| 240 | + } | ||
| 241 | + | ||
| 242 | + .greens { | ||
| 243 | + color: #3F9B6A; | ||
| 244 | + } | ||
| 245 | + | ||
| 246 | + /deep/ .el-table__row { | ||
| 247 | + font-size: 14px; | ||
| 248 | + color: #000000e6; | ||
| 249 | + height: 42px; | ||
| 250 | + } | ||
| 251 | + | ||
| 252 | + .fenye { | ||
| 253 | + margin-top: 20px; | ||
| 254 | + display: flex; | ||
| 255 | + justify-content: space-between; | ||
| 256 | + } | ||
| 257 | + | ||
| 258 | + /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active { | ||
| 259 | + background-color: #3F9B6A; | ||
| 260 | + } | ||
| 261 | + | ||
| 262 | + | ||
| 263 | + | ||
| 264 | + .el-col { | ||
| 265 | + border-radius: 4px; | ||
| 266 | + } | ||
| 267 | + | ||
| 268 | + .bg-purple-dark { | ||
| 269 | + background: #99a9bf; | ||
| 270 | + } | ||
| 271 | + | ||
| 272 | + .bg-purple { | ||
| 273 | + background: #d3dce6; | ||
| 274 | + } | ||
| 275 | + | ||
| 276 | + .bg-purple-light { | ||
| 277 | + background: #e5e9f2; | ||
| 278 | + } | ||
| 279 | + | ||
| 280 | + .grid-content { | ||
| 281 | + border-radius: 4px; | ||
| 282 | + min-height: 36px; | ||
| 283 | + } | ||
| 284 | + | ||
| 285 | + .row-bg { | ||
| 286 | + padding: 10px 0; | ||
| 287 | + background-color: #f9fafc; | ||
| 288 | + } | ||
| 289 | + | ||
| 290 | + /deep/ .bg-purple[data-v-0e3fe4ec] { | ||
| 291 | + background: #fff; | ||
| 292 | + height: 50px; | ||
| 293 | + } | ||
| 294 | + | ||
| 295 | + /deep/ .bg-purple[data-v-3bebae82] { | ||
| 296 | + background: #fff; | ||
| 297 | + height: 50px; | ||
| 298 | + } | ||
| 299 | + | ||
| 300 | + ::v-deep .bg-purple { | ||
| 301 | + background: #fff; | ||
| 302 | + height: 50px; | ||
| 303 | + } | ||
| 304 | + | ||
| 305 | + /deep/ .el-form--label-top .el-form-item__label { | ||
| 306 | + padding: 0; | ||
| 307 | + } | ||
| 308 | + | ||
| 309 | + ::v-deep .el-dialog__wrapper { | ||
| 310 | + .el-dialog__header { | ||
| 311 | + background-color: #fff; | ||
| 312 | + } | ||
| 313 | + } | ||
| 314 | + | ||
| 315 | + | ||
| 316 | + | ||
| 317 | + .dialog-footer { | ||
| 318 | + display: flex; | ||
| 319 | + justify-content: flex-end; | ||
| 320 | + border-top: solid rgba(209, 209, 209, 0.2) 2px; | ||
| 321 | + padding-top: 20px; | ||
| 322 | + } | ||
| 323 | + | ||
| 324 | + | ||
| 325 | + | ||
| 326 | + | ||
| 327 | + .el-select-dropdown__item.selected { | ||
| 328 | + color: #3F9B6A; | ||
| 329 | + } | ||
| 330 | + | ||
| 331 | + ::v-deep .el-dialog__title { | ||
| 332 | + color: #000; | ||
| 333 | + } | ||
| 334 | + | ||
| 335 | + ::v-deep .el-dialog__wrapper { | ||
| 336 | + | ||
| 337 | + .dialog_css { | ||
| 338 | + margin-right: 12px; | ||
| 339 | + margin-top: 61px !important; | ||
| 340 | + | ||
| 341 | + } | ||
| 342 | + | ||
| 343 | + .diaslog_zhong { | ||
| 344 | + margin-left: 222px; | ||
| 345 | + margin-top: 61px !important; | ||
| 346 | + } | ||
| 347 | + | ||
| 348 | + } | ||
| 349 | + | ||
| 350 | + /deep/ .el-table_1_column_8 .hetong { | ||
| 351 | + color: #7DBB9A; | ||
| 352 | + text-decoration: underline; | ||
| 353 | + } | ||
| 354 | + | ||
| 355 | + /deep/ .first-column-bg { | ||
| 356 | + background-color: #FAFAFA !important; | ||
| 357 | + } | ||
| 358 | + | ||
| 359 | + .el-table tr { | ||
| 360 | + height: 56px; | ||
| 361 | + } | ||
| 362 | + | ||
| 363 | + ::v-deep .table3 { | ||
| 364 | + .el-table__empty-block { | ||
| 365 | + display: none; | ||
| 366 | + } | ||
| 367 | + } | ||
| 368 | + | ||
| 369 | + ::v-deep .textarea { | ||
| 370 | + width: 85%; | ||
| 371 | + | ||
| 372 | + .el-textarea__inner { | ||
| 373 | + width: 100%; | ||
| 374 | + } | ||
| 375 | + } | ||
| 376 | + | ||
| 377 | + ::v-deep .el-button--mini { | ||
| 378 | + padding: 7px 10px; | ||
| 379 | + } | ||
| 380 | + | ||
| 381 | + ::v-deep .pass_input { | ||
| 382 | + width: 100%; | ||
| 383 | + | ||
| 384 | + .el-input__inner { | ||
| 385 | + border: none; | ||
| 386 | + padding: 0; | ||
| 387 | + } | ||
| 388 | + } | ||
| 389 | + | ||
| 390 | + ::v-deep .pass_select { | ||
| 391 | + width: 100%; | ||
| 392 | + | ||
| 393 | + .el-input__inner { | ||
| 394 | + border: none; | ||
| 395 | + padding: 0; | ||
| 396 | + } | ||
| 397 | + | ||
| 398 | + .el-icon-arrow-up:before { | ||
| 399 | + content: '' | ||
| 400 | + } | ||
| 401 | + | ||
| 402 | + } | ||
| 403 | + | ||
| 404 | + /deep/ .el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell { | ||
| 405 | + background-color: #fff; | ||
| 406 | + } | ||
| 407 | +</style> | ||
| 408 | +<style lang="scss" scoped> | ||
| 409 | + ::v-deep .el-dialog__body { | ||
| 410 | + padding: 0 0 !important; | ||
| 411 | + } | ||
| 412 | + | ||
| 413 | + ::v-deep .buttonHover:hover { | ||
| 414 | + color: #3f9b6a !important; | ||
| 415 | + border-color: #c5e1d2 !important; | ||
| 416 | + background-color: #ecf5f0 !important; | ||
| 417 | + outline: none; | ||
| 418 | + } | ||
| 419 | +</style> |
admin-web-master/src/views/shopRental/rentTermination/index.vue
| @@ -10,11 +10,19 @@ | @@ -10,11 +10,19 @@ | ||
| 10 | <!-- 搜索 --> | 10 | <!-- 搜索 --> |
| 11 | <div class="formSearch"> | 11 | <div class="formSearch"> |
| 12 | <el-form :inline="true" :model="pagequery"> | 12 | <el-form :inline="true" :model="pagequery"> |
| 13 | - <el-form-item label="合同名称"> | 13 | + <!-- <el-form-item label="合同名称"> |
| 14 | <el-input v-model="pagequery.contractName" placeholder="请输入" style="width:168px;" /> | 14 | <el-input v-model="pagequery.contractName" placeholder="请输入" style="width:168px;" /> |
| 15 | </el-form-item> | 15 | </el-form-item> |
| 16 | + <el-form-item label="合同状态" prop="status"> | ||
| 17 | + <el-select v-model="pagequery.status" clearable placeholder="请选择" style="width: 168px;margin-right: 15px"> | ||
| 18 | + <el-option label="使用中" value="1"></el-option> | ||
| 19 | + <el-option label="往期合同" value="2"></el-option> | ||
| 20 | + <el-option label="已终止" value="3"></el-option> | ||
| 21 | + | ||
| 22 | + </el-select> | ||
| 23 | + </el-form-item> --> | ||
| 16 | </el-form> | 24 | </el-form> |
| 17 | - | 25 | + |
| 18 | <div> | 26 | <div> |
| 19 | <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询 | 27 | <el-button @click="onSubmit" style="background-color: #3F9B6A;color: #fff">查询 |
| 20 | </el-button> | 28 | </el-button> |
| @@ -23,62 +31,63 @@ | @@ -23,62 +31,63 @@ | ||
| 23 | </el-button> | 31 | </el-button> |
| 24 | </div> | 32 | </div> |
| 25 | </div> | 33 | </div> |
| 26 | - <!-- <div style="margin-bottom: 20px;"> | ||
| 27 | - <el-button @click="removeonaction('2')" style="background-color: #3F9B6A;color: #fff;padding:8px 15px;" | ||
| 28 | - icon="el-icon-circle-plus-outline">新增</el-button> | ||
| 29 | - <el-button @click="" style="background-color: #3F9B6A;color: #fff">批量导入</el-button> | ||
| 30 | - </div> --> | 34 | + <div style="margin-bottom: 20px;"> |
| 35 | + </div> | ||
| 31 | <!-- 表格 --> | 36 | <!-- 表格 --> |
| 32 | - | ||
| 33 | <el-table :data="tableData" | 37 | <el-table :data="tableData" |
| 34 | :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> | 38 | :header-cell-style="{fontSize: '14px',color:'#0009',fontWeight: 'normal',backgroundColor:'#F2F3F5'}"> |
| 35 | <el-table-column label="承租人名称"> | 39 | <el-table-column label="承租人名称"> |
| 36 | <template slot-scope="scope"> | 40 | <template slot-scope="scope"> |
| 37 | {{scope.row.cereContractInformation.tenantName}} | 41 | {{scope.row.cereContractInformation.tenantName}} |
| 38 | - | ||
| 39 | </template> | 42 | </template> |
| 40 | </el-table-column> | 43 | </el-table-column> |
| 41 | <el-table-column label="租赁类型"> | 44 | <el-table-column label="租赁类型"> |
| 42 | <template slot-scope="scope"> | 45 | <template slot-scope="scope"> |
| 43 | {{scope.row.cereContractInformation.contractType}} | 46 | {{scope.row.cereContractInformation.contractType}} |
| 44 | - | ||
| 45 | </template> | 47 | </template> |
| 46 | </el-table-column> | 48 | </el-table-column> |
| 47 | <el-table-column label="手机号"> | 49 | <el-table-column label="手机号"> |
| 48 | <template slot-scope="scope"> | 50 | <template slot-scope="scope"> |
| 49 | {{scope.row.cereContractInformation.tenantTelephone}} | 51 | {{scope.row.cereContractInformation.tenantTelephone}} |
| 50 | - | ||
| 51 | </template> | 52 | </template> |
| 52 | </el-table-column> | 53 | </el-table-column> |
| 53 | <el-table-column label="资源名称"> | 54 | <el-table-column label="资源名称"> |
| 54 | <template slot-scope="scope"> | 55 | <template slot-scope="scope"> |
| 55 | - {{scope.row.cereContractInformation.tenantTelephone}} | ||
| 56 | - | 56 | + {{scope.row.cereContractInformation.cereBasicInformationShop.shopName || scope.row.cereContractInformation.cereAdvertisingInformation.advertisingName || scope.row.cereContractInformation.cereBasicInformationVenue.venueName}} |
| 57 | </template> | 57 | </template> |
| 58 | </el-table-column> | 58 | </el-table-column> |
| 59 | <el-table-column label="租赁起止时间"> | 59 | <el-table-column label="租赁起止时间"> |
| 60 | <template slot-scope="scope"> | 60 | <template slot-scope="scope"> |
| 61 | {{scope.row.cereContractInformation.contractSigningDate}}至{{scope.row.cereContractInformation.contractTerminationDate}} | 61 | {{scope.row.cereContractInformation.contractSigningDate}}至{{scope.row.cereContractInformation.contractTerminationDate}} |
| 62 | - | ||
| 63 | </template> | 62 | </template> |
| 64 | </el-table-column> | 63 | </el-table-column> |
| 65 | <el-table-column label="申请时间"> | 64 | <el-table-column label="申请时间"> |
| 66 | <template slot-scope="scope"> | 65 | <template slot-scope="scope"> |
| 67 | {{scope.row.createTime}} | 66 | {{scope.row.createTime}} |
| 68 | - | ||
| 69 | </template> | 67 | </template> |
| 70 | </el-table-column> | 68 | </el-table-column> |
| 71 | - <el-table-column label="操作" fixed="right"> | 69 | + <el-table-column prop="status" label="状态"> |
| 70 | + <template slot-scope="scope"> | ||
| 71 | + <span v-if='scope.row.status == 1'>待审核</span> | ||
| 72 | + <span v-else-if='scope.row.status == 2'>已同意</span> | ||
| 73 | + <span v-else-if='scope.row.status == 3'>已拒绝</span> | ||
| 74 | + <span v-else>待发起</span> | ||
| 75 | + </template> | ||
| 76 | + </el-table-column> | ||
| 77 | + <el-table-column label="操作" min-width="150" fixed="right"> | ||
| 72 | <template slot-scope="scope"> | 78 | <template slot-scope="scope"> |
| 73 | - <div @click="details(scope.row)" class="tableBtn greens">查看</div> | ||
| 74 | - <div @click="addgzd(scope.row)" class="tableBtn greens">生成退租告知单</div> | 79 | + <div @click="details(scope.row,'1')" class="tableBtn greens">查看</div> |
| 80 | + <div v-if='scope.row.status == 2' @click="addgzd(scope.row)" class="tableBtn greens">生成退租告知单</div> | ||
| 81 | + <div v-if='scope.row.status == 1 && scope.row.isInterior == 1' @click="details(scope.row,'2')" class="tableBtn greens">审核</div> | ||
| 82 | + <div v-if="scope.row.status == null || scope.row.status == '0'" @click="remove(scope.row)" class="tableBtn greens">内部审核</div> | ||
| 83 | + <div v-if="scope.row.status == null || scope.row.status == '0'" @click="openOAitem(scope.row)" class="tableBtn greens">OA审核</div> | ||
| 75 | </template> | 84 | </template> |
| 76 | </el-table-column> | 85 | </el-table-column> |
| 77 | </el-table> | 86 | </el-table> |
| 78 | <div style="display: flex;justify-content: space-between;" class="bom"> | 87 | <div style="display: flex;justify-content: space-between;" class="bom"> |
| 79 | <div style="font-size: 14px;">共 <span style="color: #3F9B6A;">{{total}}</span> 项数据</div> | 88 | <div style="font-size: 14px;">共 <span style="color: #3F9B6A;">{{total}}</span> 项数据</div> |
| 80 | - <el-pagination :current-page="pagequery.pageNumber+1" :page-sizes="[10, 20, 50, 100]" :page-size="10" background | ||
| 81 | - small layout="prev, pager, next" :total="total" @size-change="handleSizeChange" | 89 | + <el-pagination :current-page="pagequery.pageNumber+1" :page-sizes="[10, 20, 50, 100]" :page-size="10" |
| 90 | + background small layout="prev, pager, next" :total="total" @size-change="handleSizeChange" | ||
| 82 | @current-change="handleCurrentChange"> | 91 | @current-change="handleCurrentChange"> |
| 83 | </el-pagination> | 92 | </el-pagination> |
| 84 | </div> | 93 | </div> |
| @@ -108,7 +117,7 @@ | @@ -108,7 +117,7 @@ | ||
| 108 | style="color:#000000e6">查看</span></div> | 117 | style="color:#000000e6">查看</span></div> |
| 109 | </div> | 118 | </div> |
| 110 | <div> | 119 | <div> |
| 111 | - <busCha :info="detailsinfo" @removeonaction="removeonaction"></busCha> | 120 | + <busCha :issp="issp" :info="detailsinfo.cereContractInformation" :newinfo="detailsinfo" @removeonaction="removeonaction"></busCha> |
| 112 | </div> | 121 | </div> |
| 113 | <!-- <div> | 122 | <!-- <div> |
| 114 | <el-button class="buttonHover" | 123 | <el-button class="buttonHover" |
| @@ -116,57 +125,305 @@ | @@ -116,57 +125,305 @@ | ||
| 116 | @click="removeonaction('1')">返回</el-button> | 125 | @click="removeonaction('1')">返回</el-button> |
| 117 | </div> --> | 126 | </div> --> |
| 118 | </div> | 127 | </div> |
| 128 | + <div class="zhuti" v-if="onaction == '4'"> | ||
| 129 | + <div style="height:58px;line-height:58px;"> | ||
| 130 | + <div style="color:#0006"> <span>退租决算管理</span> <span style="padding:0 5px;">></span> <span | ||
| 131 | + style="color:#000000e6">{{contractChangeReason}}</span></div> | ||
| 132 | + </div> | ||
| 133 | + | ||
| 134 | + <div style="padding: 20px 20px 20px 0;"> | ||
| 135 | + <!-- <addremove :info="detailsinfo" :contractChangeReason="contractChangeReason" @removeonaction="removeonaction"> | ||
| 136 | + </addremove> --> | ||
| 137 | + <add :info="detailsinfo" :contractChangeReason="contractChangeReason" @removeonaction="removeonaction"></add> | ||
| 138 | + </div> | ||
| 139 | + </div> | ||
| 140 | + <el-dialog :visible.sync="openoa" title="OA" width="65%" append-to-body center :close-on-click-modal="false" | ||
| 141 | + :close-on-press-escape="false" :show-close="false"> | ||
| 142 | + <el-form v-if="openoa" style="padding-right: 50px;padding-top: 20px;" :model="ruleForm" :rules="rulesoa" ref="oaForm" label-width="130px" class="demo-ruleForm"> | ||
| 143 | + <el-form-item label="审核人" prop="reviewers"> | ||
| 144 | + <el-select v-model="ruleForm.reviewers" placeholder="请选择" style="width: 100%;"> | ||
| 145 | + <el-option label="陈阳" value="1858710592190291968"></el-option> | ||
| 146 | + </el-select> | ||
| 147 | + </el-form-item> | ||
| 148 | + | ||
| 149 | + </el-form> | ||
| 150 | + <div style="display: flex; justify-content: flex-end; align-items: center;padding: 20px 50px;"> | ||
| 151 | + <el-button @click="openoa =false" class="buttonHover" | ||
| 152 | + style="color: #606266;border: 1px solid #dddfe5;background-color: #fff;">取消</el-button> | ||
| 153 | + <el-button @click="OA" style="background-color: #3F9B6A;color: #fff;">确定</el-button> | ||
| 154 | + </div> | ||
| 155 | + </el-dialog> | ||
| 119 | </div> | 156 | </div> |
| 120 | 157 | ||
| 121 | 158 | ||
| 122 | </template> | 159 | </template> |
| 123 | 160 | ||
| 124 | <script> | 161 | <script> |
| 162 | + import { | ||
| 163 | + changeContractInformationqueryByPage,changeContractInformationedit,generalBySurrenderTenancy | ||
| 164 | + } from '@/api/newly.js' | ||
| 165 | + import { | ||
| 166 | + contractGetAllnew, | ||
| 167 | + edit, | ||
| 168 | + editById | ||
| 169 | + } from '@/api/manage.js' | ||
| 170 | + import add from './add' | ||
| 171 | + import addremove from '@/components/add/addremoveht.vue' | ||
| 172 | + import busCha from '@/components/buscha/busChanew' | ||
| 125 | import { | 173 | import { |
| 126 | - changeContractInformationqueryByPage, | 174 | + cereContractInformation |
| 175 | + } from '@/api/commodityLease.js' | ||
| 176 | + import { | ||
| 177 | + modifyResourceStatus,general | ||
| 127 | } from '@/api/newly.js' | 178 | } from '@/api/newly.js' |
| 128 | - import add from './add' | ||
| 129 | - import busCha from '../../../components/buscha/busCha' | 179 | + import axios from 'axios' |
| 130 | export default { | 180 | export default { |
| 131 | data() { | 181 | data() { |
| 132 | return { | 182 | return { |
| 133 | - detailsinfo:{}, | 183 | + issp:'1', |
| 184 | + rulesoa: { | ||
| 185 | + reviewers: [{ | ||
| 186 | + required: true, | ||
| 187 | + message: '请选择审核人', | ||
| 188 | + trigger: 'blur' | ||
| 189 | + }, ], | ||
| 190 | + }, | ||
| 191 | + ruleForm:{ | ||
| 192 | + reviewers:"" | ||
| 193 | + }, | ||
| 194 | + openoa:false, | ||
| 195 | + contractChangeReason: '', | ||
| 196 | + detailsinfo: {}, | ||
| 134 | pagequery: { | 197 | pagequery: { |
| 198 | + // status:'1', | ||
| 135 | pageNumber: 0, | 199 | pageNumber: 0, |
| 136 | pageSize: 10, | 200 | pageSize: 10, |
| 137 | - contractName: '', | ||
| 138 | - dataStatus:'1', | 201 | + contractType:'0', |
| 202 | + contractName: '' | ||
| 139 | }, | 203 | }, |
| 140 | tableData: [], | 204 | tableData: [], |
| 141 | total: 0, | 205 | total: 0, |
| 142 | onaction: '1', | 206 | onaction: '1', |
| 143 | - info:{} | 207 | + formInline: {}, |
| 208 | + oainfo:{} | ||
| 144 | } | 209 | } |
| 145 | }, | 210 | }, |
| 146 | components: { | 211 | components: { |
| 147 | - add,busCha | 212 | + add, |
| 213 | + busCha, | ||
| 214 | + addremove | ||
| 148 | }, | 215 | }, |
| 149 | created() { | 216 | created() { |
| 150 | this.getAll() | 217 | this.getAll() |
| 151 | - | ||
| 152 | }, | 218 | }, |
| 153 | methods: { | 219 | methods: { |
| 154 | addgzd(row) { | 220 | addgzd(row) { |
| 155 | this.detailsinfo = row | 221 | this.detailsinfo = row |
| 156 | this.onaction = '2' | 222 | this.onaction = '2' |
| 157 | }, | 223 | }, |
| 158 | - details(row) { | ||
| 159 | - this.detailsinfo = row | ||
| 160 | - this.onaction = '3' | 224 | + remove(row) { |
| 225 | + let that = this | ||
| 226 | + this.$confirm('是否确定内部审核吗?', '提示', { | ||
| 227 | + confirmButtonText: '确定', | ||
| 228 | + cancelButtonText: '取消', | ||
| 229 | + type: 'warning' | ||
| 230 | + }).then(() => { | ||
| 231 | + changeContractInformationedit({ | ||
| 232 | + ...row, | ||
| 233 | + isInterior:'1', | ||
| 234 | + status: '1', | ||
| 235 | + }).then(res => { | ||
| 236 | + console.error(res) | ||
| 237 | + if (res.code == 200) { | ||
| 238 | + this.$message({ | ||
| 239 | + message: '处理成功', | ||
| 240 | + type: 'success' | ||
| 241 | + }) | ||
| 242 | + this.resetting() | ||
| 243 | + | ||
| 244 | + } else { | ||
| 245 | + this.$message({ | ||
| 246 | + message: res.msg, | ||
| 247 | + type: 'error' | ||
| 248 | + }) | ||
| 249 | + } | ||
| 250 | + | ||
| 251 | + }) | ||
| 252 | + }) | ||
| 161 | }, | 253 | }, |
| 162 | - biangeng(row) { | ||
| 163 | - alert(`合同变更 - 店铺ID: ${row.id}`); | 254 | + openOAitem(row){ |
| 255 | + this.oainfo = row | ||
| 256 | + this.ruleForm.reviewers = '' | ||
| 257 | + this.openoa = true | ||
| 164 | }, | 258 | }, |
| 165 | - xuyue(row) { | ||
| 166 | - alert(`合同续约 - 店铺ID: ${row.id}`); | 259 | + downloadBase64File(base64String, fileName, mimeType) { |
| 260 | + try { | ||
| 261 | + // 将 Base64 字符串解码为二进制数据 | ||
| 262 | + const byteCharacters = atob(base64String); | ||
| 263 | + const byteNumbers = new Array(byteCharacters.length); | ||
| 264 | + for (let i = 0; i < byteCharacters.length; i++) { | ||
| 265 | + byteNumbers[i] = byteCharacters.charCodeAt(i); | ||
| 266 | + } | ||
| 267 | + const byteArray = new Uint8Array(byteNumbers); | ||
| 268 | + | ||
| 269 | + // 创建 Blob 对象 | ||
| 270 | + const blob = new Blob([byteArray], { type: mimeType }); | ||
| 271 | + | ||
| 272 | + // 生成下载链接并触发下载 | ||
| 273 | + const url = window.URL.createObjectURL(blob); | ||
| 274 | + const link = document.createElement('a'); | ||
| 275 | + link.href = url; | ||
| 276 | + link.setAttribute('download', fileName); // 设置下载文件名 | ||
| 277 | + document.body.appendChild(link); | ||
| 278 | + link.click(); | ||
| 279 | + | ||
| 280 | + // 清理生成的 URL 对象 | ||
| 281 | + window.URL.revokeObjectURL(url); | ||
| 282 | + document.body.removeChild(link); | ||
| 283 | + | ||
| 284 | + console.log('文件下载成功:', fileName); | ||
| 285 | + } catch (error) { | ||
| 286 | + console.error('文件下载失败:', error); | ||
| 287 | + } | ||
| 167 | }, | 288 | }, |
| 168 | - zhongzhi(row) { | ||
| 169 | - alert(`合同终止 - 店铺ID: ${row.id}`); | 289 | + async OA(){ |
| 290 | + // console.error(row) | ||
| 291 | + let row = this.oainfo | ||
| 292 | + await this.$refs.oaForm.validate((valid) => { | ||
| 293 | + | ||
| 294 | + }) | ||
| 295 | + if(!this.ruleForm.reviewers) { | ||
| 296 | + return | ||
| 297 | + } | ||
| 298 | + const loading = this.$loading({ | ||
| 299 | + fullscreen: true | ||
| 300 | + }) | ||
| 301 | + this.openoa = false | ||
| 302 | + const response = await axios({ | ||
| 303 | + method: 'get', | ||
| 304 | + url: this.$baseURL + row.cereContractInformation.appendicesContract, // 文件 URL | ||
| 305 | + responseType: 'arraybuffer' // 指定响应类型为二进制数据 | ||
| 306 | + }); | ||
| 307 | + const file = new File([response.data], 'filename.txt', { type: 'text/plain' }); | ||
| 308 | + let fd = new FormData(); | ||
| 309 | + fd.append('files', file); | ||
| 310 | + fd.append('reviewers', this.ruleForm.reviewers); | ||
| 311 | + fd.append('fileNames', '合同.docx'); | ||
| 312 | + fd.append('title', `${row.cereContractInformation.contractName}退租审批`); | ||
| 313 | + fd.append('changeContractInformationId', row.id); | ||
| 314 | + // fd.append('sponsor', userData.user.id); | ||
| 315 | + fd.append('sponsor', 11); | ||
| 316 | + console.log(fd); | ||
| 317 | + | ||
| 318 | + generalBySurrenderTenancy(fd).then(res => { | ||
| 319 | + console.log(res); | ||
| 320 | + let data = JSON.parse(res.data) | ||
| 321 | + if(data.code == '0'){ | ||
| 322 | + this.$message({ | ||
| 323 | + type: 'success', | ||
| 324 | + message: '发起成功' | ||
| 325 | + }) | ||
| 326 | + loading.close(); | ||
| 327 | + this.resetting() | ||
| 328 | + } else { | ||
| 329 | + this.$message({ | ||
| 330 | + type: 'error', | ||
| 331 | + message: data.message | ||
| 332 | + }) | ||
| 333 | + } | ||
| 334 | + }) | ||
| 335 | + | ||
| 336 | + | ||
| 337 | + }, | ||
| 338 | + gettime() { | ||
| 339 | + // 获取当前时间 | ||
| 340 | + let currentTime = new Date(); | ||
| 341 | + | ||
| 342 | + // 获取年份 | ||
| 343 | + let year = currentTime.getFullYear(); | ||
| 344 | + | ||
| 345 | + // 获取月份(注意月份是从0开始计数的,所以需要加1) | ||
| 346 | + let month = currentTime.getMonth() + 1; | ||
| 347 | + | ||
| 348 | + // 获取日期 | ||
| 349 | + let day = currentTime.getDate(); | ||
| 350 | + | ||
| 351 | + // 获取小时 | ||
| 352 | + let hours = currentTime.getHours(); | ||
| 353 | + | ||
| 354 | + // 获取分钟 | ||
| 355 | + let minutes = currentTime.getMinutes(); | ||
| 356 | + | ||
| 357 | + // 获取秒数 | ||
| 358 | + let seconds = currentTime.getSeconds(); | ||
| 359 | + | ||
| 360 | + // 获取毫秒数 | ||
| 361 | + let milliseconds = currentTime.getMilliseconds(); | ||
| 362 | + | ||
| 363 | + // 格式化时间为 YYYY-MM-DD | ||
| 364 | + let formattedDate = `${year}-${month.toString().padStart(2, '0')}-${day.toString().padStart(2, '0')}`; | ||
| 365 | + | ||
| 366 | + // 格式化时间为 HH:MM:SS | ||
| 367 | + let formattedTime = | ||
| 368 | + `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`; | ||
| 369 | + | ||
| 370 | + // 格式化时间为 YYYY-MM-DD HH:MM:SS | ||
| 371 | + let formattedDateTime = `${formattedDate} ${formattedTime}`; | ||
| 372 | + return formattedDateTime | ||
| 373 | + | ||
| 374 | + }, | ||
| 375 | + removeinfozz(row, e) { | ||
| 376 | + let that = this | ||
| 377 | + this.$confirm('确定要终止合同吗?', '提示', { | ||
| 378 | + confirmButtonText: '确定', | ||
| 379 | + cancelButtonText: '取消', | ||
| 380 | + type: 'warning' | ||
| 381 | + }).then(() => { | ||
| 382 | + cereContractInformation({ | ||
| 383 | + ...row, | ||
| 384 | + contractChangeReason: e, | ||
| 385 | + status: '3', | ||
| 386 | + originalContractCode: row.contractNumber, | ||
| 387 | + updateDate: that.gettime(), | ||
| 388 | + createDate: that.gettime(), | ||
| 389 | + contractChangeTime: that.gettime(), | ||
| 390 | + updateUser:localStorage.getItem('roleName') | ||
| 391 | + }).then(res => { | ||
| 392 | + console.error(res) | ||
| 393 | + if (res.code == 200) { | ||
| 394 | + this.$message({ | ||
| 395 | + message: '终止成功', | ||
| 396 | + type: 'success' | ||
| 397 | + }) | ||
| 398 | + let c1 = row.shopNumber | ||
| 399 | + modifyResourceStatus({ | ||
| 400 | + resourcesId: c1, | ||
| 401 | + status:"0" | ||
| 402 | + }).then(res => { | ||
| 403 | + console.error(res) | ||
| 404 | + }) | ||
| 405 | + // this.$emit('removeonaction', '1') | ||
| 406 | + this.getAll() | ||
| 407 | + } else { | ||
| 408 | + this.$message({ | ||
| 409 | + message: res.msg, | ||
| 410 | + type: 'error' | ||
| 411 | + }) | ||
| 412 | + } | ||
| 413 | + | ||
| 414 | + }) | ||
| 415 | + }) | ||
| 416 | + }, | ||
| 417 | + details(row,e) { | ||
| 418 | + this.issp = e | ||
| 419 | + this.detailsinfo = row | ||
| 420 | + this.onaction = '3' | ||
| 421 | + }, | ||
| 422 | + removeinfo(row, e) { | ||
| 423 | + this.contractChangeReason = e | ||
| 424 | + // console.error(this.contractChangeReason) | ||
| 425 | + this.detailsinfo = row | ||
| 426 | + this.onaction = '4' | ||
| 170 | }, | 427 | }, |
| 171 | async getAll() { | 428 | async getAll() { |
| 172 | const res = await changeContractInformationqueryByPage(this.pagequery) | 429 | const res = await changeContractInformationqueryByPage(this.pagequery) |
| @@ -176,9 +433,11 @@ | @@ -176,9 +433,11 @@ | ||
| 176 | removeonaction(e) { | 433 | removeonaction(e) { |
| 177 | console.error(e) | 434 | console.error(e) |
| 178 | this.onaction = e | 435 | this.onaction = e |
| 436 | + this.pagequery.pageNumber = 0 | ||
| 437 | + this.getAll() | ||
| 179 | }, | 438 | }, |
| 180 | handleCurrentChange(val) { | 439 | handleCurrentChange(val) { |
| 181 | - this.pagequery.pageNumber = val-1 | 440 | + this.pagequery.pageNumber = val - 1 |
| 182 | this.getAll() | 441 | this.getAll() |
| 183 | }, | 442 | }, |
| 184 | handleSizeChange(val) { | 443 | handleSizeChange(val) { |
| @@ -194,8 +453,9 @@ | @@ -194,8 +453,9 @@ | ||
| 194 | this.pagequery = { | 453 | this.pagequery = { |
| 195 | pageNumber: 0, | 454 | pageNumber: 0, |
| 196 | pageSize: 10, | 455 | pageSize: 10, |
| 197 | - contractName: '', | ||
| 198 | - dataStatus:'1', | 456 | + status:'', |
| 457 | + contractType:'0', | ||
| 458 | + contractName: '' | ||
| 199 | }, | 459 | }, |
| 200 | this.getAll() | 460 | this.getAll() |
| 201 | }, | 461 | }, |
| @@ -410,10 +670,5 @@ | @@ -410,10 +670,5 @@ | ||
| 410 | padding: 0 0 !important; | 670 | padding: 0 0 !important; |
| 411 | } | 671 | } |
| 412 | 672 | ||
| 413 | - ::v-deep .buttonHover:hover { | ||
| 414 | - color: #3f9b6a !important; | ||
| 415 | - border-color: #c5e1d2 !important; | ||
| 416 | - background-color: #ecf5f0 !important; | ||
| 417 | - outline: none; | ||
| 418 | - } | 673 | + |
| 419 | </style> | 674 | </style> |
lvdao-miniapp/pages/propertyPay/propertyPayList/propertyPayList.vue
| @@ -45,7 +45,7 @@ | @@ -45,7 +45,7 @@ | ||
| 45 | </view> | 45 | </view> |
| 46 | <view class="info-item"> | 46 | <view class="info-item"> |
| 47 | <text style="margin-right: 20rpx;">单价:¥{{item.itemStandard}}</text> | 47 | <text style="margin-right: 20rpx;">单价:¥{{item.itemStandard}}</text> |
| 48 | - <text>费率:{{item.cheapRate}}%</text> | 48 | + <text>费率:{{item.cheapRate || 0}}%</text> |
| 49 | </view> | 49 | </view> |
| 50 | </view> | 50 | </view> |
| 51 | </view> | 51 | </view> |
| @@ -437,7 +437,7 @@ | @@ -437,7 +437,7 @@ | ||
| 437 | this.recordList = res.data.data.detailsVOList.map(item => { | 437 | this.recordList = res.data.data.detailsVOList.map(item => { |
| 438 | item.isxl = true | 438 | item.isxl = true |
| 439 | item.isshowxz = false | 439 | item.isshowxz = false |
| 440 | - item.detailsVOList = item.detailsVOList.map(item1 => { | 440 | + item.detailsVOList = item.itemDetailsVOList.map(item1 => { |
| 441 | item1.isshowxz = false | 441 | item1.isshowxz = false |
| 442 | return item1 | 442 | return item1 |
| 443 | }) | 443 | }) |
lvdao-miniapp/pagesA/myZiyuan/myZiDetailsnew.vue
| @@ -179,8 +179,9 @@ | @@ -179,8 +179,9 @@ | ||
| 179 | :custom-style="hoverStyle" hover-class="none" :plain="true">添加我的店铺信息</u-button></view> | 179 | :custom-style="hoverStyle" hover-class="none" :plain="true">添加我的店铺信息</u-button></view> |
| 180 | <view class="page-footer" v-if="record.dataStatus =='1' "> | 180 | <view class="page-footer" v-if="record.dataStatus =='1' "> |
| 181 | <u-button style="background-color: #DFE0E4; flex: 1; margin: 0 10px;" | 181 | <u-button style="background-color: #DFE0E4; flex: 1; margin: 0 10px;" |
| 182 | - @click="getQuit('/pagesA/myZiyuan/myZiyuanQuit')">申请退租</u-button> | ||
| 183 | - <u-button type="success" style="flex: 1; margin: 0 10px;" @click="xuShow = true">申请续租</u-button> | 182 | + @click="getQuit('/pagesA/myZiyuan/myZiyuanQuit','0')">申请退租</u-button> |
| 183 | + <!-- <u-button type="success" style="flex: 1; margin: 0 10px;" @click="xuShow = true">申请续租</u-button> --> | ||
| 184 | + <u-button type="success" style="flex: 1; margin: 0 10px;" @click="getQuit('/pagesA/myZiyuan/myZiyuanQuit','1')">申请续租</u-button> | ||
| 184 | <u-button type="success" style="flex: 1; margin: 0 10px;" @click="xiuMsg(2)" | 185 | <u-button type="success" style="flex: 1; margin: 0 10px;" @click="xiuMsg(2)" |
| 185 | v-if="btnShow == false&&mapType == '商铺'">修改资料</u-button> | 186 | v-if="btnShow == false&&mapType == '商铺'">修改资料</u-button> |
| 186 | </view> | 187 | </view> |
| @@ -277,9 +278,9 @@ | @@ -277,9 +278,9 @@ | ||
| 277 | 278 | ||
| 278 | }, | 279 | }, |
| 279 | methods: { | 280 | methods: { |
| 280 | - getQuit(urls) { | 281 | + getQuit(urls,type) { |
| 281 | uni.navigateTo({ | 282 | uni.navigateTo({ |
| 282 | - url: urls + `?ids=${this.heData.id}` | 283 | + url: urls + `?ids=${this.heData.id}` + `&type=${type}` |
| 283 | }) | 284 | }) |
| 284 | }, | 285 | }, |
| 285 | xufirm() { | 286 | xufirm() { |
lvdao-miniapp/pagesA/myZiyuan/myZiyuanQuit.vue
| 1 | <template> | 1 | <template> |
| 2 | <view class="page"> | 2 | <view class="page"> |
| 3 | 3 | ||
| 4 | - <view class="add-list"> | 4 | + <view class="add-list" > |
| 5 | <u-form labelPosition="left" :model="ruleForm" ref="uForm" :labelWidth="250"> | 5 | <u-form labelPosition="left" :model="ruleForm" ref="uForm" :labelWidth="250"> |
| 6 | <u-form-item label="*申请原因" prop="reasonForApplication" borderBottom> | 6 | <u-form-item label="*申请原因" prop="reasonForApplication" borderBottom> |
| 7 | </u-form-item> | 7 | </u-form-item> |
| @@ -10,7 +10,7 @@ | @@ -10,7 +10,7 @@ | ||
| 10 | </view> | 10 | </view> |
| 11 | <view class="add-list"> | 11 | <view class="add-list"> |
| 12 | <u-form labelPosition="left" :model="ruleForm" ref="uForm" :labelWidth="250"> | 12 | <u-form labelPosition="left" :model="ruleForm" ref="uForm" :labelWidth="250"> |
| 13 | - <u-form-item label="*申请退租时间" prop="applicationTime" borderBottom> | 13 | + <u-form-item label="*申请时间" prop="applicationTime" borderBottom> |
| 14 | <u-input v-model="ruleForm.applicationTime" type="select" @click="busStartshow = true" | 14 | <u-input v-model="ruleForm.applicationTime" type="select" @click="busStartshow = true" |
| 15 | placeholder="请选择" :custom-style="selStyle" /> | 15 | placeholder="请选择" :custom-style="selStyle" /> |
| 16 | <u-picker mode="time" v-model="busStartshow" :params="params" @confirm="busStTimeChange"></u-picker> | 16 | <u-picker mode="time" v-model="busStartshow" :params="params" @confirm="busStTimeChange"></u-picker> |
| @@ -59,6 +59,9 @@ | @@ -59,6 +59,9 @@ | ||
| 59 | if (option.ids) { | 59 | if (option.ids) { |
| 60 | this.ruleForm.contractId = Number(option.ids) | 60 | this.ruleForm.contractId = Number(option.ids) |
| 61 | } | 61 | } |
| 62 | + if (option.type) { | ||
| 63 | + this.ruleForm.contractType = option.type | ||
| 64 | + } | ||
| 62 | }, | 65 | }, |
| 63 | onShow() {}, | 66 | onShow() {}, |
| 64 | methods: { | 67 | methods: { |
| @@ -79,29 +82,40 @@ | @@ -79,29 +82,40 @@ | ||
| 79 | icon: 'none', | 82 | icon: 'none', |
| 80 | title: '请输入申请原因' | 83 | title: '请输入申请原因' |
| 81 | }); | 84 | }); |
| 82 | - return; | 85 | + return false; |
| 83 | } | 86 | } |
| 84 | if (!this.ruleForm.applicationTime) { | 87 | if (!this.ruleForm.applicationTime) { |
| 85 | uni.showToast({ | 88 | uni.showToast({ |
| 86 | icon: 'none', | 89 | icon: 'none', |
| 87 | title: '请选择退租申请时间' | 90 | title: '请选择退租申请时间' |
| 88 | }); | 91 | }); |
| 89 | - return; | 92 | + return false; |
| 90 | } | 93 | } |
| 91 | - | 94 | + return true; |
| 92 | }, | 95 | }, |
| 93 | go() { | 96 | go() { |
| 94 | this.ruleForm.createUser = uni.getStorageSync('user').phone | 97 | this.ruleForm.createUser = uni.getStorageSync('user').phone |
| 95 | this.ruleForm.createTime = this.getCurrentTime() | 98 | this.ruleForm.createTime = this.getCurrentTime() |
| 96 | - this.chek() | 99 | + let c1 = this.chek() |
| 100 | + if(!c1) { | ||
| 101 | + return | ||
| 102 | + } | ||
| 97 | this.$http.sendRequest('/changeContractInformation/add', 'POST', this.ruleForm, 1).then(res => { | 103 | this.$http.sendRequest('/changeContractInformation/add', 'POST', this.ruleForm, 1).then(res => { |
| 98 | - uni.showToast({ | ||
| 99 | - title: '提交成功', | ||
| 100 | - icon: 'none', | ||
| 101 | - }); | ||
| 102 | - uni.switchTab({ | ||
| 103 | - url: '/pages/my/my' | ||
| 104 | - }); | 104 | + |
| 105 | + if(res.data.code == '200') { | ||
| 106 | + uni.showToast({ | ||
| 107 | + title: '提交成功', | ||
| 108 | + icon: 'none', | ||
| 109 | + }); | ||
| 110 | + setTimeout(()=>{ | ||
| 111 | + uni.navigateBack() | ||
| 112 | + },1000) | ||
| 113 | + } else { | ||
| 114 | + uni.showToast({ | ||
| 115 | + title: res.data.message, | ||
| 116 | + icon: 'none', | ||
| 117 | + }); | ||
| 118 | + } | ||
| 105 | 119 | ||
| 106 | }) | 120 | }) |
| 107 | }, | 121 | }, |
lvdao-miniapp/utils/request.js
| @@ -21,7 +21,7 @@ const sendRequest = (url, method = 'GET', data = {}, baseUrl,contentType) => { | @@ -21,7 +21,7 @@ const sendRequest = (url, method = 'GET', data = {}, baseUrl,contentType) => { | ||
| 21 | // bases = 'https://zhgw.028wlkj.com:20443/cdwlMall/meserver/admin-server' + url; | 21 | // bases = 'https://zhgw.028wlkj.com:20443/cdwlMall/meserver/admin-server' + url; |
| 22 | // bases = 'https://jy.scjysm.asia:18086/cdwlMall/meserver/admin-server' + url; | 22 | // bases = 'https://jy.scjysm.asia:18086/cdwlMall/meserver/admin-server' + url; |
| 23 | 23 | ||
| 24 | - bases = 'http://128.10.249.23:9003'+ url; | 24 | + bases = 'http://128.10.249.8:9003'+ url; |
| 25 | // bases = 'https://zhld.028wlkj.com:49008/cdwlMall/admin-server' + url; | 25 | // bases = 'https://zhld.028wlkj.com:49008/cdwlMall/admin-server' + url; |
| 26 | 26 | ||
| 27 | // bases = c1 + 'cdwlMall/meserver/admin-server' + url; | 27 | // bases = c1 + 'cdwlMall/meserver/admin-server' + url; |
| @@ -30,8 +30,8 @@ const sendRequest = (url, method = 'GET', data = {}, baseUrl,contentType) => { | @@ -30,8 +30,8 @@ const sendRequest = (url, method = 'GET', data = {}, baseUrl,contentType) => { | ||
| 30 | // bases = 'https://jy.scjysm.asia:18086/cdwlMall/meserver/api' + url; | 30 | // bases = 'https://jy.scjysm.asia:18086/cdwlMall/meserver/api' + url; |
| 31 | // bases = 'https://zhgw.028wlkj.com:20443/cdwlMall/meserver/api' + url; | 31 | // bases = 'https://zhgw.028wlkj.com:20443/cdwlMall/meserver/api' + url; |
| 32 | // bases = 'http://128.10.249.22:9003:9007' + url; | 32 | // bases = 'http://128.10.249.22:9003:9007' + url; |
| 33 | - bases = 'http://128.10.249.23:9007' + url; | ||
| 34 | - // bases = c1 + 'cdwlMall/meserver/api' + url; | 33 | + // bases = 'http://128.10.249.23:9007' + url; |
| 34 | + bases = c1 + 'cdwlMall/meserver/api' + url; | ||
| 35 | 35 | ||
| 36 | }else{ | 36 | }else{ |
| 37 | // bases = 'http://128.10.249.22:9004' + url; | 37 | // bases = 'http://128.10.249.22:9004' + url; |
| @@ -39,9 +39,9 @@ const sendRequest = (url, method = 'GET', data = {}, baseUrl,contentType) => { | @@ -39,9 +39,9 @@ const sendRequest = (url, method = 'GET', data = {}, baseUrl,contentType) => { | ||
| 39 | // bases = 'http://172.16.61.123/cdwlMall/business-server' + url; | 39 | // bases = 'http://172.16.61.123/cdwlMall/business-server' + url; |
| 40 | // bases = 'https://jy.scjysm.asia:18086/cdwlMall/business-server' + url; | 40 | // bases = 'https://jy.scjysm.asia:18086/cdwlMall/business-server' + url; |
| 41 | // bases = 'https://zhgw.028wlkj.com:20443/cdwlMall/business-server' + url; | 41 | // bases = 'https://zhgw.028wlkj.com:20443/cdwlMall/business-server' + url; |
| 42 | - bases = 'http://128.10.249.23:9004' + url; | 42 | + // bases = 'http://128.10.249.23:9004' + url; |
| 43 | // bases = 'https://zhld.028wlkj.com:49008/cdwlMall/business-server' + url; | 43 | // bases = 'https://zhld.028wlkj.com:49008/cdwlMall/business-server' + url; |
| 44 | - // bases = c1 + 'cdwlMall/business-server' + url; | 44 | + bases = c1 + 'cdwlMall/business-server' + url; |
| 45 | 45 | ||
| 46 | } | 46 | } |
| 47 | var token = uni.getStorageSync('token') || ''; | 47 | var token = uni.getStorageSync('token') || ''; |