pangdongxu 3 лет назад
Родитель
Сommit
43fa887183
22 измененных файлов: 1206 добавлений и 115 удалений
  1. +3
    -1
      app.json
  2. Двоичные данные
      image/icon/relevance_icon.png
  3. Двоичные данные
      image/icon/upload_icon.png
  4. +66
    -18
      pages/bank/add/add.js
  5. +1
    -1
      pages/bank/add/add.wxml
  6. +14
    -9
      pages/bank/bank.js
  7. +6
    -6
      pages/bank/bank.wxml
  8. +77
    -17
      pages/bankDraft/add/add.js
  9. +2
    -2
      pages/bankDraft/add/add.wxml
  10. +6
    -1
      pages/bankDraft/bankDraft.js
  11. +6
    -6
      pages/bankDraft/bankDraft.wxml
  12. +85
    -13
      pages/contract/contract.js
  13. +51
    -5
      pages/contract/contract.wxml
  14. +33
    -2
      pages/contract/contract.wxss
  15. +381
    -0
      pages/contractAssets/fixedAssets.js
  16. +14
    -0
      pages/contractAssets/fixedAssets.json
  17. +52
    -0
      pages/contractAssets/fixedAssets.wxml
  18. +272
    -0
      pages/contractAssets/fixedAssets.wxss
  19. +88
    -23
      pages/project/add/add.js
  20. +7
    -5
      pages/project/project.js
  21. +5
    -5
      pages/project/project.wxml
  22. +37
    -1
      utils/API.js

+ 3
- 1
app.json Просмотреть файл

@@ -35,7 +35,9 @@
"pages/fixedAssets/add/add", "pages/fixedAssets/add/add",
"pages/finance/finance", "pages/finance/finance",
"pages/Bookkeeping/seeBook/seeBook", "pages/Bookkeeping/seeBook/seeBook",
"pages/Bookkeeping/seeBookZC/seeBookZC"
"pages/Bookkeeping/seeBookZC/seeBookZC",
"pages/finance/finance",
"pages/contractAssets/fixedAssets"
], ],
"window": { "window": {
"backgroundTextStyle": "light", "backgroundTextStyle": "light",


Двоичные данные
image/icon/relevance_icon.png Просмотреть файл

До После
Ширина: 52  |  Высота: 52  |  Размер: 1.7 KiB

Двоичные данные
image/icon/upload_icon.png Просмотреть файл

До После
Ширина: 52  |  Высота: 52  |  Размер: 2.0 KiB

+ 66
- 18
pages/bank/add/add.js Просмотреть файл

@@ -16,7 +16,9 @@ Page({
bankType: "", //所属银行 必填 bankType: "", //所属银行 必填
bankDeposit: "", //开户行 必填 bankDeposit: "", //开户行 必填
payeePaymentLines: "", //联行号 //必填 payeePaymentLines: "", //联行号 //必填
}
},
id:"",
bankTypeOptions:[]
}, },
back:function(){ back:function(){
wx.navigateBack({ wx.navigateBack({
@@ -27,6 +29,35 @@ Page({
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {
if(options.id!=null&&options.id!=""){
this.setData({id:options.id})
UTIL.httpRequest(API.URL_GET_DEPOSITDETAIL + this.data.id, {method:'GET'}, {
success: (res) => {
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'bank_type', {method:'GET'}, {
success: (r) => {
this.setData({
bankTypeOptions:r.data
});
console.log(this.data.bankTypeOptions)
this.data.bankTypeOptions.map(rr => {
if(rr.dictValue == res.data.bankType){
res.data.bankTypeText = rr.dictLabel
this.setData({'form':res.data});
}
})
}
})
}
})
}else{
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'bank_type', {method:'GET'}, {
success: (r) => {
this.setData({
bankTypeOptions:r.data
});
}
})
}


}, },


@@ -52,13 +83,11 @@ Page({
}) })
}, },
openBox(even){ openBox(even){
console.log(even.currentTarget.dataset.name);
this.setData({ this.setData({
[even.currentTarget.dataset.name]:true [even.currentTarget.dataset.name]:true
}) })
}, },
closeBox(even){ closeBox(even){
console.log(even.currentTarget.dataset.name);
this.setData({ this.setData({
[even.currentTarget.dataset.name]:false [even.currentTarget.dataset.name]:false
}) })
@@ -66,7 +95,7 @@ Page({
onConfirm(even){ onConfirm(even){
var that = this ; var that = this ;
if(even.currentTarget.dataset.name == "showBankType"){ if(even.currentTarget.dataset.name == "showBankType"){
// 付款方式类型字典查询
// 付款方式类型字典查询
UTIL.httpRequest(API.URL_GET_DEPOSITLIST, {method:'GET',bankType:even.detail.value.dictValue,status:'0'}, { UTIL.httpRequest(API.URL_GET_DEPOSITLIST, {method:'GET',bankType:even.detail.value.dictValue,status:'0'}, {
success: (res) => { success: (res) => {
that.setData({ that.setData({
@@ -96,7 +125,8 @@ Page({
}) })
}, },
goSubmit(){ goSubmit(){
if(this.data.form.sheng===''||this.data.form.code==sheng){ //省
console.log(this.data.form)
if(this.data.form.sheng===''||this.data.form.sheng==null){ //省
UTIL.showToastNoneIcon('请填写省!'); UTIL.showToastNoneIcon('请填写省!');
return false; return false;
}else if(this.data.form.shi===''||this.data.form.shi==null){ //市 }else if(this.data.form.shi===''||this.data.form.shi==null){ //市
@@ -114,20 +144,38 @@ Page({
}else{ }else{
var that = this; var that = this;
that.data.form.method = 'POST'; that.data.form.method = 'POST';
UTIL.httpRequest(API.URL_GET_DEPOSITADD, that.data.form, {
success: (res) => {
wx.showToast({
title: "提交成功!",
duration: 2000,
icon:"success"
})
setTimeout(function(){
wx.navigateBack({
delta:1
if(that.data.form.id==""||that.data.form.id==null){
UTIL.httpRequest(API.URL_GET_DEPOSITADD, that.data.form, {
success: (res) => {
wx.showToast({
title: "提交成功!",
duration: 2000,
icon:"success"
}) })
},2000)
}
})
setTimeout(function(){
wx.navigateBack({
delta:1
})
},2000)
}
})
}else{
UTIL.httpRequest(API.URL_GET_DEPOSITUPDATE, that.data.form, {
success: (res) => {
wx.showToast({
title: "修改成功!",
duration: 2000,
icon:"success"
})
setTimeout(function(){
wx.navigateBack({
delta:1
})
},2000)
}
})
}

} }
}, },
/** /**


+ 1
- 1
pages/bank/add/add.wxml Просмотреть файл

@@ -30,7 +30,7 @@
data-value="form.bankDeposit" data-value="form.bankDeposit"
/> />
</van-popup> </van-popup>
<van-field label="开户行" value="{{ form.bankDepositText }}" placeholder="请输入开户银行" border="{{ false }}" bind:change="onChange" input-align="right" required data-formname="form.bankDepositText" />
<van-field label="开户行" value="{{ form.bankDeposit }}" placeholder="请输入开户银行" border="{{ false }}" bind:change="onChange" input-align="right" required data-formname="form.bankDepositText" />
<van-field label="联行号" value="{{ form.payeePaymentLines }}" placeholder="请输入联行号" border="{{ false }}" bind:change="onChange" input-align="right" required data-formname="form.payeePaymentLines"/> <van-field label="联行号" value="{{ form.payeePaymentLines }}" placeholder="请输入联行号" border="{{ false }}" bind:change="onChange" input-align="right" required data-formname="form.payeePaymentLines"/>
</view> </view>
<view class="bottom"> <view class="bottom">


+ 14
- 9
pages/bank/bank.js Просмотреть файл

@@ -11,7 +11,8 @@ Page({
isIPX: app.globalData.isIPX, isIPX: app.globalData.isIPX,
depositList:[], depositList:[],
bankTypeOptions:[], bankTypeOptions:[],
value:""
value:"",
scrollHeight:''
}, },
goAdd(){ goAdd(){
wx.navigateTo({ wx.navigateTo({
@@ -27,7 +28,14 @@ Page({
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {
var _this = this;
let qu = wx.createSelectorQuery()
qu.select("#top_view2").boundingClientRect()
qu.exec(res => {
_this.setData({
scrollHeight:wx.getSystemInfoSync().windowHeight-res[0].top
})
})
}, },


/** /**
@@ -51,19 +59,16 @@ Page({
let param = { let param = {
'bankDeposit':this.data.value 'bankDeposit':this.data.value
} }
console.log(2);
UTIL.httpRequest(API.URL_GET_DEPOSITLIST, param,{ UTIL.httpRequest(API.URL_GET_DEPOSITLIST, param,{
success: (response) => { success: (response) => {
if (response.code == API.SUCCESS_CODE) { if (response.code == API.SUCCESS_CODE) {
for (let i = 0; i < response.rows.length; i++) { for (let i = 0; i < response.rows.length; i++) {
response.rows[i].bankTypeText = UTIL.getTransform(response.rows[i].bankType,res.data); response.rows[i].bankTypeText = UTIL.getTransform(response.rows[i].bankType,res.data);
response.rows[i].payeePaymentLines = response.rows[i].payeePaymentLines.substr(0,4)+'****' response.rows[i].payeePaymentLines = response.rows[i].payeePaymentLines.substr(0,4)+'****'
if(i == response.rows.length-1){
that.setData({
depositList:response.rows
})
}
} }
that.setData({
depositList:response.rows
})
} }
} }
}) })
@@ -79,7 +84,7 @@ Page({
UTIL.httpRequest(API.URL_GET_DEPOSITDELETE + e.currentTarget.dataset.id, {method:'GET'},{ UTIL.httpRequest(API.URL_GET_DEPOSITDELETE + e.currentTarget.dataset.id, {method:'GET'},{
success: (res) => { success: (res) => {
if (res.code == API.SUCCESS_CODE) { if (res.code == API.SUCCESS_CODE) {
that.data.depositList.splice(e.currentTarget.dataset.index, 1);
that.data.depositList.splice(e.currentTarget.dataset.index, 1);
wx.showToast({ wx.showToast({
title: '删除成功!', title: '删除成功!',
icon: 'success', icon: 'success',


+ 6
- 6
pages/bank/bank.wxml Просмотреть файл

@@ -4,7 +4,7 @@
<text style="top:{{isIPX?'54px':'30px'}};">开户行</text> <text style="top:{{isIPX?'54px':'30px'}};">开户行</text>
</view> </view>


<view class="search_box" style="margin-top:{{isIPX?'100px':'75px'}};">
<view class="search_box" id="top_view" style="margin-top:{{isIPX?'100px':'75px'}};">
<van-search <van-search
value="{{ value }}" value="{{ value }}"
shape="round" shape="round"
@@ -15,8 +15,8 @@
/> />
<view class="add_btn" bindtap="goAdd"><text>新增</text></view> <view class="add_btn" bindtap="goAdd"><text>新增</text></view>
</view> </view>
<van-swipe-cell right-width="{{ 65 }}" class="workflow" wx:for="{{depositList}}" wx:key="index">
<scroll-view scroll-y refresher-threshold="0" id="top_view2" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100">
<van-swipe-cell right-width="{{ 65 }}" class="workflow" wx:for="{{depositList}}" wx:key="index" wx:for-item="item">
<view class="li" bindtap="goUpdate" data-id="{{item.id}}"> <view class="li" bindtap="goUpdate" data-id="{{item.id}}">
<view class="tit_box"> <view class="tit_box">
<image src="/image/apply/{{iOf.indexOf(item.bankTypeText,'中国银行') > -1 ? 'ICBC':iOf.indexOf(item.bankTypeText,'农商行') > -1 ? 'RCB':iOf.indexOf(item.bankTypeText,'农业银行') > -1 ? 'ABC':iOf.indexOf(item.bankTypeText,'建设银行') > -1 ? 'CCB':'QT'}}.png" style="width: 25px;height: 25px;"></image> <image src="/image/apply/{{iOf.indexOf(item.bankTypeText,'中国银行') > -1 ? 'ICBC':iOf.indexOf(item.bankTypeText,'农商行') > -1 ? 'RCB':iOf.indexOf(item.bankTypeText,'农业银行') > -1 ? 'ABC':iOf.indexOf(item.bankTypeText,'建设银行') > -1 ? 'CCB':'QT'}}.png" style="width: 25px;height: 25px;"></image>
@@ -32,12 +32,12 @@
</view> </view>
</view> </view>
<view slot="right" class="deleteBox"> <view slot="right" class="deleteBox">
<view style="flex: 1;height: 100%;display: flex;align-items: center;">
<image src="../../image/apply/icon_delete.png" style="width: 25px;height: 25px;margin: 0 auto;" data-id="{{item.id}}" data-index="{{index}}" bindtap="delete"></image>
<view style="flex: 1;height: 100%;display: flex;align-items: center;" data-id="{{item.id}}" data-index="{{index}}" bindtap="delete">
<image src="../../image/apply/icon_delete.png" style="width: 25px;height: 25px;margin: 0 auto;" ></image>
</view> </view>
</view> </view>
</van-swipe-cell> </van-swipe-cell>
</scroll-view>
<wxs module="iOf"> <wxs module="iOf">
var indexOf = function(name,value){ var indexOf = function(name,value){
return name.indexOf(value); return name.indexOf(value);


+ 77
- 17
pages/bankDraft/add/add.js Просмотреть файл

@@ -21,14 +21,58 @@ Page({
endTime: "", //到期日期 必填 endTime: "", //到期日期 必填
orderStatus: "", //汇票状态 必填 1在库 2转付中 3转付 4承兑 orderStatus: "", //汇票状态 必填 1在库 2转付中 3转付 4承兑
remark: "", remark: "",
}
},
orderStatusOptions:[],
orderTypeOptions:[],
showBtn:true
}, },


/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {

console.log(options)
if(options.id!=null&&options.id!=""){
let that = this
this.setData({id:options.id})
UTIL.httpRequest(API.URL_GET_MONEYORDERDETAIL + this.data.id, {method:'GET'}, {
success: (res) => {
if(res.data.orderStatus!='1'){
this.setData({'showBtn':false});
}
//汇票类型
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'order_type', {method:'GET'}, {
success: (rr) => {
this.setData({
orderTypeOptions:rr.data
});
this.data.orderTypeOptions.map(r => {
if(r.dictValue == res.data.orderType){
res.data.orderTypeText = r.dictLabel
that.setData({'form':res.data});
}
})
}
})
//汇票状态
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'order_status', {method:'GET'}, {
success: (rr) => {
this.setData({
orderStatusOptions:rr.data
});
this.data.orderStatusOptions.map(r => {
if(r.dictValue == res.data.orderStatus){
res.data.orderStatusText = r.dictLabel
that.setData({'form':res.data});
}
})
}
})
}
})
}else{
this.onShow()
}
}, },


/** /**
@@ -78,7 +122,6 @@ Page({
}) })
}, },
onConfirmOrderType(event) { onConfirmOrderType(event) {
console.log(event);
this.setData({ this.setData({
[event.currentTarget.dataset.name]: false, [event.currentTarget.dataset.name]: false,
[event.currentTarget.dataset.value]: event.detail.value.dictValue, [event.currentTarget.dataset.value]: event.detail.value.dictValue,
@@ -116,20 +159,37 @@ Page({
}else{ }else{
var that = this; var that = this;
that.data.form.method = 'POST'; that.data.form.method = 'POST';
UTIL.httpRequest(API.URL_GET_MONEYORDERADD, that.data.form , {
success: (res) => {
wx.showToast({
title: '保存成功',
icon: 'success',
duration: 2000,
complete(){
setTimeout(function(){
that.back();
},2000)
}
})
}
})
if(that.data.form.id==""||that.data.form.id==null){
UTIL.httpRequest(API.URL_GET_MONEYORDERADD, that.data.form , {
success: (res) => {
wx.showToast({
title: '新增成功',
icon: 'success',
duration: 2000,
complete(){
setTimeout(function(){
that.back();
},2000)
}
})
}
})
}else{
UTIL.httpRequest(API.URL_POST_MONEYORDERUPDATE, that.data.form , {
success: (res) => {
wx.showToast({
title: '修改成功',
icon: 'success',
duration: 2000,
complete(){
setTimeout(function(){
that.back();
},2000)
}
})
}
})
}
} }
}, },
onConfirmTime(event){ onConfirmTime(event){


+ 2
- 2
pages/bankDraft/add/add.wxml Просмотреть файл

@@ -1,7 +1,7 @@
<!--pages/payee/add/add.wxml--> <!--pages/payee/add/add.wxml-->
<view class="ns" style="height:{{isIPX?'88px':'64px'}};"> <view class="ns" style="height:{{isIPX?'88px':'64px'}};">
<image src="/image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back"></image> <image src="/image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back"></image>
<text style="top:{{isIPX?'54px':'30px'}};">新增银行汇票</text>
<text style="top:{{isIPX?'54px':'30px'}};">{{form.id?"查看":"新增"}}银行汇票</text>
</view> </view>
<view class="main-box table-box" style="margin-top:{{isIPX?'100px':'75px'}};"> <view class="main-box table-box" style="margin-top:{{isIPX?'100px':'75px'}};">


@@ -46,6 +46,6 @@
<van-field label="汇票状态" value="{{ form.orderStatusText }}" placeholder="汇票状态" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.orderStatus" is-link arrow-direction ="down" bindtap="openBox" data-name="showOrderStatus"/> <van-field label="汇票状态" value="{{ form.orderStatusText }}" placeholder="汇票状态" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.orderStatus" is-link arrow-direction ="down" bindtap="openBox" data-name="showOrderStatus"/>
<van-field label="备注" value="{{ form.remark }}" placeholder="备注" border="{{ false }}" bind:change="onChange" input-align="right" data-value="form.remark"/> <van-field label="备注" value="{{ form.remark }}" placeholder="备注" border="{{ false }}" bind:change="onChange" input-align="right" data-value="form.remark"/>
</view> </view>
<view class="bottom">
<view class="bottom" wx:if="{{showBtn}}">
<view class="btn2" bindtap="goSubmit">确认</view> <view class="btn2" bindtap="goSubmit">确认</view>
</view> </view>

+ 6
- 1
pages/bankDraft/bankDraft.js Просмотреть файл

@@ -78,6 +78,11 @@ Page({
*/ */
onReady() { onReady() {
},
goUpdate(e){
wx.navigateTo({
url: 'add/add?id='+ e.currentTarget.dataset.id,
})
}, },
goSearch(e){ goSearch(e){
this.setData({'value':e.detail}) this.setData({'value':e.detail})
@@ -218,7 +223,7 @@ Page({
} }
UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, { UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, {
success: (rr) => { success: (rr) => {
if(rr.rows.length>0){
if(rr.code==200&&rr.rows.length>0){
rr.rows.map((rrr,index) => { rr.rows.map((rrr,index) => {
rrr.url = URL_PREFIX + rrr.fileUrl rrr.url = URL_PREFIX + rrr.fileUrl
if(index==rr.rows.length-1){ if(index==rr.rows.length-1){


+ 6
- 6
pages/bankDraft/bankDraft.wxml Просмотреть файл

@@ -21,8 +21,8 @@
<van-dropdown-item value="{{ value2 }}" options="{{ option2 }}" bind:change="changeTab2" /> <van-dropdown-item value="{{ value2 }}" options="{{ option2 }}" bind:change="changeTab2" />
</van-dropdown-menu> </van-dropdown-menu>
<scroll-view scroll-y refresher-threshold="0" id="top_view2" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100"> <scroll-view scroll-y refresher-threshold="0" id="top_view2" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100">
<van-swipe-cell right-width="{{ 130 }}" class="workflow" wx:for="{{moneyorderList}}" wx:key="index">
<view class="li" bindtap="goUpdate">
<van-swipe-cell right-width="{{ 130 }}" class="workflow" wx:for="{{moneyorderList}}" wx:key="index" wx:for-item="item">
<view class="li" bindtap="goUpdate" data-id="{{item.id}}">
<view class="tit_box"> <view class="tit_box">
<view class="tit_box_left"> <view class="tit_box_left">
<van-tag plain type="danger" color="#FC9A55" style="margin-right:10px;">汇票号</van-tag> <van-tag plain type="danger" color="#FC9A55" style="margin-right:10px;">汇票号</van-tag>
@@ -55,11 +55,11 @@
</view> </view>
</view> </view>
<view slot="right" class="deleteBox"> <view slot="right" class="deleteBox">
<view style="flex: 1;height: 100%;display: flex;align-items: center;">
<image src="../../image/apply/icon_delete.png" style="width: 25px;height: 25px;margin: 0 auto;" data-id="{{item.id}}" data-index="{{index}}" bindtap="delete"></image>
<view style="flex: 1;height: 100%;display: flex;align-items: center;background-color: rgb(255,0,0,0.4);" data-id="{{item.id}}" data-index="{{index}}" bindtap="delete" wx-if="{{item.orderStatus==1}}">
<image src="../../image/apply/icon_delete.png" style="width: 25px;height: 25px;margin: 0 auto;" ></image>
</view> </view>
<view style="flex: 1;height: 100%;display: flex;align-items: center;">
<image src="../../image/apply/icon_add.png" style="width: 25px;height: 25px;margin: 0 auto;" data-id="{{item.id}}" data-index="{{index}}" bindtap="upload"></image>
<view style="flex: 1;height: 100%;display: flex;align-items: center;background-color: rgb(98,173,102,0.4);" data-id="{{item.id}}" data-index="{{index}}" bindtap="upload">
<image src="../../image/icon/upload_icon.png" style="width: 25px;height: 25px;margin: 0 auto;" ></image>
</view> </view>
</view> </view>
</van-swipe-cell> </van-swipe-cell>


+ 85
- 13
pages/contract/contract.js Просмотреть файл

@@ -23,8 +23,11 @@ Page({
uploadOptions:[], uploadOptions:[],
fileList:[], fileList:[],
showPopup:false, showPopup:false,
showRelevance:false,
relevanceList:[],
fileEvent:{}, fileEvent:{},
itemId:""
itemId:"",
contractionId:""
}, },
goAdd(){ goAdd(){
wx.navigateTo({ wx.navigateTo({
@@ -41,7 +44,6 @@ Page({
*/ */
onLoad(options) { onLoad(options) {
var that = this; var that = this;

let qu = wx.createSelectorQuery() let qu = wx.createSelectorQuery()
qu.select("#top_view").boundingClientRect() qu.select("#top_view").boundingClientRect()
qu.select("#top_ban").boundingClientRect() qu.select("#top_ban").boundingClientRect()
@@ -105,6 +107,11 @@ Page({
url: '/pages/contract/add/add?id='+e.currentTarget.dataset.id, url: '/pages/contract/add/add?id='+e.currentTarget.dataset.id,
}) })
}, },
addAssets(e){
wx.navigateTo({
url: '/pages/contractAssets/fixedAssets?id='+this.data.contractionId,
})
},
delete(e){ delete(e){
UTIL.httpRequest(API.URL_GET_CONTRACTDELETE + e.currentTarget.dataset.id, {method:'GET'}, { UTIL.httpRequest(API.URL_GET_CONTRACTDELETE + e.currentTarget.dataset.id, {method:'GET'}, {
success: (res) => { success: (res) => {
@@ -120,6 +127,60 @@ Page({
} }
}) })
}, },
relevanceBack(){
let params = {
contractionId:this.data.contractionId
}
UTIL.httpRequest(API.URL_GET_ASSETLIST, params, {
success: (rr) => {
this.setData({
'revelanceList':rr.rows,
'showRelevance':true
})
},
})
},
relevanceDelete(e){
console.log(e);
UTIL.httpRequest(API.URL_GET_ASSETREMOVE+ e.currentTarget.dataset.id, {method:'GET'}, {
success: (res) => {
if(res.code==200){
let new_list = this.data.revelanceList
new_list.splice(e.currentTarget.dataset.index,1)
this.setData({'revelanceList':new_list})
UTIL.showToastNoneIcon('删除成功!');
}else{
UTIL.showToastNoneIcon('删除失败!');
}
},
fail:(rr) =>{
console.log(rr);
},
complete:(rr) => {
console.log(rr);
}
})
},
relevance(e){
let params = {
contractionId:e.currentTarget.dataset.id
}
UTIL.httpRequest(API.URL_GET_ASSETLIST, params, {
success: (rr) => {
this.setData({
'revelanceList':rr.rows,
'showRelevance':true,
'contractionId':e.currentTarget.dataset.id
})
},
fail:(rr) =>{
console.log(rr);
},
complete:(rr) => {
console.log(rr);
}
})
},
upload(e){ upload(e){
this.setData({itemId:e.currentTarget.dataset.id}); this.setData({itemId:e.currentTarget.dataset.id});
this.asyncFun(e.currentTarget.dataset.id) this.asyncFun(e.currentTarget.dataset.id)
@@ -139,16 +200,23 @@ Page({
} }
UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, { UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, {
success: (rr) => { success: (rr) => {
console.log(rr.rows);
rr.rows.map((rrr,index) => {
rrr.url = URL_PREFIX + rrr.fileUrl
if(index==rr.rows.length-1){
newList.push(Object.assign({},res,{"list":rr.rows}))
_this.setData({"fileList":_this.data.fileList.concat(newList)});
_this.setData({"showUpload":true})
}
})

if(rr.code==200&&rr.rows.length>0){
rr.rows.map((rrr,index) => {
rrr.url = URL_PREFIX + rrr.fileUrl
if(index==rr.rows.length-1){
newList.push(Object.assign({},res,{"list":rr.rows}))
_this.setData({"fileList":_this.data.fileList.concat(newList)});
_this.setData({"showUpload":true})
}
})
}else{
let newuploadList = uploadList
newuploadList.map(rd => {
rd.list = newList
})
_this.setData({"fileList":newuploadList});
_this.setData({"showUpload":true})
}
}, },
fail:(rr) =>{ fail:(rr) =>{
console.log(rr); console.log(rr);
@@ -162,6 +230,7 @@ Page({
}, },
closeBox(){ closeBox(){
this.setData({"showUpload":false}) this.setData({"showUpload":false})
this.setData({"showRelevance":false})
}, },
deleteImg(event){ deleteImg(event){
this.setData({"fileEvent":event}) this.setData({"fileEvent":event})
@@ -271,7 +340,10 @@ Page({
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面显示
*/ */
onShow() { onShow() {

console.log(this.data.contractionId)
if(this.data.contractionId!=""&&this.data.contractionId!=null){
this.relevanceBack()
}
}, },


/** /**


+ 51
- 5
pages/contract/contract.wxml Просмотреть файл

@@ -16,7 +16,7 @@
<view class="add_btn" bindtap="goAdd"><text>新增</text></view> <view class="add_btn" bindtap="goAdd"><text>新增</text></view>
</view> </view>
<scroll-view scroll-y refresher-threshold="0" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100"> <scroll-view scroll-y refresher-threshold="0" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100">
<van-swipe-cell right-width="{{ 130 }}" class="workflow" wx:for="{{list}}" wx:key="index" wx:for-item="item" >
<van-swipe-cell right-width="{{ 150 }}" class="workflow" wx:for="{{list}}" wx:key="index" wx:for-item="item" >
<view class="li" bindtap="goUpdate" data-id="{{item.id}}"> <view class="li" bindtap="goUpdate" data-id="{{item.id}}">
<view class="tit_box"> <view class="tit_box">
<image src="/image/icon/contract_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="no-referrer|origin|unsafe-url"></image> <image src="/image/icon/contract_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="no-referrer|origin|unsafe-url"></image>
@@ -53,11 +53,29 @@
</view> </view>
</view> </view>
<view slot="right" class="deleteBox"> <view slot="right" class="deleteBox">
<view style="flex: 1;height: 100%;display: flex;align-items: center;">
<image src="../../image/apply/icon_delete.png" style="width: 25px;height: 25px;margin: 0 auto;" data-id="{{item.id}}" data-index="{{index}}" bindtap="delete"></image>
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(255,0,0,0.2);" data-id="{{item.id}}" data-index="{{index}}" bindtap="delete">
<view>
<image src="../../image/apply/icon_delete.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image>
</view>
<view>
<text style="color:red">删除</text>
</view>
</view> </view>
<view style="flex: 1;height: 100%;display: flex;align-items: center;">
<image src="../../image/apply/icon_add.png" style="width: 25px;height: 25px;margin: 0 auto;" data-id="{{item.id}}" data-index="{{index}}" bindtap="upload"></image>
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(98,173,102,0.2);" data-id="{{item.id}}" data-index="{{index}}" bindtap="upload">
<view>
<image src="../../image/icon/upload_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image>
</view>
<view>
<text style="color: #62AD66;">附件</text>
</view>
</view>
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(239,135,7,0.2);" data-id="{{item.id}}" data-index="{{index}}" bindtap="relevance">
<view>
<image src="../../image/icon/relevance_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image>
</view>
<view>
<text style="color: #ffa601;">资产</text>
</view>
</view> </view>
</view> </view>
</van-swipe-cell> </van-swipe-cell>
@@ -80,6 +98,34 @@
</view> </view>
</scroll-view> </scroll-view>
</van-action-sheet> </van-action-sheet>
<van-action-sheet show="{{showRelevance}}" title="已关联资产" bind:close="closeBox">
<scroll-view scroll-y="true" style="height: 700rpx;" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll" scroll-top="0">
<view class="table">
<view class="tr" style="background:#62AD66;color: #fff;border-radius:10px;">
<view class="th">资产类型</view>
<view class="th">资产名称</view>
<view class="th">数量(单位)</view>
</view>
<van-swipe-cell right-width="{{ 50 }}" wx:for="{{revelanceList}}" wx:key="index" wx:for-item="item" >
<view class="tr">
<view class="th">固定资产</view>
<view class="th">{{item.name}}</view>
<view class="th">{{item.num}}{{item.unit}}</view>
</view>
<view slot="right" class="deleteBoxAsset">
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(255,0,0,0.2);" bindtap="relevanceDelete" data-id="{{item.id}}" data-index="{{index}}" >
<view>
<text style="color:red">删除</text>
</view>
</view>
</view>
</van-swipe-cell>
<view class="tr" >
<button type="primary" size="mini" bindtap="addAssets">+</button>
</view>
</view>
</scroll-view>
</van-action-sheet>
<modal hidden="{{!showPopup}}" title="是否删除?" confirm-text="是" cancel-text="否" bindcancel="cancelTem" bindconfirm="confirmTem"> <modal hidden="{{!showPopup}}" title="是否删除?" confirm-text="是" cancel-text="否" bindcancel="cancelTem" bindconfirm="confirmTem">
</modal> </modal>

+ 33
- 2
pages/contract/contract.wxss Просмотреть файл

@@ -64,7 +64,15 @@ text{display: block;}
color: #31936c; color: #31936c;
} }
.deleteBox{ .deleteBox{
width: 130px;
width: 150px;
text-align: center;
height: 100%;
background: #F6F6F6;
align-items: center;
display: flex;
}
.deleteBoxAsset{
width: 50px;
text-align: center; text-align: center;
height: 100%; height: 100%;
background: #F6F6F6; background: #F6F6F6;
@@ -249,7 +257,10 @@ text{display: block;}
text-align: center; text-align: center;
border-radius: 5px; border-radius: 5px;
white-space:pre-wrap; white-space:pre-wrap;
padding: 22px 8px;
padding: 5rpx 8rpx;
width: 50rpx;
margin: 0px 14px;
font-size: 24rpx;
} }
.fj-li{ .fj-li{
margin-top: 20px; margin-top: 20px;
@@ -266,4 +277,24 @@ text{display: block;}
} }
.van-icon-description{ .van-icon-description{
font-size: 60px; font-size: 60px;
}
.table{
width:98%;
margin-left:1%;
}
.tr{
width:100%;
display: flex;
align-items:center;
justify-content:center;
height:3rem;
}
.th,.td{
flex: 1;
text-align: center;
align-items: center;
justify-content: center;
}
.th{
display: flex;
} }

+ 381
- 0
pages/contractAssets/fixedAssets.js Просмотреть файл

@@ -0,0 +1,381 @@
// pages/bank/bank.js
import * as UTIL from '../../utils/util.js';
import * as API from '../../utils/API.js';
let EVN_CONFIG = require('../../env/env');
const DISTRIBUTE_ENVIROMENT = 'IMGURL';
let {
URL_PREFIX,
} = EVN_CONFIG[DISTRIBUTE_ENVIROMENT];
const app = getApp();
Page({

/**
* 页面的初始数据
*/
data: {
isIPX: app.globalData.isIPX,
list:[],
isLoading:false,
pageNums:1,
scrollHeight:"",
name:"",
showUpload:false,
uploadOptions:[],
fileList:[],
showPopup:false,
fileEvent:{},
itemId:"",
assetTypeOptions:[]
},
goAdd(){
wx.navigateTo({
url: 'add/add',
})
},
back:function(){
wx.navigateBack({
delta: 1
})
},
assetTypeDict(val){
this.data.assetTypeOptions.map(res => {
if(res.dictValue == val){
return res.dictLabel
}
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
var that = this;
let qu = wx.createSelectorQuery()
qu.select("#top_view").boundingClientRect()
qu.select("#top_ban").boundingClientRect()
qu.exec(res => {
that.setData({
scrollHeight:wx.getSystemInfoSync().windowHeight-res[0].height-res[0].top
})
})
this.setData({'itemId':options.id})
},

/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {

//获取附件字典
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'common_attach', {method:'GET'}, {
success: (res) => {
if(res.data.length>0){
this.setData({
uploadOptions:res.data,
})
}
}
})

this.getList();
},
getList:function(){
let params = {
pageNum:this.data.pageNums,
pageSize:10,
name:this.data.name,
isMin:"Y",
useType:'2',
operationType:'1',
assetStatus:'1'
}
UTIL.httpRequest(API.URL_GET_PERMANENTLIST,params,{
success: (res) => {
console.log(res);
let _this = this
if(res.code == 200){
if(this.data.pageNums!=1&&this.data.list.length<res.total){
let lists = this.data.list.concat(res.rows)
//获取资产类别
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_type', {method:'GET'}, {
success: (r) => {
if(r.data.length>0){
let li = lists.map( res => {
r.data.map(rr => {
if(res.assetType == rr.dictValue){
res.assetType = rr.dictLabel
}
})
return res
})
_this.setData({list:li})
}else{
_this.setData({list:lists})
}
}
})
}else if(this.data.pageNums==1){
//获取资产类别
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_type', {method:'GET'}, {
success: (r) => {
if(r.data.length>0){
let li = res.rows.map( ress => {
r.data.map(rr => {
if(ress.assetType == rr.dictValue){
ress.assetType = rr.dictLabel
}
})
return ress
})
_this.setData({list:li})
}else{
_this.setData({list:res.rows})
}
}
})
}
}else{
UTIL.showToastNoneIcon(res.msg);
}
}
})
},
paging(){
this.setData({
pageNums:this.data.pageNums+1,
})
this.getList();
},
goSearch(e){
this.setData({name:e.detail});
this.setData({pageNums:1});
this.getList();
},
goUpdate(e){
let data = e.currentTarget.dataset.item;
data.method = "POST";
data.assetTable = "t_asset_permanent"
data.assetId = e.currentTarget.dataset.item.id
data.contractionId = this.data.itemId
data.num = e.currentTarget.dataset.item.quantity
UTIL.httpRequest(API.URL_GET_ASSETADD,data,{
success: (res) => {
if(res.code == 200){
UTIL.showToastNoneIcon(res.msg);
wx.navigateBack({
delta: 1
})
}else{
UTIL.showToastNoneIcon(res.msg);
}
}
})
},
delete(e){
UTIL.httpRequest(API.URL_GET_PERMANENTDELETE + e.currentTarget.dataset.id, {method:'GET'}, {
success: (res) => {
if(res.code==200){
let new_list = this.data.list
new_list.splice(e.currentTarget.dataset.index,1)
this.setData({'list':new_list})
UTIL.showToastNoneIcon('删除成功!');
}else{
UTIL.showToastNoneIcon('删除失败!');
}
}
})
},
upload(e){
this.setData({itemId:e.currentTarget.dataset.id});
this.asyncFun(e.currentTarget.dataset.id)
},
asyncFun(id){
this.setData({"fileList":[]})
let uploadList = this.data.uploadOptions
let newList = []
let _this = this
uploadList.map( res => {
let oData = {
tableId: id,
tableName: "t_asset_permanent", //上传表
bizPath: "asset",
fileType: res.dictValue, //附件类型 1原始发票 2会议纪要 3会议照片 4 参会人员签字
method:'GET'
}
UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, {
success: (rr) => {
if(rr.rows.length>0){
rr.rows.map((rrr,index) => {
rrr.url = URL_PREFIX + rrr.fileUrl
if(index==rr.rows.length-1){
newList.push(Object.assign({},res,{"list":rr.rows}))
_this.setData({"fileList":_this.data.fileList.concat(newList)});
_this.setData({"showUpload":true})
}
})
}else{
let newuploadList = uploadList
newuploadList.map(rd => {
rd.list = newList
})
_this.setData({"fileList":newuploadList});
_this.setData({"showUpload":true})
}
},
fail:(rr) =>{
console.log(rr);
},
complete:(rr) => {
console.log(rr);
}
})
})

},
closeBox(){
this.setData({"showUpload":false})
},
deleteImg(event){
this.setData({"fileEvent":event})
this.setData({"showPopup":true});
},
cancelTem:function(e){
this.setData({"fileEvent":"{}"});
this.setData({"showPopup":false});
},
confirmTem:function(e){
let event = this.data.fileEvent
console.log(event);
UTIL.httpRequest(API.URL_GET_GETFILEREMOVE+event.detail.file.id , {method:'GET'}, {
success: (res) => {
if(res.code==200){
let ll = this.data.fileList
var jsonlist = ll[event.target.dataset.idx].list;
jsonlist.splice(event.detail.index, 1)
ll[event.target.dataset.idx].list = jsonlist
this.setData({"fileList":ll})
this.setData({showPopup:false});
wx.showToast({
title: '删除成功!',
icon: 'success',
duration: 2000,
})
}
}
})
},
uploadFile(uploadFile,event) {
let _this = this
return new Promise((resolve, reject) => {
wx.uploadFile({
url: API.URL_GET_UPLOAD,
filePath: uploadFile.file.file[0].url,
name: 'file',
header: {
"Content-Type": "multipart/form-data",//记得设置
"chartset":"utf-8",
'Authorization':'Bearer '+getApp().globalData.userInfo.token
},
formData:uploadFile,
success: (res) => {
res.data = JSON.parse(res.data);
if(res.statusCode == 200){
let files = _this.data.fileList
let fName = res.data.fileUrl.split('/')
let fLength = fName.length
files[event.currentTarget.dataset.idx].list.push({
"fileName": fName[fLength-1],
"fileType": "0",
"fileUrl":res.data.fileUrl ,
"id": res.data.id,
"tableId": 6,
"url":URL_PREFIX+res.data.fileUrl
})
_this.setData({"fileList":files})
wx.hideLoading()
}
},
fail: (err) => {
//上传失败:修改pedding为reject
reject(err)
}
});
})
},
afterRead(event) {
let _this = this
wx.showLoading({
title: '上传中...'
})
let fileForm={
file: event.detail,
fileType:event.currentTarget.dataset.idx,
tableName: "t_asset_permanent", //上传表
bizPath: "asset",
tableId:_this.data.itemId
}
this.uploadFile(fileForm,event)
},
lookDown(file,detail){
// 获取指定字符串最后一次出现的位置,返回index
var index1 = file.detail.url.lastIndexOf('.');
// substr(start, length) 抽取从start下标开始的length个字符,返回新的字符串;
var style = file.detail.url.substr(index1 + 1)
//判断图片类型,不需要下载,不做处理
if(style=='png'||style=='jpg'||style=='jpeg'||style=='bmp'||style=='gif'||style=='webp'||style=='psd'||style== 'svg'||style=='tiff'){
//判断非图片类型
}else{
wx.downloadFile({
url: file.detail.url,
success(data){
wx.openDocument({
filePath: data.tempFilePath,
fileType: style,
showMenu:true,
success(res){
}
})
}
})
}
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {

},

/**
* 生命周期函数--监听页面隐藏
*/
onHide() {

},

/**
* 生命周期函数--监听页面卸载
*/
onUnload() {

},

/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},

/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},

/**
* 用户点击右上角分享
*/
onShareAppMessage() {

}
})

+ 14
- 0
pages/contractAssets/fixedAssets.json Просмотреть файл

@@ -0,0 +1,14 @@
{
"usingComponents": {
"van-checkbox": "@vant/weapp/checkbox/index",
"van-checkbox-group": "@vant/weapp/checkbox-group/index",
"van-cell": "@vant/weapp/cell/index",
"van-cell-group": "@vant/weapp/cell-group/index",
"van-search": "@vant/weapp/search/index",
"van-radio": "@vant/weapp/radio/index",
"van-radio-group": "@vant/weapp/radio-group/index",
"van-swipe-cell": "@vant/weapp/swipe-cell/index",
"van-action-sheet": "@vant/weapp/action-sheet/index",
"van-upload": "@vant/weapp/uploader/index"
}
}

+ 52
- 0
pages/contractAssets/fixedAssets.wxml Просмотреть файл

@@ -0,0 +1,52 @@
<!--pages/fixedAssets/fixedAssets.wxml-->
<view class="ns" id="top_ban" style="height:{{isIPX?'88px':'64px'}};">
<image src="../../image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back" referrer="no-referrer|origin|unsafe-url"></image>
<text style="top:{{isIPX?'54px':'30px'}};">可关联固定资产</text>
</view>

<view class="search_box" id="top_view" style="margin-top:{{isIPX?'100px':'75px'}};">
<van-search
value="{{ name }}"
shape="round"
background="transparent"
placeholder="请输入搜索关键词"
clearable
bind:change="goSearch"
/>
</view>
<scroll-view scroll-y refresher-threshold="0" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100">
<van-swipe-cell class="workflow" wx:for="{{list}}" wx:key="index" wx:for-item="item" >
<view class="li" bindtap="goUpdate" data-item="{{item}}">
<view class="tit_box">
<image src="/image/icon/fixedAssets_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="no-referrer|origin|unsafe-url"></image>
<text class="tit">{{item.name}}</text>
<view style="flex:1;">
<text wx:if="{{item.useType=='1'}}" style="text-align: center;float:right;font-size:12px;background:rgb(235, 154, 4,0.2);color:rgb(235, 154, 4);width:50px;line-height: 20px;">自用</text>
<text wx:if="{{item.useType=='2'}}" style="text-align: center;float:right;font-size:12px;background:rgb(235, 154, 4,0.2);color:rgb(235, 154, 4);width:50px;line-height: 20px;">闲置</text>
<text wx:if="{{item.useType=='3'}}" style="text-align: center;float:right;font-size:12px;background:rgb(235, 154, 4,0.2);color:rgb(235, 154, 4);width:70px;line-height: 20px;">出租或出借</text>
<text wx:if="{{item.useType=='4'}}" style="text-align: center;float:right;font-size:12px;background:rgb(235, 4, 4,0.2);color:rgb(235, 4, 4);width:50px;line-height: 20px;">其他</text>
</view>
</view>
<view class="detail_box">
<view style="width: 55%;margin-left:5%;">{{item.code}}</view>
<view style="width: 40%;">
{{item.assetType}}
</view>
</view>

<view class="detail_box">
<view style="width: 60%;">
<image src="/image/icon/clock_icon.png" style="width: 15px;height: 15px;border-radius:5px;margin-right: 5px;"></image>
<text>{{item.buildTime}}</text>
</view>
<view style="width: 40%;text-align: right;">
原值:
<text style="color:red">¥{{item.originalValue}}</text>
</view>
</view>
</view>
</van-swipe-cell>
</scroll-view>
<modal hidden="{{!showPopup}}" title="是否删除?" confirm-text="是" cancel-text="否" bindcancel="cancelTem" bindconfirm="confirmTem">
</modal>

+ 272
- 0
pages/contractAssets/fixedAssets.wxss Просмотреть файл

@@ -0,0 +1,272 @@
/* pages/bank/bank.wxss */
.van-search__content {
border: 1px solid #5CAE77!important;
background: #fff!important;
}
van-search {
flex: 1;
}
.search_box{
display: flex;
}
.add_btn{
flex: 0.2;
padding: var(--search-padding,10px 12px);
padding-left: 0;
}
.add_btn text{
background-color: #62AD66;
display: block;
height: 100%;
text-align: center;
line-height: 36px;
color: #fff;
border-radius: 36px;
box-shadow: 0px 5px 5px #ddd;
}
text{display: block;}
.work_plan{
padding: 40rpx 32.5rpx 30rpx;
display: flex;
}

.work_plan .menu_item{
background-color: #fff;
box-shadow: 2px 5px 5px #ddd;
border-radius: 60rpx;
text-align: center;
position: relative;
margin-right: 20px;
padding: 8px 10px;
}
.work_plan .menu_item.active{
background-color: #2C8E68;
color: #fff;
}
.work_plan .menu_item .remind{
height: 30rpx;
background: #e90101;
color: #fff;
font-size: 26rpx;
position: absolute;
line-height: 30rpx;
padding:0 10rpx;
border-radius: 25px;
top: -10rpx;
right: -10rpx;
}

.work_plan .more{
flex: 1;
text-align: center;
line-height: 60rpx;
font-size: 36rpx;
color: #31936c;
}
.deleteBox{
width: 130px;
text-align: center;
height: 100%;
background: #F6F6F6;
align-items: center;
display: flex;
}
.workflow .workflow_list{
height: 150rpx;
background-color: #fff;
border-radius: 24rpx;
box-shadow:0rpx 0rpx 10rpx rgba(0,0,0,.1);
margin-bottom: 20rpx;
padding:15rpx 25rpx 10rpx 35rpx;
}
.workflow .workflow_list .process_intro{
display: flex;
height: 62rpx;
align-items: center;
}

.workflow .process_intro .name{
width: 390rpx;
font-size: 34rpx;
margin-right: 30rpx;
display: flex;
justify-content: space-between;
align-items: center;
}
.workflow .process_intro .name .name_tit{
width: 290rpx;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.van-swipe-cell {
width: 94%;
background: #fff;
border-radius: 10px;
box-shadow: 2px 5px 5px #ddd;
margin: 0 auto;
margin-bottom: 15px;
}
.li{
width: 100%;
padding: 14px;
}
.tit_box{
display: flex;
}
.detail_box{
margin-top: 10px;
display: flex;
justify-content: space-between;
}
.li view text{
/* margin-top: 15px; */
}
.li .detail_box view{
display: flex;
align-items: center;
}
.li .detail_box view text{
color: #666666;
font-size: 12px;
}

.li view text:nth-child(1){
margin-top: 0px;
}
.li .fksr{
display: flex;
align-items: center;
margin-top: 15px;
color: #2C8E68;
font-size: 16px;
}
.li .wtj{
display: flex;
align-items: center;
justify-content: center;
padding: 3px 8px;
border-radius: 5px;
font-size: 14px;
}
.no{
background-color:#fbe3e3;
color: #e90000;
}
.white{
background-color:#feeadc;
color: #fc9a55;
}
.yes{
background-color:#ddeee3;
color: #5cae77;
}
.other{
background-color:#f0f1f6;
color: #878787;
}
.li .tit{
font-size: 14px;
color: #444444;
line-height: 14px;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
word-break: break-all;
overflow: hidden;
}
.li .fj_name{
font-size: 14px;
color: #B3DB62;
line-height: 25px;
}
.li .time{
font-size: 14px;
color: #9B9CAA;
}
.li .money{
font-size: 18px;
color: #5CAE77;
}
.van-checkbox__label {
display: flex;
justify-content: space-between;
width: 100%;
}

.van-checkbox__icon-wrap {
border-radius: 5px;
}
.van-checkbox__icon {
border-radius: 5px;
border: 2px solid #2C8E68!important;
background-color: rgba(44, 142, 104, 0.2);
}
.bottom{
width: 100%;
margin: 0 auto;
text-align: center;
padding: 15px 0;
display: flex;
position: fixed;
bottom: 0%;
background: #fff;
box-shadow: 0 0 5px #ddd;
}

.bottom view {
width: 47%;
margin: 0 auto;
border-radius: 30px;
display: inline-block;
}

.bottom .btn2{
border: 1px solid transparent;
padding: 10px 0px;
background-image: linear-gradient(to right, #2C8E68, #5CAE77);
color: #fff;
}

.downView{
display: flex;
justify-content: center;
align-items: center;
padding: 0 20px;
border: 1px solid #5CAE77;
border-radius: 50px;
background: #fff;
margin-left: auto;
}
.downView image{
width: 10px;
height: 8px;
margin-left: 10px;
}
.fj-box text{
background-color: #5CAE77;
color: #ffffff;
text-align: center;
border-radius: 5px;
white-space:pre-wrap;
padding: 5rpx 8rpx;
width: 50rpx;
margin: 0px 14px;
font-size: 24rpx;
}
.fj-li{
margin-top: 20px;
display: flex;
/* flex-wrap: wrap; */
}
.fj-li .img_li{
width: 100%;
height: 18.5vw;
}

.fj-li .img_add{
overflow: hidden;
}
.van-icon-description{
font-size: 60px;
}

+ 88
- 23
pages/project/add/add.js Просмотреть файл

@@ -11,20 +11,47 @@ Page({
isIPX: app.globalData.isIPX, isIPX: app.globalData.isIPX,
showStartTime:false, showStartTime:false,
showEndTime:false, showEndTime:false,
ynProjcetStatusOptions:[],
form:{},
id:""
}, },


/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {
var that = this;
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'yn_projcet_status', {method:'GET'}, {
success: (res) => {
this.setData({
ynProjcetStatusOptions:res.data
});
}
})
console.log(options)
if(options.id!=null&&options.id!=""){
let that = this
this.setData({id:options.id})
UTIL.httpRequest(API.URL_GET_PROJECTGET + this.data.id, {method:'GET'}, {
success: (res) => {
//汇票类型
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'yn_projcet_status', {method:'GET'}, {
success: (rr) => {
this.setData({
ynProjcetStatusOptions:rr.data
});
this.data.ynProjcetStatusOptions.map(r => {
if(r.dictValue == res.data.ynProjcetStatus){
res.data.ynProjcetStatusText = r.dictLabel
that.setData({'form':res.data});
}
})
}
})
}
})
}else{
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'yn_projcet_status', {method:'GET'}, {
success: (res) => {
this.setData({
ynProjcetStatusOptions:res.data
});
}
})
}
}, },


back:function(){ back:function(){
@@ -59,24 +86,62 @@ Page({
}); });
}, },
goSubmit(){ goSubmit(){
var that = this ;
if(this.data.form.projectName===''||this.data.form.projectName==null){ //项目名称
UTIL.showToastNoneIcon('请填写项目名称!');
return false;
}else if(this.data.form.projectContractor===''||this.data.form.projectContractor==null){ //合同承建方
UTIL.showToastNoneIcon('请输入合同承建方!');
return false;
}else if(this.data.form.startTime===''||this.data.form.startTime==null){ //开工日期
UTIL.showToastNoneIcon('请选择开工日期!');
return false;
}else if(this.data.form.endTime===''||this.data.form.endTime==null){ //竣工日期
UTIL.showToastNoneIcon('请输入竣工日期!');
return false;
}else if(this.data.form.projectAmount === ''||this.data.form.projectAmount==null){//合共价款
UTIL.showToastNoneIcon('请输入收票单位!');
return false;
}else if(this.data.form.ynProjcetStatus === ''||this.data.form.ynProjcetStatus==null){//工程状态
UTIL.showToastNoneIcon('工程状态不能为空!');
return false;
}else{
var that = this ;
let data = that.data.form; let data = that.data.form;
data.method = 'POST'; data.method = 'POST';

UTIL.httpRequest(API.URL_GET_PROJECTADD, data, {
success: (res) => {
wx.showToast({
title: "提交成功!",
duration: 2000,
icon:"success"
})
setTimeout(function(){
wx.navigateBack({
delta:1
if(that.data.form.id==""||that.data.form.id==null){
UTIL.httpRequest(API.URL_GET_PROJECTADD, data, {
success: (res) => {
wx.showToast({
title: "新增成功!",
duration: 2000,
icon:"success"
}) })
},2000)
}
})
setTimeout(function(){
wx.navigateBack({
delta:1
})
},2000)
}
})
}else{
UTIL.httpRequest(API.URL_POST_PROJECTUPDATE, data, {
success: (res) => {
wx.showToast({
title: "修改成功!",
duration: 2000,
icon:"success"
})
setTimeout(function(){
wx.navigateBack({
delta:1
})
},2000)
}
})
}
}
}, },
onChange(event){ onChange(event){
console.log(event); console.log(event);


+ 7
- 5
pages/project/project.js Просмотреть файл

@@ -68,6 +68,12 @@ this.onShow();
delta: 1 delta: 1
}) })
}, },

goUpdate(e){
wx.navigateTo({
url: 'add/add?id='+ e.currentTarget.dataset.id,
})
},
/** /**
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面显示
*/ */
@@ -145,8 +151,6 @@ this.onShow();
}) })
} }
}) })


}, },
changeTab2(e){ changeTab2(e){
var that = this ; var that = this ;
@@ -173,8 +177,6 @@ this.onShow();
}) })
} }
}) })


}, },
upload(e){ upload(e){
this.setData({itemId:e.currentTarget.dataset.id}); this.setData({itemId:e.currentTarget.dataset.id});
@@ -195,7 +197,7 @@ this.onShow();
} }
UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, { UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, {
success: (rr) => { success: (rr) => {
if(rr.rows.length>0){
if(rr.code==200&&rr.rows.length>0){
rr.rows.map((rrr,index) => { rr.rows.map((rrr,index) => {
rrr.url = URL_PREFIX + rrr.fileUrl rrr.url = URL_PREFIX + rrr.fileUrl
if(index==rr.rows.length-1){ if(index==rr.rows.length-1){


+ 5
- 5
pages/project/project.wxml Просмотреть файл

@@ -17,7 +17,7 @@
</view> </view>
<scroll-view scroll-y refresher-threshold="0" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100"> <scroll-view scroll-y refresher-threshold="0" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100">
<van-swipe-cell right-width="{{ 130 }}" class="workflow" wx:for="{{projectList}}" wx:key="index"> <van-swipe-cell right-width="{{ 130 }}" class="workflow" wx:for="{{projectList}}" wx:key="index">
<view class="li" bindtap="goUpdate">
<view class="li" bindtap="goUpdate" data-id="{{item.id}}">
<view class="tit_box"> <view class="tit_box">
<view class="tit_box_left"> <view class="tit_box_left">
<image src="/image/icon/icon_gc.png" style="width: 17px; height: 15px;"></image> <image src="/image/icon/icon_gc.png" style="width: 17px; height: 15px;"></image>
@@ -44,11 +44,11 @@
</view> </view>
</view> </view>
<view slot="right" class="deleteBox"> <view slot="right" class="deleteBox">
<view style="flex: 1;height: 100%;display: flex;align-items: center;">
<image src="../../image/apply/icon_delete.png" style="width: 25px;height: 25px;margin: 0 auto;" data-id="{{item.id}}" data-index="{{index}}" bindtap="delete"></image>
<view style="flex: 1;height: 100%;display: flex;align-items: center;background-color: rgb(255,0,0,0.4);" bindtap="delete">
<image src="../../image/apply/icon_delete.png" style="width: 25px;height: 25px;margin: 0 auto;" data-id="{{item.id}}" data-index="{{index}}" ></image>
</view> </view>
<view style="flex: 1;height: 100%;display: flex;align-items: center;">
<image src="../../image/apply/icon_add.png" style="width: 25px;height: 25px;margin: 0 auto;" data-id="{{item.id}}" data-index="{{index}}" bindtap="upload"></image>
<view style="flex: 1;height: 100%;display: flex;align-items: center;background-color: rgb(98,173,102,0.4);" bindtap="upload">
<image src="../../image/icon/upload_icon.png" style="width: 25px;height: 25px;margin: 0 auto;" data-id="{{item.id}}" data-index="{{index}}" ></image>
</view> </view>
</view> </view>
</van-swipe-cell> </van-swipe-cell>


+ 37
- 1
utils/API.js Просмотреть файл

@@ -215,6 +215,12 @@ const URL_GET_FLOWREMOVE = `${URL_PREFIX}/cashier/flow/remove/`;
//增加开户行 //增加开户行
const URL_GET_DEPOSITADD = `${URL_PREFIX}/yinnong/deposit/add`; const URL_GET_DEPOSITADD = `${URL_PREFIX}/yinnong/deposit/add`;


//查询开户行详情
const URL_GET_DEPOSITDETAIL = `${URL_PREFIX}/yinnong/deposit/get/`;

//查询开户行详情
const URL_POST_DEPOSITUPDATE = `${URL_PREFIX}/yinnong/deposit/edit`;

//添加合同 //添加合同
const URL_POST_CONTRACTADD = `${URL_PREFIX}/contraction/info/add/`; const URL_POST_CONTRACTADD = `${URL_PREFIX}/contraction/info/add/`;


@@ -234,7 +240,13 @@ const URL_GET_CONTRACTDELETE = `${URL_PREFIX}/contraction/info/remove/`;
const URL_GET_ATTACHMENTLIST = `${URL_PREFIX}/system/attachment/query/`; const URL_GET_ATTACHMENTLIST = `${URL_PREFIX}/system/attachment/query/`;


//新增银行汇票 //新增银行汇票
const URL_GET_MONEYORDERADD = `${URL_PREFIX}/yinnong/moneyorder/add`;
const URL_POST_MONEYORDERADD = `${URL_PREFIX}/yinnong/moneyorder/add`;

//银行汇票详情
const URL_GET_MONEYORDERDETAIL = `${URL_PREFIX}/yinnong/moneyorder/get/`;

//修改银行汇票
const URL_POST_MONEYORDERUPDATE = `${URL_PREFIX}/yinnong/moneyorder/edit`;


//删除银行汇票 //删除银行汇票
const URL_GET_MONEYORDERDELETE = `${URL_PREFIX}/yinnong/moneyorder/remove/`; const URL_GET_MONEYORDERDELETE = `${URL_PREFIX}/yinnong/moneyorder/remove/`;
@@ -242,6 +254,12 @@ const URL_GET_MONEYORDERDELETE = `${URL_PREFIX}/yinnong/moneyorder/remove/`;
//新增工程项目 //新增工程项目
const URL_GET_PROJECTADD = `${URL_PREFIX}/yinnong/project/add`; const URL_GET_PROJECTADD = `${URL_PREFIX}/yinnong/project/add`;


//工程项目详情
const URL_GET_PROJECTGET = `${URL_PREFIX}/yinnong/project/get/`;

//工程项目修改
const URL_POST_PROJECTUPDATE = `${URL_PREFIX}/yinnong/project/edit`;

//查询对方科目 //查询对方科目
const URL_GET_SUBJECTLIST = `${URL_PREFIX}/finance/subject/list?is_last=Y`; const URL_GET_SUBJECTLIST = `${URL_PREFIX}/finance/subject/list?is_last=Y`;


@@ -274,6 +292,14 @@ const URL_GET_PASSWORDEDIT = `${URL_PREFIX}/cashier/account/editPassWord`;
//收款人修改 //收款人修改
const URL_GET_PAYEEEDIT = `${URL_PREFIX}/yinnong/payee/edit`; const URL_GET_PAYEEEDIT = `${URL_PREFIX}/yinnong/payee/edit`;


//合同关联资产
const URL_GET_ASSETLIST = `${URL_PREFIX}/contraction/asset/list`;

//新增合同关联资产
const URL_GET_ASSETADD = `${URL_PREFIX}/contraction/asset/add`;

//删除合同关联资产
const URL_GET_ASSETREMOVE = `${URL_PREFIX}/contraction/asset/remove/`;
//收款人查询 //收款人查询
const URL_GET_PAYEEGET = `${URL_PREFIX}/yinnong/payee/get/`; const URL_GET_PAYEEGET = `${URL_PREFIX}/yinnong/payee/get/`;


@@ -387,6 +413,16 @@ export {
URL_GET_PROJECTDELETE, URL_GET_PROJECTDELETE,
URL_GET_PASSWORDEDIT, URL_GET_PASSWORDEDIT,
URL_GET_PAYEEEDIT, URL_GET_PAYEEEDIT,
URL_GET_ASSETLIST,
URL_GET_MONEYORDERDETAIL,
URL_POST_MONEYORDERUPDATE,
URL_GET_PROJECTGET,
URL_POST_PROJECTUPDATE,
URL_GET_DEPOSITDETAIL,
URL_POST_DEPOSITUPDATE,
URL_GET_ASSETADD,
URL_GET_ASSETREMOVE
URL_GET_PAYEEEDIT,
URL_GET_PAYEEGET, URL_GET_PAYEEGET,
URL_GET_PAYEEREMOVE URL_GET_PAYEEREMOVE
} }

Загрузка…
Отмена
Сохранить