Conflicts: app.jsonmaster
@@ -42,6 +42,12 @@ | |||||
"pages/apply/paymentTemplate/add/upLoad/upLoad", | "pages/apply/paymentTemplate/add/upLoad/upLoad", | ||||
"pages/apply/paymentTemplate/add/upError/upError", | "pages/apply/paymentTemplate/add/upError/upError", | ||||
"pages/apply/paymentTemplate/add/payeeList/payee" | "pages/apply/paymentTemplate/add/payeeList/payee" | ||||
"pages/contractAssets/fixedAssets", | |||||
"pages/fixedAssets/change/change", | |||||
"pages/paymentManager/paymentManager", | |||||
"pages/paymentManager/toPay/toPay", | |||||
"pages/majorEvent/majorEvent", | |||||
"pages/majorEvent/add/add" | |||||
], | ], | ||||
"window": { | "window": { | ||||
"backgroundTextStyle": "light", | "backgroundTextStyle": "light", | ||||
@@ -0,0 +1,178 @@ | |||||
Component({ | |||||
properties: { | |||||
width: { | |||||
type: String | |||||
}, | |||||
height: { | |||||
type: String | |||||
}, | |||||
insertPicture: { | |||||
type: Boolean, | |||||
value: true | |||||
}, | |||||
placeholder: { | |||||
type: String, | |||||
value: '输入文字...' | |||||
} | |||||
}, | |||||
data: { | |||||
formats: {}, | |||||
readOnly: false, | |||||
// editorHeight: 300, | |||||
keyboardHeight: 0, | |||||
isIOS: false | |||||
}, | |||||
ready() { | |||||
const platform = wx.getSystemInfoSync().platform | |||||
const isIOS = platform === 'ios' | |||||
this.setData({ | |||||
isIOS | |||||
}) | |||||
const that = this | |||||
this.updatePosition(0) | |||||
let keyboardHeight = 0 | |||||
wx.onKeyboardHeightChange(res => { | |||||
if (res.height === keyboardHeight) return | |||||
const duration = res.height > 0 ? res.duration * 1000 : 0 | |||||
keyboardHeight = res.height | |||||
setTimeout(() => { | |||||
wx.pageScrollTo({ | |||||
scrollTop: 0, | |||||
success() { | |||||
that.updatePosition(keyboardHeight) | |||||
that.editorCtx.scrollIntoView() | |||||
} | |||||
}) | |||||
}, duration) | |||||
}) | |||||
}, | |||||
methods: { | |||||
readOnlyChange() { | |||||
this.setData({ | |||||
readOnly: !this.data.readOnly | |||||
}) | |||||
}, | |||||
updatePosition(keyboardHeight) { | |||||
const toolbarHeight = 100 | |||||
const { | |||||
windowHeight, | |||||
platform | |||||
} = wx.getSystemInfoSync() | |||||
// let editorHeight = keyboardHeight > 0 ? (windowHeight - keyboardHeight - toolbarHeight) : windowHeight | |||||
this.setData({ | |||||
// editorHeight, | |||||
keyboardHeight | |||||
}) | |||||
}, | |||||
calNavigationBarAndStatusBar() { | |||||
const systemInfo = wx.getSystemInfoSync() | |||||
const { | |||||
statusBarHeight, | |||||
platform | |||||
} = systemInfo | |||||
const isIOS = platform === 'ios' | |||||
const navigationBarHeight = isIOS ? 44 : 48 | |||||
return statusBarHeight + navigationBarHeight | |||||
}, | |||||
onEditorReady() { | |||||
const that = this | |||||
//组件使用createSelectorQuery加上in(this) | |||||
wx.createSelectorQuery().in(that).select('#editor').context(function (res) { | |||||
that.editorCtx = res.context | |||||
}).exec() | |||||
}, | |||||
undo() { | |||||
this.editorCtx.undo() | |||||
}, | |||||
redo() { | |||||
this.editorCtx.redo() | |||||
}, | |||||
blur() { | |||||
this.editorCtx.blur() | |||||
}, | |||||
format(e) { | |||||
let { | |||||
name, | |||||
value | |||||
} = e.target.dataset | |||||
if (!name) return | |||||
// console.log('format', name, value) | |||||
if (name === "backgroundColor" && value === "#ff0000") { //设置字体颜色为白色 | |||||
this.editorCtx.format("color", "#ffffff") | |||||
} | |||||
if (name === "backgroundColor" && value === "#ffffff") { | |||||
this.editorCtx.format("color", "#000000") | |||||
} | |||||
if (name === "color") { //清除字体样式 | |||||
this.editorCtx.removeFormat() | |||||
} | |||||
this.editorCtx.format(name, value) | |||||
}, | |||||
onStatusChange(e) { | |||||
const formats = e.detail | |||||
this.setData({ | |||||
formats | |||||
}) | |||||
}, | |||||
insertDivider() { | |||||
this.editorCtx.insertDivider({ | |||||
success: function () { | |||||
console.log('insert divider success') | |||||
} | |||||
}) | |||||
}, | |||||
clear() { | |||||
this.editorCtx.clear({ | |||||
success: function (res) { | |||||
console.log("clear success") | |||||
} | |||||
}) | |||||
}, | |||||
removeFormat() { | |||||
this.editorCtx.removeFormat() | |||||
}, | |||||
insertDate() { | |||||
const date = new Date() | |||||
const formatDate = `${date.getFullYear()}/${date.getMonth() + 1}/${date.getDate()}` | |||||
this.editorCtx.insertText({ | |||||
text: formatDate | |||||
}) | |||||
}, | |||||
insertImage() { | |||||
this.triggerEvent('insertImage'); //触发父组件方法 | |||||
}, | |||||
insertSrc(src) { //接受图片返回地址 | |||||
this.editorCtx.insertImage({ | |||||
src, | |||||
data: { | |||||
id: 'abcd', | |||||
role: 'god' | |||||
}, | |||||
width: '80%', | |||||
fail: (err) => { | |||||
console.log(`图片插入失败:${err}`); | |||||
} | |||||
}) | |||||
}, | |||||
getContent(e) { //获得文本内容 | |||||
this.triggerEvent('Content', { | |||||
content: e.detail | |||||
}) | |||||
}, | |||||
setHtml(html) { //回显 | |||||
if (html) { | |||||
this.createSelectorQuery().select('#editor').context((res) => { | |||||
this.editorCtx = res.context | |||||
this.editorCtx.setContents({ | |||||
html, | |||||
fail: (err) => { | |||||
console.log(`内容回显失败:${err}`); | |||||
} | |||||
}) | |||||
}).exec() | |||||
} | |||||
}, | |||||
} | |||||
}) |
@@ -0,0 +1,3 @@ | |||||
{ | |||||
"component": true | |||||
} |
@@ -0,0 +1,50 @@ | |||||
<editor id="editor" class="ql-container" placeholder="{{placeholder}}" bindstatuschange="onStatusChange" bindready="onEditorReady" bindinput="getContent" style="width:{{width}};height:{{height}};" show-img-size show-img-toolbar show-img-resize> | |||||
</editor> | |||||
<view class="toolbar" catchtouchend="format" hidden="{{keyboardHeight > 0 ? false : true}}" style="bottom: {{isIOS ? keyboardHeight : 0}}px"> | |||||
<!-- 官方案例 --> | |||||
<!-- <i class="iconfont icon-charutupian" catchtouchend="insertImage"></i> | |||||
<i class="iconfont icon-format-header-2 {{formats.header === 2 ? 'ql-active' : ''}}" data-name="header" data-value="{{2}}"></i> | |||||
<i class="iconfont icon-format-header-3 {{formats.header === 3 ? 'ql-active' : ''}}" data-name="header" data-value="{{3}}"></i> | |||||
<i class="iconfont icon-zitijiacu {{formats.bold ? 'ql-active' : ''}}" data-name="bold"></i> | |||||
<i class="iconfont icon-zitixieti {{formats.italic ? 'ql-active' : ''}}" data-name="italic"></i> | |||||
<i class="iconfont icon-zitixiahuaxian {{formats.underline ? 'ql-active' : ''}}" data-name="underline"></i> | |||||
<i class="iconfont icon--checklist" data-name="list" data-value="check"></i> | |||||
<i class="iconfont icon-youxupailie {{formats.list === 'ordered' ? 'ql-active' : ''}}" data-name="list" data-value="ordered"></i> | |||||
<i class="iconfont icon-wuxupailie {{formats.list === 'bullet' ? 'ql-active' : ''}}" data-name="list" data-value="bullet"></i> --> | |||||
<i class="iconfont icon-zitijiacu {{formats.bold ? 'ql-active' : ''}}" data-name="bold"></i> | |||||
<i class="iconfont icon-zitixieti {{formats.italic ? 'ql-active' : ''}}" data-name="italic"></i> | |||||
<i class="iconfont icon-zitixiahuaxian {{formats.underline ? 'ql-active' : ''}}" data-name="underline"></i> | |||||
<i class="iconfont icon-zitishanchuxian {{formats.strike ? 'ql-active' : ''}}" data-name="strike"></i> | |||||
<i class="iconfont icon-zuoduiqi {{formats.align === 'left' ? 'ql-active' : ''}}" data-name="align" data-value="left"></i> | |||||
<i class="iconfont icon-juzhongduiqi {{formats.align === 'center' ? 'ql-active' : ''}}" data-name="align" data-value="center"></i> | |||||
<i class="iconfont icon-youduiqi {{formats.align === 'right' ? 'ql-active' : ''}}" data-name="align" data-value="right"></i> | |||||
<i class="iconfont icon-zuoyouduiqi {{formats.align === 'justify' ? 'ql-active' : ''}}" data-name="align" data-value="justify"></i> | |||||
<i class="iconfont icon-line-height {{formats.lineHeight ? 'ql-active' : ''}}" data-name="lineHeight" data-value="2"></i> | |||||
<i class="iconfont icon-Character-Spacing {{formats.letterSpacing ? 'ql-active' : ''}}" data-name="letterSpacing" data-value="2em"></i> | |||||
<i class="iconfont icon-722bianjiqi_duanqianju {{formats.marginTop ? 'ql-active' : ''}}" data-name="marginTop" data-value="20px"></i> | |||||
<i class="iconfont icon-723bianjiqi_duanhouju {{formats.micon-previewarginBottom ? 'ql-active' : ''}}" data-name="marginBottom" data-value="20px"></i> | |||||
<i class="iconfont icon-clearedformat" bindtap="removeFormat"></i> | |||||
<!-- <i class="iconfont icon-font {{formats.fontFamily ? 'ql-active' : ''}}" data-name="fontFamily" data-value="Pacifico"></i> --> | |||||
<i class="iconfont icon-fontsize {{formats.fontSize === '24px' ? 'ql-active' : ''}}" data-name="fontSize" data-value="24px"></i> | |||||
<i class="iconfont icon-text_color {{formats.color === '#ff0000' ? 'ql-active' : ''}}" data-name="color" data-value="{{formats.color === '#ff0000' ? '#000000' : '#ff0000'}}"></i> | |||||
<i class="iconfont icon-fontbgcolor {{formats.backgroundColor === '#ff0000' ? 'ql-active' : ''}}" data-name="backgroundColor" data-value="{{formats.color === '#ff0000' ? '#ffffff' : '#ff0000'}}"></i> | |||||
<i class="iconfont icon-date" bindtap="insertDate"></i> | |||||
<i class="iconfont icon--checklist" data-name="list" data-value="check"></i> | |||||
<i class="iconfont icon-youxupailie {{formats.list === 'ordered' ? 'ql-active' : ''}}" data-name="list" data-value="ordered"></i> | |||||
<i class="iconfont icon-wuxupailie {{formats.list === 'bullet' ? 'ql-active' : ''}}" data-name="list" data-value="bullet"></i> | |||||
<i class="iconfont icon-undo" bindtap="undo"></i> | |||||
<i class="iconfont icon-redo" bindtap="redo"></i> | |||||
<i class="iconfont icon-outdent" data-name="indent" data-value="-1"></i> | |||||
<i class="iconfont icon-indent" data-name="indent" data-value="+1"></i> | |||||
<i class="iconfont icon-fengexian" bindtap="insertDivider"></i> | |||||
<i class="iconfont icon-charutupian" bindtap="insertImage" wx:if="{{insertPicture}}"></i> | |||||
<i class="iconfont icon-format-header-1 {{formats.header === 1 ? 'ql-active' : ''}}" data-name="header" data-value="{{1}}"></i> | |||||
<i class="iconfont icon-format-header-2 {{formats.header === 2 ? 'ql-active' : ''}}" data-name="header" data-value="{{2}}"></i> | |||||
<i class="iconfont icon-format-header-3 {{formats.header === 3 ? 'ql-active' : ''}}" data-name="header" data-value="{{3}}"></i> | |||||
<i class="iconfont icon-zitixiabiao {{formats.script === 'sub' ? 'ql-active' : ''}}" data-name="script" data-value="sub"></i> | |||||
<i class="iconfont icon-zitishangbiao {{formats.script === 'super' ? 'ql-active' : ''}}" data-name="script" data-value="super"></i> | |||||
<!-- <i class="iconfont icon-quanping"></i> --> | |||||
<i class="iconfont icon-shanchu" bindtap="clear"></i> | |||||
<i class="iconfont icon-direction-rtl {{formats.direction === 'rtl' ? 'ql-active' : ''}}" data-name="direction" data-value="rtl"></i> | |||||
</view> |
@@ -0,0 +1,34 @@ | |||||
@import "./assets/iconfont.wxss"; | |||||
.ql-container { | |||||
font-size: 16px; | |||||
line-height: 1.5; | |||||
padding: 10px 10px 20px 10px; | |||||
} | |||||
.ql-active { | |||||
color: #22C704; | |||||
} | |||||
.iconfont { | |||||
display: flex; | |||||
width: 60rpx; | |||||
height: 60rpx; | |||||
align-items: center; | |||||
justify-content: center; | |||||
font-size: 40rpx; | |||||
} | |||||
.toolbar { | |||||
padding: 0 16rpx; | |||||
height: 200rpx; | |||||
width: 100%; | |||||
position: fixed; | |||||
left: 0; | |||||
right: 100%; | |||||
bottom: 0; | |||||
display: flex; | |||||
flex-wrap: wrap; | |||||
align-items: center; | |||||
border-top: 1px solid #ECECEC; | |||||
background-color: white; | |||||
} |
@@ -118,8 +118,6 @@ Page({ | |||||
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].orderTypeText = UTIL.getTransform(response.rows[i].orderType,res.data); | response.rows[i].orderTypeText = UTIL.getTransform(response.rows[i].orderType,res.data); | ||||
response.rows[i].startTime = response.rows[i].startTime.replace(/-/g,"."); | |||||
response.rows[i].endTime = response.rows[i].endTime.replace(/-/g,"."); | |||||
response.rows[i].orderAmount = Number(response.rows[i].orderAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | response.rows[i].orderAmount = Number(response.rows[i].orderAmount).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | ||||
return $1 + ","; }).replace(/\.$/, "") | return $1 + ","; }).replace(/\.$/, "") | ||||
} | } | ||||
@@ -142,7 +142,7 @@ text{display: block;} | |||||
margin-top: 10px; | margin-top: 10px; | ||||
} | } | ||||
.detail_time text{ | .detail_time text{ | ||||
font-size: 14px; | |||||
font-size: 12px; | |||||
margin-left: 5px; | margin-left: 5px; | ||||
color: #878787; | color: #878787; | ||||
} | } | ||||
@@ -154,7 +154,7 @@ text{display: block;} | |||||
} | } | ||||
.li .detail_box_left .fkdw{ | .li .detail_box_left .fkdw{ | ||||
color: #B5B5B5; | color: #B5B5B5; | ||||
font-size: 14px; | |||||
font-size: 12px; | |||||
margin-top: 5px; | margin-top: 5px; | ||||
} | } | ||||
.li .detail_box_center{ | .li .detail_box_center{ | ||||
@@ -171,7 +171,7 @@ text{display: block;} | |||||
} | } | ||||
.li .detail_box_right .skdw{ | .li .detail_box_right .skdw{ | ||||
color: #B5B5B5; | color: #B5B5B5; | ||||
font-size: 14px; | |||||
font-size: 12px; | |||||
margin-top: 5px; | margin-top: 5px; | ||||
} | } | ||||
@@ -272,8 +272,6 @@ Page({ | |||||
UTIL.httpRequest(API.URL_GET_CONTRACTDETAIL + this.data.id, {method:'GET'}, { | UTIL.httpRequest(API.URL_GET_CONTRACTDETAIL + this.data.id, {method:'GET'}, { | ||||
success: (res) => { | success: (res) => { | ||||
this.setData({'form':res.data}); | this.setData({'form':res.data}); | ||||
res.data.biddingDate = res.data.biddingDate.slice(0,9) | |||||
res.data.reviewTime = res.data.reviewTime.slice(0,9) | |||||
let that = this; | let that = this; | ||||
//获取收入合同状态 | //获取收入合同状态 | ||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'type_of_contract', {method:'GET'}, { | UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'type_of_contract', {method:'GET'}, { | ||||
@@ -174,6 +174,34 @@ Page({ | |||||
}, | }, | ||||
}) | }) | ||||
}, | }, | ||||
terminate(e){ | |||||
UTIL.httpRequest(API.URL_GET_TERMINATEINFO+ e.currentTarget.dataset.id, {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let list = this.data.list | |||||
list[e.currentTarget.dataset.index].contractionStatus = '3' | |||||
this.setData({'list':list}) | |||||
UTIL.showToastNoneIcon('终止成功!'); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('终止失败!: '+res.msg); | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
cancel(e){ | |||||
UTIL.httpRequest(API.URL_GET_CANCELINFO+ e.currentTarget.dataset.id, {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let list = this.data.list | |||||
list[e.currentTarget.dataset.index].contractionStatus = '2' | |||||
this.setData({'list':list}) | |||||
UTIL.showToastNoneIcon('撤销成功!'); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('撤销失败!: '+res.msg); | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
relevanceDelete(e){ | relevanceDelete(e){ | ||||
UTIL.httpRequest(API.URL_GET_ASSETREMOVE+ e.currentTarget.dataset.id, {method:'GET'}, { | UTIL.httpRequest(API.URL_GET_ASSETREMOVE+ e.currentTarget.dataset.id, {method:'GET'}, { | ||||
success: (res) => { | success: (res) => { | ||||
@@ -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="{{ 150 }}" class="workflow" wx:for="{{list}}" wx:key="index" wx:for-item="item" > | |||||
<van-swipe-cell left-width="{{ 100 }}" 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> | ||||
@@ -79,6 +79,24 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<view slot="left" class="moreBox"> | |||||
<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="terminate"> | |||||
<view> | |||||
<image src="../../image/icon/terminate_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||||
</view> | |||||
<view> | |||||
<text style="color:red">终止</text> | |||||
</view> | |||||
</view> | |||||
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(179,219,98,0.2);" data-id="{{item.id}}" data-index="{{index}}" bindtap="cancel"> | |||||
<view> | |||||
<image src="../../image/icon/cancel_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||||
</view> | |||||
<view> | |||||
<text style="color: #B3DB62;">撤销</text> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</van-swipe-cell> | </van-swipe-cell> | ||||
</scroll-view> | </scroll-view> | ||||
@@ -109,7 +127,7 @@ | |||||
</view> | </view> | ||||
<van-swipe-cell right-width="{{ 50 }}" wx:for="{{revelanceList}}" wx:key="index" wx:for-item="item" > | <van-swipe-cell right-width="{{ 50 }}" wx:for="{{revelanceList}}" wx:key="index" wx:for-item="item" > | ||||
<view class="tr"> | <view class="tr"> | ||||
<view class="th">固定资产</view> | |||||
<view class="th">{{item.assetTable=='t_asset_permanent'?"固定资产":"资源资产"}}</view> | |||||
<view class="th">{{item.name}}</view> | <view class="th">{{item.name}}</view> | ||||
<view class="th">{{item.num}}{{item.unit}}</view> | <view class="th">{{item.num}}{{item.unit}}</view> | ||||
</view> | </view> | ||||
@@ -71,6 +71,14 @@ text{display: block;} | |||||
align-items: center; | align-items: center; | ||||
display: flex; | display: flex; | ||||
} | } | ||||
.moreBox{ | |||||
width: 100px; | |||||
text-align: center; | |||||
height: 100%; | |||||
background: #F6F6F6; | |||||
align-items: center; | |||||
display: flex; | |||||
} | |||||
.deleteBoxAsset{ | .deleteBoxAsset{ | ||||
width: 50px; | width: 50px; | ||||
text-align: center; | text-align: center; | ||||
@@ -15,6 +15,7 @@ Page({ | |||||
data: { | data: { | ||||
isIPX: app.globalData.isIPX, | isIPX: app.globalData.isIPX, | ||||
list:[], | list:[], | ||||
list1:[], | |||||
isLoading:false, | isLoading:false, | ||||
pageNums:1, | pageNums:1, | ||||
scrollHeight:"", | scrollHeight:"", | ||||
@@ -27,6 +28,11 @@ Page({ | |||||
itemId:"", | itemId:"", | ||||
assetTypeOptions:[], | assetTypeOptions:[], | ||||
status:0, | status:0, | ||||
index:0, | |||||
array:[ | |||||
{assetTable:'t_asset_permanent',assetTableName:'固定资产'}, | |||||
{assetTable:'t_asset_resource',assetTableName:'资源性资产'} | |||||
], | |||||
}, | }, | ||||
goAdd(){ | goAdd(){ | ||||
wx.navigateTo({ | wx.navigateTo({ | ||||
@@ -45,6 +51,10 @@ Page({ | |||||
} | } | ||||
}) | }) | ||||
}, | }, | ||||
bindPickerChange:function(e){ | |||||
this.setData({index:e.detail.value}); | |||||
this.getList() | |||||
}, | |||||
/** | /** | ||||
* 生命周期函数--监听页面加载 | * 生命周期函数--监听页面加载 | ||||
*/ | */ | ||||
@@ -80,64 +90,77 @@ Page({ | |||||
this.getList(); | this.getList(); | ||||
}, | }, | ||||
getList:function(){ | getList:function(){ | ||||
let params = { | |||||
pageNum:this.data.pageNums, | |||||
pageSize:10, | |||||
if(this.data.index == 0){ | |||||
let params = { | |||||
name:this.data.name, | name:this.data.name, | ||||
isMin:"Y", | |||||
useType:'2', | useType:'2', | ||||
operationType:'1', | |||||
assetStatus:'1' | |||||
OperationType:'1', | |||||
assetStatus:'1', | |||||
isMin:'Y' | |||||
} | } | ||||
UTIL.httpRequest(API.URL_GET_PERMANENTLIST,params,{ | |||||
success: (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 | |||||
UTIL.httpRequest(API.URL_GET_PERMANENTLIST,params,{ | |||||
success: (res) => { | |||||
let _this = this | |||||
if(res.code == 200){ | |||||
//获取资产类别 | |||||
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 | |||||
} | |||||
}) | }) | ||||
_this.setData({list:li}) | |||||
}else{ | |||||
_this.setData({list:lists}) | |||||
} | |||||
return ress | |||||
}) | |||||
_this.setData({list:li}) | |||||
}else{ | |||||
_this.setData({list:res.rows}) | |||||
} | } | ||||
}) | |||||
}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 | |||||
} | |||||
}) | |||||
}else{ | |||||
UTIL.showToastNoneIcon(res.msg); | |||||
} | |||||
} | |||||
}) | |||||
}else{ | |||||
let params = { | |||||
name:this.data.name, | |||||
useType : '2', | |||||
status : '0' | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_RESOURCELIST,params,{ | |||||
success: (res) => { | |||||
let _this = this | |||||
if(res.code == 200){ | |||||
//获取资产类别 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'resource_type', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
let li = res.rows.map( ress => { | |||||
r.data.map(rr => { | |||||
if(ress.resourceType == rr.dictValue){ | |||||
ress.resourceType = rr.dictLabel | |||||
} | |||||
}) | }) | ||||
_this.setData({list:li}) | |||||
}else{ | |||||
_this.setData({list:res.rows}) | |||||
} | |||||
return ress | |||||
}) | |||||
_this.setData({list1:li}) | |||||
}else{ | |||||
_this.setData({list1:res.rows}) | |||||
} | } | ||||
}) | |||||
} | |||||
}) | |||||
}else{ | |||||
UTIL.showToastNoneIcon(res.msg); | |||||
} | } | ||||
}else{ | |||||
UTIL.showToastNoneIcon(res.msg); | |||||
} | } | ||||
} | |||||
}) | |||||
}) | |||||
} | |||||
}, | }, | ||||
paging(){ | paging(){ | ||||
this.setData({ | this.setData({ | ||||
@@ -155,12 +178,12 @@ Page({ | |||||
this.setData({'status':1}) | this.setData({'status':1}) | ||||
let data = e.currentTarget.dataset.item; | let data = e.currentTarget.dataset.item; | ||||
data.method = "POST"; | data.method = "POST"; | ||||
data.assetTable = "t_asset_permanent" | |||||
data.assetTable = 't_asset_permanent' | |||||
data.assetId = e.currentTarget.dataset.item.id | data.assetId = e.currentTarget.dataset.item.id | ||||
data.contractionId = this.data.itemId | data.contractionId = this.data.itemId | ||||
data.num = e.currentTarget.dataset.item.quantity | data.num = e.currentTarget.dataset.item.quantity | ||||
if(data.unit==""||data.unit==null){ | if(data.unit==""||data.unit==null){ | ||||
data.unit = '1' | |||||
data.unit = '台' | |||||
} | } | ||||
UTIL.httpRequest(API.URL_GET_ASSETADD,data,{ | UTIL.httpRequest(API.URL_GET_ASSETADD,data,{ | ||||
success: (res) => { | success: (res) => { | ||||
@@ -178,6 +201,34 @@ Page({ | |||||
}) | }) | ||||
} | } | ||||
}, | }, | ||||
goUpdate1(e){ | |||||
if(this.data.status=='0'){ | |||||
this.setData({'status':1}) | |||||
let data = e.currentTarget.dataset.item; | |||||
data.method = "POST"; | |||||
data.assetTable = 't_asset_resource' | |||||
data.assetId = e.currentTarget.dataset.item.id | |||||
data.contractionId = this.data.itemId | |||||
data.num = e.currentTarget.dataset.item.totalArea | |||||
if(data.unit==""||data.unit==null){ | |||||
data.unit = '亩' | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_ASSETADD,data,{ | |||||
success: (res) => { | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon(res.msg); | |||||
this.setData({'status':0}) | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}else{ | |||||
UTIL.showToastNoneIcon(res.msg); | |||||
this.setData({'status':0}) | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
delete(e){ | delete(e){ | ||||
UTIL.httpRequest(API.URL_GET_PERMANENTDELETE + e.currentTarget.dataset.id, {method:'GET'}, { | UTIL.httpRequest(API.URL_GET_PERMANENTDELETE + e.currentTarget.dataset.id, {method:'GET'}, { | ||||
success: (res) => { | success: (res) => { | ||||
@@ -1,11 +1,12 @@ | |||||
<!--pages/fixedAssets/fixedAssets.wxml--> | <!--pages/fixedAssets/fixedAssets.wxml--> | ||||
<view class="ns" id="top_ban" style="height:{{isIPX?'88px':'64px'}};"> | <view class="ns" id="top_ban" style="height:{{isIPX?'88px':'64px'}};"> | ||||
<image src="../../image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};height: 19.0909px;" mode="widthFix" bindtap="back" referrer="no-referrer|origin|unsafe-url"></image> | <image src="../../image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};height: 19.0909px;" mode="widthFix" bindtap="back" referrer="no-referrer|origin|unsafe-url"></image> | ||||
<text style="top:{{isIPX?'54px':'30px'}};">可关联固定资产</text> | |||||
<text style="top:{{isIPX?'54px':'30px'}};">可关联资产</text> | |||||
</view> | </view> | ||||
<view class="search_box" id="top_view" style="margin-top:{{isIPX?'100px':'75px'}};"> | <view class="search_box" id="top_view" style="margin-top:{{isIPX?'100px':'75px'}};"> | ||||
<van-search | |||||
<view style="width:61%;"> | |||||
<van-search | |||||
value="{{ name }}" | value="{{ name }}" | ||||
shape="round" | shape="round" | ||||
background="transparent" | background="transparent" | ||||
@@ -13,9 +14,18 @@ | |||||
clearable | clearable | ||||
bind:change="goSearch" | bind:change="goSearch" | ||||
/> | /> | ||||
</view> | |||||
<view style="border:1px solid #ddd;background: #fff;border-radius: 30px;padding: 0 25rpx;width:34%;margin-top: 9px;line-height: 38px;height: 38px;"> | |||||
<picker bindchange="bindPickerChange" value="{{index}}" range="{{array}}" range-key="assetTableName"> | |||||
<view class="picker" style="text-align: center;"> | |||||
{{array[index].assetTableName}} | |||||
<image src="../../image/icon/triangle.png" style="height:25rpx;width:25rpx;margin-right: 10rpx;"></image> | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
</view> | </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" > | |||||
<scroll-view scroll-y refresher-threshold="0" wx:if="{{index == '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="li" bindtap="goUpdate" data-item="{{item}}"> | ||||
<view class="tit_box"> | <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> | <image src="/image/icon/fixedAssets_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="no-referrer|origin|unsafe-url"></image> | ||||
@@ -47,6 +57,36 @@ | |||||
</view> | </view> | ||||
</van-swipe-cell> | </van-swipe-cell> | ||||
</scroll-view> | </scroll-view> | ||||
<modal hidden="{{!showPopup}}" title="是否删除?" confirm-text="是" cancel-text="否" bindcancel="cancelTem" bindconfirm="confirmTem"> | |||||
</modal> | |||||
<scroll-view scroll-y refresher-threshold="0" wx:if="{{index == '1'}}" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100"> | |||||
<van-swipe-cell class="workflow" wx:for="{{list1}}" wx:key="index" wx:for-item="item" > | |||||
<view class="li" bindtap="goUpdate1" 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.resourceType}} | |||||
</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.createTime}}</text> | |||||
</view> | |||||
<view style="width: 40%;text-align: right;"> | |||||
数量/面积: | |||||
<text style="color:red">{{item.totalArea}}</text> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</van-swipe-cell> | |||||
</scroll-view> |
@@ -24,19 +24,19 @@ | |||||
<view class="banner" id="top_view2"> | <view class="banner" id="top_view2"> | ||||
<view class="banner_tabs"> | <view class="banner_tabs"> | ||||
<view>上月结余</view> | <view>上月结余</view> | ||||
<view>¥{{data.syjc}}</view> | |||||
<view style="font-size: 12px;">¥{{data.syjc}}</view> | |||||
</view> | </view> | ||||
<view class="banner_tabs"> | <view class="banner_tabs"> | ||||
<view>支出</view> | <view>支出</view> | ||||
<view>¥{{data.dai}}</view> | |||||
<view style="font-size: 12px;">¥{{data.dai}}</view> | |||||
</view> | </view> | ||||
<view class="banner_tabs"> | <view class="banner_tabs"> | ||||
<view>收入</view> | <view>收入</view> | ||||
<view>¥{{data.jie}}</view> | |||||
<view style="font-size: 12px;">¥{{data.jie}}</view> | |||||
</view> | </view> | ||||
<view class="banner_tabs"> | <view class="banner_tabs"> | ||||
<view>本月结存</view> | <view>本月结存</view> | ||||
<view>¥{{data.byjc}}</view> | |||||
<view style="font-size: 12px;">¥{{data.byjc}}</view> | |||||
</view> | </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"> | ||||
@@ -45,24 +45,21 @@ | |||||
padding: 10rpx 32.5rpx; | padding: 10rpx 32.5rpx; | ||||
} | } | ||||
.workflow .workflow_list{ | .workflow .workflow_list{ | ||||
height: 150rpx; | |||||
background-color: #fff; | background-color: #fff; | ||||
border-radius: 24rpx; | border-radius: 24rpx; | ||||
box-shadow:0rpx 0rpx 10rpx rgba(0,0,0,.1); | box-shadow:0rpx 0rpx 10rpx rgba(0,0,0,.1); | ||||
margin-bottom: 20rpx; | |||||
padding:15rpx 25rpx 10rpx 35rpx; | |||||
padding:25rpx 25rpx 10rpx 35rpx; | |||||
} | } | ||||
.workflow .workflow_list .process_intro{ | .workflow .workflow_list .process_intro{ | ||||
display: flex; | display: flex; | ||||
height: 62rpx; | |||||
align-items: center; | align-items: center; | ||||
} | } | ||||
.workflow .process_intro .name{ | .workflow .process_intro .name{ | ||||
width: 390rpx; | |||||
font-size: 34rpx; | |||||
max-width: 390rpx; | |||||
font-size: 16px; | |||||
margin-right: 30rpx; | margin-right: 30rpx; | ||||
display: flex; | |||||
flex:1; | |||||
justify-content: space-between; | justify-content: space-between; | ||||
align-items: center; | align-items: center; | ||||
} | } | ||||
@@ -112,7 +109,7 @@ | |||||
.workflow .time{ | .workflow .time{ | ||||
flex: 1; | flex: 1; | ||||
text-align: right; | text-align: right; | ||||
font-size: 32rpx; | |||||
font-size: 12px; | |||||
color: #9ea1aa; | color: #9ea1aa; | ||||
} | } | ||||
@@ -135,16 +132,18 @@ | |||||
width: 32rpx; | width: 32rpx; | ||||
height: 32rpx; | height: 32rpx; | ||||
margin-right: 12rpx; | margin-right: 12rpx; | ||||
text-align: right; | |||||
font-size: 14px; | |||||
} | } | ||||
.workflow .workflow_list .amount{ | .workflow .workflow_list .amount{ | ||||
font-size: 38rpx; | |||||
font-size: 14px; | |||||
flex: 1; | flex: 1; | ||||
text-align: right; | text-align: right; | ||||
color: #f31e1f; | color: #f31e1f; | ||||
} | } | ||||
.workflow .workflow_list .amounts{ | .workflow .workflow_list .amounts{ | ||||
font-size: 38rpx; | |||||
font-size: 14px; | |||||
flex: 1; | flex: 1; | ||||
text-align: right; | text-align: right; | ||||
color:#4caf50; | color:#4caf50; | ||||
@@ -192,6 +191,7 @@ | |||||
overflow: hidden; | overflow: hidden; | ||||
text-overflow: ellipsis; | text-overflow: ellipsis; | ||||
white-space: nowrap; | white-space: nowrap; | ||||
font-size: 12px; | |||||
} | } | ||||
.banner { | .banner { | ||||
display: flex;background:#4caf50;color:#fff;text-align: center;margin:3%;border-radius: 20rpx;line-height: 50rpx; | display: flex;background:#4caf50;color:#fff;text-align: center;margin:3%;border-radius: 20rpx;line-height: 50rpx; | ||||
@@ -0,0 +1,629 @@ | |||||
// pages/contract/add/add.js | |||||
import * as UTIL from '../../../utils/util.js'; | |||||
import * as API from '../../../utils/API.js'; | |||||
const app = getApp(); | |||||
Page({ | |||||
/** | |||||
* 页面的初始数据 | |||||
*/ | |||||
data: { | |||||
isIPX: app.globalData.isIPX, | |||||
id:null, | |||||
form:{}, | |||||
assetTypeindex:'0', | |||||
changeTypeindex:'0', | |||||
depreciationTypeindex:'0', | |||||
changeValueindex:'0', | |||||
// 折旧方式字典 | |||||
depreciationTypeOptions:[], | |||||
// 资产类别字典 | |||||
assetTypeOptions: [], | |||||
// 变更类型字典 | |||||
changeTypeOptions: [ | |||||
{ 'dictLabel':'数量/面积变更','dictValue':'1'}, | |||||
{ 'dictLabel':'原值变更','dictValue':'2'}, | |||||
{ 'dictLabel':'预计使用年数变更','dictValue':'3'}, | |||||
{ 'dictLabel':'累计折旧变更','dictValue':'4'}, | |||||
{ 'dictLabel':'已折旧年数变更','dictValue':'5'}, | |||||
{ 'dictLabel':'残值率变更','dictValue':'6'}, | |||||
{ 'dictLabel':'折旧方式变更','dictValue':'7'}, | |||||
], | |||||
status:0, | |||||
}, | |||||
back:function(){ | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}, | |||||
openBox(even){ | |||||
this.setData({ | |||||
[even.currentTarget.dataset.name]:true | |||||
}) | |||||
}, | |||||
onChange(event){ | |||||
this.setData({ | |||||
[event.currentTarget.dataset.formname]: event.detail, | |||||
}) | |||||
}, | |||||
closeBox(even){ | |||||
this.setData({ | |||||
[even.currentTarget.dataset.name]:false | |||||
}) | |||||
}, | |||||
onConfirmChangeType (e) { | |||||
let obj = e.detail.value; | |||||
this.setData({ | |||||
'form.changeType':this.data.changeTypeOptions[obj].dictValue, | |||||
'changeTypeindex':obj | |||||
}) | |||||
}, | |||||
onConfirmChangeValue(e){ | |||||
let obj = e.detail.value; | |||||
this.setData({ | |||||
'form.changeValue':this.data.depreciationTypeOptions[obj].dictValue, | |||||
'changeValueindex':obj | |||||
}) | |||||
}, | |||||
onConfirmDepreciationType(e){ | |||||
let obj = e.detail.value; | |||||
this.setData({ | |||||
'form.depreciationType':this.data.depreciationTypeOptions[obj].dictValue, | |||||
'depreciationTypeindex':obj | |||||
}) | |||||
}, | |||||
onConfirmAssetType (e) { | |||||
let obj = e.detail.value; | |||||
this.setData({ | |||||
'form.assetType':this.data.assetTypeOptions[obj].dictValue, | |||||
'assetTypeindex':obj | |||||
}) | |||||
}, | |||||
getNewDate(date){ | |||||
//date是传过来的时间戳,注意需为13位,10位需*1000 | |||||
//也可以不传,获取的就是当前时间 | |||||
var time | |||||
if(date){ | |||||
time = new Date(date); | |||||
}else{ | |||||
time = new Date(); | |||||
} | |||||
var year= time.getFullYear() //年 | |||||
var month = ("0" + (time.getMonth() + 1)).slice(-2); //月 | |||||
var day = ("0" + time.getDate()).slice(-2); //日 | |||||
var mydate = year + "-" + month + "-" + day; | |||||
return mydate | |||||
}, | |||||
goSubmit:function(){ | |||||
if(this.data.changeTypeindex != 6&&(this.data.form.changeValue===''||this.data.form.changeValue==null)){ //变更后值 | |||||
UTIL.showToastNoneIcon('变更后值不能给你为空!'); | |||||
return false; | |||||
}else if(this.data.status == '0'){ | |||||
let that = this | |||||
this.setData({'status':'1'}) | |||||
let data = this.data.form; | |||||
data.method = "POST"; | |||||
if(this.data.changeTypeindex == 0){ | |||||
data.quantity = data.changeValue | |||||
UTIL.httpRequest(API.URL_POST_UPDATEQUANTITY,data,{ | |||||
success: (res) => { | |||||
that.setData({'status':'0'}) | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon("变更成功"); | |||||
setTimeout(function(){ | |||||
wx.navigateBack({ | |||||
delta:1 | |||||
}) | |||||
},2000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon("变更失败:"+res.msg); | |||||
} | |||||
}, | |||||
fail: function (response) { | |||||
if (typeof fail === FUNCTION_TEXT) { | |||||
fail(handleFail(response)); | |||||
} else { | |||||
showToastNoneIcon(API.MSG_FAIL_HTTP); | |||||
} | |||||
that.setData({'status':0}) | |||||
}, | |||||
complete: function (response) { | |||||
wx.hideNavigationBarLoading(); | |||||
} | |||||
}) | |||||
}else if(this.data.changeTypeindex == 1){ | |||||
data.originalValue = data.changeValue | |||||
UTIL.httpRequest(API.URL_POST_UPDATEORIGINALVALUE,data,{ | |||||
success: (res) => { | |||||
that.setData({'status':'0'}) | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon("变更成功"); | |||||
setTimeout(function(){ | |||||
wx.navigateBack({ | |||||
delta:1 | |||||
}) | |||||
},2000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon("变更失败:"+res.msg); | |||||
} | |||||
}, | |||||
fail: function (response) { | |||||
if (typeof fail === FUNCTION_TEXT) { | |||||
fail(handleFail(response)); | |||||
} else { | |||||
showToastNoneIcon(API.MSG_FAIL_HTTP); | |||||
} | |||||
that.setData({'status':0}) | |||||
}, | |||||
complete: function (response) { | |||||
wx.hideNavigationBarLoading(); | |||||
} | |||||
}) | |||||
}else if(this.data.changeTypeindex == 2){ | |||||
data.expectedYears = data.changeValue | |||||
UTIL.httpRequest(API.URL_POST_UPDATEEXPECTEDYEARS,data,{ | |||||
success: (res) => { | |||||
that.setData({'status':'0'}) | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon("变更成功"); | |||||
setTimeout(function(){ | |||||
wx.navigateBack({ | |||||
delta:1 | |||||
}) | |||||
},2000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon("变更失败:"+res.msg); | |||||
} | |||||
}, | |||||
fail: function (response) { | |||||
if (typeof fail === FUNCTION_TEXT) { | |||||
fail(handleFail(response)); | |||||
} else { | |||||
showToastNoneIcon(API.MSG_FAIL_HTTP); | |||||
} | |||||
that.setData({'status':0}) | |||||
}, | |||||
complete: function (response) { | |||||
wx.hideNavigationBarLoading(); | |||||
} | |||||
}) | |||||
}else if(this.data.changeTypeindex == 3){ | |||||
data.depreciationValue = data.changeValue | |||||
UTIL.httpRequest(API.URL_POST_UPDATEDEPRECIATIONVALUE,data,{ | |||||
success: (res) => { | |||||
that.setData({'status':'0'}) | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon("变更成功"); | |||||
setTimeout(function(){ | |||||
wx.navigateBack({ | |||||
delta:1 | |||||
}) | |||||
},2000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon("变更失败:"+res.msg); | |||||
} | |||||
}, | |||||
fail: function (response) { | |||||
if (typeof fail === FUNCTION_TEXT) { | |||||
fail(handleFail(response)); | |||||
} else { | |||||
showToastNoneIcon(API.MSG_FAIL_HTTP); | |||||
} | |||||
that.setData({'status':0}) | |||||
}, | |||||
complete: function (response) { | |||||
wx.hideNavigationBarLoading(); | |||||
} | |||||
}) | |||||
}else if(this.data.changeTypeindex == 4){ | |||||
data.depreciationYears = data.changeValue | |||||
UTIL.httpRequest(API.URL_POST_UPDATEDEPRECIATIONYEARS,data,{ | |||||
success: (res) => { | |||||
that.setData({'status':'0'}) | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon("变更成功"); | |||||
setTimeout(function(){ | |||||
wx.navigateBack({ | |||||
delta:1 | |||||
}) | |||||
},2000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon("变更失败:"+res.msg); | |||||
} | |||||
}, | |||||
fail: function (response) { | |||||
if (typeof fail === FUNCTION_TEXT) { | |||||
fail(handleFail(response)); | |||||
} else { | |||||
showToastNoneIcon(API.MSG_FAIL_HTTP); | |||||
} | |||||
that.setData({'status':0}) | |||||
}, | |||||
complete: function (response) { | |||||
wx.hideNavigationBarLoading(); | |||||
} | |||||
}) | |||||
}else if(this.data.changeTypeindex == 5){ | |||||
data.residualsRate = data.changeValue | |||||
UTIL.httpRequest(API.URL_POST_UPDATERESIDUALSRATE,data,{ | |||||
success: (res) => { | |||||
that.setData({'status':'0'}) | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon("变更成功"); | |||||
setTimeout(function(){ | |||||
wx.navigateBack({ | |||||
delta:1 | |||||
}) | |||||
},2000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon("变更失败:"+res.msg); | |||||
} | |||||
}, | |||||
fail: function (response) { | |||||
if (typeof fail === FUNCTION_TEXT) { | |||||
fail(handleFail(response)); | |||||
} else { | |||||
showToastNoneIcon(API.MSG_FAIL_HTTP); | |||||
} | |||||
that.setData({'status':0}) | |||||
}, | |||||
complete: function (response) { | |||||
wx.hideNavigationBarLoading(); | |||||
} | |||||
}) | |||||
}else if(this.data.changeTypeindex == 6){ | |||||
data.depreciationType = this.data.depreciationTypeOptions[this.data.changeValueindex].dictValue | |||||
UTIL.httpRequest(API.URL_POST_UPDATEDEPRECIATIONMETHOD,data,{ | |||||
success: (res) => { | |||||
that.setData({'status':'0'}) | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon("变更成功"); | |||||
setTimeout(function(){ | |||||
wx.navigateBack({ | |||||
delta:1 | |||||
}) | |||||
},2000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon("变更失败:"+res.msg); | |||||
} | |||||
}, | |||||
fail: function (response) { | |||||
if (typeof fail === FUNCTION_TEXT) { | |||||
fail(handleFail(response)); | |||||
} else { | |||||
showToastNoneIcon(API.MSG_FAIL_HTTP); | |||||
} | |||||
that.setData({'status':0}) | |||||
}, | |||||
complete: function (response) { | |||||
wx.hideNavigationBarLoading(); | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}, | |||||
bindNewInput: function (e) { | |||||
this.setData({ | |||||
[e.currentTarget.dataset.name]: e.detail.value | |||||
}) | |||||
if(e.currentTarget.dataset.name == 'form.originalValue' ){ | |||||
this.setData({ | |||||
'form.netSalvage' : (this.data.form.residualsRate*e.detail.value/100).toFixed(2), | |||||
'form.perYearDepreciationValue' : ((e.detail.value-(this.data.form.residualsRate*e.detail.value/100))/this.data.form.expectedYears).toFixed(2), | |||||
'form.netValue':this.data.form.originalValue-this.data.form.depreciationValue | |||||
}) | |||||
} | |||||
if(e.currentTarget.dataset.name == 'form.residualsRate' &&e.detail.value<=100){ | |||||
this.setData({ | |||||
'form.netSalvage' : (this.data.form.originalValue*e.detail.value/100)<this.data.form.originalValue?(this.data.form.originalValue*e.detail.value/100).toFixed(2):this.data.form.originalValue, | |||||
}) | |||||
this.setData({ | |||||
'form.perYearDepreciationValue' : ((this.data.form.originalValue-this.data.form.netSalvage)/this.data.form.expectedYears).toFixed(2), | |||||
}) | |||||
} | |||||
if(e.currentTarget.dataset.name == 'form.residualsRate' &&e.detail.value>100){ | |||||
this.setData({ | |||||
'form.residualsRate' : 5, | |||||
}) | |||||
} | |||||
if(e.currentTarget.dataset.name == 'form.netSalvage' ){ | |||||
this.setData({ | |||||
'form.perYearDepreciationValue' : ((this.data.form.originalValue-e.detail.value)/this.data.form.expectedYears).toFixed(2) | |||||
}) | |||||
} | |||||
if(e.currentTarget.dataset.name == 'form.expectedYears' ){ | |||||
this.setData({ | |||||
'form.perYearDepreciationValue' : ((this.data.form.originalValue-this.data.form.netSalvage)/e.detail.value).toFixed(2) | |||||
}) | |||||
} | |||||
if(e.currentTarget.dataset.name == 'form.depreciationYears' ){ | |||||
this.setData({ | |||||
'form.depreciationValue' : (this.data.form.perYearDepreciationValue*e.detail.value)>this.data.form.originalValue?this.data.form.originalValue:(this.data.form.perYearDepreciationValue*e.detail.value).toFixed(2), | |||||
'form.netValue' : (this.data.form.originalValue-(this.data.form.perYearDepreciationValue*e.detail.value))>=0?(this.data.form.originalValue-(this.data.form.perYearDepreciationValue*e.detail.value).toFixed(2)):0 | |||||
}) | |||||
} | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
if(options.id!=null&&options.id!=""){ | |||||
this.setData({id:options.id}) | |||||
//获取收入合同状态 | |||||
UTIL.httpRequest(API.URL_GET_PERMANENTDETAIL + this.data.id, {method:'GET'}, { | |||||
success: (res) => { | |||||
this.setData({'form':res.data}); | |||||
let that = this; | |||||
//获取资产类别 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_type', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
that.setData({ | |||||
assetTypeOptions:r.data, | |||||
}) | |||||
r.data.map((rr,ind) => { | |||||
if(rr.dictValue == res.data.assetType){ | |||||
that.setData({'assetTypeindex':ind}) | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取经营属性 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'operation_type', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
that.setData({ | |||||
operationTypeOptions:r.data, | |||||
}) | |||||
r.data.map((rr,ind) => { | |||||
if(rr.dictValue == res.data.operationType){ | |||||
that.setData({'operationTypeindex':ind}) | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取增加方式 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'add_type', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
that.setData({ | |||||
addTypeOptions:r.data, | |||||
}) | |||||
r.data.map((rr,ind) => { | |||||
if(rr.dictValue == res.data.addType){ | |||||
that.setData({'addTypeindex':ind}) | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取使用情况 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'use_type', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
that.setData({ | |||||
useTypeOptions:r.data, | |||||
}) | |||||
r.data.map((rr,ind) => { | |||||
if(rr.dictValue == res.data.useType){ | |||||
that.setData({'useTypeindex':ind}) | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取折旧方式 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'depreciation_type', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
that.setData({ | |||||
depreciationTypeOptions:r.data, | |||||
}) | |||||
r.data.map((rr,ind) => { | |||||
if(rr.dictValue == res.data.depreciationType){ | |||||
that.setData({'depreciationTypeindex':ind}) | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取资产状态 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_status', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
that.setData({ | |||||
assetStatusOptions:r.data, | |||||
}) | |||||
r.data.map((rr,ind) => { | |||||
if(rr.dictValue == res.data.assetStatus){ | |||||
that.setData({'assetStatusindex':ind}) | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取单位 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'fixed_assets_unit', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
that.setData({ | |||||
unitOptions:r.data, | |||||
}) | |||||
r.data.map((rr,ind) => { | |||||
if(rr.dictValue == res.data.unit){ | |||||
that.setData({'unitindex':ind}) | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取系统是否 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'sys_yes_no', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
that.setData({ | |||||
sysYesNoOptions:r.data, | |||||
}) | |||||
r.data.map((rr,ind) => { | |||||
if(rr.dictValue == res.data.isMin){ | |||||
that.setData({'isMinindex':ind}) | |||||
} | |||||
if(rr.dictValue == res.data.isFormAsset){ | |||||
that.setData({'isFormAssetindex':ind}) | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}) | |||||
}else{ | |||||
let that = this; | |||||
//获取资产类别 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
that.setData({ | |||||
assetTypeOptions:res.data, | |||||
'form.assetType':res.data[0].dictValue | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取经营属性 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'operation_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
that.setData({ | |||||
operationTypeOptions:res.data, | |||||
'form.operationType':res.data[0].dictValue | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取增加方式 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'add_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
that.setData({ | |||||
addTypeOptions:res.data, | |||||
'form.addType':res.data[0].dictValue | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取使用情况 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'use_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
that.setData({ | |||||
useTypeOptions:res.data, | |||||
'form.useType':res.data[0].dictValue | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取折旧方式 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'depreciation_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
that.setData({ | |||||
depreciationTypeOptions:res.data, | |||||
'form.depreciationType':res.data[1].dictValue | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取资产状态 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_status', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
that.setData({ | |||||
assetStatusOptions:res.data, | |||||
'form.assetStatus':res.data[0].dictValue | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取单位 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'fixed_assets_unit', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
that.setData({ | |||||
unitOptions:res.data, | |||||
'form.unit':res.data[0].dictValue | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
//获取是否 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'sys_yes_no', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
that.setData({ | |||||
sysYesNoOptions:res.data, | |||||
'form.isMin':res.data[0].dictValue, | |||||
'form.isFormAsset':res.data[0].dictValue | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,10 @@ | |||||
{ | |||||
"navigationStyle": "custom", | |||||
"usingComponents": { | |||||
"van-field": "@vant/weapp/field/index", | |||||
"van-popup": "@vant/weapp/popup/index", | |||||
"van-picker": "@vant/weapp/picker/index", | |||||
"van-calendar": "@vant/weapp/calendar/index", | |||||
"van-icon":"@vant/weapp/icon/index" | |||||
} | |||||
} |
@@ -0,0 +1,280 @@ | |||||
<!--pages/contract/add/add.wxml--> | |||||
<view class="ns" style="height:{{isIPX?'88px':'64px'}};"> | |||||
<image src="../../../image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};height: 19.0909px;" mode="widthFix" bindtap="back" referrer="no-referrer|origin|unsafe-url"></image> | |||||
<text style="top:{{isIPX?'54px':'30px'}};">{{form.id?"":"新增"}}资产信息</text> | |||||
</view> | |||||
<view class="main-box table-box" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
<view style="margin-bottom:15px;"> | |||||
<image src="../../../image/icon/fixed_contract_icon.png" referrer="no-referrer|origin|unsafe-url" style="width: 15px;height: 15px;margin-right: 10px;"></image> | |||||
<text class="tit">基本信息</text> | |||||
</view> | |||||
<view class="table-boxs"> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 10rpx;">*</text>资产编码</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.code}}" bindinput="bindNewInput" disabled="true" data-name="form.code" placeholder="资产编码" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 10rpx;">*</text>资产名称</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.name}}" bindinput="bindNewInput" disabled="true" data-name="form.name" placeholder="资产名称" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view class="section"> | |||||
<view class="section__title"><text style="color:red;margin-right: 10rpx;">*</text>资产类别</view> | |||||
<picker bindchange="onConfirmAssetType" value="{{assetTypeindex}}" disabled="true" range="{{assetTypeOptions}}" range-key="{{'dictLabel'}}"> | |||||
<view class="picker"> | |||||
{{assetTypeOptions[assetTypeindex].dictLabel?assetTypeOptions[assetTypeindex].dictLabel:"选择资产类别"}} | |||||
<van-icon name="arrow-down" /> | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<view class="section"> | |||||
<view class="section__title"><text style="color:red;margin-right: 10rpx;">*</text>变更类型</view> | |||||
<picker bindchange="onConfirmChangeType" value="{{changeTypeindex}}" range="{{changeTypeOptions}}" range-key="{{'dictLabel'}}"> | |||||
<view class="picker"> | |||||
{{changeTypeOptions[changeTypeindex].dictLabel?changeTypeOptions[changeTypeindex].dictLabel:"选择变更类型"}} | |||||
<van-icon name="arrow-down" /> | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view class="main-box table-box" style="margin-top:15px;" wx:if="{{changeTypeindex == 0}}"> | |||||
<view style="margin-bottom:15px;"> | |||||
<image src="../../../image/icon/target_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="nor-referrer|origin|unsafe-url"></image> | |||||
<text class="tit">变更信息</text> | |||||
</view> | |||||
<view class="table-boxs"> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>数量/面积</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.quantity}}" bindinput="bindNewInput" disabled="true" placeholder="" data-name="form.quantity" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>变更后</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.changeValue}}" bindinput="bindNewInput" placeholder="变更后数据" data-name="form.changeValue" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>备注</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.remark}}" bindinput="bindNewInput" data-name="form.remark" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view class="main-box table-box" style="margin-top:15px;" wx:if="{{changeTypeindex == 1}}"> | |||||
<view style="margin-bottom:15px;"> | |||||
<image src="../../../image/icon/target_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="nor-referrer|origin|unsafe-url"></image> | |||||
<text class="tit">变更信息</text> | |||||
</view> | |||||
<view class="table-boxs"> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>资产原值</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.originalValue}}" disabled="true" bindinput="bindNewInput" placeholder="" data-name="form.originalValue" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>变更后</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.changeValue}}" bindinput="bindNewInput" placeholder="变更后数据" data-name="form.changeValue" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>备注</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.remark}}" bindinput="bindNewInput" data-name="form.remark" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view class="main-box table-box" style="margin-top:15px;" wx:if="{{changeTypeindex == 2}}"> | |||||
<view style="margin-bottom:15px;"> | |||||
<image src="../../../image/icon/target_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="nor-referrer|origin|unsafe-url"></image> | |||||
<text class="tit">变更信息</text> | |||||
</view> | |||||
<view class="table-boxs"> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>预计使用年数</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.expectedYears}}" disabled="true" bindinput="bindNewInput" placeholder="" data-name="form.expectedYears" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>变更后</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.changeValue}}" bindinput="bindNewInput" placeholder="变更后数据" data-name="form.changeValue" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>备注</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.remark}}" bindinput="bindNewInput" data-name="form.remark" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view class="main-box table-box" style="margin-top:15px;" wx:if="{{changeTypeindex == 3}}"> | |||||
<view style="margin-bottom:15px;"> | |||||
<image src="../../../image/icon/target_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="nor-referrer|origin|unsafe-url"></image> | |||||
<text class="tit">变更信息</text> | |||||
</view> | |||||
<view class="table-boxs"> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>累计折旧</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.depreciationValue}}" disabled="true" bindinput="bindNewInput" placeholder="" data-name="form.depreciationValue" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>变更后</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.changeValue}}" bindinput="bindNewInput" placeholder="变更后数据" data-name="form.changeValue" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>备注</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.remark}}" bindinput="bindNewInput" data-name="form.remark" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view class="main-box table-box" style="margin-top:15px;" wx:if="{{changeTypeindex == 4}}"> | |||||
<view style="margin-bottom:15px;"> | |||||
<image src="../../../image/icon/target_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="nor-referrer|origin|unsafe-url"></image> | |||||
<text class="tit">变更信息</text> | |||||
</view> | |||||
<view class="table-boxs"> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>已折旧年数</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.depreciationYears}}" disabled="true" bindinput="bindNewInput" placeholder="" data-name="form.depreciationYears" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>变更后</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.changeValue}}" bindinput="bindNewInput" placeholder="变更后数据" data-name="form.changeValue" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>备注</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.remark}}" bindinput="bindNewInput" data-name="form.remark" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view class="main-box table-box" style="margin-top:15px;" wx:if="{{changeTypeindex == 5}}"> | |||||
<view style="margin-bottom:15px;"> | |||||
<image src="../../../image/icon/target_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="nor-referrer|origin|unsafe-url"></image> | |||||
<text class="tit">变更信息</text> | |||||
</view> | |||||
<view class="table-boxs"> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>残值率</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.residualsRate}}" disabled="true" bindinput="bindNewInput" placeholder="" data-name="form.residualsRate" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>变更后</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.changeValue}}" bindinput="bindNewInput" placeholder="变更后数据" data-name="form.changeValue" type="digit" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>备注</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.remark}}" bindinput="bindNewInput" data-name="form.remark" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view class="main-box table-box" style="margin-top:15px;" wx:if="{{changeTypeindex == 6}}"> | |||||
<view style="margin-bottom:15px;"> | |||||
<image src="../../../image/icon/target_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="nor-referrer|origin|unsafe-url"></image> | |||||
<text class="tit">变更信息</text> | |||||
</view> | |||||
<view class="table-boxs"> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>折旧方式</text> | |||||
</view> | |||||
<picker bindchange="onConfirmDepreciationType" disabled="true" value="{{depreciationTypeindex}}" range="{{depreciationTypeOptions}}" range-key="{{'dictLabel'}}"> | |||||
<view class="picker"> | |||||
{{depreciationTypeOptions[depreciationTypeindex].dictLabel?depreciationTypeOptions[depreciationTypeindex].dictLabel:"选择折旧方式"}} | |||||
<van-icon name="arrow-down" /> | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>变更后</text> | |||||
</view> | |||||
<picker bindchange="onConfirmChangeValue" value="{{changeValueindex}}" range="{{depreciationTypeOptions}}" range-key="{{'dictLabel'}}"> | |||||
<view class="picker"> | |||||
{{depreciationTypeOptions[changeValueindex].dictLabel?depreciationTypeOptions[changeValueindex].dictLabel:"选择折旧方式"}} | |||||
<van-icon name="arrow-down" /> | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<view> | |||||
<view> | |||||
<text><text style="color:red;margin-right: 22rpx;"></text>备注</text> | |||||
</view> | |||||
<view> | |||||
<input type="text" value="{{form.remark}}" bindinput="bindNewInput" data-name="form.remark" style="text-align: right;margin-top: 20rpx;" /> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view class="bottom"> | |||||
<view class="btn2" bindtap="goSubmit">保存</view> | |||||
</view> |
@@ -0,0 +1,69 @@ | |||||
/* pages/payee/add/add.wxss */ | |||||
.main-box{ | |||||
background: #ffffff; | |||||
padding: 20px; | |||||
width: 94%; | |||||
margin: 0 auto; | |||||
border-radius: 10px; | |||||
box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.16); | |||||
} | |||||
.table-box van-field van-cell .van-cell{ | |||||
margin-bottom: 15px; | |||||
} | |||||
.table-box van-field:last-child van-cell .van-cell{ | |||||
margin-bottom: 0px; | |||||
} | |||||
.van-cell{ | |||||
padding: 0!important; | |||||
margin-bottom: 15px; | |||||
} | |||||
.van-cell__value { | |||||
display: flex; | |||||
justify-content: flex-end; | |||||
} | |||||
.van-radio--horizontal { | |||||
margin-right: 0!important; | |||||
margin-left: var(--padding-sm,12px) | |||||
} | |||||
.van-cell--required:before { | |||||
left: 0!important; | |||||
} | |||||
.van-field__label { | |||||
padding-left: 10px; | |||||
} | |||||
.tit{ | |||||
line-height: 20px; | |||||
font-size: 16px; | |||||
font-weight: bold; | |||||
} | |||||
.bottom{ | |||||
width: 100%; | |||||
margin: 0 auto; | |||||
text-align: center; | |||||
margin-top: 30px; | |||||
margin-bottom: 30px; | |||||
display: flex; | |||||
} | |||||
.bottom view { | |||||
width: 47%; | |||||
margin: 0 auto; | |||||
border-radius: 30px; | |||||
display: inline-block; | |||||
} | |||||
.bottom .btn2{ | |||||
border: 1px solid transparent; | |||||
padding: 8px 0px; | |||||
background-image: linear-gradient(to right, #2C8E68, #5CAE77); | |||||
color: #fff; | |||||
} | |||||
.table-boxs>view{ | |||||
display: flex; | |||||
justify-content: space-between; | |||||
line-height: 80rpx; | |||||
} | |||||
.table-box text{ | |||||
line-height: 80rpx; | |||||
} |
@@ -1,4 +1,4 @@ | |||||
// pages/bank/bank.js | |||||
// pages/fixedAssets/fixedAssets.js | |||||
import * as UTIL from '../../utils/util.js'; | import * as UTIL from '../../utils/util.js'; | ||||
import * as API from '../../utils/API.js'; | import * as API from '../../utils/API.js'; | ||||
let EVN_CONFIG = require('../../env/env'); | let EVN_CONFIG = require('../../env/env'); | ||||
@@ -159,6 +159,57 @@ Page({ | |||||
url: '/pages/fixedAssets/add/add?id='+e.currentTarget.dataset.id, | url: '/pages/fixedAssets/add/add?id='+e.currentTarget.dataset.id, | ||||
}) | }) | ||||
}, | }, | ||||
scrap(e){ | |||||
console.log(e.currentTarget.dataset.data.id,e.currentTarget.dataset.data.index); | |||||
if(e.currentTarget.dataset.data.assetStatus != 1){ | |||||
UTIL.showToastNoneIcon('只允许修改资产状态为正常的资产!'); | |||||
return false; | |||||
}else if(e.currentTarget.dataset.data.useType == 3){ | |||||
UTIL.showToastNoneIcon('使用状态为出租或出借不允许操作!'); | |||||
return false; | |||||
}else{ | |||||
UTIL.httpRequest(API.URL_GET_UPDATERSCRAP + e.currentTarget.dataset.data.id , {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let new_list = this.data.list | |||||
new_list.splice(e.currentTarget.dataset.data.index,1) | |||||
this.setData({'list':new_list}) | |||||
UTIL.showToastNoneIcon('报废成功!'); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('报废失败!:'+res.msg); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
sell(e){ | |||||
console.log(e.currentTarget.dataset.data.id,e.currentTarget.dataset.data.index); | |||||
if(e.currentTarget.dataset.data.assetStatus != 1){ | |||||
UTIL.showToastNoneIcon('只允许修改资产状态为正常的资产!'); | |||||
return false; | |||||
}else if(e.currentTarget.dataset.data.useType == 3){ | |||||
UTIL.showToastNoneIcon('使用状态为出租或出借不允许操作!'); | |||||
return false; | |||||
}else{ | |||||
UTIL.httpRequest(API.URL_GET_UPDATERSALE + e.currentTarget.dataset.data.id , {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let new_list = this.data.list | |||||
new_list.splice(e.currentTarget.dataset.data.index,1) | |||||
this.setData({'list':new_list}) | |||||
UTIL.showToastNoneIcon('出售成功!'); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('出售失败!:'+res.msg); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
change(e){ | |||||
wx.navigateTo({ | |||||
url: '/pages/fixedAssets/change/change?id='+e.currentTarget.dataset.id, | |||||
}) | |||||
}, | |||||
delete(e){ | delete(e){ | ||||
this.setData({ | this.setData({ | ||||
'itemId':e.currentTarget.dataset.id, | 'itemId':e.currentTarget.dataset.id, | ||||
@@ -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="{{ 130 }}" left-width="{{ 90 }}" 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/fixedAssets_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="no-referrer|origin|unsafe-url"></image> | <image src="/image/icon/fixedAssets_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="no-referrer|origin|unsafe-url"></image> | ||||
@@ -46,6 +46,24 @@ | |||||
</view> | </view> | ||||
</view> | </view> | ||||
</view> | </view> | ||||
<view slot="left" class="moreBox" > | |||||
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(165,165,165,0.2);" data-data="{{item}}" data-index="{{index}}" bindtap="scrap"> | |||||
<view> | |||||
<image src="../../image/icon/scrap_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||||
</view> | |||||
<view> | |||||
<text style="color:#A5A5A5">报废</text> | |||||
</view> | |||||
</view> | |||||
<view style="flex: 1;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;background-color: rgb(238,95,0,0.2);" data-data="{{item}}" data-index="{{index}}" bindtap="sell"> | |||||
<view> | |||||
<image src="../../image/icon/sell_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||||
</view> | |||||
<view> | |||||
<text style="color: rgb(238,95,0);">出售</text> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view slot="right" class="deleteBox"> | <view slot="right" class="deleteBox"> | ||||
<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 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> | <view> | ||||
@@ -63,6 +81,14 @@ | |||||
<text style="color: #62AD66;">附件</text> | <text style="color: #62AD66;">附件</text> | ||||
</view> | </view> | ||||
</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="change"> | |||||
<view> | |||||
<image src="../../image/icon/relevance_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||||
</view> | |||||
<view> | |||||
<text style="color: rgb(239,135,7);">变更</text> | |||||
</view> | |||||
</view> | |||||
</view> | </view> | ||||
</van-swipe-cell> | </van-swipe-cell> | ||||
</scroll-view> | </scroll-view> | ||||
@@ -71,6 +71,14 @@ text{display: block;} | |||||
align-items: center; | align-items: center; | ||||
display: flex; | display: flex; | ||||
} | } | ||||
.moreBox{ | |||||
width: 90px; | |||||
text-align: center; | |||||
height: 100%; | |||||
background: #F6F6F6; | |||||
align-items: center; | |||||
display: flex; | |||||
} | |||||
.workflow .workflow_list{ | .workflow .workflow_list{ | ||||
height: 150rpx; | height: 150rpx; | ||||
background-color: #fff; | background-color: #fff; | ||||
@@ -101,6 +101,14 @@ | |||||
<view class="image"><image class="attribute" src="../../image/index/child_function_10.png" mode="aspectFit"></image></view> | <view class="image"><image class="attribute" src="../../image/index/child_function_10.png" mode="aspectFit"></image></view> | ||||
<text class="desc">固定资产</text> | <text class="desc">固定资产</text> | ||||
</view> | </view> | ||||
<view class="flex_block" data-url="/pages/paymentManager/paymentManager" bindtap="navigate" hover-class="btnView"> | |||||
<view class="image"><image class="attribute" src="../../image/index/paymentManager_icon.png" mode="aspectFit"></image></view> | |||||
<text class="desc">支付管理</text> | |||||
</view> | |||||
<view class="flex_block" data-url="/pages/majorEvent/majorEvent" bindtap="navigate" hover-class="btnView"> | |||||
<view class="image"><image class="attribute" src="../../image/index/majorEvent_icon.png" mode="aspectFit"></image></view> | |||||
<text class="desc">重大事项</text> | |||||
</view> | |||||
</block> | </block> | ||||
<view class="flex_block" bindtap="openView" hover-class="btnView"> | <view class="flex_block" bindtap="openView" hover-class="btnView"> | ||||
<view class="image"><image class="attribute" src="../../image/index/child_function_06.png" mode="aspectFit"></image></view> | <view class="image"><image class="attribute" src="../../image/index/child_function_06.png" mode="aspectFit"></image></view> | ||||
@@ -0,0 +1,228 @@ | |||||
// pages/bankDraft/add/add.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, | |||||
form:{ | |||||
eventTime: "2020-01-01", //开票日期 必填 | |||||
remark: "", | |||||
}, | |||||
showBtn:true, | |||||
showEventTime:false, | |||||
status:0, | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
let that = this | |||||
if(options.id!=null&&options.id!=""){ | |||||
this.setData({id:options.id}) | |||||
UTIL.httpRequest(API.URL_GET_MAJOREVENTGET + this.data.id, {method:'GET'}, { | |||||
success: (res) => { | |||||
console.log(res); | |||||
if(res.data.auditStatus!='0'&&res.data.auditStatus!='2'){ | |||||
this.setData({'showBtn':false}); | |||||
} | |||||
this.setData({'form':res.data}) | |||||
this.selectComponent('#hf_editor').setHtml(res.data.eventContent); | |||||
} | |||||
}) | |||||
}else{ | |||||
this.onShow() | |||||
} | |||||
}, | |||||
onConfirmEventTime(e){ | |||||
let data = this.getNewDate(new Date(e.detail.value)); | |||||
this.setData({'form.eventTime':data}); | |||||
}, | |||||
getHtml(e) {//从组件获取值 | |||||
this.data.form.eventContent = e.detail.content.html | |||||
}, | |||||
insertImage(){ //图片上传插入示例 | |||||
wx.chooseImage({ | |||||
count: 1, | |||||
success: r => { | |||||
// 本地测试图片插入 | |||||
// this.selectComponent('#hf_editor').insertSrc(res.tempFilePaths[0]); | |||||
wx.uploadFile({ //调用图片上传接口 | |||||
url: URL_PREFIX+'/common/upload', | |||||
filePath: r.tempFilePaths[0], | |||||
name: 'imgFile', | |||||
success: res => { | |||||
console.log(); | |||||
let imgUrl = JSON.parse(res.data).url | |||||
this.selectComponent('#hf_editor').insertSrc(URL_PREFIX+'/common/upload' + imgUrl);//调用组件insertSrc方法 | |||||
} | |||||
}) | |||||
} | |||||
}) | |||||
}, | |||||
getNewDate(date){ | |||||
//date是传过来的时间戳,注意需为13位,10位需*1000 | |||||
//也可以不传,获取的就是当前时间 | |||||
var time | |||||
if(date){ | |||||
time = new Date(date); | |||||
}else{ | |||||
time = new Date(); | |||||
} | |||||
var year= time.getFullYear() //年 | |||||
var month = ("0" + (time.getMonth() + 1)).slice(-2); //月 | |||||
var day = ("0" + time.getDate()).slice(-2); //日 | |||||
var mydate = year + "-" + month + "-" + day; | |||||
return mydate | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
}, | |||||
openBox(even){ | |||||
console.log(even.currentTarget.dataset.name); | |||||
this.setData({ | |||||
[even.currentTarget.dataset.name]:true | |||||
}) | |||||
}, | |||||
onChange(event){ | |||||
console.log(event); | |||||
this.setData({ | |||||
[event.currentTarget.dataset.value]: event.detail, | |||||
}) | |||||
}, | |||||
closeBox(even){ | |||||
console.log(even.currentTarget.dataset.name); | |||||
this.setData({ | |||||
[even.currentTarget.dataset.name]:false | |||||
}) | |||||
}, | |||||
goSubmit(){ | |||||
if(this.data.form.eventName===''||this.data.form.eventName==null){ //事项名称 | |||||
UTIL.showToastNoneIcon('请填写事项名称!'); | |||||
return false; | |||||
}else if(this.data.form.eventTime===''||this.data.form.eventTime==null){ //事项时间 | |||||
UTIL.showToastNoneIcon('事项时间不能为空!'); | |||||
return false; | |||||
}else if(this.data.form.eventContent===''||this.data.form.eventContent==null){ //事项内容 | |||||
UTIL.showToastNoneIcon('事项内容不能为空!'); | |||||
return false; | |||||
}else if(this.data.status=='0'){ | |||||
this.setData({'status':'1'}) | |||||
var that = this; | |||||
that.data.form.method = 'POST'; | |||||
that.data.form.eventContent = that.data.form.eventContent.replace(/\\/g,"/") | |||||
console.log(that.data.form); | |||||
if(that.data.form.id==""||that.data.form.id==null){ | |||||
UTIL.httpRequest(API.URL_POST_MAJOREVENTADD, that.data.form , { | |||||
success: (res) => { | |||||
this.setData({'status':0}) | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon('新增成功'); | |||||
setTimeout(function(){ | |||||
wx.navigateBack({ | |||||
delta:1 | |||||
}) | |||||
},2000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon('新增失败:'+res.msg); | |||||
} | |||||
} | |||||
}) | |||||
}else{ | |||||
UTIL.httpRequest(API.URL_POST_MAJOREVENTUPDATE, that.data.form , { | |||||
success: (res) => { | |||||
this.setData({'status':0}) | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon('修改成功'); | |||||
setTimeout(function(){ | |||||
wx.navigateBack({ | |||||
delta:1 | |||||
}) | |||||
},2000) | |||||
}else{ | |||||
UTIL.showToastNoneIcon('修改失败:'+res.msg); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
} | |||||
}, | |||||
onConfirmTime(event){ | |||||
this.setData({ | |||||
[event.currentTarget.dataset.name]: false, | |||||
[event.currentTarget.dataset.value]: UTIL.formatDate(event.detail), | |||||
}); | |||||
}, | |||||
openBox(even){ | |||||
console.log(even.currentTarget.dataset.name); | |||||
this.setData({ | |||||
[even.currentTarget.dataset.name]:true | |||||
}) | |||||
}, | |||||
closeBox(even){ | |||||
console.log(even.currentTarget.dataset.name); | |||||
this.setData({ | |||||
[even.currentTarget.dataset.name]:false | |||||
}) | |||||
}, | |||||
back:function(){ | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,21 @@ | |||||
{ | |||||
"navigationStyle": "custom", | |||||
"usingComponents": { | |||||
"van-row": "@vant/weapp/row/index", | |||||
"van-col": "@vant/weapp/col/index", | |||||
"van-cell": "@vant/weapp/cell/index", | |||||
"van-cell-group": "@vant/weapp/cell-group/index", | |||||
"van-tag": "@vant/weapp/tag/index", | |||||
"van-icon": "@vant/weapp/icon/index", | |||||
"van-steps": "@vant/weapp/steps/index", | |||||
"van-button": "@vant/weapp/button/index", | |||||
"van-radio": "@vant/weapp/radio/index", | |||||
"van-radio-group": "@vant/weapp/radio-group/index", | |||||
"van-field": "@vant/weapp/field/index", | |||||
"van-popup": "@vant/weapp/popup/index", | |||||
"van-picker": "@vant/weapp/picker/index", | |||||
"van-calendar": "@vant/weapp/calendar/index", | |||||
"van-datetime-picker": "@vant/weapp/datetime-picker/index", | |||||
"hf_editor": "/component/editor/editor" | |||||
} | |||||
} |
@@ -0,0 +1,24 @@ | |||||
<!--pages/payee/add/add.wxml--> | |||||
<view class="ns" style="height:{{isIPX?'88px':'64px'}};"> | |||||
<image src="/image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};height: 19.0909px;" mode="widthFix" bindtap="back"></image> | |||||
<text style="top:{{isIPX?'54px':'30px'}};">{{form.id?"":"新增"}}重大项目</text> | |||||
</view> | |||||
<view class="main-box table-box table-boxs" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
<van-field label="项目名称" value="{{ form.eventName }}" placeholder="项目名称" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.eventName"/> | |||||
<view class="section" style="margin-top: -28rpx;"> | |||||
<view class="section__title"><text style="color:red;margin-right: 8rpx;">*</text>发生日期</view> | |||||
<picker mode="date" value="{{form.eventTime}}" bindchange="onConfirmEventTime"> | |||||
<view class="picker"> | |||||
{{form.eventTime?form.eventTime:'发生日期'}} | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<view style="width:100%;"> | |||||
<hf_editor style="width:100%" height="600rpx" insertPicture="{{true}}" placeholder="编写文章..." bind:Content="getHtml" bind:insertImage="insertImage" id="hf_editor"/> | |||||
</view> | |||||
<van-field label="备注" value="{{ form.remark }}" placeholder="备注" border="{{ false }}" bind:change="onChange" input-align="right" data-value="form.remark"/> | |||||
</view> | |||||
<view class="bottom" wx:if="{{showBtn}}"> | |||||
<view class="btn2" bindtap="goSubmit">保存</view> | |||||
</view> |
@@ -0,0 +1,103 @@ | |||||
/* pages/payee/add/add.wxss */ | |||||
.main-box{ | |||||
background: #ffffff; | |||||
padding: 20px; | |||||
width: 94%; | |||||
margin: 0 auto; | |||||
border-radius: 10px; | |||||
box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.16); | |||||
} | |||||
.table-box van-field van-cell .van-cell{ | |||||
margin-bottom: 15px; | |||||
} | |||||
.table-box van-field:last-child van-cell .van-cell{ | |||||
margin-bottom: 0px; | |||||
} | |||||
.van-cell{ | |||||
padding: 0!important; | |||||
margin-bottom: 15px; | |||||
} | |||||
.van-cell__value { | |||||
display: flex; | |||||
justify-content: flex-end; | |||||
} | |||||
.van-radio--horizontal { | |||||
margin-right: 0!important; | |||||
margin-left: var(--padding-sm,12px) | |||||
} | |||||
.van-cell--required:before { | |||||
left: 0!important; | |||||
} | |||||
.van-field__label { | |||||
padding-left: 10px; | |||||
} | |||||
.bottom{ | |||||
width: 100%; | |||||
margin: 0 auto; | |||||
text-align: center; | |||||
margin-top: 30px; | |||||
margin-bottom: 30px; | |||||
display: flex; | |||||
position: absolute; | |||||
bottom: 10%; | |||||
} | |||||
.bottom view { | |||||
width: 47%; | |||||
margin: 0 auto; | |||||
border-radius: 30px; | |||||
display: inline-block; | |||||
} | |||||
.bottom .btn2{ | |||||
border: 1px solid transparent; | |||||
padding: 8px 0px; | |||||
background-image: linear-gradient(to right, #2C8E68, #5CAE77); | |||||
color: #fff; | |||||
} | |||||
.table-boxs>view{ | |||||
display: flex; | |||||
justify-content: space-between; | |||||
line-height: 100rpx; | |||||
} | |||||
.ql-container { | |||||
box-sizing: border-box; | |||||
width: 100%; | |||||
height: 400px; | |||||
font-size: 16px; | |||||
line-height: 1.5; | |||||
overflow: auto; | |||||
padding: 10px 10px 20px 10px; | |||||
border: 1px solid #ECECEC; | |||||
} | |||||
.ql-active { | |||||
color: #22C704; | |||||
} | |||||
.iconfont { | |||||
display: inline-block; | |||||
width: 30px; | |||||
height: 30px; | |||||
cursor: pointer; | |||||
font-size: 20px; | |||||
} | |||||
.toolbar { | |||||
box-sizing: border-box; | |||||
padding: 0 10px; | |||||
height: 50px; | |||||
width: 100%; | |||||
position: absolute; | |||||
left: 0; | |||||
right: 100%; | |||||
top: 0; | |||||
display: flex; | |||||
align-items: center; | |||||
justify-content: space-between; | |||||
border: 1px solid #ECECEC; | |||||
border-left: none; | |||||
border-right: none; | |||||
} |
@@ -0,0 +1,398 @@ | |||||
// pages/project/project.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, | |||||
eventName:"", | |||||
value:'', | |||||
pageNums:1, | |||||
showUpload:false, | |||||
uploadOptions:[], | |||||
fileList:[], | |||||
itemId:"", | |||||
itemIndex:"", | |||||
list:[], | |||||
fileEvent:{}, | |||||
showPopupDel:false, | |||||
showPopupSubmit:false, | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
var _this = this; | |||||
let qu = wx.createSelectorQuery() | |||||
qu.select("#top_view").boundingClientRect() | |||||
qu.exec(res => { | |||||
_this.setData({ | |||||
scrollHeight:wx.getSystemInfoSync().windowHeight-res[0].height-res[0].top | |||||
}) | |||||
}) | |||||
//获取附件字典 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'common_attach', {method:'GET'}, { | |||||
success: (res) => { | |||||
this.setData({ | |||||
uploadOptions:res.data, | |||||
}) | |||||
} | |||||
}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
this.onShow(); | |||||
}, | |||||
goSearch(e){ | |||||
this.setData({eventName:e.detail}) | |||||
this.onShow(); | |||||
}, | |||||
goAdd(){ | |||||
wx.navigateTo({ | |||||
url: 'add/add', | |||||
}) | |||||
}, | |||||
back:function(){ | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}, | |||||
goUpdate(e){ | |||||
wx.navigateTo({ | |||||
url: 'add/add?id='+ e.currentTarget.dataset.id, | |||||
}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
var that = this; | |||||
let params = { | |||||
pageNum : this.data.pageNum, | |||||
pageSize: 10, | |||||
eventName: this.data.eventName, | |||||
method:'GET' | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_MAJOREVENTLIST, params, { | |||||
success: (res) => { | |||||
this.setData({ | |||||
list:res.rows | |||||
}); | |||||
} | |||||
}) | |||||
}, | |||||
submit(e){ | |||||
this.setData({ | |||||
'itemId':e.currentTarget.dataset.id, | |||||
'itemIndex':e.currentTarget.dataset.index, | |||||
"showPopupSubmit":true | |||||
}); | |||||
}, | |||||
confirmTemSub(){ | |||||
this.setData({ | |||||
"showPopupSubmit":false | |||||
}); | |||||
UTIL.httpRequest(API.URL_GET_MAJOREVENTSUBMIT + this.data.itemId , {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let new_list = this.data.list | |||||
new_list[this.data.itemIndex].auditStatus = '1' | |||||
this.setData({'list':new_list}) | |||||
UTIL.showToastNoneIcon('提交成功'); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('提交失败!'); | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
cancelTemSub(){ | |||||
this.setData({ | |||||
"itemId":"", | |||||
"itemIndex":"", | |||||
"showPopupSubmit":false | |||||
}); | |||||
}, | |||||
delete(e){ | |||||
this.setData({ | |||||
'itemId':e.currentTarget.dataset.id, | |||||
'itemIndex':e.currentTarget.dataset.index, | |||||
"showPopupDel":true | |||||
}); | |||||
}, | |||||
cancelTemDel:function(e){ | |||||
this.setData({ | |||||
"itemId":"", | |||||
"itemIndex":"", | |||||
"showPopupDel":false | |||||
}); | |||||
}, | |||||
confirmTemDel:function(e){ | |||||
this.setData({ | |||||
"showPopupDel":false | |||||
}); | |||||
UTIL.httpRequest(API.URL_GET_MAJOREVENTDELETE + this.data.itemId , {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let new_list = this.data.list | |||||
new_list.splice(this.data.index,1) | |||||
this.setData({'list':new_list}) | |||||
UTIL.showToastNoneIcon('删除成功!'); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('删除失败!'); | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
changeTab(e){ | |||||
var that = this ; | |||||
that.setData({value1:e.detail}) | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'order_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
UTIL.httpRequest(API.URL_GET_GETMONEYORDERLIST, {method:'GET',orderType:that.data.value1,orderStatus:that.data.value2},{ | |||||
success: (response) => { | |||||
if (response.code == API.SUCCESS_CODE) { | |||||
for (let i = 0; i < response.rows.length; i++) { | |||||
response.rows[i].orderTypeText = UTIL.getTransform(response.rows[i].orderType,res.data); | |||||
response.rows[i].startTime = response.rows[i].startTime.replace(/-/g,"."); | |||||
response.rows[i].endTime = response.rows[i].endTime.replace(/-/g,"."); | |||||
response.rows[i].orderAmount = parseFloat(response.rows[i].orderAmount).toFixed(2); | |||||
} | |||||
that.setData({ | |||||
moneyorderList:response.rows | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}) | |||||
}, | |||||
changeTab2(e){ | |||||
var that = this ; | |||||
that.setData({value2:e.detail}) | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'order_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
UTIL.httpRequest(API.URL_GET_GETMONEYORDERLIST, {method:'GET',orderType:that.data.value1,orderStatus:that.data.value2},{ | |||||
success: (response) => { | |||||
if (response.code == API.SUCCESS_CODE) { | |||||
for (let i = 0; i < response.rows.length; i++) { | |||||
response.rows[i].orderTypeText = UTIL.getTransform(response.rows[i].orderType,res.data); | |||||
response.rows[i].startTime = response.rows[i].startTime.replace(/-/g,"."); | |||||
response.rows[i].endTime = response.rows[i].endTime.replace(/-/g,"."); | |||||
response.rows[i].orderAmount = parseFloat(response.rows[i].orderAmount).toFixed(2); | |||||
} | |||||
that.setData({ | |||||
moneyorderList:response.rows | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}) | |||||
}, | |||||
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_yinnong_majorevent", //上传表 | |||||
bizPath: "yinnong", | |||||
fileType: res.dictValue, //附件类型 1原始发票 2会议纪要 3会议照片 4 参会人员签字 | |||||
method:'GET' | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, { | |||||
success: (rr) => { | |||||
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) =>{ | |||||
}, | |||||
complete:(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 | |||||
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.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_yinnong_majorevent", //上传表 | |||||
bizPath: "yinnong", | |||||
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){ | |||||
} | |||||
}) | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,17 @@ | |||||
{ | |||||
"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-dropdown-menu": "@vant/weapp/dropdown-menu/index", | |||||
"van-dropdown-item": "@vant/weapp/dropdown-item/index", | |||||
"van-tag": "@vant/weapp/tag/index", | |||||
"van-action-sheet": "@vant/weapp/action-sheet/index", | |||||
"van-upload": "@vant/weapp/uploader/index" | |||||
} | |||||
} |
@@ -0,0 +1,91 @@ | |||||
<!--pages/bank/bank.wxml--> | |||||
<view class="ns" style="height:{{isIPX?'88px':'64px'}};"> | |||||
<image src="../../image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};height: 19.0909px;" mode="widthFix" bindtap="back"></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="{{ eventName }}" | |||||
shape="round" | |||||
background="transparent" | |||||
placeholder="请输入事项名称" | |||||
clearable | |||||
bind:change="goSearch" | |||||
/> | |||||
<view class="add_btn" bindtap="goAdd"><text>新增</text></view> | |||||
</view> | |||||
<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"> | |||||
<view class="li" bindtap="goUpdate" data-id="{{item.id}}"> | |||||
<view class="tit_box"> | |||||
<view class="tit_box_left"> | |||||
<image src="/image/icon/icon_gc.png" style="width: 17px; height: 15px;"></image> | |||||
<text class="tit">{{item.eventName}}</text> | |||||
</view> | |||||
</view> | |||||
<view class="detail_time_box"> | |||||
<view class="detail_time"> | |||||
<image src="/image/icon/icon_date.png" style="width: 14px;height: 14px;"></image> | |||||
<text>{{item.eventTime}}</text> | |||||
</view> | |||||
<view class="detail_time"> | |||||
<text class="detail_box_money" wx:if="{{item.auditStatus==0}}" style="color:#000">草稿</text> | |||||
<text class="detail_box_money" wx:if="{{item.auditStatus==1}}" style="color:#e6a23c;">待审</text> | |||||
<text class="detail_box_money" wx:if="{{item.auditStatus==2}}" style="color:#f56c6c;">驳回</text> | |||||
<text class="detail_box_money" wx:if="{{item.auditStatus==3}}" style="color:#67c23a;">通过</text> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view slot="right" class="deleteBox"> | |||||
<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" wx:if="{{item.auditStatus==0||item.auditStatus==2}}"> | |||||
<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 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="submit" wx:if="{{item.auditStatus==0||item.auditStatus==2}}"> | |||||
<view> | |||||
<image src="../../image/icon/relevance_icon.png" style="width: 25px;height: 25px;margin: 0 auto;display: block;" ></image> | |||||
</view> | |||||
<view> | |||||
<text style="color: rgb(239,135,7);">提交</text> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</van-swipe-cell> | |||||
</scroll-view> | |||||
<van-action-sheet show="{{showUpload}}" title="附件" bind:close="closeBox"> | |||||
<scroll-view scroll-y="true" style="height: 600rpx;" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll" scroll-top="0"> | |||||
<view class="fj-box"> | |||||
<view class="fj-li" wx:for="{{fileList}}" wx:key="index" wx:for-item="item" > | |||||
<view> | |||||
<text>{{item.dictLabel}}</text> | |||||
</view> | |||||
<view class="img_box"> | |||||
<view class="img_li"> | |||||
<van-upload file-list="{{ item.list }}" bind:after-read="afterRead" bind:delete="deleteImg" bind:click-preview="lookDown" data-idx="{{index}}"> | |||||
</van-upload> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</scroll-view> | |||||
</van-action-sheet> | |||||
<modal hidden="{{!showPopup}}" title="是否删除?" confirm-text="是" cancel-text="否" bindcancel="cancelTem" bindconfirm="confirmTem"> | |||||
</modal> | |||||
<modal hidden="{{!showPopupDel}}" title="是否删除?" confirm-text="是" cancel-text="否" bindcancel="cancelTemDel" bindconfirm="confirmTemDel"> | |||||
</modal> | |||||
<modal hidden="{{!showPopupSubmit}}" title="是否提交?" confirm-text="是" cancel-text="否" bindcancel="cancelTemSub" bindconfirm="confirmTemSub"> | |||||
</modal> |
@@ -0,0 +1,347 @@ | |||||
/* pages/bank/bank.wxss */ | |||||
.van-search__content { | |||||
border: 1px solid #5CAE77!important; | |||||
background: #fff!important; | |||||
} | |||||
van-search { | |||||
flex: 0.8; | |||||
} | |||||
.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; | |||||
justify-content: space-between; | |||||
} | |||||
.tit_box_left{ | |||||
display: flex; | |||||
align-items: center; | |||||
} | |||||
.detail_box{ | |||||
margin-top: 10px; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
} | |||||
.detail_box text{ | |||||
color:#878787; | |||||
} | |||||
.fkmc { | |||||
line-height: 20px; | |||||
font-size: 16px; | |||||
} | |||||
.detail_time .detail_box_money{ | |||||
font-size: 14px; | |||||
} | |||||
.detail_time_box{ | |||||
display: flex; | |||||
justify-content: space-between; | |||||
margin-top: 10px; | |||||
} | |||||
.detail_time{ | |||||
display: flex; | |||||
align-items: center; | |||||
padding-left: 3px; | |||||
} | |||||
.detail_time text{ | |||||
font-size: 12px; | |||||
margin-left: 5px; | |||||
color: #878787; | |||||
} | |||||
.li .detail_box_left text{ | |||||
text-align: center; | |||||
} | |||||
.li .detail_box_left .fkdw{ | |||||
color: #B5B5B5; | |||||
font-size: 14px; | |||||
margin-top: 5px; | |||||
} | |||||
.li .detail_box_center{ | |||||
color: #666666; | |||||
font-size: 12px; | |||||
text-align: center; | |||||
} | |||||
.li .detail_box_right text{ | |||||
text-align: center; | |||||
} | |||||
.li .detail_box_right .skdw{ | |||||
color: #B5B5B5; | |||||
font-size: 14px; | |||||
margin-top: 5px; | |||||
} | |||||
.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: 16px; | |||||
color: #333333; | |||||
line-height: 25px; | |||||
display: -webkit-box; | |||||
-webkit-box-orient: vertical; | |||||
-webkit-line-clamp: 1; | |||||
word-break: break-all; | |||||
overflow: hidden; | |||||
margin-left: 5px; | |||||
} | |||||
.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; | |||||
} | |||||
.tit_type{ | |||||
display: flex; | |||||
align-items: center; | |||||
} | |||||
.tit_type text{ | |||||
background: rgba(92, 174, 119, 0.2); | |||||
color: #5CAE77; | |||||
padding: 2px 10px; | |||||
} | |||||
.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; | |||||
} | |||||
.hp_type{ | |||||
padding: 4vw 3%; | |||||
display: flex; | |||||
border-bottom: 1px solid #eee; | |||||
} | |||||
.hp_type view{ | |||||
padding: 2vw 6%; | |||||
background: #EEEEEE; | |||||
border-radius: 60px; | |||||
margin-right: 3%; | |||||
width: 30vw; | |||||
text-align: center; | |||||
} | |||||
.hp_button{ | |||||
display: flex; | |||||
justify-content: space-around; | |||||
padding:4vw 0 6vw; | |||||
} | |||||
.hp_button view{ | |||||
padding: 3vw 6%; | |||||
background: #EEEEEE; | |||||
border-radius: 60px; | |||||
width: 30vw; | |||||
text-align: center; | |||||
} | |||||
.van-dropdown-menu { | |||||
margin-bottom: 15px; | |||||
} | |||||
.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; | |||||
} |
@@ -0,0 +1,410 @@ | |||||
// pages/paymentManager/paymentManager.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:[], | |||||
option1: [ | |||||
{ text: '支付状态', value: '' }, | |||||
{ text: '待支付', value: '1' }, | |||||
{ text: '银行受理', value: '3' }, | |||||
{ text: '支付失败', value: '4' }, | |||||
{ text: '部分失败', value: '5' }, | |||||
], | |||||
option2: [ | |||||
{ text: '支出类别', value: '' }, | |||||
{ text: '结算类', value: '1' }, | |||||
{ text: '工程项目类', value: '2' }, | |||||
{ text: '合同类', value: '4' }, | |||||
{ text: '其他', value: '5' }, | |||||
], | |||||
option3: [ | |||||
{ text: '申请类别', value: '' }, | |||||
{ text: '银行卡转账', value: '1' }, | |||||
{ text: '信用卡还款', value: '2' }, | |||||
], | |||||
value1: '', | |||||
value2: '', | |||||
value3: '', | |||||
}, | |||||
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_view1").boundingClientRect() | |||||
qu.select("#top_ban").boundingClientRect() | |||||
qu.exec(res => { | |||||
that.setData({ | |||||
scrollHeight:wx.getSystemInfoSync().windowHeight-res[0].height-res[0].top | |||||
}) | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
//获取附件字典 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'bookkeeping_type', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
this.setData({ | |||||
uploadOptions:res.data, | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
getList:function(){ | |||||
let params = { | |||||
pageNum:this.data.pageNums, | |||||
pageSize:10, | |||||
name:this.data.name, | |||||
paymentState:this.data.value1, | |||||
capitalExpenditureType:this.data.value2, | |||||
transferType:this.data.value3 | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_TRANSFERPAYLIST,params,{ | |||||
success: (res) => { | |||||
let _this = this | |||||
if(res.code == 200){ | |||||
if(this.data.pageNums!=1&&this.data.list.length<res.total){ | |||||
let lists = [] | |||||
res.rows.map((rr,index) => { | |||||
rr.expenditureAmount = Number(rr.expenditureAmount ).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, "") | |||||
if(index==(res.rows.length-1)){ | |||||
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 => { | |||||
ress.originalValue = Number(ress.originalValue ).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||||
return $1 + ","; }).replace(/\.$/, "") | |||||
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(); | |||||
}, | |||||
toPay(e){ | |||||
wx.navigateTo({ | |||||
url: '/pages/paymentManager/toPay/toPay?id='+e.currentTarget.dataset.id, | |||||
}) | |||||
}, | |||||
scrap(e){ | |||||
console.log(e.currentTarget.dataset.data.id,e.currentTarget.dataset.data.index); | |||||
if(e.currentTarget.dataset.data.assetStatus != 1){ | |||||
UTIL.showToastNoneIcon('只允许修改资产状态为正常的资产!'); | |||||
return false; | |||||
}else if(e.currentTarget.dataset.data.useType == 3){ | |||||
UTIL.showToastNoneIcon('使用状态为出租或出借不允许操作!'); | |||||
return false; | |||||
}else{ | |||||
UTIL.httpRequest(API.URL_GET_UPDATERSCRAP + e.currentTarget.dataset.data.id , {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let new_list = this.data.list | |||||
new_list.splice(e.currentTarget.dataset.data.index,1) | |||||
this.setData({'list':new_list}) | |||||
UTIL.showToastNoneIcon('报废成功!'); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('报废失败!:'+res.msg); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
sell(e){ | |||||
console.log(e.currentTarget.dataset.data.id,e.currentTarget.dataset.data.index); | |||||
if(e.currentTarget.dataset.data.assetStatus != 1){ | |||||
UTIL.showToastNoneIcon('只允许修改资产状态为正常的资产!'); | |||||
return false; | |||||
}else if(e.currentTarget.dataset.data.useType == 3){ | |||||
UTIL.showToastNoneIcon('使用状态为出租或出借不允许操作!'); | |||||
return false; | |||||
}else{ | |||||
UTIL.httpRequest(API.URL_GET_UPDATERSALE + e.currentTarget.dataset.data.id , {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let new_list = this.data.list | |||||
new_list.splice(e.currentTarget.dataset.data.index,1) | |||||
this.setData({'list':new_list}) | |||||
UTIL.showToastNoneIcon('出售成功!'); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('出售失败!:'+res.msg); | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
change(e){ | |||||
var that = this ; | |||||
that.setData({value:e.detail,pageNum:1}) | |||||
this.getList() | |||||
}, | |||||
changeTab(e){ | |||||
var that = this ; | |||||
that.setData({value1:e.detail,pageNum:1}) | |||||
this.getList() | |||||
}, | |||||
changeTab2(e){ | |||||
var that = this ; | |||||
that.setData({value2:e.detail,pageNum:1}) | |||||
this.getList() | |||||
}, | |||||
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 _this = this | |||||
uploadList.map( (res,idx) => { | |||||
res.list=[] | |||||
console.log(res); | |||||
let oData = { | |||||
tableId: id, | |||||
tableName: "t_yinnong_transfer", //上传表 | |||||
bizPath: "transfer", | |||||
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 | |||||
rrr.name = rrr.fileName | |||||
if(index==rr.rows.length-1){ | |||||
res.list = rr.rows | |||||
let lis = uploadList | |||||
lis[idx] = res | |||||
_this.setData({"fileList":lis}); | |||||
_this.setData({"showUpload":true}) | |||||
} | |||||
}) | |||||
} | |||||
else{ | |||||
_this.setData({"showUpload":true}) | |||||
} | |||||
} | |||||
}) | |||||
}) | |||||
}, | |||||
closeBox(){ | |||||
this.setData({"showUpload":false}) | |||||
}, | |||||
uploadFile(uploadFile,event) { | |||||
let _this = this | |||||
return new Promise((resolve, reject) => { | |||||
wx.uploadFile({ | |||||
url: API.URL_GET_UPLOAD, | |||||
filePath: uploadFile.file.file.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], | |||||
"name":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_yinnong_transfer", //上传表 | |||||
bizPath: "transfer", | |||||
tableId:_this.data.itemId | |||||
} | |||||
this.uploadFile(fileForm,event) | |||||
}, | |||||
lookDown(e){ | |||||
let file =e | |||||
// 获取指定字符串最后一次出现的位置,返回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() { | |||||
this.setData({'pageNums':1}) | |||||
this.getList(); | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,16 @@ | |||||
{ | |||||
"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", | |||||
"van-dropdown-menu": "@vant/weapp/dropdown-menu/index", | |||||
"van-dropdown-item": "@vant/weapp/dropdown-item/index" | |||||
} | |||||
} |
@@ -0,0 +1,79 @@ | |||||
<!--pages/paymentManager/paymentManager.wxml--> | |||||
<view class="ns" id="top_ban" style="height:{{isIPX?'88px':'64px'}};"> | |||||
<image src="../../image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};height: 19.0909px;" mode="widthFix" bindtap="back" referrer="no-referrer|origin|unsafe-url"></image> | |||||
<text style="top:{{isIPX?'54px':'30px'}};">支出管理</text> | |||||
</view> | |||||
<van-dropdown-menu active-color="#5CAE77" bind:change="changeTab" id="top_view1" class="search_box" style="margin-top:{{isIPX?'88px':'64px'}};"> | |||||
<van-dropdown-item value="{{ value1 }}" options="{{ option1 }}" bind:change="changeTab" /> | |||||
<van-dropdown-item value="{{ value2 }}" options="{{ option2 }}" bind:change="changeTab2" /> | |||||
<van-dropdown-item value="{{ value3 }}" options="{{ option3 }}" bind:change="changeTab2" /> | |||||
</van-dropdown-menu> | |||||
<scroll-view scroll-y refresher-threshold="0" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100"> | |||||
<van-swipe-cell right-width="{{ 50 }}" class="workflow" wx:for="{{list}}" wx:key="index" wx:for-item="item" > | |||||
<view class="li" > | |||||
<view style="width:70%;flex:7;"> | |||||
<view class="tit_box"> | |||||
<image src="/image/icon/paymentManager_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="no-referrer|origin|unsafe-url"></image> | |||||
<text class="tit">{{item.payer}}</text> | |||||
</view> | |||||
<view class="detail_box"> | |||||
<view style="margin-left:5%;color:grey;font-size: 12px;justify-content: space-between;display: contents;"> | |||||
<text>{{item.payerAccount}}</text> | |||||
<text style="color:#62AD66;background-color: rgb(98,173,102,0.2);padding:2px 4px;text-align: right;">{{item.transferType==1?"银行还款":"信用卡还款"}}</text> | |||||
</view> | |||||
</view> | |||||
<view class="detail_box"> | |||||
<view style="width: 50%;"> | |||||
<image src="/image/icon/clock_icon.png" style="width: 15px;height: 15px;border-radius:5px;margin-right: 5px;"></image> | |||||
<text>{{item.applyDate}}</text> | |||||
</view> | |||||
<view style="width: 50%;"> | |||||
<image src="/image/icon/clock_red_icon.png" style="width: 15px;height: 15px;border-radius:5px;margin-right: 5px;"></image> | |||||
<text>{{item.applyDate}}</text> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view style="width:30%;flex:3;"> | |||||
<view style="text-align: right;"> | |||||
<view style="color:red;line-height: 50px;font-size: 18px;"> | |||||
<text style="font-size: 10px;display: inline;">¥</text>{{item.expenditureAmount}} | |||||
</view> | |||||
</view> | |||||
<view style="text-align: right;" bindtap="toPay" data-id="{{item.id}}"> | |||||
<button wx-if="{{item.paymentState==1}}" type="primary" size="mini" style="border-radius: 15px;" >待支付</button> | |||||
<button wx-if="{{item.paymentState==3}}" type="primary" size="mini" style="border-radius: 15px;background-color: #B3DB62;">银行受理</button> | |||||
<button wx-if="{{item.paymentState==4}}" type="warn" size="mini" style="border-radius: 15px;">支付失败</button> | |||||
<button wx-if="{{item.paymentState==5}}" type="primary" size="mini" style="border-radius: 15px;background-color: #FC9A55;">部分失败</button> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
<view slot="right" class="deleteBox"> | |||||
<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> | |||||
</van-swipe-cell> | |||||
</scroll-view> | |||||
<van-action-sheet show="{{showUpload}}" title="附件" bind:close="closeBox"> | |||||
<scroll-view scroll-y="true" style="height: 600rpx;" scroll-top="0"> | |||||
<view class="fj-box"> | |||||
<view class="fj-li" wx:for="{{fileList}}" wx:key="index" wx:for-item="item" > | |||||
<view> | |||||
<text>{{item.dictLabel}}</text> | |||||
</view> | |||||
<view class="img_box"> | |||||
<view class="img_li"> | |||||
<van-upload file-list="{{ item.list }}" deletable="{{false}}" show-upload="{{false}}" bind:click-preview="lookDown"> | |||||
</van-upload> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</scroll-view> | |||||
</van-action-sheet> |
@@ -0,0 +1,285 @@ | |||||
/* pages/paymentManager/paymentManager.wxss */ | |||||
.van-search__content { | |||||
border: 1px solid #5CAE77!important; | |||||
background: #fff!important; | |||||
} | |||||
van-search { | |||||
flex: 0.8; | |||||
} | |||||
.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: 50px; | |||||
text-align: center; | |||||
height: 100%; | |||||
background: #F6F6F6; | |||||
align-items: center; | |||||
display: flex; | |||||
} | |||||
.moreBox{ | |||||
width: 90px; | |||||
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; | |||||
display: flex; | |||||
} | |||||
.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: 16px; | |||||
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; | |||||
} | |||||
.van-dropdown-menu { | |||||
width:100%; | |||||
margin-bottom: 15px; | |||||
} |
@@ -1,42 +1,37 @@ | |||||
<!--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'}};height: 19.0909px;" mode="widthFix" bindtap="back"></image> | |||||
<text style="top:{{isIPX?'54px':'30px'}};">{{form.id?"":"新增"}}工程项目</text> | |||||
<image src="/image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back"></image> | |||||
<text style="top:{{isIPX?'54px':'30px'}};">新增工程项目</text> | |||||
</view> | </view> | ||||
<view class="main-box table-box table-boxs" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
<view class="main-box table-box" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
<van-field label="项目名称" value="{{ form.projectName }}" placeholder="项目名称" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.projectName"/> | <van-field label="项目名称" value="{{ form.projectName }}" placeholder="项目名称" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.projectName"/> | ||||
<van-field label="合同承建方" value="{{ form.projectContractor }}" placeholder="合同承建方" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.projectContractor"/> | <van-field label="合同承建方" value="{{ form.projectContractor }}" placeholder="合同承建方" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.projectContractor"/> | ||||
<view class="section" style="margin-top: -28rpx;"> | |||||
<view class="section__title"><text style="color:red;margin-right: 8rpx;">*</text>开工日期</view> | |||||
<picker mode="date" value="{{form.startTime}}" bindchange="onConfirmStartTime"> | |||||
<view class="picker"> | |||||
{{form.startTime?form.startTime:'开工日期'}} | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<view class="section" style="margin-top: -28rpx;"> | |||||
<view class="section__title"><text style="color:red;margin-right: 8rpx;">*</text>竣工日期</view> | |||||
<picker mode="date" value="{{form.endTime}}" bindchange="onConfirmEndTime"> | |||||
<view class="picker"> | |||||
{{form.endTime?form.endTime:'竣工日期'}} | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<van-field label="合共价款(元)" value="{{ form.projectAmount }}" type="digit" placeholder="合共价款(元)" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.projectAmount"/> | |||||
<van-field readonly label="开工日期" value="{{ form.startTime }}" placeholder="开工日期" border="{{ false }}" bind:change="onChange" input-align="right" required is-link arrow-direction ="down" bindtap="openBox" data-name="showStartTime"/> | |||||
<van-calendar show="{{ showStartTime }}" bind:close="closeBox" data-name="showStartTime" bind:confirm="onConfirmTime" data-value="form.startTime" show-confirm="{{ false }}" /> | |||||
<view class="section" style="margin-top: -28rpx;"> | |||||
<view class="section__title"><text style="color:red;margin-right: 8rpx;">*</text>工程状态</view> | |||||
<picker bindchange="onConfirmynProjcetStatus" value="{{ynProjcetStatusindex}}" range="{{ynProjcetStatusOptions}}" range-key="{{'dictLabel'}}"> | |||||
<view class="picker"> | |||||
{{ynProjcetStatusOptions[ynProjcetStatusindex].dictLabel?ynProjcetStatusOptions[ynProjcetStatusindex].dictLabel:"选择所属银行"}} | |||||
<van-icon name="arrow-down" /> | |||||
</view> | |||||
</picker> | |||||
</view> | |||||
<van-field label="备注" value="{{ form.remark }}" placeholder="备注" border="{{ false }}" bind:change="onChange" input-align="right" data-value="form.remark"/> | |||||
<van-field label="竣工日期" value="{{ form.endTime }}" placeholder="竣工日期" border="{{ false }}" bind:change="onChange" input-align="right" required is-link arrow-direction ="down" bindtap="openBox" data-name="showEndTime" /> | |||||
<van-calendar show="{{ showEndTime }}" bind:close="closeBox" data-name="showEndTime" bind:confirm="onConfirmTime" data-value="form.endTime" show-confirm="{{ false }}" /> | |||||
<van-field label="合共价款(元)" value="{{ form.projectAmount }}" placeholder="合共价款(元)" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.projectAmount"/> | |||||
<van-popup show="{{showYnProjcetStatus}}" round position="bottom" bind:close="closeBox" data-name="showYnProjcetStatus"> | |||||
<van-picker | |||||
columns="{{ynProjcetStatusOptions}}" | |||||
show-toolbar | |||||
value-key="dictLabel" | |||||
bind:cancel="closeBox" | |||||
bind:confirm="onConfirmYn" | |||||
data-name="showYnProjcetStatus" | |||||
data-value="form.ynProjcetStatus" | |||||
/> | |||||
</van-popup> | |||||
<van-field label="工程状态" value="{{ form.ynProjcetStatusText }}" placeholder="工程状态" border="{{ false }}" bind:change="onChange" input-align="right" required data-value="form.ynProjcetStatus" is-link arrow-direction ="down" bindtap="openBox" data-name="showYnProjcetStatus"/> | |||||
<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"> | ||||
<view class="btn2" bindtap="goSubmit">保存</view> | |||||
<view class="btn2" bindtap="goSubmit">确认</view> | |||||
</view> | </view> |
@@ -1,4 +1,6 @@ | |||||
/* pages/payee/add/add.wxss */ | /* pages/payee/add/add.wxss */ | ||||
@import "../../../style/iconfont.wxss"; | |||||
.main-box{ | .main-box{ | ||||
background: #ffffff; | background: #ffffff; | ||||
padding: 20px; | padding: 20px; | ||||
@@ -266,6 +266,12 @@ const URL_GET_SUBJECTLIST = `${URL_PREFIX}/finance/subject/list?is_last=Y`; | |||||
//固定资产列表 | //固定资产列表 | ||||
const URL_GET_PERMANENTLIST = `${URL_PREFIX}/asset/permanent/list/`; | const URL_GET_PERMANENTLIST = `${URL_PREFIX}/asset/permanent/list/`; | ||||
//可关联固定资产列表 | |||||
const URL_GET_PERMANENTLISTS = `${URL_PREFIX}/asset/permanent/listContractPermanentList/`; | |||||
//可关联资源性资产列表 | |||||
const URL_GET_RESOURCELIST = `${URL_PREFIX}/asset/resource/listContractResourceList/`; | |||||
//固定资产删除 | //固定资产删除 | ||||
const URL_GET_PERMANENTDELETE = `${URL_PREFIX}/asset/permanent/remove/`; | const URL_GET_PERMANENTDELETE = `${URL_PREFIX}/asset/permanent/remove/`; | ||||
@@ -312,6 +318,74 @@ const URL_GET_UPLOADFILE = `${URL_PREFIX}/yinnong/transfer/importData`; | |||||
//下载收款人模板 | //下载收款人模板 | ||||
const URL_GET_DOWNFILE = `${URL_PREFIX}/yinnong/transfer/importTemplate`; | const URL_GET_DOWNFILE = `${URL_PREFIX}/yinnong/transfer/importTemplate`; | ||||
//合同终止 | |||||
const URL_GET_TERMINATEINFO = `${URL_PREFIX}/contraction/info/terminateInfo/`; | |||||
//合同撤销 | |||||
const URL_GET_CANCELINFO = `${URL_PREFIX}/contraction/info/cancelnfo/`; | |||||
//可关联合同列表 | |||||
const URL_GET_ASSETLISTALL = `${URL_PREFIX}/contraction/asset/list/`; | |||||
//固定资产变更(数量) | |||||
const URL_POST_UPDATEQUANTITY = `${URL_PREFIX}/asset/permanent/updateQuantity`; | |||||
//固定资产变更(原值) | |||||
const URL_POST_UPDATEORIGINALVALUE = `${URL_PREFIX}/asset/permanent/updateOriginalValuePermanent`; | |||||
//固定资产变更(折旧方式) | |||||
const URL_POST_UPDATEDEPRECIATIONMETHOD = `${URL_PREFIX}/asset/permanent/updateDepreciationMethod`; | |||||
//固定资产变更(预计使用年数) | |||||
const URL_POST_UPDATEEXPECTEDYEARS = `${URL_PREFIX}/asset/permanent/updateExpectedYears`; | |||||
//固定资产变更(已折旧年数) | |||||
const URL_POST_UPDATEDEPRECIATIONYEARS = `${URL_PREFIX}/asset/permanent/updateDepreciationYears`; | |||||
//固定资产变更(累计折旧) | |||||
const URL_POST_UPDATEDEPRECIATIONVALUE = `${URL_PREFIX}/asset/permanent/updateDepreciationValue`; | |||||
//固定资产变更(残值率) | |||||
const URL_POST_UPDATERESIDUALSRATE = `${URL_PREFIX}/asset/permanent/updateResidualsRate`; | |||||
//出售固定资产 | |||||
const URL_GET_UPDATERSALE = `${URL_PREFIX}/asset/permanent/updateSale/`; | |||||
//作废固定资产 | |||||
const URL_GET_UPDATESCRAP = `${URL_PREFIX}/asset/permanent/updateScrap/`; | |||||
//查询支付管理列表 | |||||
const URL_GET_TRANSFERPAYLIST = `${URL_PREFIX}/yinnong/transfer/payList/`; | |||||
//查询转账详情 | |||||
const URL_GET_TRANSFERINFO= `${URL_PREFIX}/yinnong/transfer/get/`; | |||||
//查询转账列表 | |||||
const URL_GET_TRANSFERINFOS= `${URL_PREFIX}/yinnong/transferDetail/getDetails/`; | |||||
//支付验证码 | |||||
const URL_GET_SENDMSG= `${URL_PREFIX}/yinnong/transfer/sendSms/`; | |||||
//支付 | |||||
const URL_GET_PAY= `${URL_PREFIX}/yinnong/transfer/pay/`; | |||||
//重大事项列表 | |||||
const URL_GET_MAJOREVENTLIST= `${URL_PREFIX}/yinnong/majorevent/list/`; | |||||
//重大事项查询 | |||||
const URL_GET_MAJOREVENTGET= `${URL_PREFIX}/yinnong/majorevent/get/`; | |||||
//重大事项新增 | |||||
const URL_POST_MAJOREVENTADD= `${URL_PREFIX}/yinnong/majorevent/add/`; | |||||
//重大事项修改 | |||||
const URL_POST_MAJOREVENTUPDATE= `${URL_PREFIX}/yinnong/majorevent/edit/`; | |||||
//重大事项删除 | |||||
const URL_GET_MAJOREVENTDELETE= `${URL_PREFIX}/yinnong/majorevent/remove/`; | |||||
//重大事项提交 | |||||
const URL_GET_MAJOREVENTSUBMIT= `${URL_PREFIX}/yinnong/majorevent/customSubmit/`; | |||||
/****************接口地址end****************/ | /****************接口地址end****************/ | ||||
@@ -431,5 +505,30 @@ export { | |||||
URL_GET_PAYEEGET, | URL_GET_PAYEEGET, | ||||
URL_GET_PAYEEREMOVE, | URL_GET_PAYEEREMOVE, | ||||
URL_GET_UPLOADFILE, | URL_GET_UPLOADFILE, | ||||
URL_GET_DOWNFILE | |||||
URL_GET_DOWNFILE, | |||||
URL_GET_TERMINATEINFO, | |||||
URL_GET_CANCELINFO, | |||||
URL_GET_ASSETLISTALL, | |||||
URL_GET_RESOURCELIST, | |||||
URL_GET_PERMANENTLISTS, | |||||
URL_POST_UPDATEQUANTITY, | |||||
URL_POST_UPDATEORIGINALVALUE, | |||||
URL_POST_UPDATEDEPRECIATIONMETHOD, | |||||
URL_POST_UPDATEEXPECTEDYEARS, | |||||
URL_POST_UPDATEDEPRECIATIONYEARS, | |||||
URL_POST_UPDATEDEPRECIATIONVALUE, | |||||
URL_POST_UPDATERESIDUALSRATE, | |||||
URL_GET_UPDATERSALE, | |||||
URL_GET_UPDATESCRAP, | |||||
URL_GET_TRANSFERPAYLIST, | |||||
URL_GET_TRANSFERINFO, | |||||
URL_GET_TRANSFERINFOS, | |||||
URL_GET_SENDMSG, | |||||
URL_GET_PAY, | |||||
URL_GET_MAJOREVENTLIST, | |||||
URL_GET_MAJOREVENTGET, | |||||
URL_POST_MAJOREVENTADD, | |||||
URL_POST_MAJOREVENTUPDATE, | |||||
URL_GET_MAJOREVENTDELETE, | |||||
URL_GET_MAJOREVENTSUBMIT | |||||
} | } |