소스 검색

3.0.84 修改资产搜索的界面。

YangZhiJie 1 년 전
부모
커밋
c29486509d
5개의 변경된 파일1671개의 추가작업 그리고 14개의 파일을 삭제
  1. 1 1
      package.json
  2. 1657 0
      src/components/customer/AssetInstanceSearchDetailV2.vue
  3. 1 1
      src/index.js
  4. 1 1
      src/router/index.js
  5. 11 11
      webpack.dev.js

+ 1 - 1
package.json

@@ -1,7 +1,7 @@
 {
   "name": "client-eam-v3",
   "description": "Leanwo Prodog Client",
-  "version": "3.0.82",
+  "version": "3.0.84",
   "author": "yangzhijie1488 <yangzhijie1488@163.com>",
   "scripts": {
     "ins": "npm install --registry=http://wuzhixin.vip:4873",

+ 1657 - 0
src/components/customer/AssetInstanceSearchDetailV2.vue

@@ -0,0 +1,1657 @@
+<template>
+  <div class="container-fluid">
+    <div>
+      <div class="row">
+        <div class="col-md-12">
+          <h1 class="page-header" style="margin-top: 10px; margin-bottom: 0px">
+            <AuthImage
+              :auth-src="
+                Common.getThumbnailImageSrc(
+                  assetClassName,
+                  showAssetInstance.imageName
+                )
+              "
+              class="image img-thumbnail"
+              style="width: 78px; height: 78px"
+              @click="
+                $refs.imagePreview.preview(
+                  assetClassName,
+                  showAssetInstance.imageName
+                )
+              "
+            />
+  
+            {{ $t("lang.AssetInstanceSearchDetail.assetCardDetails") }}
+          </h1>
+        </div>
+      </div>
+      <div class="row">
+        <div class="col-md-12 asset-detail">
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.ownerClient") }}:{{
+                showAssetInstance.clientName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.ownerDepartment") }}:{{
+                showAssetInstance.organizationName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.useClient") }}:{{
+                showAssetInstance.responseClientName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.useDepartment") }}:{{
+                showAssetInstance.responseOrganizationName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.assetName") }}:{{
+                showAssetInstance.name
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.assetNumber") }}:{{
+                showAssetInstance.assetNo
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.originalAssetNumber")
+              }}:{{ showAssetInstance.oldAssetNo }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.cardName") }}:{{
+                showAssetInstance.cardName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.cardNumber") }}:{{
+                showAssetInstance.no
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.barcode") }}:{{
+                showAssetInstance.barCode
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.epc") }}:{{
+                showAssetInstance.epc
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.noteName") }}:{{
+                showAssetInstance.nickName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.type") }}:{{
+                showAssetInstance.type
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.categoryName") }}:{{
+                showAssetInstance.categoryName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.projectName") }}:{{
+                showAssetInstance.projectItemName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.placeOfPlacement") }}:{{
+                showAssetInstance.savePosition
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.placementLocation")
+              }}:{{ showAssetInstance.locationName }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.originalValue") }}:{{
+                showAssetInstance.orginalValue
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.unitOfMeasurement")
+              }}:{{ showAssetInstance.computationUnitName }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.subscriber") }}:{{
+                showAssetInstance.applyPurchaseUserName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.purchaser") }}:{{
+                showAssetInstance.applyOrderUserName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.receiver") }}:{{
+                showAssetInstance.recipientUserName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.use") }}:{{
+                showAssetInstance.useUserName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.custodian") }}:{{
+                showAssetInstance.depositoryUserName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.personLiable") }}:{{
+                showAssetInstance.custodianName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.usageStatus") }}:{{
+                showAssetInstance.useStatusName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.quantity") }}:{{
+                showAssetInstance.quantity
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.validUntil") }}:{{
+                showAssetInstance.recentlyValidDate
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.technicalIndex") }}:{{
+                showAssetInstance.technicalIndex
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.waysToIncrease") }}:{{
+                showAssetInstance.increaseMethodName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.depreciationMethod")
+              }}:{{ showAssetInstance.depreciationMethodName }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.serviceMonths") }}:{{
+                showAssetInstance.estimateUsedMonth
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.startUseDate") }}:{{
+                showAssetInstance.depreciationStartDate
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.totalAmountOfWork") }}:{{
+                showAssetInstance.totalAmountOfWork
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.accruedMonth") }}:{{
+                showAssetInstance.depreciationMonths
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.netResidualValueRate")
+              }}:{{ showAssetInstance.reservedRate }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.netResidualValue") }}:{{
+                showAssetInstance.netSalvage
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.accumulatedDepreciation")
+              }}:{{ showAssetInstance.totalDepreciationValue }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.monthlyDepreciationRate")
+              }}:{{ showAssetInstance.monthDepreciationRate }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t(
+                  "lang.AssetInstanceSearchDetail.theAmountOfDepreciationIsWithdrawnThisMonth"
+                )
+              }}:{{
+                showAssetInstance.depreciationValueForCurrentMonth
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.netWorth") }}:{{
+                showAssetInstance.netValue
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.pictureURL") }}:{{
+                showAssetInstance.imageName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.invoicePictureAddress")
+              }}:{{ showAssetInstance.invoiceUrl }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.otherPictureWebsites")
+              }}:{{ showAssetInstance.otherImages }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.remarks") }}:{{
+                showAssetInstance.description
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t(
+                  "lang.AssetInstanceSearchDetail.necessaryToMakeAnAppointment"
+                )
+              }}:{{
+                showAssetInstance.isNeedAppointment == true
+                  ? $t("lang.AssetInstanceSearchDetail.true")
+                  : $t("lang.AssetInstanceSearchDetail.false")
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.needToMaintain") }}:{{
+                showAssetInstance.isNeedMaintain == true
+                  ? $t("lang.AssetInstanceSearchDetail.true")
+                  : $t("lang.AssetInstanceSearchDetail.false")
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.supplier") }}:{{
+                showAssetInstance.supplierStr
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.manufacturer") }}:{{
+                showAssetInstance.manufacturer
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.maintenanceUnit") }}:{{
+                showAssetInstance.maintenanceCompany
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.factoryNumber") }}:{{
+                showAssetInstance.leaveFactoryNo
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.detailedParameters")
+              }}:{{ showAssetInstance.detailParameter }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.operatingProcedures")
+              }}:{{ showAssetInstance.operationRules }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.purchaseDate") }}:{{
+                showAssetInstance.buyDate
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.financialEntryDate")
+              }}:{{ showAssetInstance.accountCreateDate }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.contractNo") }}:{{
+                showAssetInstance.contractNo
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.invoiceNumber") }}:{{
+                showAssetInstance.billNo
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.warrantyDeadline") }}:{{
+                showAssetInstance.warrantyDeadline
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.importTime") }}:{{
+                showAssetInstance.importDate
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{
+                $t("lang.AssetInstanceSearchDetail.accountingSubjects")
+              }}:{{ showAssetInstance.accountingSubjects }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.userInput") }}:{{
+                showAssetInstance.useUserNameInput
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.licensePlate") }}:{{
+                showAssetInstance.vehicleNo
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.selfNumbering") }}:{{
+                showAssetInstance.selfNo
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.computerName") }}:{{
+                showAssetInstance.computerName
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.ipAddress") }}:{{
+                showAssetInstance.ipAddress
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>{{ $t("lang.AssetInstanceSearchDetail.macAddress") }}:{{
+                showAssetInstance.macAddress
+              }}</strong>
+            </div>
+          </div>
+          <div class="col-md-3">
+            <div>
+              <strong>父设备名称:</strong><a-button type="link" @click="openParentCurd(showAssetInstance.parentId)">{{ showAssetInstance.parentName }}</a-button>
+            </div>
+          </div>
+        </div>
+      </div>
+  
+      <div class="row">
+        <div class="col-md-12 div-asset-info">
+          <ul id="myTab" class="nav nav-tabs">
+            <li class="active">
+              <a href="#asset-content-1" data-toggle="tab">{{
+                $t("lang.AssetInstanceSearchDetail.lifeCycle")
+              }}</a>
+            </li>
+            <!-- <li>
+                <a href="#asset-content-2" data-toggle="tab">{{
+                  $t("lang.AssetInstanceSearchDetail.currentLocation")
+                }}</a>
+              </li> -->
+            <li>
+              <a href="#asset-content-3" data-toggle="tab">{{
+                $t("lang.AssetInstanceSearchDetail.historicalPosition")
+              }}</a>
+            </li>
+            <!-- <li>
+                <a href="#asset-content-5" data-toggle="tab">{{
+                  $t("lang.AssetInstanceSearchDetail.historicalPosition1")
+                }}</a>
+              </li> -->
+            <li>
+              <a href="#asset-content-4" data-toggle="tab">{{
+                $t("lang.AssetInstanceSearchDetail.inAndOutRecords")
+              }}</a>
+            </li>
+            <li @click="queryAssetChildren">
+              <a href="#asset-content-6" data-toggle="tab">子资产清单</a>
+            </li>
+          </ul>
+          <div class="tab-content div-asset-info">
+            <div id="asset-content-1" class="tab-pane fade in active">
+              <div v-if="historyEvents != null" class="row div-history-event">
+                <div
+                  v-for="item in historyEvents"
+                  :key="item.id"
+                  class="media col-md-12"
+                >
+                  <div class="media-left">
+                    <a href="javascript:void(0);">
+                      <img
+                        class="media-object media-img img-thumbnail"
+                        :src="getHistoryIconSrc(item.title)"
+                      />
+                    </a>
+                  </div>
+                  <div class="media-body">
+                    <h4 class="media-heading">{{ item.title }}</h4>
+                    <p class="event-time">
+                      {{ $t("lang.AssetInstanceSearchDetail.time") }}:
+                      {{ item.eventDate }}
+                    </p>
+                    <p>{{ item.content }}</p>
+                  </div>
+                </div>
+              </div>
+            </div>
+            <!-- <div id="asset-content-2" class="tab-pane fade in">
+                <p>{{ $t("lang.AssetInstanceSearchDetail.currentLocation") }}</p>
+              </div> -->
+            <div id="asset-content-3" class="tab-pane fade in">
+              <div class="form form-inline time-box">
+                <div class="form-group">
+                  <label>{{
+                    $t("lang.AssetInstanceSearchDetail.startTime")
+                  }}</label>
+                  <DateTime v-model="startDate" name="datetime" />
+                </div>
+                <div class="form-group">
+                  <label>{{
+                    $t("lang.AssetInstanceSearchDetail.endTime")
+                  }}</label>
+                  <DateTime v-model="endDate" name="datetime" />
+                </div>
+                <button
+                  type="button"
+                  class="btn btn-default"
+                  @click="getAssetImageInfosByEpc"
+                >
+                  {{ $t("lang.AssetInstanceSearchDetail.determine") }}
+                </button>
+              </div>
+              <div class="table-responsive">
+                <table class="table table-striped table-bordered">
+                  <thead>
+                    <tr height="40px">
+                      <th>
+                        {{ $t("lang.AssetInstanceSearchDetail.serialNumber") }}
+                      </th>
+                      <th>{{ $t("lang.AssetInstanceSearchDetail.time") }}</th>
+                      <th>{{ $t("lang.AssetInstanceSearchDetail.place") }}</th>
+                      <th>
+                        {{ $t("lang.AssetInstanceSearchDetail.picture") }}
+                      </th>
+                    </tr>
+                  </thead>
+                  <tbody>
+                    <tr v-for="(item, index) in imageInfos" :key="item.id">
+                      <td>{{ index + 1 }}</td>
+                      <td>{{ item.date }}</td>
+                      <td>{{ item.location }}</td>
+                      <td>
+                        <button
+                          class="btn btn-primary"
+                          @click="showImageUrl(item)"
+                        >
+                          {{ $t("lang.AssetInstanceSearchDetail.picture") }}
+                        </button>
+                      </td>
+                    </tr>
+                  </tbody>
+                </table>
+              </div>
+              <div>
+                <div class="form-group">
+                  <div class="pull-right">
+                    <Pagination
+                      v-if="pagination2.last_page > 0"
+                      :pagination="pagination2"
+                      :callback="getAssetImageInfosByEpc"
+                    />
+                  </div>
+                </div>
+              </div>
+            </div>
+            <!-- <div id="asset-content-5" class="tab-pane fade in">
+                <div class="form form-inline time-box">
+                  <div class="form-group">
+                    <label>{{
+                      $t("lang.AssetInstanceSearchDetail.startTime")
+                    }}</label>
+                    <DateTime
+                      v-model="eventOriginalStartDate"
+                      name="datetime"
+                    />
+                  </div>
+                  <div class="form-group">
+                    <label>{{
+                      $t("lang.AssetInstanceSearchDetail.endTime")
+                    }}</label>
+                    <DateTime
+                      v-model="eventOriginalEndDate"
+                      name="datetime"
+                    />
+                  </div>
+                  <div class="form-group">
+                    <button
+                      type="button"
+                      class="btn btn-default"
+                      @click="queryPageSingleEpcOriginalByTime()"
+                    >
+                      {{ $t("lang.AssetInstanceSearchDetail.determine") }}
+                    </button>
+                  </div>
+                </div>
+                <div class="table-responsive">
+                  <table class="table table-striped table-bordered">
+                    <thead>
+                      <tr height="40px">
+                        <th>
+                          {{ $t("lang.AssetInstanceSearchDetail.serialNumber") }}
+                        </th>
+                        <th>位置</th>
+                        <th>{{ $t("lang.AssetInstanceSearchDetail.time") }}</th>
+                        <th>
+                          {{ $t("lang.AssetInstanceSearchDetail.enterTime") }}
+                        </th>
+                        <th>
+                          {{ $t("lang.AssetInstanceSearchDetail.leaveTime") }}
+                        </th>
+                      </tr>
+                    </thead>
+                    <tbody>
+                      <tr v-if="queryPageSingleEpcFilterByTimeErrorMessage != null && queryPageSingleEpcFilterByTimeErrorMessage.length > 0">
+                        <td colspan="5">{{ queryPageSingleEpcFilterByTimeErrorMessage }}</td>
+                      </tr>
+                      <tr v-for="(item, index) in eventFilters" :key="item.id">
+                        <td>
+                          {{
+                            index +
+                              1 +
+                              (_self.pagination3.current_page - 1) *
+                              _self.pagination3.per_page
+                          }}
+                        </td>
+                        <td>{{ item.locationNo }}</td>
+                        <td>{{ item.enterTime }}</td>
+                        <td>{{ item.enterTime }}</td>
+                        <td>{{ item.leaveTime }}</td>
+                      </tr>
+                    </tbody>
+                  </table>
+                </div>
+                <div>
+                  <div class="form-group">
+                    <div class="pull-right">
+                      <VueBootstrapPagination
+                        v-if="pagination3.last_page > 0"
+                        :pagination="pagination3"
+                        :callback="queryPageSingleEpcOriginalByTime"
+                      />
+                    </div>
+                  </div>
+                </div>
+              </div> -->
+            <div id="asset-content-4" class="tab-pane fade in">
+              <div class="form form-inline time-box">
+                <div class="form-group">
+                  <label>{{
+                    $t("lang.AssetInstanceSearchDetail.startTime")
+                  }}</label>
+                  <DateTime v-model="searchStartDate" name="datetime" />
+                </div>
+                <div class="form-group">
+                  <label>{{
+                    $t("lang.AssetInstanceSearchDetail.endTime")
+                  }}</label>
+                  <DateTime v-model="searchEndDate" name="datetime" />
+                </div>
+                <button
+                  type="button"
+                  class="btn btn-default"
+                  @click="getAssetInstanceRfidRecordByDate"
+                >
+                  {{ $t("lang.AssetInstanceSearchDetail.determine") }}
+                </button>
+              </div>
+              <div class="table-responsive">
+                <table class="table table-striped table-bordered">
+                  <thead>
+                    <tr height="40px">
+                      <th>
+                        {{ $t("lang.AssetInstanceSearchDetail.serialNumber") }}
+                      </th>
+                      <th>
+                        {{ $t("lang.AssetInstanceSearchDetail.scanTime") }}
+                      </th>
+                      <th>
+                        {{ $t("lang.AssetInstanceSearchDetail.scanner") }}
+                      </th>
+                      <th>
+                        {{ $t("lang.AssetInstanceSearchDetail.position") }}
+                      </th>
+                      <th>{{ $t("lang.AssetInstanceSearchDetail.type") }}</th>
+                      <th width="80px">
+                        {{ $t("lang.AssetInstanceSearchDetail.picture") }}
+                      </th>
+                    </tr>
+                  </thead>
+                  <tbody>
+                    <tr
+                      v-for="(item, index) in assetInstanceRfidRecords"
+                      :key="item.id"
+                    >
+                      <td>
+                        {{
+                          index +
+                            1 +
+                            (pagination.current_page - 1) * pagination.per_page
+                        }}
+                      </td>
+                      <td>{{ item.scanDate }}</td>
+                      <td>{{ item.scanUserName }}</td>
+                      <td>{{ item.position }}</td>
+                      <td>{{ item.type }}</td>
+                      <td>
+                        <AuthImage
+                          :auth-src="
+                            getRecordPicture(item.position, item.image)
+                          "
+                          style="width: 80px; height: 50px"
+                          @click="getImage(item.position, item.image)"
+                        />
+                      </td>
+                    </tr>
+                  </tbody>
+                </table>
+              </div>
+              <div>
+                <div class="form-group">
+                  <div class="pull-left">
+                    {{ $t("lang.AssetInstanceSearchDetail.totalQueries")
+                    }}<b>{{ pagination.total }}</b>{{ $t("lang.AssetInstanceSearchDetail.strip")
+                    }}{{ $t("lang.AssetInstanceSearchDetail.data") }}
+                  </div>
+                  <div class="pull-right">
+                    <VueBootstrapPagination
+                      v-if="pagination.last_page > 0"
+                      :pagination="pagination"
+                      :callback="getAssetInstanceRfidRecord"
+                    />
+                  </div>
+                </div>
+              </div>
+            </div>
+            <div id="asset-content-6" class="tab-pane fade in">
+              <div style="margin-bottom: 8px">
+                <label>资产名称:</label><a-input
+                  v-model:value="childrenName"
+                  style="width: 20%"
+                  @press-enter="queryAssetChildren"
+                />
+                <label>资产编号:</label><a-input
+                  v-model:value="childrenNo"
+                  style="width: 20%"
+                  @press-enter="queryAssetChildren"
+                />
+                <label>唯一识别号:</label><a-input
+                  v-model:value="childrenNumber"
+                  style="width: 20%"
+                  @press-enter="queryAssetChildren"
+                />
+                <button
+                  type="button"
+                  class="btn btn-default"
+                  style="margin-top: -6px"
+                  @click="queryAssetChildren"
+                >
+                  查询
+                </button>
+              </div>
+              <div class="table-responsive" style="height: 400px">
+                <table
+                  style="overflow: scroll; overflow-y: auto"
+                  class="table table-striped table-bordered"
+                >
+                  <thead>
+                    <tr height="40px">
+                      <th>序号</th>
+                      <th>资产名称</th>
+                      <th>资产编号</th>
+                      <th>规格型号</th>
+                      <th>唯一识别号</th>
+                    </tr>
+                  </thead>
+                  <tbody>
+                    <tr
+                      v-for="(item, index) in allAssetChildren"
+                      :key="item.id"
+                      @dblclick="openCurdWindow(item)"
+                    >
+                      <td>
+                        {{
+                          index +
+                            1 +
+                            (pagination.current_page - 1) * pagination.per_page
+                        }}
+                      </td>
+                      <td>{{ item.assetInstanceName }}</td>
+                      <td>{{ item.assetNo }}</td>
+                      <td>{{ item.type }}</td>
+                      <td>{{ item.uniqueNumber }}</td>
+                    </tr>
+                  </tbody>
+                </table>
+              </div>
+            </div>
+          </div>
+        </div>
+      </div>
+    </div>
+    <Modal v-model:show="modal" large="true" @cancel="modal = false">
+      <template #header> 历史图片 </template>
+      <div class="rowTest">
+        <div
+          v-for="item in imageUrlTest"
+          :key="item.id"
+          style="width: 200px; height: 200px"
+        >
+          <img
+            :authSrc="showThumbnailImage(item)"
+            class="m-image"
+            style="width: 200px; height: 200px"
+            @click="$refs.imagePreview.previewImage(showImage(item))"
+          />
+        </div>
+      </div>
+    </Modal>
+  
+    <ImagePreview ref="imagePreview" />
+    <Loading v-if="loading" />
+  </div>
+</template>
+  
+<script>
+import Common from '../../common/Common.js';
+import { Notify, Uuid } from 'pc-component-v3';
+import AuthImage from '../../widget/AuthImage.vue';
+import dayjs from 'dayjs';
+  
+import AssetInstanceRfidRecordResource from '../../api/asset/AssetInstanceRfidRecordResource.js';
+  
+export default {
+  components: {
+    AuthImage,
+  },
+  data: function () {
+    this.Common = Common;
+    return {
+      //历史图片分页参数
+      pagination2: {
+        total: 0,
+        per_page: Common.pageSize, // required
+        current_page: 1, // required
+        last_page: 1, // required
+        from: 1,
+        to: 1, // required
+      },
+      showPager: false, // 是否显示分页
+      assetInstances: [],
+      assetClassName: 'com.leanwo.prodog.asset.model.AssetInstance',
+      showAssetInstance: '',
+      activeContent: 1,
+      imageInfos: [],
+      historyEvents: [],
+      imageServerBaseUrl: '',
+      startDate: '',
+      endDate: '',
+      searchStartDate: '',
+      searchEndDate: '',
+      eventOriginalStartDate: '',
+      eventOriginalEndDate: '',
+      imageUrlTest: [],
+      pagination: {
+        total: 0,
+        per_page: Common.pageSize, // required
+        current_page: 1, // required
+        last_page: 0, // required
+      },
+      // pagination3: {
+      //   total: 0,
+      //   per_page: Common.pageSize, // required
+      //   current_page: 1, // required
+      //   last_page: 0, // required
+      // },
+      assetInstanceRfidRecords: [],
+      eventFilters: [],
+      loading: false,
+      modal: false,
+      queryPageSingleEpcFilterByTimeErrorMessage: 0,
+      childrenNo: '',
+      childrenName: '',
+      childrenNumber: '',
+      assetInstanceId: '',
+      allAssetChildren: [],
+    };
+  },
+  
+  computed: {},
+  
+  watch: {},
+  
+  mounted: function () {
+    var _self = this;
+    _self.assetInstanceId = _self.$route.query.assetInstanceId;
+    _self.findAssetInstance(_self.assetInstanceId);
+    _self.getEventOriginalEndDate();
+    this.getCameraNo();
+    $('#right-container').css('background-color', '#ffffff');
+  },
+  
+  beforeUnmount: function () {
+    $('#right-container').css('background-color', '#f7f7f7');
+  },
+  
+  methods: {
+    // 查询子资产清单
+    queryAssetChildren: function () {
+      const _self = this;
+      const params = {
+        assetNo: _self.childrenNo,
+        uniqueNumber: _self.childrenNumber,
+        assetInstanceName: _self.childrenName,
+        assetInstanceId: _self.assetInstanceId,
+      };
+      $.ajax({
+        url: Common.getApiURL(
+          'AssetInstanceResource/queryChildAssetInstanceByParent',
+        ),
+        type: 'post',
+        data: JSON.stringify(params),
+        contentType: 'application/json',
+        beforeSend: function (request) {
+          Common.addTokenToRequest(request);
+        },
+        success: function (data) {
+          if (data.errorCode === 0) {
+            _self.allAssetChildren = data.datas;
+          } else {
+            Notify.error('查询错误', data.errorMessage, true);
+          }
+        },
+        error: function (XMLHttpRequest, textStatus, errorThrown) {
+          Common.processException(XMLHttpRequest, textStatus, errorThrown);
+        },
+      });
+    },
+    /**
+       * 打开资产卡片的CURD窗口
+       */
+    openParentCurd: function (parentId) {
+      if(parentId){
+        let url = Common.getRedirectUrl(
+          '#/desktop/window/window-read/view/040701/0/' +
+            parentId +
+              '?currPage=1&currIndex=1&totalCount=1&uuid=' +
+              Uuid.createUUID(),
+        );
+        window.open(url, '资产卡片');
+      }
+    },
+    openCurdWindow: function (assetInstance) {
+      let url = Common.getRedirectUrl(
+        '#/desktop/window/window-read/view/040701/0/' +
+            assetInstance.assetInstanceId +
+            '?currPage=1&currIndex=1&totalCount=1&uuid=' +
+            Uuid.createUUID(),
+      );
+      window.open(url, '资产卡片');
+    },
+    getImage: function (position, imageName) {
+      // const url = this.showBigImage(className, imageName);
+      let encodedImageName = imageName.replace(/\\/g, '%5C');
+      let url = `api/CaptureResource/getPropassPicture?position=${position}&image=${encodedImageName}`;
+      this.$refs.imagePreview.preview(url);
+    },
+    getEventOriginalEndDate: function () {
+      const _self = this;
+      // 前一个月的时间
+      var wdate = new Date();
+      wdate.setMonth(wdate.getMonth() - 1);
+      var y = wdate.getFullYear();
+      var m =
+          wdate.getMonth() + 1 < 10
+            ? '0' + (wdate.getMonth() + 1)
+            : wdate.getMonth() + 1;
+      var d = wdate.getDate() < 10 ? '0' + wdate.getDate() : wdate.getDate();
+      var h =
+          (wdate.getHours() < 10 ? '0' + wdate.getHours() : wdate.getHours()) +
+          ':';
+      var mm =
+          (wdate.getMinutes() < 10
+            ? '0' + wdate.getMinutes()
+            : wdate.getMinutes()) + ':';
+      var dd =
+          wdate.getSeconds() < 10 ? '0' + wdate.getSeconds() : wdate.getSeconds();
+      var formatwdate = y + '-' + m + '-' + d + ' ' + h + mm + dd;
+      console.log('前一个月的时间' + formatwdate);
+      _self.eventOriginalEndDate = dayjs().format('YYYY-MM-DD HH:mm:ss');
+      _self.eventOriginalStartDate = formatwdate;
+    },
+  
+    //放大图片
+    enlargeImg: function (event, item) {
+      var _self = this;
+      var imageSrc = Common.getFileServerUrl() + 'Files\\UsbCamera\\' + item;
+      // eslint-disable-next-line
+        var bgstr =
+          // eslint-disable-next-line
+          '<div id="ImgZoomInBG" style=" background:#000000; filter:Alpha(Opacity=70); opacity:0.7; position:fixed; left:0; top:0; z-index:10000; width:100%; height:100%; display:none;"><iframe src="about:blank" frameborder="5px" scrolling="yes" style="width:100%; height:100%;"></iframe></div>';
+        //				alert($(event.target).attr('src'));
+  
+      var imgstr =
+          '<img id="ImgZoomInImage" src="' +
+          imageSrc +
+          '" onclick=$(\'#ImgZoomInImage\').hide();$(\'#ImgZoomInBG\').hide(); style="cursor:pointer; display:none; position:absolute; z-index:10001;" />';
+      if ($('#ImgZoomInBG').length < 1) {
+        $('body').append(bgstr);
+      }
+      if ($('#ImgZoomInImage').length < 1) {
+        $('body').append(imgstr);
+      } else {
+        $('#ImgZoomInImage').attr('authSrc', imageSrc);
+      }
+      //alert($(window).scrollLeft());
+      //alert( $(window).scrollTop());
+      $('#ImgZoomInImage').css(
+        'left',
+        $(window).scrollLeft() +
+            ($(window).width() - $('#ImgZoomInImage').width()) / 2,
+      );
+      $('#ImgZoomInImage').css(
+        'top',
+        $(window).scrollTop() +
+            ($(window).height() - $('#ImgZoomInImage').height()) / 2,
+      );
+      $('#ImgZoomInBG').show();
+      $('#ImgZoomInImage').show();
+    },
+  
+    findAssetInstance: function (assetInstanceId) {
+      var _self = this;
+      $.ajax({
+        url: Common.getApiURL('AssetInstanceResource/findAssetInstanceById1'),
+        type: 'post',
+        data: JSON.stringify({
+          assetInstanceId: assetInstanceId,
+        }),
+        contentType: 'application/json',
+        beforeSend: function (request) {
+          Common.addTokenToRequest(request);
+        },
+        success: function (data) {
+          if (data.errorCode === 0) {
+            _self.showItem(data.data);
+          } else {
+            Notify.error('查询错误', data.errorMessage, true);
+          }
+        },
+        error: function (XMLHttpRequest, textStatus, errorThrown) {
+          Common.processException(XMLHttpRequest, textStatus, errorThrown);
+        },
+      });
+    },
+  
+    /**
+       * 显示资产卡片详细信息
+       */
+    showItem: function (assetInstance) {
+      this.showAssetInstance = assetInstance;
+      // 查询生命周期数据
+      this.getHistoryEvent();
+  
+      // 查询历史位置
+      this.getAssetImageInfosByEpc();
+  
+      // 查询进出记录
+      this.getAssetInstanceRfidRecord();
+  
+      // 查询历史位置1
+      // this.queryPageSingleEpcOriginalByTime();
+    },
+  
+    // 查询历史位置
+    getAssetImageInfosByEpc: function () {
+      var _self = this;
+      var sendData = {
+        epc: _self.showAssetInstance.epc,
+        start:
+            (_self.pagination2.current_page - 1) * _self.pagination2.per_page,
+        length: _self.pagination2.per_page,
+      };
+      if (_self.startDate != null && _self.startDate.length > 0) {
+        sendData.startDate = _self.startDate;
+      }
+      if (_self.endDate != null && _self.endDate.length > 0) {
+        sendData.endDate = _self.endDate;
+      }
+      $.ajax({
+        url: Common.getApiURL('AssetInstanceResource/getAssetImageInfosByEpc'),
+        type: 'post',
+        dataType: 'json',
+        data: sendData,
+        beforeSend: function (request) {
+          Common.addTokenToRequest(request);
+        },
+        success: function (data) {
+          if (data.errorCode === 0) {
+            _self.imageInfos = data.datas;
+            _self.pagination2.total = data.total;
+            _self.pagination2.last_page = Math.ceil(
+              _self.pagination2.total / _self.pagination2.per_page,
+            );
+          } else {
+            Notify.error('查询错误', data.errorMessage, true);
+          }
+        },
+        error: function (XMLHttpRequest, textStatus, errorThrown) {
+          Common.processException(XMLHttpRequest, textStatus, errorThrown);
+        },
+      });
+    },
+  
+    /**
+       * 查询资产进出数据
+       * @author LeiGuoXian
+       * @date 2020-07-26
+       */
+    getAssetInstanceRfidRecord: function () {
+      var _self = this;
+      var assetInstanceRfidRecordSearchDto = {
+        epc: _self.showAssetInstance.epc,
+        startDate: _self.searchStartDate,
+        endDate: _self.searchEndDate,
+        start: (_self.pagination.current_page - 1) * _self.pagination.per_page,
+        length: _self.pagination.per_page,
+      };
+      AssetInstanceRfidRecordResource.getAssetInstanceRfidRecord(
+        assetInstanceRfidRecordSearchDto,
+      ).then(
+        successData => {
+          if (successData) {
+            _self.assetInstanceRfidRecords = successData.dataList;
+            _self.pagination.total = successData.totalSize;
+            _self.pagination.last_page = Math.ceil(
+              _self.pagination.total / _self.pagination.per_page,
+            );
+          }
+        },
+        errorData => {
+          Common.processException(errorData);
+        },
+      );
+    },
+  
+    /**
+       * 根据开始时间结束时间进行查询
+       * @author LeiGuoXian
+       * @date 2020-07-26
+       */
+    getAssetInstanceRfidRecordByDate: function () {
+      var _self = this;
+      _self.pagination.current_page = 1;
+      _self.getAssetInstanceRfidRecord();
+    },
+  
+    //去掉地点相同的位置,保留最后出现的
+    getUniqueImageInfos: function (data) {
+      var arr = [];
+      for (var i = 0; i < data.length; i++) {
+        var newItem = data[i];
+        var newLocation = newItem.location;
+  
+        var hasSameLocation = false;
+        for (var j = 0; j < arr.length; j++) {
+          var oldItem = arr[j];
+          var oldLocation = oldItem.location;
+          if (oldLocation == newLocation) {
+            hasSameLocation = true;
+            break;
+          }
+        }
+  
+        var arrLen = arr.length;
+        var lastLocation = undefined;
+        if (arrLen >= 1) {
+          lastLocation = arr[arrLen - 1].location;
+        }
+  
+        if (!hasSameLocation) {
+          arr.push(newItem);
+        } else if (hasSameLocation && newLocation != lastLocation) {
+          arr.push(newItem);
+        } else {
+          var oldDate = new Date(arr[arrLen - 1].date);
+          var newDate = new Date(newItem.date);
+          if (newDate > oldDate) {
+            arr[arrLen - 1].date = newItem.date;
+            arr[arrLen - 1].imageName = newItem.imageName;
+            arr[arrLen - 1].id = newItem.id;
+          }
+        }
+      }
+      return arr;
+    },
+  
+    callbackFun: function () {
+      if (this.showAssetInstance == undefined || this.showAssetInstance == '') {
+        return;
+      }
+      this.showItem(this.showAssetInstance);
+    },
+  
+    /**
+       * 返回缩略图的路径
+       */
+    showThumbnailImage: function (imageName) {
+      //return this.imageServerBaseUrl + "\\" + imageName;
+      //usb摄像头
+      var newImages = imageName.split('\\');
+      var newImage = newImages[1];
+      var newFile = newImages[0];
+      console.log(newFile + newImage);
+      //return Common.getFileServerUrl() + "Files\\UsbCamera\\" + imageName;
+      return (
+        Common.getFileServerUrl() +
+          'Files\\UsbCamera\\' +
+          newFile +
+          '\\thumbnail\\' +
+          newImage
+      );
+    },
+  
+    getRecordPicture: function (position, imageName) {
+      let encodedImageName = imageName.replace(/\\/g, '%5C');
+      let url = `api/CaptureResource/getPropassPicture?position=${position}&image=${encodedImageName}`;
+      return url;
+    },
+  
+    /**
+       * 返回缩略图的路径
+       */
+    showRfidRecordThumbnailImage: function (className, imageName) {
+      if (imageName == null) {
+        return;
+      }
+  
+      // var accountId = localStorage.getItem('#accountId');
+      // var url1 = imageName.substring(0, imageName.indexOf('/'));
+      // var url2 = imageName.substring(imageName.indexOf('/'), imageName.length);
+      // return (
+      //   Common.getFileServerUrl() +
+      //   'Files/' +
+      //   accountId +
+      //   '/Images/' +
+      //   className +
+      //   '/' +
+      //   url1 +
+      //   '/thumbnail' +
+      //   url2
+      // );
+    },
+    /**
+       * 返回预览图的路径
+       */
+    showBigImage: function (className, imageName) {
+      if (imageName == null) {
+        return;
+      }
+      var accountId = localStorage.getItem('#accountId');
+      var url1 = imageName.substring(0, imageName.indexOf('/'));
+      var url2 = imageName.substring(imageName.indexOf('/'), imageName.length);
+      return (
+        Common.getFileServerUrl() +
+          'Files/' +
+          accountId +
+          '/Images/' +
+          className +
+          '/' +
+          url1 +
+          url2
+      );
+    },
+  
+    /**
+       * 返回大图的路径
+       */
+    showImage: function (imageName) {
+      //return this.imageServerBaseUrl + "\\" + imageName;
+      //usb摄像头
+      var newImages = imageName.split('\\');
+      var newImage = newImages[1];
+      var newFile = newImages[0];
+      console.log(newFile + newImage);
+      return Common.getFileServerUrl() + 'Files\\UsbCamera\\' + imageName;
+      // return Common.getFileServerUrl() + "Files\\UsbCamera\\" + newFile + "\\thumbnail\\" + newImage;
+    },
+  
+    //显示九张抓拍图片
+    showImageUrl: function (item) {
+      var _self = this;
+      $.ajax({
+        url: Common.getApiURL('AssetInstanceResource/getImageUrlByAsset'),
+        type: 'GET',
+        dataType: 'json',
+        data: {
+          assetEpc: _self.showAssetInstance.epc,
+          readerResultId: item.id,
+        },
+        beforeSend: function (request) {
+          Common.addTokenToRequest(request);
+        },
+        success: function (data) {
+          if (data.errorCode === 0) {
+            _self.imageUrlTest = data.datas;
+          } else {
+            Notify.error('查询错误', data.errorMessage, true);
+          }
+  
+          _self.modal = true;
+        },
+        error: function (XMLHttpRequest, textStatus, errorThrown) {
+          Common.processException(XMLHttpRequest, textStatus, errorThrown);
+        },
+      });
+    },
+    /**
+       * 查询生命周期
+       */
+    getHistoryEvent: function () {
+      var _self = this;
+      $.ajax({
+        url: Common.getApiURL('AssetInstanceResource/getHistoryEvent'),
+        type: 'GET',
+        dataType: 'json',
+        data: {
+          assetInstanceId: _self.showAssetInstance.id,
+        },
+        beforeSend: function (request) {
+          Common.addTokenToRequest(request);
+        },
+        success: function (data) {
+          if (data.errorCode === 0) {
+            _self.historyEvents = data.datas;
+          } else {
+            Notify.error('查询错误', data.errorMessage, true);
+          }
+        },
+        error: function (XMLHttpRequest, textStatus, errorThrown) {
+          Common.processException(XMLHttpRequest, textStatus, errorThrown);
+        },
+      });
+    },
+    // 获取图标
+    getHistoryIconSrc: function (title) {
+      var iconSrc = '/static/assets/client-eam/image-asset-instance-change/';
+      switch (title) {
+      case '资产盘点':
+        iconSrc += 'inventory.png';
+        break;
+      case '资产归还':
+        iconSrc += 'stockin.png';
+        break;
+      case '资产领用':
+        iconSrc += 'stockout.png';
+        break;
+      case '资产报失':
+        iconSrc += 'lost.png';
+        break;
+      case '资产报失找回':
+        iconSrc += 'lostReteieve.png';
+        break;
+      case '资产保养':
+        iconSrc += 'maintain.png';
+        break;
+      case '资产维修':
+        iconSrc += 'repair.png';
+        break;
+      case '资产卡片报废':
+        iconSrc += 'scrap.png';
+        break;
+      case '资产计量':
+        iconSrc += 'count.png';
+        break;
+      case '类别调整':
+        iconSrc += 'category.png';
+        break;
+      case '资产基础信息调整':
+        iconSrc += 'assetInstance.png';
+        break;
+      case '位置调整':
+        iconSrc += 'assetLocation.png';
+        break;
+      case '部门转移':
+        iconSrc += 'organization.jpg';
+        break;
+      case '项目调整':
+        iconSrc += 'projectAdjust.png';
+        break;
+      case '资产编号调整':
+        iconSrc += 'numberAdjustment.png';
+        break;
+      case '残值率调整':
+        iconSrc += 'resizingRateAdjustment.png';
+        break;
+      case '折旧方法调整':
+        iconSrc += 'depreciationMethodAdjustment.png';
+        break;
+      case '人员调整':
+        iconSrc += 'personnelAdjustment.png';
+        break;
+      case '原值减少':
+        iconSrc += 'originalCostReduction.png';
+        break;
+      case '原值增加':
+        iconSrc += 'originalCostIncreases.png';
+        break;
+      }
+      return iconSrc;
+    },
+  
+    getCameraNo: function () {
+      var _self = this;
+      $.ajax({
+        url: Common.getApiURL('OAConfigResource/queryConfig'),
+        type: 'get',
+        dataType: 'json',
+        beforeSend: function (request) {
+          Common.addTokenToRequest(request);
+        },
+        success: function (data) {
+          _self.imageServerBaseUrl = data.imageServerBaseUrl;
+        },
+        error: function (XMLHttpRequest, textStatus, errorThrown) {
+          Common.processException(XMLHttpRequest, textStatus, errorThrown);
+        },
+      });
+    },
+    /**
+       * 查询历史位置1
+       */
+    // queryPageSingleEpcOriginalByTime: function () {
+    //   var _self = this;
+    //   if (
+    //     _self.eventOriginalStartDate == null &&
+    //     _self.eventOriginalEndDate == null
+    //   ) {
+    //     Common.showDialog('错误', '请选择开始时间和结束时间', 'error');
+    //     return;
+    //   }
+    //   const dto = {
+    //     epc: _self.showAssetInstance.epc,
+    //     startTime: _self.eventOriginalStartDate,
+    //     endTime: _self.eventOriginalEndDate,
+    //     pageNumber: _self.pagination3.current_page,
+    //     pageSize: _self.pagination3.per_page,
+    //   };
+    //   console.log(dto);
+    //   _self.queryPageSingleEpcFilterByTimeErrorMessage = null;
+    //   $.ajax({
+    //     url:
+    //       Common.getHostPageBaseURL() +
+    //       'datacenter/api/eventFilterResource/queryPageSingleEpcFilterByTime',
+    //     type: 'post',
+    //     contentType: 'application/json',
+    //     dataType: 'json',
+    //     data: JSON.stringify(dto),
+    //     beforeSend: function (request) {
+    //       Common.addTokenToRequest(request);
+    //     },
+    //     success: function (data) {
+    //       if (data.errorCode != 0) {
+    //         Common.showDialog('错误', data.errorMessage, 'error');
+    //       } else {
+    //         if (data.eventFilters != null && data.eventFilters.length > 0) {
+    //           console.log(JSON.stringify(data.eventFilters));
+    //           _self.eventFilters = data.eventFilters;
+    //           _self.pagination3.total = data.total;
+    //           _self.pagination3.last_page = Math.ceil(
+    //             _self.pagination3.total / _self.pagination3.per_page,
+    //           );
+    //         }
+    //       }
+    //     },
+    //     error: function (XMLHttpRequest, textStatus, errorThrown) {
+    //       _self.queryPageSingleEpcFilterByTimeErrorMessage = '数据查询异常,您可能没有采购/启动相关的功能。';
+    //       console.log(XMLHttpRequest);
+    //       //Common.processException(XMLHttpRequest, textStatus, errorThrown);
+    //     },
+    //   });
+    // },
+  },
+};
+</script>
+  <style scoped>
+  .table-footer-left {
+    float: left;
+    margin: 0px;
+  }
+  
+  .image {
+    width: 100%;
+  }
+  
+  .m-img {
+    max-width: 100%;
+  }
+  
+  .box {
+    margin-bottom: 14px;
+  }
+  
+  .box-title {
+    margin-bottom: 6px;
+  }
+  
+  .a-title {
+    text-decoration: underline;
+    font-size: 1.2em;
+    color: #5b3bcd;
+  }
+  
+  .p-tooltip {
+    color: #999;
+    font-size: 12px;
+    line-height: 42px;
+    margin: 0px;
+  }
+  
+  .asset-detail div {
+    word-wrap: break-word;
+    padding: 0px;
+  }
+  
+  .div-asset-info {
+    margin-top: 15px;
+    margin-bottom: 15px;
+  }
+  
+  .m-image {
+    height: 648px;
+    width: 432px;
+  }
+  
+  .modal-img-box {
+    text-align: center;
+  }
+  
+  .div-history-event ul {
+    list-style-type: circle;
+  }
+  
+  .div-history-event li {
+    margin-bottom: 10px;
+    font-size: 18px;
+    border-bottom: 1px solid #dcd6d6;
+  }
+  
+  .div-history-event p {
+    margin: 3px 0px;
+    font-size: 14px;
+  }
+  
+  .event-title {
+    font-weight: bold;
+  }
+  
+  .event-time {
+    color: #aaa;
+    font-size: 0.9em;
+  }
+  
+  .no-padding-left {
+    padding-left: 0px;
+  }
+  
+  .media-img {
+    width: 45px;
+    height: 45px;
+  }
+  
+  .img-thumbnail {
+    cursor: pointer;
+  }
+  
+  .time-box {
+    margin-bottom: 15px;
+  }
+  
+  .rowTest {
+    display: flex;
+    flex-wrap: wrap;
+  }
+  </style>

+ 1 - 1
src/index.js

@@ -27,7 +27,7 @@ import AssetBatchOperationQuery from'./components/archive/AssetBatchOperationQue
 import AssetBatchOperationOrganization from './components/archive/AssetBatchOperationOrganization.vue';
 import AssetBatchOperationScrap from './components/archive/AssetBatchOperationScrap.vue';
 import AssetInstancePrint from './components/customer/AssetInstancePrint.vue';
-import AssetInstanceSearchDetail from'./components/customer/AssetInstanceSearchDetail.vue';
+import AssetInstanceSearchDetail from'./components/customer/AssetInstanceSearchDetailV2.vue';
 import GenerateDocumentTool from './components/customer/GenerateDocumentTool.vue';
 import ExportPictureLibrary from './components/customer/ExportPictureLibrary.vue';
 import AssetBatchOperationModifyUseStatus from './components/archive/AssetBatchOperationModifyUseStatus.vue';

+ 1 - 1
src/router/index.js

@@ -21,7 +21,7 @@ const AssetBatchOperationQuery = () => import(/* webpackChunkName: "component-20
 const AssetBatchOperationOrganization = () => import(/* webpackChunkName: "component-21" */ '../components/archive/AssetBatchOperationOrganization.vue');
 const AssetBatchOperationScrap = () => import(/* webpackChunkName: "component-22" */ '../components/archive/AssetBatchOperationScrap.vue');
 const AssetInstancePrint = () => import(/* webpackChunkName: "component-23" */ '../components/customer/AssetInstancePrint.vue');
-const AssetInstanceSearchDetail = () => import(/* webpackChunkName: "component-24" */ '../components/customer/AssetInstanceSearchDetail.vue');
+const AssetInstanceSearchDetail = () => import(/* webpackChunkName: "component-24" */ '../components/customer/AssetInstanceSearchDetailV2.vue');
 const GenerateDocumentTool = () => import(/* webpackChunkName: "component-25" */ '../components/customer/GenerateDocumentTool.vue');
 const ExportPictureLibrary = () => import(/* webpackChunkName: "component-26" */ '../components/customer/ExportPictureLibrary.vue');
 const AssetBatchOperationModifyUseStatus = () => import(/* webpackChunkName: "component-27" */ '../components/archive/AssetBatchOperationModifyUseStatus.vue');

+ 11 - 11
webpack.dev.js

@@ -60,65 +60,65 @@ module.exports = WebpackMerge.merge(baseConfig, {
 
     proxy: {
       '/api': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: false,
         changeOrigin: true,
         secure: true,
       },
       '/static': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: false,
         changeOrigin: true,
         secure: true,
       },
       '/content': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: false,
         changeOrigin: true,
         secure: true,
       },
       '/dashboard': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: false,
         changeOrigin: true,
         secure: true,
       },
       '/mock': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: false,
         changeOrigin: true,
         secure: true,
       },
       '/authApi': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: false,
         changeOrigin: true,
         secure: true,
       },
       '/Dictionary': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: false,
         changeOrigin: true,
         secure: true,
       },
       '/Files': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: false,
         changeOrigin: true,
         secure: true,
       },
       '/WebSocket': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: true,
         changeOrigin: true,
       },
       '/TrainVideo': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: true,
         changeOrigin: true,
       },
       '/gateway-api': {
-        target: 'http://192.168.1.5:10023/',
+        target: 'http://192.168.1.5:10022/',
         ws: true,
         changeOrigin: true,
         secure: true,