yjl před 2 roky
rodič
revize
c1dcc14f4c

+ 1 - 1
index.html

@@ -4,7 +4,7 @@
     <meta charset="utf-8">
     <meta name="viewport" content="width=device-width,initial-scale=1.0">
     <!-- <title>cxzq-wed</title> -->
-		<title>征迁安置综合监管平台</title>
+		<title>慈溪市数字化房屋征收系统</title>
 	<!-- <link rel="stylesheet/less" id="style" href="static/css/two.less" title="app"> -->
 	<!-- <link rel="alternate stylesheet" title="compact" href="static/css/two.less" type="text/less"> -->
 	<!-- <link href="static/css/one.less" id="one" rel="alternate stylesheet" type="text/less" title="app"> -->

binární
src/assets/ResettlementManagement/momery.png


binární
src/assets/ResettlementManagement/momery_ont.png


binární
src/assets/ResettlementManagement/momery_tow.png


binární
src/assets/ResettlementManagement/survey_part.png


binární
src/assets/Sign-top.png


binární
src/assets/home-Frame.png


binární
src/assets/title.png


+ 3 - 8
src/components/assembly/mapOpenlayers.vue

@@ -1,7 +1,7 @@
 <template>
     <div id="mapApp">
         <div ref="maps" id="map"></div>
-		<div class='button-background'>
+		<!-- <div class='button-background'>
 			<el-upload
 				class="enterBtn"
 				action=""
@@ -10,7 +10,7 @@
 				:on-change="enterBtn">
 				<el-button slot="trigger" size="small">导入红线图</el-button>
 			</el-upload>
-		</div>
+		</div> -->
     </div>
 </template>
 
@@ -266,10 +266,5 @@
     #map >>> .ol-rotate.ol-hidden{
         display: none;
     }
-    .button-background{
-        position: absolute;
-        left:45px;
-        top:20px;
-        display:inline-block;
-    }
+    
 </style>

+ 9 - 9
src/components/assembly/newAgreement.vue

@@ -6,6 +6,7 @@
 			</div>
 		</div>
 		<canvas id="canvas" ref="mycanvas" width="1000" height="1000"></canvas>
+		
 		<!-- ===============集体====房票===================== -->
 		<div class="button-background">
 			<el-button @click="RoomA()">打印</el-button>
@@ -2337,7 +2338,7 @@
 		},
 		mounted() {
 
-			this.addweather()
+			// this.addweather()
 		},
 		methods: {
 			random(min, max) {
@@ -2358,8 +2359,8 @@
 				class dian {
 					constructor() {
 						this.pr = 6
-						this.x = thix.random(0, canvas.width - this.pr)
-						this.y = thix.random(0, canvas.height - this.pr)
+						this.x = thix.random(0, canvas.width - (this.pr/2))
+						this.y = thix.random(0, canvas.height - (this.pr/2))
 						//速度
 						this.xsd = thix.random(-50, 50)
 						this.ysd = thix.random(-50, 50)
@@ -2372,16 +2373,16 @@
 							var yjl = this.ysd * sj
 							var x = this.x + xjl
 							var y = this.y + yjl
-							if (x > canvas.width - this.pr) {
-								x = canvas.width - this.pr
+							if (x > canvas.width - (this.pr/2)) {
+								x = canvas.width - (this.pr/2)
 								this.xsd = -this.xsd
 							} else if (x < 0) {
 								x = 0
 								this.xsd = -this.xsd
 							}
 
-							if (y > canvas.height - this.pr) {
-								y = canvas.height - this.pr
+							if (y > canvas.height - (this.pr/2)) {
+								y = canvas.height - (this.pr/2)
 								this.ysd = -this.ysd
 							} else if (y < 0) {
 								y = 0
@@ -2403,13 +2404,12 @@
 				class xian {
 					constructor(max = 30) {
 						this.max = new Array(max).fill(0).map(() => new dian())
-
 					}
 					path() {
 						requestAnimationFrame(() => {
 							this.path()
 						})
-						ctx.clearRect(0, 0, canvas.width, canvas.height)
+						ctx.clearRect(0, 0, canvas.width, canvas.height)//清除画布
 
 						for (let i = 0; i < this.max.length; i++) {
 							this.max[i].path()

+ 7 - 7
src/components/index3.vue

@@ -12,12 +12,12 @@
 					<li @click="lpb()" style="cursor:pointer "><img src="../assets/home-roomlisticon.png">
 						<h2>楼盘表</h2>
 					</li>
-					<li @click="dt()" style="cursor:pointer "><img src="../assets/home-mapicon.png">
+					<!-- <li @click="dt()" style="cursor:pointer "><img src="../assets/home-mapicon.png">
 						<h2>地图</h2>
-					</li>
-					<li @click="change" style="cursor:pointer ">
+					</li> -->
+					<!-- <li @click="change" style="cursor:pointer ">
 						<h2><i style="font-size: 22px;" :class="skin==1?'el-icon-sunny':'el-icon-moon-night'"></i></h2>
-					</li>
+					</li> -->
 					<li @click="dialogVisible=true"
 						style="font-size: 19px;margin: 2.6% 0;max-width: 70px;cursor:pointer">
 						<el-badge :is-dot='MessageReminder'>
@@ -402,7 +402,7 @@
 			.Left {
 				display: flex;
 				width: 384px;
-				padding: 0.3% 0% 0.3% 0.5%;
+				padding: 5px 0 3px 5px;
 				cursor: pointer;
 
 				img {
@@ -416,8 +416,8 @@
 
 				ul {
 					display: flex;
-					width: 100%;
-
+					width: calc(100% - 70px);
+					justify-content: end;
 					li {
 						width: 26%;
 						height: 38.5%;

+ 469 - 111
src/components/subject/ResettlementManagement/CollectiveResettlement/CollectiveResettlementBasic.vue

@@ -1,139 +1,228 @@
 <template>
 	<div class="Basic">
 		<div class="Basic-right">
-			<div class="detailstitle">
+			<!-- <div class="detailstitle">
 				<img src="../../../../assets/detailedInformationIcon.png">
 				项目信息
+			</div> -->
+			<div class="PlanningLibrary">
+			<div class="PlanningLibrary-right">
+				<div :class="planLibraryId=='基础信息'?'LeftCheck':''" @click="planLibraryId='基础信息'">
+					基础信息
+				</div>
+				<div :class="planLibraryId=='计算参数'?'LeftCheck':''" @click="planLibraryId='计算参数'">
+					计算参数
+				</div>
+			</div>
+			<div class="PlanningLibrary-left">
+			</div>
 			</div>
-			<div class="form" v-if="strpdetails.bussiness">
+			<div class="form" v-if="strpdetails.bussiness" v-show="planLibraryId=='基础信息'">
 				<el-form :model="strpdetails" :disabled='authority==1'>
-					<el-form-item label="实施方式" class="msg" label-width="150px" prop="projectCode" style="width: 33%;">
+					<el-form-item label="实施方式" class="msg" label-width="150px" prop="projectCode">
 						<el-input v-model="strpdetails.bussiness.embodiment" autocomplete="off" disabled>
 						</el-input>
 					</el-form-item>
-					<el-form-item label="项目类型" label-width="150px" prop="projectName" style="width: 33%;">
+					<el-form-item label="项目类型" label-width="150px" prop="projectName">
 						<el-input v-model="strpdetails.bussiness.projectType" autocomplete="off" disabled>
 						</el-input>
 					</el-form-item>
-					<el-form-item label="项目性质" label-width="150px" prop="projectName" style="width: 34%;">
-						<el-input v-model="strpdetails.bussiness.projectNature" autocomplete="off" disabled></el-input>
-					</el-form-item>
-					<el-form-item label="项目名称" label-width="150px" prop="projectName" style="width: 33%;">
+					<el-form-item label="项目名称" label-width="150px" prop="projectName">
 						<el-input v-model="strpdetails.bussiness.projectName" autocomplete="off" disabled></el-input>
 					</el-form-item>
-					<el-form-item label="新土地发布前后" label-width="150px" prop="projectName" style="width: 33%;">
-						<el-input v-model="strpdetails.bussiness.projectName" autocomplete="off" disabled></el-input>
+					<el-form-item label="项目性质" label-width="150px" prop="projectName">
+						<el-input v-model="strpdetails.bussiness.projectNature" autocomplete="off" disabled></el-input>
+					</el-form-item>
+					<el-form-item label="新土地发布前后" label-width="150px" prop="projectName">
+						<el-input v-model="strpdetails.bussiness.signingType" autocomplete="off" disabled></el-input>
 					</el-form-item>
-					<el-form-item label="所属镇(街道)" label-width="150px" prop="projectName" style="width: 34%;">
+					<el-form-item label="所属镇(街道)" label-width="150px" prop="projectName">
 						<el-input v-model="strpdetails.bussiness.street" autocomplete="off" disabled>
 						</el-input>
 					</el-form-item>
-					<el-form-item label="征迁面积(万m2)" label-width="150px" prop="projectName" style="width: 33%;">
+					<el-form-item label="征迁面积(万m²)" label-width="150px" prop="projectName">
 						<el-input v-model="strpdetails.bussiness.planAreaJt" autocomplete="off" disabled>
 						</el-input>
 					</el-form-item>
-					<!-- <el-form-item label="征迁户数(户)" label-width="150px" prop="projectName" style="width: 33%;">
+					<el-form-item label="征迁户数(户)" label-width="150px" prop="projectName">
 						<el-input v-model="strpdetails.bussiness.planHouseholdsTotal" autocomplete="off" disabled>
 						</el-input>
 					</el-form-item>
-					<el-form-item label="补偿方案发布日期" label-width="150px" prop="projectName" style="width: 34%;">
-						<el-input autocomplete="off" disabled>
-						</el-input>
-					</el-form-item> -->
-					<el-form-item label="征迁确定日期" label-width="150px" prop="projectName" style="width: 33%;">
-						<el-input autocomplete="off" disabled>
+					<!-- <el-form-item label="补偿方案发布日期" label-width="150px" prop="projectName">
+						<el-input autocomplete="off">
 						</el-input>
 					</el-form-item>
-					<el-form-item label="签约开始日期" label-width="150px" prop="projectName" style="width: 34%;">
+					<el-form-item label="征迁确定日期" label-width="150px" prop="projectName">
+						<el-input autocomplete="off">
+						</el-input>
+					</el-form-item> -->
+					<el-form-item label="签约开始日期" label-width="150px" prop="projectName">
 						<el-date-picker value-format="yyyy-MM-dd" type="date" placeholder="请选择签约开始日期"
 						v-model="parameter.signingStartDate" style="width: 100%;" disabled></el-date-picker>
 					</el-form-item>
-					<el-form-item label=" 签约结束日期" label-width="150px" prop="projectName" style="width: 33%;">
+					<el-form-item label=" 签约结束日期" label-width="150px" prop="projectName">
 						<el-date-picker value-format="yyyy-MM-dd" type="date" placeholder="请选择签约结束日期"
 						v-model="parameter.signingEndDate" style="width: 100%;" disabled></el-date-picker>
 					</el-form-item>
-					<el-form-item label="房屋征收补偿安置方案" label-width="180px" prop="projectName" style="width: 33%;">
-						<el-input autocomplete="off" v-model="parameter.resettlementPlan" disabled></el-input>
+					<el-form-item label="安置方式" label-width="150px" prop="projectName">
+						<el-select v-model="placementModes" placeholder="请选择镇安置方式" disabled multiple clearable 
+						 @change="preserve(2)" style="width: 100%;">
+							<el-option label="货币" value="货币"></el-option>
+							<el-option label="混合" value="混合"></el-option>
+							<el-option label="迁建" value="迁建"></el-option>
+						</el-select>
 					</el-form-item>
-					<el-form-item label="安置范围" label-width="150px" prop="projectName" style="width: 34%;">
+					<el-form-item label="安置范围" v-if="placementindex==1||placementindex==3" label-width="150px" prop="projectName">
 						<div class="button-background" style="width: 100%;">
-							<el-button @click="getRange(),Range = true" style="width: 100%;border-radius: 0;">详 情</el-button>
+							<el-button @click="money()" style="width: 100%;border-radius: 0;">详 情</el-button>
 						</div>
 					</el-form-item>
+					<el-form-item label="迁建范围" v-if="placementindex==2||placementindex==3" label-width="150px" prop="projectName">
+						<div class="button-background" style="width: 100%;">
+							<el-button @click="move()" style="width: 100%;border-radius: 0;">详 情</el-button>
+						</div>
+					</el-form-item>
+					<el-form-item v-if="strpdetails.isCancel" label="退回意见:" label-width="110px" prop="projectName" style="width: 100%" >
+						<el-input type="textarea" v-model="opinion" disabled></el-input>
+					</el-form-item>
 				</el-form>
 			</div>
-			<div class="detailstitle-top">
+			<!-- <div class="detailstitle-top">
 				<div class="detailstitle-right">
 					<img src="../../../../assets/detailedInformationIcon.png">
 					计算参数
 				</div>
 				<div class="detailstitle-left">
-					<!-- <div>编辑</div> -->
-					<!-- <div @click="preservation()">保存</div> -->
+					<div v-if="parameter.wfAnzhiState!='已开启'" @click="recovery()">恢复默认</div>
+					<div v-if="parameter.wfAnzhiState!='已开启'" @click="preservation(1)">保存</div>
 				</div>
-			</div>
-			<div class="Out">
+			</div> -->
+		<div class="overf">
+			
+			<div class="Out" v-show="planLibraryId=='计算参数'">
 			<div class="Outside">
 			<div class="Outside-title">
 				征迁户编号前缀:
 			</div>
 			<div class="form">
 				<el-form disabled>
-					<el-form-item label="征迁户编号前缀" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off" v-model='parameter.numberPrefix'></el-input>
+					<el-form-item :label="item.street" class="msg" label-width="160px" prop="projectCode" style="width: 33%;"
+					 v-for="(item,index) in householdprefix" :key="index">
+						<el-input autocomplete="off" :disabled="item.limit" v-model='householdprefix[index].numberPrefix' @blur="revisePrefix(item,index)"></el-input>
 					</el-form-item>
 				</el-form>
 			</div>
 			</div>
 			<div class="Outside">
 			<div class="Outside-title">
+				房票编号前缀:
+			</div>
+			<div class="form">
+				<el-form disabled>
+					<el-form-item label="房票编号前缀" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
+						<el-input autocomplete="off" v-model="parameter.roomTicketPrefix"></el-input>
+					</el-form-item>
+				</el-form>
+			</div>
+			</div>
+			<div class="Outside" style="padding-top: 0;margin-top: 15px;">
+			<div class="Outside-title" style="line-height: 70px;">
 				拆迁所在地段:
 			</div>
 			<div class="form" >
 				<el-form disabled>
-					<!-- <el-form-item label="一类" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off" v-model="parameter.sectionGradeParamOne"><template slot="append">元/㎡</template></el-input>
-					</el-form-item>
-					<el-form-item label="二类" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off" v-model="parameter.sectionGradeParamTwo"><template slot="append">元/㎡</template></el-input>
-					</el-form-item>
-					<el-form-item label="三类" class="msg" label-width="160px" prop="projectCode" style="width: 34%;">
-						<el-input autocomplete="off" v-model="parameter.sectionGradeParamThree"><template slot="append">元/㎡</template></el-input>
-					</el-form-item>
-					<el-form-item label="四类" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off" v-model="parameter.sectionGradeParamFour"><template slot="append">元/㎡</template></el-input>
-					</el-form-item> -->
-					     <el-checkbox-group v-model="candidate">
-					       <el-checkbox label="一类地段" border></el-checkbox>
-					       <el-checkbox label="二类地段" border></el-checkbox>
-					       <el-checkbox label="三类地段" border></el-checkbox>
-					       <el-checkbox label="四类地段" border></el-checkbox>
+					     <el-checkbox-group v-model="candidate" @change="preserve(1)">
+					       <div class="ccc"><el-checkbox label="一类" border>一类地段</el-checkbox></div>
+					       <div class="ccc"><el-checkbox label="二类" border>二类地段</el-checkbox></div>
+					       <div class="ccc"><el-checkbox label="三类" border>三类地段</el-checkbox></div>
+					       <div class="ccc"><el-checkbox label="四类" border>四类地段</el-checkbox></div>
 					     </el-checkbox-group>
 				</el-form>
 			  </div>
 			</div>
-			<div class="Outside">
+			<div class="Outside" style="padding-top: 0;">
 			<div class="Outside-title">
 				过渡费:
 			</div>
 			<div class="form">
-				<el-form disabled>
-					<el-form-item label="小于60" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off" v-model="parameter.transitionFeeParamOne"><template slot="append">元/月</template></el-input>
-					</el-form-item>
-					<el-form-item label="大于60小于等于90" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off" v-model="parameter.transitionFeeParamTwo"><template slot="append">元/月</template></el-input>
-					</el-form-item>
-					<el-form-item label="大于90小于等于150" class="msg" label-width="160px" prop="projectCode" style="width: 34%;">
-						<el-input autocomplete="off" v-model="parameter.transitionFeeParamThree"><template slot="append">元/月</template></el-input>
-					</el-form-item>
-					<el-form-item label="大于150小于等于250" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off" v-model="parameter.transitionFeeParamFour"><template slot="append">元/月</template></el-input>
-					</el-form-item>
-					<el-form-item label="大于250" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off" v-model="parameter.transitionFeeParamFive"><template slot="append">元/月</template></el-input>
-					</el-form-item>
-				</el-form>
+				<ul class="pax">
+					<li>
+						<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"||this.parameter.sectionGradeParamOne.indexOf("一类") == -1' >
+							<el-form-item label="X≤60" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamOne1"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="60<X≤90" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamTwo1"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="90<X≤150" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamThree1"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="150<X≤250" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamFour1"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="X>250" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamFive1"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+						</el-form>
+					</li>
+					<li>
+						<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"||this.parameter.sectionGradeParamOne.indexOf("二类") == -1' >
+							<el-form-item label="X≤60" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamOne2"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="60<X≤90" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamTwo2"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="90<X≤150" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamThree2"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="150<X≤250" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamFour2"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="X>250" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamFive2"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+						</el-form>
+					</li>
+					<li>
+						<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"||this.parameter.sectionGradeParamOne.indexOf("三类") == -1' >
+							<el-form-item label="X≤60" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamOne3"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="60<X≤90" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamTwo3"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="90<X≤150" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamThree3"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="150<X≤250" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamFour3"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="X>250" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamFive3"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+						</el-form>
+					</li>
+					<li>
+						<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"||this.parameter.sectionGradeParamOne.indexOf("四类") == -1' >
+							<el-form-item label="X≤60" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamOne4"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="60<X≤90" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamTwo4"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="90<X≤150" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamThree4"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="150<X≤250" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamFour4"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+							<el-form-item label="X>250" class="msg" label-width="100px" prop="projectCode" style="width: 100%;">
+								<el-input autocomplete="off" v-model="parameter.transitionFeeParamFive4"><template slot="append">元/月</template></el-input>
+							</el-form-item>
+						</el-form>
+					</li>
+				</ul>
 			</div>
 			</div>
 			<div class="Outside">
@@ -191,31 +280,12 @@
 				</el-form>
 			</div>
 			</div>
-			<!-- <div class="Outside">
-			<div class="Outside-title">
-				拆迁所在地的商品住宅平均价:
-			</div>
-			<div class="form">
-				<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"'>
-					<el-form-item label="商品住宅平均价格" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off" v-model='parameter.currencyParamOne'><template slot="append">元</template>
-						</el-input>
-					</el-form-item>
-					<el-form-item label="基本造价" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
-						<el-input autocomplete="off"  v-model='parameter.currencyParamTwo'><template slot="append">元</template></el-input>
-					</el-form-item>
-					<el-form-item label="土地性质调整费用" class="msg" label-width="160px" prop="projectCode" style="width: 34%;">
-						<el-input autocomplete="off" v-model='parameter.currencyParamThree'><template slot="append">元</template></el-input>
-					</el-form-item>
-				</el-form>
-			</div>
-			</div> -->
 			<div class="Outside">
 			<div class="Outside-title">
 				斜面结构补偿参数:
 			</div>
 			<div class="form" style='width: calc(50% - 200px);'>
-				<el-form disabled>
+				<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"'>
 					<el-form-item label="斜面结构补偿参数" class="msg" label-width="160px" prop="projectCode" style="width: 100%;">
 						<el-input autocomplete="off" v-model="DatabevelParam"><template slot="append">%</template></el-input>
 					</el-form-item>
@@ -225,7 +295,7 @@
 				货币奖励:
 			</div>
 			<div class="form" style='width: calc(50% - 200px);'>
-				<el-form disabled>
+				<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"'>
 					<el-form-item label="被拆迁房屋合法建筑面积" class="msg" label-width="220px" prop="projectCode" style="width: 100%;">
 						<el-input autocomplete="off" v-model="parameter.monetaryRewardParam"><template slot="append">元/㎡</template></el-input>
 					</el-form-item>
@@ -237,7 +307,7 @@
 				提供迁建安置用地时间:
 			</div>
 			<div class="form" style='width: calc(50% - 200px);'>
-				<el-form disabled>
+				<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"'>
 					<el-form-item label="提供迁建安置用地时间" class="msg" label-width="160px" prop="projectCode" style="width: 100%;">
 						<el-date-picker value-format="yyyy-MM-dd" type="date" placeholder="请选择签约结束日期"
 						v-model="parameter.relocationProvideTime" style="width: 100%;"></el-date-picker>
@@ -248,7 +318,7 @@
 				基本造价:
 			</div>
 			<div class="form" style='width: calc(50% - 200px);'>
-				<el-form disabled>
+				<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"'>
 					<el-form-item label="基本造价" class="msg" label-width="160px" prop="projectCode" style="width: 100%;">
 						<el-input autocomplete="off"  v-model='parameter.currencyParamTwo'><template slot="append">元</template></el-input>
 					</el-form-item>
@@ -260,7 +330,7 @@
 				用地面积补差:
 			</div>
 			<div class="form">
-				<el-form disabled>
+				<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"'>
 					<el-form-item label="容积率" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
 						<el-input autocomplete="off" v-model='parameter.landAreaParamOne'></el-input>
 					</el-form-item>
@@ -275,7 +345,7 @@
 				拆迁所在地的商品住宅平均价:
 			</div>
 			<div class="form">
-				<el-form disabled>
+				<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"'>
 					<el-form-item label="商品住宅平均价格-壹" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
 						<el-input autocomplete="off" v-model='parameter.currencyParamOne'><template slot="append">元</template>
 						</el-input>
@@ -284,7 +354,7 @@
 						<el-input autocomplete="off" v-model='parameter.currencyParamThree'><template slot="append">元</template></el-input>
 					</el-form-item>
 				</el-form>
-				<el-form disabled>
+				<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"'>
 					<el-form-item label="商品住宅平均价格-贰" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
 						<el-input autocomplete="off" v-model='parameter.currencyParamOne1'><template slot="append">元</template>
 						</el-input>
@@ -293,7 +363,7 @@
 						<el-input autocomplete="off" v-model='parameter.currencyParamThree1'><template slot="append">元</template></el-input>
 					</el-form-item>
 				</el-form>
-				<el-form disabled>
+				<el-form :disabled='authority==1||parameter.wfAnzhiState=="已开启"'>
 					<el-form-item label="商品住宅平均价格-叁" class="msg" label-width="160px" prop="projectCode" style="width: 33%;">
 						<el-input autocomplete="off" v-model='parameter.currencyParamOne2'><template slot="append">元</template>
 						</el-input>
@@ -305,12 +375,12 @@
 			</div>
 			</div>
 			</div>
-		</div>
-		<div class="Basic-left">
+			</div>
 		</div>
 		<div class="tk">
 			<el-dialog title="安置范围" :visible.sync="Range" width="672px" :modal-append-to-body="false">
 				<div class="branch">
+					
 					<p>安置范围 :</p>
 					<div class="recordRange">
 						<ul>
@@ -318,6 +388,7 @@
 						</ul>
 					</div>
 				</div>
+				
 			</el-dialog>
 		</div>
 	</div>
@@ -330,42 +401,92 @@
 		components: {},
 		data() {
 			return {
+				planLibraryId:'基础信息',
+				
 				Range:false,
 				adtarange:[],
 				Rangeindex:'',
-				candidate:[],//地段等级候选项
+				
 				opinion:'',//退回意见
 				DatabevelParam:'',
 				DatanonResidentialCurrencyParamOne:'',
+				
+				candidate:[],//地段等级候选项
+				placementModes:[],//安置方式选项
+				placementindex:0,
+				
+				scopeType:'',
+				
+				householdprefix:[],//征迁户前缀
 				//参数
 				parameter:{
 					id:'',
+					numberPrefix:'',//征迁户编号前缀
 					sectionGradeParamOne:'',//地段等级-一类地段
-					sectionGradeParamTwo:'',//地段等级-二类地段
-					sectionGradeParamThree:'',//地段等级-三类地段
-					sectionGradeParamFour:'',//地段等级-四类地段
+					// sectionGradeParamTwo:'',//地段等级-二类地段
+					// sectionGradeParamThree:'',//地段等级-三类地段
+					// sectionGradeParamFour:'',//地段等级-四类地段
 					bevelParam:0.4,//斜面结构屋计算参数,默认40%=0.4
 					transitionFeeParamOne:10,//过渡费-面积<=60,默认:10元/月
 					transitionFeeParamTwo:8,//过渡费-60<面积<=90,默认:8元/月
 					transitionFeeParamThree:7,//过渡费-90<面积<=150,默认:7元/月
 					transitionFeeParamFour:6,//过渡费-150<面积<=250,默认:6元/月
 					transitionFeeParamFive:5,//过渡费-面积>250,默认:5元/月
-					transitionDayParamOne:6,//过渡费-过渡补偿时间=默认:6
-					transitionDayParamTwo:24,//过渡费-临时过渡时间=默认:24
+					transitionDayParamOne:24,//过渡费-临时过渡时间=默认:24
+					transitionDayParamTwo:6,//过渡费-过渡补偿时间=默认:6
 					transitionDayParamThree:12,//过渡费-货币补偿时间=默认:12月(货币或房票)
 					movingAllowanceParamOne:1200,//搬家补贴-面积<60,默认:1200元/户
 					movingAllowanceParamTwo:1300,//搬家补贴-60<=面积<90,默认:1300元/户
 					movingAllowanceParamThree:1400,//搬家补贴-90<=面积,默认:1400元/户
 					landAreaParamOne:1.3,//用地面积补差-容积率=默认:1.3
 					landAreaParamTwo:195,//用地面积补差-补偿标准=默认:195元/平方米
-					currencyParamOne:'',//货币或房票-商品住宅平均价格
-					currencyParamTwo:'',//货币或房票-基本造价
+					currencyParamOne:'',//货币或房票-商品住宅平均价格-1
+					currencyParamTwo:'',//货币或房票-基本造价-1
+					currencyParamOne1:'',//货币或房票-商品住宅平均价格-2
+					currencyParamTwo1:'',//货币或房票-基本造价-2
+					currencyParamOne2:'',//货币或房票-商品住宅平均价格-3
+					currencyParamTwo2:'',//货币或房票-基本造价-3
 					currencyParamThree:'',//货币或房票-土地性质调整费用
 					nonResidentialCurrencyParamOne:10,//非住宅货币安置补偿>一次性经济补贴费=商业用房:市场评估价*默认:10%
-					nonResidentialCurrencyParamTwo:40,//非住宅货币安置补偿>一次性经济补贴费=工业用房:建筑面积每平米*默认:400元
+					nonResidentialCurrencyParamTwo:400,//非住宅货币安置补偿>一次性经济补贴费=工业用房:建筑面积每平米*默认:400元
 					monetaryRewardParam:200,// 货币奖励-被拆迁房屋合法建筑面积默认:200每平方
 					nonResidentialCurrencyParamThree:350,//非住宅货币安置补偿>一次性经济补贴费=办公和其他非住宅房屋:建筑面积每平米*默认:350元
-					resettlementPlan:'',//房屋征收补偿安置方案
+					relocationProvideTime:''//提供迁建安置用地时间-迁建协议需要用到
+				},
+				//默认值
+				Default:{
+					id:'',
+					numberPrefix:'',//征迁户编号前缀
+					sectionGradeParamOne:'',//地段等级-一类地段 现在只有一个地段等级
+					// sectionGradeParamTwo:'',//地段等级-二类地段
+					// sectionGradeParamThree:'',//地段等级-三类地段
+					// sectionGradeParamFour:'',//地段等级-四类地段
+					bevelParam:0.4,//斜面结构屋计算参数,默认40%=0.4
+					transitionFeeParamOne:10,//过渡费-面积<=60,默认:10元/月
+					transitionFeeParamTwo:8,//过渡费-60<面积<=90,默认:8元/月
+					transitionFeeParamThree:7,//过渡费-90<面积<=150,默认:7元/月
+					transitionFeeParamFour:6,//过渡费-150<面积<=250,默认:6元/月
+					transitionFeeParamFive:5,//过渡费-面积>250,默认:5元/月
+					transitionDayParamOne:24,//过渡费-临时过渡时间=默认:24月
+					transitionDayParamTwo:6,//过渡费-过渡补偿时间=默认:6月
+					transitionDayParamThree:12,//过渡费-货币补偿时间=默认:12月(货币或房票)
+					movingAllowanceParamOne:1200,//搬家补贴-面积<60,默认:1200元/户
+					movingAllowanceParamTwo:1300,//搬家补贴-60<=面积<90,默认:1300元/户
+					movingAllowanceParamThree:1400,//搬家补贴-90<=面积,默认:1400元/户
+					landAreaParamOne:1.3,//用地面积补差-容积率=默认:1.3
+					landAreaParamTwo:195,//用地面积补差-补偿标准=默认:195元/平方米
+					currencyParamOne:'',//货币或房票-商品住宅平均价格-1
+					currencyParamTwo:'',//货币或房票-基本造价-1
+					currencyParamOne1:'',//货币或房票-商品住宅平均价格-2
+					currencyParamTwo1:'',//货币或房票-基本造价-2
+					currencyParamOne2:'',//货币或房票-商品住宅平均价格-3
+					currencyParamTwo2:'',//货币或房票-基本造价-3
+					currencyParamThree:'',//货币或房票-土地性质调整费用
+					nonResidentialCurrencyParamOne:10,//非住宅货币安置补偿>一次性经济补贴费=商业用房:市场评估价*默认:10%
+					nonResidentialCurrencyParamTwo:400,//非住宅货币安置补偿>一次性经济补贴费=工业用房:建筑面积每平米*默认:400元
+					monetaryRewardParam:200,// 货币奖励-被拆迁房屋合法建筑面积默认:200每平方
+					nonResidentialCurrencyParamThree:350,//非住宅货币安置补偿>一次性经济补贴费=办公和其他非住宅房屋:建筑面积每平米*默认:350元
+					relocationProvideTime:''//提供迁建安置用地时间-迁建协议需要用到
 				}
 			}
 		},
@@ -378,12 +499,125 @@
 			 	this.DatanonResidentialCurrencyParamOne=this.parameter.ResidentialCurrencyParamOne*100
 			 }
 			 if(typeof(this.parameter.sectionGradeParamOne)=='string'){
-			 				 this.candidate=this.parameter.sectionGradeParamOne.split(",")
+				 this.candidate=this.parameter.sectionGradeParamOne.split(",")
+				 if(this.candidate[0]==''){this.candidate.shift()}
+			 }else{
+				 this.parameter.sectionGradeParamOne=''
 			 }
+			 if(typeof(this.parameter.placementMode)=='string'){
+			 		this.placementModes=this.parameter.placementMode.split(",")
+			 }
+				if(this.parameter.placementMode.indexOf('货币') != -1||this.parameter.placementMode.indexOf('混合') != -1){
+					this.placementindex=1
+					if(this.parameter.placementMode.indexOf('迁建') != -1){
+						this.placementindex=3
+					}
+				}else if(this.parameter.placementMode.indexOf('迁建') != -1){
+						this.placementindex=2
+				}else{
+					this.placementindex=0
+				}
+			 this.getStrtte()
 		},
 		methods: {
+			preserve(row){
+				if(row==1){
+					if(this.candidate[0]==''){this.candidate.shift()}
+					this.parameter.sectionGradeParamOne=this.candidate.toString()
+				}else{
+					this.parameter.placementMode=this.placementModes.toString()
+					if(this.parameter.placementMode.indexOf('货币') != -1||this.parameter.placementMode.indexOf('混合') != -1){
+						this.placementindex=1
+						if(this.parameter.placementMode.indexOf('迁建') != -1){
+							this.placementindex=3
+						}
+					}else if(this.parameter.placementMode.indexOf('迁建') != -1){
+							this.placementindex=2
+					}else{
+						this.placementindex=0
+					}
+				}
+			},
+			//获取街道对应街道前缀
+			getStrtte(){
+				this.$http.get('api/auth/householdprefix/list?projectId='+this.strpdetails.bussiness.id,null).then((res) => {
+					if (res.status == 200 && res.data.code == 0) {
+						var data=res.data.list
+						data.forEach((iten,index)=>{
+							data[index].limit=true
+						})
+						this.getnamestreet(data)
+					} else {
+						this.$message.error("获取失败!");
+					}
+				})
+			},
+			//获取用户登录的街道权限
+			getnamestreet(row){
+				this.$http.get('api/v1/pri/userInfo', null).then((res) => {
+					if (res.status == 200 && res.data.code == 0) {
+						if(res.data.user.street){
+							var data=res.data.user.street.split(",")
+							data.forEach((item)=>{
+								row.forEach((iten,index)=>{
+									if(item==iten.street){
+										row[index].limit=false
+									}
+								})
+							})
+							this.householdprefix=row
+						}else{
+							this.$message.error('请先把账号绑定街道!');
+						}
+					} else {
+						this.$message.error('失败!');
+					}
+				})
+			},
+			revisePrefix(row,index){
+				var data={
+					id:row.id,
+					numberPrefix:this.householdprefix[index].numberPrefix
+				}
+				this.$http.post('api/auth/householdprefix/update',data).then((res) => {
+					if (res.status == 200 && res.data.code == 0) {
+						this.getStrtte()
+						this.$message.success('修改成功');
+					} else {
+						this.$message.error("修改失败!");
+					}
+				})
+			},
+			money(){
+				this.scopeType='混合'
+				this.Range = true
+				this.getRange()
+			},
+			move(){
+				this.scopeType='迁建'
+				this.Range = true
+				this.getRange()
+			},
+			addRange(){
+				var data={
+					projectId:'',
+					fourBoundaries:'',
+					scopeType:''
+				}
+				data.projectId=this.strpdetails.bussiness.id
+				data.fourBoundaries=this.Rangeindex
+				data.scopeType=this.scopeType
+				this.$http.post('api/auth/resettlementscope/save',data).then((res) => {
+					if (res.status == 200 && res.data.code == 0) {
+						this.getRange()
+						this.$message.success('新增成功');
+					} else {
+						this.$message.error("新增失败!");
+					}
+				})
+			},
 			getRange(){
-				this.$http.get('api/auth/resettlementscope/list?projectId='+this.strpdetails.bussiness.id,null).then((res) => {
+				this.$http.get('api/auth/resettlementscope/list?projectId='+this.strpdetails.bussiness.id+'&scopeType='+this.scopeType,null).then((res) => {
 					if (res.status == 200 && res.data.code == 0) {
 						this.Rangeindex=''
 						this.adtarange=res.data.list
@@ -392,16 +626,122 @@
 					}
 				})
 			},
+			deleteRange(ros){
+				var data=[]
+				data.push(ros)
+				this.$confirm('确定要删除安置范围吗?').then(_ => {
+					this.$http.post('api/auth/resettlementscope/delete',data).then((res) => {
+						if (res.status == 200 && res.data.code == 0) {
+							this.getRange()
+							this.$message.success('删除成功');
+						} else {
+							this.$message.error("删除失败!");
+						}
+					})
+				})
+			},
 			//退回意见
 			getopinion(res) {
 				this.opinion = res
+			},
+			recovery(){
+				this.$confirm('确定要重置参数吗?').then(_ => {
+					this.parameter=this.Default
+					this.placementMode=[]
+					this.candidate=[]
+					this.preservation(0)
+				})
+			},
+			preservation(row){
+				this.parameter.bevelParam=this.DatabevelParam*0.01
+				this.parameter.ResidentialCurrencyParamOne=this.DatanonResidentialCurrencyParamOne*0.01
+				this.$http.post('api/auth/projectformal/update', this.parameter).then((res) => {
+					if (res.status == 200 && res.data.code == 0) {
+						this.candidate=this.parameter.sectionGradeParamOne.split(",")
+						if(row==0){
+							this.$message.success('重置成功');
+						}else{
+							this.$message.success('保存成功');
+						}
+						this.DatabevelParam=this.parameter.bevelParam*100
+						this.DatanonResidentialCurrencyParamOne=this.parameter.ResidentialCurrencyParamOne*100
+					} else {
+						this.$message.error("保存失败!");
+					}
+				})
 			}
 		}
 	}
 </script>
 
 <style scoped lang="less">
+	.button-background{
+		
+	}
+	.PlanningLibrary{
+		height: 41px;
+		display: flex;
+		padding: 0 10px;
+		border-bottom: 2px solid #dedede;
+		justify-content: space-between;
+		.PlanningLibrary-right{
+			display: flex;
+			div {
+				height: 41px;
+				line-height: 44px;
+				margin: 0 20px;
+				font-size: 16px;
+				color: #999;
+				font-weight: 500;
+				cursor: pointer;
+			}
+			.LeftCheck {
+				border-bottom: 2px solid #167aa1;
+				color: #072a38;
+			}
+		}
+		.PlanningLibrary-left{
+			display: flex;
+			div{
+				padding: 8px;
+				font-size: 13px;
+				cursor: pointer;
+				width: 85px;
+				height: 32px;
+				box-sizing: border-box;
+				margin: 5px 0;
+				margin-right: 10px;
+				line-height: 14px;
+				text-align: center;
+				border: 1px solid #d6d6d6;
+				border-radius: 5px;
+				background: #f5f6f8;
+				color: #167aa1;
+				font-weight: 700;
+			}
+		}
+	}
+	
 	.form{
+		.ccc{
+			width: 23%;
+			border: 1px solid #dcdfe6;
+			border-bottom: 0;
+			box-sizing: border-box;
+			padding:15px 0;
+		}
+		.pax{
+			display: flex;
+			justify-content: space-between;
+			li{
+				width: 23%;
+			}
+		}
+		/deep/.el-checkbox-group{
+			display: flex;
+			justify-content: space-between;
+			width: 100%;
+		}
 		.addteda{
 			/deep/.el-input-group__append{
 					background: #47a1c4;
@@ -425,10 +765,15 @@
 			height: 100%;
 			border-right: 2px solid #dedede;
 		}
-		.Out{
+		.Basic-left{
+			width: 450px;
+			height: 100%;
+		}
+		.overf{
 			width: 100%;
-			height: calc(100% - 300px);
-			overflow-y: auto;
+			// height: 100%;
+			height: calc(100% - 43px);
+			overflow: auto;
 			& {
 				scrollbar-width: thin;
 				scrollbar-color: #c1c1c1 #eee;
@@ -449,6 +794,10 @@
 				&:active {
 					background-color: #787878;
 				}
+		}
+		.Out{
+			width: 100%;
+			min-width: 1200px;
 			}
 		.Outside{
 			display: flex;
@@ -473,6 +822,9 @@
 			.form{
 				width: calc(100% - 200px);
 				padding: 0;
+				/deep/.el-checkbox.is-bordered{
+					margin: 0 70px;
+				}
 				/deep/.el-checkbox.is-bordered.is-checked{
 					border-color: #439dc1;
 				}
@@ -486,6 +838,12 @@
 				/deep/ .el-checkbox__input.is-checked + .el-checkbox__label{
 					color: #439dc1;
 				}
+				/deep/.el-checkbox.is-bordered.is-disabled{
+					border-color: #dcdcdc ;
+				}
+				/deep/.el-checkbox__input.is-disabled + span.el-checkbox__label{
+					border-color: #dcdcdc ;
+				}
 			}
 		}
 		}

+ 32 - 12
src/components/subject/ResettlementManagement/CollectiveResettlement/CollectiveResettlementSurvey.vue

@@ -64,8 +64,24 @@
 								<span>总金额</span>
 							</div>
 						</div>
-						<div class="arrange-item"></div>
-						<div class="arrange-item"></div>
+						<div class="arrange-item">
+							<div class="img">
+								<img src="@/assets/ResettlementManagement/momery_ont.png" alt="" />
+							</div>
+							<div class="text">
+								<div>{{transitionAssemble.transitionCompletedSum}}户</div>
+								<span>已过渡</span>
+							</div>
+						</div>
+						<div class="arrange-item">
+							<div class="img">
+								<img src="@/assets/ResettlementManagement/momery_tow.png" alt="" />
+							</div>
+							<div class="text">
+								<div>{{transitionAssemble.inTransitionSum}}户</div>
+								<span>过渡中</span>
+							</div>
+						</div>
 					</div>
 					<div class="right-right">
 						<div id="chart3" ref="chart3"></div>
@@ -77,7 +93,7 @@
 				<div class="left" style="border-right:1px solid #e7e7e7">
 					<span class="circle"></span>安置列表
 				</div>
-				<div class="right"><span class="circle"></span>过列表</div>
+				<div class="right"><span class="circle"></span>过列表</div>
 			</div>
 			<!-- 表格内容区域 -->
 			<div class="survey-table">
@@ -140,7 +156,7 @@
 
 							<div class="content-item">{{ item.transitionCompleted }}</div>
 
-							<div class="content-item">{{ item.transitionFee }}</div>
+							<div class="content-item red">{{ item.transitionFee }}</div>
 						</div>
 					</div>
 				</div>
@@ -178,7 +194,7 @@
 					},
 					{
 						id: 3,
-						img: require("../../../../assets/ResettlementManagement/survey_four.png"),
+						img: require("../../../../assets/ResettlementManagement/survey_part.png"),
 						num: 0,
 						name: "部分安置",
 						AttributeName: 'partResettlementSum'
@@ -769,11 +785,11 @@
 			getchart3() {
 				var colorLine = ["#5b90fc", "#bcd3fc"]
 				var data = [{
-						name: '已过',
+						name: '已过',
 						value: this.transitionAssemble.transitionCompletedSum
 					},
 					{
-						name: '过中',
+						name: '过中',
 						value: this.transitionAssemble.inTransitionSum
 					}
 				]
@@ -799,13 +815,14 @@
 							center: ["50%", "50%"],
 							hoverAnimation: false,
 							label: {
-								width: 97,
+								// width: 97,
 								height: 28,
 								lineHeight: 28,
 								color: "#fff",
 								borderRadius: 4,
 								backgroundColor: "#3a6ee8",
-								position: "inside",
+								padding:[0,8],
+								// position: "inside",
 								show: true,
 								formatter: `{b}:{c|▼}{d}%`,
 								rich: {
@@ -817,9 +834,10 @@
 								}
 							},
 							labelLine: {
-								show: false
+								show: false,
+								length:-56,
 							},
-							// minShowLabelAngle: 0.01,
+							minShowLabelAngle: 0.01,
 							data: data
 						}]
 					}; //{}内写需要图表的各种配置,可以在官方案例中修改完毕后复制过来
@@ -1042,7 +1060,9 @@
 					color: #666666;
 					font-size: 14px;
 					border-bottom: 1px solid #efecec;
-
+					.red{
+						color: #FF4500;
+					}
 					.content-item {
 						width: 12.5%;
 						text-align: center;

+ 24 - 4
src/components/subject/projectplan/CollectiveLandAcquisition/loadingmap.vue

@@ -1,6 +1,16 @@
 <template>
 	<div class="app">
 		<div class='picA'>
+			<div class='button-background'>
+				<el-upload
+					class="enterBtn"
+					action=""
+					:show-file-list="false"
+					:auto-upload="false"
+					:on-change="enterBtn">
+					<el-button slot="trigger" size="small">导入红线图</el-button>
+				</el-upload>
+			</div>
 			<mapOpenlayers ref="map"></mapOpenlayers>
 		    <div class='picB'>
 				<Imgopenseadragon style="width: calc(100% - 16px);z-index: 99;background: #fff;left: 16px;" :strpdetails='strpdetails'></Imgopenseadragon>
@@ -30,11 +40,14 @@
 			}, 500)
 		},
 		watch: {},
-		methods: {}
+		methods: {
+			enterBtn(){},
+		}
 	}
 </script>
 
 <style scoped lang="less">
+	// @maxwidth:calc(100vh - 50px);
 	.app{
 		width: 100%;
 		height: 100%;
@@ -78,7 +91,7 @@
 	    left: 0px;
 	    max-width: 100%;
 	    min-width: 280px;
-	    width: 350px;
+	    width: 100vh;
 	    cursor: move;
 	    transform: scaleY(200) rotate(180deg);
 	    transform-origin: center center;
@@ -89,13 +102,20 @@
 	        width: 0;
 	    }
 	    30% {
-	        width: 350px;
+	        width: 100vh;
 	    }
 		60% {
 		    width: 0px;
 		}
 	    100% {
-	        width: 350px;
+	        width: 100vh;
 	    }
 	}
+	.button-background{
+	    position: absolute;
+	    left:45px;
+	    top:20px;
+	    display:inline-block;
+		z-index: 1;
+	}
 </style>

+ 5 - 2
src/components/subject/projectplan/CollectiveLandAcquisition/relocatehousehold.vue

@@ -191,10 +191,13 @@
 										v-if="switchi==1">腾房</el-button>
 
 									<el-button type="text" size="small" :disabled='scope.row.cancellationState=="已注销"'
-										@click="operation(scope.row,'注销')" v-if="switchi==2">注销</el-button>
+										@click="operation(scope.row,'注销')" v-if="switchi==2">
+											{{scope.row.cancellationState=="已注销"?'已注销':'注销'}}
+										</el-button>
 
 									<el-button type="text" size="small" :disabled='scope.row.paymentState=="已付款"'
-										@click="datahousehold=scope.row;covercommit=true" v-if="switchi==2">付款
+										@click="datahousehold=scope.row;covercommit=true" v-if="switchi==2">
+											{{scope.row.paymentState=="已付款"?'已付款':'付款'}}
 									</el-button>
 
 									<!-- <el-button type="text" size="small" :disabled='authority==1'

+ 4 - 2
src/components/subject/projectplan/RoomTicket/RoomTicketList.vue

@@ -116,9 +116,11 @@
 								<el-button type="primary" size="small" @click="look(scope.row)">查看</el-button>
 								<el-button type="primary" size="small" @click="sendoperate(scope.row,'打印房票')">打印</el-button>
 								<el-button type="primary" :disabled='scope.row.updateLock=="已变更"||scope.row.writeOffState=="已核销"' 
-								size="small" @click="sendoperate(scope.row,'转让')">变更</el-button>
+								size="small" @click="sendoperate(scope.row,'转让')">
+								{{scope.row.updateLock=="已变更"||scope.row.writeOffState=="已核销"?'已变更':'变更'}}
+								</el-button>
 								<el-button type="primary" :disabled='scope.row.writeOffState=="已核销"' 
-								size="small" @click="sendoperate(scope.row,'核销')">核销</el-button>
+								size="small" @click="sendoperate(scope.row,'核销')">{{scope.row.writeOffState}}</el-button>
 							</template>
 						</el-table-column>
 					</el-table>

+ 76 - 23
src/components/subject/projectplan/RoomTicket/sendRoomTicket.vue

@@ -2,14 +2,14 @@
 	<div class="SignAcontract">
 		<div class="SignAcontract-content">
 			<div class="SignAcontract-content-right">
-				<div class="button-background" @click="control(0)"><el-button :disabled='PlacementMode==1'>上一步</el-button></div>
+				<div class="button-background"><el-button :disabled='PlacementMode==1' @click="control(0)">上一步</el-button></div>
 				<el-steps :active="index" align-center style="width: calc(100% - 212px);">
 				  <el-step title="打印申请书" ></el-step>
 				  <el-step title="打印确认书" ></el-step>
 				  <el-step title="上传资料" ></el-step>
 				  <el-step title="完成" ></el-step>
 				</el-steps>
-				<div class="button-background" @click="control(1)"><el-button>下一步</el-button></div>
+				<div class="button-background"><el-button @click="control(1)">下一步</el-button></div>
 			</div>
 			<div class="SignAcontract-content-lent">
 				<!-- ==============房票申请书============ -->
@@ -175,10 +175,12 @@
 						<ul>
 							<li v-for="(item,index) in peopledata" :key="index">
 								<div>
-									<p><span>使用人:</span><input type="text" v-model='item.name' disabled style="width: 80px;"></p>
-									<p><span>身份证:</span><input type="text" v-model='item.idCard' disabled></p>
-									<p><span>联系电话:</span><input type="text" class="iss" v-model='item.endUserPhone' style="width: 100px;"></p>
-									<p><span>家庭住址:</span><input type="text" class="iss" v-model='item.endUserAddr'></p>
+									<p><span>使用人:</span><input type="text" v-model='item.name'
+									 :disabled='item.id?true:false' :class="item.id?'iss':''" style="width: 80px;"></p>
+									<p><span>身份证:</span><input type="text" v-model='item.idCard'
+									 :disabled='item.id?true:false' :class="item.id?'iss':''"></p>
+									<p><span>联系电话:</span><input type="text" v-model='item.endUserPhone' style="width: 100px;"></p>
+									<p><span>家庭住址:</span><input type="text" v-model='item.endUserAddr'></p>
 								</div>
 								<i class="el-icon-plus" @click="addparameter(item)"></i>
 							</li>
@@ -203,11 +205,11 @@
 							<ul>
 								<li v-for="(item,index) in parameter.members" :key="index">
 									<div>
-										<p><span>使用人: </span><input type="text" v-model='item.endUser' disabled style="width: 80px;"></p>
-										<p><span>身份证: </span><input type="text" v-model='item.endUserIdCard' disabled style="width: 140px;"></p>
-										<p><span>联系电话: </span><input type="text" v-model='item.endUserPhone' disabled style="width: 100px;"></p>
-										<p><span>家庭住址: </span><input type="text" v-model='item.endUserAddr'disabled></p>
-										<p><span style="width: 85px;">房票金额(元): </span><input type="text" v-model='item.roomTicketAmount' class="iss" style="width: 80px;"></p>
+										<p><span>使用人: </span><input type="text" class="iss" v-model='item.endUser' disabled style="width: 80px;"></p>
+										<p><span>身份证: </span><input type="text" class="iss" v-model='item.endUserIdCard' disabled style="width: 140px;"></p>
+										<p><span>联系电话: </span><input type="text" class="iss" v-model='item.endUserPhone' disabled style="width: 100px;"></p>
+										<p><span>家庭住址: </span><input type="text" class="iss" v-model='item.endUserAddr'disabled></p>
+										<p><span style="width: 85px;">房票金额(元): </span><input type="text" v-model='item.roomTicketAmount' style="width: 80px;"></p>
 									</div>
 									<i class="el-icon-minus" @click="deleteparameter(item)"></i>
 								</li>
@@ -329,6 +331,17 @@
 			},
 			//新增房票张数
 			addparameter(row){
+				if(row.name==''||row.idCard==''){
+					var data=[]
+					if(row.name==''){
+						data.push('使用人')
+					}
+					if(row.idCard==''){
+						data.push('身份证')
+					}
+					this.$message.error('请先填写【'+data+'】!')
+					return
+				}
 				var data={
 						memberId:row.id,
 						endUser:row.name,
@@ -352,6 +365,22 @@
 				this.parameter.members.splice(sss,1)
 			},
 			saveApplications(){
+				var type=false
+				var data=[]
+				if(this.parameter.members.length==0){
+					this.$message.error('请先填写参数!')
+					return
+				}
+				this.parameter.members.forEach((item,index)=>{
+					if(!item.roomTicketAmount){
+						data.push(item.endUser)
+						type=true
+					}
+				})
+				if(type){
+					this.$message.error('请填写【'+ data +'】的房票金额')
+					return
+					}
 				this.parameter.householdId=this.datahousehold.id,
 				this.$http.post('api/auth/roomticket/saveApplications',this.parameter).then((res) => {
 					if (res.status == 200 && res.data.code == 0) {
@@ -366,24 +395,43 @@
 			},
 			control(row){
 					var Positive =0
+					var Staging=this.index
 					if(row){
-						this.index++
+						Staging++
 						Positive =0
 					}else{
-						this.index--
+						Staging--
 						Positive =1
 					}
-					if(this.index<=1){
+					if(Staging<=1){
 						this.index=1
-						if(Positive==1){this.addagreement(0)}
-					}else if(this.index==2){
-						if(Positive==1){this.addagreement(1)}
+						this.addagreement(0,Positive)
+					}else if(Staging==2){
+						if(Positive==0){
+							if(this.parameter.members.length==0){
+								this.$message.error('请先填写参数!')
+								return
+							}
+						}
+						this.addagreement(1,Positive)
 						this.getHouseholdList()
-					}else if(this.index==3){
-						this.addagreement(2)
+					}else if(Staging==3){
+						this.addagreement(2,Positive)
 						this.getUid()
 						this.getgetexaminefile()
-					}else if(this.index>=4){
+					}else if(Staging>=4){
+						var zt=false
+						var dale=[]
+						this.fileListindex.forEach((item)=>{
+							if(item.tree.length==0){
+								zt=true
+								dale.push(item.name)
+							}
+						})
+						if(zt){
+							this.$message.error('请上传【'+ dale +'】资料')
+							return
+						}
 						this.effectuate()
 						this.index=3
 					}
@@ -392,11 +440,14 @@
 			async gethousehoid(row) {
 				await this.$http.get('api/auth/householdMember/list?householdId=' + this.datahousehold.id, null).then((res) => {
 					if (res.status == 200 && res.data.code == 0) {
+						var newhus={name:'',idCard:'',endUserPhone:'',endUserAddr:''}
 						this.peopledata = res.data.list
+						this.peopledata.push(newhus)
 						this.peopledata.forEach((item,index)=>{
 							this.peopledata[index].endUserAddr=''
 							this.peopledata[index].endUserPhone=''
 						})
+						
 						this.getHouseholdList()
 						this.parameterControl=true
 					} else {
@@ -404,13 +455,14 @@
 					}
 				})
 			},
-			addagreement(row){
+			addagreement(row,type){
 				var data=['申请书','结算单','上传资料']
 				this.datahousehold.roomTicketState=data[row]
 				this.$http.post('api/auth/householdcx/update',this.datahousehold).then((res) => {
 					if (res.status == 200 && res.data.code == 0) {
 						// this.agreementControl = false
 						this.datahousehold=res.data.data
+						if(type){if(this.index!=1){this.index--}}else{this.index++}
 					} else {
 						this.$message.error("失败!");
 					}
@@ -666,10 +718,11 @@
 						p{
 							display: flex;
 							input{
-								border: 1px solid #ccc;
+								border: 1px solid #000;
 							}
 							.iss{
-								border: 1px solid #000;
+								border: 1px solid #ccc;
+								cursor: not-allowed;
 							}
 							span{
 								width: 65px;

+ 40 - 13
src/components/subject/projectplan/RoomTicket/unissued.vue

@@ -441,7 +441,7 @@
 										<div class="table-buttom-right" style="margin: 0;">
 											<p>
 												售卖方(签章):
-											</p>
+											</p> 
 											<ul style="margin-top: 4.5rem;display: block;width: 35%;">
 												<li style="width: 100%;text-align: end;margin-bottom: 0.5rem;">经办人:</li>
 												<li style="width: 100%;text-align: end;">审批人:</li>
@@ -566,6 +566,24 @@
 		methods: {
 			//保存
 			postupdateRoomTicket(){
+				var type=false
+				var data=[]
+				if(!this.assigneeName){
+					type=true
+					data.push('受让人')
+				} 
+				if(!this.assigneeIdCard){
+					type=true
+					data.push('身份证')
+				}
+				if(!this.assigneeDate){
+					type=true
+					data.push('转让日期')
+				}
+				if(type==true){
+					this.$message.error("请填写【"+data+"】!");
+					return
+					}
 				var data={
 					id:this.Roomdata.id,
 					assigneeName:this.assigneeName,
@@ -612,22 +630,31 @@
 			},
 			control(row){
 					var Positive =0
+					var Staging=this.index
 					if(row){
-						this.index++
+						Staging++
 						Positive =0
 					}else{
-						this.index--
+						Staging--
 						Positive =1
 					}
-					if(this.index<=1){
+					if(Staging<=1){
 						this.index=1
-						this.addagreement(0)
-					}else if(this.index==2){
-						this.addagreement(1)
+						this.addagreement(0,Positive)
+					}else if(Staging==2){
+						this.addagreement(1,Positive)
 						// this.getUid()
 						this.getgetexaminefile()
-					}else if(this.index>=3){
-						this.addagreement(2)
+					}else if(Staging>=3){
+						var zt=false
+						this.fileListindex.forEach((item)=>{
+							if(item.tree.length==0){zt=true}
+						})
+						if(zt){
+							this.$message.error('请上传【转让申请书】')
+							return
+						}
+						this.addagreement(2,Positive)
 						this.$emit('detaoperate');
 						this.index=2
 					}
@@ -643,18 +670,18 @@
 				})
 			},
 			//转让房票
-			addagreement(row){
-				var type=['变更申请','上传资料','已变更']
+			addagreement(row,type){
+				var datl=['变更申请','上传资料','已变更']
 				var data={
 					id:this.Roomdata.id,
 					assigneeName:this.assigneeName,
 					assigneeIdCard:this.assigneeIdCard,
 					assigneeDate:this.assigneeDate,
-					updateLock:type[row]
+					updateLock:datl[row]
 				}
 				this.$http.post('api/auth/roomticket/updateState',data).then((res) => {
 					if (res.status == 200 && res.data.code == 0) {
-						// this.agreementControl = false
+						if(type){if(this.index!=1){this.index--}}else{this.index++}
 						this.$message.success('成功!');
 					} else {
 						this.$message.error("失败!");

+ 3 - 0
static/css/one.less

@@ -1,3 +1,6 @@
+// @mainBody : #439dc1;//主体色
+// @background:#fff;//背景色
+// @cheek: #dedede;//边框
 //流程详情布局
 .Demolition{
 		width: 100%;

+ 9 - 0
static/css/two.less

@@ -0,0 +1,9 @@
+// 默认的主题颜色
+@primaryColor: var(--primaryColor, #000);
+@primaryTextColor: var(--primaryTextColor, green);
+// 导出变量
+:export {
+  name: 'less';
+  primaryColor: @primaryColor;
+  primaryTextColor: @primaryTextColor;
+}

+ 13 - 0
vue.config.js

@@ -0,0 +1,13 @@
+const path = require("path");
+module.exports = {
+  lintOnSave: false,
+  pluginOptions: {
+    "style-resources-loader": {
+      preProcessor: "less",
+      patterns: [
+        // 这个是加上自己的路径,不能使用(如下:alias)中配置的别名路径
+        path.resolve(__dirname, "./static/css/tow.less"),
+      ],
+    },
+  },
+};