Procházet zdrojové kódy

工单信息填报

Memory_LG před 7 měsíci
rodič
revize
685477e15c

+ 8 - 0
lawenforcement-ui/src/api/lawenforcement/record.js

@@ -87,3 +87,11 @@ export function getDetails(id){
     method: 'get'
   })
 }
+
+export function recordFillForm(data){
+  return request({
+    url: '/sooka-sponest-lawenforcement/record/recordFillForm',
+    method: 'post',
+    data: data
+  })
+}

+ 58 - 52
lawenforcement-ui/src/views/lawenforcement/record/index.vue

@@ -28,46 +28,10 @@
         >新增
         </el-button>
       </el-col>
-      <!--          <el-col :span="1.5">
-                  <el-button
-                    type="success"
-                    plain
-                    icon="el-icon-edit"
-                    size="mini"
-                    :disabled="single"
-                    @click="handleUpdate"
-                    v-hasPermi="['lawenforcement:record:edit']"
-                  >修改
-                  </el-button>
-                </el-col>
-                <el-col :span="1.5">
-                  <el-button
-                    type="danger"
-                    plain
-                    icon="el-icon-delete"
-                    size="mini"
-                    :disabled="multiple"
-                    @click="handleDelete"
-                    v-hasPermi="['lawenforcement:record:remove']"
-                  >删除
-                  </el-button>
-                </el-col>
-                <el-col :span="1.5">
-                  <el-button
-                    type="warning"
-                    plain
-                    icon="el-icon-download"
-                    size="mini"
-                    @click="handleExport"
-                    v-hasPermi="['lawenforcement:record:export']"
-                  >导出
-                  </el-button>
-                </el-col>-->
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
     <el-table v-loading="loading" :data="recordList" @selection-change="handleSelectionChange">
-      <!--      <el-table-column type="selection" width="55" align="center"/>-->
       <el-table-column label="任务类型" align="center" prop="jobType">
         <template slot-scope="scope">
           <dict-tag :options="dict.type.lawenforcement_jobType" :value="scope.row.jobType"/>
@@ -81,15 +45,12 @@
           <dict-tag :options="dict.type.lawenforcement_type" :value="scope.row.recordStatus"/>
         </template>
       </el-table-column>
-      <!--      <el-table-column label="任务检查类型" align="center" prop="checkType"/>-->
       <el-table-column label="检查对象类型" align="center" prop="checkObjectType"/>
       <el-table-column label="检查对象代码" align="center" prop="checkObjectCode"/>
       <el-table-column label="检查对象名称" align="center" prop="checkObjectName"/>
-      <!--      <el-table-column label="检查对象联系电话" align="center" prop="checkObjectPhone"/>-->
       <el-table-column label="检查开始时间" align="center" prop="checkStartTime" :formatter="formatDate"/>
       <el-table-column label="检查结束时间" align="center" prop="checkEndTime" :formatter="formatDate"/>
       <el-table-column label="检查子项数量" align="center" prop="subitemCount"/>
-      <!--      <el-table-column label="备注" align="center" prop="remark"/>-->
       <el-table-column label="创建方式" align="center">
         <template v-slot="scope">
           <span v-if="scope.row.createMethod === 1">自建</span>
@@ -110,13 +71,6 @@
             size="mini" type="text" icon="el-icon-paper-plus" @click="showBindDeviceDialog(scope.row)">
             绑定设备
           </el-button>
-<!--          <el-button size="mini" type="text" icon="el-icon-paper-plus" @click="registerLiAn(scope.row)">
-            立案
-          </el-button>-->
-<!--          <el-button size="mini" type="text" icon="el-icon-paper-plus" @click="fillFormHandle(scope.row)">
-            填报
-          </el-button>-->
-
           <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['system:role:edit']">
             <span class="el-dropdown-link">
               <i class="el-icon-d-arrow-right el-icon--right"></i>更多
@@ -313,7 +267,28 @@
     </el-dialog>
 
 <!--    立案-->
-    <register ref="register"/>
+    <register ref="register" @send-ok="getList"/>
+
+
+    <!--  填报弹窗  -->
+    <el-dialog :visible.sync="dialogFillform" :title="title" width="800px" @close="closeDialogFillForm">
+      <el-form>
+        <el-form-item label="任务名称" prop="jobName">
+          <el-input style="width: 80%" v-model="form.jobName" placeholder="请输入任务名称"/>
+        </el-form-item>
+        <el-form-item label="填报附件" label-width="50px" prop="attachPath">
+          <fileUpload :limit="1" :fileType="fileType" v-model="form.attachPath" :setFileName="setFileName"
+                      :removeFileName="removeFile"></fileUpload>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitFormFill">确 定</el-button>
+        <el-button @click="closeDialogFillForm">取 消</el-button>
+      </div>
+    </el-dialog>
+
+    <!--  详情弹窗  -->
+    <DetailsVue :workOrderId="workOrderId" :showDialog="showDialog" @closeDialog="detailShowClose"/>
   </div>
 </template>
 
@@ -326,7 +301,7 @@ import {
   getDeivceList,
   getRecord,
   getUserListByDeptId,
-  listRecord
+  listRecord, recordFillForm
 } from "@/api/lawenforcement/record";
 import {treeselect} from "@/api/system/dept";
 import DepartmentSelect from "@/views/components/DepartmentSelect.vue";
@@ -334,10 +309,11 @@ import EnforcementUserSelect from "@/views/components/EnforcementUserSelect.vue"
 import register from "@/views/lawenforcement/register/index.vue";
 import moment from 'moment';
 import DetailsVue from "@/views/lawenforcement/record/DetailsVue.vue"
+import fileUpload from '@/views/components/FileUpload/index.vue';
 
 export default {
   name: "Record",
-  components: {register, EnforcementUserSelect, DepartmentSelect, DetailsVue},
+  components: {register, EnforcementUserSelect, DepartmentSelect, DetailsVue, fileUpload},
   dicts: [
     'lawenforcement_type',
     'lawenforcement_jobType'
@@ -414,6 +390,7 @@ export default {
       dialogFillform: false,
       workOrderId: "",
       showDialog: false,
+      fileType: ['pdf', 'jpg', 'jpeg', 'png'],
     };
   },
   created() {
@@ -503,7 +480,10 @@ export default {
         createMethod: null,
         isCrossDept: null,
         deviceId: null,
-        deviceName: null
+        deviceName: null,
+        attachPath:null,
+        attachName:null,
+        recordId: null,
       };
       this.resetForm("form");
     },
@@ -691,6 +671,7 @@ export default {
       distributeRecord(this.form).then(res => {
         this.$modal.msgSuccess("派发成功");
         this.dialogVisible = false;
+        this.getList();
       })
     },
 
@@ -723,15 +704,39 @@ export default {
     cancleBindHandle() {
       this.bindDialogVisible = false
       this.reset();
-      // this.getList()
     },
     /** 立案函数 */
     registerLiAn(row){
       this.$refs.register.registerLiAn(row.id,true)
     },
+    /** 填报按钮事件 */
+    fillFormHandle(row) {
+      this.form.recordId = row.id;
+      this.form.jobName = row.jobName
+      this.dialogFillform = true;
+    },
+    setFileName(fileName){
+      this.form.attachName = fileName;
+    },
+    removeFile(){
+      this.form.attachPath = null;
+      this.form.attachName = null;
+    },
+    closeDialogFillForm(){
+      this.form.attachPath = null;
+      this.form.attachName = null;
+      this.dialogFillform = false
+    },
     /** 填报提交事件 */
     submitFormFill() {
-      console.log(this.form)
+      recordFillForm(this.form).then(res=>{
+        this.dialogFillform = false
+        this.getList();
+        this.$modal.msgSuccess("填报成功");
+      })
+
+
+      // console.log(this.form)
     },
 
     /** 详情事件 */
@@ -743,6 +748,7 @@ export default {
       this.workOrderId = null;
       this.showDialog = false
     }
+
   },
   watch: {
     dialogVisible(newVal) {

+ 1 - 0
lawenforcement-ui/src/views/lawenforcement/register/index.vue

@@ -352,6 +352,7 @@ export default {
               this.$modal.msgSuccess("新增成功");
               this.dialogVisibleLiAn = false;
               this.getList();
+              this.$emit("send-ok")
             });
           }
         }

+ 7 - 0
src/main/java/com/sooka/sponest/lawenforcement/lawCase/service/impl/LawenforcementCaseServiceImpl.java

@@ -15,6 +15,8 @@ import com.sooka.sponest.lawenforcement.lawCase.mapper.LawenforcementAttachMappe
 import com.sooka.sponest.lawenforcement.lawCase.mapper.LawenforcementCaseLogMapper;
 import com.sooka.sponest.lawenforcement.lawCase.mapper.LawenforcementCaseMapper;
 import com.sooka.sponest.lawenforcement.lawCase.service.ILawenforcementCaseService;
+import com.sooka.sponest.lawenforcement.record.domain.LawenforcementRecord;
+import com.sooka.sponest.lawenforcement.record.mapper.LawenforcementRecordMapper;
 import com.sooka.sponest.lawenforcement.utils.DataConstants;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -39,6 +41,9 @@ public class LawenforcementCaseServiceImpl extends BaseService implements ILawen
     @Autowired
     private LawenforcementAttachMapper lawenforcementAttachMapper;
 
+    @Autowired
+    private LawenforcementRecordMapper recordMapper;
+
     /**
      * 查询案件
      *
@@ -150,6 +155,8 @@ public class LawenforcementCaseServiceImpl extends BaseService implements ILawen
             centerdataTFile.setCreateName(SecurityUtils.getLoginUser().getSysUser().getNickName());
             lawenforcementAttachMapper.insertLawenforcementAttach(centerdataTFile);
         }
+        recordMapper.updateRecordToLiAn(lawenforcementCase.getCaseNumber(), "lawenforcement_type_8");
+
         return inserted;
     }
 

+ 6 - 0
src/main/java/com/sooka/sponest/lawenforcement/record/controller/LawenforcementRecordController.java

@@ -11,6 +11,7 @@ import com.ruoyi.common.log.enums.BusinessType;
 import com.ruoyi.common.security.annotation.RequiresPermissions;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.sooka.sponest.lawenforcement.record.domain.LawenforcementRecord;
+import com.sooka.sponest.lawenforcement.record.domain.bo.LawenforcementFillFormBO;
 import com.sooka.sponest.lawenforcement.record.service.ILawenforcementRecordService;
 import com.sooka.sponest.monitor.api.RemoteDeviceService;
 import com.sooka.sponest.monitor.api.domain.CenterdataTCamera;
@@ -117,4 +118,9 @@ public class LawenforcementRecordController extends BaseController {
     public AjaxResult getDetailsById(@PathVariable("id") String id){
         return AjaxResult.success(lawenforcementRecordService.getDeatilsById(id));
     }
+
+    @PostMapping("/recordFillForm")
+    public AjaxResult recordFillForm(@RequestBody LawenforcementFillFormBO bo){
+        return toAjax(lawenforcementRecordService.recordFillForm(bo));
+    }
 }

+ 23 - 0
src/main/java/com/sooka/sponest/lawenforcement/record/domain/bo/LawenforcementFillFormBO.java

@@ -0,0 +1,23 @@
+package com.sooka.sponest.lawenforcement.record.domain.bo;
+
+
+import lombok.*;
+
+/**
+ * @author LG
+ */
+@Setter
+@Getter
+@AllArgsConstructor
+@NoArgsConstructor
+@ToString
+public class LawenforcementFillFormBO {
+    private String id;
+    private String recordId;
+    private String createBy;
+    private String createName;
+    private String createTime;
+    private String attachPath;
+    private String attachName;
+
+}

+ 6 - 0
src/main/java/com/sooka/sponest/lawenforcement/record/mapper/LawenforcementRecordMapper.java

@@ -3,7 +3,9 @@ package com.sooka.sponest.lawenforcement.record.mapper;
 import com.sooka.sponest.lawenforcement.device.domain.DeviceBO;
 import com.sooka.sponest.lawenforcement.record.domain.LawenforcementRecord;
 import com.sooka.sponest.lawenforcement.record.domain.LawenforcementRecordLog;
+import com.sooka.sponest.lawenforcement.record.domain.bo.LawenforcementFillFormBO;
 import com.sooka.sponest.lawenforcement.record.domain.vo.LawenforcementRecordDetailVO;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.Map;
@@ -72,4 +74,8 @@ public interface LawenforcementRecordMapper {
     Map<String, String> getPersonCode(String id);
 
     LawenforcementRecordDetailVO getDetailById(String id);
+
+    void updateRecordToLiAn(@Param("id") String id, @Param("recordStatus") String recordStatus);
+
+    int recordFillForm(LawenforcementFillFormBO bo);
 }

+ 3 - 0
src/main/java/com/sooka/sponest/lawenforcement/record/service/ILawenforcementRecordService.java

@@ -2,6 +2,7 @@ package com.sooka.sponest.lawenforcement.record.service;
 
 import com.sooka.sponest.lawenforcement.device.domain.DeviceBO;
 import com.sooka.sponest.lawenforcement.record.domain.LawenforcementRecord;
+import com.sooka.sponest.lawenforcement.record.domain.bo.LawenforcementFillFormBO;
 import com.sooka.sponest.lawenforcement.record.domain.vo.LawenforcementRecordDetailVO;
 
 import java.util.List;
@@ -71,4 +72,6 @@ public interface ILawenforcementRecordService {
     int distributeRecord(LawenforcementRecord record);
 
     LawenforcementRecordDetailVO getDeatilsById(String id);
+
+    int recordFillForm(LawenforcementFillFormBO bo);
 }

+ 12 - 0
src/main/java/com/sooka/sponest/lawenforcement/record/service/impl/LawenforcementRecordServiceImpl.java

@@ -8,6 +8,7 @@ import com.sooka.sponest.lawenforcement.person.domain.LawenforcementPerson;
 import com.sooka.sponest.lawenforcement.person.mapper.LawenforcementPersonMapper;
 import com.sooka.sponest.lawenforcement.record.domain.LawenforcementRecord;
 import com.sooka.sponest.lawenforcement.record.domain.LawenforcementRecordLog;
+import com.sooka.sponest.lawenforcement.record.domain.bo.LawenforcementFillFormBO;
 import com.sooka.sponest.lawenforcement.record.domain.vo.LawenforcementRecordDetailVO;
 import com.sooka.sponest.lawenforcement.record.mapper.LawenforcementRecordMapper;
 import com.sooka.sponest.lawenforcement.record.service.ILawenforcementRecordService;
@@ -16,6 +17,7 @@ import org.apache.commons.collections4.MapUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -183,4 +185,14 @@ public class LawenforcementRecordServiceImpl implements ILawenforcementRecordSer
         LawenforcementRecordDetailVO detailvo = recordMapper.getDetailById(id);
         return detailvo;
     }
+
+    @Override
+    public int recordFillForm(LawenforcementFillFormBO bo) {
+        bo.setId(IdUtils.fastSimpleUUID());
+        bo.setCreateBy(SecurityUtils.getUserId().toString());
+        bo.setCreateName(SecurityUtils.getUsername());
+        bo.setCreateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
+        recordMapper.updateRecordToLiAn(bo.getRecordId(), "lawenforcement_type_7");
+        return recordMapper.recordFillForm(bo);
+    }
 }

+ 27 - 0
src/main/resources/mapper/lawenforcement/LawenforcementRecordMapper.xml

@@ -486,4 +486,31 @@
                  LEFT JOIN onest_monitor.centermonitor_t_camera crc on lrl.device_id = crc.camera_code
         WHERE lr.id = #{id}
     </select>
+
+    <update id="updateRecordToLiAn">
+        update lawenforcement_record set record_status = #{recordStatus}
+        where id = #{id}
+    </update>
+
+    <insert id="recordFillForm" parameterType="LawenforcementFillFormBO">
+        insert into lawenforcement_fillform
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+        <if test="id != null">id,</if>
+        <if test="recordId != null">record_id,</if>
+        <if test="createBy != null">create_by,</if>
+        <if test="createName != null">create_name,</if>
+        <if test="createTime != null">create_time,</if>
+        <if test="attachPath != null">attach_path,</if>
+        <if test="attachName != null">attach_name,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="recordId != null">#{recordId},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createName != null">#{createName},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="attachPath != null">#{attachPath},</if>
+            <if test="attachName != null">#{attachName},</if>
+        </trim>
+    </insert>
 </mapper>