Commit c9955a23 authored by 我在何方's avatar 我在何方

Merge branch 'release2.2' of...

Merge branch 'release2.2' of http://gitlab.jdshangmen.com/jiedao-app/jiedao-app-operator into release2.2
parents 9393ed70 a6fb24a4
......@@ -55,6 +55,12 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('提单制作')" prop="ladingBillStatus">
<el-select v-model="queryParams.ladingBillStatus" :placeholder="$t('请选择提单制作状态')" clearable size="small">
<el-option v-for="(item,index) in ladingBillStatusData" :key="index" :label="item" :value="index">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
......@@ -107,6 +113,12 @@
<el-table-column :label="$t('状态')" align="center" prop="shipmentStatusText" />
<el-table-column :label="$t('提单状态')" align="center" prop="ladingBillStatus" width="180">
<template slot-scope="scope">
<span>{{ ladingBillStatusData[scope.row.ladingBillStatus] }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('日期')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ new Date(scope.row.createTime).format('yyyy-MM-dd hh:mm:ss') }}</span>
......@@ -232,6 +244,11 @@ export default {
{ value: "5", label: this.$t("清关时间") },
{ value: "6", label: this.$t("卸柜时间") },
],
ladingBillStatusData: [
this.$t("未完成"),
this.$t("部分完成"),
this.$t("已完成"),
],
// 遮罩层
loading: true,
// 导出遮罩层
......
......@@ -10,13 +10,14 @@
</el-select>
</el-form-item>
<el-form-item :label="$t('装柜时间')" prop="ldBoxTime">
<el-date-picker type="datetime" :placeholder="$t('请选择日期')" v-model="cabinetObj.ldBoxTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
{{cabinetObj.ldBoxTime?new Date(scope.row.createTime).format('yyyy-MM-dd hh:mm:ss'):new Date().format('yyyy-MM-dd hh:mm:ss')}}
<!-- <el-date-picker type="datetime" :placeholder="$t('请选择日期')" v-model="cabinetObj.ldBoxTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker> -->
</el-form-item>
<el-form-item :label="$t('出仓时间')">
<el-date-picker type="datetime" :placeholder="$t('请选择日期')" v-model="cabinetObj.ldOutWarehouseTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
<el-form-item :label="$t('装柜图片')">
<ImageUpload :limit="1" :isShowTip=false v-model="cabinetObj.ldPictures" />
<ImageUpload :limit="1" :isShowTip=false v-model="cabinetObj.ldPictures" @input="saveImage" />
</el-form-item>
</el-form>
......@@ -55,11 +56,7 @@ export default {
// 装柜对象
cabinetObj: {},
// 校验
rules: {
ldBoxTime: [
{ required: true, message: this.$t("必填"), trigger: "change" },
],
},
rules: {},
};
},
created() {
......@@ -136,6 +133,27 @@ export default {
startCabinet() {
this.dialogVisible = true;
},
//自动保存图片
saveImage() {
const { ldPictures } = this.cabinetObj;
let pictures = ldPictures?.split(",") ?? [];
let newPictures = [];
for (const item of pictures) {
if (item) {
newPictures.push({
type: "image",
url: item,
});
}
}
cabinetCreate({
shipmentId: this.$attrs.shipmentObj.id,
ldPictures: newPictures.length ? JSON.stringify(newPictures) : "",
operateType: 1,
}).then(()=>{
this.$emit("getBoxInfo");
})
}
},
computed: {
isStartCabinet() {
......
......@@ -55,6 +55,11 @@
<el-option v-for="item in importWarehouseList" :label="item.titleZh" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('国家')" prop="destination">
<el-select v-model="queryParams.destCountryId" :placeholder="$t('请选择国家')">
<el-option v-for="item in countryList" :key="item.id" :label="$l(item, 'name')" :value="item.id" />
</el-select>
</el-form-item>
<el-form-item :label="$t('订单号')" prop="orderNo">
<el-input v-model="queryParams.orderNo" :placeholder="$t('请输入订单号')" clearable />
</el-form-item>
......@@ -161,6 +166,7 @@ import {
getCapacity,
sumStatistics,
} from "../../utils";
import {getCountryListAll} from "@/api/ecw/country";
/**
* 补单
*/
......@@ -169,6 +175,8 @@ export default {
inheritAttrs: false,
data() {
return {
//国家列表
countryList:[],
// 二维码/条码编号
cabinetNo: "",
// 表格数据
......@@ -193,6 +201,9 @@ export default {
},
created() {
this.queryAllData();
getCountryListAll().then(r => {
this.countryList = r.data
})
},
methods: {
/* 查询已预装 */
......
......@@ -35,7 +35,7 @@
</el-form-item>
<el-form-item :label="$t('包装数量与单位')" class="two-element">
<el-input v-model="subMaterialObj.packageNum" :placeholder="$t('请输入包装数量')"></el-input>
<dict-selector v-model="subMaterialObj.packageUnit" type="packaging_type" />
<dict-selector v-model="subMaterialObj.packageUnit" type="goods_package_type" />
</el-form-item>
<el-form-item :label="$t('货物毛重(KGS)')">
<el-input v-model="subMaterialObj.kgs" :placeholder="$t('请输入货物毛重') + '(KGS)'"></el-input>
......
......@@ -48,6 +48,11 @@
<el-form-item :label="$t('供应商类别')" prop="companyType">
<dict-selector v-model="formData.companyTypeArr" type="company_type" multiple disabled />
</el-form-item>
<el-form-item :label="$t('目的港码头')" prop="dockIds">
<el-select v-model="formData.dockIds" filterable multiple clearable disabled>
<el-option v-for="(item) in allDocks" :key="item.id" :label="$l(item, 'title')" :value="item.id"></el-option>
</el-select>
</el-form-item>
</div>
<div>
......@@ -420,6 +425,7 @@ export default {
this.formData = response.data
this.$set(this.formData, 'companyTypeArr', this.strToArray(response.data.companyType))
this.$set(this.formData, 'dockIds', this.strToArray(response.data.dockIds))
this.$set(this.formData, 'priceAdvantage', response.data.priceAdvantage==0?'':response.data.priceAdvantage)
this.$set(this.formData, 'settlementPeriod', response.data.settlementPeriod==0?null:response.data.settlementPeriod)
this.formData.bankList.forEach(item => {
......
......@@ -17,18 +17,10 @@
</el-form-item>
</div>
<div>
<el-form-item :label="$t('合作开始时间')" prop="cooperationDateStart" label-width="120px" :rules="[{
required: formData.areaType==1,
message: this.$t('请填写合作开始时间'),
trigger: 'change'
}]">
<el-form-item :label="$t('合作开始时间')" prop="cooperationDateStart" label-width="120px">
<el-date-picker v-model="formData.cooperationDateStart" value-format="timestamp" clearable></el-date-picker>
</el-form-item>
<el-form-item :label="$t('合作结束时间')" prop="cooperationDateEnd" label-width="120px" :rules="[{
required: formData.areaType==1,
message: this.$t('请填写合作结束时间'),
trigger: 'change'
}]">
<el-form-item :label="$t('合作结束时间')" prop="cooperationDateEnd" label-width="120px">
<el-date-picker v-model="formData.cooperationDateEnd" value-format="timestamp" clearable></el-date-picker>
</el-form-item>
</div>
......@@ -64,6 +56,11 @@
<el-form-item :label="$t('供应商类别')" prop="companyType">
<dict-selector v-model="formData.companyTypeArr" type="company_type" multiple />
</el-form-item>
<el-form-item :label="$t('目的港码头')" prop="dockIds">
<el-select v-model="formData.dockIds" filterable multiple clearable>
<el-option v-for="(item) in allDocks" :key="item.id" :label="$l(item, 'title')" :value="item.id"></el-option>
</el-select>
</el-form-item>
</div>
<div>
......@@ -417,7 +414,7 @@
</el-form-item>
<el-form-item :label="$t('包装单位')" prop="packUnit">
<!-- <el-input v-model="formData.externalVO.packUnit" :placeholder="$t('请输入包装单位')" show-word-limit clearable></el-input> -->
<dict-selector v-model="formData.externalVO.packUnit" type="packaging_type" />
<dict-selector v-model="formData.externalVO.packUnit" type="goods_package_type" />
</el-form-item>
</div>
<div>
......@@ -426,7 +423,7 @@
<el-option v-for="(item) in requireData" :value="item" :label="item" :key="item" />
</el-select>
</el-form-item>
<el-form-item v-if="formData.externalVO.clearanceRequireData=='自定义'" :label="$t('自定义要求')" prop="clearanceRequire">
<el-form-item v-if="formData.externalVO.clearanceRequireData==$t('自定义')" :label="$t('自定义要求')" prop="clearanceRequire">
<el-input v-model="formData.externalVO.clearanceRequire" :placeholder="$t('请输入自定义要求')" show-word-limit clearable></el-input>
</el-form-item>
</div>
......@@ -441,6 +438,11 @@
<el-input v-model="formData.externalVO.badCooperationRecord" :placeholder="$t('请输入合作不良记录登记')" show-word-limit clearable></el-input>
</el-form-item>
</div>
<div>
<el-form-item :label="$t('TIN NO./RC NO.')" prop="tinNoRcNo" label-width="250">
<el-input v-model="formData.externalVO.tinNoRcNo" :placeholder="$t('请输入TIN NO./RC NO.')" type="textarea" style="width: 300px;" show-word-limit clearable></el-input>
</el-form-item>
</div>
</div>
......@@ -663,7 +665,7 @@ export default {
allDocks: [],
currencyList:[],
requireData: [
'COO证书','CXX证书','ABC证书','QWE证书','自定义'
this.$t('CTN证书'),this.$t('COC证书'),this.$t('SONCAP证书'),this.$t('自定义')
],
fileList: [],
fileNoForm: {},
......@@ -758,6 +760,7 @@ export default {
this.formData = response.data
this.$set(this.formData, 'companyTypeArr', this.strToArray(response.data.companyType))
this.$set(this.formData, 'dockIds', this.strToArray(response.data.dockIds))
this.$set(this.formData, 'settlementPeriod', response.data.settlementPeriod==0?null:response.data.settlementPeriod)
this.$set(this.formData, 'priceAdvantage', response.data.priceAdvantage==0?null:response.data.priceAdvantage)
this.formData.bankList.forEach(item => {
......@@ -943,6 +946,7 @@ export default {
let data = JSON.parse(JSON.stringify(this.formData))
if(this.formData.areaType == 0) {
data.resourceVO.shipCompany = data.resourceVO.shipCompany?.toString()
data.dockIds = data.dockIds?.toString()
data.resourceVO.ports = data.resourceVO.ports?.toString()
data.resourceVO.bookCompany = data.resourceVO.bookCompany?.toString()
data.resourceVO.trailerCompany = data.resourceVO.trailerCompany?.toString()
......
......@@ -59,26 +59,13 @@
<el-table-column label="" align="center" prop="id" />
<el-table-column :label="$t('供应商代码')" align="center" prop="companyCode" />
<el-table-column :label="$t('公司名称')" align="center" :prop="$l('company')" />
<!--el-table-column :label="$t('英文名称')" align="center" prop="companyEn" /-->
<el-table-column :label="$t('公司电话')" align="center" prop="tell" />
<el-table-column :label="$t('供应商类别')" align="center" prop="companyType" >
<template slot-scope="{row}">
<template v-for="type in row.companyType.split(',')">
<dict-tag type="company_type" :value="type" :key="type" />
</template>
</template>
</el-table-column>
<el-table-column :label="$t('境内外')" align="center" prop="areaType">
<template slot-scope="scope">
<span>{{ areaData[scope.row.areaType] }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('合作类型')" align="center" prop="cooperationType">
<template slot-scope="{row}">
<dict-tag type="cooperation_type" :value="row.cooperationType" />
</template>
</el-table-column>
<el-table-column :label="$t('统一信用代码')" align="center" prop="licenseNumber" />
<el-table-column :label="$t('码头')" align="center" prop="dockIds" />
<el-table-column :label="$t('清关要求')" align="center" prop="clearanceRequireData" />
<el-table-column :label="$t('创建时间')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
......@@ -105,6 +92,7 @@
<script>
import { createSupplier, updateSupplier, deleteSupplier, getSupplier, getSupplierPage, exportSupplierExcel } from "@/api/ecw/supplier";
// import DictSelector from '@/components/DictSelector'
import { getDockPage } from "@/api/ecw/dock";
export default {
name: "Supplier",
components: {
......@@ -163,7 +151,8 @@ export default {
companyZh: [{ required: true, message: this.$t("公司名称不能为空"), trigger: "blur" }],
companyType: [{ required: true, message: this.$t("供应商类别不能为空"), trigger: "change" }],
cooperationType: [{ required: true, message: this.$t("合作类型不能为空"), trigger: "change" }],
}
},
allDocks: []
};
},
created() {
......@@ -171,14 +160,23 @@ export default {
},
methods: {
/** 查询列表 */
getList() {
async getList() {
this.list = []
this.loading = true;
// 处理查询参数
let params = {...this.queryParams};
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime');
this.allDocks = await getDockPage({ pageNo: "1", pageSize: "10000" })
this.allDocks = this.allDocks.data.list
// 执行查询
getSupplierPage(params).then(response => {
this.list = response.data.list;
response.data.list.forEach(item=>{
item.dockIds = this.dockIds(item.dockIds,this.allDocks)
if(item.externalVO && item.externalVO.clearanceRequireData){
item.clearanceRequireData = item.externalVO.clearanceRequireData
}
this.list.push(item)
})
this.total = response.data.total;
this.loading = false;
});
......@@ -188,6 +186,18 @@ export default {
this.open = false;
this.reset();
},
dockIds(str,data){
if(typeof str != 'string') return ''
let dockArr = str.split(',')
let r = []
dockArr.forEach(item=>{
let dock = data.find(prop=>prop.id == item)
if(dock){
r.push(this.$l(dock, 'title'))
}
})
return r.toString()
},
/** 表单重置 */
reset() {
this.form = {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment