需求变更进行调整
This commit is contained in:
@@ -8,9 +8,9 @@
|
||||
<!-- 关联合同 -->
|
||||
<view class="form-item">
|
||||
<text class="label">关联合同</text>
|
||||
<picker :range="contracts" range-key="name" @change="onContractChange">
|
||||
<picker :range="contracts" range-key="contractName" @change="onContractChange">
|
||||
<view class="picker-value">
|
||||
{{ selectedContract ? selectedContract.name : '请选择合同' }}
|
||||
{{ selectedContract ? selectedContract.contractName : '请选择合同' }}
|
||||
</view>
|
||||
</picker>
|
||||
</view>
|
||||
@@ -20,7 +20,7 @@
|
||||
<text class="label">关联资产</text>
|
||||
<view class="picker-value" @click="openAssetsPopup">
|
||||
{{ selectedAssetsList.length
|
||||
? selectedAssetsList.map(a => a.name).join(',')
|
||||
? selectedAssetsList.map(a => a.assetsName).join(',')
|
||||
: '请选择资产' }}
|
||||
<text v-if="selectedAssetsList.length">({{ selectedAssetsList.length }})</text>
|
||||
</view>
|
||||
@@ -54,10 +54,10 @@
|
||||
<input v-model="assetSearch" placeholder="搜索资产" class="search-input" />
|
||||
</view>
|
||||
<scroll-view scroll-y style="height:500rpx;">
|
||||
<checkbox-group v-model="selectedAssetsKeys">
|
||||
<checkbox-group @change="onAssetsChange">
|
||||
<label v-for="asset in filteredAssets" :key="asset.assetsNo"
|
||||
style="display:block;padding:12rpx 20rpx;border-bottom:1rpx solid #f0f0f0;">
|
||||
<checkbox :value="asset.assetsNo" /> {{ asset.name }}
|
||||
<checkbox :value="asset.assetsNo" :checked="selectedAssetsKeys.includes(asset.assetsNo)" /> {{ asset.assetsName }}
|
||||
</label>
|
||||
</checkbox-group>
|
||||
</scroll-view>
|
||||
@@ -99,11 +99,14 @@
|
||||
onContractChange(e) {
|
||||
const index = e.detail.value;
|
||||
this.selectedContract = this.contracts[index];
|
||||
this.assetsList = this.contracts[index].assets || [];
|
||||
this.assetsList = this.contracts[index].assetsInfos || [];
|
||||
// 清空之前选择
|
||||
this.selectedAssetsKeys = [];
|
||||
this.selectedAssetsList = [];
|
||||
},
|
||||
onAssetsChange(e) {
|
||||
this.selectedAssetsKeys = e.detail.value
|
||||
},
|
||||
openAssetsPopup() {
|
||||
if (!this.selectedContract) {
|
||||
uni.showToast({
|
||||
@@ -115,6 +118,7 @@
|
||||
this.showAssetsPopup = true;
|
||||
},
|
||||
confirmAssets() {
|
||||
console.log(this.selectedAssetsKeys)
|
||||
this.selectedAssetsList = this.assetsList.filter(a =>
|
||||
this.selectedAssetsKeys.includes(a.assetsNo)
|
||||
);
|
||||
@@ -139,6 +143,14 @@
|
||||
});
|
||||
},
|
||||
submitForm() {
|
||||
let userInfo = uni.getStorageSync('userInfo');
|
||||
if(!userInfo.cusNo) {
|
||||
uni.showToast({
|
||||
title: '您还未实名',
|
||||
icon: 'none'
|
||||
});
|
||||
return;
|
||||
}
|
||||
if (
|
||||
!this.selectedContract ||
|
||||
!this.cancelDate ||
|
||||
@@ -151,7 +163,7 @@
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
const data = {
|
||||
contractNo: this.selectedContract.contractNo,
|
||||
cancelDate: this.cancelDate,
|
||||
@@ -174,7 +186,7 @@
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.$mytip.toast('提交退租申请失败')
|
||||
this.$mytip.toast('提交退租申请失败:' + res.message )
|
||||
}
|
||||
})
|
||||
.catch(err => {
|
||||
@@ -259,8 +271,8 @@
|
||||
|
||||
.popup-btn {
|
||||
margin: 20rpx;
|
||||
height: 60rpx;
|
||||
background: #007aff;
|
||||
height: 80rpx;
|
||||
background: #FB392A;
|
||||
color: #fff;
|
||||
border-radius: 8rpx;
|
||||
font-size: 28rpx;
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
<!-- 合同名称和状态 -->
|
||||
<view class="card-header">
|
||||
<text class="contract-name">{{ item.contractName }}</text>
|
||||
<text :class="['record-status', item.status]">
|
||||
{{ statusText(item.status) }}
|
||||
<text :class="['record-status', statusText(item.status)]">
|
||||
{{ item.status||'未知' }}
|
||||
</text>
|
||||
</view>
|
||||
|
||||
@@ -22,13 +22,16 @@
|
||||
<!-- 预约时间 -->
|
||||
<view class="info-item">
|
||||
<text class="info-label">申请时间:</text>
|
||||
<text class="info-value"> {{item.applyTime}} </text>
|
||||
<text class="info-value"> {{item.applyDate || ''}} </text>
|
||||
</view>
|
||||
<view class="info-item">
|
||||
<text class="info-label">退租资产:</text>
|
||||
<text class="info-value"> {{item.dischargeItem}} </text>
|
||||
<text class="info-value"> {{item.dischargeItem || ''}} </text>
|
||||
</view>
|
||||
<view class="info-item">
|
||||
<text class="info-label">审批意见:</text>
|
||||
<text class="info-value"> {{item.remark || ''}} </text>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -40,9 +43,9 @@
|
||||
</view>
|
||||
</scroll-view>
|
||||
<!-- 底部新增留言按钮 -->
|
||||
<view class="add-btn-container">
|
||||
<!-- <view class="add-btn-container">
|
||||
<button class="add-btn" @click="toApply()">新增退租申请</button>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
</template>
|
||||
|
||||
@@ -60,12 +63,15 @@
|
||||
methods: {
|
||||
statusText(status) {
|
||||
switch (status) {
|
||||
case 'pending':
|
||||
return '待确认';
|
||||
case 'done':
|
||||
return '已完成';
|
||||
case '申请中':
|
||||
case '已批准':
|
||||
return 'pending';
|
||||
case '退租完成':
|
||||
return 'done';
|
||||
case '已驳回':
|
||||
return 'reject';
|
||||
default:
|
||||
return '未知';
|
||||
return 'unknown';
|
||||
}
|
||||
},
|
||||
formatDate(dateStr) {
|
||||
@@ -92,7 +98,6 @@
|
||||
WT: this.$getToken()
|
||||
}).then(res => {
|
||||
const rows = res.data.result || [];
|
||||
console.log(rows)
|
||||
if (this.pageNo === 1) this.flowList = [];
|
||||
this.flowList = this.flowList.concat(rows);
|
||||
if (rows.length < this.pageSize) {
|
||||
@@ -188,14 +193,18 @@
|
||||
border-radius: 4rpx;
|
||||
|
||||
&.done {
|
||||
background: #FCE5E0;
|
||||
color: #ED7748;
|
||||
background: #FCE5E0; /* 保持原有浅橙色背景 */
|
||||
color: #ED7748; /* 保持原有橙色文字 */
|
||||
}
|
||||
|
||||
&.pending {
|
||||
background: #F2F3F7;
|
||||
color: #86868C;
|
||||
}
|
||||
&.reject {
|
||||
background: #FFE4E1; /* 浅红色背景 */
|
||||
color: #DC143C; /* 深红色文字 */
|
||||
}
|
||||
}
|
||||
|
||||
.card-content {
|
||||
|
||||
Reference in New Issue
Block a user