|  | @@ -11,8 +11,9 @@
 | 
	
		
			
				|  |  |            <div class="panel-box">
 | 
	
		
			
				|  |  |              <select-cell
 | 
	
		
			
				|  |  |                title="来访类型"
 | 
	
		
			
				|  |  | +              :prop="prop"
 | 
	
		
			
				|  |  |                v-model="visitType"
 | 
	
		
			
				|  |  | -              :data-list="getDictItem('out_in_type')"
 | 
	
		
			
				|  |  | +              :data-list="typeList"
 | 
	
		
			
				|  |  |                required>
 | 
	
		
			
				|  |  |              </select-cell>
 | 
	
		
			
				|  |  |              <van-cell
 | 
	
	
		
			
				|  | @@ -159,7 +160,6 @@
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -import {defineComponent} from "vue";
 | 
	
		
			
				|  |  |  import SelectCell from "@/components/selectCell/index.vue";
 | 
	
		
			
				|  |  |  import DateCell from "@/components/dateCell/index.vue";
 | 
	
		
			
				|  |  |  import Uploader from "@/components/upload/gxuploader.vue";
 | 
	
	
		
			
				|  | @@ -170,11 +170,11 @@ import {mapGetters} from "vuex";
 | 
	
		
			
				|  |  |  import {imgUrl} from "@/utils";
 | 
	
		
			
				|  |  |  import { ImagePreview } from 'vant'
 | 
	
		
			
				|  |  |  import {visitAdd} from './api'
 | 
	
		
			
				|  |  | -export default defineComponent({
 | 
	
		
			
				|  |  | +export default {
 | 
	
		
			
				|  |  |    components: {SelectCell,Uploader,DateCell,CalendarPicker,OrgPicker},
 | 
	
		
			
				|  |  |    data(){
 | 
	
		
			
				|  |  |      return {
 | 
	
		
			
				|  |  | -      visitType:'1',
 | 
	
		
			
				|  |  | +      visitType:2,
 | 
	
		
			
				|  |  |        checked:false,
 | 
	
		
			
				|  |  |        visitInfo: {},
 | 
	
		
			
				|  |  |        formData:{
 | 
	
	
		
			
				|  | @@ -195,30 +195,42 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        pList:[],
 | 
	
		
			
				|  |  |        showPicker:false,
 | 
	
		
			
				|  |  |        openCalendar:false,
 | 
	
		
			
				|  |  | -      dicts:['out_in_type']
 | 
	
		
			
				|  |  | +      prop:{
 | 
	
		
			
				|  |  | +        label:'name',
 | 
	
		
			
				|  |  | +        value:'value'
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      typeList:[
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          name:'临时出入',
 | 
	
		
			
				|  |  | +          value:2
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +          name:'紧急出入',
 | 
	
		
			
				|  |  | +          value:3
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    computed:{
 | 
	
		
			
				|  |  | -    ...mapGetters(['orgId','id','dictionary'])
 | 
	
		
			
				|  |  | +    ...mapGetters(['orgId','id'])
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    methods:{
 | 
	
		
			
				|  |  |      imgUrl,formatDate,
 | 
	
		
			
				|  |  |      onSubmit(){
 | 
	
		
			
				|  |  | -      console.log(this.formData,'this.formData')
 | 
	
		
			
				|  |  | -      if(this.visitType ==  '1'){
 | 
	
		
			
				|  |  | -        if(!this.formData.receptionOrgIds){
 | 
	
		
			
				|  |  | -          this.$toast('请选择来访机构');
 | 
	
		
			
				|  |  | -          return;
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        if(!this.formData.letterNo){
 | 
	
		
			
				|  |  | -          this.$toast('请输入介绍信编号');
 | 
	
		
			
				|  |  | -          return;
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        if(!this.formData.letterFile){
 | 
	
		
			
				|  |  | -          this.$toast('请上传介绍信');
 | 
	
		
			
				|  |  | -          return;
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | +      // if(this.visitType ==  '1'){
 | 
	
		
			
				|  |  | +      //   if(!this.formData.receptionOrgIds){
 | 
	
		
			
				|  |  | +      //     this.$toast('请选择来访机构');
 | 
	
		
			
				|  |  | +      //     return;
 | 
	
		
			
				|  |  | +      //   }
 | 
	
		
			
				|  |  | +      //   if(!this.formData.letterNo){
 | 
	
		
			
				|  |  | +      //     this.$toast('请输入介绍信编号');
 | 
	
		
			
				|  |  | +      //     return;
 | 
	
		
			
				|  |  | +      //   }
 | 
	
		
			
				|  |  | +      //   if(!this.formData.letterFile){
 | 
	
		
			
				|  |  | +      //     this.$toast('请上传介绍信');
 | 
	
		
			
				|  |  | +      //     return;
 | 
	
		
			
				|  |  | +      //   }
 | 
	
		
			
				|  |  | +      // }
 | 
	
		
			
				|  |  |        if(this.visitType ==  '2'){
 | 
	
		
			
				|  |  |          if(!this.formData.letterNo){
 | 
	
		
			
				|  |  |            this.$toast('请输入介绍信编号');
 | 
	
	
		
			
				|  | @@ -228,11 +240,8 @@ export default defineComponent({
 | 
	
		
			
				|  |  |            this.$toast('请上传介绍信');
 | 
	
		
			
				|  |  |            return;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        this.receptionOrgIds = [this.orgId];
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | -      if(this.visitType ==  '3'){
 | 
	
		
			
				|  |  | -        this.receptionOrgIds = [this.orgId];
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |        if(!this.formData.reasons){
 | 
	
		
			
				|  |  |          this.$toast('请输入来访事由');
 | 
	
		
			
				|  |  |          return;
 | 
	
	
		
			
				|  | @@ -245,10 +254,26 @@ export default defineComponent({
 | 
	
		
			
				|  |  |          this.$toast('请添加人员信息');
 | 
	
		
			
				|  |  |          return;
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  | +      this.formData.status = 1;
 | 
	
		
			
				|  |  | +      this.formData.type = this.visitType;
 | 
	
		
			
				|  |  | +      this.formData.receptionOrgIds = [this.orgId];
 | 
	
		
			
				|  |  |        this.formData.userInfos = this.pList;
 | 
	
		
			
				|  |  | -      console.log(this.formData,'formData');
 | 
	
		
			
				|  |  | -      alert(JSON.stringify(this.formData))
 | 
	
		
			
				|  |  | -      visitAdd(this.formData).then(res=>{
 | 
	
		
			
				|  |  | +      let data = this.formData;
 | 
	
		
			
				|  |  | +      alert(JSON.stringify(data))
 | 
	
		
			
				|  |  | +      if(this.visitType ==  '2'){
 | 
	
		
			
				|  |  | +        data.letterFile = this.formData.letterFile.map(v=>{
 | 
	
		
			
				|  |  | +          return JSON.stringify(v);
 | 
	
		
			
				|  |  | +        })
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      data.userInfos = this.pList.map(user=>{
 | 
	
		
			
				|  |  | +        let urlArr = user.imgFile.map(v=>{
 | 
	
		
			
				|  |  | +          return v.imgPath
 | 
	
		
			
				|  |  | +        })
 | 
	
		
			
				|  |  | +        user.imgFile = urlArr.join(',');
 | 
	
		
			
				|  |  | +        return user
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  | +      alert(JSON.stringify(data))
 | 
	
		
			
				|  |  | +      visitAdd(data).then(res=>{
 | 
	
		
			
				|  |  |          this.$toast.success('提交成功');
 | 
	
		
			
				|  |  |          this.$router.push({
 | 
	
		
			
				|  |  |            path:'/visitRegister',
 | 
	
	
		
			
				|  | @@ -278,11 +303,19 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        this.pList.splice(i,1);
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      onAdd(){
 | 
	
		
			
				|  |  | -      //this.personnel.imgFile = 'askdjakldjklasdlaldafgd'
 | 
	
		
			
				|  |  | +      // this.personnel.imgFile = [{
 | 
	
		
			
				|  |  | +      //   url:'askjdkajsdjajkdsa',
 | 
	
		
			
				|  |  | +      //   imgPath:'asjkdklaslkdasdlasld',
 | 
	
		
			
				|  |  | +      //   name:'asdasdasd'
 | 
	
		
			
				|  |  | +      // }]
 | 
	
		
			
				|  |  |        if(!this.personnel.userName || !this.personnel.idCard || !this.personnel.companyName || !this.personnel.imgFile){
 | 
	
		
			
				|  |  |          this.$toast('请完善人员信息');
 | 
	
		
			
				|  |  |          return;
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  | +      if(this.personnel.imgFile.length < 2) {
 | 
	
		
			
				|  |  | +        this.$toast('请上传证件照正反面');
 | 
	
		
			
				|  |  | +        return;
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  |        let strObj = JSON.parse(JSON.stringify(this.personnel));
 | 
	
		
			
				|  |  |        this.pList.push(strObj);
 | 
	
		
			
				|  |  |        this.personnel = {
 | 
	
	
		
			
				|  | @@ -309,7 +342,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |        ImagePreview(arr)
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | -})
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  |  </script>
 | 
	
		
			
				|  |  |  <style lang="scss">
 | 
	
		
			
				|  |  |  .visit-add{
 |