lct
Your Name
2022-09-02 91ccfa3ebdc7a68b6f632c3e59757ec03b15ac1f
src/views/specialWorkManage/workTicket/workApply/components/space.vue
@@ -9,21 +9,30 @@
                  <el-select v-model="form.operatorUids" multiple>
                     <el-option
                           v-for="item in workerList"
                           :key="item.uid"
                           :label="item.username"
                           :value="item.uid"
                           :key="item.id"
                           :label="item.realname"
                           :value="item.id"
                     />
                  </el-select>
               </el-form-item>
            </el-col>
                <el-col :span="12">
                    <el-form-item label="作业内容" prop="workContent">
                        <el-input
                            v-model="form.workContent"
                            autosize
                            type="textarea"
                            placeholder="请输入作业内容"
                        />
                    </el-form-item>
                </el-col>
         </el-row>
         <el-row>
            <el-col :span="12">
               <el-form-item label="作业时间" prop="workTimeLine">
                  <el-date-picker
                        v-model="form.workTimeLine"
                        format="YYYY-MM-DD HH:mm"
                        value-format="YYYY-MM-DD HH:mm:00"
                        value-format="yyyy-MM-dd HH:mm:ss"
                        type="datetimerange"
                        range-separator="至"
                        start-placeholder="开始时间"
@@ -31,38 +40,26 @@
                  />
               </el-form-item>
            </el-col>
         </el-row>
         <el-row>
            <el-col :span="12">
               <el-form-item label="作业内容" prop="workContent">
                  <el-input
                        v-model="form.workContent"
                        autosize
                        type="textarea"
                        placeholder="请输入作业内容"
                  />
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="作业地址" prop="workLocation">
                  <el-input
                        v-model="form.workLocation"
                        autosize
                        type="textarea"
                        placeholder="请输入作业地址"
                  />
               </el-form-item>
            </el-col>
                <el-col :span="12">
                    <el-form-item label="作业地址" prop="workLocation">
                        <el-input
                            v-model="form.workLocation"
                            autosize
                            type="textarea"
                            placeholder="请输入作业地址"
                        />
                    </el-form-item>
                </el-col>
         </el-row>
         <el-row>
            <el-col :span="12">
               <el-form-item label="受限空间所属单位" prop="workDetail.csDepId">
                  <el-select v-model="form.workDetail.csDepId">
                     <el-option
                           v-for="item in csDepList"
                           :key="item.value"
                           :label="item.label"
                           :value="item.value"
                           v-for="item in departList"
                           :key="item.id"
                           :label="item.department"
                           :value="item.id"
                     />
                  </el-select>
               </el-form-item>
@@ -89,28 +86,43 @@
                  />
               </el-form-item>
            </el-col>
            <el-col :span="12">
               <el-form-item label="关联作业" prop="workDetail.otherSpecialWork">
                  <el-select v-model="form.workDetail.otherSpecialWork" multiple>
                     <el-option v-for="item in otherWorkList" :key="item.value" :label="item.label" :value="item.value" />
                  </el-select>
               </el-form-item>
            </el-col>
                <el-col :span="12">
                    <el-form-item label="危险辨识" prop="hazardIdentification">
                        <el-input
                            v-model="form.hazardIdentification"
                            autosize
                            type="textarea"
                            placeholder="请输入危险辨识"
                        />
                    </el-form-item>
                </el-col>
         </el-row>
                <el-row>
                    <el-col :span="12">
                        <el-form-item label="关联作业" prop="workDetail.otherSpecialWork">
                            <el-select v-model="form.workDetail.otherSpecialWork" multiple>
                                <el-option v-for="item in otherWorkList" :key="item.value" :label="item.label" :value="item.value" />
                            </el-select>
                        </el-form-item>
                    </el-col>
                </el-row>
         </div>
      </el-form>
      <div class="applyBtn">
         <el-button type="primary" size="large" plain @click="submitForm(ruleFormRef)">发起申请</el-button>
         <el-button type="primary" size="large" plain @click="submitForm()">发起申请</el-button>
      </div>
   </div>
   </div>
</template>
<script>
   export default{
   import {workApplyApi} from "../../../../../api/workApply";
    export default{
      name: 'spaceForm',
      components: {},
      props:['workerList'],
      props:['workerList','departList'],
        data(){
            return{
                form: {
@@ -127,6 +139,7 @@
                    },
                    workTimeLine: [],
                    expStartTime: '',
                    hazardIdentification: '',
                    expEndTime: ''
                },
                csDepList: [
@@ -190,9 +203,10 @@
                    }
                ],
                applyRules:{
                    operatorUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
                    workType: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
                    operatorUids: [{ required: true, message: '该内容不能为空', trigger: 'change' }],
                    workType: [{ required: true, message: '该内容不能为空', trigger: 'change' }],
                    workContent: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
                    hazardIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
                    workLocation: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
                    workTimeLine: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
                    "workDetail.csDepId": [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
@@ -202,13 +216,12 @@
            }
        },
        methods:{
            async submitForm(formEl) {
                if (!formEl) return
                await formEl.validate(async (valid, fields) => {
             submitForm() {
                this.$refs["ruleFormRef"].validate(async (valid, fields) => {
                    if (valid) {
                        state.form.expStartTime = JSON.parse(JSON.stringify(state.form.workTimeLine))[0]
                        state.form.expEndTime = JSON.parse(JSON.stringify(state.form.workTimeLine))[1]
                        let { workTimeLine, ...data } = JSON.parse(JSON.stringify(state.form))
                        this.form.expStartTime = JSON.parse(JSON.stringify(this.form.workTimeLine))[0]
                        this.form.expEndTime = JSON.parse(JSON.stringify(this.form.workTimeLine))[1]
                        let { workTimeLine, ...data } = JSON.parse(JSON.stringify(this.form))
                        data.workDetail.otherSpecialWork = data.workDetail.otherSpecialWork.join(',')
                        console.log(data,'data')
                        const res = await workApplyApi().postSpaceApply(data)
@@ -217,7 +230,24 @@
                                type: 'success',
                                message: '提交成功!'
                            });
                            formEl.resetFields()
                            this.$refs["ruleFormRef"].clearValidate()
                            this.form = {
                                operatorUids: [],
                                workType: 2,
                                workLevel: 0,
                                workContent: '',
                                workLocation: '',
                                workDetail:{
                                    csDepId: null,
                                    csName: '',
                                    csOriginalName: '',
                                    otherSpecialWork: []
                                },
                                workTimeLine: [],
                                expStartTime: '',
                                hazardIdentification: '',
                                expEndTime: ''
                            }
                        } else {
                            this.$message({
                                type: 'warning',