Merge branch 'dev-sy-10-10'
This commit is contained in:
commit
f49f2342c8
12
pages.json
12
pages.json
|
|
@ -709,6 +709,18 @@
|
|||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/workPlan/weekPlan/index",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/workPlan/monthPlan/index",
|
||||
"style": {
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
}
|
||||
],
|
||||
"globalStyle": {
|
||||
|
|
|
|||
|
|
@ -14,13 +14,11 @@
|
|||
</view>
|
||||
|
||||
<view>
|
||||
<!-- 插入模式 -->
|
||||
<uni-calendar
|
||||
class="uni-calendar--hook"
|
||||
startDate="2024-10-15"
|
||||
endDate="2024-10-20"
|
||||
:range="true"
|
||||
:showMonth="false"
|
||||
:selected="info.selected"
|
||||
@change="change"
|
||||
@monthSwitch="monthSwitch"
|
||||
/>
|
||||
|
|
@ -34,7 +32,13 @@ export default {
|
|||
return {
|
||||
primary: '',
|
||||
activeIndex: 0,
|
||||
btnList: [{ btn_title: '月' }, { btn_title: '周' }, { btn_title: '日' }]
|
||||
btnList: [{ btn_title: '月' }, { btn_title: '周' }, { btn_title: '日' }],
|
||||
info: {
|
||||
lunar: true,
|
||||
range: true,
|
||||
insert: false,
|
||||
selected: []
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
@ -47,6 +51,35 @@ export default {
|
|||
onTimeCheck(i) {
|
||||
this.activeIndex = i
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.$nextTick(() => {
|
||||
// this.showCalendar = true
|
||||
})
|
||||
// TODO 模拟请求异步同步数据
|
||||
setTimeout(() => {
|
||||
this.info.date = getDate(new Date(), -30).fullDate
|
||||
this.info.startDate = getDate(new Date(), -60).fullDate
|
||||
this.info.endDate = getDate(new Date(), 30).fullDate
|
||||
this.info.selected = [
|
||||
{
|
||||
date: getDate(new Date(), -3).fullDate,
|
||||
info: '打卡'
|
||||
},
|
||||
{
|
||||
date: getDate(new Date(), -2).fullDate,
|
||||
info: '签到',
|
||||
data: {
|
||||
custom: '自定义信息',
|
||||
name: '自定义消息头'
|
||||
}
|
||||
},
|
||||
{
|
||||
date: getDate(new Date(), -1).fullDate,
|
||||
info: '已打卡'
|
||||
}
|
||||
]
|
||||
}, 2000)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,39 @@
|
|||
<template>
|
||||
<view>
|
||||
<picker mode="date" @change="onDateChange" :value="DateValue">
|
||||
<!-- <view>
|
||||
<text style="color: red; margin: 0 10rpx">*</text>
|
||||
<text>选择时间</text>
|
||||
</view> -->
|
||||
|
||||
<view class="time-container">
|
||||
<view class="date-picker">{{ DateValue }}</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</picker>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
DateValue: this.$moment().format('YYYY-MM-DD')
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onDateChange(e) {
|
||||
this.DateValue = e.detail.value
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.time-container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding: 0 38rpx;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -0,0 +1,606 @@
|
|||
<template>
|
||||
<view class="day-plan">
|
||||
<u-navbar
|
||||
class="u-navbar"
|
||||
:title="dayPlanTitle"
|
||||
placeholder
|
||||
@leftClick="leftClick"
|
||||
leftIconColor="#fff"
|
||||
bgColor="#00337A"
|
||||
:titleStyle="{ color: '#FFF', fontSize: '32rpx' }"
|
||||
ref="navbarRef"
|
||||
/>
|
||||
<view class="day-plan-content">
|
||||
<button
|
||||
:key="index"
|
||||
@tap="onTapCheck(index)"
|
||||
v-for="(item, index) in btnList"
|
||||
:class="{ active: index === activeIndex }"
|
||||
>
|
||||
{{ item.btn_title }}
|
||||
</button>
|
||||
</view>
|
||||
|
||||
<!-- 工程待办 -->
|
||||
<view class="common-style" v-show="activeIndex === 5">
|
||||
<picker mode="date" @change="onDateChange" :value="currentTime">
|
||||
<view>
|
||||
<text style="color: red; margin: 0 10rpx">*</text>
|
||||
<text>选择时间</text>
|
||||
</view>
|
||||
|
||||
<view class="time-container">
|
||||
<view class="date-picker">{{ currentTime }}</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</picker>
|
||||
</view>
|
||||
<!-- 发起提交 -->
|
||||
<view v-show="activeIndex === 0" class="submit-container common-style">
|
||||
<uni-forms
|
||||
class="form-container"
|
||||
ref="form"
|
||||
:modelValue="formData"
|
||||
:rules="rules"
|
||||
label-position="top"
|
||||
label-width="200"
|
||||
>
|
||||
<uni-forms-item label="工程名称" required>
|
||||
<view class="time-container" @tap="onSelectProject">
|
||||
<view>请选择</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="选择时间" required>
|
||||
<view>
|
||||
<TimeSelect />
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item
|
||||
v-for="(item, index) in dayPlanTitle === '基建月计划' ? infrastructureFormLabel : productionFormLabel"
|
||||
:key="index"
|
||||
:label="item.form_label"
|
||||
name="name"
|
||||
required
|
||||
>
|
||||
<uni-easyinput v-if="item.items_type === 'ipt'" type="text" v-model="formData.name" placeholder="请填写" />
|
||||
<uni-data-select
|
||||
v-model="formData.nr"
|
||||
:localdata="item.options"
|
||||
v-if="item.items_type === 'sel'"
|
||||
></uni-data-select>
|
||||
</uni-forms-item>
|
||||
</uni-forms>
|
||||
|
||||
<view class="submit-btn">
|
||||
<button>导入计划</button>
|
||||
<button @tap="onSaveSubmit">保存提交</button>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 查看报表 -->
|
||||
<view v-show="activeIndex === 1" class="common-style">
|
||||
<uni-forms ref="form-b" label-position="top" label-width="200">
|
||||
<uni-forms-item label="工程名称" required>
|
||||
<view class="time-container" @tap="onSelectProject">
|
||||
<view>请选择</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
</uni-forms>
|
||||
|
||||
<view class="icon-search-time">
|
||||
<text style="fon-size: 30rpx; margin-right: 25rpx" @tap="onReduceMonth">《</text>
|
||||
<uni-icons type="left" size="20" @tap="onReduceDay"></uni-icons>
|
||||
|
||||
<view class="view-time">
|
||||
<picker mode="date" @change="onChangeCurrentData" :value="currentTime">
|
||||
<view class="date-picker">{{ currentTime }}</view>
|
||||
</picker>
|
||||
</view>
|
||||
|
||||
<uni-icons type="right" size="20" @tap="onAddDay"></uni-icons>
|
||||
<text style="fon-size: 30rpx; margin-left: 25rpx" @tap="onAddMonth">》</text>
|
||||
|
||||
<button @tap="onBackToday">返回本日</button>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 查看数据 -->
|
||||
<view v-show="activeIndex === 2" class="common-style">
|
||||
<uni-search-bar
|
||||
bgColor="#efefef"
|
||||
textColor="#000"
|
||||
placeholder="搜索"
|
||||
clearButton="none"
|
||||
cancelButton="none"
|
||||
@confirm="search"
|
||||
/>
|
||||
|
||||
<uni-forms ref="form-b" label-position="top" label-width="200">
|
||||
<uni-forms-item label="工程名称" required>
|
||||
<view class="time-container" @tap="onViewSelectProject">
|
||||
<view>请选择</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="全部状态" required>
|
||||
<view class="time-container" @tap="onSelectAllType">
|
||||
<view>请选择</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
</uni-forms>
|
||||
</view>
|
||||
|
||||
<uni-popup ref="popup" background-color="#fff">
|
||||
<view class="popup-content" v-if="popupType === 'center'">
|
||||
<view class="flex-style" style="justify-content: space-between">
|
||||
<text>选择工程</text>
|
||||
<text>X</text>
|
||||
</view>
|
||||
<view>2024-10-16</view>
|
||||
<view class="search">
|
||||
<view class="select">
|
||||
<uni-data-select v-model="value" @change="onProjectChange" :localdata="range"></uni-data-select>
|
||||
</view>
|
||||
<button>搜索</button>
|
||||
</view>
|
||||
<view class="project-content">暂无数据</view>
|
||||
</view>
|
||||
|
||||
<view v-else class="popup-bottom-content">
|
||||
<view class="bottom-title">
|
||||
<text>请选择</text>
|
||||
<text>请选择</text>
|
||||
<uni-icons type="closeempty" size="20" @tap="onClosePopup"></uni-icons>
|
||||
</view>
|
||||
|
||||
<view v-if="isType">
|
||||
<view class="select-item" v-for="item in isAUditingList" :key="item.title" @tap="onCheckAuditing(item.value)">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</uni-popup>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TimeSelect from './components/time-select'
|
||||
export default {
|
||||
components: {
|
||||
TimeSelect
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dayPlanTitle: '基建日计划',
|
||||
activeIndex: 0,
|
||||
btnList: [
|
||||
// { btn_title: '工作待办' },
|
||||
{ btn_title: '发起提交' },
|
||||
{ btn_title: '查看报表' },
|
||||
{ btn_title: '查看数据' }
|
||||
],
|
||||
currentTime: this.$moment().format('YYYY-MM-DD'),
|
||||
range: [
|
||||
{ value: 0, text: '全部' },
|
||||
{ value: 1, text: '未填报' },
|
||||
{ value: 2, text: '已填报' }
|
||||
],
|
||||
value: 0,
|
||||
formData: {},
|
||||
rules: {
|
||||
name: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
gk: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
jd: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
nr: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
dj: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
}
|
||||
},
|
||||
popupType: 'center',
|
||||
isType: false,
|
||||
isAUditingList: [
|
||||
{ title: '未审核', value: 0 },
|
||||
{ title: '已审核', value: 1 }
|
||||
],
|
||||
riskLevel: [
|
||||
{ value: 0, text: '可接受风险' },
|
||||
{ value: 1, text: '低风险' },
|
||||
{ value: 2, text: '中风险' },
|
||||
{ value: 2, text: '高风险' },
|
||||
{ value: 2, text: '特高风险' }
|
||||
],
|
||||
|
||||
infrastructureFormLabel: [
|
||||
{ form_label: '作业内容', items_type: 'ipt' },
|
||||
{ form_label: '作业条件(人员、机具、图纸、物资等、气候条件对作业的影响)', items_type: 'ipt' },
|
||||
{ form_label: '风险类别', items_type: 'ipt' },
|
||||
{ form_label: '管控措施', items_type: 'ipt' },
|
||||
{
|
||||
form_label: '风险等级',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '可接受风险' },
|
||||
{ value: 1, text: '低风险' },
|
||||
{ value: 2, text: '中风险' },
|
||||
{ value: 2, text: '高风险' },
|
||||
{ value: 2, text: '特高风险' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '管控级别',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '项目部' },
|
||||
{ value: 1, text: '分公司' },
|
||||
{ value: 2, text: '公司职能部门' },
|
||||
{ value: 2, text: '公司领导' },
|
||||
{ value: 2, text: '运检站' },
|
||||
{ value: 2, text: '各单位级' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '是否有危大/易造成人员较大伤亡作业',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '方案是否报审',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '是否有涉网作业',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '线路/设备停电计划是否上报',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{ form_label: '项目负责人/联系电话', items_type: 'ipt' },
|
||||
{ form_label: '单位负责人/联系电话', items_type: 'ipt' },
|
||||
{ form_label: '计划数量', items_type: 'ipt' }
|
||||
],
|
||||
productionFormLabel: [
|
||||
{ form_label: '作业内容', items_type: 'ipt' },
|
||||
{ form_label: '实施单位', items_type: 'ipt' },
|
||||
{ form_label: '实施部门', items_type: 'ipt' },
|
||||
{ form_label: '任务来源', items_type: 'ipt' },
|
||||
{
|
||||
form_label: '作业类型',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '检修' },
|
||||
{ value: 1, text: '维护' }
|
||||
]
|
||||
},
|
||||
{ form_label: '计划开始时间', items_type: 'sel' },
|
||||
{ form_label: '计划结束时间', items_type: 'sel' },
|
||||
{
|
||||
form_label: '是否停电',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{ form_label: '停电设备(作业场所)', items_type: 'ipt' },
|
||||
{ form_label: '作业监督人/联系电话', items_type: 'ipt' },
|
||||
{ form_label: '作业负责人/联系电话', items_type: 'ipt' },
|
||||
{
|
||||
form_label: '管控级别',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '项目部' },
|
||||
{ value: 1, text: '分公司' },
|
||||
{ value: 2, text: '公司职能部门' },
|
||||
{ value: 2, text: '公司领导' },
|
||||
{ value: 2, text: '运检站' },
|
||||
{ value: 2, text: '各单位级' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '风险等级',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '可接受风险' },
|
||||
{ value: 1, text: '低风险' },
|
||||
{ value: 2, text: '中风险' },
|
||||
{ value: 2, text: '高风险' },
|
||||
{ value: 2, text: '特高风险' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '管控方式(根据作业内容在作业文件栏中选择"是"、"否")',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '过程管控' },
|
||||
{ value: 1, text: '巡视管控' },
|
||||
{ value: 2, text: '驻点管控' },
|
||||
{ value: 2, text: '节点管控' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '施工方案',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '作业指导书',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '作业表单',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '工作票',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{ form_label: '备注', items_type: 'ipt' },
|
||||
{ form_label: '计划数量', items_type: 'ipt' }
|
||||
]
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
leftClick() {
|
||||
uni.navigateTo({ url: '/pages/workPlan/workbench/index' })
|
||||
},
|
||||
onTapCheck(i) {
|
||||
this.activeIndex = i
|
||||
},
|
||||
onSelectTime() {
|
||||
this.$refs.popup.open('top')
|
||||
},
|
||||
onChangeCurrentData(e) {
|
||||
this.currentTime = e.detail.value
|
||||
},
|
||||
onSelectProject() {
|
||||
this.$refs.popup.open('center')
|
||||
this.popupType = 'center'
|
||||
},
|
||||
onProjectChange() {
|
||||
console.log('选择---')
|
||||
},
|
||||
onSaveSubmit() {
|
||||
this.$refs.form
|
||||
.validate()
|
||||
.then(res => {
|
||||
console.log(res)
|
||||
})
|
||||
.catch(error => {
|
||||
console.log(error)
|
||||
})
|
||||
},
|
||||
onReduceMonth() {
|
||||
this.currentTime = this.$moment(this.currentTime).subtract(1, 'months').format('YYYY-MM-DD')
|
||||
},
|
||||
onReduceDay() {
|
||||
this.currentTime = this.$moment(this.currentTime).subtract(1, 'days').format('YYYY-MM-DD')
|
||||
},
|
||||
onAddMonth() {
|
||||
this.currentTime = this.$moment(this.currentTime).add(1, 'months').format('YYYY-MM-DD')
|
||||
},
|
||||
onAddDay() {
|
||||
this.currentTime = this.$moment(this.currentTime).add(1, 'days').format('YYYY-MM-DD')
|
||||
},
|
||||
onBackToday() {
|
||||
this.currentTime = this.$moment().format('YYYY-MM-DD')
|
||||
},
|
||||
onViewSelectProject() {
|
||||
this.$refs.popup.open('bottom')
|
||||
this.popupType = 'bottom'
|
||||
},
|
||||
onSelectAllType() {
|
||||
this.$refs.popup.open('bottom')
|
||||
this.popupType = 'bottom'
|
||||
this.isType = true
|
||||
},
|
||||
onClosePopup() {
|
||||
this.$refs.popup.close()
|
||||
if (this.isType) {
|
||||
this.isType = !this.isType
|
||||
}
|
||||
},
|
||||
onCheckAuditing(val) {
|
||||
console.log(val, '----')
|
||||
}
|
||||
},
|
||||
onLoad(options) {
|
||||
if (options.type == 1) {
|
||||
this.dayPlanTitle = '基建月计划'
|
||||
} else {
|
||||
this.dayPlanTitle = '生产月计划'
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// console.log('this.$refs.navbarRef', this.$refs.navbarRef)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.day-plan {
|
||||
padding-top: 70px;
|
||||
}
|
||||
.day-plan-content {
|
||||
display: flex;
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
top: 44px;
|
||||
left: 0;
|
||||
z-index: 9;
|
||||
background-color: #fff;
|
||||
button {
|
||||
// width: 50%;
|
||||
flex: 1;
|
||||
height: 120rpx;
|
||||
// color: #00337a;
|
||||
color: #2c2b2b;
|
||||
font-size: 26rpx;
|
||||
line-height: 120rpx;
|
||||
text-align: center;
|
||||
border-radius: 0;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
button::after {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.active {
|
||||
border-bottom: 2px solid #00337a;
|
||||
}
|
||||
}
|
||||
|
||||
.common-style {
|
||||
padding: 15rpx;
|
||||
}
|
||||
|
||||
.time-container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding: 10rpx 38rpx;
|
||||
}
|
||||
|
||||
// .project-select {
|
||||
// width: 80%;
|
||||
// }
|
||||
|
||||
.popup-content {
|
||||
width: 90vw;
|
||||
padding: 20rpx;
|
||||
background-color: #eeeeee;
|
||||
|
||||
.search {
|
||||
width: 100%;
|
||||
height: 70rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
background-color: #eeeeee;
|
||||
.select {
|
||||
height: 68rpx;
|
||||
width: 65%;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
button {
|
||||
height: 68rpx;
|
||||
width: 30%;
|
||||
line-height: 68rpx;
|
||||
font-size: 32rpx;
|
||||
background-color: #003777;
|
||||
color: #fff;
|
||||
border-radius: 12rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.project-content {
|
||||
height: 460rpx;
|
||||
width: 97%;
|
||||
margin: 0 auto;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
.flex-style {
|
||||
display: flex;
|
||||
align-content: center;
|
||||
}
|
||||
|
||||
.form-container {
|
||||
padding: 10rpx 20rpx;
|
||||
}
|
||||
|
||||
.uni-forms-item {
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
|
||||
.submit-btn {
|
||||
margin: 15rpx 0;
|
||||
}
|
||||
|
||||
.icon-search-time {
|
||||
height: 68rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-weight: bold;
|
||||
|
||||
button {
|
||||
background-color: #003777;
|
||||
color: #fff;
|
||||
height: 65rpx;
|
||||
line-height: 65rpx;
|
||||
font-weight: normal;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.view-time {
|
||||
margin: 0 35rpx;
|
||||
}
|
||||
.popup-bottom-content {
|
||||
height: 50vh;
|
||||
|
||||
.bottom-title {
|
||||
height: 90rpx;
|
||||
padding-right: 30rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
.bottom-title text:first-child {
|
||||
color: transparent;
|
||||
}
|
||||
|
||||
.select-item {
|
||||
height: 90rpx;
|
||||
line-height: 90rpx;
|
||||
text-align: center;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
.select-item:hover {
|
||||
background-color: rgb(224, 239, 249);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -0,0 +1,737 @@
|
|||
<template>
|
||||
<view class="day-plan" :style="{ paddingTop: paddingTopPx + 'px' }">
|
||||
<u-navbar
|
||||
class="u-navbar"
|
||||
:title="dayPlanTitle"
|
||||
placeholder
|
||||
@leftClick="leftClick"
|
||||
leftIconColor="#fff"
|
||||
bgColor="#00337A"
|
||||
:titleStyle="{ color: '#FFF', fontSize: '32rpx' }"
|
||||
/>
|
||||
|
||||
<view class="fixed-container" id="fixedContainer">
|
||||
<view class="day-plan-content">
|
||||
<button
|
||||
:key="index"
|
||||
@tap="onTapCheck(index)"
|
||||
v-for="(item, index) in btnList"
|
||||
:class="{ active: index === activeIndex }"
|
||||
>
|
||||
{{ item.btn_title }}
|
||||
</button>
|
||||
</view>
|
||||
|
||||
<view class="pages-add" v-show="activeIndex === 1">
|
||||
<view style="text-align: right; width: 30%">
|
||||
<image
|
||||
style="width: 50rpx; height: 50rpx; margin: 13rpx 20rpx 13rpx 0"
|
||||
src="../../../static/images/workPlan/add.png"
|
||||
@tap="onAddPages"
|
||||
></image>
|
||||
</view>
|
||||
<view class="num-content" v-show="activeIndex === 1">
|
||||
<uni-pagination
|
||||
@change="onChangePagination"
|
||||
:show-icon="true"
|
||||
:total="pagesTotal"
|
||||
:pageSize="1"
|
||||
v-model="currentPage"
|
||||
/>
|
||||
<!-- <scroll-view scroll-x="true" class="scroll-x" scroll-with-animation="true">
|
||||
<view v-for="item in pagesNum" :key="item" @tap="onChangePages(item)">{{ item }}</view>
|
||||
</scroll-view> -->
|
||||
</view>
|
||||
<view style="text-align: left; width: 30%">
|
||||
<image
|
||||
style="width: 50rpx; height: 50rpx; margin: 13rpx 013rpx 20rpx"
|
||||
src="../../../static/images/workPlan/delete.png"
|
||||
@tap="onReducePages"
|
||||
></image>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<uni-forms
|
||||
class="form-container"
|
||||
ref="form"
|
||||
:modelValue="formData"
|
||||
:rules="rules"
|
||||
label-position="top"
|
||||
label-width="200"
|
||||
>
|
||||
<uni-forms-item label="工程名称" require style="margin-bottom: 2rpx">
|
||||
<view class="time-container" @tap="onSelectProject">
|
||||
<view>请选择</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="选择时间" required style="margin-bottom: 2rpx">
|
||||
<view>
|
||||
<TimeSelect />
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
</uni-forms>
|
||||
</view>
|
||||
|
||||
<view class="common-style" style="height: 700rpx" v-show="activeIndex === 1">
|
||||
<swiper circular :autoplay="false" :current="currentSwiper" style="height: 700rpx" @change="onSwiperChange">
|
||||
<swiper-item v-for="item in pagesTotal" :key="item">
|
||||
<scroll-view scroll-y="true" class="scroll-Y">
|
||||
<uni-forms
|
||||
class="form-container"
|
||||
ref="form"
|
||||
:modelValue="formData"
|
||||
:rules="rules"
|
||||
label-position="top"
|
||||
label-width="200"
|
||||
>
|
||||
<uni-forms-item
|
||||
v-for="(item, index) in dayPlanTitle === '基建月计划' ? infrastructureFormLabel : productionFormLabel"
|
||||
:key="index"
|
||||
:label="item.form_label"
|
||||
name="name"
|
||||
required
|
||||
>
|
||||
<uni-easyinput
|
||||
v-if="item.items_type === 'ipt'"
|
||||
type="text"
|
||||
v-model="formData.name"
|
||||
placeholder="请填写"
|
||||
/>
|
||||
<uni-data-select
|
||||
v-model="formData.nr"
|
||||
:localdata="item.options"
|
||||
v-if="item.items_type === 'sel'"
|
||||
></uni-data-select>
|
||||
</uni-forms-item>
|
||||
</uni-forms>
|
||||
</scroll-view>
|
||||
</swiper-item>
|
||||
</swiper>
|
||||
</view>
|
||||
|
||||
<!-- 工程待办 -->
|
||||
<view class="common-style" v-show="activeIndex === 0">
|
||||
<!-- <picker mode="date" @change="onDateChange" :value="currentTime">
|
||||
<view>
|
||||
<text style="color: red; margin: 0 10rpx">*</text>
|
||||
<text>选择时间</text>
|
||||
</view>
|
||||
|
||||
<view class="time-container">
|
||||
<view class="date-picker">{{ currentTime }}</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</picker> -->
|
||||
|
||||
<view class="auditing-container">
|
||||
<view>
|
||||
<text>
|
||||
在建工程:
|
||||
<text>12</text>
|
||||
</text>
|
||||
|
||||
<text>2024-11</text>
|
||||
</view>
|
||||
<view>
|
||||
<text>
|
||||
已报工程数:
|
||||
<text>1</text>
|
||||
</text>
|
||||
|
||||
<text>
|
||||
未报工程数:
|
||||
<text>11</text>
|
||||
</text>
|
||||
</view>
|
||||
|
||||
<view>
|
||||
<text>
|
||||
待审核数:
|
||||
<text>1</text>
|
||||
</text>
|
||||
|
||||
<button class="button" type="primary" @tap="onAuditing">审核</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<uni-popup ref="popup" background-color="#fff">
|
||||
<view class="popup-content" v-if="popupType === 'center'">
|
||||
<view class="flex-style" style="justify-content: space-between">
|
||||
<text>选择工程</text>
|
||||
<text>X</text>
|
||||
</view>
|
||||
<view>2024-10-16</view>
|
||||
<view class="search">
|
||||
<view class="select">
|
||||
<uni-data-select v-model="value" @change="onProjectChange" :localdata="range"></uni-data-select>
|
||||
</view>
|
||||
<button>搜索</button>
|
||||
</view>
|
||||
<view class="project-content">暂无数据</view>
|
||||
</view>
|
||||
|
||||
<view v-else class="popup-bottom-content">
|
||||
<view class="bottom-title">
|
||||
<text>请选择</text>
|
||||
<text>请选择</text>
|
||||
<uni-icons type="closeempty" size="20" @tap="onClosePopup"></uni-icons>
|
||||
</view>
|
||||
|
||||
<view v-if="isType">
|
||||
<view class="select-item" v-for="item in isAUditingList" :key="item.title" @tap="onCheckAuditing(item.value)">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</uni-popup>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TimeSelect from './components/time-select'
|
||||
export default {
|
||||
components: {
|
||||
TimeSelect
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dayPlanTitle: '基建日计划',
|
||||
activeIndex: 0,
|
||||
btnList: [
|
||||
{ btn_title: '工作待办' },
|
||||
{ btn_title: '发起提交' },
|
||||
{ btn_title: '查看报表' },
|
||||
{ btn_title: '查看数据' }
|
||||
],
|
||||
currentTime: this.$moment().format('YYYY-MM-DD'),
|
||||
range: [
|
||||
{ value: 0, text: '全部' },
|
||||
{ value: 1, text: '未填报' },
|
||||
{ value: 2, text: '已填报' }
|
||||
],
|
||||
value: 0,
|
||||
pagesNum: 0,
|
||||
pagesTotal: 1,
|
||||
currentPage: 1,
|
||||
formData: {},
|
||||
rules: {
|
||||
name: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
gk: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
jd: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
nr: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
dj: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
}
|
||||
},
|
||||
popupType: 'center',
|
||||
isType: false,
|
||||
isAUditingList: [
|
||||
{ title: '未审核', value: 0 },
|
||||
{ title: '已审核', value: 1 }
|
||||
],
|
||||
riskLevel: [
|
||||
{ value: 0, text: '可接受风险' },
|
||||
{ value: 1, text: '低风险' },
|
||||
{ value: 2, text: '中风险' },
|
||||
{ value: 2, text: '高风险' },
|
||||
{ value: 2, text: '特高风险' }
|
||||
],
|
||||
|
||||
infrastructureFormLabel: [
|
||||
{ form_label: '作业内容', items_type: 'ipt' },
|
||||
{ form_label: '作业条件(人员、机具、图纸、物资等、气候条件对作业的影响)', items_type: 'ipt' },
|
||||
{ form_label: '风险类别', items_type: 'ipt' },
|
||||
{ form_label: '管控措施', items_type: 'ipt' },
|
||||
{
|
||||
form_label: '风险等级',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '可接受风险' },
|
||||
{ value: 1, text: '低风险' },
|
||||
{ value: 2, text: '中风险' },
|
||||
{ value: 2, text: '高风险' },
|
||||
{ value: 2, text: '特高风险' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '管控级别',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '项目部' },
|
||||
{ value: 1, text: '分公司' },
|
||||
{ value: 2, text: '公司职能部门' },
|
||||
{ value: 2, text: '公司领导' },
|
||||
{ value: 2, text: '运检站' },
|
||||
{ value: 2, text: '各单位级' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '是否有危大/易造成人员较大伤亡作业',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '方案是否报审',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '是否有涉网作业',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '线路/设备停电计划是否上报',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{ form_label: '项目负责人/联系电话', items_type: 'ipt' },
|
||||
{ form_label: '单位负责人/联系电话', items_type: 'ipt' },
|
||||
{ form_label: '计划数量', items_type: 'ipt' }
|
||||
],
|
||||
productionFormLabel: [
|
||||
{ form_label: '作业内容', items_type: 'ipt' },
|
||||
{ form_label: '实施单位', items_type: 'ipt' },
|
||||
{ form_label: '实施部门', items_type: 'ipt' },
|
||||
{ form_label: '任务来源', items_type: 'ipt' },
|
||||
{
|
||||
form_label: '作业类型',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '检修' },
|
||||
{ value: 1, text: '维护' }
|
||||
]
|
||||
},
|
||||
{ form_label: '计划开始时间', items_type: 'sel' },
|
||||
{ form_label: '计划结束时间', items_type: 'sel' },
|
||||
{
|
||||
form_label: '是否停电',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{ form_label: '停电设备(作业场所)', items_type: 'ipt' },
|
||||
{ form_label: '作业监督人/联系电话', items_type: 'ipt' },
|
||||
{ form_label: '作业负责人/联系电话', items_type: 'ipt' },
|
||||
{
|
||||
form_label: '管控级别',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '项目部' },
|
||||
{ value: 1, text: '分公司' },
|
||||
{ value: 2, text: '公司职能部门' },
|
||||
{ value: 2, text: '公司领导' },
|
||||
{ value: 2, text: '运检站' },
|
||||
{ value: 2, text: '各单位级' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '风险等级',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '可接受风险' },
|
||||
{ value: 1, text: '低风险' },
|
||||
{ value: 2, text: '中风险' },
|
||||
{ value: 2, text: '高风险' },
|
||||
{ value: 2, text: '特高风险' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '管控方式(根据作业内容在作业文件栏中选择"是"、"否")',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '过程管控' },
|
||||
{ value: 1, text: '巡视管控' },
|
||||
{ value: 2, text: '驻点管控' },
|
||||
{ value: 2, text: '节点管控' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '施工方案',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '作业指导书',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '作业表单',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '工作票',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{ form_label: '备注', items_type: 'ipt' },
|
||||
{ form_label: '计划数量', items_type: 'ipt' }
|
||||
],
|
||||
paddingTopPx: 0,
|
||||
currentSwiper: 0
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
leftClick() {
|
||||
uni.navigateTo({ url: '/pages/workPlan/workbench/index' })
|
||||
},
|
||||
onTapCheck(i) {
|
||||
this.activeIndex = i
|
||||
},
|
||||
onSelectTime() {
|
||||
this.$refs.popup.open('top')
|
||||
},
|
||||
onChangeCurrentData(e) {
|
||||
this.currentTime = e.detail.value
|
||||
},
|
||||
onSelectProject() {
|
||||
this.$refs.popup.open('center')
|
||||
this.popupType = 'center'
|
||||
},
|
||||
onProjectChange() {
|
||||
console.log('选择---')
|
||||
},
|
||||
onSaveSubmit() {
|
||||
this.$refs.form
|
||||
.validate()
|
||||
.then(res => {
|
||||
console.log(res)
|
||||
})
|
||||
.catch(error => {
|
||||
console.log(error)
|
||||
})
|
||||
},
|
||||
onReduceMonth() {
|
||||
this.currentTime = this.$moment(this.currentTime).subtract(1, 'months').format('YYYY-MM-DD')
|
||||
},
|
||||
onReduceDay() {
|
||||
this.currentTime = this.$moment(this.currentTime).subtract(1, 'days').format('YYYY-MM-DD')
|
||||
},
|
||||
onAddMonth() {
|
||||
this.currentTime = this.$moment(this.currentTime).add(1, 'months').format('YYYY-MM-DD')
|
||||
},
|
||||
onAddDay() {
|
||||
this.currentTime = this.$moment(this.currentTime).add(1, 'days').format('YYYY-MM-DD')
|
||||
},
|
||||
onBackToday() {
|
||||
this.currentTime = this.$moment().format('YYYY-MM-DD')
|
||||
},
|
||||
onViewSelectProject() {
|
||||
this.$refs.popup.open('bottom')
|
||||
this.popupType = 'bottom'
|
||||
},
|
||||
onSelectAllType() {
|
||||
this.$refs.popup.open('bottom')
|
||||
this.popupType = 'bottom'
|
||||
this.isType = true
|
||||
},
|
||||
onClosePopup() {
|
||||
this.$refs.popup.close()
|
||||
if (this.isType) {
|
||||
this.isType = !this.isType
|
||||
}
|
||||
},
|
||||
onCheckAuditing(val) {
|
||||
console.log(val, '----')
|
||||
},
|
||||
onAddPages() {
|
||||
this.pagesTotal += 1
|
||||
},
|
||||
onReducePages() {
|
||||
if (this.pagesTotal > 1) {
|
||||
this.pagesTotal -= 1
|
||||
}
|
||||
},
|
||||
onChangePages(num) {
|
||||
if (num > 1) {
|
||||
console.log('居中')
|
||||
}
|
||||
},
|
||||
onChangePagination(val) {
|
||||
this.currentSwiper = val.current - 1
|
||||
|
||||
console.log(' this.currentPage', this.currentPage)
|
||||
},
|
||||
onSwiperChange(e) {
|
||||
this.currentPage = e.detail.current + 1
|
||||
},
|
||||
onAuditing() {
|
||||
this.$refs.popup.open('center')
|
||||
this.popupType = 'center'
|
||||
}
|
||||
},
|
||||
onLoad(options) {
|
||||
if (options.type == 1) {
|
||||
this.dayPlanTitle = '基建月计划'
|
||||
} else {
|
||||
this.dayPlanTitle = '生产月计划'
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
let query = uni.createSelectorQuery().in(this)
|
||||
query.select('#fixedContainer').boundingClientRect()
|
||||
query.exec(res => {
|
||||
this.paddingTopPx = res[0].height
|
||||
})
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.day-plan {
|
||||
// padding-top: 70px;
|
||||
|
||||
.fixed-container {
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
top: 44px;
|
||||
left: 0;
|
||||
z-index: 9;
|
||||
background-color: #fff;
|
||||
|
||||
.pages-add {
|
||||
width: 100%;
|
||||
height: 76rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
background-color: #ccc;
|
||||
|
||||
view {
|
||||
height: 76rpx;
|
||||
}
|
||||
|
||||
.num-content {
|
||||
flex: 1;
|
||||
background-color: #fff;
|
||||
|
||||
.scroll-x {
|
||||
width: 100%;
|
||||
// background-color: pink;
|
||||
white-space: nowrap;
|
||||
|
||||
view {
|
||||
width: 50%;
|
||||
display: inline-block;
|
||||
height: 76rpx;
|
||||
text-align: center;
|
||||
line-height: 76rpx;
|
||||
color: #003778;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.day-plan-content {
|
||||
display: flex;
|
||||
height: 120rpx;
|
||||
width: 100%;
|
||||
button {
|
||||
// width: 50%;
|
||||
flex: 1;
|
||||
height: 120rpx;
|
||||
// color: #00337a;
|
||||
color: #2c2b2b;
|
||||
font-size: 26rpx;
|
||||
line-height: 120rpx;
|
||||
text-align: center;
|
||||
border-radius: 0;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
button::after {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.active {
|
||||
border-bottom: 2px solid #00337a;
|
||||
}
|
||||
}
|
||||
|
||||
.scroll-Y {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.common-style {
|
||||
padding: 15rpx;
|
||||
}
|
||||
|
||||
.scroll-x-container {
|
||||
width: 100%;
|
||||
height: 200rpx;
|
||||
|
||||
white-space: nowrap;
|
||||
|
||||
view {
|
||||
width: 100%;
|
||||
display: inline-block;
|
||||
height: 200rpx;
|
||||
text-align: center;
|
||||
line-height: 200rpx;
|
||||
color: #003778;
|
||||
}
|
||||
}
|
||||
|
||||
.auditing-container {
|
||||
background-color: #fff;
|
||||
padding: 15rpx;
|
||||
view {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
button {
|
||||
height: 50rpx;
|
||||
line-height: 50rpx;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
.time-container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding: 0 38rpx;
|
||||
}
|
||||
|
||||
// .project-select {
|
||||
// width: 80%;
|
||||
// }
|
||||
|
||||
.popup-content {
|
||||
width: 90vw;
|
||||
padding: 20rpx;
|
||||
background-color: #eeeeee;
|
||||
|
||||
.search {
|
||||
width: 100%;
|
||||
height: 70rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
background-color: #eeeeee;
|
||||
.select {
|
||||
height: 68rpx;
|
||||
width: 65%;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
button {
|
||||
height: 68rpx;
|
||||
width: 30%;
|
||||
line-height: 68rpx;
|
||||
font-size: 32rpx;
|
||||
background-color: #003777;
|
||||
color: #fff;
|
||||
border-radius: 12rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.project-content {
|
||||
height: 460rpx;
|
||||
width: 97%;
|
||||
margin: 0 auto;
|
||||
background-color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
.flex-style {
|
||||
display: flex;
|
||||
align-content: center;
|
||||
}
|
||||
|
||||
.form-container {
|
||||
padding: 10rpx 20rpx;
|
||||
}
|
||||
|
||||
.uni-forms-item {
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
|
||||
.submit-btn {
|
||||
margin: 15rpx 0;
|
||||
}
|
||||
|
||||
.icon-search-time {
|
||||
height: 68rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-weight: bold;
|
||||
|
||||
button {
|
||||
background-color: #003777;
|
||||
color: #fff;
|
||||
height: 65rpx;
|
||||
line-height: 65rpx;
|
||||
font-weight: normal;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.view-time {
|
||||
margin: 0 35rpx;
|
||||
}
|
||||
.popup-bottom-content {
|
||||
height: 50vh;
|
||||
|
||||
.bottom-title {
|
||||
height: 90rpx;
|
||||
padding-right: 30rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
.bottom-title text:first-child {
|
||||
color: transparent;
|
||||
}
|
||||
|
||||
.select-item {
|
||||
height: 90rpx;
|
||||
line-height: 90rpx;
|
||||
text-align: center;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
.select-item:hover {
|
||||
background-color: rgb(224, 239, 249);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
<template></template>
|
||||
|
||||
<script>
|
||||
export default {}
|
||||
</script>
|
||||
|
||||
<style></style>
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
<template>
|
||||
<view>
|
||||
<picker mode="date" @change="onDateChange" :value="DateValue">
|
||||
<!-- <view>
|
||||
<text style="color: red; margin: 0 10rpx">*</text>
|
||||
<text>选择时间</text>
|
||||
</view> -->
|
||||
|
||||
<view class="time-container">
|
||||
<view class="date-picker">{{ DateValue }}</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</picker>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
DateValue: this.$moment().format('YYYY-MM-DD')
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onDateChange(e) {
|
||||
this.DateValue = e.detail.value
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.time-container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding: 10rpx 38rpx;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -0,0 +1,592 @@
|
|||
<template>
|
||||
<view class="day-plan">
|
||||
<u-navbar
|
||||
class="u-navbar"
|
||||
:title="dayPlanTitle"
|
||||
placeholder
|
||||
@leftClick="leftClick"
|
||||
leftIconColor="#fff"
|
||||
bgColor="#00337A"
|
||||
:titleStyle="{ color: '#FFF', fontSize: '32rpx' }"
|
||||
/>
|
||||
<view class="day-plan-content">
|
||||
<button
|
||||
:key="index"
|
||||
@tap="onTapCheck(index)"
|
||||
v-for="(item, index) in btnList"
|
||||
:class="{ active: index === activeIndex }"
|
||||
>
|
||||
{{ item.btn_title }}
|
||||
</button>
|
||||
</view>
|
||||
|
||||
<!-- 工程待办 -->
|
||||
<view class="common-style" v-show="activeIndex === 0">
|
||||
<picker mode="date" @change="onDateChange" :value="currentTime">
|
||||
<view>
|
||||
<text style="color: red; margin: 0 10rpx">*</text>
|
||||
<text>选择时间</text>
|
||||
</view>
|
||||
|
||||
<view class="time-container">
|
||||
<view class="date-picker">{{ currentTime }}</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</picker>
|
||||
</view>
|
||||
<!-- 发起提交 -->
|
||||
<view v-show="activeIndex === 1" class="submit-container common-style">
|
||||
<uni-forms
|
||||
class="form-container"
|
||||
ref="form"
|
||||
:modelValue="formData"
|
||||
:rules="rules"
|
||||
label-position="top"
|
||||
label-width="200"
|
||||
>
|
||||
<uni-forms-item label="工程名称" required>
|
||||
<view class="time-container" @tap="onSelectProject">
|
||||
<view>请选择</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="选择时间" required>
|
||||
<view>
|
||||
<TimeSelect />
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
|
||||
<uni-forms-item
|
||||
v-for="(item, index) in dayPlanTitle === '基建周计划' ? infrastructureFormLabel : productionFormLabel"
|
||||
:key="index"
|
||||
:label="item.form_label"
|
||||
name="name"
|
||||
required
|
||||
>
|
||||
<uni-easyinput v-if="item.items_type === 'ipt'" type="text" v-model="formData.name" placeholder="请填写" />
|
||||
<uni-data-select
|
||||
v-model="formData.nr"
|
||||
:localdata="item.options"
|
||||
v-if="item.items_type === 'sel'"
|
||||
></uni-data-select>
|
||||
</uni-forms-item>
|
||||
</uni-forms>
|
||||
|
||||
<view class="submit-btn">
|
||||
<button>导入计划</button>
|
||||
<button @tap="onSaveSubmit">保存提交</button>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 查看报表 -->
|
||||
<view v-show="activeIndex === 2" class="common-style">
|
||||
<uni-forms ref="form-b" label-position="top" label-width="200">
|
||||
<uni-forms-item label="工程名称" required>
|
||||
<view class="time-container" @tap="onSelectProject">
|
||||
<view>请选择</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
</uni-forms>
|
||||
|
||||
<view class="icon-search-time">
|
||||
<text style="fon-size: 30rpx; margin-right: 25rpx" @tap="onReduceMonth">《</text>
|
||||
<uni-icons type="left" size="20" @tap="onReduceDay"></uni-icons>
|
||||
|
||||
<view class="view-time">
|
||||
<picker mode="date" @change="onChangeCurrentData" :value="currentTime">
|
||||
<view class="date-picker">{{ currentTime }}</view>
|
||||
</picker>
|
||||
</view>
|
||||
|
||||
<uni-icons type="right" size="20" @tap="onAddDay"></uni-icons>
|
||||
<text style="fon-size: 30rpx; margin-left: 25rpx" @tap="onAddMonth">》</text>
|
||||
|
||||
<button @tap="onBackToday">返回本日</button>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 查看数据 -->
|
||||
<view v-show="activeIndex === 3" class="common-style">
|
||||
<uni-search-bar
|
||||
bgColor="#efefef"
|
||||
textColor="#000"
|
||||
placeholder="搜索"
|
||||
clearButton="none"
|
||||
cancelButton="none"
|
||||
@confirm="search"
|
||||
/>
|
||||
|
||||
<uni-forms ref="form-b" label-position="top" label-width="200">
|
||||
<uni-forms-item label="工程名称" required>
|
||||
<view class="time-container" @tap="onViewSelectProject">
|
||||
<view>请选择</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
<uni-forms-item label="全部状态" required>
|
||||
<view class="time-container" @tap="onSelectAllType">
|
||||
<view>请选择</view>
|
||||
<text>></text>
|
||||
</view>
|
||||
</uni-forms-item>
|
||||
</uni-forms>
|
||||
</view>
|
||||
|
||||
<uni-popup ref="popup" background-color="#fff">
|
||||
<view class="popup-content" v-if="popupType === 'center'">
|
||||
<view class="flex-style" style="justify-content: space-between">
|
||||
<text>选择工程</text>
|
||||
<text>X</text>
|
||||
</view>
|
||||
<view>2024-10-16</view>
|
||||
<view class="search">
|
||||
<view class="select">
|
||||
<uni-data-select v-model="value" @change="onProjectChange" :localdata="range"></uni-data-select>
|
||||
</view>
|
||||
<button>搜索</button>
|
||||
</view>
|
||||
<view class="project-content">暂无数据</view>
|
||||
</view>
|
||||
|
||||
<view v-else class="popup-bottom-content">
|
||||
<view class="bottom-title">
|
||||
<text>请选择</text>
|
||||
<text>请选择</text>
|
||||
<uni-icons type="closeempty" size="20" @tap="onClosePopup"></uni-icons>
|
||||
</view>
|
||||
|
||||
<view v-if="isType">
|
||||
<view class="select-item" v-for="item in isAUditingList" :key="item.title" @tap="onCheckAuditing(item.value)">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</uni-popup>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TimeSelect from './components/time-select'
|
||||
export default {
|
||||
components: {
|
||||
TimeSelect
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dayPlanTitle: '基建日计划',
|
||||
activeIndex: 0,
|
||||
btnList: [
|
||||
{ btn_title: '工作待办' },
|
||||
{ btn_title: '发起提交' },
|
||||
{ btn_title: '查看报表' },
|
||||
{ btn_title: '查看数据' }
|
||||
],
|
||||
currentTime: this.$moment().format('YYYY-MM-DD'),
|
||||
range: [
|
||||
{ value: 0, text: '全部' },
|
||||
{ value: 1, text: '未填报' },
|
||||
{ value: 2, text: '已填报' }
|
||||
],
|
||||
value: 0,
|
||||
formData: {},
|
||||
rules: {
|
||||
name: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
gk: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
jd: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
nr: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
},
|
||||
dj: {
|
||||
rules: [{ required: true, errorMessage: '请填写' }]
|
||||
}
|
||||
},
|
||||
popupType: 'center',
|
||||
isType: false,
|
||||
isAUditingList: [
|
||||
{ title: '未审核', value: 0 },
|
||||
{ title: '已审核', value: 1 }
|
||||
],
|
||||
riskLevel: [
|
||||
{ value: 0, text: '可接受风险' },
|
||||
{ value: 1, text: '低风险' },
|
||||
{ value: 2, text: '中风险' },
|
||||
{ value: 2, text: '高风险' },
|
||||
{ value: 2, text: '特高风险' }
|
||||
],
|
||||
|
||||
infrastructureFormLabel: [
|
||||
{ form_label: '作业内容', items_type: 'ipt' },
|
||||
{ form_label: '作业条件(人员、机具、图纸、物资等、气候条件对作业的影响)', items_type: 'ipt' },
|
||||
{ form_label: '风险类别', items_type: 'ipt' },
|
||||
{ form_label: '管控措施', items_type: 'ipt' },
|
||||
{
|
||||
form_label: '风险等级',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '可接受风险' },
|
||||
{ value: 1, text: '低风险' },
|
||||
{ value: 2, text: '中风险' },
|
||||
{ value: 2, text: '高风险' },
|
||||
{ value: 2, text: '特高风险' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '管控级别',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '项目部' },
|
||||
{ value: 1, text: '分公司' },
|
||||
{ value: 2, text: '公司职能部门' },
|
||||
{ value: 2, text: '公司领导' },
|
||||
{ value: 2, text: '运检站' },
|
||||
{ value: 2, text: '各单位级' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '是否有危大/易造成人员较大伤亡作业',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '方案是否报审',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '是否有涉网作业',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '线路/设备停电计划是否上报',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{ form_label: '项目负责人/联系电话', items_type: 'ipt' },
|
||||
{ form_label: '单位负责人/联系电话', items_type: 'ipt' },
|
||||
{ form_label: '计划数量', items_type: 'ipt' }
|
||||
],
|
||||
productionFormLabel: [
|
||||
{ form_label: '作业内容', items_type: 'ipt' },
|
||||
{ form_label: '实施单位', items_type: 'ipt' },
|
||||
{ form_label: '实施部门', items_type: 'ipt' },
|
||||
{ form_label: '任务来源', items_type: 'ipt' },
|
||||
{
|
||||
form_label: '作业类型',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '检修' },
|
||||
{ value: 1, text: '维护' }
|
||||
]
|
||||
},
|
||||
{ form_label: '计划开始时间', items_type: 'sel' },
|
||||
{ form_label: '计划结束时间', items_type: 'sel' },
|
||||
{
|
||||
form_label: '是否停电',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{ form_label: '停电设备(作业场所)', items_type: 'ipt' },
|
||||
{ form_label: '作业监督人/联系电话', items_type: 'ipt' },
|
||||
{ form_label: '作业负责人/联系电话', items_type: 'ipt' },
|
||||
{
|
||||
form_label: '管控级别',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '项目部' },
|
||||
{ value: 1, text: '分公司' },
|
||||
{ value: 2, text: '公司职能部门' },
|
||||
{ value: 2, text: '公司领导' },
|
||||
{ value: 2, text: '运检站' },
|
||||
{ value: 2, text: '各单位级' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '风险等级',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '可接受风险' },
|
||||
{ value: 1, text: '低风险' },
|
||||
{ value: 2, text: '中风险' },
|
||||
{ value: 2, text: '高风险' },
|
||||
{ value: 2, text: '特高风险' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '管控方式(根据作业内容在作业文件栏中选择"是"、"否")',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '过程管控' },
|
||||
{ value: 1, text: '巡视管控' },
|
||||
{ value: 2, text: '驻点管控' },
|
||||
{ value: 2, text: '节点管控' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '施工方案',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '作业指导书',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '作业表单',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{
|
||||
form_label: '工作票',
|
||||
items_type: 'sel',
|
||||
options: [
|
||||
{ value: 0, text: '是' },
|
||||
{ value: 1, text: '否' }
|
||||
]
|
||||
},
|
||||
{ form_label: '备注', items_type: 'ipt' },
|
||||
{ form_label: '计划数量', items_type: 'ipt' }
|
||||
]
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
leftClick() {
|
||||
uni.navigateTo({ url: '/pages/workPlan/workbench/index' })
|
||||
},
|
||||
onTapCheck(i) {
|
||||
this.activeIndex = i
|
||||
},
|
||||
onSelectTime() {
|
||||
this.$refs.popup.open('top')
|
||||
},
|
||||
onChangeCurrentData(e) {
|
||||
this.currentTime = e.detail.value
|
||||
},
|
||||
onSelectProject() {
|
||||
this.$refs.popup.open('center')
|
||||
this.popupType = 'center'
|
||||
},
|
||||
onProjectChange() {
|
||||
console.log('选择---')
|
||||
},
|
||||
onSaveSubmit() {
|
||||
this.$refs.form
|
||||
.validate()
|
||||
.then(res => {
|
||||
console.log(res)
|
||||
})
|
||||
.catch(error => {
|
||||
console.log(error)
|
||||
})
|
||||
},
|
||||
onReduceMonth() {
|
||||
this.currentTime = this.$moment(this.currentTime).subtract(1, 'months').format('YYYY-MM-DD')
|
||||
},
|
||||
onReduceDay() {
|
||||
this.currentTime = this.$moment(this.currentTime).subtract(1, 'days').format('YYYY-MM-DD')
|
||||
},
|
||||
onAddMonth() {
|
||||
this.currentTime = this.$moment(this.currentTime).add(1, 'months').format('YYYY-MM-DD')
|
||||
},
|
||||
onAddDay() {
|
||||
this.currentTime = this.$moment(this.currentTime).add(1, 'days').format('YYYY-MM-DD')
|
||||
},
|
||||
onBackToday() {
|
||||
this.currentTime = this.$moment().format('YYYY-MM-DD')
|
||||
},
|
||||
onViewSelectProject() {
|
||||
this.$refs.popup.open('bottom')
|
||||
this.popupType = 'bottom'
|
||||
},
|
||||
onSelectAllType() {
|
||||
this.$refs.popup.open('bottom')
|
||||
this.popupType = 'bottom'
|
||||
this.isType = true
|
||||
},
|
||||
onClosePopup() {
|
||||
this.$refs.popup.close()
|
||||
if (this.isType) {
|
||||
this.isType = !this.isType
|
||||
}
|
||||
},
|
||||
onCheckAuditing(val) {
|
||||
console.log(val, '----')
|
||||
}
|
||||
},
|
||||
onLoad(options) {
|
||||
if (options.type == 1) {
|
||||
this.dayPlanTitle = '基建周计划'
|
||||
} else {
|
||||
this.dayPlanTitle = '生产周计划'
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.day-plan-content {
|
||||
display: flex;
|
||||
button {
|
||||
// width: 50%;
|
||||
flex: 1;
|
||||
height: 120rpx;
|
||||
// color: #00337a;
|
||||
color: #2c2b2b;
|
||||
font-size: 26rpx;
|
||||
line-height: 120rpx;
|
||||
text-align: center;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
button::after {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.active {
|
||||
border-bottom: 2px solid #00337a;
|
||||
}
|
||||
}
|
||||
|
||||
.common-style {
|
||||
padding: 15rpx;
|
||||
}
|
||||
|
||||
.time-container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding: 10rpx 38rpx;
|
||||
}
|
||||
|
||||
// .project-select {
|
||||
// width: 80%;
|
||||
// }
|
||||
|
||||
.popup-content {
|
||||
width: 90vw;
|
||||
padding: 20rpx;
|
||||
background-color: #eeeeee;
|
||||
|
||||
.search {
|
||||
width: 100%;
|
||||
height: 70rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
background-color: #eeeeee;
|
||||
.select {
|
||||
height: 68rpx;
|
||||
width: 65%;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
button {
|
||||
height: 68rpx;
|
||||
width: 30%;
|
||||
line-height: 68rpx;
|
||||
font-size: 32rpx;
|
||||
background-color: #003777;
|
||||
color: #fff;
|
||||
border-radius: 12rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.project-content {
|
||||
height: 460rpx;
|
||||
width: 97%;
|
||||
margin: 0 auto;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
.flex-style {
|
||||
display: flex;
|
||||
align-content: center;
|
||||
}
|
||||
|
||||
.form-container {
|
||||
padding: 10rpx 20rpx;
|
||||
}
|
||||
|
||||
.uni-forms-item {
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
|
||||
.submit-btn {
|
||||
margin: 15rpx 0;
|
||||
}
|
||||
|
||||
.icon-search-time {
|
||||
height: 68rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-weight: bold;
|
||||
|
||||
button {
|
||||
background-color: #003777;
|
||||
color: #fff;
|
||||
height: 65rpx;
|
||||
line-height: 65rpx;
|
||||
font-weight: normal;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.view-time {
|
||||
margin: 0 35rpx;
|
||||
}
|
||||
.popup-bottom-content {
|
||||
height: 50vh;
|
||||
|
||||
.bottom-title {
|
||||
height: 90rpx;
|
||||
padding-right: 30rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
.bottom-title text:first-child {
|
||||
color: transparent;
|
||||
}
|
||||
|
||||
.select-item {
|
||||
height: 90rpx;
|
||||
line-height: 90rpx;
|
||||
text-align: center;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
.select-item:hover {
|
||||
background-color: rgb(224, 239, 249);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
@ -21,8 +21,16 @@ export default {
|
|||
url: '/pages/workPlan/dayPlan/index',
|
||||
img_src: require('../../../../static/images/workPlan/day_plan.png')
|
||||
},
|
||||
{ icon_title: '周计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/week_plan.png') },
|
||||
{ icon_title: '月计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/month_plan.png') },
|
||||
{
|
||||
icon_title: '周计划',
|
||||
url: '/pages/workPlan/weekPlan/index',
|
||||
img_src: require('../../../../static/images/workPlan/week_plan.png')
|
||||
},
|
||||
{
|
||||
icon_title: '月计划',
|
||||
url: '/pages/workPlan/monthPlan/index',
|
||||
img_src: require('../../../../static/images/workPlan/month_plan.png')
|
||||
},
|
||||
{ icon_title: '涉网计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/web_plan.png') },
|
||||
{
|
||||
icon_title: '临时计划',
|
||||
|
|
|
|||
|
|
@ -21,8 +21,16 @@ export default {
|
|||
url: '/pages/workPlan/dayPlan/index',
|
||||
img_src: require('../../../../static/images/workPlan/day_plan.png')
|
||||
},
|
||||
{ icon_title: '周计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/week_plan.png') },
|
||||
{ icon_title: '月计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/month_plan.png') },
|
||||
{
|
||||
icon_title: '周计划',
|
||||
url: '/pages/workPlan/weekPlan/index',
|
||||
img_src: require('../../../../static/images/workPlan/week_plan.png')
|
||||
},
|
||||
{
|
||||
icon_title: '月计划',
|
||||
url: '/pages/workPlan/monthPlan/index',
|
||||
img_src: require('../../../../static/images/workPlan/month_plan.png')
|
||||
},
|
||||
{ icon_title: '涉网计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/web_plan.png') },
|
||||
{
|
||||
icon_title: '临时计划',
|
||||
|
|
|
|||
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.0 KiB |
Loading…
Reference in New Issue