|
@@ -3,7 +3,7 @@
|
|
<image :src="statusImg" mode="aspectFill" class="status-img" v-if="statusImg"></image>
|
|
<image :src="statusImg" mode="aspectFill" class="status-img" v-if="statusImg"></image>
|
|
<view class="section white-wrap">
|
|
<view class="section white-wrap">
|
|
<view class="section-title require">用印用途</view>
|
|
<view class="section-title require">用印用途</view>
|
|
- <view :class="opButton.CheckEdit?'section-select-box':null" :style="{color:oldUse?'#333':'#999'}" @click="handleOperation('showPurpose')">{{oldUse?oldUse:'请选择'}}</view>
|
|
|
|
|
|
+ <view :class="opButton.CheckEdit?'section-select-box':null" :style="{color:newUse?'#333':'#999'}" @click="handleOperation('showPurpose')">{{newUse?newUse:'请选择'}}</view>
|
|
</view>
|
|
</view>
|
|
<view class="section white-wrap">
|
|
<view class="section white-wrap">
|
|
<view class="section-title require">客户名称(全称)</view>
|
|
<view class="section-title require">客户名称(全称)</view>
|
|
@@ -23,11 +23,11 @@
|
|
</view>
|
|
</view>
|
|
<view class="section white-wrap">
|
|
<view class="section white-wrap">
|
|
<view class="section-title require">文件份数</view>
|
|
<view class="section-title require">文件份数</view>
|
|
- <input type="number" v-model="oldFileNum" placeholder="请填写总共盖章文件份数" :disabled="!opButton.CheckEdit"/>
|
|
|
|
|
|
+ <input type="number" v-model="newFileNum" placeholder="请填写总共盖章文件份数" :disabled="!opButton.CheckEdit"/>
|
|
</view>
|
|
</view>
|
|
<view class="section white-wrap">
|
|
<view class="section white-wrap">
|
|
<view class="section-title require">加盖何种印章</view>
|
|
<view class="section-title require">加盖何种印章</view>
|
|
- <view :class="opButton.CheckEdit?'section-select-box':null" :style="{color:oldSealType?'#333':'#999'}" @click="handleOperation('showType')">{{oldSealType?oldSealType:'请选择'}}</view>
|
|
|
|
|
|
+ <view :class="opButton.CheckEdit?'section-select-box':null" :style="{color:typeLength?'#333':'#999'}" @click="handleOperation('showType')">{{newSealType.length>0?newSealType.join(','):'请选择'}}</view>
|
|
</view>
|
|
</view>
|
|
<view class="section white-wrap" v-if="detail.ContractId>0">
|
|
<view class="section white-wrap" v-if="detail.ContractId>0">
|
|
<view class="section-title require">合同附件</view>
|
|
<view class="section-title require">合同附件</view>
|
|
@@ -52,7 +52,7 @@
|
|
</view>
|
|
</view>
|
|
<view class="section white-wrap">
|
|
<view class="section white-wrap">
|
|
<view class="section-title">备注</view>
|
|
<view class="section-title">备注</view>
|
|
- <textarea type="text" auto-height v-model="oldRemark" placeholder="请填写备注" :disabled="!opButton.CheckEdit"></textarea>
|
|
|
|
|
|
+ <textarea type="text" auto-height v-model="newRemark" placeholder="请填写备注" :disabled="!opButton.CheckEdit"></textarea>
|
|
</view>
|
|
</view>
|
|
<!-- 签回附件模块 -->
|
|
<!-- 签回附件模块 -->
|
|
<view class="section white-wrap" v-if="checkBackFilesRes.length>0">
|
|
<view class="section white-wrap" v-if="checkBackFilesRes.length>0">
|
|
@@ -109,13 +109,16 @@
|
|
</van-popup>
|
|
</van-popup>
|
|
<!-- 何种印章 -->
|
|
<!-- 何种印章 -->
|
|
<van-popup :show="showType" @close="showType=false" position="bottom">
|
|
<van-popup :show="showType" @close="showType=false" position="bottom">
|
|
- <van-picker
|
|
|
|
- show-toolbar
|
|
|
|
- title="选择何种印章"
|
|
|
|
- :columns="typeArr"
|
|
|
|
- @confirm="handleTypeConfirm"
|
|
|
|
- @cancel="showType=false"
|
|
|
|
- />
|
|
|
|
|
|
+ <view class="type-popup-wrap">
|
|
|
|
+ <view class="flex top-title">
|
|
|
|
+ <text style="color:#969799" @click="showType=false">取消</text>
|
|
|
|
+ <text style="font-size:16px">选择何种印章</text>
|
|
|
|
+ <text style="color:#576b95" @click="handleTypeConfirm">确认</text>
|
|
|
|
+ </view>
|
|
|
|
+ <van-checkbox-group v-model="temType" @change="onChangeType">
|
|
|
|
+ <van-checkbox shape="square" :name="item" v-for="item in typeArr" :key="item">{{item}}</van-checkbox>
|
|
|
|
+ </van-checkbox-group>
|
|
|
|
+ </view>
|
|
</van-popup>
|
|
</van-popup>
|
|
|
|
|
|
<!-- 客户搜索 -->
|
|
<!-- 客户搜索 -->
|
|
@@ -187,6 +190,14 @@
|
|
steps
|
|
steps
|
|
},
|
|
},
|
|
computed:{
|
|
computed:{
|
|
|
|
+ typeLength() {
|
|
|
|
+ if (this.newSealType.length > 0) {
|
|
|
|
+ return true;
|
|
|
|
+ } else {
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+
|
|
statusImg(){
|
|
statusImg(){
|
|
if(this.detail.Status==='已审批'){
|
|
if(this.detail.Status==='已审批'){
|
|
return require('../static/pass-icon.png')
|
|
return require('../static/pass-icon.png')
|
|
@@ -220,14 +231,20 @@
|
|
};
|
|
};
|
|
}
|
|
}
|
|
});
|
|
});
|
|
- },
|
|
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ watch: {
|
|
|
|
+ showType() {
|
|
|
|
+ if (!this.showType) {
|
|
|
|
+ this.temType = JSON.parse(JSON.stringify(this.newSealType));
|
|
|
|
+ }
|
|
|
|
+ },
|
|
},
|
|
},
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
checkBackFiles:[],// 上传的签回附件文件
|
|
checkBackFiles:[],// 上传的签回附件文件
|
|
showConfirmCheckBackfile:false,//确认上传的签回附件弹窗
|
|
showConfirmCheckBackfile:false,//确认上传的签回附件弹窗
|
|
|
|
|
|
- val:'',
|
|
|
|
ContractApprovalId:0,
|
|
ContractApprovalId:0,
|
|
ContractApprovalRecordId:0,
|
|
ContractApprovalRecordId:0,
|
|
SealId:0,
|
|
SealId:0,
|
|
@@ -241,10 +258,12 @@
|
|
},//合同附件
|
|
},//合同附件
|
|
|
|
|
|
showPurpose:false,//显示用印用途选项
|
|
showPurpose:false,//显示用印用途选项
|
|
- purposeArr:['销售合同','渠道合同','付款通知函','招投标','战略合作协议'],
|
|
|
|
|
|
+ purposeArr: ["销售合同", "代付合同", "总对总协议", "渠道合同", "付款通知函", "招投标", "战略合作协议"],
|
|
|
|
|
|
showType:false,//显示用印用途选项
|
|
showType:false,//显示用印用途选项
|
|
typeArr:['合同章','公章','法人章'],
|
|
typeArr:['合同章','公章','法人章'],
|
|
|
|
+ temType: [], //临时存放选择的用印用途
|
|
|
|
+
|
|
showCustome:false,//显示搜索客户名称
|
|
showCustome:false,//显示搜索客户名称
|
|
searchCustomeVal:'',//搜索客户输入数据
|
|
searchCustomeVal:'',//搜索客户输入数据
|
|
searchCustomeList:[],//搜索到的客户名称列表
|
|
searchCustomeList:[],//搜索到的客户名称列表
|
|
@@ -252,10 +271,10 @@
|
|
|
|
|
|
checked:false,//是否同时作废合同
|
|
checked:false,//是否同时作废合同
|
|
|
|
|
|
- oldUse:"",
|
|
|
|
- oldFileNum:'',
|
|
|
|
- oldSealType:'',
|
|
|
|
- oldRemark:'',
|
|
|
|
|
|
+ newUse:"",
|
|
|
|
+ newFileNum:'',
|
|
|
|
+ newSealType:[],
|
|
|
|
+ newRemark:'',
|
|
oldFile:''
|
|
oldFile:''
|
|
}
|
|
}
|
|
},
|
|
},
|
|
@@ -471,15 +490,21 @@
|
|
},
|
|
},
|
|
|
|
|
|
handlePurposeConfirm(e){
|
|
handlePurposeConfirm(e){
|
|
- this.oldUse=e.detail.value
|
|
|
|
|
|
+ this.newUse=e.detail.value
|
|
this.showPurpose=false
|
|
this.showPurpose=false
|
|
},
|
|
},
|
|
|
|
|
|
|
|
+ // 确认盖章类型
|
|
handleTypeConfirm(e){
|
|
handleTypeConfirm(e){
|
|
- this.oldSealType=e.detail.value
|
|
|
|
|
|
+ this.newSealType=JSON.parse(JSON.stringify(this.temType))
|
|
this.showType=false
|
|
this.showType=false
|
|
this.getProcessData()
|
|
this.getProcessData()
|
|
},
|
|
},
|
|
|
|
+
|
|
|
|
+ // 盖章类型变换
|
|
|
|
+ onChangeType(e){
|
|
|
|
+ this.temType=e.detail
|
|
|
|
+ },
|
|
|
|
|
|
//前去重审
|
|
//前去重审
|
|
handleEdit(){
|
|
handleEdit(){
|
|
@@ -518,10 +543,11 @@
|
|
//点击通过
|
|
//点击通过
|
|
handleClickPass(){
|
|
handleClickPass(){
|
|
//判断是否有内容修改
|
|
//判断是否有内容修改
|
|
- const flag1=this.oldUse===this.detail.Use
|
|
|
|
- const flag2=Number(this.oldFileNum)===Number(this.detail.FileNum)
|
|
|
|
- const flag3=this.oldSealType===this.detail.SealType
|
|
|
|
- const flag4=this.oldRemark===this.detail.Remark
|
|
|
|
|
|
+ const flag1=this.newUse===this.detail.Use
|
|
|
|
+ const flag2=Number(this.newFileNum)===Number(this.detail.FileNum)
|
|
|
|
+ // const flag3=this.newSealType.join(',')===this.detail.SealType
|
|
|
|
+ const flag3=this.isArrEqual(this.newSealType,this.detail.SealType.split(','))
|
|
|
|
+ const flag4=this.newRemark===this.detail.Remark
|
|
const flag5=this.files.url===this.detail.FileUrl
|
|
const flag5=this.files.url===this.detail.FileUrl
|
|
if(flag1&&flag2&&flag3&&flag4&&flag5){
|
|
if(flag1&&flag2&&flag3&&flag4&&flag5){
|
|
this.handleApprovalPass()
|
|
this.handleApprovalPass()
|
|
@@ -529,31 +555,36 @@
|
|
this.handleApprovePassModify()
|
|
this.handleApprovePassModify()
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
+
|
|
|
|
+ //判断两个数组是否相同
|
|
|
|
+ isArrEqual(arr1, arr2){
|
|
|
|
+ return arr1.length === arr2.length && arr1.every((ele) => arr2.includes(ele));
|
|
|
|
+ };
|
|
|
|
|
|
//审批通过 (修改内容)
|
|
//审批通过 (修改内容)
|
|
async handleApprovePassModify(){
|
|
async handleApprovePassModify(){
|
|
- if(!this.oldFileNum){
|
|
|
|
|
|
+ if(!this.newFileNum){
|
|
uni.showToast({
|
|
uni.showToast({
|
|
title:'请填写文件份数',
|
|
title:'请填写文件份数',
|
|
icon:"none"
|
|
icon:"none"
|
|
})
|
|
})
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- if(this.oldFileNum<1){
|
|
|
|
|
|
+ if(this.newFileNum<1){
|
|
uni.showToast({
|
|
uni.showToast({
|
|
title:'文件份数不合法',
|
|
title:'文件份数不合法',
|
|
icon:"none"
|
|
icon:"none"
|
|
})
|
|
})
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- if(!this.oldSealType){
|
|
|
|
|
|
+ if(!this.newSealType){
|
|
uni.showToast({
|
|
uni.showToast({
|
|
title:'印章类型不能为空',
|
|
title:'印章类型不能为空',
|
|
icon:"none"
|
|
icon:"none"
|
|
})
|
|
})
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- if(!this.oldUse){
|
|
|
|
|
|
+ if(!this.newUse){
|
|
uni.showToast({
|
|
uni.showToast({
|
|
title:'请选择用印用途',
|
|
title:'请选择用印用途',
|
|
icon:"none"
|
|
icon:"none"
|
|
@@ -568,11 +599,11 @@
|
|
return
|
|
return
|
|
}
|
|
}
|
|
const res=await apiApprovalPassModify({
|
|
const res=await apiApprovalPassModify({
|
|
- FileNum:Number(this.oldFileNum),
|
|
|
|
- Remark:this.oldRemark,
|
|
|
|
|
|
+ FileNum:Number(this.newFileNum),
|
|
|
|
+ Remark:this.newRemark,
|
|
SealId:Number(this.detail.SealId),
|
|
SealId:Number(this.detail.SealId),
|
|
- SealType:this.oldSealType,
|
|
|
|
- Use:this.oldUse,
|
|
|
|
|
|
+ SealType:this.newSealType.join(','),
|
|
|
|
+ Use:this.newUse,
|
|
FileUrl:this.files.url
|
|
FileUrl:this.files.url
|
|
})
|
|
})
|
|
if(res.code===200){
|
|
if(res.code===200){
|
|
@@ -688,10 +719,10 @@
|
|
//合同章5 公章、法人章 6
|
|
//合同章5 公章、法人章 6
|
|
async getProcessData(){
|
|
async getProcessData(){
|
|
let id=0
|
|
let id=0
|
|
- if(this.type==='合同章'){
|
|
|
|
- id=5
|
|
|
|
- }else{
|
|
|
|
- id=6
|
|
|
|
|
|
+ if (this.newSealType.includes("公章") || this.newSealType.includes("法人章")) {
|
|
|
|
+ id = 6;
|
|
|
|
+ } else {
|
|
|
|
+ id = 5;
|
|
}
|
|
}
|
|
|
|
|
|
let res=await apiFlowDetail({FlowId:id})
|
|
let res=await apiFlowDetail({FlowId:id})
|
|
@@ -709,10 +740,11 @@
|
|
})
|
|
})
|
|
if(res.code===200){
|
|
if(res.code===200){
|
|
this.detail=res.data.SealDetail
|
|
this.detail=res.data.SealDetail
|
|
- this.oldUse=res.data.SealDetail.Use
|
|
|
|
- this.oldFileNum=res.data.SealDetail.FileNum
|
|
|
|
- this.oldSealType=res.data.SealDetail.SealType
|
|
|
|
- this.oldRemark=res.data.SealDetail.Remark
|
|
|
|
|
|
+ this.newUse=res.data.SealDetail.Use
|
|
|
|
+ this.newFileNum=res.data.SealDetail.FileNum
|
|
|
|
+ this.newSealType=res.data.SealDetail.SealType.split(',')
|
|
|
|
+ this.temType=res.data.SealDetail.SealType.split(',')
|
|
|
|
+ this.newRemark=res.data.SealDetail.Remark
|
|
this.processData=res.data.FlowNodeList
|
|
this.processData=res.data.FlowNodeList
|
|
this.opButton=res.data.OpButton
|
|
this.opButton=res.data.OpButton
|
|
this.handleFile(res.data.SealDetail.FileUrl)
|
|
this.handleFile(res.data.SealDetail.FileUrl)
|
|
@@ -940,4 +972,19 @@
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ .type-popup-wrap{
|
|
|
|
+ padding: 20rpx 32rpx;
|
|
|
|
+ height: 250px;
|
|
|
|
+ .top-title{
|
|
|
|
+ justify-content: space-between;
|
|
|
|
+ margin-bottom: 124rpx;
|
|
|
|
+ }
|
|
|
|
+ .van-checkbox{
|
|
|
|
+ margin-bottom: 30rpx;
|
|
|
|
+ width: 200rpx;
|
|
|
|
+ margin-left: auto;
|
|
|
|
+ margin-right: auto;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
</style>
|
|
</style>
|