pad人员信息相关交互

dev2
Panzihang 2023-07-18 17:37:15 +08:00
parent 4d4a5d1bac
commit 4a1903071b
5 changed files with 393 additions and 296 deletions

View File

@ -2,19 +2,19 @@
<view class="documentList"> <view class="documentList">
<view class="container"> <view class="container">
<p class="title">作业单证</p> <p class="title">作业单证</p>
<ul> <view class="ul">
<li v-for="(item,index) in infoList" :key="index" @click="toGo(item.url)"> <view class="li" v-for="(item,index) in infoList" :key="index" @click="toGo(item.url)">
<view class="round"></view> <view class="round"></view>
<p>{{item.name}}</p]> <p>{{item.name}}</p]>
</li> </view>
</ul> </view>
<p class="title">其他作业</p> <p class="title">其他作业</p>
<ul> <view class="ul">
<li v-for="(item,index) in otherListh" :key="index" @click="toGo(item.url)"> <view class="li" v-for="(item,index) in otherListh" :key="index" @click="toGo(item.url)">
<view class="round"></view> <view class="round"></view>
<p>{{item.name}}</p> <p>{{item.name}}</p>
</li> </view>
</ul> </view>
</view> </view>
</view> </view>
</template> </template>
@ -23,8 +23,6 @@
export default { export default {
data() { data() {
return { return {
//
shipInfo: {},
infoList: [{ infoList: [{
name: "杂项作业单", name: "杂项作业单",
url: "mixWork" url: "mixWork"
@ -79,22 +77,18 @@
url: "brandDetails" url: "brandDetails"
} }
], ],
shipInfo: []
} }
}, },
onLoad(options) { mounted() {
if ('params' in options) { this.shipInfo = uni.getStorageSync('shipInfo')
// 使decodeURIComponent
this.shipInfo = JSON.parse(decodeURIComponent(options.params))
}
console.log(this.shipInfo)
}, },
methods: { methods: {
toGo(url) { toGo(url) {
const params = encodeURIComponent(JSON.stringify(this.shipInfo));
uni.navigateTo({ uni.navigateTo({
url: `/pages/shipWork/${url}?params=${params}` url: `/pages/shipWork/${url}`
}) })
} },
} }
} }
</script> </script>
@ -109,13 +103,13 @@
font-weight: bold; font-weight: bold;
} }
ul { .ul {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
padding: 20px; padding: 20px;
margin-bottom: 20px; margin-bottom: 20px;
li { .li {
margin: 10px 20px; margin: 10px 20px;
.round { .round {

View File

@ -137,7 +137,7 @@
console.log('接口返回------', res); console.log('接口返回------', res);
if (res.statusCode === 200) { if (res.statusCode === 200) {
this.total = res.data.data.records.length this.total = res.data.data.records.length
const newArr = this.getMapping(res.data.data.records, this.pageSize) let newArr = this.getMapping(res.data.data.records, this.pageSize)
this.itemList = newArr[this.current - 1]; this.itemList = newArr[this.current - 1];
} }
} }
@ -234,6 +234,10 @@
method: 'GET', // method: 'GET', //
success: (res) => { success: (res) => {
console.log('接口返回------', res); console.log('接口返回------', res);
if (res.statusCode == 200) {
//
uni.setStorageSync('shipInfo', res.data.data);
}
} }
}) })
}, },
@ -431,10 +435,8 @@
}) })
}, },
toGo(item) { toGo(item) {
const shipInfo = item;
const params = encodeURIComponent(JSON.stringify(shipInfo));
uni.navigateTo({ uni.navigateTo({
url: `/pages/shipWork/documentList?params=${params}` url: `/pages/shipWork/documentList`
}) })
} }
} }

View File

@ -6,35 +6,27 @@
@click="tabsClick(item,index)">{{item}}</view> @click="tabsClick(item,index)">{{item}}</view>
</view> </view>
<!-- 人员信息列表 --> <!-- 人员信息列表 -->
<ul v-if="tabsType == 1"> <view class="ul" v-if="tabsType == 1">
<li v-for="(item,index) in peopleInfo" :key="index" @click="add('look')"> <view class="li" v-for="(item,index) in peopleInfo" :key="index" @click="add('look',item,index)">
<view class="title">航次{{item.val1}}</view> <view class="title">航次{{item.vvyName}}</view>
<p>贸易类型{{item.val2}}</p> <p>贸易类型{{item.tradeTypeName}}</p>
<p>进出口{{item.val3}}</p> <p>进出口{{item.importExportFlagName}}</p>
<p>作业组数{{item.val4}}</p> <p>作业组数{{item.workSuite}}</p>
<p>单船人数{{item.val5}}</p> <p>单船人数{{item.shipPerson}}</p>
<p>状态{{item.val6}}</p> <p>状态未上传</p>
</li> </view>
</ul> </view>
<!-- 工班信息列表 --> <!-- 工班信息列表 -->
<ul v-if="tabsType == 2"> <view class="ul" v-if="tabsType == 2">
<li v-for="(item,index) in shiftInfo" :key="index" @click="lookShift"> <view class="li" v-for="(item,index) in shiftInfo" :key="index" @click="lookShift">
<view class="title">航次{{item.val1}}</view> <view class="title">航次{{item.vvyName}}</view>
<view class="shift"> <view class="shift" v-for="(item2,index2) in item.workMessageDetailReqDTOS" :key="index2">
<p>一工班</p> <p>{{item2.wkdId}}</p>
<span>作业时间2023/09/09 13:00:00</span> <span>作业时间{{item2.workTime}}</span>
</view> </view>
<view class="shift"> <view class="state">状态未上传</view>
<p>二工班</p>
<span>作业时间2023/09/09 13:00:00</span>
</view> </view>
<view class="shift">
<p>三工班</p>
<span>作业时间2023/09/09 13:00:00</span>
</view> </view>
<view class="state">状态{{item.val6}}</view>
</li>
</ul>
<view class="addBtn" @click="add('add')">+ </view> <view class="addBtn" @click="add('add')">+ </view>
</view> </view>
@ -45,51 +37,32 @@
export default { export default {
data() { data() {
return { return {
// shipInfo: [],
shipInfo: {},
tabsList: ["人员信息", "工班信息"], tabsList: ["人员信息", "工班信息"],
tabsType: 1, // 1 2 tabsType: 1, // 1 2
tabsIndex: 0, tabsIndex: 0,
// //
peopleInfo: [{ peopleInfo: [],
val1: "JK9795799",
val2: "内贸",
val3: "进口",
val4: "100",
val5: "100",
val6: "未上传",
},
{
val1: "JK9795799",
val2: "内贸",
val3: "进口",
val4: "100",
val5: "100",
val6: "未上传",
},
{
val1: "JK9795799",
val2: "内贸",
val3: "进口",
val4: "100",
val5: "100",
val6: "未上传",
}
],
// //
shiftInfo: [{ shiftInfo: [{
val1: "JK9795799", vvyName: "511I",
val6: "未上传", workMessageDetailReqDTOS: [{
wkdId: "一工班",
workTime: "2023/09/09 13:00:00"
}, {
wkdId: "二工班",
workTime: "2023/09/09 13:00:00"
}, {
wkdId: "三工班",
workTime: "2023/09/09 13:00:00"
}]
}, ] }, ]
} }
}, },
onLoad(options) { mounted() {
if ('params' in options) { this.shipInfo = uni.getStorageSync('shipInfo')
// 使decodeURIComponent this.peopleInfo = uni.getStorageSync('addPeopleArr');
this.shipInfo = JSON.parse(decodeURIComponent(options.params))
}
console.log(this.shipInfo)
}, },
methods: { methods: {
tabsClick(item, index) { tabsClick(item, index) {
@ -100,9 +73,13 @@
this.tabsType = 2; this.tabsType = 2;
} }
}, },
add(state) { add(state, item, index) {
this.shipInfo["state"] = state; uni.setStorageSync('peopleRow', item);
const params = encodeURIComponent(JSON.stringify(this.shipInfo)); uni.setStorageSync('peopleRowIndex', index);
let obj = {
state: state
}
const params = encodeURIComponent(JSON.stringify(obj));
if (this.tabsType == 1) { if (this.tabsType == 1) {
uni.navigateTo({ uni.navigateTo({
url: `/pages/shipWork/peopleAdd?params=${params}` url: `/pages/shipWork/peopleAdd?params=${params}`
@ -117,7 +94,7 @@
uni.navigateTo({ uni.navigateTo({
url: `/pages/shipWork/shiftDetails` url: `/pages/shipWork/shiftDetails`
}) })
} },
} }
} }
</script> </script>
@ -147,10 +124,10 @@
} }
} }
ul { .ul {
padding: 20px 0; padding: 20px 0;
li { .li {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;

View File

@ -1,54 +1,57 @@
<template> <template>
<view class="peopleAdd"> <view class="peopleAdd">
<view class="container"> <view class="container">
<ul> <view class="ul">
<li> <view class="li">
<p>船名</p> <p>船名</p>
<span>快乐号</span> <text>{{shipInfo.voyageScheduleDataList[0].spmName}}</text>
</li> </view>
<li> <view class="li">
<p><span class="required" v-if="obj.state != 'look'">*</span></p> <p><text class="required" v-if="obj.state != 'look'">*</text></p>
<uni-data-select v-model="hcValue" :localdata="hcList" @change="hcChange" <uni-data-select v-model="hcValue" :localdata="hcList" @change="hcChange"
v-if="obj.state != 'look'"></uni-data-select> v-if="obj.state != 'look'"></uni-data-select>
<span v-else>CK98796</span> <text v-else>{{peopleRow.vvyName}}</text>
</li> </view>
<li> <view class="li">
<p>进出口</p> <p>进出口</p>
<span>进口</span> <text>{{shipInfo.voyageScheduleDataList[0].importExportFlagName}}</text>
</li> </view>
<li> <view class="li">
<p>贸易类型</p> <p>贸易类型</p>
<span>内贸</span> <text>{{shipInfo.voyageScheduleDataList[0].tradeTypeName}}</text>
</li> </view>
<li> <view class="li">
<p><span class="required" v-if="obj.state != 'look'">*</span></p> <p><text class="required" v-if="obj.state != 'look'">*</text></p>
<span>未知</span> <uni-data-select v-model="tqValue" :localdata="tqList" @change="tqChange"
</li> v-if="obj.state != 'look'"></uni-data-select>
<li> <text v-else>{{peopleRow.weatherType}}</text>
<p><span class="required" v-if="obj.state != 'look'">*</span></p> </view>
<view class="li">
<p><text class="required" v-if="obj.state != 'look'">*</text></p>
<uni-data-select v-model="bwValue" :localdata="bwList" @change="bwChange" <uni-data-select v-model="bwValue" :localdata="bwList" @change="bwChange"
v-if="obj.state != 'look'"></uni-data-select> v-if="obj.state != 'look'"></uni-data-select>
<span v-else>1</span> <text v-else>{{peopleRow.bthIdName}}</text>
</li> </view>
<li> <view class="li">
<p><span class="required" v-if="obj.state != 'look'">*</span></p> <p><text class="required" v-if="obj.state != 'look'">*</text></p>
<uni-number-box @change="workChange" v-model="workValue" v-if="obj.state != 'look'" /> <uni-number-box @change="workChange" v-model="workValue" v-if="obj.state != 'look'" />
<span v-else>5</span> <text v-else>{{peopleRow.workSuite}}</text>
</li> </view>
<li> <view class="li">
<p><span class="required" v-if="obj.state != 'look'">*</span></p> <p><text class="required" v-if="obj.state != 'look'">*</text></p>
<uni-number-box @change="shipChange" v-model="shipValue" v-if="obj.state != 'look'" /> <uni-number-box @change="shipChange" v-model="shipValue" v-if="obj.state != 'look'" />
<span v-else>12</span> <text v-else>{{peopleRow.shipPerson}}</text>
</li> </view>
<li> <view class="li">
<p>作业时间</p> <p>作业时间</p>
<uni-datetime-picker v-model="datetime" type="datetimerange" rangeSeparator="-" @change="changeLog" <uni-datetime-picker v-model="datetime" type="datetimerange" rangeSeparator="-" @change="changeLog"
v-if="obj.state != 'look'" /> v-if="obj.state != 'look'" />
<span v-else>2020-04-21 00:00 - 2020-04-21 00:00</span> <text v-else>{{peopleRow.jobStartTime}} - {{peopleRow.jobEndTime}}</text>
</li> </view>
</ul> </view>
<view class="btnList"> <view class="btnList">
<van-button type="default" @click="cancel"></van-button> <van-button type="default" @click="cancel"></van-button>
<van-button type="danger" v-if="obj.state == 'look'" @click="del"></van-button>
<van-button type="info" v-if="obj.state == 'add' || obj.state == 'edit'" @click="save"></van-button> <van-button type="info" v-if="obj.state == 'add' || obj.state == 'edit'" @click="save"></van-button>
<van-button type="info" v-if="obj.state == 'look'" @click="toGo('edit')"></van-button> <van-button type="info" v-if="obj.state == 'look'" @click="toGo('edit')"></van-button>
</view> </view>
@ -60,59 +63,122 @@
export default { export default {
data() { data() {
return { return {
shipInfo: {
voyageScheduleDataList: [{
spmName: "",
importExportFlagName: "",
tradeTypeName: ""
}]
},
peopleRow: {},
peopleRowIndex: 0,
obj: {}, obj: {},
// //
hcValue: "", hcValue: "",
hcList: [{ hcTextValue: "",
value: 0, hcList: [],
text: "航次0"
},
{
value: 1,
text: "航次1"
},
{
value: 2,
text: "航次2"
},
],
// //
bwValue: "", bwValue: "",
bwList: [{ bwTextValue: "",
bwList: [],
//
tqValue: "",
tqTextValue: "",
tqList: [{
value: 0, value: 0,
text: "泊位0" text: "晴"
}, }, {
{
value: 1, value: 1,
text: "泊位1" text: "阴"
}, }, {
{
value: 2, value: 2,
text: "泊位2" text: "雨"
}, }],
],
// //
workValue: 0, workValue: 0,
// //
shipValue: 0, shipValue: 0,
// //
datetime: "", datetime: ['', ''],
startTime: "",
endTime: "",
} }
}, },
onLoad(options) { onLoad(options) {
if ('params' in options) { if ('params' in options) {
// 使decodeURIComponent // 使decodeURIComponent
this.obj = JSON.parse(decodeURIComponent(options.params)) this.obj = JSON.parse(decodeURIComponent(options.params))
console.log(this.obj)
} }
}, },
mounted() {
if (this.obj.state == "edit" || this.obj.state == "look") {
this.getRow()
}
this.getShip()
},
methods: { methods: {
//
getShip() {
this.shipInfo = uni.getStorageSync('shipInfo')
this.shipInfo.pubBerthesManageRespList.forEach((v, index) => {
this.bwList.push({
text: v.bthBthnm,
value: v.bthId
})
})
this.shipInfo.voyageScheduleDataList.forEach((v, index) => {
this.hcList.push({
text: v.vvyName,
value: v.vvyId
})
})
},
//
getRow() {
this.peopleRow = uni.getStorageSync('peopleRow');
this.peopleRowIndex = uni.getStorageSync('peopleRowIndex');
if (this.obj.state == "edit") {
this.hcValue = this.peopleRow.vvyId
this.hcTextValue = this.peopleRow.vvyName
this.tqValue = this.peopleRow.weatherId
this.tqTextValue = this.peopleRow.weatherType
this.bwValue = this.peopleRow.bthId
this.bwTextValue = this.peopleRow.bthIdName
this.workValue = this.peopleRow.workSuite
this.shipValue = this.peopleRow.shipPerson
this.datetime = [this.peopleRow.jobStartTime, this.peopleRow.jobEndTime]
this.startTime = this.peopleRow.jobStartTime
this.endTime = this.peopleRow.jobEndTime
}
},
// //
hcChange(e) { hcChange(e) {
this.hcValue = e; this.hcValue = e;
this.hcList.forEach(v => {
if (v.value == e) {
this.hcTextValue = v.text
}
})
}, },
// //
bwChange(e) { bwChange(e) {
this.bwValue = e; this.bwValue = e;
this.bwList.forEach(v => {
if (v.value == e) {
this.bwTextValue = v.text
}
})
},
//
tqChange(e) {
this.tqValue = e;
this.tqList.forEach(v => {
if (v.value == e) {
this.tqTextValue = v.text
}
})
}, },
// //
workChange(val) { workChange(val) {
@ -125,7 +191,8 @@
// //
changeLog(e) { changeLog(e) {
this.datetime = e; this.datetime = e;
console.log(e) this.startTime = this.datetime[0].slice(0, this.datetime[0].length - 3)
this.endTime = this.datetime[1].slice(0, this.datetime[1].length - 3)
}, },
// //
cancel() { cancel() {
@ -133,8 +200,48 @@
url: '/pages/shipWork/mixWork' url: '/pages/shipWork/mixWork'
}) })
}, },
//
del() {
let addPeopleArr = uni.getStorageSync('addPeopleArr')
addPeopleArr.splice(this.peopleRowIndex, 1)
uni.setStorageSync('addPeopleArr', addPeopleArr);
uni.navigateTo({
url: '/pages/shipWork/mixWork'
})
},
// //
save() { save() {
let addPeopleArr = uni.getStorageSync('addPeopleArr')
let addPeopleObj = {
bthId: this.bwValue, // id
bthIdName: this.bwTextValue, //
jobStartTime: this.startTime, //
jobEndTime: this.endTime, //
shipPerson: this.shipValue, //
vvyId: this.hcValue, // id
vvyName: this.hcTextValue, // id
weatherId: this.tqValue, // ID
weatherType: this.tqTextValue, //
workSuite: this.workValue, //
tradeTypeName: this.shipInfo.voyageScheduleDataList[0].tradeTypeName, //
importExportFlagName: this.shipInfo.voyageScheduleDataList[0].importExportFlagName, //
spmName: this.shipInfo.voyageScheduleDataList[0].spmName, //
}
if (this.obj.state == "edit") {
addPeopleArr[this.peopleRowIndex] = addPeopleObj;
uni.setStorageSync('addPeopleArr', addPeopleArr);
} else if (this.obj.state == "add") {
if (addPeopleArr != "") {
addPeopleArr.push(addPeopleObj)
uni.setStorageSync('addPeopleArr', addPeopleArr);
} else {
addPeopleArr = []
addPeopleArr.push(addPeopleObj)
uni.setStorageSync('addPeopleArr', addPeopleArr);
}
}
uni.navigateTo({ uni.navigateTo({
url: '/pages/shipWork/mixWork' url: '/pages/shipWork/mixWork'
}) })
@ -157,12 +264,12 @@
padding: 30px 20px; padding: 30px 20px;
background-color: #fff; background-color: #fff;
ul { .ul {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between; justify-content: space-between;
li { .li {
width: 44%; width: 44%;
border-top: 1px solid #ccc; border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;

View File

@ -5,111 +5,111 @@
<view class="line"></view> <view class="line"></view>
<!-- 工班信息 --> <!-- 工班信息 -->
<template v-if="active == 0"> <template v-if="active == 0">
<ul class="ul1"> <view class="ul ul1">
<li> <view class="li">
<p>船名</p> <p>船名</p>
<span>快乐号</span> <text>{{shipInfo.voyageScheduleDataList[0].spmName}}</text>
</li> </view>
<li> <view class="li">
<p><span class="required">*</span>航次</p> <p><text class="required">*</text>航次</p>
<uni-data-select v-model="hcValue" :localdata="hcList" @change="hcChange"></uni-data-select> <uni-data-select v-model="hcValue" :localdata="hcList" @change="hcChange"></uni-data-select>
</li> </view>
<li> <view class="li">
<p>进出口</p> <p>进出口</p>
<span>进口</span> <text>{{shipInfo.voyageScheduleDataList[0].importExportFlagName}}</text>
</li> </view>
<li> <view class="li">
<p>贸易类型</p> <p>贸易类型</p>
<span>内贸</span> <text>{{shipInfo.voyageScheduleDataList[0].tradeTypeName}}</text>
</li> </view>
<li> <view class="li">
<p><span class="required">*</span>装卸类型</p> <p><text class="required">*</text>装卸类型</p>
<uni-data-select v-model="zxValue" :localdata="zxList" @change="zxChange"></uni-data-select> <uni-data-select v-model="zxValue" :localdata="zxList" @change="zxChange"></uni-data-select>
</li> </view>
</ul> </view>
<view class="ulTop"><span @click="ulAdd1"></span><van-icon name="arrow-down" /></view> <view class="ulTop"><text @click="ulAdd1"></text><van-icon name="arrow-down" /></view>
<ul class="ul2" v-for="(item,index) in ulList1" :key="index+'ul'"> <view class="ul ul2" v-for="(item,index) in ulList1" :key="index+'ul'">
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>工班</p> <p class="liTitle"><text class="required">*</text>工班</p>
<uni-data-select v-model="item.gbValue" :localdata="gbList" <uni-data-select v-model="item.gbValue" :localdata="gbList"
@change="gbChange"></uni-data-select> @change="gbChange"></uni-data-select>
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>作业时间 </p> <p class="liTitle"><text class="required">*</text>作业时间 </p>
<uni-datetime-picker v-model="item.datetime" type="datetimerange" rangeSeparator="-" <uni-datetime-picker v-model="item.datetime" type="datetimerange" rangeSeparator="-"
@change="changeLog" /> @change="changeLog" />
</li> </view>
</ul> </view>
<view class="ulTop"><span @click="ulAdd2"></span><span @click="del"></span><van-icon <view class="ulTop"><text @click="ulAdd2"></text><text @click="del"></text><van-icon
name="arrow-down" /></view> name="arrow-down" /></view>
<ul class="ul2" v-for="(item,index) in ulList2" :key="index+'ul2'"> <view class="ul ul2" v-for="(item,index) in ulList2" :key="index+'ul2'">
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>车型</p> <p class="liTitle"><text class="required">*</text>车型</p>
<uni-data-select v-model="item.cxValue" :localdata="cxList" <uni-data-select v-model="item.cxValue" :localdata="cxList"
@change="cxChange"></uni-data-select> @change="cxChange"></uni-data-select>
</li> </view>
<li> <view class="li">
<p><span class="required">*</span>数量</p> <p><text class="required">*</text>数量</p>
<uni-number-box @change="numChange" v-model="item.numValue" /> <uni-number-box @change="numChange" v-model="item.numValue" />
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>装卸方式</p> <p class="liTitle"><text class="required">*</text>装卸方式</p>
<uni-data-select v-model="item.fsValue" :localdata="fsList" <uni-data-select v-model="item.fsValue" :localdata="fsList"
@change="fsChange"></uni-data-select> @change="fsChange"></uni-data-select>
</li> </view>
<li class="widthLi"> <view class="li widthLi">
<p class="liTitle">备注</p> <p class="liTitle">备注</p>
<uni-easyinput type="textarea" autoHeight v-model="item.notes" placeholder="请输入任务描述(200字以内)" <uni-easyinput type="textarea" autoHeight v-model="item.notes" placeholder="请输入任务描述(200字以内)"
maxlength="200"></uni-easyinput> maxlength="200"></uni-easyinput>
</li> </view>
</ul> </view>
</template> </template>
<!-- 翻仓信息 --> <!-- 翻仓信息 -->
<template v-if="active == 1"> <template v-if="active == 1">
<view v-for="(item,index) in fcUlList" :key="index + 'fc'"> <view v-for="(item,index) in fcUlList" :key="index + 'fc'">
<view class="ulTop"><span @click="fcAdd"></span><van-icon name="arrow-down" /></view> <view class="ulTop"><text @click="fcAdd"></text><van-icon name="arrow-down" /></view>
<ul class="fcUl"> <view class="ul fcUl">
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>翻仓类型</p> <p class="liTitle"><text class="required">*</text>翻仓类型</p>
<uni-data-select v-model="item.fcValue" :localdata="fcList" <uni-data-select v-model="item.fcValue" :localdata="fcList"
@change="fcChange"></uni-data-select> @change="fcChange"></uni-data-select>
</li> </view>
</ul> </view>
<view v-for="(item2,index2) in item.fcUlList2" :key="index2 + 'fc2'"> <view v-for="(item2,index2) in item.fcUlList2" :key="index2 + 'fc2'">
<view class="ulTop"><span @click="fcAdd2(index)"></span></span><span v-if="index2 > 0" <view class="ulTop"><text @click="fcAdd2(index)"></text></text><text v-if="index2 > 0"
@click="delFc(index,index2)">删除</span><van-icon name="arrow-down" /></view> @click="delFc(index,index2)">删除</text><van-icon name="arrow-down" /></view>
<ul class="ul2 fcUl2"> <view class="ul ul2 fcUl2">
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>翻舱起点位置</p> <p class="liTitle"><text class="required">*</text>翻舱起点位置</p>
<uni-easyinput v-model="item2.qdValue" focus placeholder="请输入翻舱起点位置"></uni-easyinput> <uni-easyinput v-model="item2.qdValue" focus placeholder="请输入翻舱起点位置"></uni-easyinput>
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>翻舱终点位置</p> <p class="liTitle"><text class="required">*</text>翻舱终点位置</p>
<uni-easyinput v-model="item2.zdValue" focus placeholder="请输入翻舱终点位置"></uni-easyinput> <uni-easyinput v-model="item2.zdValue" focus placeholder="请输入翻舱终点位置"></uni-easyinput>
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>工班</p> <p class="liTitle"><text class="required">*</text>工班</p>
<uni-data-select v-model="item2.gbValue" :localdata="gbList" <uni-data-select v-model="item2.gbValue" :localdata="gbList"
@change="gbChange"></uni-data-select> @change="gbChange"></uni-data-select>
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>作业时间 </p> <p class="liTitle"><text class="required">*</text>作业时间 </p>
<uni-datetime-picker v-model="item2.datetime" type="datetimerange" rangeSeparator="-" /> <uni-datetime-picker v-model="item2.datetime" type="datetimerange" rangeSeparator="-" />
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>数量</p> <p class="liTitle"><text class="required">*</text>数量</p>
<uni-number-box v-model="item2.numValue" /> <uni-number-box v-model="item2.numValue" />
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>体积</p> <p class="liTitle"><text class="required">*</text>体积</p>
<uni-number-box v-model="item2.tjValue" /> <uni-number-box v-model="item2.tjValue" />
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>重量</p> <p class="liTitle"><text class="required">*</text>重量</p>
<uni-number-box v-model="item2.zlValue" /> <uni-number-box v-model="item2.zlValue" />
</li> </view>
</ul> </view>
</view> </view>
</view> </view>
</template> </template>
@ -118,49 +118,49 @@
<template v-if="active == 2"> <template v-if="active == 2">
<view class="otherWork"> <view class="otherWork">
<p class="title">辅助作业</p> <p class="title">辅助作业</p>
<ul> <view class="ul">
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>技术工人</p> <p class="liTitle"><text class="required">*</text>技术工人</p>
<uni-number-box v-model="otherObj.jsWorker" /> <uni-number-box v-model="otherObj.jsWorker" />
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>普通工人</p> <p class="liTitle"><text class="required">*</text>普通工人</p>
<uni-number-box v-model="otherObj.ptWorker" /> <uni-number-box v-model="otherObj.ptWorker" />
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>作业时间 </p> <p class="liTitle"><text class="required">*</text>作业时间 </p>
<uni-datetime-picker v-model="otherObj.workTime" type="datetimerange" rangeSeparator="-" /> <uni-datetime-picker v-model="otherObj.workTime" type="datetimerange" rangeSeparator="-" />
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>重量</p> <p class="liTitle"><text class="required">*</text>重量</p>
<uni-number-box v-model="otherObj.zlValue" /> <uni-number-box v-model="otherObj.zlValue" />
</li> </view>
<li> <view class="li">
<p class="liTitle"><span class="required">*</span>体积</p> <p class="liTitle"><text class="required">*</text>体积</p>
<uni-number-box v-model="otherObj.tjValue" /> <uni-number-box v-model="otherObj.tjValue" />
</li> </view>
<li> <view class="li">
<p class="liTitle">描述</p> <p class="liTitle">描述</p>
<uni-easyinput type="textarea" autoHeight v-model="otherObj.describe" <uni-easyinput type="textarea" autoHeight v-model="otherObj.describe"
placeholder="请输入任务描述(200字以内)" maxlength="200"></uni-easyinput> placeholder="请输入任务描述(200字以内)" maxlength="200"></uni-easyinput>
</li> </view>
</ul> </view>
<p class="title">待工作业</p> <p class="title">待工作业</p>
<ul> <view class="ul">
<li> <view class="li">
<p class="liTitle">描述</p> <p class="liTitle">描述</p>
<uni-easyinput type="textarea" autoHeight v-model="otherObj.dgWork" <uni-easyinput type="textarea" autoHeight v-model="otherObj.dgWork"
placeholder="请输入任务描述(200字以内)" maxlength="200"></uni-easyinput> placeholder="请输入任务描述(200字以内)" maxlength="200"></uni-easyinput>
</li> </view>
</ul> </view>
<p class="title">作业备注</p> <p class="title">作业备注</p>
<ul> <view class="ul">
<li> <view class="li">
<p class="liTitle">描述</p> <p class="liTitle">描述</p>
<uni-easyinput type="textarea" autoHeight v-model="otherObj.notes" <uni-easyinput type="textarea" autoHeight v-model="otherObj.notes"
placeholder="请输入任务描述(200字以内)" maxlength="200"></uni-easyinput> placeholder="请输入任务描述(200字以内)" maxlength="200"></uni-easyinput>
</li> </view>
</ul> </view>
</view> </view>
</template> </template>
<view class="btnList"> <view class="btnList">
@ -176,47 +176,35 @@
export default { export default {
data() { data() {
return { return {
shipInfo: {
voyageScheduleDataList: [{
spmName: "",
importExportFlagName: "",
tradeTypeName: ""
}]
},
obj: {}, obj: {},
active: 0, active: 0,
stepList: [{ stepList: [{
title: '工班信息' title: '工班信息'
}, { },
{
title: '翻舱信息' title: '翻舱信息'
}, { },
{
title: '其他信息' title: '其他信息'
}], }
],
// //
// //
hcValue: "", hcValue: "",
hcList: [{ hcTextValue: "",
value: "航次0", hcList: [],
text: "航次0"
},
{
value: "航次1",
text: "航次1"
},
{
value: "航次2",
text: "航次2"
},
],
// //
zxValue: "", zxValue: "",
zxList: [{ zxTextValue: "",
value: "装卸类型0", zxList: [],
text: "装卸类型0"
},
{
value: "装卸类型1",
text: "装卸类型1"
},
{
value: "装卸类型2",
text: "装卸类型2"
},
],
ulList1: [{ ulList1: [{
gbValue: "", gbValue: "",
dataTime: "" dataTime: ""
@ -317,15 +305,44 @@
this.obj = JSON.parse(decodeURIComponent(options.params)) this.obj = JSON.parse(decodeURIComponent(options.params))
} }
}, },
mounted() {
this.getShip()
},
methods: { methods: {
//
getShip() {
this.shipInfo = uni.getStorageSync('shipInfo')
this.shipInfo.voyageScheduleDataList.forEach((v, index) => {
this.hcList.push({
text: v.vvyName,
value: v.vvyId
})
})
this.shipInfo.handTypeList.forEach((v, index) => {
this.zxList.push({
text: v.ptrDesc,
value: v.ptrCode
})
})
},
// //
// //
hcChange(e) { hcChange(e) {
this.hcValue = e; this.hcValue = e;
this.hcList.forEach(v => {
if (v.value == e) {
this.hcTextValue = v.text
}
})
}, },
// //
zxChange(e) { zxChange(e) {
this.zxValue = e; this.zxValue = e;
this.zxList.forEach(v => {
if (v.value == e) {
this.zxTextValue = v.text
}
})
}, },
// //
ulAdd1() { ulAdd1() {
@ -439,18 +456,18 @@
border-top: 1px solid #ccc; border-top: 1px solid #ccc;
span { text {
color: #2979ff; color: #2979ff;
margin-right: 10px; margin-right: 10px;
} }
span:nth-of-type(2) { text:nth-of-type(2) {
color: red; color: red;
} }
} }
.fcUl { .fcUl {
li { .li {
border: none; border: none;
margin-bottom: 0; margin-bottom: 0;
@ -466,13 +483,13 @@
} }
} }
ul { .ul {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between; justify-content: space-between;
margin-bottom: 20px; margin-bottom: 20px;
li { .li {
width: 44%; width: 44%;
border-top: 1px solid #ccc; border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;
@ -521,7 +538,7 @@
padding: 0; padding: 0;
margin-top: 0; margin-top: 0;
li { .li {
border: none; border: none;
margin-bottom: 0; margin-bottom: 0;
} }
@ -538,12 +555,12 @@
margin-bottom: 20px; margin-bottom: 20px;
} }
ul { .ul {
li { .li {
border: none; border: none;
} }
li:last-child { .li:last-child {
width: 100%; width: 100%;
} }
} }