You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

602 lines
26 KiB

<!-- 项目信息 -->
<view class="content">
<view class="content-title">项目信息</view>
<view class="content-line"></view>
<view class="content-list">
<!-- <view class="content-address">
<picker bindchange="bindprojectList" range="{{projectList}}" range-key='code'>
<view class="content-picker">
<text style="color: red;">*</text>产品编号
<view style="flex: 1; margin-left: 20rpx;">
{{projectCode}}
</view>
<image src="/img/arrow.png" class="content-img-right" />
</view>
</picker>
</view> -->
<text style="color: red;">*</text>
产品编号
<text style="margin-left: 20rpx;">{{projectCode}}</text>
</view>
<view class="content-line"></view>
<view class="content-list">
<!-- <text style="color: red;">*</text>
产品名称
<text style="margin-left: 20rpx;">{{projectName}}</text> -->
<view class="content-address">
<picker bindchange="bindprojectList" range="{{projectList}}" range-key='name'>
<view class="content-picker">
<text style="color: red;">*</text>产品名称
<view style="flex: 1; margin-left: 20rpx;">
{{projectName}}
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
</view>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
所属项目公司
<view style="flex: 1; margin-left: 20rpx;">{{companyName}}</view>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;visibility: hidden;">*</text>
租金支付周期
<view style="flex: 1; margin-left: 20rpx;" wx:if="{{paycycle==1}}">按月支付</view>
<view style="flex: 1; margin-left: 20rpx;" wx:if="{{paycycle==2}}">按季支付</view>
<view style="flex: 1; margin-left: 20rpx;" wx:if="{{paycycle==3}}">按年支付</view>
</view>
<view class="content-line"></view>
</view>
<!-- 业主信息 -->
<view class="content">
<view class="content-title">业主信息</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
业主姓名
<input type="text" class="content-input" placeholder="请输入业主姓名" model:value="{{name}}" />
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
联系电话
<input type="text" class="content-input" placeholder="请输入联系电话" model:value="{{phone}}" />
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
身份证号
<input type="text" class="content-input" placeholder="请输入身份证号" model:value="{{idCard}}" />
</view>
<view class="content-line"></view>
<view class="content-list">
<view class="content-address">
<picker mode="region" bindchange="bindRegionChange">
<view class="content-picker">
<text style="color: red;">*</text>安装地址
<view style="flex: 1; margin-left: 20rpx;" wx:if="{{region[0]&&region[1]&&region[2]}}">
{{region[0]}}{{region[1]}}{{region[2]}}
</view>
<view style="flex: 1; margin-left: 20rpx;color: gray;" wx:else>
请选择地址
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
<view class="content-inputs">
<input type="text" class="content-input" placeholder="请输入安装地址" bindinput="getNowLocationDetails" model:value="{{address}}" />
<!-- <image src="/img/local.png" class="content-local" bindtap="getNowLocation" /> -->
</view>
</view>
</view>
<!-- <view class="content-line"></view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
经纬度信息
<view class="content-text">{{longitudeAndLongitude}}</view>
</view> -->
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
身份证照片
<van-uploader style="margin-left: 20rpx;" file-list="{{ photo.idCardFrontFileList }}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="0" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/id-card-1.png" class="id-card-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{ photo.idCardBackFileList }}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="1" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/id-card-0.png" class="id-card-img" />
</van-uploader>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
开户银行
<input type="text" class="content-input" placeholder="请输入开户银行" model:value="{{bankName}}" />
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red; ">*</text>
银行账号
<input type=" text" class="content-input" placeholder="请输入银行账号" model:value="{{bankCode}}" />
</view>
</view>
<!-- 房屋信息 -->
<view class="content">
<view class="content-title">房屋信息</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
屋顶类型
<label class="content-radio">
<radio-group bindchange="radioChangeRoofType">
<radio value="平屋顶" checked="{{roofType==='平屋顶'}}" />平屋顶
<radio value="斜屋顶" checked="{{roofType==='斜屋顶'}}" />斜屋顶
<radio value="庭院" checked="{{roofType==='庭院'}}" />庭院
</radio-group>
</label>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
拍摄方式
<label class="content-radio">
<radio-group bindchange="radioChangeShooting">
<radio value="2" checked="{{shootType==2}}" />手机拍摄
<radio value="1" checked="{{shootType==1}}" />无人机拍摄
</radio-group>
</label>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
房屋照片
<!-- 无人机拍摄 -->
<view class="content-img-box" wx:if="{{shootType==1}}">
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneOne}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="2" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-fly-1.png" class="content-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneTwo}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="3" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-fly-2.png" class="content-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneThree}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="4" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-add.png" class="content-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneFour}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="5" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-add.png" class="content-img" />
</van-uploader>
</view>
<!-- 手机拍摄 -->
<view class="content-img-box" wx:if="{{shootType==2}}">
<!-- 移除东北 -->
<!-- <van-uploader file-list="{{photo.phoneFive}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="6" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="/img/img-phone-1.png" class="content-img" />
</van-uploader> -->
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneSix}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="7" preview-size="150rpx" preview-image preview-full-image max-count="1" accept="image" capture="{{capture}}">
<image src="../../img/img-phone-2.png" class="content-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneSeven}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="8" preview-size="150rpx" preview-image preview-full-image max-count="1" accept="image" capture="{{capture}}">
<image src="../../img/img-phone-3.png" class="content-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneEight}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="9" preview-size="150rpx" preview-image preview-full-image max-count="1" accept="image" capture="{{capture}}">
<image src="../../img/img-phone-4.png" class="content-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneNine}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="10" preview-size="150rpx" preview-image preview-full-image max-count="1" accept="image" capture="{{capture}}">
<image src="../../img/img-add.png" class="content-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneTen}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="11" preview-size="150rpx" preview-image preview-full-image max-count="1" accept="image" capture="{{capture}}">
<image src="../../img/img-add.png" class="content-img" />
</van-uploader>
</view>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
外观照片
<!-- <van-uploader style="margin-left: 20rpx;" file-list="{{photo.outwardHousePhone}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="18" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-outward.png" class="content-img" />
</van-uploader> -->
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.inwardHousePhone}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="19" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-inside.png" class="content-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.roofHousePhone}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="20" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-roof.png" class="content-img" />
</van-uploader>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
屋顶视频
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneVideo}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" accept="video" preview-size="150rpx" max-duration="30" data-type="12" preview-image preview-full-image max-count="1">
<image src="../../img/img-base.png" class="content-img" />
</van-uploader>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
房产证
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.phoneHouse}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="13" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-base.png" class="content-img" />
</van-uploader>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
踏勘记录表
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.surveyPhoneOne}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="14" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-base.png" class="content-img" />
</van-uploader>
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.surveyPhoneTwo}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="15" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-add.png" class="content-img" />
</van-uploader>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
备案文件
<van-uploader style="margin-left: 20rpx;" file-list="{{photo.filingPhone}}" bind:after-read="afteruploadPhotoRead" bind:delete="deleteImg" data-type="17" preview-size="150rpx" preview-image preview-full-image max-count="1">
<image src="../../img/img-base.png" class="content-img" />
</van-uploader>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
并网距离
<input type="text" class="content-input" placeholder="请输入并网距离" model:value="{{deg}}" />
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
方位角
<label class="content-radio">
<radio-group bindchange="radioChangeAzimuth">
<radio value="1" checked="{{azimuth==1}}" />正南
<radio value="2" checked="{{azimuth==2}}" />南偏东
<radio value="3" checked="{{azimuth==3}}" />南偏西
</radio-group>
</label>
<block wx:if="{{azimuth!=1}}">
<input type="text" class="content-input" placeholder="请输入角度" model:value="{{directionDeg}}" />
</block>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
建筑高度
<input type="text" class="content-input" placeholder="请输入建筑高度" model:value="{{height}}" />
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
划转方式
<label class="content-radio">
<radio-group bindchange="radioChangeRepaymentMethod">
<radio value="1" checked="{{repaymentMethod==1}}" />二类卡
<radio value="2" checked="{{repaymentMethod==2}}" />光E宝
<radio value="0" checked="{{repaymentMethod==0}}" />其他
</radio-group>
</label>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
备注
<input type="text" class="content-input" placeholder="请输入备注" model:value="{{remark}}" />
</view>
</view>
<!-- 方案信息 -->
<view class="content">
<view class="content-title">方案信息</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
设计方案
<label class="content-radio">
<radio-group bindchange="radioChangeSolution">
<radio value="1" checked="{{schemeType==1}}" />标准方案
<radio value="2" checked="{{schemeType==2}}" />组合方案
</radio-group>
</label>
</view>
<wxs src="../../../wxs/util.wxs" module="util"></wxs>
<!-- 标准方案 -->
<view wx:if="{{schemeType==1}}">
<view wx:for="{{standardSolutionsList}}" wx:key="index">
<view class="content-line"></view>
<view class="content-list">
<view class="content-address">
<picker bindchange="bindPlanChange" range="{{planList}}" range-key='name' data-index="{{index}}">
<view class="content-picker">
<text style="color: red;">*</text>方案类型
<view style="flex: 1; margin-left: 20rpx;">
{{item.type}}
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
</view>
</view>
<view class="content-list">
<view class="content-address">
<picker mode="selector" bindchange="bindPlanNameChange" range="{{planList[standardSolutionsListIndex].allPlan}}" range-key='name' data-index="{{index}}">
<view class="content-picker">
<text style="color: red;">*</text>方案名称
<view style="flex: 1; margin-left: 20rpx;">
{{item.name}}
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
</view>
</view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
<view style="flex-shrink: 0;">参考图纸</view>
<view style="margin-left:20rpx; color: blue; ">
<view bindtap="openDocument" data-path="{{drawing.path}}" wx:for="{{util.referenceDrawing(item,planList)}}" wx:for-item="drawing" wx:key="index">{{drawing.name}}</view>
</view>
</view>
</view>
</view>
<!-- 组合方案 -->
<view wx:if="{{schemeType==2}}">
<view wx:for="{{combinedSolutionsList}}" wx:key="index">
<view class="content-line"></view>
<view class="content-list">
<view class="content-address">
<picker mode="selector" bindchange="bindCombinationPlanChange" range="{{planList}}" range-key='name' data-index="{{index}}">
<view class="content-picker">
<text style="color: red;">*</text>方案类型
<view style="flex: 1; margin-left: 20rpx;">
{{item.type}}
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
</view>
</view>
<view class="content-list">
<view class="content-address">
<picker mode="selector" bindchange="bindCombinationPlanNameChange" range="{{planList[item.pickerIndex].allPlan}}" range-key='name' data-cindex="{{item.pickerIndex}}" data-index="{{index}}">
<view class="content-picker">
<text style="color: red;">*</text>方案名称
<view style="flex: 1; margin-left: 20rpx;">
{{item.name}}
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
</view>
</view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
<view style="flex-shrink: 0;">参考图纸</view>
<view style="margin-left:20rpx; color: blue;">
<view bindtap="openDocument" data-path="{{drawing.path}}" wx:for="{{util.referenceDrawing(item,planList)}}" wx:for-item="drawing" wx:key="index">{{drawing.name}}</view>
</view>
</view>
<view style="width: 100%; display: flex; justify-content: center; margin-bottom: 20rpx;" wx:if="{{item.addType==1}}">
<text style="color: blue;" bindtap="addSolution">+新增方案</text>
</view>
<view style="width: 100%; display: flex; justify-content: center; margin-bottom: 20rpx;" wx:else>
<text style="color: red;" bindtap="deleteSolution" data-index="{{index}}">删除</text>
</view>
</view>
</view>
<!-- 设计图纸 -->
<view class="content-line"></view>
<view class="content-list">
<text style="color: red;">*</text>
<view style="flex-shrink: 0;">设计图纸</view>
<!-- <text style="color: blue; margin-left: 20rpx;" bindtap="upload">{{designPaper?"已上传,点击可重新上传":"上传"}}</text> -->
<!-- <van-uploader style="margin-left: 20rpx;" file-list="{{photo.designPaper}}" bind:after-read="afteruploadPhotoRead" accept="image" bind:delete="deleteImg" data-type="16" data-index="{{item.index}}" preview-size="150rpx" preview-image preview-full-image max-count="10" multiple>
<image src="../../img/img-base.png" class="content-img" />
</van-uploader> -->
</view>
<view class="txt-upload" style="width: 100%; flex: unset; padding-left: 20rpx; padding-bottom: 1px; display: block;">
<view wx:for="{{photo.designPaper}}" wx:key="childIndex" wx:for-index="childIndex" wx:for-item="child" class="txt-upload-list">
<text bindtap="openDocument" data-path="{{child.name}}">{{util.formartFileName(child.name)}}</text>
</view>
</view>
<!-- 设计方案 -->
<view class="content-line"></view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
设计安装容量
<text style="margin-left: 20rpx;">{{componentNum}}</text>
kW
</view>
<!-- 组件 -->
<view wx:for="{{componentList}}" wx:key="index">
<view class="content-line"></view>
<view class="content-list">
<view class="content-address">
<picker bindchange="bindComponentChange" range="{{componentApiList}}" range-key='model' data-index="{{index}}">
<view class="content-picker">
<text style="color: red;">*</text>组件
<view style="flex: 1; margin-left: 20rpx;">
{{item.model}}<text wx:if="{{item.model}}">Wp</text>
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
</view>
</view>
<view class="content-list">
<text style="color: red;">*</text>
组件数量
<input type="number" class="content-input" placeholder="请输入组件数量" bindinput="inputNum" data-type="1" value="{{item.num}}" data-index="{{index}}" />
<!-- <text style="color: blue;" bindtap="add" data-type="1" wx:if="{{item.addType==1}}">+新增型号</text>
<text style="color: red;" bindtap="delete" data-type="1" data-index="{{index}}" wx:else>删除</text> -->
</view>
</view>
<!-- 逆变器 -->
<view wx:for="{{converterList}}" wx:key="index">
<view class="content-line"></view>
<view class="content-list">
<view class="content-address">
<picker bindchange="bindConverterChange" range="{{converterApiList}}" range-key='model' data-index="{{index}}">
<view class="content-picker">
<text style="color: red;">*</text>逆变器
<view style="flex: 1; margin-left: 20rpx;">
{{item.model}}
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
</view>
</view>
<view class="content-list">
<text style="color: red;">*</text>
逆变器数量
<input type="number" class="content-input" placeholder="请输入逆变器数量" bindinput="inputNum" value="{{item.num}}" data-type="2" data-index="{{index}}" />
<text style="color: blue;" bindtap="add" data-type="2" wx:if="{{item.addType==1}}">+新增型号</text>
<text style="color: red;" bindtap="delete" data-type="2" data-index="{{index}}" wx:else>删除</text>
</view>
</view>
<!-- 并网箱 -->
<view wx:for="{{cagesList}}" wx:key="index">
<view class="content-line"></view>
<view class="content-list">
<view class="content-address">
<picker bindchange="bindCagesChange" range="{{cagesApiList}}" range-key='model' data-index="{{index}}">
<view class="content-picker">
<text style="color: red; visibility: hidden;">*</text>并网箱
<view style="flex: 1; margin-left: 20rpx;">
{{item.model}}
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
</view>
</view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
并网箱数量
<input type="number" class="content-input" placeholder="请输入并网箱数量" bindinput="inputNum" data-type="3" value="{{item.num}}" data-index="{{index}}" />
<text style="color: blue;" bindtap="add" data-type="3" wx:if="{{item.addType==1}}">+新增型号</text>
<text style="color: red;" bindtap="delete" data-type="3" data-index="{{index}}" wx:else>删除</text>
</view>
</view>
<!-- 支架 -->
<view wx:for="{{supportList}}" wx:key="index">
<view class="content-line"></view>
<view class="content-list">
<view class="content-address">
<picker bindchange="bindSupportListChange" range="{{supportListApiList}}" range-key='model' data-index="{{index}}">
<view class="content-picker">
<text style="color: red; visibility: hidden;">*</text>支架
<view style="flex: 1; margin-left: 20rpx;">
{{item.model}}
</view>
<image src="../../img/arrow.png" class="content-img-right" />
</view>
</picker>
</view>
</view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
支架数量
<input type="number" class="content-input" placeholder="请输入支架数量" bindinput="inputNum" data-type="4" value="{{item.num}}" data-index="{{index}}" />
<text style="color: blue;" bindtap="add" data-type="4" wx:if="{{item.addType==1}}">+新增型号</text>
<text style="color: red;" bindtap="delete" data-type="4" data-index="{{index}}" wx:else>删除</text>
</view>
</view>
<view class="content-line"></view>
<view class="content-list">
<text style="color: red; visibility: hidden;">*</text>
方案备注
<input type="text" class="content-input" placeholder="请输入方案备注" model:value="{{solutionRemark}}" />
</view>
</view>
<!-- 空白底 -->
<view class="buttom-margin"></view>
<view class="from-submit-buttom">
<view class="from-submit-buttom-cancle" bindtap="submitFrom" data-type="1">暂存</view>
<view class="from-submit-buttom-confirm" bindtap="submitFrom" data-type="2">提交审核</view>
</view>
<!-- 添加水印画布 -->
<canvas style="position: fixed; top: -10000px; left: -10000px; width: 800px;height: 1000px; " type="2d" id="Canvas"></canvas>