瀏覽代碼

提交巡检

caojunjie 4 年之前
父節點
當前提交
79c6d1ed3b

+ 8 - 0
src/api/kaihe/domesticTrade/orderInformation.js

@@ -146,3 +146,11 @@ export function getName(data) {
     data: data
   })
 }
+//驳回删除
+
+export function reject(fId) {
+  return request({
+    url: '/khwarehouse/updateOrderMessage/deleteOrder?fId=' + fId,
+    method: 'get'
+  })
+}

+ 33 - 7
src/api/warehouseCheck/index.js

@@ -1,6 +1,6 @@
 import request from '@/utils/request'
 
-// 查询详情列表
+// 查询列表
 export function listCorps(query) {
     return request({
         url: 'warehouseBusiness/warehouseCheck/listWarehouseCheck',
@@ -9,17 +9,43 @@ export function listCorps(query) {
     })
 }
 // 删除
-export function delLog(query) {
+export function delLog(fId) {
     return request({
-        url: 'warehouseBusiness/warehouseCheck/delById',
+        url: 'warehouseBusiness/warehouseCheck/delById?fId='+ fId,
         method: 'delete',
-        params:query
     })
 }
-// 删除
+// 查询明细
 export function information(query) {
     return request({
-        url: 'warehouseBusiness/warehouseCheck/listWarehouseCheck',
-        method: 'get'
+        url: 'warehouseBusiness/warehouseCheck/list',
+        method: 'get',
+        params: {
+            fId: query
+        }
+    })
+}
+//修改
+export function updateLog(data) {
+    return request({
+        url: 'warehouseBusiness/warehouseCheck/update',
+        method: 'put',
+        data:data
+    })
+}
+//新增
+export function newlyAdded(data) {
+    return request({
+        url: 'warehouseBusiness/warehouseCheck/add',
+        method: 'post',
+        data:data
+    })
+}
+//修改
+export function savePicture(data) {
+    return request({
+        url: 'warehouseBusiness/warehouseCheck/updateDetail',
+        method: 'put',
+        data:data
     })
 }

+ 32 - 9
src/views/kaihe/domesticTrade/orderInformation/index.vue

@@ -1313,6 +1313,9 @@
                  @click="modifyApproval()"
       >审批
       </el-button>
+      <el-button v-if="!form.fMblno && form.fBillstatus === 4" type="danger" @click="rejectDeletion">
+        驳回并删除
+      </el-button>
       <el-button type="danger" :disabled="disappear" v-if="form.moneyStatus === 4 && current == before"
                  @click="revokeTwo('f_billstatus')"
       >撤销请核
@@ -1443,7 +1446,8 @@ import {
   getName,
   portInquiry,
   nameOfVessel,
-  voyageNumber
+  voyageNumber,
+  reject
 } from '@/api/kaihe/domesticTrade/orderInformation'
 import Global from '@/layout/components/global'
 import { getToken } from '@/utils/auth'
@@ -1788,7 +1792,28 @@ export default {
     })
   },
   methods: {
-
+    rejectDeletion(){
+      this.$confirm('驳回并删除, 是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(() => {
+        reject(this.form.fId).then(res =>{
+          if (res.code === 200) {
+            this.$message({
+              type: 'success',
+              message: '删除成功!'
+            });
+            this.cancelTwo()
+          }
+        })
+      }).catch(() => {
+        this.$message({
+          type: 'info',
+          message: '已取消'
+        });
+      });
+    },
     seleEt(scope) {
       console.log(scope)
       for (let item in this.cntrOptions) {
@@ -1856,9 +1881,7 @@ export default {
         title: '对账'
       }
       this.$router.push({ path: '/index' })
-      this.$store
-        .dispatch('tagsView/delView', view)
-        .then(({ visitedViews }) => {
+      this.$store.dispatch('tagsView/delView', view).then(({ visitedViews }) => {
           if (this.isActive(view)) {
             this.toLastView(visitedViews, view)
           }
@@ -2341,10 +2364,10 @@ export default {
         this.$message.error('请维护提单号')
         return false
       }
-      if (this.dataList.length === 0) {
-        this.$message.error('请维护箱信息')
-        return false
-      }
+      // if (this.dataList.length === 0) {
+      //   this.$message.error('请维护箱信息')
+      //   return false
+      // }
       if (res != 1 && this.form.fMblno || res != 1 && this.dataList.length != 0) {
         this.$router.push({ path: '/domesticTrade/myOrder' })
         this.modify = true

+ 298 - 49
src/views/warehouseBusiness/warehouseCheck/index.vue

@@ -27,9 +27,9 @@
             :default-time="['00:00:00', '23:59:59']">
         </el-date-picker>
       </el-form-item>
-      <el-form-item label="巡检人" prop="inspector">
+      <el-form-item label="巡检人" prop="fInspectorid">
         <el-input
-            v-model="queryParams.inspector"
+            v-model="queryParams.fInspectorid"
             placeholder="请输入巡检人"
             clearable
             size="small"
@@ -92,17 +92,17 @@
     </el-row>
 
     <el-table v-loading="loading" :data="logList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center" index="index"/>
+      <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="序号" type="index" width="50" fixed align="center"/>
       <el-table-column label="仓库名称" align="center" prop="fWarehousename"/>
-      <el-table-column label="巡检人" align="center" prop="inspector"/>
-      <el-table-column label="计划开始日期" align="center" prop="beginTime"/>
-      <el-table-column label="计划结束日期" align="center" prop="endTime"/>
+      <el-table-column label="巡检人" align="center" prop="fInspector"/>
+      <el-table-column label="计划开始日期" align="center" prop="fBeginTime"/>
+      <el-table-column label="计划结束日期" align="center" prop="fEndTime"/>
       <el-table-column label="制单人" align="center" prop="createBy"/>
       <el-table-column label="制单日期" align="center" prop="createTime"/>
       <el-table-column label="更新人" align="center" prop="updateBy"/>
       <el-table-column label="更新日期" align="center" prop="updateTime"/>
-      <el-table-column label="系统编号" align="center" prop="systemNum"/>
+      <el-table-column label="系统编号" align="center" prop="fSystemNum"/>
       <el-table-column label="备注" align="center" prop="remark"/>
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope"  style="width: 100px;">
@@ -133,55 +133,250 @@
     />
 
     <!-- 添加或修改入出库状态对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="80%" append-to-body>
+    <el-dialog :title="title" :visible.sync="open" width="80%" append-to-body :close-on-press-escape="false" :close-on-click-modal="false">
       <el-form ref="form" :model="form" :rules="rules" label-width="80px"
                style="display:flex;flex-wrap: wrap;justify-content: space-between">
-        <el-form-item label="仓库名称" prop="fPid">
-          <el-input v-model="form.fPid" style="width: 250px;" placeholder="请输入仓库名称"/>
+        <el-form-item label="仓库名称" prop="fWarehouseid">
+          <el-select
+              v-model="form.fWarehouseid"
+              filterable
+              placeholder="请选择仓库名称"
+          >
+            <el-option
+                v-for="(item, index) in warehouseOptions"
+                :key="index.fId"
+                :label="item.fName"
+                :value="item.fId"
+            ></el-option>
+          </el-select>
         </el-form-item>
-        <el-form-item label="巡检日期" prop="fPid">
-          <el-input v-model="form.fPid" style="width: 250px;" placeholder="请输入巡检日期"/>
+        <el-form-item label="巡检日期" prop="fInspectiondate">
+          <el-date-picker
+              v-model="form.fInspectiondate"
+              type="date"
+              value-format="yyyy-MM-dd"
+              placeholder="选择日期">
+          </el-date-picker>
         </el-form-item>
-        <el-form-item label="巡检人" prop="fPid">
-          <el-input v-model="form.fPid" style="width: 250px;" placeholder="请输入仓库名称"/>
+        <el-form-item label="巡检人" prop="fInspectorid">
+          <el-input
+              v-model="form.fInspectorid"
+              placeholder="请输入巡检人"
+              clearable
+              size="small"
+          />
         </el-form-item>
-      </el-form>
-      <el-form ref="form" :model="form" :rules="rules" label-width="50px">
         <el-form-item label="备注" prop="remark">
-          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容"/>
+          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" autosize/>
         </el-form-item>
       </el-form>
-      <el-card class="box-card">
-        <div slot="header" class="clearfix">
-          <span>巡检照片</span>
-          <!--          <el-button style="float: right; padding: 3px 0" type="text">操作按钮</el-button>-->
-        </div>
-        <div class="text item" style="display: flex;justify-content: space-between">
-          <img src="https://www.dmu.com.cn/images/banner/banner41.jpg?v=2" style="width: 20%;" alt="">
-          <img src="https://www.dmu.com.cn/images/banner/banner41.jpg?v=2" style="width: 20%;" alt="">
-          <img src="https://www.dmu.com.cn/images/banner/banner41.jpg?v=2" style="width: 20%;" alt="">
-          <img src="https://www.dmu.com.cn/images/banner/banner41.jpg?v=2" style="width: 20%;" alt="">
-        </div>
-      </el-card>
+      <div style="width: 100%;margin: 10px auto">
+        <el-button type="primary" size="mini" @click="inputDetails">录入明细</el-button>
+      </div>
+      <div style="width: 100%;">
+        <el-table
+            :data="formList"
+            style="width: 100%">
+          <el-table-column label="序号" type="index" width="50" fixed align="center"/>
+          <el-table-column label="仓库名称" align="center" prop="fWarehousename">
+            <template slot-scope="scope">
+              <el-select
+                  v-model="scope.row.fWarehouseid"
+                  filterable
+                  placeholder="请选择仓库名称"
+              >
+                <el-option
+                    v-for="(item, index) in warehouseOptions"
+                    :key="index.fId"
+                    :label="item.fName"
+                    :value="item.fId"
+                ></el-option>
+              </el-select>
+            </template>
+          </el-table-column>
+          <el-table-column label="巡检人" align="center" prop="fInspectorid">
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.fInspectorid" placeholder="请输入内容"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column label="计划日期" align="center" prop="fPlanneddate">
+            <template slot-scope="scope">
+              <el-date-picker
+                  style="width: 100%;"
+                  v-model="scope.row.fPlanneddate"
+                  value-format="yyyy-MM-dd"
+                  type="date"
+                  placeholder="选择日期">
+              </el-date-picker>
+            </template>
+          </el-table-column>
+          <el-table-column label="最新巡检日期" align="center" prop="fLatestinspectordate">
+            <template slot-scope="scope">
+              <el-date-picker
+                  style="width: 100%;"
+                  v-model="scope.row.fLatestinspectordate"
+                  value-format="yyyy-MM-dd"
+                  type="date"
+                  placeholder="选择日期">
+              </el-date-picker>
+            </template>
+          </el-table-column>
+          <el-table-column label="最新巡检人" align="center" prop="fLatestinspectorid">
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.fLatestinspectorid" placeholder="请输入内容"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column label="巡检记录" align="center">
+            <template slot-scope="scope"  style="width: 100px;">
+              <el-button
+                  size="mini"
+                  type="text"
+                  @click="pictureList(scope)"
+                  icon="el-icon-document"
+              >详情
+              </el-button>
+            </template>
+          </el-table-column>
+<!--          <el-table-column label="录入人" align="center" prop="createBy">-->
+<!--            <template slot-scope="scope">-->
+<!--              <el-input v-model="scope.row.createBy" placeholder="请输入内容"></el-input>-->
+<!--            </template>-->
+<!--          </el-table-column>-->
+<!--          <el-table-column label="录入日期" align="center" prop="createTime">-->
+<!--            <template slot-scope="scope">-->
+<!--              <el-date-picker-->
+<!--                  style="width: 100%;"-->
+<!--                  v-model="scope.row.createTime"-->
+<!--                  value-format="yyyy-MM-dd"-->
+<!--                  type="date"-->
+<!--                  placeholder="选择日期">-->
+<!--              </el-date-picker>-->
+<!--            </template>-->
+<!--          </el-table-column>-->
+<!--          <el-table-column label="更新人" align="center" prop="updateBy">-->
+<!--            <template slot-scope="scope">-->
+<!--              <el-input v-model="scope.row.updateBy" placeholder="请输入内容"></el-input>-->
+<!--            </template>-->
+<!--          </el-table-column>-->
+<!--          <el-table-column label="更新日期" align="center" prop="updateTime">-->
+<!--            <template slot-scope="scope">-->
+<!--              <el-date-picker-->
+<!--                  style="width: 100%;"-->
+<!--                  v-model="scope.row.updateTime"-->
+<!--                  value-format="yyyy-MM-dd"-->
+<!--                  type="date"-->
+<!--                  placeholder="选择日期">-->
+<!--              </el-date-picker>-->
+<!--            </template>-->
+<!--          </el-table-column>-->
+          <el-table-column label="备注" align="center" prop="remark">
+            <template slot-scope="scope">
+              <el-input v-model="scope.row.remark" placeholder="请输入备注"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+            <template slot-scope="scope"  style="width: 100px;">
+              <el-button
+                  size="mini"
+                  type="text"
+                  icon="el-icon-delete"
+              >移出
+              </el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button type="primary" @click="submitForm">保 存</el-button>
         <el-button @click="cancel">取 消</el-button>
       </div>
     </el-dialog>
+    <el-dialog
+        title="图片明细"
+        :visible.sync="opentwo"
+        append-to-body
+        width="70%">
+      <el-form ref="form" :model="twarehouseWarehousecheckdetailList" label-width="80px"
+               style="display:flex;flex-wrap: wrap;justify-content: space-between">
+        <el-form-item label="仓库名称" prop="fWarehouseid">
+          <el-select
+              v-model="twarehouseWarehousecheckdetailList.fWarehouseid"
+              filterable
+              placeholder="请选择仓库名称"
+              style="width: 200px;"
+          >
+            <el-option
+                v-for="(item, index) in warehouseOptions"
+                :key="index.fId"
+                :label="item.fName"
+                :value="item.fId"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="巡检日期" prop="fInspectiondate">
+          <el-date-picker
+              style="width: 200px;"
+              v-model="twarehouseWarehousecheckdetailList.fInspectionDate"
+              type="date"
+              value-format="yyyy-MM-dd"
+              placeholder="选择日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="巡检人" prop="fInspectorid">
+          <el-input
+              style="width: 200px;"
+              v-model="twarehouseWarehousecheckdetailList.fInspectorid"
+              placeholder="请输入巡检人"
+              clearable
+              size="small"
+          />
+        </el-form-item>
+        <el-form-item label="备注" prop="remark">
+          <el-input style="width: 200px;" v-model="twarehouseWarehousecheckdetailList.remark" type="textarea" placeholder="请输入内容" autosize/>
+        </el-form-item>
+      </el-form>
+      <div style="background-color: #1c84c6">
+        <el-upload
+            :headers="headers"
+            :action="uploadImgUrl"
+            :on-success="onSuccess"
+            list-type="picture-card"
+            :file-list="fileList"
+            :on-preview="handlePictureCardPreview"
+            :on-remove="handleRemove">
+          <i class="el-icon-plus"></i>
+        </el-upload>
+        <el-dialog :visible.sync="dVisible">
+          <img width="100%" :src="dialogImageUrl" alt="">
+        </el-dialog>
+      </div>
+      <span slot="footer" class="dialog-footer">
+    <el-button @click="opentwo = false">取 消</el-button>
+    <el-button type="primary" @click="preservationtwo">保 存2</el-button>
+  </span>
+    </el-dialog>
   </div>
 </template>
 
 <script>
-import {listCorps,delLog,information} from '@/api/warehouseCheck/index'
+import {listCorps,delLog,information,updateLog,newlyAdded,savePicture} from '@/api/warehouseCheck/index'
 import {listWarehousesss} from "@/api/basicdata/warehouse";
+import {getToken} from "@/utils/auth";
 
 export default {
   name: "Log",
   components: {},
   data() {
     return {
+      headers: {
+        Authorization: "Bearer " + getToken(),
+      },
+      uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/upload", // 上传的图片服务器地址
       warehouseOptions: [],
       plannedDate: [],
+      fileList:[],
+      dialogImageUrl: '',
+      dVisible:false,
       // 遮罩层
       loading: true,
       // 选中数组
@@ -192,35 +387,30 @@ export default {
       multiple: true,
       // 显示搜索条件
       showSearch: true,
+      pictureEist:[],
       // 总条数
       total: 0,
       // 入出库状态表格数据
       logList: [
-        {
-          warehouse: '途宝仓库-A1',
-          planned: '2021-04-07',
-          people: '张三',
-          remarks: '无异常'
-        }, {
-          warehouse: '途宝仓库-A2',
-          planned: '2021-04-07',
-          people: '张三',
-          remarks: '无异常'
-        }
       ],
       // 弹出层标题
       title: "",
       // 是否显示弹出层
       open: false,
+      opentwo: false,
       // 查询参数
       queryParams: {
         pageNum: 1,
         pageSize: 10,
       },
       // 表单参数
-      form: {},
+      form: {
+      },
+      formList:[],
       // 表单校验
-      rules: {}
+      rules: {},
+      twarehouseWarehousecheckdetailList:{},
+      picturefId:''
     };
   },
   created() {
@@ -230,15 +420,72 @@ export default {
     this.getList();
   },
   methods: {
+    onSuccess(response, file, fileList){
+      console.log(fileList)
+      this.pictureEist = fileList
+    },
+    handlePictureCardPreview(file) {
+      this.dialogImageUrl = file.url;
+      this.dVisible = true;
+    },
+    //移除图片
+    handleRemove(file, fileList) {
+      console.log(fileList);
+      this.pictureEist = fileList
+    },
+    //录入新行
+    inputDetails(){
+      this.formList.push({
+        fWarehousename:'',
+        latestInspector:'',
+        inspector:'',
+        plannedDate:'',
+        updateTime:'',
+        createBy:'',
+        createTime:'',
+        updateBy:'',
+        remark:'',
+      })
+    },
+    preservationtwo(){
+      let list = []
+      for (let item in this.pictureEist){
+        list.push({
+          fWarehouseid:this.twarehouseWarehousecheckdetailList.fWarehouseid,
+          fInspectionDate:this.twarehouseWarehousecheckdetailList.fInspectionDate,
+          fInspectorid:this.twarehouseWarehousecheckdetailList.fInspectorid,
+          remark:this.twarehouseWarehousecheckdetailList.remark,
+          fPhotosname:this.pictureEist[item].response.fileName,
+          fInspectionphotos:this.pictureEist[item].response.thumbnailUrl
+        })
+      }
+      for (let item in this.formList){
+        if (this.picturefId === this.formList[item].fId) this.formList[item].twarehouseWarehousecheckdetailList = list
+      }
+      this.form.twarehouseWarehousecheckitemsVOList = this.formList
+      console.log(this.form)
+      savePicture(this.form).then(res =>{
+        console.log(res)
+      })
+    },
+    pictureList(scope){
+      this.picturefId = scope.row.fId
+      this.opentwo = true
+    },
     //查看明细
     viewDetails(row){
-      information
+      information(row.fId).then(res =>{
+        this.open = true
+        this.formList = res.data.twarehouseWarehousecheckitemsVOList
+        delete res.data.twarehouseWarehousecheckitemsVOList
+        this.form = res.data
+      })
     },
     //拆分计划日期
     planDateMethod() {
       if (this.plannedDate) {
-        this.$set(this.queryParams, 'beginTime', this.plannedDate[0])
-        this.$set(this.queryParams, 'endTime', this.plannedDate[1])
+        this.$set(this.queryParams, 'fBegintime', this.plannedDate[0])
+        this.$set(this.queryParams, 'fEndTime', this.plannedDate[1])
       }
     },
     /** 查询入出库状态列表 */
@@ -307,14 +554,16 @@ export default {
     submitForm() {
       this.$refs["form"].validate(valid => {
         if (valid) {
+          let list = this.form
+          list.twarehouseWarehousecheckitemsVOList = this.formList
           if (this.form.fId != null) {
-            updateLog(this.form).then(response => {
+            updateLog(list).then(response => {
               this.msgSuccess("修改成功");
               this.open = false;
               this.getList();
             });
           } else {
-            addLog(this.form).then(response => {
+            newlyAdded(list).then(response => {
               this.msgSuccess("新增成功");
               this.open = false;
               this.getList();