227 lines
7.1 KiB
JavaScript
227 lines
7.1 KiB
JavaScript
import dayjs from "dayjs"
|
||
import * as apiService from "@/common/api"
|
||
|
||
export const getOrderModels = () => {
|
||
return {
|
||
_agreePrivacy: true,
|
||
sendDate: dayjs().format("YYYY-MM-DD HH:mm:ss"),// 下单时间
|
||
reciever: { // 收件人信息
|
||
country: undefined,
|
||
name: '',
|
||
phone: undefined,
|
||
province: undefined,
|
||
city: undefined,
|
||
district: undefined,
|
||
town: undefined,
|
||
address: undefined,
|
||
postCode: undefined,
|
||
email: undefined,
|
||
company: undefined
|
||
},
|
||
sender: { // 发件人信息
|
||
country: undefined,
|
||
name: '',
|
||
phone: undefined,
|
||
province: undefined,
|
||
city: undefined,
|
||
district: undefined,
|
||
town: undefined,
|
||
address: undefined,
|
||
postCode: undefined,
|
||
email: undefined,
|
||
company: undefined
|
||
},
|
||
custOrderId: undefined, // 客户单号
|
||
billCode: '', // 运单号
|
||
billCodeSub: undefined, // 子单号
|
||
orderDate: undefined,
|
||
userId: '',
|
||
openId: undefined,
|
||
paymentType: undefined, // 付款方式
|
||
calcFeeType: '1', // 计费方式
|
||
custNo: undefined, // 月结账号
|
||
transLine: '', // 路线
|
||
productType: undefined, // 产品
|
||
customsClear: undefined, // 清关方式
|
||
customsEclaration: undefined, // 报关方式
|
||
packType: 2, // 包装类型
|
||
dispatchMethod: 1, // 派送方式
|
||
pickupMethod: undefined, // 取件方式
|
||
pickStartDate: undefined, // 上门取货-开始时间
|
||
pickFinishDate: undefined,// 上门取货-结束时间
|
||
intoWarehouseCode: undefined, // 入仓仓库code
|
||
intoWarehouseName: undefined, // 仓库名称
|
||
intoWarehouseAddress: undefined, // 仓库地址
|
||
intoWarehouseContact: undefined, // 仓库联系人
|
||
intoWarehousePhone: undefined, // 仓库联系人电话
|
||
intoWarehouseBillCode: undefined,
|
||
customerDeliveryBeginTime: undefined,
|
||
goodsType: undefined,
|
||
goodsInfo: undefined,
|
||
totalWeight: undefined, // 总重量 = 结算重量
|
||
totalVolume: undefined, // 总体积
|
||
parcelQty: 1, // 总件数
|
||
billWeight: undefined, // 实际重量
|
||
volumeWeight: undefined, // 体积重量 = 实际体积(立方厘米)*(1000000/泡重比) (长宽高都是按 cm 来计量的 )
|
||
currency: undefined,
|
||
settlementWeight: undefined, // 结算重量
|
||
feeWeight: undefined,
|
||
blOverLong: undefined,
|
||
blOverWeight: undefined,
|
||
overWeightNumber: undefined,
|
||
feeRemaker: undefined, // 付款方式-其他-备注
|
||
realValue: undefined,
|
||
blDispFd: undefined,
|
||
transferCode: undefined,
|
||
transferBillcode: undefined,
|
||
dispFdDate: undefined,
|
||
sendSiteCode: undefined, // 发件站点 -- 当前登录账号的siteCode
|
||
destinationCode: undefined, // 目的地 code
|
||
destinationProvince: undefined,
|
||
destinationCity: undefined,
|
||
destinationCounty: undefined,
|
||
dispatchUnderlingSiteCode: undefined, // 目的网点 - code
|
||
dispatchUnderlingSiteName: undefined, // 目的网点 - 名称
|
||
destinationCenterCode: undefined,
|
||
marketManCode: undefined,
|
||
payee: undefined, // 回款联系人
|
||
salesmen: undefined, // 销售员
|
||
blMessage: '1', // 寄件 短信开关
|
||
blAcceptMessage: '1', // 签收 短信开关
|
||
remark: '', // 备注
|
||
customerCode: undefined, // 客户code
|
||
feeItems: [ // 计费信息
|
||
// {
|
||
// feeCode: 费用类型 eg:1001,
|
||
// feeName: 费用名称:保险费,
|
||
// fee: 10,
|
||
// currency: 币种 CNY,
|
||
// quoteId: 报价ID,
|
||
// orderNum: 序号: 1,
|
||
// calcExp: 计算公式,
|
||
// addWeight: 续重,
|
||
// remark: 费用条码描述
|
||
// }
|
||
],
|
||
freight: undefined, // 计费总计
|
||
cargoList: [ // 货物列表
|
||
// {
|
||
// cargoQty: 1,
|
||
// }
|
||
// {
|
||
// goodsCode: 货物代码:eg 123,
|
||
// goodsName: 货物名称,
|
||
// cargoQty: 货物数量: 10,
|
||
// unit: 件,
|
||
// price: 1.2,
|
||
// currency: CNY,
|
||
// nationArea: 中国,
|
||
// taxNo: 行邮税号,
|
||
// hscode: 海关编码,
|
||
// brand: 品牌,
|
||
// material: 材质,
|
||
// purpose: 用途,
|
||
// ingredients: 成分,
|
||
// goodsModel: 规格,
|
||
// orderNum: 序号,
|
||
// supplier: 供应商, //
|
||
// abnormalQty: 异常数量, //
|
||
// isSave: 是否保存 1-保存
|
||
// }
|
||
],
|
||
blPrepareInFreight: 0, // 是否入仓代垫运费 1-是 0-否
|
||
prepareInEstFee: undefined, // 入仓代垫运费
|
||
prepareInRealFee: undefined, // 代垫实际运费
|
||
prepareInExpress: undefined, // 快递公司
|
||
prepareInBillCode: undefined, // 快递单号
|
||
prepareInRemark: undefined, // 预入仓自定义标识
|
||
prepareInSupplier: undefined, // 预入仓供应商
|
||
warehouseInNo: '', // 进仓单号
|
||
goodsPics: [], // 货物图片
|
||
customerName: '', // 客户名称
|
||
transLineTypeName: '', // 线路名称
|
||
productTypeName: '', // 产品类型名称
|
||
_bindTsmName: '', // 绑定快递员名称
|
||
_bindTsmCode: '', // 绑定快递员code
|
||
_bindTsmAvatar: '', // 绑定快递员头像
|
||
operateEmployeeName: '', // 操作员名称
|
||
operateEmployeeCode: undefined, // 操作员
|
||
takePieceEmployeeName: '', // 收件员名称
|
||
takePieceEmployeeCode: undefined, // 收派员
|
||
dispatchManName: '', // 派件员名称
|
||
dispatchSiteName: '', // 派件网点名称
|
||
custName: '', // 月结账户名称
|
||
salesmen: '', // 销售联系人名称
|
||
payee: '', // 回款联系人名称
|
||
sendSiteName: '', // 发件网点名称
|
||
destinationName: '', // 目的地名称
|
||
|
||
blSpecialQuote: 0, // 特殊报价
|
||
blSpecialGoods: 0, // 敏感物
|
||
|
||
}
|
||
}
|
||
|
||
// 查询默认配置
|
||
export const initDefaultModel = async (info) => {
|
||
let recieverAddressDfltRes = await apiService.getCustomerUserAddressList({ blDefaultFlag: 1, addressType: 2 })
|
||
let senderAddressDfltRes = await apiService.getCustomerUserAddressList({ blDefaultFlag: 1, addressType: 1 })
|
||
let bindDfltRes = await apiService.getListBindSalesmen({ blDefaultFlag: 1 })
|
||
|
||
if(recieverAddressDfltRes?.rows?.length > 0) {
|
||
info.reciever = recieverAddressDfltRes.rows[0]
|
||
}
|
||
if(senderAddressDfltRes?.rows?.length > 0) {
|
||
info.sender = senderAddressDfltRes.rows[0]
|
||
}
|
||
if(bindDfltRes?.rows?.length > 0) {
|
||
const bindItem = bindDfltRes.rows.filter(t=> t.defaultFlag == 1)?.[0] || {}
|
||
info._bindTsmName = bindItem.empName
|
||
info._bindTsmCode = bindItem.empCode
|
||
info._bindTsmAvatar = bindItem.avatar
|
||
}
|
||
}
|
||
|
||
export const setBindTsm = (info)=> {
|
||
let { _bindTsmName, _bindTsmCode } = info
|
||
if(info.pickupMethod == 1) {
|
||
info.operateEmployeeName = _bindTsmName
|
||
info.operateEmployeeCode = _bindTsmCode
|
||
}
|
||
if(info.pickupMethod == 2) {
|
||
info.takePieceEmployeeName = _bindTsmName
|
||
info.takePieceEmployeeCode = _bindTsmCode
|
||
}
|
||
}
|
||
|
||
export const getBindTsm = async (info)=> {
|
||
let _bindTsmName, _bindTsmCode, _bindTsmAvatar
|
||
if(info.pickupMethod == 1) {
|
||
_bindTsmName = info.operateEmployeeName
|
||
_bindTsmCode = info.operateEmployeeCode
|
||
}
|
||
if(info.pickupMethod == 2) {
|
||
_bindTsmName = info.takePieceEmployeeName
|
||
_bindTsmCode = info.takePieceEmployeeCode
|
||
}
|
||
info._bindTsmName = _bindTsmName
|
||
info._bindTsmCode = _bindTsmCode
|
||
if(_bindTsmCode) {
|
||
try{
|
||
let bnRes = await apiService.queryNewSalesmen({ searchValue: _bindTsmCode })
|
||
if(bnRes?.data?.length > 0) {
|
||
_bindTsmAvatar = bnRes.data[0].avatar
|
||
}
|
||
}catch(e){
|
||
}
|
||
}
|
||
info._bindTsmAvatar = _bindTsmAvatar
|
||
}
|
||
|
||
export const checkSubmitParams = (params = {})=> {
|
||
let errMsg = []
|
||
if(!params._agreePrivacy) {
|
||
errMsg.push('请同意《快件运单契约条款》')
|
||
}
|
||
return { bl: errMsg.length == 0, errMsg }
|
||
} |