temp
ddlucky 1 year ago
parent a07138c40a
commit 8d39a93510

1
.gitignore vendored

@ -52,3 +52,4 @@ bin-release/
/Vue.Net/VOL.WMS/VOL.WMS.csproj.user
/Vol.Vue/src/assets/imgs/logo0.png
/Deploy
/Vue.Net/VOL.WebApi/Download/ExcelExport/20230615/当前库存信息20230615145256.xlsx

@ -7,7 +7,7 @@
content="width=device-width,initial-scale=1,minimum-scale=1,
maximum-scale=1,user-scalable=no,viewport-fit=cover"> -->
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>东胜软件_仓储</title>
<title>嘉里物流</title>
<style type="text/css">
#loading-container {
position: absolute;

@ -11,27 +11,26 @@ axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded
//'application/json;charset=utf-8';//
if (process.env.NODE_ENV == 'development') {
axios.defaults.baseURL = 'http://localhost:9991/';
axios.defaults.ds7URL = 'http://118.190.210.123:8081/login.aspx';
axios.defaults.ds7URL = 'http://47.104.102.13:8081/login.aspx';
}
else if (process.env.NODE_ENV == 'debug') {
axios.defaults.baseURL = 'http://127.0.0.1:8990/';
axios.defaults.ds7URL = 'http://118.190.210.123:8081/login.aspx';
axios.defaults.ds7URL = 'http://47.104.102.13:8081/login.aspx';
}
else if (process.env.NODE_ENV == 'production') {
axios.defaults.baseURL = 'http://47.104.253.169:9991/';
axios.defaults.ds7URL = 'http://47.104.253.169:8088/login.aspx';
axios.defaults.baseURL = 'http://36.112.133.3:9991/';
axios.defaults.ds7URL = 'http://36.112.133.3:8099/login.aspx';
//axios.defaults.baseURL = 'http://114.215.87.197:9991/';
//axios.defaults.ds7URL = 'http://114.215.87.197:8099/login.aspx';
//axios.defaults.baseURL = 'http://123.234.180.6:9991/';
//axios.defaults.ds7URL = 'http://123.234.180.6:8098/login.aspx';
//青岛五通
}
let ipAddress = axios.defaults.baseURL;
let ds7ipAddress = axios.defaults.ds7URL;
let FormShow = {
INDO_CONFIRM: false,//入库执行页面是否显示录入状态业务等。false时不显示 用于菲尔斯特 入库执行 分受理 确认 两步时设为true
INDO_FeerateShow: true,//入库执行的费率页面是否显示
INDO_CONFIRM: true,//入库执行页面是否显示录入状态业务等。false时不显示 用于菲尔斯特 入库执行 分受理 确认 两步时设为true
INDO_FeerateShow: false,//入库执行的费率页面是否显示
MOVE_FeerateShow: true,//移库的费率页面是否显示
WanHuaHuaXue_Show: false,//入库模块中 万华化学入口按钮是否显示
@ -40,20 +39,19 @@ let FormShow = {
isWUTONG: false,//标记 用户 五通
isPROJECT: false,//标记 用户 项目
isHGTY: false,//标记 用户 华港通运
isJLWL: false,//标记 用户 嘉里物流
isJGWL: true,//标记 用户 金港物流
isJLWL: true,//标记 用户 嘉里物流
WMSFEE_TYPE: 'showAll',// 取值 showAll showCurr 两者之一 用于限制自定义账单的形式
FeeRateSourceName: "非协议客户",//入库计划中 采用什么默认的费率来源名称
InplanRulenumByNetweight: false,//入库计划中 如果净重修改 则同时修改申报数量
INDO_SAMEWMS: true,//入库执行 "合并入库"选项默认值 如true则默认为合并入库
INDO_SAMEWMS: false,//入库执行 "合并入库"选项默认值 如true则默认为合并入库
}
//用于控制新增加的goodsmodel2-20字段是否显示
//不同公司所需的goodsmodel不同因此这些字段的名字通过多语言模块进行控制是否显示通过GoodsModelShow控制
let GoodsModelShow = {
GOODSMODEL2: true,
GOODSMODEL3: true,
GOODSMODEL4: true,
GOODSMODEL2: false,
GOODSMODEL3: false,
GOODSMODEL4: false,
GOODSMODEL5: true,
GOODSMODEL6: false,
GOODSMODEL7: false,
@ -113,14 +111,12 @@ let FormShowBase = {
let FestShow = JSON.parse(JSON.stringify(FormShowBase));
FestShow.显示入库计划的生成入库受理按钮 = true;
FestShow.入库计划导入明细时用毛重填充为0的净重 = false;
FestShow.入库计划导入明细时用毛重填充为0的净重 = true;
let LocalShow = FormShowBase;
if (FormShow.isFEST) LocalShow = FestShow;
axios.interceptors.request.use((config) => {
//axios.defaults.headers[_Authorization] = $httpVue.$store.getters.getToken();

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 31 KiB

@ -101,7 +101,6 @@ export default {
},
align:'left'},
{field:'IMGPATH',title:'图片地址',type:'img',width:220,align:'left'},
{field:'FILEPATH',title:'文件地址',type:'file',width:220,align:'left'},
{field:'UPLOADDATE',title:'上传时间',type:'string',width:90,hidden:true,align:'left'},

@ -582,10 +582,10 @@ export default {
{field:'F_GID',title:'F_GID',type:'guid',width:90,hidden:true,readonly:true,require:true,align:'left'},
{field:'F_PID',title:'F_PID',type:'guid',width:90,hidden:true,readonly:true,require:true,align:'left'},
{field:'上传图片',title:"上传图片",width:80,
formatter: function () { return '<a class="oper-btn">{{this.$t(\'select\')+this.$t(\'Img\')}}</a>'; },
formatter: function () { return `<a class="oper-btn">上传图片</a>`; },
click: row => {
let _headform=window.Listhead;
let _Bodyform=window.Bodyhead;
//let _Bodyform=window.Bodyhead;
_headform.$refs.modelFooter.fileInfo.splice(0);
//
if (row.IMGPATH) {

File diff suppressed because it is too large Load Diff

@ -9,7 +9,7 @@ module.exports = {
SEALNO: '封号',
CUSTOMNO: '报关单号',
ETA: '到港日',
CORPID: '业务归属',
CORPID: '分公司',
ACCDATE: '会计期间',
CUSTNO: '客户订单号',
MBLNOCNTRNO:'提单号/箱号',
@ -32,33 +32,14 @@ module.exports = {
CTNNUM_remain:'箱数(剩余)',
BSSOURCE: '业务来源',
MASTERBSNO: '业务来源编码',
GOODSMODEL: '品牌',
GOODSMODEL2: '幅宽/规格',
GOODSMODEL3: '克重',
GOODSMODEL4: '合同号',
GOODSMODEL5: '规格型号5',
GOODSMODEL6: '规格型号6',
GOODSMODEL7: '规格型号7',
GOODSMODEL8: '规格型号8',
GOODSMODEL9: '规格型号9',
GOODSMODEL10: '规格型号10',
GOODSMODEL11: '规格型号11',
GOODSMODEL12: '规格型号12',
GOODSMODEL13: '规格型号13',
GOODSMODEL14: '规格型号14',
GOODSMODEL15: '规格型号15',
GOODSMODEL16: '规格型号16',
GOODSMODEL17: '规格型号17',
GOODSMODEL18: '船名',
GOODSMODEL19: '航次',
GOODSMODEL20: '核注清单号',
GOODSMODEL: '规格型号',
MATERIALNO: '物料号',
PALLET: '托盘',
GOODSLABEL: '标签',
PICI: '批次',
XH: '项号',
DIZHANGID: '底账ID',
GOODSHSCODE:'商品编码',
GOODSHSCODE: '商品编码',
////
PKGS_FIRST: '入库件数',
PKGS_TOTAL: '总件数',
@ -189,17 +170,7 @@ module.exports = {
QUANTITY: '数量',
QUANTITY_DUNTIAN:'计费单位.天(吨天)',
AMOUNT: '金额',
PRICE: '单价',
SPE_PKGS: '计划指定件数',
SPE_SMALLPKGS: '计划指定件数2',
SPE_MINPKGS: '计划指定件数3',
SPE_KGS: '计划指定毛重(千克)',
SPE_CBM: '计划指定体积(立方米)',
SPE_NETWEIGHT: '计划指定净重(千克)',
SPE_STORAGEUNITCOUNT: '计划指定计费数量',
SPE_KGS_TON: '计划指定毛重(吨)',
SPE_NETWEIGHT_TON: '计划指定净重(吨)',
PRICE:'单价',
TRUCKNO: '车号',
DRIVERNAME:'司机',
@ -214,30 +185,84 @@ module.exports = {
WORKNUM: '车次',
WORKTYPE: '项目',
WORKERTYPE: '角色',
WORKTOTAL:'',
WORKTOTAL: '工作总量',
CUSTNO_OUT: '出库交货单号',
BOOLFIELD_01: '是否换标签',
BOOLFIELD_02: '是否贴小标签',
BOOLFIELD_03: '是否打托',
BOOLFIELD_04: '是否取样',
STRFIELD_01: '出库订单号',
GOODSMODEL2: 'GOODSMODEL2',
GOODSMODEL3: 'GOODSMODEL3',
GOODSMODEL4: 'GOODSMODEL4',
GOODSMODEL5: '料号',
GOODSMODEL6: 'GOODSMODEL6',
GOODSMODEL7: 'GOODSMODEL7',
GOODSMODEL8: 'GOODSMODEL8',
GOODSMODEL9: 'GOODSMODEL9',
GOODSMODEL10: 'GOODSMODEL10',
GOODSMODEL11: 'GOODSMODEL11',
GOODSMODEL12: 'GOODSMODEL12',
GOODSMODEL13: 'GOODSMODEL13',
GOODSMODEL14: 'GOODSMODEL14',
GOODSMODEL15: 'GOODSMODEL15',
GOODSMODEL16: 'GOODSMODEL16',
GOODSMODEL17: 'GOODSMODEL17',
GOODSMODEL18: '船名',
GOODSMODEL19: '航次',
GOODSMODEL20: '核注清单号',
GOODSMODEL_BOOL_1: 'GOODSMODEL_BOOL_1',
GOODSMODEL_BOOL_2: 'GOODSMODEL_BOOL_2',
GOODSMODEL_BOOL_3: 'GOODSMODEL_BOOL_3',
GOODSMODEL_BOOL_4: 'GOODSMODEL_BOOL_4',
GOODSMODEL_BOOL_5: 'GOODSMODEL_BOOL_5',
GOODSMODEL_BOOL_6: 'GOODSMODEL_BOOL_6',
GOODSMODEL_BOOL_7: 'GOODSMODEL_BOOL_7',
GOODSMODEL_BOOL_8: 'GOODSMODEL_BOOL_8',
GOODSMODEL_BOOL_9: 'GOODSMODEL_BOOL_9',
GOODSMODEL_BOOL_10: 'GOODSMODEL_BOOL_10',
GOODSMODEL_NUMERIC_1: 'GOODSMODEL_NUMERIC_1',
GOODSMODEL_NUMERIC_2: 'GOODSMODEL_NUMERIC_2',
GOODSMODEL_NUMERIC_3: 'GOODSMODEL_NUMERIC_3',
GOODSMODEL_NUMERIC_4: 'GOODSMODEL_NUMERIC_4',
GOODSMODEL_NUMERIC_5: 'GOODSMODEL_NUMERIC_5',
GOODSMODEL_NUMERIC_6: 'GOODSMODEL_NUMERIC_6',
GOODSMODEL_NUMERIC_7: 'GOODSMODEL_NUMERIC_7',
GOODSMODEL_NUMERIC_8: 'GOODSMODEL_NUMERIC_8',
GOODSMODEL_NUMERIC_9: 'GOODSMODEL_NUMERIC_9',
GOODSMODEL_NUMERIC_10: 'GOODSMODEL_NUMERIC_10',
GOODSMODEL_DATE_1: 'GOODSMODEL_DATE_1',
GOODSMODEL_DATE_2: 'GOODSMODEL_DATE_2',
GOODSMODEL_DATE_3: 'GOODSMODEL_DATE_3',
GOODSMODEL_DATE_4: 'GOODSMODEL_DATE_4',
GOODSMODEL_DATE_5: 'GOODSMODEL_DATE_5',
GOODSMODEL_DATE_6: 'GOODSMODEL_DATE_6',
GOODSMODEL_DATE_7: 'GOODSMODEL_DATE_7',
GOODSMODEL_DATE_8: 'GOODSMODEL_DATE_8',
GOODSMODEL_DATE_9: 'GOODSMODEL_DATE_9',
GOODSMODEL_DATE_10: 'GOODSMODEL_DATE_10',
TRADETYPE: '贸易方式',
SALE: '销售',
WMSWORKTYPE: '装卸方式',
RMBNODR: 'RMB未收',
USDNODR: 'USD未收',
OTNODR: '其它未收',
TTLNODR: '未收(合RMB)',
//WMSPLANID: '装卸方式',
PKGS_REMAIN: '剩余件数',
KGS_REMAIN: '剩余毛重(千克)',
CBM_REMAIN: '剩余体积(立方米)',
NETWEIGHT_REMAIN: '剩余净重(千克)',
RULEUNITCOUNT_REMAIN: '剩余申报数量',
STORAGEUNITCOUNT_REMAIN: '剩余计费数量',
RULEAMOUNT_REMAIN: '剩余申报金额',
KGS_TON_REMAIN: '剩余毛重(吨)',
NETWEIGHT_TON_REMAIN: '剩余净重(吨)',
SPE_PKGS: '计划指定件数',
SPE_SMALLPKGS: '计划指定件数2',
SPE_MINPKGS: '计划指定件数3',
SPE_KGS: '计划指定毛重(千克)',
SPE_CBM: '计划指定体积(立方米)',
SPE_NETWEIGHT: '计划指定净重(千克)',
SPE_STORAGEUNITCOUNT: '计划指定计费数量',
SPE_KGS_TON: '计划指定毛重(吨)',
SPE_NETWEIGHT_TON: '计划指定净重(吨)',
WEIGHTTYPE: '过磅方式',
INSPECTIONTIME: '查验时间',
labeltitle: {//this.$t('labeltitle.')
fee: '费用',
GroupByBill: '按票汇总',
@ -265,8 +290,7 @@ module.exports = {
SelectOutPlan: '选择出库计划',
SelectAcceptDetail: '选择受理明细',
GoodsInfo: '商品信息',
CustAreagoodsNodr:'客户库存与欠费',
GoodsInfo:'商品信息',
},
feetitle: {
CUSTOMERNAME: '结算对象',
@ -319,26 +343,25 @@ module.exports = {
货权转移: '货权转移',
货权转移计划: '货权转移计划',
货权转移确认: '货权转移确认',
移库: '移库',
移库操作: '移库操作',
移库: '移库操作',
移库操作计划: '移库操作计划',
移库操作确认: '移库操作确认',
仓库盘点: '仓库盘点',
仓库盘点计划: '仓库盘点计划',
仓库盘点确认: '仓库盘点确认',
出库管理:'出库管理',
出库计划: '出库计划',
出库受理: '出库计划',
出库受理: '出库受理',
出库确认: '出库确认',
出库统计表: '出库统计表',
库存管理: '库存管理',
库存初始化: '库存初始化',
库位示意图: '库位示意图',
库存查询表_1: '库存查询表_1',
业务编码表: '业务编码表',
工作量系数表: '工作量系数表',
库存查询汇总: '库存查询汇总',
库存查询明细: '库存查询明细',
历史库存查询: '历史库存查询',
@ -391,18 +414,26 @@ module.exports = {
任务状态表: '任务状态表',
打印格式列表: '打印格式列表',
个人列表设置: '个人列表设置',
库存查询表: '库存查询表_1',
业务编码表: '业务编码表',
工作量系数表: '工作量系数表',
货权转移_待取用: '货权转移_待取用',
货权转移_明细: '货权转移_明细',
出库计划_待取用: '出库计划_待取用',
移库_待取明细: '移库_待取明细',
入库通知_明细: '入库通知_明细',
出库前置计划_明细: '出库前置计划_明细',
出库计划_待取用_明细: '出库计划_待取用_明细',
无菜单子窗口: '无菜单子窗口',
入库计划_明细: '入库计划_明细',
入库受理_明细: '入库受理_明细',
入库执行_明细: '入库执行_明细',
出库前置计划_明细: '出库前置计划_明细',
出库计划_明细: '出库计划_明细',
出库受理_明细: '出库计划_明细',
出库受理_明细: '出库受理_明细',
出库执行_明细: '出库执行_明细',
出库计划_待取用_明细: '出库计划_待取用_明细',
综合费用管理: '综合费用管理',
//入库通知: '入库通知'
@ -411,8 +442,7 @@ module.exports = {
入库商品:'入库商品',
自定义字段: '自定义字段',
当前库存信息: '当前库存信息',
当前剩余库存汇总: '当前剩余库存汇总',
当前库存信息: '当前剩余库存汇总',
工作量表: '工作量表',
大宗散货管理: '大宗散货管理',
@ -429,7 +459,8 @@ module.exports = {
进口核注清单: '进口核注清单',
出口核注清单: '出口核注清单',
综合业务管理: '综合业务管理',
入库通知执行情况:'入库通知执行情况',
入库通知执行情况: '入库通知执行情况',
商品与客户部门关系: '商品与客户部门关系',
},
MSG: {
请先填写入库商品: '请先填写入库商品',
@ -521,13 +552,11 @@ module.exports = {
OUTPLANDOBEFORE_CALLBACK: '重新录入',
OUTPLANDOBEFORE_END: '计划完成',
OUTPLANDOBEFORE_UNEND: '取消完成',
OUTPLANDO: '提交审核',
OUTPLANDO_ACCESS: '审核通过',
OUTPLANDO_ACCESS2: '审核通过',
OUTPLANDO_CALLBACK: '取消审核',
LoadingFinish: '费用确认',
LoadingUndo: '取消费用确认',
OUTPLANDO: '提交受理',
OUTPLANDO_ACCESS: '出库受理',
OUTPLANDO_CALLBACK:'取消受理',
LoadingFinish: '生成费用',
LoadingUndo: '取消生成费用',
CarryoutFinish: '审核完毕',
CarryoutUndo: '取消审核',
@ -620,7 +649,7 @@ module.exports = {
REINFORCE:'加固数量',
},
OUT_PLAN: {
title: '出库计划',
title: '出库受理',
WMSNO: '出库计划编号',
PLANTIME:'计划出库日期',
},
@ -629,7 +658,7 @@ module.exports = {
},
OUT_DO: {
title: '出库确认',
LoadingFinish: '费用确认'//LoadingFinish: '费用确认',//生成费用
LoadingFinish: '生成费用'
},
OUT_DO_PROJECT: {
title: '货物出库'

@ -32,12 +32,12 @@
<div class="bottom">平均增长趋势{{item.up}}%</div>
</div>-->
<div class="ivu-col ivu-col-span-6">
<li class="item-name">超期货物</li>
<li class="rate" v-for="(wmsinfo, infoindex) in WMSOVERTIMEINFO">{{wmsinfo.mblno}} {{wmsinfo.indate.replace("0:00:00","")}} {{wmsinfo.days}}</li>
<li class="item-name">未开始入库通知</li>
<li class="rate" v-if="planinfo.itemname=='未开始入库计划'" v-for="(planinfo, infoindex) in PLANSTATUSINFO">{{planinfo.CUSTOMERNAME}}-{{planinfo.GOODSNAME}}-{{planinfo.MBLNO}}-{{planinfo.CNTRCOUNT}}</li>
</div>
<div class="ivu-col ivu-col-span-6">
<li class="item-name">执行中的入库通知</li>
<li class="rate" v-if="planinfo.itemname=='未开始入库通知'||planinfo.itemname=='正在入库'" v-for="(planinfo, infoindex) in PLANSTATUSINFO">{{planinfo.CUSTOMERNAME}}-{{planinfo.GOODSNAME}}-{{planinfo.MBLNO}}-{{planinfo.CNTRCOUNT}}</li>
<li class="item-name">正在入库</li>
<li class="rate" v-if="planinfo.itemname=='执行中的入库计划'" v-for="(planinfo, infoindex) in PLANSTATUSINFO">{{planinfo.CUSTOMERNAME}}-{{planinfo.GOODSNAME}}-{{planinfo.MBLNO}}-{{planinfo.CNTRCOUNT}}</li>
</div>
<div class="ivu-col ivu-col-span-6">
<li class="item-name">未开始出库计划</li>
@ -178,7 +178,6 @@ export default {
// chukuliang:[10, 150, 1, 250,20, 100, 10,150],
// churukudate:['2020.06.15', '2020.06.16', '2020.06.17',
// '2020.06.18', '2020.06.19', '2020.06.20', '2020.06.21','2020.06.22']
WMSOVERTIMEINFO:[],
rukuliang:[],
chukuliang:[],
huozhuanliang:[],
@ -214,9 +213,7 @@ export default {
_this.PLANSTATUSINFO=result.rows;
});
this.http.post("/api/VW_OP_WMS_HOMESHOW_PLANSTATUS/GetWMSOVERTIMEINFO",param).then(result => {
_this.WMSOVERTIMEINFO=result.rows;
});
},
DoSearch_1(){

@ -1,17 +1,17 @@
<template>
<div id="vol-container"
:class="['vol-theme-' + theme]">
<div class="vol-aside" v-show="!hidepath"
:style=" { width:menuWidth+'px'}">
<div class="header"
<div class="vol-aside"
:style="{width:menuWidth+'px'}">
<div class="header"
:style="{width:menuWidth-1+'px'}">
<img v-show="!isCollapse "
<img v-show="!isCollapse"
v-bind:src="logo" />
<Icon type="ios-list"
<Icon type="ios-list"
@click="toggleLeft"
class="collapse-menu" />
</div>
<div class="vol-menu" >
<div class="vol-menu">
<el-scrollbar style="height:100%;">
<VolMenu :onSelect="onSelect"
:isCollapse="isCollapse"
@ -19,7 +19,7 @@
</el-scrollbar>
</div>
</div>
<div class="vol-container"
<div class="vol-container"
:style="{left:menuWidth-1+'px'}">
<!-- <div class="vol-aside">
@ -38,7 +38,7 @@
<div class="vol-header" v-show="!hidepath">
<div class="vol-header">
<span class="header-text"><!--支持业务代码扩展的快速开发框架--></span>
<div class="header-info">
<div class="h-link">
@ -72,7 +72,7 @@
</div>
</div>
</div>
<div class="vol-path" v-show="!hidepath">
<div class="vol-path">
<!-- 2020.05.31增加顶部导tabs超出后滚动 -->
<Tabs @on-click="selectNav"
:before-remove="removeNav"
@ -89,8 +89,9 @@
:label="item.name"></TabPane>
</Tabs>
</div>
<div :class="hidepath?'vol-mainhide':'vol-main'" id="vol-main" >
<el-scrollbar style="height:100%;" >
<div class="vol-main"
id="vol-main">
<el-scrollbar style="height:100%;">
<!-- 2020.06.03增加路由切换时加载提示 -->
<loading v-show="$store.getters.isLoading()"></loading>
<!-- 2020.10.09增加路由keepAlive属性设置不缓存组件(默认缓存组件) -->
@ -124,7 +125,6 @@ export default {
data() {
return {
menuWidth: 200,
isCollapse: false,
menu_theme: "light",
theme_moel: false,
@ -153,8 +153,6 @@ export default {
{ text: "安全退出", path: "/login", id: -4 },
],
menuOptions: [],
hidepath:false,
mainposition:"absolute"
};
},
components: {
@ -166,14 +164,6 @@ export default {
if (theme) {
this.theme = theme;
}
this.hidepath=localStorage.getItem("hidepath")=="true";
if(this.hidepath){
this.menuWidth=0;
this.mainposition='revert';
}
this.menu_theme = this.theme == "white" ? "dark" : "light";
let userInfo = this.$store.getters.getUserInfo();
this.userName = userInfo.userName;
@ -482,19 +472,6 @@ body {
.vol-main {
border-left: 1px solid #eee;
position: absolute;
/*revert absolute*/
width: 100%;
/* height: 100%; */
bottom: 0;
top: 93px;
margin: 0;
/* padding: 15px; */
overflow: auto;
}
.vol-mainhide {
border-left: 1px solid #eee;
position: revert;
/*revert absolute*/
width: 100%;
/* height: 100%; */
bottom: 0;
@ -510,9 +487,9 @@ body {
padding: 5px;
}
.header img {
height: 77% !important;
height: 80% !important;
margin-right: 20px !important;
margin-top: 11px;
margin-top: 5px;
}
.header-info {
right: 20px;

@ -46,7 +46,7 @@
<Icon :size="20" />公司代码
</label>
</div>
<el-select v-show="false"
<el-select
v-model="userInfo.userCompanycode"
placeholder="请选择分公司"
filterable
@ -61,9 +61,6 @@
:value="item.key"
></el-option>
</el-select>
<div class="f-input" v-show="true">
<input type="text" v-focus v-model="userInfo.userCompanycode" placeholder="输入公司代码" />
</div>
<div class="f-remove" @click="clearSelect">
<Icon type="ios-close-circle" />
</div>
@ -126,7 +123,7 @@
-->
</div>
<div class="loging-btn">
<Button size="large" :loading="loading" type="info" @click="login(true)" long>
<Button size="large" :loading="loading" type="info" @click="login" long>
<span v-if="!loading"></span>
<span v-else>...</span>
</Button>
@ -140,9 +137,11 @@
</div>
</div>
<div class="login-footer">
<!-- -->
<!-- 企业信息
<p>Copyright © 2020 lanhai-tech Inc. All Rights Reserved.</p>
<p>青岛蓝海软通信息技术有限公司 版权所有</p>
-->
<!-- -->
<p>Copyright © 2021 dongsheng-soft Inc. All Rights Reserved.</p>
<p>青岛东胜软件信息技术有限公司 版权所有</p>
@ -162,10 +161,8 @@ export default {
userCompanyName: "",
userName: "",
passWord: "",
//hideCompCMB:false
},
companys: [],
Language:"中文",
companys: []
};
},
directives: {
@ -177,21 +174,7 @@ export default {
},
created() {
//this.getVierificationCode();
if(this.$route.query.companycode && this.$route.query.codename && this.$route.query.pwd){
//alert(this.$route.query.companycode+this.$route.query.codename+this.$route.query.pwd);
this.userInfo.userCompanycode=this.$route.query.companycode;
this.userInfo.userName=this.$route.query.codename;
this.userInfo.passWord=this.$route.query.pwd;
localStorage.setItem('hidepath',true);
this.login();
//
}else{
localStorage.setItem('hidepath',false);
}
this.getCompany();
//this.hideCompCMB=(this.http.FormShow.isHGTY)
},
watch: {
@ -207,15 +190,6 @@ export default {
// this.userInfo.UUID = x.uuid;
// });
// },
onInit(){
if(this.$i18n.locale=='en'){
this.Language='English';
}
},
getCompany() {
//let companys = [];
this.http.get("/api/Sys_Dictionary/getCompany").then((dic) => {
@ -231,20 +205,16 @@ export default {
},
loginPress(e) {
if (event.keyCode == 13) {
this.login(true);
this.login();
}
},
selectAndloginPress(e) {
if (this.userInfo.userCompanycode.indexOf("-") != -1 || this.userInfo.userCompanycode=="")
this.selectBlur(e);
this.login(true);
this.login();
},
login(type=false) {
if(type==true){
localStorage.setItem('hidepath',false);
}
login() {
if (
this.userInfo.userCompanycode == "" ||
this.userInfo.userCompanycode.trim() == ""

@ -125,7 +125,7 @@
{field:'GOODSTYPEGID',title:this.$t('GOODSTYPEGID'),type:'string',bind:{ key:'goodstype',data:[]},width:90,align:'left',sort:true},
{field:'GOODSOWNER',title:this.$t('GOODSOWNER'),type:'string',width:140,align:'left',sort:true},
{field:'ARCLIENTWMSOUT',title:this.$t('ARCLIENTWMSOUT'),type:'string',width:140,align:'left',sort:true},
{field:'COUNTRY',title:this.$t('COUNTRY'),type:'string',width:140,align:'left',sort:true},
{field:'COUNTRY',title:this.$t('COUNTRY'),type:'string',width:140,align:'left',bind:{ key:'yuanchandi',data:[]},sort:true},
{field:'KULING',title:'库龄',type:'int',width:90,align:'left',sort:true},
{field:'NOOPDAYS',title:'未操作时长',type:'int',width:90,align:'left',sort:true},
{field:'HZQDBH',title:this.$t('HZQDBH_IN'),type:'string',width:160,align:'left',sort:true},

@ -1112,6 +1112,8 @@ namespace VOL.WMS.Services
foreach (var wms in needaddFeebaseList)
{
//if (wms.CNTRNO != "KKFU7983352") continue;
//如果 WMSID 相同 日期重复 则不处理 跳过
if (.Exists(x => x.WMSID == wms.WMSID
&& x.STARTDATE <= wms.FEESTARTDATE && (x.ENDDATE >= wms.FEEENDDATE || wms.FEEENDDATE == null)))

@ -558,10 +558,7 @@ namespace VOL.WMS.Services
if (!WMSPHYSICSOK(item, ))
return _webResponse.Error($"箱号:{ 原库存.CNTRNO} 库存信息已发生变化 请删除并重新搜索添加移库明细");
if ((item.AREACODE_NEW == item.AREACODE) && (item.STOREHOUSE_NEW == item.STOREHOUSE))
{
return _webResponse.Error("目标库位不能与原库位相同!");
}
if ( string.IsNullOrWhiteSpace( item.AREACODE_NEW ) || string.IsNullOrWhiteSpace(item.STOREHOUSE_NEW ))
{
@ -576,6 +573,11 @@ namespace VOL.WMS.Services
return _webResponse.Error("不能在不同仓库之间进行移库!");
}
}
//if ((item.AREACODE_NEW == item.AREACODE) && (item.STOREHOUSE_NEW == item.STOREHOUSE))
//{
// return _webResponse.Error("目标库位不能与原库位相同!");
//}
}
//看是否录入了新的费率
@ -595,6 +597,9 @@ namespace VOL.WMS.Services
foreach (var item in List.Where(x=>x.STOREHOUSE==x.STOREHOUSE_NEW).ToList())
{
//如果库位不变 不产生新物理库存
if (item.AREACODE == item.AREACODE_NEW) continue;
var = List.First(x => x.WMSPHYSICSID == item.WMSPHYSICSID);
var = new OP_WMS_PHYSICS();

@ -1445,7 +1445,10 @@ namespace VOL.WMS.Services
{
if (OP_WMS_IN_PLAN_GOODSRepository.Instance.Exists(x => planDetailIdList.Contains(x.GID) && x.ISEXECUTE == false))
{
return _webResponse.Error("有未确认的入库计划明细!");
var erroritem = OP_WMS_IN_PLAN_GOODSRepository.Instance.FindAsIQueryable(x => planDetailIdList.Contains(x.GID) && x.ISEXECUTE == false).ToList();
var errorNo = erroritem.Select(s => s.CNTRNO).ToList();
var errorStr = string.Join(",", errorNo);
return _webResponse.Error($"有未确认的入库计划明细![{errorStr}]");
}
}

@ -254,11 +254,11 @@ namespace VOL.WMS.Services
/// <summary>
//车辆信息
/// </summary>
public List<OP_WMS_TRUCK> Table3List { get; set; }
public List<VW_OP_TRUCK_FILE> Table3List { get; set; }
public List<INFO_FILES> Table4List { get; set; }
public List<VW_OP_TRUCK_FILE> Table5List { get; set; }
//public List<VW_OP_TRUCK_FILE> Table5List { get; set; }
/// <summary>
/// 出库条件
/// </summary>
@ -381,8 +381,10 @@ namespace VOL.WMS.Services
{
//在此操作tableExtra从表信息
List<OP_WMS_OUT_PLAN_DETAIL> PLANDetailList = tableExtra.Table1List;//.Select(s).ToList();
List<OP_WMS_TRUCK> TRUCKList = tableExtra.Table3List;
List<VW_OP_TRUCK_FILE> TRUCKInfoList = tableExtra.Table3List;
List<OP_WMS_TRUCK> TRUCKList = new List<OP_WMS_TRUCK>();
TRUCKList = AutoMapperHelper.MapToList<VW_OP_TRUCK_FILE, OP_WMS_TRUCK>(TRUCKInfoList);
if (!PLANDetailList.isNullorEmpty())
@ -445,18 +447,19 @@ namespace VOL.WMS.Services
}
List<INFO_FILES> FileList = tableExtra.Table4List;
if (!FileList.isNullorEmpty())
{
var vw = VW_OP_WMS_OUT_PLANRepository.Instance.FindFirst(x => x.WMSPLANID == head.WMSPLANID);
INFO_FILESService.DealSaveDetail(FileList, head.WMSPLANID.ToString(), head.WMSNO, "出库通知", vw.MBLNO, vw.CNTRNO);
}
if (!TRUCKList.isNullorEmpty())
{
var _r = AddTruckFile(saveDataModel, dealedbodylist2[0], dealedbodylist2[1], FileList, head);
var _r = AddTruckFile(saveDataModel, TRUCKInfoList, dealedbodylist2[0], dealedbodylist2[1], ref FileList, head);
if (!_r.Status) return _r;
}
if (!FileList.isNullorEmpty())
{
var vw = VW_OP_WMS_OUT_PLANRepository.Instance.FindFirst(x => x.WMSPLANID == head.WMSPLANID);
INFO_FILESService.DealSaveDetail(FileList, head.WMSPLANID.ToString(), head.WMSNO, "出库通知", vw.MBLNO, vw.CNTRNO);
}
List<Op_Wms_Logic> ConditionList = tableExtra.Table6List;
if (!ConditionList.isNullorEmpty())
@ -646,7 +649,10 @@ namespace VOL.WMS.Services
{
//在此操作tableExtra从表信息
List<OP_WMS_OUT_PLAN_DETAIL> PLANDetailList = tableExtra == null ? null : tableExtra.Table1List;//.Select(s).ToList();
List<OP_WMS_TRUCK> TRUCKList = tableExtra == null ? null : tableExtra.Table3List;
List<VW_OP_TRUCK_FILE> TRUCKInfoList = tableExtra.Table3List;
List<OP_WMS_TRUCK> TRUCKList = new List<OP_WMS_TRUCK>();
TRUCKList = AutoMapperHelper.MapToList<VW_OP_TRUCK_FILE, OP_WMS_TRUCK>(TRUCKInfoList);
if (!PLANDetailList.isNullorEmpty())
{
@ -695,19 +701,23 @@ namespace VOL.WMS.Services
List<INFO_FILES> FileList = tableExtra.Table4List;
if (!TRUCKList.isNullorEmpty())
{
var _r = AddTruckFile(saveModel, TRUCKInfoList, dealedbodylist2[0], dealedbodylist2[1], ref FileList, head);
if (!_r.Status) return _r;
}
if (!FileList.isNullorEmpty())
{
var vw = VW_OP_WMS_OUT_PLANRepository.Instance.FindFirst(x => x.WMSPLANID == head.WMSPLANID);
INFO_FILESService.DealSaveDetail(FileList, head.WMSPLANID.ToString(), head.WMSNO, "出库通知", vw.MBLNO);
}
if (!TRUCKList.isNullorEmpty())
else
{
var _r = AddTruckFile(saveModel, dealedbodylist2[0], dealedbodylist2[1], FileList, head);
if (!_r.Status) return _r;
}
List<Op_Wms_Logic> ConditionList = tableExtra.Table6List;
@ -785,42 +795,73 @@ namespace VOL.WMS.Services
/// <param name="FileList"></param>
/// <param name="head"></param>
/// <returns></returns>
public WebResponseContent AddTruckFile(SaveModel saveModel, List<OP_WMS_TRUCK> addTruck, List<OP_WMS_TRUCK> updTruck, List<INFO_FILES> FileList, OP_WMS_OUT_PLAN head)
public WebResponseContent AddTruckFile(SaveModel saveModel, List<VW_OP_TRUCK_FILE> TruckList,List<OP_WMS_TRUCK> addtrucklist, List<OP_WMS_TRUCK> updtrucklist, ref List<INFO_FILES> FileList, OP_WMS_OUT_PLAN head)
{
TableExtra2 tableExtra2 = saveModel.Extra.ToString().DeserializeObject<TableExtra2>();
if (addTruck.Count>0 || updTruck.Count>0)
if (TruckList!=null && TruckList.Count>0)
{
UserInfo userInfo = UserContext.Current.UserInfo;
var TruckList = new List<OP_WMS_TRUCK>();
TruckList.AddRange(addTruck);
TruckList.AddRange(updTruck);
var currFileList = INFO_FILESRepository.Instance.FindAsIQueryable(x => x.PID == head.WMSPLANID).ToList();
var addFilelist = new List<INFO_FILES>();
var updFilelist = new List<INFO_FILES>();
Guid Getgid(string truckno) {
if (addtrucklist.Exists(x => x.TRUCKNO == truckno))
{
return addtrucklist.First(x => x.TRUCKNO == truckno).GID;
}
if (updtrucklist.Exists(x => x.TRUCKNO == truckno))
{
return addtrucklist.First(x => x.TRUCKNO == truckno).GID;
}
return new Guid();
}
foreach (var item in TruckList)
{
{
if (string.IsNullOrWhiteSpace(item.IMGPATH)) continue;
if (currFileList != null && currFileList.Count() > 0 && currFileList.Exists(x => x.GID == item.GID))
{
//更新imgpath
var updrec = currFileList.First(x => x.GID == item.GID);
updrec.IMGPATH=item.IMGPATH;
updFilelist.Add(updrec);
if (FileList.Exists(x => x.GID == item.GID)) {
FileList.First(x => x.GID == item.GID).IMGPATH= item.IMGPATH;
FileList.First(x => x.GID == item.GID).FILENAME = item.TRUCKNO;
}
}
else if (addFilelist.Exists(x => x.FILENAME == item.TRUCKNO))
{
//什么也不做
}else
{
var newfile = AutoMapperHelper.MapTo<OP_WMS_TRUCK, INFO_FILES>(item);
var updrec = currFileList.First(x => x.GID == item.GID);
if (!string.IsNullOrWhiteSpace(updrec.IMGPATH)) updrec.IMGPATH += ",";
updrec.IMGPATH += item.IMGPATH;
updFilelist.Add(updrec);
if (FileList.Exists(x => x.GID == item.GID))
{
FileList.First(x => x.GID == item.GID).IMGPATH = item.IMGPATH;
}
}
else
{
var newfile = AutoMapperHelper.MapTo<VW_OP_TRUCK_FILE, INFO_FILES>(item);
newfile.GID = item.GID;
newfile.GID = Getgid(item.TRUCKNO);
newfile.PID = head.WMSPLANID;
newfile.FILETYPE = "出库通知";
newfile.UPLOADEMPLY = userInfo.UserTrueName;
@ -828,17 +869,21 @@ namespace VOL.WMS.Services
newfile.MBLNO = saveModel.getValue("MBLNO");
newfile.CNTRNO = saveModel.getValue("CNTRNO");
newfile.FILENAME = item.TRUCKNO;
addFilelist.Add(newfile);
FileList.Add(newfile);
}
}
if (addFilelist.Count > 0)
{
INFO_FILESService.DealSaveDetail(addFilelist, head.WMSPLANID.ToString(), head.WMSNO, "出库通知");
INFO_FILESRepository.Instance.AddRange(addFilelist,true);
}
//if (addFilelist.Count > 0)
//{
// INFO_FILESService.DealSaveDetail(addFilelist, head.WMSPLANID.ToString(), head.WMSNO, "出库通知");
// INFO_FILESRepository.Instance.AddRange(addFilelist, true);
//}
//if (updFilelist.Count > 0)
//{
// INFO_FILESRepository.Instance.UpdateRange(updFilelist, true);
//}
}
return _webResponse.OK("保存成功");
@ -1163,86 +1208,86 @@ namespace VOL.WMS.Services
/// </summary>
/// <param name="workKeysModel"></param>
/// <returns></returns>
public WebResponseContent UndoShenHe(WorkKeysModel workKeysModel)
{
var headid = workKeysModel.workKeys.ToString();
var head = repository.FindFirst(x => x.WMSPLANID == new Guid(headid));
/*if (CanChange(headid))
{
//如果能撤回的话 撤回审核不起作用 不做任何操作
return null;
}*/
//判断 bxgid=wmsno的费用能否删除 如不能则返回错误
var fee_makebyplanList = Ch_feeRepository.Instance.FindAsIQueryable(x => x.BXGID == head.WMSNO).ToList();
foreach (var fee in fee_makebyplanList) {
if (!fee.CanChange()) {
return _webResponse.Error("自动产生的费用已进入其他环节(如发票申请、付费申请等),不能取消。");
}
}
int js = 0;
List<OP_WMS_OUT_PLAN_DETAIL> outplangoods_list = OP_WMS_OUT_PLAN_DETAILRepository.Instance.FindAsIQueryable(x => x.WMSPLANID == new Guid(workKeysModel.workKeys)).ToList();
string[] keys = new string[outplangoods_list.Count];
for (int i = 0; i < outplangoods_list.Count; i++)
{
keys[i] = outplangoods_list[i].WMSOUTDETAILID.ToString();
}
List<VW_OP_WMS_OUT_DO_GOODS> outdogoods_list = VW_OP_WMS_OUT_DO_GOODSRepository.Instance.FindAsIQueryable(x => x.WMSPLANDETAILID == new Guid(keys[0])).ToList();
List<OP_WMS_OUT_DO> outdo_list = OP_WMS_OUT_DORepository.Instance.FindAsIQueryable(x => x.WMSPLANID == new Guid(workKeysModel.workKeys)).ToList();
if ((outdogoods_list == null || outdogoods_list.Count <= 0) && (outdo_list == null || outdo_list.Count <= 0))
{
try
{
//实现委托
string sql1 = $"update OP_WMS_OUT_PLAN set BSSTATUS=0 where WMSPLANID='" + workKeysModel.workKeys + "';";
//删除入库执行时动作 删除入库执行时后台动作
js = repository.ExecuteSqlCommand(sql1);
//return _webResponse.OK("撤回成功。");
}
catch (Exception e)
{
return _webResponse.Error(e.Message);
}
}
else {
var msg = "";
if (outdo_list != null && outdo_list.Count > 0) {
msg = "[" + outdo_list[0].WMSNO + "]";
}
return _webResponse.Error($"已产生下游业务{msg},不可取消,请删除后重试。");
}
string sql = "";
try {
//实现委托
sql = $"update OP_WMS_OUT_PLAN set BSSTATUS=0 where WMSPLANID='{headid}';" +
//$"DELETE FROM OP_WMS_TRUCK where WMSPLANID in ({joinKeys});;" +
//$"DELETE FROM OP_WMS_OUT_PLAN_DETAIL where WMSPLANID = '{headid}';" +
$"DELETE FROM CH_FEE where BXGID ='{head.WMSNO}';";
//删除入库执行时动作 删除入库执行时后台动作
js = repository.ExecuteSqlCommand(sql);
Logger.PushStatus_PUB("出库通知", "取消审核:" + headid);
return _webResponse.OK("取消成功。");
}
catch (Exception e)
{
return _webResponse.Error(e.Message);
}
}
//public WebResponseContent UndoShenHe(WorkKeysModel workKeysModel)
//{
// var headid = workKeysModel.workKeys.ToString();
// var head = repository.FindFirst(x => x.WMSPLANID == new Guid(headid));
// /*if (CanChange(headid))
// {
// //如果能撤回的话 撤回审核不起作用 不做任何操作
// return null;
// }*/
// //判断 bxgid=wmsno的费用能否删除 如不能则返回错误
// var fee_makebyplanList = Ch_feeRepository.Instance.FindAsIQueryable(x => x.BXGID == head.WMSNO).ToList();
// foreach (var fee in fee_makebyplanList) {
// if (!fee.CanChange()) {
// return _webResponse.Error("自动产生的费用已进入其他环节(如发票申请、付费申请等),不能取消。");
// }
// }
// int js = 0;
// List<OP_WMS_OUT_PLAN_DETAIL> outplangoods_list = OP_WMS_OUT_PLAN_DETAILRepository.Instance.FindAsIQueryable(x => x.WMSPLANID == new Guid(workKeysModel.workKeys)).ToList();
// string[] keys = new string[outplangoods_list.Count];
// for (int i = 0; i < outplangoods_list.Count; i++)
// {
// keys[i] = outplangoods_list[i].WMSOUTDETAILID.ToString();
// }
// List<VW_OP_WMS_OUT_DO_GOODS> outdogoods_list = VW_OP_WMS_OUT_DO_GOODSRepository.Instance.FindAsIQueryable(x => x.WMSPLANDETAILID == new Guid(keys[0])).ToList();
// List<OP_WMS_OUT_DO> outdo_list = OP_WMS_OUT_DORepository.Instance.FindAsIQueryable(x => x.WMSPLANID == new Guid(workKeysModel.workKeys)).ToList();
// if ((outdogoods_list == null || outdogoods_list.Count <= 0) && (outdo_list == null || outdo_list.Count <= 0))
// {
// try
// {
// //实现委托
// string sql1 = $"update OP_WMS_OUT_PLAN set BSSTATUS=0 where WMSPLANID='" + workKeysModel.workKeys + "';";
// //删除入库执行时动作 删除入库执行时后台动作
// js = repository.ExecuteSqlCommand(sql1);
// //return _webResponse.OK("撤回成功。");
// }
// catch (Exception e)
// {
// return _webResponse.Error(e.Message);
// }
// }
// else {
// var msg = "";
// if (outdo_list != null && outdo_list.Count > 0) {
// msg = "[" + outdo_list[0].WMSNO + "]";
// }
// return _webResponse.Error($"已产生下游业务{msg},不可取消,请删除后重试。");
// }
// string sql = "";
// try {
// //实现委托
// sql = $"update OP_WMS_OUT_PLAN set BSSTATUS=0 where WMSPLANID='{headid}';" +
// //$"DELETE FROM OP_WMS_TRUCK where WMSPLANID in ({joinKeys});;" +
// //$"DELETE FROM OP_WMS_OUT_PLAN_DETAIL where WMSPLANID = '{headid}';" +
// $"DELETE FROM CH_FEE where BXGID ='{head.WMSNO}';";
// //删除入库执行时动作 删除入库执行时后台动作
// js = repository.ExecuteSqlCommand(sql);
// Logger.PushStatus_PUB("出库通知", "取消审核:" + headid);
// return _webResponse.OK("取消成功。");
// }
// catch (Exception e)
// {
// return _webResponse.Error(e.Message);
// }
//}
public override WebResponseContent PushStatus(object[] keys, int execution, string reason)
{
@ -1378,8 +1423,9 @@ namespace VOL.WMS.Services
else
{
var msg = "";
if (outdo_list != null && outdo_list.Count > 0)
if (outdo_list != null && outdo_list.Where(x=>x.BILLSTATUS!="1010").ToList().Count > 0)
{
msg = "[" + outdo_list[0].WMSNO + "]";
}
@ -1391,7 +1437,7 @@ namespace VOL.WMS.Services
return _webResponse.OK();
}
private WebResponseContent PushStatus_Single(Guid WMSPLANID, string execution, string reason)
@ -1438,7 +1484,11 @@ namespace VOL.WMS.Services
.BSSTATUS = true;
_webResponse = MakeFee();
if (AppSetting.CompanySetting.COMPANYNAME == "FEST")
var = new List<string>() {
"FEST","JGWL"
};
if (.Contains( AppSetting.CompanySetting.COMPANYNAME ) )
{
var _r2 = MakeOutDo();
if (!_r2.Status) return _r2;
@ -1494,6 +1544,14 @@ namespace VOL.WMS.Services
//删除入库执行时动作 删除入库执行时后台动作
js = repository.ExecuteSqlCommand(sql);
var outdolist = OP_WMS_OUT_DORepository.Instance.FindAsIQueryable(x=>x.WMSPLANID==head.WMSPLANID && x.BILLSTATUS=="1010").ToList();
if (outdolist != null && outdolist.Count > 0)
{
var outdogidlist = outdolist.Select(s => s.WMSDOID.ToString()).ToArray();
OP_WMS_OUT_DOService.Instance.Del(outdogidlist);
}
Logger.PushStatus_PUB("出库通知", "取消审核:" + head.WMSPLANID);
return _webResponse.OK("取消成功。");

Loading…
Cancel
Save