Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jiedao-app-operator-master
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lanbaoming
jiedao-app-operator-master
Commits
2cc8fc4e
Commit
2cc8fc4e
authored
Mar 26, 2023
by
zhoutong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
出货操作-1.根据供应商信息自动填充提单补料信息
parent
d157a3bd
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
181 additions
and
14 deletions
+181
-14
agent.vue
src/views/ecw/box/shippingSea/nodePage/agent.vue
+1
-1
supplierSelect.vue
...ws/ecw/box/shippingSea/nodePage/common/supplierSelect.vue
+1
-1
subMaterial.vue
src/views/ecw/box/shippingSea/nodePage/subMaterial.vue
+25
-6
edit.vue
src/views/ecw/supplier/edit.vue
+154
-6
No files found.
src/views/ecw/box/shippingSea/nodePage/agent.vue
View file @
2cc8fc4e
...
...
@@ -2,7 +2,7 @@
<div>
<el-form
ref=
"agentForm"
:model=
"agentObj"
:rules=
"rules"
label-width=
"120px"
>
<el-form-item
:label=
"$t('代理商Agent')"
prop=
"agentId"
>
<supplierSelect
v-model=
"agentObj.agentId"
:companyType=
"'1'"
:placeholder=
"$t('请选择代理商')"
:allSupplier=
"this.$attrs.allSupplier"
/>
<supplierSelect
v-model=
"agentObj.agentId"
:companyType=
"'1'"
:
areaType=
"1"
:
placeholder=
"$t('请选择代理商')"
:allSupplier=
"this.$attrs.allSupplier"
/>
</el-form-item>
</el-form>
<el-row
class=
"operate-button"
>
...
...
src/views/ecw/box/shippingSea/nodePage/common/supplierSelect.vue
View file @
2cc8fc4e
...
...
@@ -26,7 +26,7 @@ export default {
getSuppliers
()
{
if
(
!
this
.
companyType
)
return
this
.
allSupplier
;
return
this
.
allSupplier
.
filter
((
item
)
=>
item
.
companyTypes
.
includes
(
this
.
companyType
)
item
.
areaType
==
1
);
},
},
...
...
src/views/ecw/box/shippingSea/nodePage/subMaterial.vue
View file @
2cc8fc4e
...
...
@@ -2,7 +2,7 @@
<div>
<el-form
ref=
"subMaterialForm"
:model=
"subMaterialObj"
label-width=
"140px"
>
<el-form-item
:label=
"$t('代理商AGENT')"
>
<supplierSelect
v-model=
"subMaterialObj.agentId"
:
companyType=
"'1'"
:placeholder=
"$t('请选择供应商')"
:allSupplier=
"this.$attrs.allSupplier"
/>
<supplierSelect
v-model=
"subMaterialObj.agentId"
:
placeholder=
"$t('请选择供应商')"
:allSupplier=
"this.$attrs.allSupplier"
disabled
/>
</el-form-item>
<el-form-item
:label=
"$t('提单号M/BL NO.')"
class=
"two-element"
>
<el-input
v-model=
"subMaterialObj.blMblNo"
:placeholder=
"$t('请输入提单号')"
></el-input>
...
...
@@ -24,19 +24,22 @@
<userSelect
v-model=
"subMaterialObj.shipperId"
:placeholder=
"$t('请选择托运人')"
:allUsers=
"this.$attrs.allUsers"
/>
</el-form-item>
<el-form-item
:label=
"$t('收货人')"
>
<userSelect
v-model=
"subMaterialObj.consigneeId"
:placeholder=
"$t('请选择收货人')"
:allUsers=
"this.$attrs.allUsers"
/>
<el-input
v-model=
"subMaterialObj.consigneeName"
></el-input>
<!--
<userSelect
v-model=
"subMaterialObj.consigneeId"
:placeholder=
"$t('请选择收货人')"
:allUsers=
"this.$attrs.allUsers"
/>
-->
</el-form-item>
<el-form-item
:label=
"$t('通知方')"
>
<userSelect
v-model=
"subMaterialObj.notifyingId"
:placeholder=
"$t('请选择通知方')"
:allUsers=
"this.$attrs.allUsers"
/>
<el-input
v-model=
"subMaterialObj.notifyingName"
></el-input>
<!--
<userSelect
v-model=
"subMaterialObj.notifyingId"
:placeholder=
"$t('请选择通知方')"
:allUsers=
"this.$attrs.allUsers"
/>
-->
</el-form-item>
<el-form-item
label=
"Mark & No."
>
<el-input
v-model=
"subMaterialObj.markNo"
placeholder=
"请输入Mark & No."
></el-input>
</el-form-item>
<el-form-item
:label=
"$t('包装数量与单位')"
class=
"two-element"
>
<el-input
v-model=
"subMaterialObj.packageNum"
:placeholder=
"$t('请输入包装数量')"
></el-input>
<el-select
v-model=
"subMaterialObj.packageUnit"
:placeholder=
"$t('请选择单位')"
>
<
!--
<
el-select
v-model=
"subMaterialObj.packageUnit"
:placeholder=
"$t('请选择单位')"
>
<el-option
v-for=
"unit in units"
:key=
"unit.id"
:value=
"unit.id"
:label=
"$l(unit, 'title')"
></el-option>
</el-select>
</el-select>
-->
<el-input
v-model=
"subMaterialObj.packageUnit"
:placeholder=
"$t('请输入包装单位')"
></el-input>
</el-form-item>
<el-form-item
:label=
"$t('毛重(KGS)')"
>
<el-input
v-model=
"subMaterialObj.kgs"
:placeholder=
"$t('请输入毛重') + '(KGS)'"
></el-input>
...
...
@@ -78,6 +81,7 @@ import userSelect from "./common/userSelect.vue";
import
{
getUnitList
}
from
"
@/api/ecw/unit
"
;
import
{
getCabinetPage
}
from
"
@/api/ecw/cabinet
"
;
import
{
billCreate
}
from
"
@/api/ecw/boxSea
"
;
import
{
getSupplier
}
from
"
@/api/ecw/supplier
"
;
import
{
formatNumberString
,
constantDict
,
serviceMsg
}
from
"
../utils
"
;
/**
...
...
@@ -120,7 +124,6 @@ export default {
}
}
});
const
voName
=
this
.
$attrs
.
currNode
.
voName
;
let
oldData
=
{
...
this
.
shipmentObj
[
voName
]
};
oldData
=
formatNumberString
(
oldData
,
[
"
issueType
"
]);
...
...
@@ -128,8 +131,24 @@ export default {
...
oldData
,
packageUnit
:
oldData
.
packageUnit
===
0
?
undefined
:
oldData
.
packageUnit
,
};
this
.
$set
(
this
.
subMaterialObj
,
'
agentId
'
,
this
.
shipmentObj
.
agentInfo
?.
agentId
||
undefined
)
this
.
getSup
(
this
.
subMaterialObj
.
agentId
)
},
methods
:
{
getSup
(
id
)
{
getSupplier
(
id
).
then
(
response
=>
{
if
(
response
.
data
.
externalBackVO
){
this
.
$set
(
this
.
subMaterialObj
,
'
consigneeName
'
,
response
.
data
.
externalBackVO
?.
receiveCompanyName
||
'
/
'
)
this
.
$set
(
this
.
subMaterialObj
,
'
notifyingName
'
,
response
.
data
.
externalBackVO
?.
notifyCompanyName
||
'
/
'
)
this
.
$set
(
this
.
subMaterialObj
,
'
packageNum
'
,
response
.
data
.
externalBackVO
?.
packNum
)
this
.
$set
(
this
.
subMaterialObj
,
'
packageUnit
'
,
response
.
data
.
externalBackVO
?.
packUnit
)
this
.
$set
(
this
.
subMaterialObj
,
'
goodsDesc
'
,
response
.
data
.
externalBackVO
?.
goodName
+
response
.
data
.
externalBackVO
?.
fromNo
+
response
.
data
.
externalBackVO
?.
baNo
)
if
(
this
.
subMaterialObj
.
goodsDesc
==
null
){
this
.
$set
(
this
.
subMaterialObj
,
'
goodsDesc
'
,
'
/
'
)
}
}
})
},
/** 提交 */
onSubmit
(
operateType
)
{
this
.
$refs
[
"
subMaterialForm
"
].
validate
((
valid
)
=>
{
...
...
src/views/ecw/supplier/edit.vue
View file @
2cc8fc4e
...
...
@@ -255,6 +255,7 @@
<el-form-item
:label=
"$t('港口优势条件')"
prop=
"portConditions"
label-width=
"250"
>
<dict-selector
v-model=
"formData.resourceVO.portConditions"
type=
"port_conditions"
/>
</el-form-item>
<el-button
style=
"margin-left: 30px;"
type=
"text"
v-hasPermi=
"['ecw:dock:create']"
@
click=
"portVisible=true"
>
{{$t('新增港口')}}
</el-button>
</div>
<div>
<el-form-item
:label=
"$t('订舱公司')"
prop=
"bookCompany"
label-width=
"250"
>
...
...
@@ -305,6 +306,7 @@
<el-option
v-for=
"(item) in airPort"
:key=
"item.id"
:label=
"$l(item, 'title')"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-button
style=
"margin-left: 30px;"
type=
"text"
v-hasPermi=
"['ecw:dock:create']"
@
click=
"portVisible=true"
>
{{$t('新增港口')}}
</el-button>
</div>
<div>
<el-form-item
:label=
"$t('空运优势航空公司')"
prop=
"airCompany"
label-width=
"250"
>
...
...
@@ -519,10 +521,78 @@
>
{{ $t('返回') }}
</el-button>
</div>
</el-dialog>
<!-- 对话框(添加港口) -->
<el-dialog
:title=
"$t('新增港口')"
:visible.sync=
"portVisible"
width=
"500px"
append-to-body
>
<el-form
ref=
"portForm"
:model=
"portForm"
:rules=
"portRules"
label-width=
"80px"
>
<el-form-item
:label=
"$t('中文名称')"
prop=
"titleZh"
>
<el-input
v-model=
"portForm.titleZh"
:placeholder=
"$t('请输入中文名称')"
/>
</el-form-item>
<el-form-item
:label=
"$t('英文名称')"
prop=
"titleEn"
>
<el-input
v-model=
"portForm.titleEn"
:placeholder=
"$t('请输入英文名称')"
/>
</el-form-item>
<el-form-item
:label=
"$t('排序')"
prop=
"sort"
>
<el-input
v-model=
"portForm.sort"
:placeholder=
"$t('请输入排序')"
/>
</el-form-item>
<el-form-item
:label=
"$t('国家')"
prop=
"countryId"
>
<el-select
v-model=
"portForm.countryId"
:placeholder=
"$t('请选择国家')"
@
change=
"changeCountry"
>
<el-option
v-for=
"item in treeList"
:key=
"item.id"
:label=
"$l(item,'title')"
:value=
"item.id"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('省')"
prop=
"provinceId"
>
<el-select
v-model=
"portForm.provinceId"
:placeholder=
"$t('请选择省')"
@
change=
"changeProvince"
>
<el-option
v-for=
"item in portProvinceList"
:key=
"item.id"
:label=
"$l(item,'title')"
:value=
"item.id"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('城市')"
prop=
"cityId"
>
<el-select
v-model=
"portForm.cityId"
:placeholder=
"$t('请选择城市')"
@
change=
"changeCity"
>
<el-option
v-for=
"item in portCityList"
:key=
"item.id"
:label=
"$l(item,'title')"
:value=
"item.id"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('港口类型')"
prop=
"portType"
>
<el-select
v-model=
"portForm.portType"
:placeholder=
"$t('请选择')"
>
<el-option
v-for=
"dict in portTypeDatas"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
:label=
"$t('码头编号')"
prop=
"number"
>
<el-input
v-model=
"portForm.number"
:placeholder=
"$t('请输入码头编号')"
/>
</el-form-item>
<el-form-item
:label=
"$t('码头类型')"
prop=
"type"
>
<el-input
v-model=
"portForm.type"
:placeholder=
"$t('请输入码头类型')"
/>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"addPort"
>
{{$t('确 定')}}
</el-button>
<el-button
@
click=
"portVisible=false"
>
{{$t('取 消')}}
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
createSupplier
,
updateSupplier
,
getSupplier
,
createFileNo
,
updateFileNo
,
getFileNoPage
}
from
"
@/api/ecw/supplier
"
;
import
{
createDock
}
from
"
@/api/ecw/dock
"
;
import
upload
from
'
@/components/ImageUpload
'
import
{
getListTree
}
from
"
@/api/ecw/region
"
;
import
AreaSelector
from
'
@/components/AreaSelector
'
...
...
@@ -531,6 +601,7 @@ import Selector from '@/components/Selector'
import
{
validatePwd
}
from
'
@/api/ecw/busiPwd
'
import
SuppliersSelector
from
'
@/components/SuppliersSelector
'
import
{
getDockPage
}
from
"
@/api/ecw/dock
"
;
import
{
getDictDatas
,
DICT_TYPE
}
from
'
@/utils/dict
'
;
export
default
{
components
:
{
upload
,
AreaSelector
,
Selector
,
SuppliersSelector
},
props
:
[],
...
...
@@ -598,7 +669,16 @@ export default {
baNo
:
[{
required
:
true
,
message
:
this
.
$t
(
'
请输入BA NO
'
),
trigger
:
'
blur
'
}],
},
showFileNoDialog
:
false
,
addFileNoShow
:
false
addFileNoShow
:
false
,
portForm
:
{},
portVisible
:
false
,
// 表单校验
portRules
:
{
titleZh
:
[{
required
:
true
,
message
:
this
.
$t
(
"
中文名称不能为空
"
),
trigger
:
"
blur
"
}],
titleEn
:
[{
required
:
true
,
message
:
this
.
$t
(
"
英文名称不能为空
"
),
trigger
:
"
blur
"
}],
sort
:
[{
required
:
true
,
message
:
this
.
$t
(
"
排序不能为空
"
),
trigger
:
"
blur
"
}]
},
portTypeDatas
:
getDictDatas
(
DICT_TYPE
.
ECW_PORT_TYPE
)
}
},
computed
:
{
...
...
@@ -613,6 +693,26 @@ export default {
let
country
=
this
.
treeList
.
find
(
item
=>
item
.
id
==
this
.
fileNoForm
.
country
)
return
country
&&
country
.
children
||
[]
},
portProvinceList
(){
if
(
!
this
.
portForm
.
countryId
)
return
[]
let
country
=
this
.
treeList
.
find
(
item
=>
item
.
id
==
this
.
portForm
.
countryId
)
return
country
&&
country
.
children
||
[]
},
portCityList
(){
if
(
!
this
.
portProvinceList
.
length
)
return
[]
let
province
=
this
.
portProvinceList
.
find
(
item
=>
item
.
id
==
this
.
portForm
.
provinceId
)
return
province
&&
province
.
children
||
[]
},
portTypeName
()
{
return
portType
=>
{
for
(
let
index
in
this
.
portTypeDatas
)
{
let
portTypeItem
=
this
.
portTypeDatas
[
index
];
if
(
portTypeItem
.
value
==
portType
)
{
return
this
.
$l
(
portTypeItem
,
'
label
'
);
}
}
}
},
},
watch
:
{
'
formData.country
'
(
country
){
...
...
@@ -637,10 +737,7 @@ export default {
getCurrencyList
().
then
(
res
=>
{
this
.
currencyList
=
res
.
data
})
// 码头
getDockPage
({
pageNo
:
"
1
"
,
pageSize
:
"
10000
"
}).
then
((
res
)
=>
{
this
.
allDocks
=
res
.
data
.
list
;
});
this
.
getDock
()
this
.
getFile
()
// 回显数据需要在加载了地区数据之后,否则无法正常回显
...
...
@@ -702,6 +799,12 @@ export default {
},
mounted
()
{},
methods
:
{
getDock
()
{
// 码头
getDockPage
({
pageNo
:
"
1
"
,
pageSize
:
"
10000
"
}).
then
((
res
)
=>
{
this
.
allDocks
=
res
.
data
.
list
;
});
},
strToArray
(
val
)
{
if
(
!
val
||
val
==
''
)
{
return
[]
...
...
@@ -875,7 +978,52 @@ export default {
resourceVO
:
{},
externalVO
:
{}
}
}
},
changeCountry
(
countryId
)
{
for
(
let
index
in
this
.
treeList
)
{
let
country
=
this
.
treeList
[
index
];
if
(
country
.
id
==
countryId
)
{
this
.
portForm
.
countryZh
=
country
.
titleZh
;
this
.
portForm
.
countryEn
=
country
.
titleEn
;
return
;
}
}
},
changeProvince
(
provinceId
)
{
for
(
let
index
in
this
.
portProvinceList
)
{
let
province
=
this
.
portProvinceList
[
index
];
if
(
province
.
id
==
provinceId
)
{
this
.
portForm
.
provinceZh
=
province
.
titleZh
;
this
.
portForm
.
provinceEn
=
province
.
titleEn
;
return
;
}
}
},
changeCity
(
cityId
)
{
for
(
let
index
in
this
.
portCityList
)
{
let
city
=
this
.
portCityList
[
index
];
if
(
city
.
id
==
cityId
)
{
this
.
portForm
.
cityZh
=
city
.
titleZh
;
this
.
portForm
.
cityEn
=
city
.
titleEn
;
return
;
}
}
},
addPort
()
{
this
.
$refs
[
"
portForm
"
].
validate
(
valid
=>
{
if
(
!
valid
)
{
return
;
}
// 添加的提交
createDock
(
this
.
portForm
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
this
.
$t
(
"
新增成功
"
));
this
.
portVisible
=
false
;
this
.
getDock
()
});
});
},
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment