| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 | 
							- <template>
 
-   <div class="rule-type">
 
-     <DialogCom
 
-       :title="id ? '编辑' : '新增'"
 
-       :visible.sync="isShow"
 
-       @close="onHide"
 
-       width="500px"
 
-     >
 
-       <div class="page-body">
 
-         <el-form
 
-           :model="formData"
 
-           :rules="formDataRules"
 
-           size="small"
 
-           ref="form"
 
-           label-position="right"
 
-           label-width="130px"
 
-           label-prefix=":"
 
-         >
 
-           <el-form-item prop="userIds" label="姓名:">
 
-             <div>
 
-             <el-input
 
-               :readonly="true"
 
-               v-model="joinedStringArray"
 
-               placeholder="点击选择"
 
-             ></el-input>
 
-             <el-button @click="selectUser">选择</el-button>
 
-         </div>
 
-           </el-form-item>
 
-           <el-form-item prop="time" label="签署时间:">
 
-             <el-date-picker
 
-               v-model="formData.time"
 
-               :clearable="true"
 
-               type="date"
 
-               placeholder="选择时间"
 
-               value-format="yyyy-MM-dd hh:mm:ss"
 
-             >
 
-             </el-date-picker>
 
-           </el-form-item>
 
-           <el-col :xs="24" :sm="24" :md="24" :lg="24">
 
-             <el-form-item label="上传责任书" prop="files">
 
-               <imgs-upload
 
-                 :limit="5"
 
-                 v-model="formData.files"
 
-                 :fileSize="2"
 
-               ></imgs-upload>
 
-             </el-form-item>
 
-           </el-col>
 
-         </el-form>
 
-       </div>
 
-       <div slot="footer" class="dialog-footer">
 
-         <el-button @click="isShow = false">取消</el-button>
 
-         <el-button type="primary" @click="onSubmit">确定</el-button>
 
-       </div>
 
-     </DialogCom>
 
-     <UserSelector ref="UserSelector" @select="onUserSelect"></UserSelector>
 
-   </div>
 
- </template>
 
- <script>
 
- import { mapState, mapMutations } from "vuex";
 
- import ImgsUpload from "@/components/ImgsUpload";
 
- import UserSelector from "@/components/userSelector/index.vue";
 
- export default {
 
-   data() {
 
-     return {
 
-       id: null,
 
-       isShow: false,
 
-       formData: this.reset(),
 
-       formDataRules: {
 
-         userIds: [{ required: true, message: "请选择用户" }],
 
-         time: [{ required: true, message: "请选择时间" }],
 
-         files: [{ required: true, message: "请上传责任书" }],
 
-       },
 
-     };
 
-   },
 
-   watch: {},
 
-   computed: {
 
-     joinedStringArray: {
 
-       get() {
 
-         return this.formData.names.join(", ");
 
-       },
 
-       set(value) {
 
-         this.formData.names = value.split(", ");
 
-       },
 
-     },
 
-     ...mapState([]),
 
-   },
 
-   methods: {
 
-     ...mapMutations([]),
 
-     //选择用户回调
 
-     onUserSelect(data) {
 
-       var ids = data.map((obj) => obj.id);
 
-       var names = data.map((obj) => obj.name);
 
-       this.formData.userIds = ids;
 
-       this.formData.names = names;
 
-       //   console.log(this.formData.userIds, "this.formData.userIds");
 
-     },
 
-     //用户选择
 
-     selectUser(event) {
 
-     //   event.preventDefault();
 
-       this.$refs.UserSelector.show();
 
-     },
 
-     reset() {
 
-       return {
 
-         id: null,
 
-         userIds: [],
 
-         time: null,
 
-         files: null,
 
-         names: [],
 
-       };
 
-     },
 
-     async show(id) {
 
-       this.formData= this.reset(),
 
-       this.id = id;
 
-       this.isShow = true;
 
-     },
 
-     // 事件
 
-     onHide() {
 
-       //   this.formData = this.reset();
 
-       //   this.$refs.form.resetFields();
 
-     },
 
-     onSubmit() {
 
-       this.$refs.form.validate(async (isValidate) => {
 
-         if (!isValidate) return;
 
-         this.$emit("success", this.formData);
 
-         this.isShow = false;
 
-       });
 
-     },
 
-     // 事件
 
-     //apimark//
 
-   },
 
-   mounted() {},
 
-   components: { ImgsUpload, UserSelector },
 
- };
 
- </script>
 
- <style lang="scss" scoped>
 
- .brand_info {
 
-   .el-form {
 
-     width: 600px;
 
-     padding-top: 40px;
 
-   }
 
- }
 
- </style>
 
 
  |