ソースを参照

优化

wulanhaote
庞东旭 2年前
コミット
d0f89d9302
10個のファイルの変更3768行の追加255行の削除
  1. +81
    -4
      src/api/sunVillage_info/fixedAssets.js
  2. +36
    -0
      src/router/index.js
  3. +157
    -46
      src/views/sunVillage_info/fixedAssets.vue
  4. +418
    -55
      src/views/sunVillage_info/fixedAssetsAdd.vue
  5. +517
    -0
      src/views/sunVillage_info/fixedAssetsDetail.vue
  6. +579
    -0
      src/views/sunVillage_info/fixedAssetsEdit.vue
  7. +176
    -81
      src/views/sunVillage_info/information.vue
  8. +498
    -69
      src/views/sunVillage_info/informationAdd.vue
  9. +636
    -0
      src/views/sunVillage_info/informationDetail.vue
  10. +670
    -0
      src/views/sunVillage_info/informationEdit.vue

+ 81
- 4
src/api/sunVillage_info/fixedAssets.js ファイルの表示

@@ -16,12 +16,89 @@ export function contractionList(query) {
params: query
})
}

// 用户密码重置
export function updateUserPwd(data) {
// 新增固定资产
export function addPermanent(data) {
return request({
url: '/system/user/profile/updatePwd',
url: '/asset/permanent/add',
method: 'post',
data: data
})
}
// 查询固定资产详细
export function getPermanent(id) {
return request({
url: '/asset/permanent/get/' + id,
method: 'get'
})
}
// 修改固定资产
export function updatePermanent(data) {
return request({
url: '/asset/permanent/edit',
method: 'post',
data: data
})
}
// 删除固定资产
export function delPermanent(id) {
return request({
url: '/asset/permanent/remove/' + id,
method: 'get'
})
}
//上传全局方法附件
export function commonAttach(data) {
return request({
url: '/common/attach',
method: 'post',
header: { "Content-Type": 'application/x-www-form-urlencoded' },
data: data
})
}
//查询已上传附件
export const attachmentList = (data) => {
return request({
url: '/system/attachment/query',
method: 'get',
params: data
})
}
//删除已上传附件
export function systemAttachment(ids) {
if (ids != undefined) {
return request({
url: '/system/attachment/remove/' + ids,
method: 'get'
})
}
}
// 新增合同信息
export function addInfo(data) {
return request({
url: '/contraction/info/add',
method: 'post',
data: data
})
}
// 查询合同信息详细
export function getInfo(id) {
return request({
url: '/contraction/info/get/' + id,
method: 'get'
})
}
// 删除合同信息
export function delInfo(id) {
return request({
url: '/contraction/info/remove/' + id,
method: 'get'
})
}
// 修改合同信息
export function updateInfo(data) {
return request({
url: '/contraction/info/edit',
method: 'post',
data: data
})
}

+ 36
- 0
src/router/index.js ファイルの表示

@@ -2872,6 +2872,24 @@ export const constantRoutes = [
},
component: (resolve) => require(['@/views/sunVillage_info/fixedAssetsAdd'], resolve)
},
{ ////阳光村务(新)-- 固定资产
path: '/sunVillage_info/fixedAssetsDetail',
name: 'sunVillageInfoFixedAssetsDetail',
meta: {
title: '查看固定资产',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/fixedAssetsDetail'], resolve)
},
{ ////阳光村务(新)-- 固定资产
path: '/sunVillage_info/fixedAssetsEdit',
name: 'sunVillageInfoFixedAssetsEdit',
meta: {
title: '修改固定资产',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/fixedAssetsEdit'], resolve)
},
{ ////阳光村务(新)-- 合同信息
path: '/sunVillage_info/information',
name: 'sunVillageInfoInformation',
@@ -2890,6 +2908,24 @@ export const constantRoutes = [
},
component: (resolve) => require(['@/views/sunVillage_info/informationAdd'], resolve)
},
{ ////阳光村务(新)-- 合同信息
path: '/sunVillage_info/informationDetail',
name: 'sunVillageInfoInformationDetail',
meta: {
title: '查看合同信息',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/informationDetail'], resolve)
},
{ ////阳光村务(新)-- 合同信息
path: '/sunVillage_info/informationEdit',
name: 'sunVillageInfoInformationEdit',
meta: {
title: '修改合同信息',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/informationEdit'], resolve)
},
{ ////阳光村务(新)-- 合同信息
path: '/sunVillage_info/details',
name: 'sunVillageInfoDetails',


+ 157
- 46
src/views/sunVillage_info/fixedAssets.vue ファイルの表示

@@ -1,56 +1,69 @@
<template>
<div class="home_wrapper">
<div class="header_main">
固定资产
<div class="return_btn" @click="onClickLeft"></div>
<div class="add_btn" @click="goAdd"></div>
</div>
<div class="search_info">
<div class="search_block">
<i class="icon"></i>
<input type="text" class="ipt" v-model="queryParams.name" placeholder="搜索">
<div class="header_main">
固定资产
<div class="return_btn" @click="onClickLeft"></div>
<div class="add_btn" @click="goAdd"></div>
</div>
<div class="search_info">
<div class="search_block">
<i class="icon"></i>
<input type="text" class="ipt" v-model="queryParams.name" placeholder="搜索">
<!-- @input="getSearchList"-->
</div>
<div class="total">共{{listLength}}个资产</div>
</div>
<div class="list_main">
<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
@load="getList"
>
<!--1-->
<div class="item" v-for="(item,index) in applicationList">
<div class="head_block">
<i class="icon"></i>
<div class="title">{{item.name}}</div>
<div class="describe">{{item.useType}}</div>
</div>
<div class="order_block">
<div class="order">{{item.code}}</div>
<div class="describe">{{item.assetType}}</div>
</div>
<div class="function_block">
<div class="time">
<i class="icon"></i>
{{item.buildTime}}
</div>
<div :class="{'state':true,'normal':item.assetStatus == '正常','sell':item.assetStatus=='出售','scrap':item.assetStatus=='报废'}">{{item.assetStatus}}</div>
<div class="value">原值<span class="amount">¥{{item.originalValue}}</span></div>
</div>
</div>
</van-list>
</div>
</div>
<div class="total">共{{listLength}}个资产</div>
</div>
<div class="list_main">
<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
@load="getList"
>
<!--1-->
<van-swipe-cell right-width="150" class="item" v-for="(item,index) in applicationList">
<div class="item_box" @click="$router.push({name:'sunVillageInfoFixedAssetsDetail',query:{id:item.id}})">
<div class="head_block">
<i class="icon"></i>
<div class="title">{{item.name}}</div>
<div class="describe">{{item.useType}}</div>
</div>
<div class="order_block">
<div class="order">{{item.code}}</div>
<div class="describe">{{item.assetType}}</div>
</div>
<div class="function_block">
<div class="time">
<i class="icon"></i>
{{item.buildTime}}
</div>
<div :class="{'state':true,'normal':item.assetStatus == '正常','sell':item.assetStatus=='出售','scrap':item.assetStatus=='报废'}">{{item.assetStatus}}</div>
<div class="value">原值<span class="amount">¥{{item.originalValue}}</span></div>
</div>
</div>
<template #right>
<div @click="handleDelete(item,index)" style="background-color: #ee0a24;height: 100%">删除</div>
<router-link :to="{name:'sunVillageInfoFixedAssetsEdit',query:{id:item.id}}" style="background-color: #07c160">修改</router-link>
<div @click="openLoader(item.id,index)" style="background-color: rgb(98,173,102,0.2);color: #62AD66;">附件</div>
</template>
</van-swipe-cell>

</van-list>
</div>
<!-- <div class="bottom_tips">-->
<!-- <span class="xs">已经到底啦</span>-->
<!-- </div>-->


<van-popup v-model="show" lock-scroll closeable position="top" :style="{ height: '30%' }" >
<div style="padding: 0 13% 0 5%;">
<van-divider>附件</van-divider>
<van-uploader v-model="fileList" :after-read="afterRead" @delete="deleteFile1" multiple />
</div>
</van-popup>
</div>
</template>
<script>
import { permanentList } from "@/api/sunVillage_info/fixedAssets";
import { permanentList , commonAttach , attachmentList , systemAttachment , delPermanent } from "@/api/sunVillage_info/fixedAssets";
import request from '@/utils/request'
export default {
name: "certificateList",
data() {
@@ -61,6 +74,8 @@
auditStatus:[],
loading: false,
finished: false,
show: false,
fileList:[],
listLength:'0',
searchInput:'',
queryParams:{
@@ -69,7 +84,10 @@
orderByColumn:'createTime',
isAsc:'desc',
name:'',
}
},
uploadFiles1:[],
projectId:'',
projectIndex:''
};
},
created() {
@@ -106,6 +124,75 @@
});
}, 1000);
},
afterRead(file) {
// 此时可以自行将文件上传至服务器
this.uploadFiles1.push(file.file);
this.uploadFiles1.map((rr1,idx1) => {
let params1 = new FormData();
params1.append("tableId", this.projectId);
params1.append("tableName", "t_asset_permanent");
params1.append("bizPath", "asset");
params1.append("fileType", this.projectIndex);
params1.append("file", rr1);
commonAttach(params1).then((r1) => {
this.$notify({ type: 'success', message: '上传成功' });
})
})
},
openLoader(id,index){
this.show = true;
this.projectId = id;
this.projectIndex = index;
this.fileList = [];
let oData1= {
tableId: id,
tableName: "t_asset_permanent",
bizPath: "asset",
fileType: index,
}
attachmentList(oData1).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
},
/** 删除按钮操作 */
handleDelete(row,index) {
let assetStatus = row.assetStatus ? row.assetStatus : data[0].assetStatus;
if (assetStatus === '2' || assetStatus === '3') {
this.$notify({
message: "不允许删除已出售或已报废的资产",
type: "warning",
});
return;
}
let useType = row.useType;
if(useType == 3) {
this.$notify({
message: "出租或出借的资产不允许删除",
type: "warning",
});
return ;
}
const ids = row.id || this.ids;

this.$dialog.alert(
{
message:'是否确认删除固定资产?',
title:"警告",
confirmButtonText: "确定",
cancelButtonText: "取消",
}
)
.then(function () {
return delPermanent(ids);
})
.then(() => {
this.applicationList.splice(index, 1);
this.$notify({ type: 'success', message: '删除成功' });
});
},
getSearchList(){
this.loading = true;
if(this.applicationListSecond.length>0&&this.queryParams.name!=""){
@@ -122,6 +209,12 @@
}
this.loading = false;
},
deleteFile1(file){
console.log(file)
systemAttachment(file.id).then(res => {
this.$notify({ type: 'success', message: '删除成功' });
})
},
goAdd(){
this.$router.push('/sunVillage_info/fixedAssetsAdd')
},
@@ -211,8 +304,10 @@
border-radius: 30px;
background: #fff;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
padding:25px 32px;
margin-bottom: 20px;
.item_box{
padding:25px 32px;
}
.head_block{
height: 56px;
display: flex;
@@ -321,6 +416,22 @@
background: #e9e9e9;
}
}
/deep/ .van-swipe-cell__right{
display: flex;
align-items: center;
width: 150PX;
margin-left: 5PX;
a,div{
margin: 0;
display: flex;
align-items: center;
justify-content: center;
color: #ffffff;
font-size: 14PX;
height: 100%;
flex: 1;
}
}

}



+ 418
- 55
src/views/sunVillage_info/fixedAssetsAdd.vue ファイルの表示

@@ -10,12 +10,168 @@
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">基本信息</p>
</div>
<van-field required v-model="username" label="资产名称" placeholder="资产名称" input-align="right" :border="false" />
<van-field v-model="password" label="资产编码" placeholder="资产编码" input-align="right" :border="false" />
<van-field required v-model="password" label="资产类别" placeholder="资产类别" input-align="right" is-link :border="false" />
<van-field required v-model="password" label="增加方式" placeholder="增加方式" input-align="right" is-link :border="false" />
<van-field required v-model="password" label="构建时间" placeholder="构建时间" input-align="right" is-link :border="false" />
<van-field v-model="password" label="单元资产" placeholder="单元资产" input-align="right" :border="false" />
<van-field required :rules="[{ required: true, message: '请填写资产名称' }]" v-model="form.name" label="资产名称" placeholder="资产名称" input-align="right" :border="false" />
<van-field v-model="form.code" label="资产编码" placeholder="资产编码" input-align="right" :border="false" />

<van-field
readonly
clickable
label="资产类别"
placeholder="请选择"
v-model="assetType"
@click="showAssetType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择资产类别' }]"
/>
<van-popup v-model="showAssetType" position="bottom">
<van-picker
show-toolbar
:columns="assetTypeOptions"
@confirm="onConfirmAssetType"
@cancel="showAssetType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="经营属性"
placeholder="请选择"
v-model="operationType"
@click="showOperationType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择经营属性' }]"
/>
<van-popup v-model="showOperationType" position="bottom">
<van-picker
show-toolbar
:columns="operationTypeOptions"
@confirm="onConfirmOperationType"
@cancel="showOperationType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="增加方式"
placeholder="请选择"
v-model="addType"
@click="showAddType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择增加方式' }]"
/>
<van-popup v-model="showAddType" position="bottom">
<van-picker
show-toolbar
:columns="addTypeOptions"
@confirm="onConfirmAddType"
@cancel="showAddType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="购建时间"
placeholder="请选择"
v-model="form.buildTime"
@click="showBuildTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择购建时间' }]"
/>
<van-popup v-model="showBuildTime" position="bottom">
<van-datetime-picker
type="date"
title="选择年月日"
@confirm="onConfirmBuildTime"
@cancel="showBuildTime = false"
/>
</van-popup>

<van-field v-model="form.location" label="坐落位置" placeholder="坐落位置" input-align="right" :border="false" />
<van-field v-model="form.specification" label="规格型号" placeholder="规格型号" input-align="right" :border="false" />
<van-field v-model="form.supplier" label="供应商" placeholder="供应商" input-align="right" :border="false" />

<van-field
readonly
clickable
label="使用情况"
placeholder="请选择"
v-model="useType"
@click="showUseType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择使用情况' }]"
/>
<van-popup v-model="showUseType" position="bottom">
<van-picker
show-toolbar
:columns="useTypeOptions"
@confirm="onConfirmUseType"
@cancel="showUseType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="资产状态"
placeholder="请选择"
v-model="assetStatus"
@click="showAssetStatus = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择资产状态' }]"
/>
<van-popup v-model="showAssetStatus" position="bottom">
<van-picker
show-toolbar
:columns="assetStatusOptions"
@confirm="onConfirmAssetStatus"
@cancel="showAssetStatus = false"
/>
</van-popup>

<van-field name="radio" label="单元资产" input-align="right" :border="false">
<template #input>
<van-radio-group v-model="form.isMin" direction="horizontal">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>

<van-field name="radio" label="扶贫资产" input-align="right" :border="false">
<template #input>
<van-radio-group v-model="form.isFormAsset" direction="horizontal">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>
</div>

<div class="list_main">
@@ -23,26 +179,100 @@
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">资产数据</p>
</div>
<van-field required v-model="username" label="数量/面积" placeholder="数量/面积" input-align="right" :border="false" />
<van-field v-model="password" label="计量单位" placeholder="计量单位" input-align="right" />
<van-field required v-model="password" label="原值(元)" placeholder="原值(元)" input-align="right" is-link :border="false" />
<van-field required v-model="password" label="净值(元)" placeholder="净值(元)" input-align="right" is-link :border="false" />
<van-field required v-model="password" label="残值率N%" placeholder="残值率N%" input-align="right" is-link :border="false" />
<van-field v-model="password" label="净残值(元)" placeholder="净残值(元)" input-align="right" :border="false" />
<van-field v-model="password" label="资产清理科目" placeholder="资产清理科目" input-align="right" :border="false" />
<van-field v-model="password" label="资产清理(元)" placeholder="资产清理(元)" input-align="right" :border="false" />
<van-field required label="数量/面积" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.quantity" input-width="100" :decimal-length="2" />
</template>
</van-field>

<van-field required :rules="[{ required: true, message: '请填写计量单位' }]" v-model="form.unit" label="计量单位" placeholder="计量单位" input-align="right" :border="false" />

<van-field required label="原值(元)" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.originalValue" input-width="100" min="0.00" :decimal-length="2" @change="changeOriginalValue"/>
</template>
</van-field>

<van-field label="净值(元)" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.netValue" disabled input-width="100" min="0.00" :decimal-length="2" />
</template>
</van-field>

<van-field label="残值率N%" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.residualsRate" input-width="100" @change="changeResidualsRate"/>
</template>
</van-field>

<van-field label="净残值(元)" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.netSalvage" input-width="100" min="0.00" :decimal-length="2" @change="changeNetSalvage" />
</template>
</van-field>

<van-field readonly v-model="form.fixedValue" label="资产清理(元)" placeholder="无需输入" input-align="right" :border="false" />
<van-field readonly v-model="form.fixedSubject" label="资产清理科目" placeholder="资产清理科目" input-align="right" :border="false" />
<van-field readonly v-model="form.depreciationSubject" label="折旧科目" placeholder="折旧科目" input-align="right" :border="false" />
<van-field readonly v-model="form.depreciationFeeSubject" label="折旧费用科目" placeholder="折旧费用科目" input-align="right" :border="false" />
<van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" />
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">折旧方式</p>
</div>

<van-field
readonly
clickable
label="折旧方式"
placeholder="请选择"
v-model="depreciationType"
@click="showDepreciationType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择折旧方式' }]"
/>
<van-popup v-model="showDepreciationType" position="bottom">
<van-picker
show-toolbar
:columns="depreciationTypeOptions"
@confirm="onConfirmDepreciationType"
@cancel="showDepreciationType = false"
/>
</van-popup>

<van-field label="预计使用期数" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.expectedYears" input-width="100" @change="changeExpectedYears" />
</template>
</van-field>

<van-field readonly v-model="form.perYearDepreciationValue" label="每期折旧额" placeholder="(原值-净残值)/预计使用期数" input-align="right" :border="false" />

<van-field label="已折旧期数" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.depreciationYears" input-width="100" min="0" @change="changeDepreciationYears" />
</template>
</van-field>
<van-field readonly v-model="form.depreciationValue" label="累计折旧(元)" placeholder="0" input-align="right" :border="false" @change="changeDepreciationValue" />
</div>

<div style="margin: 16px;">
<van-button round block type="primary" native-type="submit">
提交
保存
</van-button>
</div>
</van-form>
</div>
</template>
<script>
import { permanentList } from "@/api/sunVillage_info/fixedAssets";
import { addPermanent } from "@/api/sunVillage_info/fixedAssets";
export default {
name: "certificateList",
data() {
@@ -50,6 +280,56 @@
applicationList:[],
applicationListSecond:[],
assetStatusOptions:[],
form:{
assetType:'151001',
operationType:'1',
addType:'1',
buildTime:'2020-01-01',
useType:'1',
assetStatus:'1',
isMin:'Y',
isFormAsset:'N',
quantity:1.00,
depreciationSubject:"152:累计折旧",
fixedSubject:"153:固定资产清理",
depreciationFeeSubject:"541005:管理费用-折旧及修理费",
depreciationType:'3',
expectedYears:1,
depreciationYears:0,
netValue:0.00,
originalValue:0.00,
residualsRate:1,
netSalvage:0.00,
fixedValue:null,
perYearDepreciationValue:null,
depreciationValue:0
},
//资产类别
assetType:'房屋及建筑物',
showAssetType:false,
assetTypeOptions:[],
//经营属性
operationType:'经营性',
showOperationType:false,
operationTypeOptions:[],
//增加方式
addTypeOptions:[],
showAddType:false,
addType:'购入',
//使用情况
useTypeOptions:[],
showUseType:false,
useType:'自用',
//资产状态
assetStatusOptions:[],
showAssetStatus:false,
assetStatus:'正常',
//资产状态
depreciationTypeOptions:[],
showDepreciationType:false,
depreciationType:'不折旧',

showBuildTime:false,
auditStatus:[],
loading: false,
finished: false,
@@ -65,55 +345,138 @@
};
},
created() {
this.houseGetDicts("asset_status").then((response) => {
this.assetStatusOptions = response.data;
});
this.houseGetDicts("asset_type").then((response) => {
this.assetTypeOptions = response.data;
for(var i = 0 ; i < response.data.length ; i++){
this.assetTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("operation_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.operationTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("add_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.addTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("use_type").then((response) => {
this.useTypeOptions = response.data;
for(var i = 0 ; i < response.data.length ; i++){
this.useTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("asset_status").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.assetStatusOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("depreciation_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.depreciationTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
},
methods: {
getList(){
setTimeout(() => {
permanentList(this.queryParams).then(response => {
this.listLength = response.total;
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].assetStatus = this.selectDictLabel(this.assetStatusOptions, response.rows[i].assetStatus);
response.rows[i].assetType = this.selectDictLabel(this.assetTypeOptions, response.rows[i].assetType);
response.rows[i].useType = this.selectDictLabel(this.useTypeOptions, response.rows[i].useType);
response.rows[i].originalValue = Number(response.rows[i].originalValue ).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { return $1 + ","; }).replace(/\.$/, "")
this.applicationList.push(response.rows[i]);
this.applicationListSecond.push(response.rows[i]);
}
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
onConfirmAssetType(data){
this.assetType = data.text;
this.form.assetType = data.value;
this.showAssetType = false;
},
getSearchList(){
this.loading = true;
if(this.applicationListSecond.length>0&&this.queryParams.name!=""){
let newList = []
for(let j = 0 ;j<this.applicationListSecond.length;j++){
if(this.applicationListSecond[j].name.indexOf(this.queryParams.name)>-1){
newList.push(this.applicationListSecond[j]);
}
}
this.applicationList = newList
onConfirmOperationType(data){
this.operationType = data.text;
this.form.operationType = data.value;
this.showOperationType = false;
},
onConfirmAddType(data){
this.addType = data.text;
this.form.addType = data.value;
this.showAddType = false;
},
onConfirmUseType(data){
this.useType = data.text;
this.form.useType = data.value;
this.showUseType = false;
},
onConfirmAssetStatus(data){
this.assetStatus = data.text;
this.form.assetStatus = data.value;
this.showAssetStatus = false;
},
onConfirmDepreciationType(data){
this.depreciationType = data.text;
this.form.depreciationType = data.value;
this.showDepreciationType = false;
},
onConfirmBuildTime(data){
this.form.buildTime = this.format(data,'yyyy-MM-dd');
this.showBuildTime = false;
},
// 原值变动监听
changeOriginalValue(val) {
if (this.form.depreciationValue != null) {
// 净值 = 原值-累计折旧
this.form.netValue = val - this.form.depreciationValue;
}
if (this.form.residualsRate != null) {
// 净残值 = 原值*残值率
this.form.netSalvage = (val * this.form.residualsRate) / 100;
}
if(this.queryParams.name==""){
this.applicationList = this.applicationListSecond;
if (this.form.netSalvage != null && this.form.expectedYears != null) {
// 每年折旧额 = (原值-净残值)/ 预计使用年数
this.form.perYearDepreciationValue =
(val - this.form.netSalvage) / this.form.expectedYears;
}
this.loading = false;
},
// 累计折旧变动监听
changeDepreciationValue(val) {
if (this.form.originalValue != null) {
// 净值 = 原值-累计折旧
this.form.netValue = this.form.originalValue - val;
}
},

// 残值率变动监听
changeResidualsRate(val) {
if (this.form.originalValue != null) {
// 净残值 = 原值*残值率
this.form.netSalvage = (this.form.originalValue * val) / 100;
}
},

// 净残值变动监听
changeNetSalvage(val) {
if (this.form.originalValue != null && this.form.expectedYears != null) {
// 每年折旧额 = (原值-净残值)/ 预计使用年数
this.form.perYearDepreciationValue =
(this.form.originalValue - val) / this.form.expectedYears;
}
},

// 预计使用年数变动监听
changeExpectedYears(val) {
if (this.form.originalValue != null && this.form.netSalvage != null) {
// 每年折旧额:(原值-净残值)/ 预计使用年数
this.form.perYearDepreciationValue =
(this.form.originalValue - this.form.netSalvage) / val;
}
},

// 已折旧年数变动监听
changeDepreciationYears(val) {
if (this.form.perYearDepreciationValue != null) {
this.form.depreciationValue = val * this.form.perYearDepreciationValue;
}
},
onSubmit(){
addPermanent(this.form).then((response) => {
if (response.code == 200){
this.$notify({ type: 'success', message: '新增成功' });
setTimeout(function(){
history.back(-1);
},2000)
}
});
}
},
}
</script>


+ 517
- 0
src/views/sunVillage_info/fixedAssetsDetail.vue ファイルの表示

@@ -0,0 +1,517 @@
<template>
<div class="home_wrapper">
<div class="header_main">
固定资产
<div class="return_btn" @click="onClickLeft"></div>
</div>
<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">基本信息</p>
</div>
<van-field readonly required :rules="[{ required: true, message: '请填写资产名称' }]" v-model="form.name" label="资产名称" placeholder="资产名称" input-align="right" :border="false" />
<van-field readonly v-model="form.code" label="资产编码" placeholder="资产编码" input-align="right" :border="false" />

<van-field
readonly
clickable
label="资产类别"
placeholder="请选择"
v-model="assetType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择资产类别' }]"
/>
<van-popup v-model="showAssetType" position="bottom">
<van-picker
show-toolbar
:columns="assetTypeOptions"
@confirm="onConfirmAssetType"
@cancel="showAssetType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="经营属性"
placeholder="请选择"
v-model="operationType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择经营属性' }]"
/>
<van-popup v-model="showOperationType" position="bottom">
<van-picker
show-toolbar
:columns="operationTypeOptions"
@confirm="onConfirmOperationType"
@cancel="showOperationType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="增加方式"
placeholder="请选择"
v-model="addType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择增加方式' }]"
/>
<van-popup v-model="showAddType" position="bottom">
<van-picker
show-toolbar
:columns="addTypeOptions"
@confirm="onConfirmAddType"
@cancel="showAddType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="购建时间"
placeholder="请选择"
v-model="form.buildTime"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择购建时间' }]"
/>
<van-popup v-model="showBuildTime" position="bottom">
<van-datetime-picker
type="date"
title="选择年月日"
@confirm="onConfirmBuildTime"
@cancel="showBuildTime = false"
/>
</van-popup>

<van-field readonly v-model="form.location" label="坐落位置" placeholder="坐落位置" input-align="right" :border="false" />
<van-field readonly v-model="form.specification" label="规格型号" placeholder="规格型号" input-align="right" :border="false" />
<van-field readonly v-model="form.supplier" label="供应商" placeholder="供应商" input-align="right" :border="false" />

<van-field
readonly
clickable
label="使用情况"
placeholder="请选择"
v-model="useType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择使用情况' }]"
/>
<van-popup v-model="showUseType" position="bottom">
<van-picker
show-toolbar
:columns="useTypeOptions"
@confirm="onConfirmUseType"
@cancel="showUseType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="资产状态"
placeholder="请选择"
v-model="assetStatus"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择资产状态' }]"
/>
<van-popup v-model="showAssetStatus" position="bottom">
<van-picker
show-toolbar
:columns="assetStatusOptions"
@confirm="onConfirmAssetStatus"
@cancel="showAssetStatus = false"
/>
</van-popup>

<van-field name="radio" label="单元资产" input-align="right" :border="false">
<template #input>
<van-radio-group v-model="form.isMin" direction="horizontal">
<van-radio name="Y" disabled>是</van-radio>
<van-radio name="N" disabled>否</van-radio>
</van-radio-group>
</template>
</van-field>

<van-field name="radio" label="扶贫资产" input-align="right" :border="false">
<template #input>
<van-radio-group v-model="form.isFormAsset" direction="horizontal">
<van-radio name="Y" disabled>是</van-radio>
<van-radio name="N" disabled>否</van-radio>
</van-radio-group>
</template>
</van-field>
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">资产数据</p>
</div>
<van-field required label="数量/面积" input-align="right" :border="false">
<template #input>
<van-stepper disabled v-model="form.quantity" input-width="100" :decimal-length="2" />
</template>
</van-field>

<van-field required :rules="[{ required: true, message: '请填写计量单位' }]" v-model="form.unit" label="计量单位" placeholder="计量单位" input-align="right" :border="false" />

<van-field required label="原值(元)" input-align="right" :border="false">
<template #input>
<van-stepper disabled v-model="form.originalValue" input-width="100" min="0.00" :decimal-length="2" @change="changeOriginalValue"/>
</template>
</van-field>

<van-field label="净值(元)" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.netValue" disabled input-width="100" min="0.00" :decimal-length="2" />
</template>
</van-field>

<van-field label="残值率N%" input-align="right" :border="false">
<template #input>
<van-stepper disabled v-model="form.residualsRate" input-width="100" @change="changeResidualsRate"/>
</template>
</van-field>

<van-field label="净残值(元)" input-align="right" :border="false">
<template #input>
<van-stepper disabled v-model="form.netSalvage" input-width="100" min="0.00" :decimal-length="2" @change="changeNetSalvage" />
</template>
</van-field>

<van-field readonly v-model="form.fixedValue" label="资产清理(元)" placeholder="无需输入" input-align="right" :border="false" />
<van-field readonly v-model="form.fixedSubject" label="资产清理科目" placeholder="资产清理科目" input-align="right" :border="false" />
<van-field readonly v-model="form.depreciationSubject" label="折旧科目" placeholder="折旧科目" input-align="right" :border="false" />
<van-field readonly v-model="form.depreciationFeeSubject" label="折旧费用科目" placeholder="折旧费用科目" input-align="right" :border="false" />
<van-field readonly v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" />
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">折旧方式</p>
</div>

<van-field
readonly
clickable
label="折旧方式"
placeholder="请选择"
v-model="depreciationType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择折旧方式' }]"
/>
<van-popup v-model="showDepreciationType" position="bottom">
<van-picker
show-toolbar
:columns="depreciationTypeOptions"
@confirm="onConfirmDepreciationType"
@cancel="showDepreciationType = false"
/>
</van-popup>

<van-field label="预计使用期数" input-align="right" :border="false">
<template #input>
<van-stepper disabled v-model="form.expectedYears" input-width="100" @change="changeExpectedYears" />
</template>
</van-field>

<van-field readonly v-model="form.perYearDepreciationValue" label="每期折旧额" placeholder="(原值-净残值)/预计使用期数" input-align="right" :border="false" />

<van-field label="已折旧期数" input-align="right" :border="false">
<template #input>
<van-stepper disabled v-model="form.depreciationYears" input-width="100" min="0" @change="changeDepreciationYears" />
</template>
</van-field>
<van-field readonly v-model="form.depreciationValue" label="累计折旧(元)" placeholder="0" input-align="right" :border="false" @change="changeDepreciationValue" />
</div>
</div>
</template>
<script>
import { getPermanent } from "@/api/sunVillage_info/fixedAssets";
export default {
name: "certificateList",
data() {
return {
applicationList:[],
applicationListSecond:[],
assetStatusOptions:[],
form:{

},
//资产类别
assetType:'房屋及建筑物',
showAssetType:false,
assetTypeOptions:[],
//经营属性
operationType:'经营性',
showOperationType:false,
operationTypeOptions:[],
//增加方式
addTypeOptions:[],
showAddType:false,
addType:'购入',
//使用情况
useTypeOptions:[],
showUseType:false,
useType:'自用',
//资产状态
assetStatusOptions:[],
showAssetStatus:false,
assetStatus:'正常',
//资产状态
depreciationTypeOptions:[],
showDepreciationType:false,
depreciationType:'不折旧',

showBuildTime:false,
auditStatus:[],
loading: false,
finished: false,
listLength:'0',
searchInput:'',
queryParams:{
pageNum:1,
pageSize:10,
orderByColumn:'createTime',
isAsc:'desc',
name:'',
}
};
},
created() {
this.houseGetDicts("asset_type").then((response) => {
this.assetTypeOptions = response.data;
});
this.houseGetDicts("operation_type").then((response) => {
this.operationTypeOptions = response.data;
});
this.houseGetDicts("add_type").then((response) => {
this.addTypeOptions = response.data;
});
this.houseGetDicts("use_type").then((response) => {
this.useTypeOptions = response.data;
});
this.houseGetDicts("asset_status").then((response) => {
this.assetStatusOptions = response.data;
});
this.houseGetDicts("depreciation_type").then((response) => {
this.depreciationTypeOptions = response.data;
});
this.getDetail(this.$route.query.id)
},
methods: {
getDetail(id){
getPermanent(id).then((response) => {
if (response.code == 200){
this.form = response.data;
this.assetType = this.selectDictLabel(this.assetTypeOptions, response.data.assetType);
this.operationType = this.selectDictLabel(this.operationTypeOptions, response.data.operationType);
this.addType = this.selectDictLabel(this.addTypeOptions, response.data.addType);
this.useType = this.selectDictLabel(this.useTypeOptions, response.data.useType);
this.assetStatus = this.selectDictLabel(this.assetStatusOptions, response.data.assetStatus);
this.depreciationType = this.selectDictLabel(this.depreciationTypeOptions, response.data.depreciationType);
}
});

},
onConfirmAssetType(data){
this.assetType = data.text;
this.form.assetType = data.value;
this.showAssetType = false;
},
onConfirmOperationType(data){
this.operationType = data.text;
this.form.operationType = data.value;
this.showOperationType = false;
},
onConfirmAddType(data){
this.addType = data.text;
this.form.addType = data.value;
this.showAddType = false;
},
onConfirmUseType(data){
this.useType = data.text;
this.form.useType = data.value;
this.showUseType = false;
},
onConfirmAssetStatus(data){
this.assetStatus = data.text;
this.form.assetStatus = data.value;
this.showAssetStatus = false;
},
onConfirmDepreciationType(data){
this.depreciationType = data.text;
this.form.depreciationType = data.value;
this.showDepreciationType = false;
},
onConfirmBuildTime(data){
this.form.buildTime = this.format(data,'yyyy-MM-dd');
this.showBuildTime = false;
},
// 原值变动监听
changeOriginalValue(val) {
if (this.form.depreciationValue != null) {
// 净值 = 原值-累计折旧
this.form.netValue = val - this.form.depreciationValue;
}
if (this.form.residualsRate != null) {
// 净残值 = 原值*残值率
this.form.netSalvage = (val * this.form.residualsRate) / 100;
}
if (this.form.netSalvage != null && this.form.expectedYears != null) {
// 每年折旧额 = (原值-净残值)/ 预计使用年数
this.form.perYearDepreciationValue =
(val - this.form.netSalvage) / this.form.expectedYears;
}
},
// 累计折旧变动监听
changeDepreciationValue(val) {
if (this.form.originalValue != null) {
// 净值 = 原值-累计折旧
this.form.netValue = this.form.originalValue - val;
}
},

// 残值率变动监听
changeResidualsRate(val) {
if (this.form.originalValue != null) {
// 净残值 = 原值*残值率
this.form.netSalvage = (this.form.originalValue * val) / 100;
}
},

// 净残值变动监听
changeNetSalvage(val) {
if (this.form.originalValue != null && this.form.expectedYears != null) {
// 每年折旧额 = (原值-净残值)/ 预计使用年数
this.form.perYearDepreciationValue =
(this.form.originalValue - val) / this.form.expectedYears;
}
},

// 预计使用年数变动监听
changeExpectedYears(val) {
if (this.form.originalValue != null && this.form.netSalvage != null) {
// 每年折旧额:(原值-净残值)/ 预计使用年数
this.form.perYearDepreciationValue =
(this.form.originalValue - this.form.netSalvage) / val;
}
},

// 已折旧年数变动监听
changeDepreciationYears(val) {
if (this.form.perYearDepreciationValue != null) {
this.form.depreciationValue = val * this.form.perYearDepreciationValue;
}
},

},
}
</script>
<style scoped lang="scss">
.home_wrapper{
background: #e9e9e9;
min-height: 100vh;
width: 100vw;
.header_main {
height: 116px;
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat;
background-size: 100% 100%;
position: fixed;
top: 0;
left: 0;
width: 100%;
font-size: 36px;
line-height: 116px;
text-align: center;
color: #fff;
position: relative;

.return_btn {
width: 24px;
height: 43.2px;
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat;
background-size: 20px 36px;
position: absolute;
left: 38px;
top: 36px;
}

.add_btn {
width: 56.4px;
height: 40.8px;
background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat;
background-size: 47px 34px;
position: absolute;
right: 38px;
top: 36px;
}
}
.list_main{
padding:25px;
background: #ffffff;
width: 94%;
margin: 25px auto 0;
border-radius: 15PX;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
}
.titBox{
display: flex;
align-items: center;
}
.tit{
font-size: 36px;
font-weight: bold;
}
/deep/ .van-cell{
padding-left: 0!important;
padding-right: 0!important;
padding-bottom: 0!important;
}
/deep/ .van-field__label{
padding-left: 10PX;
width: 8.2em;
}
/deep/ .van-cell--required::before{
left: 0;
}

}







</style>

+ 579
- 0
src/views/sunVillage_info/fixedAssetsEdit.vue ファイルの表示

@@ -0,0 +1,579 @@
<template>
<div class="home_wrapper">
<div class="header_main">
固定资产
<div class="return_btn" @click="onClickLeft"></div>
</div>
<van-form @submit="onSubmit">
<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">基本信息</p>
</div>
<van-field required :rules="[{ required: true, message: '请填写资产名称' }]" v-model="form.name" label="资产名称" placeholder="资产名称" input-align="right" :border="false" />
<van-field v-model="form.code" label="资产编码" placeholder="资产编码" input-align="right" :border="false" />

<van-field
readonly
clickable
label="资产类别"
placeholder="请选择"
v-model="assetType"
@click="showAssetType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择资产类别' }]"
/>
<van-popup v-model="showAssetType" position="bottom">
<van-picker
show-toolbar
:columns="assetTypeOptions"
@confirm="onConfirmAssetType"
@cancel="showAssetType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="经营属性"
placeholder="请选择"
v-model="operationType"
@click="showOperationType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择经营属性' }]"
/>
<van-popup v-model="showOperationType" position="bottom">
<van-picker
show-toolbar
:columns="operationTypeOptions"
@confirm="onConfirmOperationType"
@cancel="showOperationType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="增加方式"
placeholder="请选择"
v-model="addType"
@click="showAddType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择增加方式' }]"
/>
<van-popup v-model="showAddType" position="bottom">
<van-picker
show-toolbar
:columns="addTypeOptions"
@confirm="onConfirmAddType"
@cancel="showAddType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="购建时间"
placeholder="请选择"
v-model="form.buildTime"
@click="showBuildTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择购建时间' }]"
/>
<van-popup v-model="showBuildTime" position="bottom">
<van-datetime-picker
type="date"
title="选择年月日"
@confirm="onConfirmBuildTime"
@cancel="showBuildTime = false"
/>
</van-popup>

<van-field v-model="form.location" label="坐落位置" placeholder="坐落位置" input-align="right" :border="false" />
<van-field v-model="form.specification" label="规格型号" placeholder="规格型号" input-align="right" :border="false" />
<van-field v-model="form.supplier" label="供应商" placeholder="供应商" input-align="right" :border="false" />

<van-field
readonly
clickable
label="使用情况"
placeholder="请选择"
v-model="useType"
@click="showUseType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择使用情况' }]"
/>
<van-popup v-model="showUseType" position="bottom">
<van-picker
show-toolbar
:columns="useTypeOptions"
@confirm="onConfirmUseType"
@cancel="showUseType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="资产状态"
placeholder="请选择"
v-model="assetStatus"
@click="showAssetStatus = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择资产状态' }]"
/>
<van-popup v-model="showAssetStatus" position="bottom">
<van-picker
show-toolbar
:columns="assetStatusOptions"
@confirm="onConfirmAssetStatus"
@cancel="showAssetStatus = false"
/>
</van-popup>

<van-field name="radio" label="单元资产" input-align="right" :border="false">
<template #input>
<van-radio-group v-model="form.isMin" direction="horizontal">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>

<van-field name="radio" label="扶贫资产" input-align="right" :border="false">
<template #input>
<van-radio-group v-model="form.isFormAsset" direction="horizontal">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">资产数据</p>
</div>
<van-field required label="数量/面积" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.quantity" input-width="100" :decimal-length="2" />
</template>
</van-field>

<van-field required :rules="[{ required: true, message: '请填写计量单位' }]" v-model="form.unit" label="计量单位" placeholder="计量单位" input-align="right" :border="false" />

<van-field required label="原值(元)" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.originalValue" input-width="100" min="0.00" :decimal-length="2" @change="changeOriginalValue"/>
</template>
</van-field>

<van-field label="净值(元)" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.netValue" disabled input-width="100" min="0.00" :decimal-length="2" />
</template>
</van-field>

<van-field label="残值率N%" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.residualsRate" input-width="100" @change="changeResidualsRate"/>
</template>
</van-field>

<van-field label="净残值(元)" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.netSalvage" input-width="100" min="0.00" :decimal-length="2" @change="changeNetSalvage" />
</template>
</van-field>

<van-field readonly v-model="form.fixedValue" label="资产清理(元)" placeholder="无需输入" input-align="right" :border="false" />
<van-field readonly v-model="form.fixedSubject" label="资产清理科目" placeholder="资产清理科目" input-align="right" :border="false" />
<van-field readonly v-model="form.depreciationSubject" label="折旧科目" placeholder="折旧科目" input-align="right" :border="false" />
<van-field readonly v-model="form.depreciationFeeSubject" label="折旧费用科目" placeholder="折旧费用科目" input-align="right" :border="false" />
<van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" />
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">折旧方式</p>
</div>

<van-field
readonly
clickable
label="折旧方式"
placeholder="请选择"
v-model="depreciationType"
@click="showDepreciationType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择折旧方式' }]"
/>
<van-popup v-model="showDepreciationType" position="bottom">
<van-picker
show-toolbar
:columns="depreciationTypeOptions"
@confirm="onConfirmDepreciationType"
@cancel="showDepreciationType = false"
/>
</van-popup>

<van-field label="预计使用期数" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.expectedYears" input-width="100" @change="changeExpectedYears" />
</template>
</van-field>

<van-field readonly v-model="form.perYearDepreciationValue" label="每期折旧额" placeholder="(原值-净残值)/预计使用期数" input-align="right" :border="false" />

<van-field label="已折旧期数" input-align="right" :border="false">
<template #input>
<van-stepper v-model="form.depreciationYears" input-width="100" min="0" @change="changeDepreciationYears" />
</template>
</van-field>
<van-field readonly v-model="form.depreciationValue" label="累计折旧(元)" placeholder="0" input-align="right" :border="false" @change="changeDepreciationValue" />
</div>

<div style="margin: 16px;">
<van-button round block type="primary" native-type="submit">
保存
</van-button>
</div>
</van-form>
</div>
</template>
<script>
import { updatePermanent , getPermanent } from "@/api/sunVillage_info/fixedAssets";
export default {
name: "certificateList",
data() {
return {
applicationList:[],
applicationListSecond:[],
assetStatusOptions:[],
form:{
assetType:'151001',
operationType:'1',
addType:'1',
buildTime:'2020-01-01',
useType:'1',
assetStatus:'1',
isMin:'Y',
isFormAsset:'N',
quantity:1.00,
depreciationSubject:"152:累计折旧",
fixedSubject:"153:固定资产清理",
depreciationFeeSubject:"541005:管理费用-折旧及修理费",
depreciationType:'3',
expectedYears:1,
depreciationYears:0,
netValue:0.00,
originalValue:0.00,
residualsRate:1,
netSalvage:0.00,
fixedValue:null,
perYearDepreciationValue:null,
depreciationValue:0
},
//资产类别
assetType:'房屋及建筑物',
showAssetType:false,
assetTypeOptions:[],
//经营属性
operationType:'经营性',
showOperationType:false,
operationTypeOptions:[],
//增加方式
addTypeOptions:[],
showAddType:false,
addType:'购入',
//使用情况
useTypeOptions:[],
showUseType:false,
useType:'自用',
//资产状态
assetStatusOptions:[],
showAssetStatus:false,
assetStatus:'正常',
//资产状态
depreciationTypeOptions:[],
showDepreciationType:false,
depreciationType:'不折旧',

showBuildTime:false,
auditStatus:[],
loading: false,
finished: false,
listLength:'0',
searchInput:'',
queryParams:{
pageNum:1,
pageSize:10,
orderByColumn:'createTime',
isAsc:'desc',
name:'',
}
};
},
created() {
this.houseGetDicts("asset_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.assetTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.assetTypeOptions2 = response.data;
});
this.houseGetDicts("operation_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.operationTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.operationTypeOptions2 = response.data;
});
this.houseGetDicts("add_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.addTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.addTypeOptions2 = response.data;
});
this.houseGetDicts("use_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.useTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.useTypeOptions2 = response.data;
});
this.houseGetDicts("asset_status").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.assetStatusOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.assetStatusOptions2 = response.data;
});
this.houseGetDicts("depreciation_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.depreciationTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.depreciationTypeOptions2 = response.data;
});
this.getDetail(this.$route.query.id)
},
methods: {
getDetail(id){
getPermanent(id).then((response) => {
if (response.code == 200){
this.form = response.data;
this.assetType = this.selectDictLabel(this.assetTypeOptions2, response.data.assetType);
this.operationType = this.selectDictLabel(this.operationTypeOptions2, response.data.operationType);
this.addType = this.selectDictLabel(this.addTypeOptions2, response.data.addType);
this.useType = this.selectDictLabel(this.useTypeOptions2, response.data.useType);
this.assetStatus = this.selectDictLabel(this.assetStatusOptions2, response.data.assetStatus);
this.depreciationType = this.selectDictLabel(this.depreciationTypeOptions2, response.data.depreciationType);
}
});
},
onConfirmAssetType(data){
this.assetType = data.text;
this.form.assetType = data.value;
this.showAssetType = false;
},
onConfirmOperationType(data){
this.operationType = data.text;
this.form.operationType = data.value;
this.showOperationType = false;
},
onConfirmAddType(data){
this.addType = data.text;
this.form.addType = data.value;
this.showAddType = false;
},
onConfirmUseType(data){
this.useType = data.text;
this.form.useType = data.value;
this.showUseType = false;
},
onConfirmAssetStatus(data){
this.assetStatus = data.text;
this.form.assetStatus = data.value;
this.showAssetStatus = false;
},
onConfirmDepreciationType(data){
this.depreciationType = data.text;
this.form.depreciationType = data.value;
this.showDepreciationType = false;
},
onConfirmBuildTime(data){
this.form.buildTime = this.format(data,'yyyy-MM-dd');
this.showBuildTime = false;
},
// 原值变动监听
changeOriginalValue(val) {
if (this.form.depreciationValue != null) {
// 净值 = 原值-累计折旧
this.form.netValue = val - this.form.depreciationValue;
}
if (this.form.residualsRate != null) {
// 净残值 = 原值*残值率
this.form.netSalvage = (val * this.form.residualsRate) / 100;
}
if (this.form.netSalvage != null && this.form.expectedYears != null) {
// 每年折旧额 = (原值-净残值)/ 预计使用年数
this.form.perYearDepreciationValue =
(val - this.form.netSalvage) / this.form.expectedYears;
}
},
// 累计折旧变动监听
changeDepreciationValue(val) {
if (this.form.originalValue != null) {
// 净值 = 原值-累计折旧
this.form.netValue = this.form.originalValue - val;
}
},

// 残值率变动监听
changeResidualsRate(val) {
if (this.form.originalValue != null) {
// 净残值 = 原值*残值率
this.form.netSalvage = (this.form.originalValue * val) / 100;
}
},

// 净残值变动监听
changeNetSalvage(val) {
if (this.form.originalValue != null && this.form.expectedYears != null) {
// 每年折旧额 = (原值-净残值)/ 预计使用年数
this.form.perYearDepreciationValue =
(this.form.originalValue - val) / this.form.expectedYears;
}
},

// 预计使用年数变动监听
changeExpectedYears(val) {
if (this.form.originalValue != null && this.form.netSalvage != null) {
// 每年折旧额:(原值-净残值)/ 预计使用年数
this.form.perYearDepreciationValue =
(this.form.originalValue - this.form.netSalvage) / val;
}
},

// 已折旧年数变动监听
changeDepreciationYears(val) {
if (this.form.perYearDepreciationValue != null) {
this.form.depreciationValue = val * this.form.perYearDepreciationValue;
}
},
onSubmit(){
updatePermanent(this.form).then((response) => {
if (response.code == 200){
this.$notify({ type: 'success', message: '修改成功' });
setTimeout(function(){
history.back(-1);
},2000)
}
});
}
},
}
</script>
<style scoped lang="scss">
.home_wrapper{
background: #e9e9e9;
min-height: 100vh;
width: 100vw;
.header_main {
height: 116px;
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat;
background-size: 100% 100%;
position: fixed;
top: 0;
left: 0;
width: 100%;
font-size: 36px;
line-height: 116px;
text-align: center;
color: #fff;
position: relative;

.return_btn {
width: 24px;
height: 43.2px;
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat;
background-size: 20px 36px;
position: absolute;
left: 38px;
top: 36px;
}

.add_btn {
width: 56.4px;
height: 40.8px;
background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat;
background-size: 47px 34px;
position: absolute;
right: 38px;
top: 36px;
}
}
.list_main{
padding:25px;
background: #ffffff;
width: 94%;
margin: 25px auto 0;
border-radius: 15PX;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
}
.titBox{
display: flex;
align-items: center;
}
.tit{
font-size: 36px;
font-weight: bold;
}
/deep/ .van-cell{
padding-left: 0!important;
padding-right: 0!important;
padding-bottom: 0!important;
}
/deep/ .van-field__label{
padding-left: 10PX;
width: 8.2em;
}
/deep/ .van-cell--required::before{
left: 0;
}

}







</style>

+ 176
- 81
src/views/sunVillage_info/information.vue ファイルの表示

@@ -20,105 +20,182 @@
@load="getList"
>
<!--1-->
<div class="item" v-for="(item,index) in applicationList">
<div class="head_block">
<i class="icon"></i>
<div class="title">{{item.name}}</div>
</div>
<div class="order_block">
<div class="order">{{item.code}}</div>
<div :class="{'describe':true,'suspend':item.contractionStatus == '撤销','normal':item.contractionStatus == '正常','undo':item.contractionStatus == '终止'}">{{item.contractionStatus}}<i class="icon"></i></div>
</div>
<div class="function_block">
<van-swipe-cell right-width="150" class="item" v-for="(item,index) in applicationList">
<div class="item_box" @click="$router.push({name:'sunVillageInfoInformationDetail',query:{id:item.id}})">
<div class="head_block">
<i class="icon"></i>
<div class="title">{{item.name}}</div>
</div>
<div class="order_block">
<div class="order">{{item.code}}</div>
<div :class="{'describe':true,'suspend':item.contractionStatus == '撤销','normal':item.contractionStatus == '正常','undo':item.contractionStatus == '终止'}">{{item.contractionStatus}}<i class="icon"></i></div>
</div>
<div class="function_block">
<div class="value">合同金额<span class="amount">¥{{item.totalAmount}}</span></div>
<div class="startStop_time">
<div class="time"><div class="unim start">起</div>{{item.startTime}}</div>
<div class="time"><div class="unim stop">止</div>{{item.endTime}}</div>
</div>
</div>
</div>

</div>
</div>
<template #right>
<div @click="handleDelete(item,index)" style="background-color: #ee0a24;height: 100%">删除</div>
<router-link :to="{name:'sunVillageInfoInformationEdit',query:{id:item.id}}" style="background-color: #07c160">修改</router-link>
<div @click="openLoader(item.id,index)" style="background-color: rgb(98,173,102,0.2);color: #62AD66;">附件</div>
</template>
</van-swipe-cell>
</van-list>

</div>
<!-- <div class="bottom_tips">-->
<!-- <span class="xs">已经到底啦</span>-->
<!-- </div>-->

<van-popup v-model="show" lock-scroll closeable position="top" :style="{ height: '30%' }" >
<div style="padding: 0 13% 0 5%;">
<van-divider>附件</van-divider>
<van-uploader v-model="fileList" :after-read="afterRead" @delete="deleteFile1" multiple />
</div>
</van-popup>
</div>
</template>

<script>
import { contractionList } from "@/api/sunVillage_info/fixedAssets";
export default {
name: "certificateList",
data() {
return {
applicationList:[],
applicationListSecond:[],
assetStatusOptions:[],
auditStatus:[],
loading: false,
finished: false,
listLength:'0',
searchInput:'',
queryParams:{
pageNum:1,
pageSize:10,
orderByColumn:'createTime',
isAsc:'desc',
name:'',
}
};
},
created() {
this.houseGetDicts("contraction_status").then((response) => {
this.contractionStatusOptions = response.data;
});
},
methods: {
getList(){
setTimeout(() => {
contractionList(this.queryParams).then(response => {
this.listLength = response.total;
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].contractionStatus = this.selectDictLabel(this.contractionStatusOptions, response.rows[i].contractionStatus);
response.rows[i].totalAmount = Number(response.rows[i].totalAmount ).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { return $1 + ","; }).replace(/\.$/, "")
this.applicationList.push(response.rows[i]);
this.applicationListSecond.push(response.rows[i]);
}
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
<script>
import { contractionList , delInfo , commonAttach , attachmentList , systemAttachment } from "@/api/sunVillage_info/fixedAssets";
import request from '@/utils/request'
export default {
name: "certificateList",
data() {
return {
applicationList:[],
applicationListSecond:[],
assetStatusOptions:[],
auditStatus:[],
loading: false,
finished: false,
show: false,
fileList:[],
listLength:'0',
searchInput:'',
queryParams:{
pageNum:1,
pageSize:10,
orderByColumn:'createTime',
isAsc:'desc',
name:'',
},
getSearchList(){
this.loading = true;
if(this.applicationListSecond.length>0&&this.queryParams.name!=""){
let newList = []
for(let j = 0 ;j<this.applicationListSecond.length;j++){
if(this.applicationListSecond[j].name.indexOf(this.queryParams.name)>-1){
newList.push(this.applicationListSecond[j]);
}
uploadFiles1:[],
projectId:'',
projectIndex:''
};
},
created() {
this.houseGetDicts("contraction_status").then((response) => {
this.contractionStatusOptions = response.data;
});
},
methods: {
getList(){
setTimeout(() => {
contractionList(this.queryParams).then(response => {
this.listLength = response.total;
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].contractionStatus = this.selectDictLabel(this.contractionStatusOptions, response.rows[i].contractionStatus);
response.rows[i].totalAmount = Number(response.rows[i].totalAmount ).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { return $1 + ","; }).replace(/\.$/, "")
this.applicationList.push(response.rows[i]);
this.applicationListSecond.push(response.rows[i]);
}
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
getSearchList(){
this.loading = true;
if(this.applicationListSecond.length>0&&this.queryParams.name!=""){
let newList = []
for(let j = 0 ;j<this.applicationListSecond.length;j++){
if(this.applicationListSecond[j].name.indexOf(this.queryParams.name)>-1){
newList.push(this.applicationListSecond[j]);
}
this.applicationList = newList
}
if(this.queryParams.name==""){
this.applicationList = this.applicationListSecond;
this.applicationList = newList
}
if(this.queryParams.name==""){
this.applicationList = this.applicationListSecond;
}
this.loading = false;
},
afterRead(file) {
// 此时可以自行将文件上传至服务器
this.uploadFiles1.push(file.file);
this.uploadFiles1.map((rr1,idx1) => {
let params1 = new FormData();
params1.append("tableId", this.projectId);
params1.append("tableName", "t_contraction_info");
params1.append("bizPath", "contraction");
params1.append("fileType", this.projectIndex);
params1.append("file", rr1);
commonAttach(params1).then((r1) => {
this.$notify({ type: 'success', message: '上传成功' });
})
})
},
openLoader(id,index){
this.show = true;
this.projectId = id;
this.projectIndex = index;
this.fileList = [];
let oData1= {
tableId: id,
tableName: "t_contraction_info",
bizPath: "contraction",
fileType: index,
}
attachmentList(oData1).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
},
/** 删除按钮操作 */
handleDelete(row,index) {

const ids = row.id || this.ids;

this.$dialog.alert(
{
message:'是否确认删除合同信息?',
title:"警告",
confirmButtonText: "确定",
cancelButtonText: "取消",
}
this.loading = false;
},
goAdd(){
this.$router.push('/sunVillage_info/informationAdd')
},
)
.then(function () {
return delInfo(ids);
})
.then(() => {
this.applicationList.splice(index, 1);
this.$notify({ type: 'success', message: '删除成功' });
});
},
deleteFile1(file){
console.log(file)
systemAttachment(file.id).then(res => {
this.$notify({ type: 'success', message: '删除成功' });
})
},
}
</script>
goAdd(){
this.$router.push('/sunVillage_info/informationAdd')
},
},
}
</script>

<style scoped lang="scss">
.home_wrapper{
@@ -203,8 +280,10 @@
border-radius: 30px;
background: #fff;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
padding:25px 32px;
margin-bottom: 20px;
.item_box{
padding:25px 32px;
}
.head_block{
height: 56px;
display: flex;
@@ -342,5 +421,21 @@
background: #e9e9e9;
}
}
/deep/ .van-swipe-cell__right{
display: flex;
align-items: center;
width: 150PX;
margin-left: 5PX;
a,div{
margin: 0;
display: flex;
align-items: center;
justify-content: center;
color: #ffffff;
font-size: 14PX;
height: 100%;
flex: 1;
}
}
}
</style>

+ 498
- 69
src/views/sunVillage_info/informationAdd.vue ファイルの表示

@@ -10,29 +10,279 @@
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">合同信息</p>
</div>
<van-field required v-model="form.code" label="合同编码" p laceholder="合同编码" input-align="right" :border="false" />
<van-field required v-model="form.code" label="合同编码" placeholder="合同编码" input-align="right" :border="false" />
<van-field required v-model="form.name" label="合同名称" placeholder="合同名称" input-align="right" :border="false" />
<van-field v-model="form.assetType" label="合同类型" placeholder="合同类型" input-align="right" is-link :border="false" />
<van-field required v-model="form.contractionSource" label="合同来源" placeholder="合同来源" input-align="right" is-link :border="false" />
<van-field required v-model="form.firstParty" label="甲方名称" placeholder="甲方名称" input-align="right" is-link :border="false" />

<van-field
readonly
clickable
label="合同类型"
placeholder="请选择"
v-model="assetType"
@click="showAssetType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择合同类型' }]"
/>
<van-popup v-model="showAssetType" position="bottom">
<van-picker
show-toolbar
:columns="assetTypeOptions"
@confirm="onConfirmAssetType"
@cancel="showAssetType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="合同来源"
placeholder="请选择"
v-model="contractionSource"
@click="showContractionSource = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择合同来源' }]"
/>
<van-popup v-model="showContractionSource" position="bottom">
<van-picker
show-toolbar
:columns="contractionSourceOptions"
@confirm="onConfirmContractionSource"
@cancel="showContractionSource = false"
/>
</van-popup>
<van-field required v-model="form.firstParty" label="合同甲方" placeholder="合同甲方" input-align="right" :border="false" />
<van-field v-model="form.firstPartyDirector" label="甲方代表" placeholder="甲方代表" input-align="right" :border="false" />
<van-field v-model="form.firstPartyPhone" label="甲方电话" placeholder="甲方电话" input-align="right" :border="false" />
<van-field required v-model="form.secondParty" label="乙方名称" placeholder="乙方名称" input-align="right" :border="false" />
<van-field required v-model="form.secondParty" label="合同乙方" placeholder="乙方名称" input-align="right" :border="false" />
<van-field v-model="form.secondPartyDirector" label="乙方代表" placeholder="乙方代表" input-align="right" :border="false" />
<van-field v-model="form.secondPartyPhone" label="乙方电话" placeholder="乙方电话" input-align="right" :border="false" />
<van-field required v-model="form.collectionPay" label="收付款类型" placeholder="收付款类型" input-align="right" :border="false" />
<van-field required v-model="form.settleType" label="结款方式" placeholder="结款方式" input-align="right" :border="false" />
<van-field required v-model="form.totalAmount" label="合同金额(元)" placeholder="合同金额(元)" input-align="right" :border="false" />
<van-field v-model="form.num" label="数量/面积" placeholder="数量/面积" input-align="right" :border="false" />

<van-field v-model="form.secondPartyIdCard" label="乙方身份证号" placeholder="乙方身份证号" input-align="right" :border="false" />


<van-field
readonly
clickable
label="签订日期"
placeholder="请选择"
v-model="form.buildingTime"
@click="showBuildingTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
/>
<van-popup v-model="showBuildingTime" position="bottom">
<van-datetime-picker
v-model="buildingTime"
type="date"
title="选择年月日"
@confirm="onConfirmBuildingTime"
@cancel="showBuildingTime = false"
/>
</van-popup>

<van-field
readonly
clickable
label="合同状态"
placeholder="请选择"
v-model="contractionStatus"
@click="showContractionStatus = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择合同状态' }]"
/>
<van-popup v-model="showContractionStatus" position="bottom">
<van-picker
show-toolbar
:columns="contractionStatusOptions"
@confirm="onConfirmContractionStatus"
@cancel="showContractionStatus = false"
/>
</van-popup>
<van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" />
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">合同约定</p>
</div>
<van-field
readonly
clickable
label="收付款类型"
placeholder="请选择"
v-model="collectionPay"
@click="showCollectionPay = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择收付款类型' }]"
/>
<van-popup v-model="showCollectionPay" position="bottom">
<van-picker
show-toolbar
:columns="collectionPayOptions"
@confirm="onConfirmCollectionPay"
@cancel="showCollectionPay = false"
/>
</van-popup>

<van-field
readonly
clickable
label="结款方式"
placeholder="请选择"
v-model="settleType"
@click="showSettleType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择结款方式' }]"
/>
<van-popup v-model="showSettleType" position="bottom">
<van-picker
show-toolbar
:columns="settleTypeOptions"
@confirm="onConfirmSettleType"
@cancel="showSettleType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="支付方式"
placeholder="请选择"
v-model="contractPaymentType"
@click="showContractPaymentType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择支付方式' }]"
/>
<van-popup v-model="showContractPaymentType" position="bottom">
<van-picker
show-toolbar
:columns="contractPaymentTypeOptions"
@confirm="onConfirmContractPaymentType"
@cancel="showContractPaymentType = false"
/>
</van-popup>

<van-field v-model="form.contractObject" label="合同标的" placeholder="合同标的" input-align="right" :border="false" />
<van-field v-model="form.num" label="标的数量" placeholder="标的数量" input-align="right" :border="false" />

<van-field v-model="form.unit" label="计量单位" placeholder="计量单位" input-align="right" :border="false" />
<van-field required v-model="form.price" label="单价(元)" placeholder="单价(元)" input-align="right" :border="false" />

<van-field
readonly
clickable
label="开始日期"
placeholder="请选择"
v-model="form.startTime"
@click="showStartTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择开始日期' }]"
/>
<van-popup v-model="showStartTime" position="bottom">
<van-datetime-picker
v-model="startTime"
type="date"
title="选择年月日"
@confirm="onConfirmStartTime"
@cancel="showStartTime = false"
/>
</van-popup>

<van-field
readonly
clickable
label="结束日期"
placeholder="请选择"
v-model="form.endTime"
@click="showEndTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择开始日期' }]"
/>
<van-popup v-model="showEndTime" position="bottom">
<van-datetime-picker
v-model="endTime"
type="date"
title="选择年月日"
@confirm="onConfirmEndTime"
@cancel="showEndTime = false"
/>
</van-popup>


<van-field v-model="form.contractYears" label="承包年限(年)" placeholder="承包年限(年)" input-align="right" :border="false" />
<van-field required v-model="form.totalAmount" label="承包价款(元)" placeholder="承包价款(元)" input-align="right" :border="false" />
<van-field required v-model="form.price" label="折合年均(元)" placeholder="折合年均(元)" input-align="right" :border="false" />

<van-field required v-model="form.receivedAmount" label="已结款(元)" placeholder="已结款(元)" input-align="right" :border="false" />
<van-field v-model="form.settledAmount" label="下次结款(元)" placeholder="下次结款(元)" input-align="right" :border="false" />
<van-field required v-model="form.buildingTime" label="签订日期" placeholder="签订日期" input-align="right" :border="false" />
<van-field required v-model="form.startTime" label="开始日期" placeholder="开始日期" input-align="right" :border="false" />
<van-field required v-model="form.endTime" label="结束日期" placeholder="结束日期" input-align="right" :border="false" />
<van-field required v-model="form.contractionStatus" label="合同状态" placeholder="合同状态" input-align="right" :border="false" />
<van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" />

</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_2.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">村委情况</p>
</div>
<van-field v-model="form.villageHead" label="村负责人" placeholder="村负责人" input-align="right" :border="false" />
<van-field v-model="form.contractCustodian" label="合同保管人" placeholder="合同保管人" input-align="right" />
<van-field v-model="form.villageRepsOpinion" label="村民代表意见" placeholder="村民代表意见" input-align="right" :border="false" />

<van-field
readonly
clickable
label="会议时间"
placeholder="请选择"
v-model="form.meetingTime"
@click="showMeetingTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showMeetingTime" position="bottom">
<van-datetime-picker
v-model="meetingTime"
type="date"
title="选择年月日"
@confirm="onConfirmMeetingTime"
@cancel="showMeetingTime = false"
/>
</van-popup>
</div>

<div class="list_main">
@@ -40,29 +290,91 @@
<img src="../../assets/images/sunVillage_info/add_icon_2.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">招标信息</p>
</div>
<van-field required v-model="form.biddingWay" label="招标方式" placeholder="招标方式" input-align="right" :border="false" />
<!-- <van-field required v-model="form.biddingWay" label="招标方式" placeholder="招标方式" input-align="right" :border="false" />-->
<van-field v-model="form.itemId" label="项目编号" placeholder="项目编号" input-align="right" />
<van-field required v-model="form.itemName" label="项目名称" placeholder="项目名称" input-align="right" is-link :border="false" />
<van-field required v-model="form.handleName" label="经办人" placeholder="经办人" input-align="right" is-link :border="false" />
<van-field required v-model="form.budget" label="预算金额(元)" placeholder="预算金额(元)" input-align="right" is-link :border="false" />
<van-field v-model="form.biddingDate" label="招标日期" placeholder="招标日期" input-align="right" :border="false" />
<van-field v-model="form.biddingType" label="招标类型" placeholder="招标类型" input-align="right" :border="false" />
<van-field v-model="form.itemName" label="项目名称" placeholder="项目名称" input-align="right" :border="false" />
<van-field v-model="form.handleName" label="经办人" placeholder="经办人" input-align="right" :border="false" />
<van-field v-model="form.budget" label="预算金额(元)" placeholder="预算金额(元)" input-align="right" :border="false" />

<van-field
readonly
clickable
label="招标日期"
placeholder="请选择"
v-model="form.biddingDate"
@click="showBiddingDate = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showBiddingDate" position="bottom">
<van-datetime-picker
v-model="biddingDate"
type="date"
title="选择年月日"
@confirm="onConfirmBiddingDate"
@cancel="showBiddingDate = false"
/>
</van-popup>

<van-field
readonly
clickable
label="招标类型"
placeholder="请选择"
v-model="biddingType"
@click="showBiddingType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showBiddingType" position="bottom">
<van-picker
show-toolbar
:columns="biddingTypeOptions"
@confirm="onConfirmBiddingType"
@cancel="showBiddingType = false"
/>
</van-popup>
<van-field v-model="form.winBiddingCompany" label="中标单位" placeholder="中标单位" input-align="right" :border="false" />
<van-field v-model="form.winBiddingPrice" label="中标金额(元)" placeholder="中标金额(元)" input-align="right" :border="false" />
<van-field v-model="form.reviewer" label="审核人" placeholder="审核人" input-align="right" :border="false" />
<van-field v-model="form.reviewTime" label="审核时间" placeholder="审核时间" input-align="right" :border="false" />

<van-field
readonly
clickable
label="审核时间"
placeholder="请选择"
v-model="form.reviewTime"
@click="showReviewTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showReviewTime" position="bottom">
<van-datetime-picker
v-model="reviewTime"
type="date"
title="选择年月日"
@confirm="onConfirmReviewTime"
@cancel="showReviewTime = false"
/>
</van-popup>
</div>

<div style="margin: 16px;">
<van-button round block type="primary" native-type="submit">
提交
保存
</van-button>
</div>
</van-form>
</div>
</template>
<script>
import { permanentList } from "@/api/sunVillage_info/fixedAssets";
import { addInfo } from "@/api/sunVillage_info/fixedAssets";
export default {
name: "certificateList",
data() {
@@ -75,67 +387,184 @@
finished: false,
listLength:'0',
searchInput:'',
form:{},
form:{
assetType:'1',
contractionSource:'1',
contractionStatus:'1',
collectionPay:'1',
settleType:'1',
contractPaymentType:'1',
biddingType:'',
startTime:this.format(new Date(),'yyyy-MM-dd'),
endTime:this.format(new Date(),'yyyy-MM-dd'),
meetingTime:this.format(new Date(),'yyyy-MM-dd'),
biddingDate:this.format(new Date(),'yyyy-MM-dd'),
reviewTime:this.format(new Date(),'yyyy-MM-dd'),
buildingTime:this.format(new Date(),'yyyy-MM-dd'),
},
queryParams:{
pageNum:1,
pageSize:10,
orderByColumn:'createTime',
isAsc:'desc',
name:'',
}
},
startTime:new Date(),
endTime:new Date(),
meetingTime:new Date(),
biddingDate:new Date(),
reviewTime:new Date(),
buildingTime:new Date(),
//合同类型
assetType:'农村土地承包合同类',
showAssetType:false,
assetTypeOptions:[],
//合同来源
contractionSource:'线下合同',
showContractionSource:false,
contractionSourceOptions:[],
//合同状态
contractionStatus:'正常',
showContractionStatus:false,
contractionStatusOptions:[],
//收付款类型
collectionPay:'收款',
showCollectionPay:false,
collectionPayOptions:[],
//结款方式
settleType:'一次性支付',
showSettleType:false,
settleTypeOptions:[],
//支付方式
contractPaymentType:'现金',
showContractPaymentType:false,
contractPaymentTypeOptions:[],
//支付方式
biddingType:'',
showBiddingType:false,
biddingTypeOptions:[],

showStartTime:false,
showEndTime:false,
showMeetingTime:false,
showBiddingDate:false,
showReviewTime:false,
showBuildingTime:false,
};
},
created() {
this.houseGetDicts("asset_status").then((response) => {
this.assetStatusOptions = response.data;
this.houseGetDicts("type_of_contract").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.assetTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("contraction_source").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.contractionSourceOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("asset_type").then((response) => {
this.assetTypeOptions = response.data;
this.houseGetDicts("contraction_status").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.contractionStatusOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("collection_pay").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.collectionPayOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("settle_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.settleTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("contract_payment_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.contractPaymentTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
this.houseGetDicts("use_type").then((response) => {
this.useTypeOptions = response.data;
this.houseGetDicts("bidding_types").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.biddingTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
});
},
methods: {
getList(){
setTimeout(() => {
permanentList(this.queryParams).then(response => {
this.listLength = response.total;
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].assetStatus = this.selectDictLabel(this.assetStatusOptions, response.rows[i].assetStatus);
response.rows[i].assetType = this.selectDictLabel(this.assetTypeOptions, response.rows[i].assetType);
response.rows[i].useType = this.selectDictLabel(this.useTypeOptions, response.rows[i].useType);
response.rows[i].originalValue = Number(response.rows[i].originalValue ).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { return $1 + ","; }).replace(/\.$/, "")
this.applicationList.push(response.rows[i]);
this.applicationListSecond.push(response.rows[i]);
}
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
onConfirmAssetType(data){
this.assetType = data.text;
this.form.assetType = data.value;
this.showAssetType = false;
},
getSearchList(){
this.loading = true;
if(this.applicationListSecond.length>0&&this.queryParams.name!=""){
let newList = []
for(let j = 0 ;j<this.applicationListSecond.length;j++){
if(this.applicationListSecond[j].name.indexOf(this.queryParams.name)>-1){
newList.push(this.applicationListSecond[j]);
}
}
this.applicationList = newList
}
if(this.queryParams.name==""){
this.applicationList = this.applicationListSecond;
}
this.loading = false;
onConfirmContractionSource(data){
this.contractionSource = data.text;
this.form.contractionSource = data.value;
this.showContractionSource = false;
},
onConfirmContractionStatus(data){
this.contractionStatus = data.text;
this.form.contractionStatus = data.value;
this.showContractionStatus = false;
},
onConfirmCollectionPay(data){
this.collectionPay = data.text;
this.form.collectionPay = data.value;
this.showCollectionPay = false;
},
onConfirmSettleType(data){
this.settleType = data.text;
this.form.settleType = data.value;
this.showSettleType = false;
},
onConfirmContractPaymentType(data){
this.contractPaymentType = data.text;
this.form.contractPaymentType = data.value;
this.showContractPaymentType = false;
},
onConfirmBiddingType(data){
this.biddingType = data.text;
this.form.biddingType = data.value;
this.showBiddingType = false;
},
onSubmit(){}
onConfirmStartTime(data){
this.form.startTime = this.format(data,'yyyy-MM-dd');
this.startTime = data;
this.showStartTime = false;
},
onConfirmEndTime(data){
this.form.endTime = this.format(data,'yyyy-MM-dd');
this.endTime = data;
this.showEndTime = false;
},
onConfirmMeetingTime(data){
this.form.meetingTime = this.format(data,'yyyy-MM-dd');
this.meetingTime = data;
this.showMeetingTime = false;
},
onConfirmBiddingDate(data){
this.form.biddingDate = this.format(data,'yyyy-MM-dd');
this.biddingDate = data;
this.showBiddingDate = false;
},
onConfirmReviewTime(data){
this.form.reviewTime = this.format(data,'yyyy-MM-dd');
this.reviewTime = data;
this.showReviewTime = false;
},
onConfirmBuildingTime(data){
this.form.buildingTime = this.format(data,'yyyy-MM-dd');
this.buildingTime = data;
this.showBuildingTime = false;
},
onSubmit(){
addInfo(this.form).then((response) => {
if (response.code == 200){
this.$notify({ type: 'success', message: '新增成功' });
setTimeout(function(){
history.back(-1);
},2000)
}
});
}
},
}
</script>


+ 636
- 0
src/views/sunVillage_info/informationDetail.vue ファイルの表示

@@ -0,0 +1,636 @@
<template>
<div class="home_wrapper">
<div class="header_main">
查看合同信息
<div class="return_btn" @click="onClickLeft"></div>
</div>
<van-form @submit="onSubmit">
<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">合同信息</p>
</div>
<van-field readonly required v-model="form.code" label="合同编码" placeholder="合同编码" input-align="right" :border="false" />
<van-field readonly required v-model="form.name" label="合同名称" placeholder="合同名称" input-align="right" :border="false" />

<van-field
readonly
clickable
label="合同类型"
placeholder="请选择"
v-model="assetType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择合同类型' }]"
/>
<van-popup v-model="showAssetType" position="bottom">
<van-picker
show-toolbar
:columns="assetTypeOptions"
@confirm="onConfirmAssetType"
@cancel="showAssetType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="合同来源"
placeholder="请选择"
v-model="contractionSource"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择合同来源' }]"
/>
<van-popup v-model="showContractionSource" position="bottom">
<van-picker
show-toolbar
:columns="contractionSourceOptions"
@confirm="onConfirmContractionSource"
@cancel="showContractionSource = false"
/>
</van-popup>
<van-field readonly required v-model="form.firstParty" label="合同甲方" placeholder="合同甲方" input-align="right" :border="false" />
<van-field readonly v-model="form.firstPartyDirector" label="甲方代表" placeholder="甲方代表" input-align="right" :border="false" />
<van-field readonly v-model="form.firstPartyPhone" label="甲方电话" placeholder="甲方电话" input-align="right" :border="false" />
<van-field readonly required v-model="form.secondParty" label="合同乙方" placeholder="乙方名称" input-align="right" :border="false" />
<van-field readonly v-model="form.secondPartyDirector" label="乙方代表" placeholder="乙方代表" input-align="right" :border="false" />
<van-field readonly v-model="form.secondPartyPhone" label="乙方电话" placeholder="乙方电话" input-align="right" :border="false" />

<van-field readonly v-model="form.secondPartyIdCard" label="乙方身份证号" placeholder="乙方身份证号" input-align="right" :border="false" />


<van-field
readonly
clickable
label="签订日期"
placeholder="请选择"
v-model="form.buildingTime"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
/>
<van-popup v-model="showBuildingTime" position="bottom">
<van-datetime-picker
v-model="buildingTime"
type="date"
title="选择年月日"
@confirm="onConfirmBuildingTime"
@cancel="showBuildingTime = false"
/>
</van-popup>

<van-field
readonly
clickable
label="合同状态"
placeholder="请选择"
v-model="contractionStatus"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择合同状态' }]"
/>
<van-popup v-model="showContractionStatus" position="bottom">
<van-picker
show-toolbar
:columns="contractionStatusOptions"
@confirm="onConfirmContractionStatus"
@cancel="showContractionStatus = false"
/>
</van-popup>
<van-field readonly v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" />
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">合同约定</p>
</div>
<van-field
readonly
clickable
label="收付款类型"
placeholder="请选择"
v-model="collectionPay"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择收付款类型' }]"
/>
<van-popup v-model="showCollectionPay" position="bottom">
<van-picker
show-toolbar
:columns="collectionPayOptions"
@confirm="onConfirmCollectionPay"
@cancel="showCollectionPay = false"
/>
</van-popup>

<van-field
readonly
clickable
label="结款方式"
placeholder="请选择"
v-model="settleType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择结款方式' }]"
/>
<van-popup v-model="showSettleType" position="bottom">
<van-picker
show-toolbar
:columns="settleTypeOptions"
@confirm="onConfirmSettleType"
@cancel="showSettleType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="支付方式"
placeholder="请选择"
v-model="contractPaymentType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择支付方式' }]"
/>
<van-popup v-model="showContractPaymentType" position="bottom">
<van-picker
show-toolbar
:columns="contractPaymentTypeOptions"
@confirm="onConfirmContractPaymentType"
@cancel="showContractPaymentType = false"
/>
</van-popup>

<van-field readonly v-model="form.contractObject" label="合同标的" placeholder="合同标的" input-align="right" :border="false" />
<van-field readonly v-model="form.num" label="标的数量" placeholder="标的数量" input-align="right" :border="false" />

<van-field readonly v-model="form.unit" label="计量单位" placeholder="计量单位" input-align="right" :border="false" />

<van-field
readonly
clickable
label="开始日期"
placeholder="请选择"
v-model="form.startTime"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择开始日期' }]"
/>
<van-popup v-model="showStartTime" position="bottom">
<van-datetime-picker
v-model="startTime"
type="date"
title="选择年月日"
@confirm="onConfirmStartTime"
@cancel="showStartTime = false"
/>
</van-popup>

<van-field
readonly
clickable
label="结束日期"
placeholder="请选择"
v-model="form.endTime"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择开始日期' }]"
/>
<van-popup v-model="showEndTime" position="bottom">
<van-datetime-picker
v-model="endTime"
type="date"
title="选择年月日"
@confirm="onConfirmEndTime"
@cancel="showEndTime = false"
/>
</van-popup>


<van-field readonly v-model="form.contractYears" label="承包年限(年)" placeholder="承包年限(年)" input-align="right" :border="false" />
<van-field readonly required v-model="form.totalAmount" label="承包价款(元)" placeholder="承包价款(元)" input-align="right" :border="false" />
<van-field readonly required v-model="form.price" label="折合年均(元)" placeholder="折合年均(元)" input-align="right" :border="false" />

<van-field readonly required v-model="form.receivedAmount" label="已结款(元)" placeholder="已结款(元)" input-align="right" :border="false" />
<van-field readonly v-model="form.settledAmount" label="下次结款(元)" placeholder="下次结款(元)" input-align="right" :border="false" />

</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_2.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">村委情况</p>
</div>
<van-field readonly v-model="form.villageHead" label="村负责人" placeholder="村负责人" input-align="right" :border="false" />
<van-field readonly v-model="form.contractCustodian" label="合同保管人" placeholder="合同保管人" input-align="right" />
<van-field readonly v-model="form.villageRepsOpinion" label="村民代表意见" placeholder="村民代表意见" input-align="right" :border="false" />

<van-field
readonly
clickable
label="会议时间"
placeholder="请选择"
v-model="form.meetingTime"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showMeetingTime" position="bottom">
<van-datetime-picker
v-model="meetingTime"
type="date"
title="选择年月日"
@confirm="onConfirmMeetingTime"
@cancel="showMeetingTime = false"
/>
</van-popup>
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_2.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">招标信息</p>
</div>
<!-- <van-field required v-model="form.biddingWay" label="招标方式" placeholder="招标方式" input-align="right" :border="false" />-->
<van-field readonly v-model="form.itemId" label="项目编号" placeholder="项目编号" input-align="right" />
<van-field readonly v-model="form.itemName" label="项目名称" placeholder="项目名称" input-align="right" :border="false" />
<van-field readonly v-model="form.handleName" label="经办人" placeholder="经办人" input-align="right" :border="false" />
<van-field readonly v-model="form.budget" label="预算金额(元)" placeholder="预算金额(元)" input-align="right" :border="false" />

<van-field
readonly
clickable
label="招标日期"
placeholder="请选择"
v-model="form.biddingDate"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showBiddingDate" position="bottom">
<van-datetime-picker
v-model="biddingDate"
type="date"
title="选择年月日"
@confirm="onConfirmBiddingDate"
@cancel="showBiddingDate = false"
/>
</van-popup>

<van-field
readonly
clickable
label="招标类型"
placeholder="请选择"
v-model="biddingType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showBiddingType" position="bottom">
<van-picker
show-toolbar
:columns="biddingTypeOptions"
@confirm="onConfirmBiddingType"
@cancel="showBiddingType = false"
/>
</van-popup>
<van-field readonly v-model="form.winBiddingCompany" label="中标单位" placeholder="中标单位" input-align="right" :border="false" />
<van-field readonly v-model="form.winBiddingPrice" label="中标金额(元)" placeholder="中标金额(元)" input-align="right" :border="false" />
<van-field readonly v-model="form.reviewer" label="审核人" placeholder="审核人" input-align="right" :border="false" />

<van-field
readonly
clickable
label="审核时间"
placeholder="请选择"
v-model="form.reviewTime"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showReviewTime" position="bottom">
<van-datetime-picker
v-model="reviewTime"
type="date"
title="选择年月日"
@confirm="onConfirmReviewTime"
@cancel="showReviewTime = false"
/>
</van-popup>
</div>

<!-- <div style="margin: 16px;">-->
<!-- <van-button round block type="primary" native-type="submit">-->
<!-- 提交-->
<!-- </van-button>-->
<!-- </div>-->
</van-form>
</div>
</template>
<script>
import { getInfo } from "@/api/sunVillage_info/fixedAssets";
export default {
name: "certificateList",
data() {
return {
applicationList:[],
applicationListSecond:[],
assetStatusOptions:[],
auditStatus:[],
loading: false,
finished: false,
listLength:'0',
searchInput:'',
form:{
assetType:'1',
contractionSource:'1',
contractionStatus:'1',
collectionPay:'1',
settleType:'1',
contractPaymentType:'1',
biddingType:'',
startTime:this.format(new Date(),'yyyy-MM-dd'),
endTime:this.format(new Date(),'yyyy-MM-dd'),
meetingTime:this.format(new Date(),'yyyy-MM-dd'),
biddingDate:this.format(new Date(),'yyyy-MM-dd'),
reviewTime:this.format(new Date(),'yyyy-MM-dd'),
buildingTime:this.format(new Date(),'yyyy-MM-dd'),
},
queryParams:{
pageNum:1,
pageSize:10,
orderByColumn:'createTime',
isAsc:'desc',
name:'',
},
startTime:new Date(),
endTime:new Date(),
meetingTime:new Date(),
biddingDate:new Date(),
reviewTime:new Date(),
buildingTime:new Date(),
//合同类型
assetType:'农村土地承包合同类',
showAssetType:false,
assetTypeOptions:[],
//合同来源
contractionSource:'线下合同',
showContractionSource:false,
contractionSourceOptions:[],
//合同状态
contractionStatus:'正常',
showContractionStatus:false,
contractionStatusOptions:[],
//收付款类型
collectionPay:'收款',
showCollectionPay:false,
collectionPayOptions:[],
//结款方式
settleType:'一次性支付',
showSettleType:false,
settleTypeOptions:[],
//支付方式
contractPaymentType:'现金',
showContractPaymentType:false,
contractPaymentTypeOptions:[],
//支付方式
biddingType:'',
showBiddingType:false,
biddingTypeOptions:[],

showStartTime:false,
showEndTime:false,
showMeetingTime:false,
showBiddingDate:false,
showReviewTime:false,
showBuildingTime:false,
};
},
created() {
this.houseGetDicts("type_of_contract").then((response) => {
this.assetTypeOptions = response.data;
});
this.houseGetDicts("contraction_source").then((response) => {
this.contractionSourceOptions = response.data;
});
this.houseGetDicts("contraction_status").then((response) => {
this.contractionStatusOptions = response.data;
});
this.houseGetDicts("collection_pay").then((response) => {
this.collectionPayOptions = response.data;
});
this.houseGetDicts("settle_type").then((response) => {
this.settleTypeOptions = response.data;
});
this.houseGetDicts("contract_payment_type").then((response) => {
this.contractPaymentTypeOptions = response.data;
});
this.houseGetDicts("bidding_types").then((response) => {
this.biddingTypeOptions = response.data;
});
this.getDetail(this.$route.query.id)
},
methods: {
getDetail(id){
setTimeout(() => {
getInfo(id).then(response => {
this.form = response.data;

this.assetType = this.selectDictLabel(this.assetTypeOptions, response.data.assetType);
this.contractionSource = this.selectDictLabel(this.contractionSourceOptions, response.data.contractionSource);
this.contractionStatus = this.selectDictLabel(this.contractionStatusOptions, response.data.contractionStatus);
this.collectionPay = this.selectDictLabel(this.collectionPayOptions, response.data.collectionPay);
this.settleType = this.selectDictLabel(this.settleTypeOptions, response.data.settleType);
this.contractPaymentType = this.selectDictLabel(this.contractPaymentTypeOptions, response.data.contractPaymentType);
this.biddingType = this.selectDictLabel(this.biddingTypeOptions, response.data.biddingType);
});
}, 1000);
},
onConfirmAssetType(data){
this.assetType = data.text;
this.form.assetType = data.value;
this.showAssetType = false;
},
onConfirmContractionSource(data){
this.contractionSource = data.text;
this.form.contractionSource = data.value;
this.showContractionSource = false;
},
onConfirmContractionStatus(data){
this.contractionStatus = data.text;
this.form.contractionStatus = data.value;
this.showContractionStatus = false;
},
onConfirmCollectionPay(data){
this.collectionPay = data.text;
this.form.collectionPay = data.value;
this.showCollectionPay = false;
},
onConfirmSettleType(data){
this.settleType = data.text;
this.form.settleType = data.value;
this.showSettleType = false;
},
onConfirmContractPaymentType(data){
this.contractPaymentType = data.text;
this.form.contractPaymentType = data.value;
this.showContractPaymentType = false;
},
onConfirmBiddingType(data){
this.biddingType = data.text;
this.form.biddingType = data.value;
this.showBiddingType = false;
},
onConfirmStartTime(data){
this.form.startTime = this.format(data,'yyyy-MM-dd');
this.startTime = data;
this.showStartTime = false;
},
onConfirmEndTime(data){
this.form.endTime = this.format(data,'yyyy-MM-dd');
this.endTime = data;
this.showEndTime = false;
},
onConfirmMeetingTime(data){
this.form.meetingTime = this.format(data,'yyyy-MM-dd');
this.meetingTime = data;
this.showMeetingTime = false;
},
onConfirmBiddingDate(data){
this.form.biddingDate = this.format(data,'yyyy-MM-dd');
this.biddingDate = data;
this.showBiddingDate = false;
},
onConfirmReviewTime(data){
this.form.reviewTime = this.format(data,'yyyy-MM-dd');
this.reviewTime = data;
this.showReviewTime = false;
},
onConfirmBuildingTime(data){
this.form.buildingTime = this.format(data,'yyyy-MM-dd');
this.buildingTime = data;
this.showBuildingTime = false;
},
onSubmit(){
addInfo(this.form).then((response) => {
if (response.code == 200){
this.$notify({ type: 'success', message: '新增成功' });
setTimeout(function(){
history.back(-1);
},2000)
}
});
}
},
}
</script>
<style scoped lang="scss">
.home_wrapper{
background: #e9e9e9;
min-height: 100vh;
width: 100vw;
.header_main {
height: 116px;
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat;
background-size: 100% 100%;
position: fixed;
top: 0;
left: 0;
width: 100%;
font-size: 36px;
line-height: 116px;
text-align: center;
color: #fff;
position: relative;

.return_btn {
width: 24px;
height: 43.2px;
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat;
background-size: 20px 36px;
position: absolute;
left: 38px;
top: 36px;
}

.add_btn {
width: 56.4px;
height: 40.8px;
background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat;
background-size: 47px 34px;
position: absolute;
right: 38px;
top: 36px;
}
}
.list_main{
padding:25px;
background: #ffffff;
width: 94%;
margin: 25px auto 0;
border-radius: 15PX;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
}
.titBox{
display: flex;
align-items: center;
}
.tit{
font-size: 36px;
font-weight: bold;
}
/deep/ .van-cell{
padding-left: 0!important;
padding-right: 0!important;
padding-bottom: 0!important;
}
/deep/ .van-field__label{
padding-left: 10PX;
width: 8.2em;
}
/deep/ .van-cell--required::before{
left: 0;
}

}







</style>

+ 670
- 0
src/views/sunVillage_info/informationEdit.vue ファイルの表示

@@ -0,0 +1,670 @@
<template>
<div class="home_wrapper">
<div class="header_main">
修改合同信息
<div class="return_btn" @click="onClickLeft"></div>
</div>
<van-form @submit="onSubmit">
<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">合同信息</p>
</div>
<van-field required v-model="form.code" label="合同编码" placeholder="合同编码" input-align="right" :border="false" />
<van-field required v-model="form.name" label="合同名称" placeholder="合同名称" input-align="right" :border="false" />

<van-field
readonly
clickable
label="合同类型"
placeholder="请选择"
v-model="assetType"
@click="showAssetType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择合同类型' }]"
/>
<van-popup v-model="showAssetType" position="bottom">
<van-picker
show-toolbar
:columns="assetTypeOptions"
@confirm="onConfirmAssetType"
@cancel="showAssetType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="合同来源"
placeholder="请选择"
v-model="contractionSource"
@click="showContractionSource = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择合同来源' }]"
/>
<van-popup v-model="showContractionSource" position="bottom">
<van-picker
show-toolbar
:columns="contractionSourceOptions"
@confirm="onConfirmContractionSource"
@cancel="showContractionSource = false"
/>
</van-popup>
<van-field required v-model="form.firstParty" label="合同甲方" placeholder="合同甲方" input-align="right" :border="false" />
<van-field v-model="form.firstPartyDirector" label="甲方代表" placeholder="甲方代表" input-align="right" :border="false" />
<van-field v-model="form.firstPartyPhone" label="甲方电话" placeholder="甲方电话" input-align="right" :border="false" />
<van-field required v-model="form.secondParty" label="合同乙方" placeholder="乙方名称" input-align="right" :border="false" />
<van-field v-model="form.secondPartyDirector" label="乙方代表" placeholder="乙方代表" input-align="right" :border="false" />
<van-field v-model="form.secondPartyPhone" label="乙方电话" placeholder="乙方电话" input-align="right" :border="false" />

<van-field v-model="form.secondPartyIdCard" label="乙方身份证号" placeholder="乙方身份证号" input-align="right" :border="false" />


<van-field
readonly
clickable
label="签订日期"
placeholder="请选择"
v-model="form.buildingTime"
@click="showBuildingTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
/>
<van-popup v-model="showBuildingTime" position="bottom">
<van-datetime-picker
v-model="buildingTime"
type="date"
title="选择年月日"
@confirm="onConfirmBuildingTime"
@cancel="showBuildingTime = false"
/>
</van-popup>

<van-field
readonly
clickable
label="合同状态"
placeholder="请选择"
v-model="contractionStatus"
@click="showContractionStatus = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择合同状态' }]"
/>
<van-popup v-model="showContractionStatus" position="bottom">
<van-picker
show-toolbar
:columns="contractionStatusOptions"
@confirm="onConfirmContractionStatus"
@cancel="showContractionStatus = false"
/>
</van-popup>
<van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" />
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_1.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">合同约定</p>
</div>
<van-field
readonly
clickable
label="收付款类型"
placeholder="请选择"
v-model="collectionPay"
@click="showCollectionPay = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择收付款类型' }]"
/>
<van-popup v-model="showCollectionPay" position="bottom">
<van-picker
show-toolbar
:columns="collectionPayOptions"
@confirm="onConfirmCollectionPay"
@cancel="showCollectionPay = false"
/>
</van-popup>

<van-field
readonly
clickable
label="结款方式"
placeholder="请选择"
v-model="settleType"
@click="showSettleType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择结款方式' }]"
/>
<van-popup v-model="showSettleType" position="bottom">
<van-picker
show-toolbar
:columns="settleTypeOptions"
@confirm="onConfirmSettleType"
@cancel="showSettleType = false"
/>
</van-popup>

<van-field
readonly
clickable
label="支付方式"
placeholder="请选择"
v-model="contractPaymentType"
@click="showContractPaymentType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择支付方式' }]"
/>
<van-popup v-model="showContractPaymentType" position="bottom">
<van-picker
show-toolbar
:columns="contractPaymentTypeOptions"
@confirm="onConfirmContractPaymentType"
@cancel="showContractPaymentType = false"
/>
</van-popup>

<van-field v-model="form.contractObject" label="合同标的" placeholder="合同标的" input-align="right" :border="false" />
<van-field v-model="form.num" label="标的数量" placeholder="标的数量" input-align="right" :border="false" />

<van-field v-model="form.unit" label="计量单位" placeholder="计量单位" input-align="right" :border="false" />

<van-field
readonly
clickable
label="开始日期"
placeholder="请选择"
v-model="form.startTime"
@click="showStartTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择开始日期' }]"
/>
<van-popup v-model="showStartTime" position="bottom">
<van-datetime-picker
v-model="startTime"
type="date"
title="选择年月日"
@confirm="onConfirmStartTime"
@cancel="showStartTime = false"
/>
</van-popup>

<van-field
readonly
clickable
label="结束日期"
placeholder="请选择"
v-model="form.endTime"
@click="showEndTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:border="false"
:rules="[{ required: true , message:'请选择开始日期' }]"
/>
<van-popup v-model="showEndTime" position="bottom">
<van-datetime-picker
v-model="endTime"
type="date"
title="选择年月日"
@confirm="onConfirmEndTime"
@cancel="showEndTime = false"
/>
</van-popup>


<van-field v-model="form.contractYears" label="承包年限(年)" placeholder="承包年限(年)" input-align="right" :border="false" />
<van-field required v-model="form.totalAmount" label="承包价款(元)" placeholder="承包价款(元)" input-align="right" :border="false" />
<van-field required v-model="form.price" label="折合年均(元)" placeholder="折合年均(元)" input-align="right" :border="false" />

<van-field required v-model="form.receivedAmount" label="已结款(元)" placeholder="已结款(元)" input-align="right" :border="false" />
<van-field v-model="form.settledAmount" label="下次结款(元)" placeholder="下次结款(元)" input-align="right" :border="false" />

</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_2.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">村委情况</p>
</div>
<van-field v-model="form.villageHead" label="村负责人" placeholder="村负责人" input-align="right" :border="false" />
<van-field v-model="form.contractCustodian" label="合同保管人" placeholder="合同保管人" input-align="right" />
<van-field v-model="form.villageRepsOpinion" label="村民代表意见" placeholder="村民代表意见" input-align="right" :border="false" />

<van-field
readonly
clickable
label="会议时间"
placeholder="请选择"
v-model="form.meetingTime"
@click="showMeetingTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showMeetingTime" position="bottom">
<van-datetime-picker
v-model="meetingTime"
type="date"
title="选择年月日"
@confirm="onConfirmMeetingTime"
@cancel="showMeetingTime = false"
/>
</van-popup>
</div>

<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/add_icon_2.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">招标信息</p>
</div>
<!-- <van-field required v-model="form.biddingWay" label="招标方式" placeholder="招标方式" input-align="right" :border="false" />-->
<van-field v-model="form.itemId" label="项目编号" placeholder="项目编号" input-align="right" />
<van-field v-model="form.itemName" label="项目名称" placeholder="项目名称" input-align="right" :border="false" />
<van-field v-model="form.handleName" label="经办人" placeholder="经办人" input-align="right" :border="false" />
<van-field v-model="form.budget" label="预算金额(元)" placeholder="预算金额(元)" input-align="right" :border="false" />

<van-field
readonly
clickable
label="招标日期"
placeholder="请选择"
v-model="form.biddingDate"
@click="showBiddingDate = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showBiddingDate" position="bottom">
<van-datetime-picker
v-model="biddingDate"
type="date"
title="选择年月日"
@confirm="onConfirmBiddingDate"
@cancel="showBiddingDate = false"
/>
</van-popup>

<van-field
readonly
clickable
label="招标类型"
placeholder="请选择"
v-model="biddingType"
@click="showBiddingType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showBiddingType" position="bottom">
<van-picker
show-toolbar
:columns="biddingTypeOptions"
@confirm="onConfirmBiddingType"
@cancel="showBiddingType = false"
/>
</van-popup>
<van-field v-model="form.winBiddingCompany" label="中标单位" placeholder="中标单位" input-align="right" :border="false" />
<van-field v-model="form.winBiddingPrice" label="中标金额(元)" placeholder="中标金额(元)" input-align="right" :border="false" />
<van-field v-model="form.reviewer" label="审核人" placeholder="审核人" input-align="right" :border="false" />

<van-field
readonly
clickable
label="审核时间"
placeholder="请选择"
v-model="form.reviewTime"
@click="showReviewTime = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
:border="false"
/>
<van-popup v-model="showReviewTime" position="bottom">
<van-datetime-picker
v-model="reviewTime"
type="date"
title="选择年月日"
@confirm="onConfirmReviewTime"
@cancel="showReviewTime = false"
/>
</van-popup>
</div>

<div style="margin: 16px;">
<van-button round block type="primary" native-type="submit">
保存
</van-button>
</div>
</van-form>
</div>
</template>
<script>
import { updateInfo , getInfo } from "@/api/sunVillage_info/fixedAssets";
export default {
name: "certificateList",
data() {
return {
applicationList:[],
applicationListSecond:[],
assetStatusOptions:[],
auditStatus:[],
loading: false,
finished: false,
listLength:'0',
searchInput:'',
form:{
assetType:'1',
contractionSource:'1',
contractionStatus:'1',
collectionPay:'1',
settleType:'1',
contractPaymentType:'1',
biddingType:'',
startTime:this.format(new Date(),'yyyy-MM-dd'),
endTime:this.format(new Date(),'yyyy-MM-dd'),
meetingTime:this.format(new Date(),'yyyy-MM-dd'),
biddingDate:this.format(new Date(),'yyyy-MM-dd'),
reviewTime:this.format(new Date(),'yyyy-MM-dd'),
buildingTime:this.format(new Date(),'yyyy-MM-dd'),
},
queryParams:{
pageNum:1,
pageSize:10,
orderByColumn:'createTime',
isAsc:'desc',
name:'',
},
startTime:new Date(),
endTime:new Date(),
meetingTime:new Date(),
biddingDate:new Date(),
reviewTime:new Date(),
buildingTime:new Date(),
//合同类型
assetType:'农村土地承包合同类',
showAssetType:false,
assetTypeOptions:[],
//合同来源
contractionSource:'线下合同',
showContractionSource:false,
contractionSourceOptions:[],
//合同状态
contractionStatus:'正常',
showContractionStatus:false,
contractionStatusOptions:[],
//收付款类型
collectionPay:'收款',
showCollectionPay:false,
collectionPayOptions:[],
//结款方式
settleType:'一次性支付',
showSettleType:false,
settleTypeOptions:[],
//支付方式
contractPaymentType:'现金',
showContractPaymentType:false,
contractPaymentTypeOptions:[],
//支付方式
biddingType:'',
showBiddingType:false,
biddingTypeOptions:[],

showStartTime:false,
showEndTime:false,
showMeetingTime:false,
showBiddingDate:false,
showReviewTime:false,
showBuildingTime:false,
};
},
created() {
this.houseGetDicts("type_of_contract").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.assetTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.assetTypeOptions = response.data;
});
this.houseGetDicts("contraction_source").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.contractionSourceOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.contractionSourceOptions = response.data;
});
this.houseGetDicts("contraction_status").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.contractionStatusOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.contractionStatusOptions = response.data;
});
this.houseGetDicts("collection_pay").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.collectionPayOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.collectionPayOptions = response.data;
});
this.houseGetDicts("settle_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.settleTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.settleTypeOptions = response.data;
});
this.houseGetDicts("contract_payment_type").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.contractPaymentTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.contractPaymentTypeOptions = response.data;
});
this.houseGetDicts("bidding_types").then((response) => {
for(var i = 0 ; i < response.data.length ; i++){
this.biddingTypeOptions.push({text:response.data[i].dictLabel,value:response.data[i].dictValue});
}
this.biddingTypeOptions = response.data;
});
this.getDetail(this.$route.query.id)
},
methods: {
getDetail(id){
setTimeout(() => {
getInfo(id).then(response => {
this.form = response.data;

this.assetType = this.selectDictLabel(this.assetTypeOptions, response.data.assetType);
this.contractionSource = this.selectDictLabel(this.contractionSourceOptions, response.data.contractionSource);
this.contractionStatus = this.selectDictLabel(this.contractionStatusOptions, response.data.contractionStatus);
this.collectionPay = this.selectDictLabel(this.collectionPayOptions, response.data.collectionPay);
this.settleType = this.selectDictLabel(this.settleTypeOptions, response.data.settleType);
this.contractPaymentType = this.selectDictLabel(this.contractPaymentTypeOptions, response.data.contractPaymentType);
this.biddingType = this.selectDictLabel(this.biddingTypeOptions, response.data.biddingType);
});
}, 1000);
},
onConfirmAssetType(data){
this.assetType = data.text;
this.form.assetType = data.value;
this.showAssetType = false;
},
onConfirmContractionSource(data){
this.contractionSource = data.text;
this.form.contractionSource = data.value;
this.showContractionSource = false;
},
onConfirmContractionStatus(data){
this.contractionStatus = data.text;
this.form.contractionStatus = data.value;
this.showContractionStatus = false;
},
onConfirmCollectionPay(data){
this.collectionPay = data.text;
this.form.collectionPay = data.value;
this.showCollectionPay = false;
},
onConfirmSettleType(data){
this.settleType = data.text;
this.form.settleType = data.value;
this.showSettleType = false;
},
onConfirmContractPaymentType(data){
this.contractPaymentType = data.text;
this.form.contractPaymentType = data.value;
this.showContractPaymentType = false;
},
onConfirmBiddingType(data){
this.biddingType = data.text;
this.form.biddingType = data.value;
this.showBiddingType = false;
},
onConfirmStartTime(data){
this.form.startTime = this.format(data,'yyyy-MM-dd');
this.startTime = data;
this.showStartTime = false;
},
onConfirmEndTime(data){
this.form.endTime = this.format(data,'yyyy-MM-dd');
this.endTime = data;
this.showEndTime = false;
},
onConfirmMeetingTime(data){
this.form.meetingTime = this.format(data,'yyyy-MM-dd');
this.meetingTime = data;
this.showMeetingTime = false;
},
onConfirmBiddingDate(data){
this.form.biddingDate = this.format(data,'yyyy-MM-dd');
this.biddingDate = data;
this.showBiddingDate = false;
},
onConfirmReviewTime(data){
this.form.reviewTime = this.format(data,'yyyy-MM-dd');
this.reviewTime = data;
this.showReviewTime = false;
},
onConfirmBuildingTime(data){
this.form.buildingTime = this.format(data,'yyyy-MM-dd');
this.buildingTime = data;
this.showBuildingTime = false;
},
onSubmit(){
updateInfo(this.form).then((response) => {
if (response.code == 200){
this.$notify({ type: 'success', message: '修改成功' });
setTimeout(function(){
history.back(-1);
},2000)
}
});
}
},
}
</script>
<style scoped lang="scss">
.home_wrapper{
background: #e9e9e9;
min-height: 100vh;
width: 100vw;
.header_main {
height: 116px;
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat;
background-size: 100% 100%;
position: fixed;
top: 0;
left: 0;
width: 100%;
font-size: 36px;
line-height: 116px;
text-align: center;
color: #fff;
position: relative;

.return_btn {
width: 24px;
height: 43.2px;
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat;
background-size: 20px 36px;
position: absolute;
left: 38px;
top: 36px;
}

.add_btn {
width: 56.4px;
height: 40.8px;
background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat;
background-size: 47px 34px;
position: absolute;
right: 38px;
top: 36px;
}
}
.list_main{
padding:25px;
background: #ffffff;
width: 94%;
margin: 25px auto 0;
border-radius: 15PX;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
}
.titBox{
display: flex;
align-items: center;
}
.tit{
font-size: 36px;
font-weight: bold;
}
/deep/ .van-cell{
padding-left: 0!important;
padding-right: 0!important;
padding-bottom: 0!important;
}
/deep/ .van-field__label{
padding-left: 10PX;
width: 8.2em;
}
/deep/ .van-cell--required::before{
left: 0;
}

}







</style>

読み込み中…
キャンセル
保存