From 8c6e292c508312eca0aef4c203e5857c4fc3094c Mon Sep 17 00:00:00 2001
From: bklLiudl <673013083@qq.com>
Date: 星期六, 07 九月 2024 09:18:39 +0800
Subject: [PATCH] Merge branch 'master' into Liudl
---
Wms/Model/ModelDto/PdaDto/PdaSoDto.cs | 2
HTML/views/WareHouseSetting/WareHouseFrom.html | 2
Wms/WMS.BLL/SysServer/UserInforServer.cs | 41 ++++++++-
HTML/views/SystemSettings/Role.html | 1
Wms/Wms/Controllers/PdaSoController.cs | 14 +++
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs | 58 +++++++++++---
Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs | 9 ++
Wms/WMS.IBLL/ISysServer/IUserInforServer.cs | 2
Pda/View/SoSetting/pingKuOut.html | 100 +++++++++++++++++++++---
Wms/Wms/Controllers/BasisController.cs | 4
10 files changed, 193 insertions(+), 40 deletions(-)
diff --git a/HTML/views/SystemSettings/Role.html b/HTML/views/SystemSettings/Role.html
index f4150c2..2e9c1c4 100644
--- a/HTML/views/SystemSettings/Role.html
+++ b/HTML/views/SystemSettings/Role.html
@@ -312,6 +312,7 @@
form.on("submit(LAY-app-contlist-search)", function (data) {
var RoleNo = data.field.RoleNo;
var RoleName = data.field.RoleName;
+ console.log("roleno:"+RoleNo+" rolename:"+RoleName);
refreshTable(RoleNo, RoleName);
});
diff --git a/HTML/views/WareHouseSetting/WareHouseFrom.html b/HTML/views/WareHouseSetting/WareHouseFrom.html
index f44a0cf..f70a31d 100644
--- a/HTML/views/WareHouseSetting/WareHouseFrom.html
+++ b/HTML/views/WareHouseSetting/WareHouseFrom.html
@@ -31,7 +31,7 @@
</div>
</div>
<div class="layui-form-item">
- <label class="layui-form-label">浠撳簱绫诲瀷</label>
+ <label class="layui-form-label">瀛樺偍鐜</label>
<div class="layui-input-block" >
<select name="Temp" id="Temp" lay-filter="Temp" lay-search>
<option value=""></option>
diff --git a/Pda/View/SoSetting/pingKuOut.html b/Pda/View/SoSetting/pingKuOut.html
index 92a28f8..8ce06bf 100644
--- a/Pda/View/SoSetting/pingKuOut.html
+++ b/Pda/View/SoSetting/pingKuOut.html
@@ -84,6 +84,15 @@
<img src="/assets/down_arraw.png">
</div>
</div>
+ <div class="layui-form-item layout-dropdownlist" style="margin-top: 10px;">
+ <label class="layui-form-label">鐗╂枡-鎵规锛�</label>
+ <div class="layui-input-block" id="goodDiv">
+ <select id="goodSelect" lay-filter="goodSelect" lay-search>
+ <option value=""></option>
+ </select>
+ <img src="/assets/down_arraw.png">
+ </div>
+ </div>
<!-- <div id="" class="layui-form-item layout-input">
<label class="layui-form-label" lang>搴撲綅鍦板潃锛�</label>
<div class="layui-input-block">
@@ -115,17 +124,21 @@
<table id="tableBoxList" class="tbl-box-list" border="" cellspacing="" cellpadding="">
<tr>
<th lang>鎵樼洏鐮�</th>
- <th lang>鐗╂枡鍙�</th>
+ <!-- <th lang>鐗╂枡鍙�</th>
<th lang>鐗╂枡鍚嶇О</th>
- <th lang>鎵规鍙�</th>
+ <th lang>鎵规鍙�</th> -->
+ <th lang>鎵�灞炰粨搴�</th>
+ <th lang>鎵�灞炲尯鍩�</th>
<th lang>搴撲綅鍦板潃</th>
</tr>
<tr id="boxCell" style="display: none">
<td name="PalletNo">鎵樼洏鐮�</td>
- <td name="SkuNo">鐗╂枡鍙�</td>
+ <td name="WareHouseName">鎵�灞炰粨搴�</td>
+ <td name="AreaName">鎵�灞炲尯鍩�</td>
+ <!-- <td name="SkuNo">鐗╂枡鍙�</td>
<td name="SkuName">鐗╂枡鍚嶇О</td>
- <td name="LotNo">鎵规鍙�</td>
+ <td name="LotNo">鎵规鍙�</td> -->
<td name="LocatNo">搴撲綅鍦板潃</td>
<!-- <td name="del">
<div id="" class="tbl-btn-del" lang>
@@ -173,11 +186,23 @@
}
form.on('select(getbar)', function (data) {
- console.log();
+ //console.log();
if (data.value == "") {
return;
}
GetBoxInfo();
+ });
+
+ form.on('select(goodSelect)', function (data) {
+ console.log($("#goodSelect").val());
+ if (data.value == "") {
+ return;
+ }
+ var skuno = $("#goodSelect").val().substring(0,6);
+ var lotNo = $("#goodSelect").val().substring(12);
+ console.log("skuno:"+skuno);
+ console.log("lotNo:" + lotNo);
+ loadlocatinfo(skuno, lotNo);
});
$("#selectDiv").click(function () {
@@ -195,14 +220,13 @@
var val = input.val()
$("#bar").empty()
$("#bar").append('<option value =>' + '</option>');
- form.render('select');
var PalletNo = $("#PalletNo").val();
if(PalletNo.length != 8){ //涓嬫媺妗嗚幏鍙栧钩搴撳嚭搴撳崟
var param = {
Type: "1",
};
synData(IP + "/PdaSo/GetRunNoticeList", param,'post', function (res) {
- console.log(res);
+ //console.log(res);
if (res.code == 0) { //鎴愬姛
for (var i = 0; i < res.data.length; i++) {
$("#bar").append('<option value =' + res.data[i] + '>' + res.data[i]
@@ -264,9 +288,10 @@
}
synData(IP + "/PdaSo/GetPingKuInfoByPallet", param2, 'get', function (res) {
if (res.code == 0) {
- tableData = deepCopy(res.data)
-
- refreshTable(tableData)
+ updateGoodList(res.data);//鐗╂枡鎵规淇℃伅
+ var skuno = res.data[0].SkuNo;
+ var lotNo = res.data[0].LotNo;
+ loadlocatinfo(skuno, lotNo);//鑾峰彇鎵樼洏浣嶇疆淇℃伅
} else {
layer.msg(res.msg, {
icon: 2,
@@ -274,6 +299,50 @@
}, function () { });
}
});
+ }
+
+ //鑾峰彇鎵樼洏浣嶇疆淇℃伅骞舵洿鏂拌〃鍗�
+ function loadlocatinfo(skuno, lotNo){
+ let param3 = {
+ "SoNo": $("#bar").val(),
+ "SkuNo": skuno,
+ "LotNo": lotNo
+ }
+ synData(IP + "/PdaSo/GetPingKuLocationInfo", param3, 'get', function (res) {//鑾峰彇鎵樼洏鏄庣粏
+ if (res.code == 0) {
+ tableData = deepCopy(res.data)
+ refreshTable(tableData)
+ } else {
+ layer.msg(res.msg, {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function () { });
+ }
+ })
+ }
+
+ /* 鐗╂枡鍙婃壒娆′笅鎷夋 */
+ function updateGoodList(data) {
+ var input = $('select[id="goodSelect"]').next().find('.layui-select-title input')
+ var val = input.val()
+ $("#goodSelect").empty()
+ $("#goodSelect").append('<option value =>' + '</option>');
+
+ for (var i = 0; i < data.length; i++) {
+
+ if (data[i].LotNo == '' || data[i].LotNo == null) {
+ $("#goodSelect").append('<option value =' + data[i].SkuNo + ' selected>' + data[i]
+ .SkuName +
+ '</option>');
+ } else {
+ $("#goodSelect").append('<option value =' + data[i].SkuNo + data[i].SkuName + "-" +
+ data[i].LotNo + ' selected>' + data[i]
+ .SkuNo + data[i].SkuName + "-" + data[i].LotNo +
+ '</option>');
+ }
+ }
+ form.render('select');
+
}
function clearTable() {
@@ -299,7 +368,6 @@
var arrTrs = new Array()
let idx = 0
for (var i in list) {
- console.log("list[i].LocatN:"+list[i].LocatNo);
// list[i].BoxCode
var tr = $("#boxCell").eq(0).clone();
tr.appendTo("#tableBoxList");
@@ -307,9 +375,11 @@
idx++;
tr.attr('index', idx)
tr.find("td[name='PalletNo']").html(list[i].PalletNo);
- tr.find("td[name='SkuNo']").html(list[i].SkuNo);
- tr.find("td[name='SkuName']").html(list[i].SkuName);
- tr.find("td[name='LotNo']").html(list[i].LotNo);
+ //tr.find("td[name='SkuNo']").html(list[i].SkuNo);
+ //tr.find("td[name='SkuName']").html(list[i].SkuName);
+ //tr.find("td[name='LotNo']").html(list[i].LotNo);
+ tr.find("td[name='WareHouseName']").html(list[i].WareHouseName);
+ tr.find("td[name='AreaName']").html(list[i].AreaName);
tr.find("td[name='LocatNo']").html(list[i].LocatNo);
// var code = list[i].BoxCode
// //console.log("code is "+code)
@@ -331,7 +401,7 @@
"PalletNo": $("#PalletNo").val()
}
synData(IP + "/PdaSo/IsEnableOkPalletNo", param, 'post', function (res) {
- console.log(res);
+
if (res.code == 0) { //鎴愬姛
updateBillList();
diff --git a/Wms/Model/ModelDto/PdaDto/PdaSoDto.cs b/Wms/Model/ModelDto/PdaDto/PdaSoDto.cs
index 5eed2ee..00dab95 100644
--- a/Wms/Model/ModelDto/PdaDto/PdaSoDto.cs
+++ b/Wms/Model/ModelDto/PdaDto/PdaSoDto.cs
@@ -24,6 +24,8 @@
public string LotNo { get; set; } // 鎵规
public string LocatNo { get; set; }
public decimal? PickedQty { get; set; } // 绠卞唴宸叉嫞鏁伴噺
+ public string WareHouseName { get; set; }
+ public string AreaName { get; set; }
}
public class DetailIdSkuLotNo
{
diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
index 4c54ba8..2c65e4c 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -1198,6 +1198,17 @@
var info = Db.Queryable<BllExportAllot>()
.LeftJoin<DataStockDetail>((a, b) => a.PalletNo == b.PalletNo)
.Where(a=>a.IsDel == "0" && (a.Status == "0"||a.Status =="1") && a.SONo == soNo)
+ .GroupBy((a,b) => new { a.SkuNo, a.SkuName, a.LotNo}).Select((a,b) => new BoxInfo()
+ {
+ SkuNo = a.SkuNo,
+ SkuName = a.SkuName,
+ LotNo = a.LotNo
+ }).ToListAsync();
+ var data = await info;
+
+ /*v var info = Db.Queryable<BllExportAllot>()
+ .LeftJoin<DataStockDetail>((a, b) => a.PalletNo == b.PalletNo)
+ .Where(a=>a.IsDel == "0" && (a.Status == "0"||a.Status =="1") && a.SONo == soNo)
.GroupBy((a,b) => new { a.SkuNo, a.SkuName, a.LotNo, a.PalletNo,b.LocatNo }).Select((a,b) => new BoxInfo()
{
PalletNo = a.PalletNo,
@@ -1206,22 +1217,41 @@
LotNo = a.LotNo,
LocatNo = b.LocatNo
}).ToListAsync();
+ var data = await info;*/
+
+ return data;
+ }
+
+ //鑾峰彇骞冲簱鍗曟嵁涓墭鐩樹綅缃俊鎭�
+ public async Task<List<BoxInfo>> GetPingKuLocationInfo(string soNo,string skuno,string lotno)
+ {
+
+ var info = Db.Queryable<BllExportAllot>()
+ .LeftJoin<DataStockDetail>((a, b) => a.PalletNo == b.PalletNo)
+ .LeftJoin<SysWareHouse>((a,b,c)=>b.WareHouseNo == c.WareHouseNo)
+ .LeftJoin<SysStorageArea>((a,b,c,d)=>b.AreaNo == d.AreaNo)
+ .Where(a => a.IsDel == "0" && (a.Status == "0" || a.Status == "1") && a.SONo == soNo && a.SkuNo == skuno && a.LotNo == lotno)
+ .GroupBy((a, b,c,d) => new { a.PalletNo, b.LocatNo,c.WareHouseName,d.AreaName }).Select((a, b,c,d) => new BoxInfo()
+ {
+ PalletNo = a.PalletNo,
+ LocatNo = b.LocatNo,
+ WareHouseName = c.WareHouseName,
+ AreaName = d.AreaName
+ }).ToListAsync();
var data = await info;
- /*var a = info.First().LocatNo;
-
- if (await info.CountAsync() == 0)
- {
- throw Oops.Bah("鏈煡璇㈠埌鎵樼洏鍒嗛厤涓嬪彂鐨勪俊鎭�");
- }
-
- var data = await info.GroupBy(a => new { a.SkuNo, a.SkuName, a.LotNo,a.PalletNo }).Select(a => new BoxInfo()
- {
- PalletNo = a.PalletNo,
- SkuNo = a.SkuNo,
- SkuName = a.SkuName,
- LotNo = a.LotNo
- }).ToListAsync();*/
+ /*v var info = Db.Queryable<BllExportAllot>()
+ .LeftJoin<DataStockDetail>((a, b) => a.PalletNo == b.PalletNo)
+ .Where(a=>a.IsDel == "0" && (a.Status == "0"||a.Status =="1") && a.SONo == soNo)
+ .GroupBy((a,b) => new { a.SkuNo, a.SkuName, a.LotNo, a.PalletNo,b.LocatNo }).Select((a,b) => new BoxInfo()
+ {
+ PalletNo = a.PalletNo,
+ SkuNo = a.SkuNo,
+ SkuName = a.SkuName,
+ LotNo = a.LotNo,
+ LocatNo = b.LocatNo
+ }).ToListAsync();
+ var data = await info;*/
return data;
}
diff --git a/Wms/WMS.BLL/SysServer/UserInforServer.cs b/Wms/WMS.BLL/SysServer/UserInforServer.cs
index 30997b1..29fbd2d 100644
--- a/Wms/WMS.BLL/SysServer/UserInforServer.cs
+++ b/Wms/WMS.BLL/SysServer/UserInforServer.cs
@@ -16,6 +16,7 @@
using WMS.Entity.BllTaskEntity;
using WMS.DAL;
using Utility;
+using System.Text.RegularExpressions;
namespace WMS.BLL.SysServer
{
@@ -61,6 +62,7 @@
/// <returns></returns>
public async Task<List<UserInfoDto>> GetUserRoleList(string UserName, string DepartmentNo, string RoleNo, string Status)
{
+ var modUser = await Db.Queryable<SysUserInfor>().FirstAsync(s => s.Id == _userManager.UserId);
return await Db.Queryable<SysUserInfor>()
.LeftJoin<SysUserInfor>((a, b) => a.CreateUser == b.Id)
.LeftJoin<SysDepartment>((a, b, c) => a.DepartmentNo == c.DepartmentNo)
@@ -70,6 +72,7 @@
.WhereIF(!string.IsNullOrEmpty(DepartmentNo), a => a.DepartmentNo == DepartmentNo)
.WhereIF(!string.IsNullOrEmpty(RoleNo), a => a.RoleNo == RoleNo)
.WhereIF(!string.IsNullOrEmpty(Status), a => a.Status == Status)
+ .WhereIF(modUser.UserName.ToUpper() != "ADMIN", a => a.CreateUser == _userManager.UserId)
.Where(a => a.IsDel == "0")
.Select<UserInfoDto>((a, b, c, d) => new UserInfoDto()
{
@@ -192,15 +195,39 @@
/// <param name="userId">鐢ㄦ埛id</param>
/// <returns></returns>
/// <exception cref="Exception">鎹曡幏寮傚父</exception>
- public async Task<int> UptUserPassWord(string pwdNew, int userId)
+ public async Task<int> UptUserPassWord(string pwdNew,string pwdNewTwo, int userId)
{
+ var funSet = Db.Queryable<SysFunSetting>().Where(m => m.IsDel == "0" && m.FunSetName == "瀵嗙爜瑙勫垯" && m.IsEnable == "NO").ToList().FirstOrDefault();
+ if (funSet != null)
+ {
+ bool t = false;
+ switch (funSet.FunSetNo)
+ {
+ case "Fun052": //鏁板瓧锛屽瓧姣嶏紝绗﹀彿
+ t = Regex.IsMatch(pwdNewTwo, @"^(?:(?=.*[0-9].*)(?=.*[A-Za-z].*)(?=.*[^0-9A-Za-z].*)).{3,}");
+ break;
+ case "Fun053": //瀛楁瘝锛屾暟瀛�
+ t = Regex.IsMatch(pwdNewTwo, @"^(?:(?=.*[0-9].*)(?=.*[A-Za-z].*)).{2,}");
+ break;
+ case "Fun051": //鏁板瓧锛屽瓧姣嶏紝绗﹀彿锛岄暱搴�
+ t = Regex.IsMatch(pwdNewTwo, @"^(?=.*[0-9])(?=.*[a-zA-Z])(?=([\x21-\x7e]+)[^a-zA-Z0-9]).{8,30}");
+ break;
+ default:
+ break;
+ }
+ if (!t)
+ {
+ throw Oops.Bah("杈撳叆瀵嗙爜涓嶇鍚堝瘑鐮佽鍒�");
+ }
+ }
return await Db.Updateable<SysUserInfor>()
- .Where(s => s.Id == userId)
- .SetColumns(s => s.UpdateTime == DateTime.Now)
- .SetColumns(s => s.UpdateUser == _userManager.UserId)
- .SetColumns(s=>s.PassWord == pwdNew)
- .SetColumns(s => s.SetPasswordTime == DateTime.Now)
- .ExecuteCommandAsync();
+ .Where(s => s.Id == userId)
+ .SetColumns(s => s.UpdateTime == DateTime.Now)
+ .SetColumns(s => s.UpdateUser == _userManager.UserId)
+ .SetColumns(s => s.PassWord == pwdNew)
+ .SetColumns(s => s.SetPasswordTime == DateTime.Now)
+ .ExecuteCommandAsync();
+
}
/// <summary>
/// x澶╁悗鎻愰啋鐢ㄦ埛淇敼瀵嗙爜
diff --git a/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs b/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
index 7d5b452..d0d59f4 100644
--- a/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
+++ b/Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
@@ -114,6 +114,15 @@
Task<List<BoxInfo>> GetPingKuInfoByPallet(string soNo, string palletNo);
/// <summary>
+ /// 鑾峰彇骞冲簱鎵樼洏浣嶇疆淇℃伅
+ /// </summary>
+ /// <param name="soNo">鍑哄簱鍗曞彿</param>
+ /// <param name="SkuNo">鐗╂枡缂栫爜</param>
+ /// <param name="LotNo">鎵规</param>
+ /// <returns></returns>
+ Task<List<BoxInfo>> GetPingKuLocationInfo(string soNo,string SkuNo,string LotNo);
+
+ /// <summary>
/// 骞冲簱鍑哄簱瀹屾垚
/// </summary>
/// <param name="soNo">鍑哄簱鍗曞彿</param>
diff --git a/Wms/WMS.IBLL/ISysServer/IUserInforServer.cs b/Wms/WMS.IBLL/ISysServer/IUserInforServer.cs
index 2c01207..ee85053 100644
--- a/Wms/WMS.IBLL/ISysServer/IUserInforServer.cs
+++ b/Wms/WMS.IBLL/ISysServer/IUserInforServer.cs
@@ -64,7 +64,7 @@
/// <param name="pwdNew">鏂板瘑鐮�</param>
/// <param name="userId">鐢ㄦ埛id</param>
/// <returns></returns>
- Task<int> UptUserPassWord(string pwdNew, int userId);
+ Task<int> UptUserPassWord(string pwdNew,string pwdNewTwo, int userId);
/// <summary>
/// x澶╁悗鎻愰啋鐢ㄦ埛淇敼瀵嗙爜
diff --git a/Wms/Wms/Controllers/BasisController.cs b/Wms/Wms/Controllers/BasisController.cs
index 95d7afc..87c97b8 100644
--- a/Wms/Wms/Controllers/BasisController.cs
+++ b/Wms/Wms/Controllers/BasisController.cs
@@ -201,7 +201,7 @@
{
pwdOld = Md5Tools.CalcMd5(pwdOld);
pwdNew = Md5Tools.CalcMd5(pwdNew);
- pwdNewTwo = Md5Tools.CalcMd5(pwdNewTwo);
+ //pwdNewTwo = Md5Tools.CalcMd5(pwdNewTwo);
//鑾峰彇褰撳墠鎿嶄綔鐢ㄦ埛id
SysUserInfor user = await _userInforServer.GetUserInfoById(_userManager.UserId);
if (user == null)
@@ -209,7 +209,7 @@
if (user.PassWord != pwdOld)
throw Oops.Bah("鍘熷瘑鐮佷笉姝g‘");
//淇敼瀵嗙爜
- int i = await _userInforServer.UptUserPassWord(pwdNew, _userManager.UserId);
+ int i = await _userInforServer.UptUserPassWord(pwdNew, pwdNewTwo, _userManager.UserId);
if (i <= 0)
throw Oops.Bah("淇敼瀵嗙爜澶辫触");
}
diff --git a/Wms/Wms/Controllers/PdaSoController.cs b/Wms/Wms/Controllers/PdaSoController.cs
index 3702a21..7e4d432 100644
--- a/Wms/Wms/Controllers/PdaSoController.cs
+++ b/Wms/Wms/Controllers/PdaSoController.cs
@@ -175,6 +175,20 @@
}
/// <summary>
+ /// 鑾峰彇骞冲簱鎵樼洏浣嶇疆淇℃伅
+ /// </summary>
+ /// <param name="soNo">鍑哄簱鍗曞彿</param>
+ /// <param name="SkuNo">鐗╂枡缂栫爜</param>
+ /// <param name="LotNo">鎵规</param>
+ /// <returns></returns>
+ [HttpGet]
+ public async Task<List<BoxInfo>> GetPingKuLocationInfo(string soNo,string SkuNo,string LotNo)
+ {
+ return await _pdaSoSvc.GetPingKuLocationInfo(soNo, SkuNo, LotNo);
+ }
+
+
+ /// <summary>
/// 骞冲簱鍑哄簱
/// </summary>
/// <param name="soNo">鍑哄簱鍗曞彿</param>
--
Gitblit v1.8.0