|  | @@ -0,0 +1,295 @@
 | 
	
		
			
				|  |  | +<template>
 | 
	
		
			
				|  |  | +  <van-nav-bar
 | 
	
		
			
				|  |  | +    title="信息上报中心"
 | 
	
		
			
				|  |  | +    left-text=""
 | 
	
		
			
				|  |  | +    left-arrow
 | 
	
		
			
				|  |  | +    @click-left="onClickLeft"
 | 
	
		
			
				|  |  | +  />
 | 
	
		
			
				|  |  | +  <div class="main">
 | 
	
		
			
				|  |  | +    <p class="title">场所活动上报</p>
 | 
	
		
			
				|  |  | +    <div class="formArea">
 | 
	
		
			
				|  |  | +      <p class="miniTitle">基础信息</p>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.activity"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="活动名称:"
 | 
	
		
			
				|  |  | +          placeholder="请填写活动名称"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.place"
 | 
	
		
			
				|  |  | +          readonly
 | 
	
		
			
				|  |  | +          required
 | 
	
		
			
				|  |  | +          label="场所名称:"
 | 
	
		
			
				|  |  | +          placeholder="请选择"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +          right-icon="arrow-down"
 | 
	
		
			
				|  |  | +          @click="showPlace = true"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +        <van-popup v-model:show="showPlace" round position="bottom">
 | 
	
		
			
				|  |  | +          <van-picker
 | 
	
		
			
				|  |  | +            :columns="places"
 | 
	
		
			
				|  |  | +            @cancel="showPlace = false"
 | 
	
		
			
				|  |  | +            @confirm="getPlace"
 | 
	
		
			
				|  |  | +          />
 | 
	
		
			
				|  |  | +        </van-popup>
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.activityTime"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="活动时间:"
 | 
	
		
			
				|  |  | +          placeholder="请选择时间"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +          right-icon="arrow-down"
 | 
	
		
			
				|  |  | +          @click="showAct = true"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +        <van-popup v-model:show="showAct" round position="bottom">
 | 
	
		
			
				|  |  | +          <van-picker-group
 | 
	
		
			
				|  |  | +            title="活动时间"
 | 
	
		
			
				|  |  | +            :tabs="['选择日期', '选择时间']"
 | 
	
		
			
				|  |  | +            next-step-text="下一步"
 | 
	
		
			
				|  |  | +            @confirm="getTime"
 | 
	
		
			
				|  |  | +            @cancel="showAct = false"
 | 
	
		
			
				|  |  | +          >
 | 
	
		
			
				|  |  | +            <van-date-picker v-model="currentDate" />
 | 
	
		
			
				|  |  | +            <van-time-picker v-model="currentTime" />
 | 
	
		
			
				|  |  | +          </van-picker-group>
 | 
	
		
			
				|  |  | +        </van-popup>
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.countPerson"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="参会人数:"
 | 
	
		
			
				|  |  | +          placeholder="请填写参会人数"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +          type="digit"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.list"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          required
 | 
	
		
			
				|  |  | +          label="已知名单:"
 | 
	
		
			
				|  |  | +          placeholder="请选择参会已知名单"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +          right-icon="arrow-down"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.portname"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="报告人:"
 | 
	
		
			
				|  |  | +          placeholder="请选择报告人"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +          right-icon="arrow-down"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.area"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="参加范围:"
 | 
	
		
			
				|  |  | +          placeholder="请填写参加范围"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.activityPlace"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="活动地点:"
 | 
	
		
			
				|  |  | +          placeholder="请填写参加地点"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.address"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="详细地址:"
 | 
	
		
			
				|  |  | +          placeholder="请填写活参加地点"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +          right-icon="location"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.money"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="经费来源:"
 | 
	
		
			
				|  |  | +          placeholder="请选择"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.activityName"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="活动负责人:"
 | 
	
		
			
				|  |  | +          placeholder="请选择活动负责人"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +          right-icon="arrow-down"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field
 | 
	
		
			
				|  |  | +          v-model="placeActivity.tel"
 | 
	
		
			
				|  |  | +          center
 | 
	
		
			
				|  |  | +          label="联系方式:"
 | 
	
		
			
				|  |  | +          placeholder="请填写联系方式"
 | 
	
		
			
				|  |  | +          input-align="right"
 | 
	
		
			
				|  |  | +        />
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <van-field name="uploader" label="安全预案:">
 | 
	
		
			
				|  |  | +          <template #input>
 | 
	
		
			
				|  |  | +            <van-uploader>
 | 
	
		
			
				|  |  | +              <van-button icon="plus">上传文件</van-button>
 | 
	
		
			
				|  |  | +            </van-uploader>
 | 
	
		
			
				|  |  | +          </template>
 | 
	
		
			
				|  |  | +        </van-field>
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +      <van-cell-group>
 | 
	
		
			
				|  |  | +        <div class="rowTextArea">
 | 
	
		
			
				|  |  | +          <van-field
 | 
	
		
			
				|  |  | +            v-model="placeActivity.into"
 | 
	
		
			
				|  |  | +            center
 | 
	
		
			
				|  |  | +            rows="2"
 | 
	
		
			
				|  |  | +            type="textarea"
 | 
	
		
			
				|  |  | +            label="主题内容:"
 | 
	
		
			
				|  |  | +            label-align="top"
 | 
	
		
			
				|  |  | +          />
 | 
	
		
			
				|  |  | +        </div>
 | 
	
		
			
				|  |  | +      </van-cell-group>
 | 
	
		
			
				|  |  | +    </div>
 | 
	
		
			
				|  |  | +    <div class="subbtn">
 | 
	
		
			
				|  |  | +      <van-button type="primary">提交</van-button>
 | 
	
		
			
				|  |  | +      <van-button type="default" hairline>取消</van-button>
 | 
	
		
			
				|  |  | +    </div>
 | 
	
		
			
				|  |  | +  </div>
 | 
	
		
			
				|  |  | +</template>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<script>
 | 
	
		
			
				|  |  | +import { ref } from "vue";
 | 
	
		
			
				|  |  | +export default {
 | 
	
		
			
				|  |  | +  setup() {
 | 
	
		
			
				|  |  | +    // 返回
 | 
	
		
			
				|  |  | +    const onClickLeft = () => {
 | 
	
		
			
				|  |  | +      history.back();
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +    // 活动信息
 | 
	
		
			
				|  |  | +    const placeActivity = {
 | 
	
		
			
				|  |  | +      activity: "",
 | 
	
		
			
				|  |  | +      place: "",
 | 
	
		
			
				|  |  | +      activityTime: "",
 | 
	
		
			
				|  |  | +      countPerson: "",
 | 
	
		
			
				|  |  | +      list: '',
 | 
	
		
			
				|  |  | +      portname: "",
 | 
	
		
			
				|  |  | +      area: "",
 | 
	
		
			
				|  |  | +      activityPlace: "",
 | 
	
		
			
				|  |  | +      address: "",
 | 
	
		
			
				|  |  | +      money: "",
 | 
	
		
			
				|  |  | +      activityName: "",
 | 
	
		
			
				|  |  | +      tel: "",
 | 
	
		
			
				|  |  | +      file: "",
 | 
	
		
			
				|  |  | +      into: "",
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +    // 场所名称
 | 
	
		
			
				|  |  | +    const places = [
 | 
	
		
			
				|  |  | +      { text: "杭州", value: "Hangzhou" },
 | 
	
		
			
				|  |  | +      { text: "宁波", value: "Ningbo" },
 | 
	
		
			
				|  |  | +      { text: "温州", value: "Wenzhou" },
 | 
	
		
			
				|  |  | +      { text: "绍兴", value: "Shaoxing" },
 | 
	
		
			
				|  |  | +      { text: "湖州", value: "Huzhou" },
 | 
	
		
			
				|  |  | +    ];
 | 
	
		
			
				|  |  | +    const showPlace = ref(false);
 | 
	
		
			
				|  |  | +    const getPlace = ({ selectedOptions }) => {
 | 
	
		
			
				|  |  | +      showPlace.value = false;
 | 
	
		
			
				|  |  | +      placeActivity.place = selectedOptions[0].text;
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +    // 获取活动时间
 | 
	
		
			
				|  |  | +    const showAct = ref(false);
 | 
	
		
			
				|  |  | +    const currentDate = ref(["2022", "06", "01"]);
 | 
	
		
			
				|  |  | +    const currentTime = ref(["12", "00"]);
 | 
	
		
			
				|  |  | +    const getTime = () => {
 | 
	
		
			
				|  |  | +      showAct.value = false;
 | 
	
		
			
				|  |  | +      placeActivity.activityTime = `${currentDate.value.join(
 | 
	
		
			
				|  |  | +        "-"
 | 
	
		
			
				|  |  | +      )} ${currentTime.value.join(":")}`;
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    return {
 | 
	
		
			
				|  |  | +      placeActivity,
 | 
	
		
			
				|  |  | +      showPlace,
 | 
	
		
			
				|  |  | +      places,
 | 
	
		
			
				|  |  | +      getPlace,
 | 
	
		
			
				|  |  | +      showAct,
 | 
	
		
			
				|  |  | +      currentDate,
 | 
	
		
			
				|  |  | +      currentTime,
 | 
	
		
			
				|  |  | +      getTime,
 | 
	
		
			
				|  |  | +      onClickLeft,
 | 
	
		
			
				|  |  | +    };
 | 
	
		
			
				|  |  | +  },
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +</script>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<style scoped>
 | 
	
		
			
				|  |  | +* {
 | 
	
		
			
				|  |  | +  margin: 0;
 | 
	
		
			
				|  |  | +  padding: 0;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.main p {
 | 
	
		
			
				|  |  | +  height: 40px;
 | 
	
		
			
				|  |  | +  line-height: 40px;
 | 
	
		
			
				|  |  | +  color: #36a7f3;
 | 
	
		
			
				|  |  | +  border-bottom: 1px solid #eee;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.title {
 | 
	
		
			
				|  |  | +  font-size: 20px;
 | 
	
		
			
				|  |  | +  font-weight: 700;
 | 
	
		
			
				|  |  | +  padding-left: 20px;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.miniTitle {
 | 
	
		
			
				|  |  | +  font-size: 16px;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.formArea {
 | 
	
		
			
				|  |  | +  padding: 0px 20px;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.formArea .van-cell-group .van-field__label {
 | 
	
		
			
				|  |  | +  height: 40px;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.formArea .van-cell-group .van-cell {
 | 
	
		
			
				|  |  | +  line-height: 40px;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.formArea .van-field__right-icon {
 | 
	
		
			
				|  |  | +    color: #36a7f3;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.rowTextArea::v-deep .van-field__value {
 | 
	
		
			
				|  |  | +  width: 98%;
 | 
	
		
			
				|  |  | +  border: 2px solid #ccc;
 | 
	
		
			
				|  |  | +  border-radius: 10px;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.rowTextArea::v-deep .van-cell {
 | 
	
		
			
				|  |  | +  display: flow-root;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.subbtn {
 | 
	
		
			
				|  |  | +  margin: 20px;
 | 
	
		
			
				|  |  | +  text-align: center;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.subbtn .van-button {
 | 
	
		
			
				|  |  | +  width: 40%;
 | 
	
		
			
				|  |  | +  margin: 5px;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +.van-uploader .van-button {
 | 
	
		
			
				|  |  | +  border: none;
 | 
	
		
			
				|  |  | +  color: #36a7f3;
 | 
	
		
			
				|  |  | +  top: -4px;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +</style>
 |