|
@@ -13,9 +13,9 @@
|
|
|
<view class="card_line"></view>
|
|
|
<view class="card_store">
|
|
|
<image class="img" :src="procurement.productImage" mode="aspectFill"></image>
|
|
|
- <view class="store_title">{{procurement.productName | subText(22)}}</view>
|
|
|
+ <view class="store_title">{{ procurement.productName }}</view>
|
|
|
</view>
|
|
|
- <view class="back-filter" v-if="procurementStatus('isDelFlag')"></view>
|
|
|
+ <view class="back-filter" v-if="procurementStatus('isDelFlag', procurement.delFlag)"></view>
|
|
|
</view>
|
|
|
<view class="info_Initiator">
|
|
|
<view class="card_title">发起者需求</view>
|
|
@@ -23,16 +23,16 @@
|
|
|
<view class="Initiator_contant">
|
|
|
<view class="Initiator_name">
|
|
|
<view class="Initiator_icon">发起者</view>
|
|
|
- <view class="user">{{procurement.userName | subText(12)}}</view>
|
|
|
+ <view class="user">{{ procurement.userName | subText(10) }}</view>
|
|
|
</view>
|
|
|
<view class="Initiator_price">
|
|
|
<view class="unit_price">
|
|
|
<view class="title">期望单价:</view>
|
|
|
- <view class="price">¥{{procurement.price}}</view>
|
|
|
+ <view class="price">¥{{ procurement.price }}</view>
|
|
|
</view>
|
|
|
<view class="unit_sum">
|
|
|
<view class="title">采购数量:</view>
|
|
|
- <view class="price">{{procurement.number}}</view>
|
|
|
+ <view class="price">{{ procurement.number }}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
@@ -41,16 +41,16 @@
|
|
|
style="width: 100%;height: 100%;"
|
|
|
src="@/static/procurement/success.png"
|
|
|
mode="aspectFill"
|
|
|
- v-if="procurementStatus('isAchieve')"
|
|
|
+ v-if="procurementStatus('isAchieve', procurement.isAchieve)"
|
|
|
></image>
|
|
|
<image
|
|
|
style="width: 100%;height: 100%;"
|
|
|
src="@/static/procurement/delete.png"
|
|
|
mode="aspectFill"
|
|
|
- v-if="procurementStatus('isDelFlag')"
|
|
|
+ v-if="procurementStatus('isDelFlag', procurement.delFlag)"
|
|
|
></image>
|
|
|
</view>
|
|
|
- <view class="back-filter" v-if="procurementStatus('isDelFlag')"></view>
|
|
|
+ <view class="back-filter" v-if="procurementStatus('isDelFlag', procurement.delFlag)"></view>
|
|
|
</view>
|
|
|
<view class="info_Participant">
|
|
|
<view class="card_title">参与者需求({{ procurementList.length }})</view>
|
|
@@ -64,32 +64,51 @@
|
|
|
>
|
|
|
<view class="Initiator_name">
|
|
|
<view class="Initiator_icon">参与者</view>
|
|
|
- <view class="user">{{item.userName | subText(12)}}</view>
|
|
|
+ <view class="user">{{ item.userName | subText(12) }}</view>
|
|
|
</view>
|
|
|
<view class="Initiator_price">
|
|
|
<view class="unit_price">
|
|
|
<view class="title">期望单价:</view>
|
|
|
- <view class="price">¥{{procurement.price}}</view>
|
|
|
+ <view class="price">¥{{ procurement.price }}</view>
|
|
|
</view>
|
|
|
<view class="unit_sum">
|
|
|
<view class="title">采购数量:</view>
|
|
|
- <view class="price">{{procurement.number}}</view>
|
|
|
+ <view class="price">{{ procurement.number }}</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
<view class="empty" v-else>暂无参与者~</view>
|
|
|
- <view class="back-filter" v-if="procurementStatus('isDelFlag')"></view>
|
|
|
+ <view class="back-filter" v-if="procurementStatus('isDelFlag', procurement.delFlag)"></view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view v-if="!procurementStatus('isDelFlag') && !procurementStatus('isAchieve')">
|
|
|
- <view class="info_btn" v-if="!procurementStatus('isInvolved') && !procurementStatus('isAdd')">
|
|
|
+ <view
|
|
|
+ v-if="
|
|
|
+ !procurementStatus('isDelFlag', procurement.delFlag) &&
|
|
|
+ !procurementStatus('isAchieve', procurement.isAchieve)
|
|
|
+ "
|
|
|
+ >
|
|
|
+ <view
|
|
|
+ class="info_btn"
|
|
|
+ v-if="
|
|
|
+ !procurementStatus('isInvolved', procurement.isInvolved) &&
|
|
|
+ !procurementStatus('isAdd', procurement.isInvolved)
|
|
|
+ "
|
|
|
+ >
|
|
|
<proBtn color="#FFFFFF" background="#F3B574" width="640rpx" @click="popupAdd">我要参与</proBtn>
|
|
|
</view>
|
|
|
<view class="info_btn" v-else>
|
|
|
- <proBtn @click="procurementDelete" v-if="procurementStatus('isInvolved')">删除</proBtn>
|
|
|
+ <proBtn @click="procurementDelete" v-if="procurementStatus('isInvolved', procurement.isInvolved)">
|
|
|
+ 删除
|
|
|
+ </proBtn>
|
|
|
<proBtn @click="modelData" v-else>退出</proBtn>
|
|
|
- <proBtn color="#FFFFFF" background="#F3B574" @click="procurementChange(procurementStatus('isInvolved'))">修改</proBtn>
|
|
|
+ <proBtn
|
|
|
+ color="#FFFFFF"
|
|
|
+ background="#F3B574"
|
|
|
+ @click="procurementChange(procurementStatus('isInvolved', procurement.isInvolved))"
|
|
|
+ >
|
|
|
+ 修改
|
|
|
+ </proBtn>
|
|
|
</view>
|
|
|
</view>
|
|
|
<tui-bottom-popup :zIndex="1002" :maskZIndex="1001" :show="popupShow" @close="handlerPopupClose">
|
|
@@ -149,7 +168,9 @@
|
|
|
|
|
|
<script>
|
|
|
import proBtn from './components/procurement-btn.vue'
|
|
|
+import procurementMixins from './mixins/procurementMixins.js'
|
|
|
export default {
|
|
|
+ mixins: [procurementMixins],
|
|
|
components: {
|
|
|
proBtn
|
|
|
},
|
|
@@ -180,18 +201,7 @@ export default {
|
|
|
userInfo: {},
|
|
|
popupShow: false, // 底部上移栏
|
|
|
proTabId: '', // tab id
|
|
|
- detailId: '', // 详情id
|
|
|
- }
|
|
|
- },
|
|
|
- filters: {
|
|
|
- subText(str, index) {
|
|
|
- if(str) {
|
|
|
- if (str.length <= index) {
|
|
|
- return str
|
|
|
- }
|
|
|
- return str.substring(0, index) + '...'
|
|
|
- }
|
|
|
- return str
|
|
|
+ detailId: '' // 详情id
|
|
|
}
|
|
|
},
|
|
|
onLoad(options) {
|
|
@@ -199,26 +209,13 @@ export default {
|
|
|
this.procurementDetail(options.id)
|
|
|
this.detailId = options.id
|
|
|
this.proTabId = options.proTabId
|
|
|
- uni.$on('refreshAddData',(id) => {
|
|
|
+ uni.$on('refreshAddData', id => {
|
|
|
if (id) {
|
|
|
this.procurementDetail(id)
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
methods: {
|
|
|
- // 状态
|
|
|
- procurementStatus(str) {
|
|
|
- const userIdList = this.procurementList.map(i => i.userId)
|
|
|
- const form = {
|
|
|
- isDelFlag: () => this.procurement.delFlag == 1, // 是否删除
|
|
|
- isAchieve: () => this.procurement.isAchieve == 1, // 是否实现
|
|
|
- isAllTab: () => this.proTabId === 0, // 是否在全部的tab栏下
|
|
|
- isSelfParticipationTab: () => this.proTabId > 0, // 是否在已参与tab栏 是否在自已发布的tab中
|
|
|
- 'isInvolved': () => this.procurement.isInvolved === 2, // 是否我创建的
|
|
|
- 'isAdd': () => this.procurement.isInvolved === 1, // 是否参与
|
|
|
- }
|
|
|
- return form[str]()
|
|
|
- },
|
|
|
// 删除
|
|
|
procurementDelete() {
|
|
|
this.contentModalText = '确定删除该需求吗?'
|
|
@@ -227,10 +224,10 @@ export default {
|
|
|
},
|
|
|
handleClick($event) {
|
|
|
if ($event.index === 1) {
|
|
|
- if(this.joinData.isInvolved === 1) {
|
|
|
+ if (this.joinData.isInvolved === 1) {
|
|
|
// 退出参与
|
|
|
this.procurementUpdate(1)
|
|
|
- } else{
|
|
|
+ } else {
|
|
|
// 删除
|
|
|
this.procurementUpdate(0)
|
|
|
}
|
|
@@ -244,7 +241,7 @@ export default {
|
|
|
},
|
|
|
// 我要参与
|
|
|
popupAdd() {
|
|
|
- this.joinData = Object.assign(this.procurement, {number: '', price: '', userId: this.userInfo.userId})
|
|
|
+ this.joinData = this.procurement
|
|
|
this.popupShow = true
|
|
|
},
|
|
|
// 组件传递商品详情 退出
|
|
@@ -256,7 +253,7 @@ export default {
|
|
|
procurementChange(status) {
|
|
|
if (status) {
|
|
|
uni.navigateTo({
|
|
|
- url: '/pages/goods/procurementAdd?id='+this.procurement.id
|
|
|
+ url: '/pages/goods/procurementAdd?id=' + this.procurement.id
|
|
|
})
|
|
|
} else {
|
|
|
this.procurementEditData()
|
|
@@ -280,7 +277,7 @@ export default {
|
|
|
userId: this.userInfo.userId,
|
|
|
procurementType: type
|
|
|
}
|
|
|
- try{
|
|
|
+ try {
|
|
|
await this.ProcurementService.procurementUpdate(form)
|
|
|
this.procurementDetail(this.detailId)
|
|
|
uni.$emit('refreshAddData') // 刷新修改的数据
|
|
@@ -288,16 +285,16 @@ export default {
|
|
|
title: `${type === 0 ? '删除' : '退出'}成功`,
|
|
|
icon: 'success'
|
|
|
})
|
|
|
- }catch(error){
|
|
|
+ } catch (error) {
|
|
|
console.log(error)
|
|
|
}
|
|
|
},
|
|
|
// 我要参与
|
|
|
async procurementParticipate() {
|
|
|
- if(this.joinData.price === '') {
|
|
|
+ if (this.joinData.price === '') {
|
|
|
return this.$util.msg('请输入期望单价', 2000)
|
|
|
}
|
|
|
- if(this.joinData.number === '') {
|
|
|
+ if (this.joinData.number === '') {
|
|
|
return this.$util.msg('请输入采购数量', 2000)
|
|
|
}
|
|
|
const form = {
|
|
@@ -313,15 +310,15 @@ export default {
|
|
|
form.id = this.joinData.sid
|
|
|
form.status = 1 // 0参与 1 修改
|
|
|
}
|
|
|
- try{
|
|
|
+ try {
|
|
|
await this.ProcurementService.procurementParticipate(form)
|
|
|
this.procurementDetail(this.detailId)
|
|
|
uni.$emit('refreshAddData') // 刷新修改的数据
|
|
|
uni.showToast({
|
|
|
- title:`${this.procurement.isInvolved === 0 ? '参与' : '修改'}成功`,
|
|
|
+ title: `${this.procurement.isInvolved === 0 ? '参与' : '修改'}成功`,
|
|
|
icon: 'success'
|
|
|
})
|
|
|
- }catch(error){
|
|
|
+ } catch (error) {
|
|
|
console.log(error)
|
|
|
}
|
|
|
},
|
|
@@ -332,11 +329,11 @@ export default {
|
|
|
userId: this.userInfo.userId,
|
|
|
procurementType: 0
|
|
|
}
|
|
|
- try{
|
|
|
+ try {
|
|
|
const data = await this.ProcurementService.procurementEditData(form)
|
|
|
this.joinData = data.data
|
|
|
this.popupShow = true
|
|
|
- }catch(error){
|
|
|
+ } catch (error) {
|
|
|
console.log(error)
|
|
|
}
|
|
|
}
|
|
@@ -385,6 +382,11 @@ export default {
|
|
|
font-size: 26rpx;
|
|
|
color: #333333;
|
|
|
line-height: 48rpx;
|
|
|
+ overflow: hidden;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ display: -webkit-box; // 弹性盒模型
|
|
|
+ -webkit-box-orient: vertical; // 上下垂直
|
|
|
+ -webkit-line-clamp: 2; // 行数
|
|
|
}
|
|
|
.procure_info .info_Initiator {
|
|
|
background-color: #fff;
|
|
@@ -426,14 +428,13 @@ export default {
|
|
|
margin-top: 48rpx;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
}
|
|
|
.Initiator_price .unit_price,
|
|
|
.Initiator_price .unit_sum {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
-}
|
|
|
-.Initiator_price .unit_sum {
|
|
|
- margin-left: 120rpx;
|
|
|
+ white-space: nowrap;
|
|
|
}
|
|
|
.title {
|
|
|
color: #999999;
|