zkx 1 vuosi sitten
vanhempi
commit
fe10df425b

+ 51 - 11
components/ApproveInfo.vue

@@ -1,6 +1,6 @@
 <template>
 	<view>
-		<vew  class="head-approve-main" >
+		<view  class="head-approve-main" >
 			<view class="head-approve">
 				<view class="head-approve-a">
 					<view class="head-approve-a1">
@@ -24,7 +24,7 @@
 				<view>申请人部门:{{formData.orgName}}</view>
 				<view>申请时间:{{formData.createTime}}</view>
 			</view>
-		</vew>
+		</view>
 		
 		<view class="businessMain" :style="'font-size:'+fieldInfo.fontsize+'rpx'">
 		
@@ -34,23 +34,29 @@
 				<template v-if="item.type.indexOf('uview')>-1">
 					<view v-if="item.type.indexOf('divider')>-1">
 						<u-divider bg-color="#fff" border-color="#6d6d6d">{{item.text}}</u-divider>
+					</view>
+					<view v-if="item.type.indexOf('stepBtn')>-1&&item.isEdit"   style=" text-align:  center;" >
+						<u-button @click="stepBtn"  type="warning"  size="medium">{{item.text}}</u-button>
 					</view>
 				</template>
 				<template v-else>
 		
 		
 					<view class="oawork-item1">
-						<view class="oawork-item1_a">{{item.text}} 
+						<view class="oawork-item1_a">{{item.serial}}{{item.text}} 
 						</view>
 						<view class="oawork-item1_b">
 							<template v-if="item.view">
 								{{formData[item.key]?formData[item.key]:getViewItem(item)}}
 							</template>
 							<template v-else>
-								<template v-if="item.type.indexOf('text')>-1">
-									{{formData[item.key]}}
+								<template v-if="item.type.indexOf('text')>-1">
+								<u-input v-if="item.isEdit" v-model="formData[item.key]" :placeholder="'请输入'+item.text"
+									:placeholderStyle="placeholderStyle" class="oawork-line"
+									:customStyle="{textAlign: 'right'}" />
+									<span  v-else >{{formData[item.key]}}</span>
 										
-		
+									
 								</template>
 								<template v-if="item.type.indexOf('textnumber')>-1">
 									{{formData[item.key]}}
@@ -99,9 +105,11 @@
 					<view class="oawork-item2">
 		
 						<template v-if="item.type.indexOf('textlong')>-1">
-						
-							 
-							<u-input  v-model="formData[item.key]"  placeholder="" :disabled="true"
+							
+							 <u-input v-if="item.isEdit" v-model="formData[item.key]"  :placeholder="'请输入'+item.text"
+							 	:placeholderStyle="placeholderStyle" class="oawork-line" type="textarea" />
+								
+							<u-input v-else  v-model="formData[item.key]"  placeholder="" :disabled="true"
 								:placeholderStyle="placeholderStyle" class="oawork-line" type="textarea" />
 							
 						</template>
@@ -135,7 +143,8 @@
 	</view>
 </template>
 
-<script>
+<script>
+	import * as API from '@/apis/pagejs/oa.js'
 	export default {
 		name:"ApproveInfo",
 		props:{
@@ -187,7 +196,38 @@
 		created() {
 			
 		},
-		methods:{
+		methods:{
+			submitApi() {
+				 
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				this.formData.draftStatus = 0
+				this.formData.applyDate=""
+				API.application(this.fieldInfo.url, this.formData).then((res) => {
+					uni.hideLoading();
+				
+					uni.showModal({
+						title:"提示",
+						showCancel:false,
+						content:"操作成功!",
+						
+						success() {
+							
+						}
+					})
+					////(this.formData.maintenanceDescription,res.data.applyContent.maintenanceDescription)
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
+			stepBtn(){
+				this.submitApi()
+			},
 			// getRole(item){
 			// 	if(item.role){
 			// 		if(item.role.indexOf("step1")>-1){

+ 1 - 0
components/ApproveInfoEdit.vue

@@ -220,6 +220,7 @@
 			//this.init()
 		},
 		methods:{
+		
 			init() {
 			// 	this.personInfo = this.carhelp.getPersonInfo()
 			// 	this.createTime = parseUnixTime(currentTimeStamp(), '{y}-{m}-{d}');

+ 2 - 2
components/ApproveView.vue

@@ -170,8 +170,8 @@
 						    display: flex;
 							.approveItem_a1_text3Img_item1{
 								display: flex;
-								min-width:100px;
-								max-width: 100px;
+								min-width:200rpx;
+								max-width: 200rpx;
 								
 								.approveItem_a1_text3Img_item1_2{
 									margin-left: 4px;

+ 18 - 1
pages/oawork/approve/info.vue

@@ -173,7 +173,24 @@
 						this.stepNum=this.activityList.findIndex(item=>{
 							return item.status==1
 						})
-						console.log(this.stepNum)
+						console.log(this.stepNum)
+						for(var i in this.fieldList){
+							var item= this.fieldList[i]
+							item.isEdit=0
+							if(item.role){
+								if(this.stepNum==0){
+									//第一步
+									if(item.role.indexOf("step1")>-1){
+										item.isEdit=1
+									}
+								}
+								if(item.role.indexOf("step0")>-1){
+									item.isEdit=1
+								}
+							}
+							
+						}
+						this.$forceUpdate()
 					}
 					this.init()
 					if(applyContent){

+ 4 - 4
pages/oawork/business/add.vue

@@ -9,7 +9,7 @@
 
 			<view class="businessTitle" v-if="false">{{fieldInfo.title}}</view>
 			<view v-for="(item,i) in fieldList" :key="i"
-			 v-if="item.role==null||item.role.indexOf('0')>-1||item.role.indexOf('0')>-1"
+			
 			 class="oawork-item" :class="getClass(item)">
 				<template v-if="item.type.indexOf('uview')>-1">
 					<view v-if="item.type.indexOf('divider')>-1">
@@ -20,9 +20,9 @@
 
 
 					<view class="oawork-item1">
-						<view class="oawork-item1_a">{{item.text}}<span v-if="item.isrequset" style="color:red">*</span>
+						<view class="oawork-item1_a">{{item.serial}}{{item.text}}<span v-if="item.isrequset" style="color:red">*</span>
 						</view>
-						<view class="oawork-item1_b">
+						<view class="oawork-item1_b" v-if="item.role==null||item.role.indexOf('0')>-1||item.role.indexOf('0')>-1">
 							<template v-if="item.view">
 								{{formData[item.key]?formData[item.key]:getViewItem(item)}}
 							</template>
@@ -78,7 +78,7 @@
 						</view>
 					</view>
 
-					<view class="oawork-item2">
+					<view class="oawork-item2"  v-if="item.role==null||item.role.indexOf('0')>-1||item.role.indexOf('0')>-1" >
 
 						<template v-if="item.type.indexOf('textlong')>-1">
 							<u-input v-model="formData[item.key]" :placeholder="'请输入'+item.text"

+ 19 - 18
pages/oawork/data/oa3.js

@@ -65,7 +65,7 @@ var obj={
 				key:"divider",
 				type:["uview","divider","paddingTop"],
 				view:1,
-				text:"以下审批人可编辑",
+				text:"以下第一步审批人可编辑",
 				role:["step1"]   ,
 				
 			},
@@ -80,62 +80,63 @@ var obj={
 			{
 				key:"complianceOrNot",
 				type:["radio","itemrow"],
-				text:"合同业务是否合规",
+				text:"1.合同业务是否合规",
 				role:["step1"]   ,
 				// 0 申请人填写,1 全部可编辑,step0  审批人可审批,step1,  第一步可填写,
 			},
 			{
 				key:"passedOrNot",
 				type:["radio","itemrow"],
-				text:"合同业务是否按照要求通过审批",
+				text:"2.合同业务是否按照要求通过审批",
 				role:["step1"]   
 			},
 			{
 				key:"legalOrNot",
 				type:["radio","itemrow"],
-				text:"合同资金、资产是否合法",
+				text:"3.合同资金、资产是否合法",
 				role:["step1"]   
 			},
 			{
 				key:"settlementMethodOrNot",
 				type:["radio","itemrow"],
-				text:"合同价款、酬荆和结算方式是否合规",
+				text:"4.合同价款、酬荆和结算方式是否合规",
 				role:["step1"]   
 			},
 			{
 				key:"usageMethodOrNot",
 				type:["radio","itemrow"],
-				text:"资金、资产的用途及使用方法是否合规",
+				text:"5.资金、资产的用途及使用方法是否合规",
 				role:["step1"]   
 			},
-			{
-				key:"divider",
-				type:["uview","divider","paddingTop"],
-				view:1,
-				text:"",
-				role:["step1"]   ,
-				
-			},
+			
 			{
 				key:"supplementaryExplanation",
 				type:["textlong","itemrow"],
-				text:"合同之外有无其他需要补充说明事项",
+				text:"合同之外有无其他需要补充说明事项",
+				serial:"6.",
 				role:["step1"]   
 			},
 			{
 				key:"handledBy",
-				type:["text","itemrow","width49"],
+				type:["text","width49"],
 				text:"经办人",
 				role:["step1"]   
 			},
 			{
 				key:"head",
-				type:["text","itemrow","width49"],
+				type:["text","width49"],
 				text:"部门负责人",
 				role:["step1"]   
 			},
 			
-			
+			{
+				key:"stepBtn",
+				type:["uview","stepBtn","paddingTop"],
+				view:1,
+				text:"保存合同承办部门意见",
+				role:["step1"]   ,
+				
+			},
 			 
 			
 		]

+ 39 - 4
pages/oawork/index.vue

@@ -9,7 +9,8 @@
 				<view class="grid">
 					<u-grid :col="3" :border="false">
 						<u-grid-item   v-for="(item,index) in info.list" :key="index"   
-							@click="gotoItem(info,item)" >
+							@click="gotoItem(info,item)" >
+							<u-badge type="error" v-if="item.opkey" :count="mythis[item.opkey]"></u-badge>
 							<view class="gridItem" :style="item.bgColor?item.bgColor:info.bgColor">
 								<img :src="item.img?item.img:info.img" alt="">
 								
@@ -35,10 +36,14 @@
 	var bg1 =require("@/assets/img/oawork/bg1.png")
 	var bg2 =require("@/assets/img/oawork/bg2.png")
 	
-	
+	import * as API from '@/apis/pagejs/oa.js'
 	export default {
 		data() {
-			return {
+			return {
+				
+				mythis:{
+					approveopkey:0,
+				},
 				list:[
 					{
 						name:"公文提报",
@@ -116,11 +121,13 @@
 							{
 								name:"公文审批",
 								type:"approve",
+								opkey:"approveopkey",
 									show:1
 							}
 							, {
 								name:"查看抄送",
 								type:"view",
+								
 									show:1
 							},
 							// {
@@ -156,8 +163,36 @@
 					}
 				]
 			}
+		},
+		onLoad(op){
+			
+			
+			this.getList(0,"approveopkey");
+			//this.getList(2,"viewopkey");
 		},
-		methods: {
+		methods: {
+			getList(status,key){
+				
+				//this.formData.formId=this.oatype
+				
+				
+				API.approveList({
+					pageIndex: 1,
+					pageSize: 0,
+					status:status
+				}).then((res) => {
+					
+					uni.hideLoading();
+				
+				
+					this.mythis[key]= res.data.recordsTotal;
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
 			gotoItem(info,item){
 				uni.navigateTo({
 					url:(item.url?item.url:info.url)+"?oatype="+item.type+"&oaname="+item.name