Browse Source

1

AddValidOverTime
506583276@qq.com 2 years ago
parent
commit
a8f144bd60
  1. 42
      BBWY.Client/APIServices/QiKu/PackTaskService.cs
  2. 5
      BBWY.Client/APIServices/QiKu/PackUserService.cs
  3. 53
      BBWY.Client/APIServices/QiKu/PackagingTaskService.cs
  4. 16
      BBWY.Client/APIServices/QiKu/QualityTaskService.cs
  5. 10
      BBWY.Client/APIServices/QiKu/SealBoxService.cs
  6. 15
      BBWY.Client/App.xaml.cs
  7. 5
      BBWY.Client/BBWY.Client.csproj
  8. 29
      BBWY.Client/Models/APIModel/Request/QualityTaskRequest.cs
  9. 4
      BBWY.Client/Models/APIModel/Response/PackTask/SearchTaskListResponse.cs
  10. 2
      BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitFallWareResponse.cs
  11. 1
      BBWY.Client/Models/APIModel/Response/PackUser/SearchPackerSalaryResponse.cs
  12. 22
      BBWY.Client/Models/APIModel/Response/PackUser/SearchPackerTaskResponse.cs
  13. 227
      BBWY.Client/Models/APIModel/Response/PackagingTask/SearchPackagingTaskListResponse.cs
  14. 11
      BBWY.Client/Models/APIModel/Response/QualityTask/SearchQualityTaskListResponse.cs
  15. 10
      BBWY.Client/Models/APIModel/Response/SealBox/GetWareSealBoxResponse.cs
  16. 3
      BBWY.Client/Models/APIModel/Response/SealBox/GetWareSealBoxWaitConfigureResponse.cs
  17. 1
      BBWY.Client/Models/APIModel/Response/SealBox/GetWareWaitTransportResponse.cs
  18. 26
      BBWY.Client/Models/Enums.cs
  19. 49
      BBWY.Client/Models/PackTask/PackTaskModel.cs
  20. 9
      BBWY.Client/Models/PackTask/SealBoxModel.cs
  21. 6
      BBWY.Client/Models/SealBox/SealBoxConfigureModel.cs
  22. 1
      BBWY.Client/Models/SealBox/SealBoxConfiguredModel.cs
  23. 2
      BBWY.Client/Models/SealBox/SealBoxWaitConfigureModel.cs
  24. 2
      BBWY.Client/Models/SealBox/WareNoSealBoxModel.cs
  25. 2
      BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs
  26. 700
      BBWY.Client/ViewModels/PackTask/TaskListViewModel.cs
  27. 1513
      BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs
  28. 178
      BBWY.Client/ViewModels/PackerTask/PackerTaskViewModel.cs
  29. 65
      BBWY.Client/ViewModels/QualityTask/QualityViewModel.cs
  30. 14
      BBWY.Client/ViewModels/SealBox/SealBoxConfigureViewModel.cs
  31. 4
      BBWY.Client/Views/FallWare/FallWareConfiguredControl.xaml
  32. 4
      BBWY.Client/Views/FallWare/FallWareWaitConfigureControl.xaml
  33. 8
      BBWY.Client/Views/FallWare/WaitFallWareControl.xaml
  34. 5
      BBWY.Client/Views/FallWare/WareFallWareListControl.xaml
  35. 4
      BBWY.Client/Views/PackTask/PackDetailWindow.xaml
  36. 4
      BBWY.Client/Views/PackTask/ShopWaitPackageControl.xaml
  37. 5
      BBWY.Client/Views/PackTask/TaskList.xaml
  38. 4
      BBWY.Client/Views/PackTask/TaskListControl.xaml
  39. 15
      BBWY.Client/Views/PackTask/WaitPackageControl.xaml
  40. 3
      BBWY.Client/Views/PackTask/WareHouseList.xaml
  41. 11
      BBWY.Client/Views/PackTask/WareHouseListControl.xaml
  42. 228
      BBWY.Client/Views/PackagingTask/PackagingTaskList.xaml
  43. 245
      BBWY.Client/Views/PackagingTask/PackagingTaskList.xaml.cs
  44. 89
      BBWY.Client/Views/PackagingTask/ShopPackagingTaskList.xaml
  45. 26
      BBWY.Client/Views/PackagingTask/ShopPackagingTaskList.xaml.cs
  46. 502
      BBWY.Client/Views/PackagingTask/ShopWaitPackingTaskControl.xaml
  47. 26
      BBWY.Client/Views/PackagingTask/ShopWaitPackingTaskControl.xaml.cs
  48. 566
      BBWY.Client/Views/PackagingTask/WaitPackingTaskControl.xaml
  49. 26
      BBWY.Client/Views/PackagingTask/WaitPackingTaskControl.xaml.cs
  50. 4
      BBWY.Client/Views/PackerTask/PackerPackCompletedControl.xaml
  51. 4
      BBWY.Client/Views/PackerTask/PackerSalaryControl.xaml
  52. 2
      BBWY.Client/Views/PackerTask/PackerTaskList.xaml
  53. 14
      BBWY.Client/Views/PackerTask/PackerWaitPackageControl.xaml
  54. 89
      BBWY.Client/Views/PackerTask/PackerWaitPackageList.xaml
  55. 26
      BBWY.Client/Views/PackerTask/PackerWaitPackageList.xaml.cs
  56. 10
      BBWY.Client/Views/QualityTask/AddExceptionWindow.xaml
  57. 20
      BBWY.Client/Views/QualityTask/AddExceptionWindow.xaml.cs
  58. 28
      BBWY.Client/Views/QualityTask/BatchPrintWindow.xaml
  59. 52
      BBWY.Client/Views/QualityTask/BatchPrintWindow.xaml.cs
  60. 63
      BBWY.Client/Views/QualityTask/QualityControl.xaml
  61. 6
      BBWY.Client/Views/QualityTask/QualityControl.xaml.cs
  62. 9
      BBWY.Client/Views/QualityTask/QualityWindow.xaml
  63. 6
      BBWY.Client/Views/QualityTask/ShopWaitQualityControl.xaml
  64. 85
      BBWY.Client/Views/QualityTask/ShopWaitQualityList.xaml
  65. 25
      BBWY.Client/Views/QualityTask/ShopWaitQualityList.xaml.cs
  66. 7
      BBWY.Client/Views/QualityTask/WaitQualityList.xaml
  67. 4
      BBWY.Client/Views/SealBox/SealBoxConfiguredControl.xaml
  68. 8
      BBWY.Client/Views/SealBox/SealBoxNoConfigureControl.xaml
  69. 4
      BBWY.Client/Views/SealBox/SealBoxWaitConfigureControl.xaml
  70. 8
      BBWY.Client/Views/SealBox/SetSealBoxPolicyWindow.xaml
  71. 2
      BBWY.Client/Views/SealBox/SetSealBoxPolicyWindow.xaml.cs
  72. 8
      BBWY.Client/Views/SealBox/WaitSealBoxControl.xaml
  73. 92
      BBWY.Client/Views/SplitTask/SplitTaskWindow.xaml
  74. 104
      BBWY.Client/Views/SplitTask/SplitTaskWindow.xaml.cs
  75. 4
      BBWY.Client/Views/WaitTransport/TeamWaitTransportControl.xaml
  76. 8
      BBWY.Client/Views/WaitTransport/WareWaitTransportControl.xaml

42
BBWY.Client/APIServices/QiKu/PackTaskService.cs

@ -30,14 +30,14 @@ namespace BBWY.Client.APIServices
TaskState? TaskState = null, TaskState? TaskState = null,
int pageIndex = 1, int pageIndex = 1,
int pageSize = 10 int pageSize = 10
) )
{ {
return SendRequest<SearchTaskListResponse>(globalContext.QKApiHost, "api/PackTask/SearchTaskList", new return SendRequest<SearchTaskListResponse>(globalContext.QKApiHost, "api/PackTask/SearchTaskList", new
{ {
orderSn, orderSn,
spuId, spuId,
skuId, skuId,
@ -57,7 +57,7 @@ namespace BBWY.Client.APIServices
int pageSize = 10, int pageSize = 10,
string SkuTitle = null, string SkuTitle = null,
string SpuTitle = null, string SpuTitle = null,
string PackUserName=null string PackUserName = null
) )
{ {
@ -373,18 +373,19 @@ namespace BBWY.Client.APIServices
} }
public ApiResponse<object> StoreGetBySelfV2(long taskId, int storeGetCount, string PickerUserName) public ApiResponse<object> StoreGetBySelfV3(long taskId, int storeGetCount, string PickerUserName)
{ {
return SendRequest<object>(globalContext.QKApiHost, $"api/PackTask/StoreGetBySelfV2", new { return SendRequest<object>(globalContext.QKApiHost, $"api/PackTask/StoreGetBySelfV3", new
{
taskId, taskId,
storeGetCount, storeGetCount,
PickerUserName, PickerUserName,
OperatorUserName= globalContext.User.Name OperatorUserName = globalContext.User.Name
}, null, HttpMethod.Post); }, null, HttpMethod.Post);
} }
public ApiResponse<SearchStoreGetSelfResponse> SearchStoreGetSelfList(string taskId, string OrderSn, string SpuId, string SkuId,string DepartmentName, string ShopName, int? pageIndex, int pageSize, string ShopId) public ApiResponse<SearchStoreGetSelfResponse> SearchStoreGetSelfList(string taskId, string OrderSn, string SpuId, string SkuId, string DepartmentName, string ShopName, int? pageIndex, int pageSize, string ShopId)
{ {
return SendRequest<SearchStoreGetSelfResponse>(globalContext.QKApiHost, $"api/PackTask/SearchStoreGetSelfList", new return SendRequest<SearchStoreGetSelfResponse>(globalContext.QKApiHost, $"api/PackTask/SearchStoreGetSelfList", new
@ -393,8 +394,11 @@ namespace BBWY.Client.APIServices
OrderSn, OrderSn,
SpuId, SpuId,
SkuId, SkuId,
DepartmentName, ShopName, DepartmentName,
ShopId , pageIndex, pageSize, ShopName,
ShopId,
pageIndex,
pageSize,
}, null, HttpMethod.Post); }, null, HttpMethod.Post);
} }
@ -438,6 +442,26 @@ namespace BBWY.Client.APIServices
} }
public ApiResponse<object> SplitPackTask(long nowTaskId, int ExceptionCount, TaskExceptionType TaskExceptionType, string RemarkMsg, TaskState AbortTaskState)
{
return SendRequest<object>(globalContext.QKApiHost, "api/PackTask/SplitPackTask",
new
{
UserName = globalContext.User.Name,
nowTaskId,
ExceptionCount,
TaskExceptionType,
RemarkMsg,
AbortTaskState
}
, null, HttpMethod.Post);
}
} }
public class CompeteSealBox public class CompeteSealBox

5
BBWY.Client/APIServices/QiKu/PackUserService.cs

@ -25,7 +25,9 @@ namespace BBWY.Client.APIServices.QiKu
int pageIndex = 1, int pageIndex = 1,
int pageSize = 10, int pageSize = 10,
string SkuTitle = null, string SkuTitle = null,
string SpuTitle = null) string SpuTitle = null,
PackagingTaskExceptionState? PackagingTaskExceptionState =null
)
{ {
return SendRequest<SearchPackerTaskResponse>(globalContext.QKApiHost, $"api/PackUser/SearchPackerTask", return SendRequest<SearchPackerTaskResponse>(globalContext.QKApiHost, $"api/PackUser/SearchPackerTask",
new new
@ -44,6 +46,7 @@ namespace BBWY.Client.APIServices.QiKu
SkuTitle, SkuTitle,
SpuTitle, SpuTitle,
UserId = globalContext.User.Id.ToString(), UserId = globalContext.User.Id.ToString(),
PackagingTaskExceptionState
} }
, null, HttpMethod.Post); , null, HttpMethod.Post);
} }

53
BBWY.Client/APIServices/QiKu/PackagingTaskService.cs

@ -0,0 +1,53 @@
using BBWY.Client.Models.APIModel;
using BBWY.Client.Models;
using BBWY.Common.Http;
using BBWY.Common.Models;
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Text;
namespace BBWY.Client.APIServices.QiKu
{
public class PackagingTaskService : BaseApiService,IDenpendency
{
public PackagingTaskService(RestApiService restApiService, GlobalContext globalContext) : base(restApiService, globalContext)
{
}
public ApiResponse<SearchPackagingTaskListResponse> SearchPackagingTaskList(string WayBillNo = null, string SourceExpressName = null, string departmentName = null, string skuId = null, string taskId = null,
string spuId = null, string orderSn = null,
PackagingTaskExceptionState? PackagingTaskExceptionState = null,
string ShopName = null,
int pageIndex = 1,
int pageSize = 10,
string SkuTitle = null,
string SpuTitle = null,
string PackUserName = null,
string shopId =null
)
{
return SendRequest<SearchPackagingTaskListResponse>(globalContext.QKApiHost, "api/PackagingTask/SearchPackagingTaskList", new
{
SkuTitle,
SpuTitle,
DepartmentName = departmentName,
SkuId = skuId,
TaskId = taskId,
PackagingTaskExceptionState,
PageIndex = pageIndex,
PageSize = pageSize,
ShopName = ShopName,
WayBillNo = WayBillNo,
SourceExpressName = SourceExpressName,
spuId,
orderSn,
PackUserName,
shopId
}, null, HttpMethod.Post);
}
}
}

16
BBWY.Client/APIServices/QiKu/QualityTaskService.cs

@ -25,7 +25,8 @@ namespace BBWY.Client.APIServices.QiKu
int pageSize = 10, int pageSize = 10,
string SkuTitle = null, string SkuTitle = null,
string SpuTitle = null, string SpuTitle = null,
string PackUserName = null string PackUserName = null,
string shopId = null
) )
{ {
@ -44,7 +45,8 @@ namespace BBWY.Client.APIServices.QiKu
SourceExpressName = SourceExpressName, SourceExpressName = SourceExpressName,
spuId, spuId,
orderSn, orderSn,
PackUserName PackUserName,
shopId
}, null, HttpMethod.Post); }, null, HttpMethod.Post);
} }
@ -52,7 +54,7 @@ namespace BBWY.Client.APIServices.QiKu
public ApiResponse<object> QualityTaskException(long TaskId, TaskExceptionType TaskExceptionType, string RemarkMsg) public ApiResponse<object> QualityTaskException(long TaskId, TaskExceptionType TaskExceptionType, string RemarkMsg, TaskState AbortTaskState)
{ {
return SendRequest<object>(globalContext.QKApiHost, $"api/QualityTask/QualityTaskException", return SendRequest<object>(globalContext.QKApiHost, $"api/QualityTask/QualityTaskException",
new new
@ -60,7 +62,8 @@ namespace BBWY.Client.APIServices.QiKu
TaskId, TaskId,
TaskExceptionType, TaskExceptionType,
RemarkMsg, RemarkMsg,
UserName = globalContext.User.Name UserName = globalContext.User.Name,
AbortTaskState
} }
, null, HttpMethod.Post); , null, HttpMethod.Post);
} }
@ -82,14 +85,13 @@ namespace BBWY.Client.APIServices.QiKu
} }
public ApiResponse<object> SendMsgToPurchaseDepartment(long TaskId, string ModelTitle, string TipMsg) public ApiResponse<object> SendMsgToPurchaseDepartment(long TaskId, SendCer3CValidMsgModel SendCer3CValidMsgModel)
{ {
return SendRequest<object>(globalContext.QKApiHost, $"api/QualityTask/SendMsgToPurchaseDepartment", return SendRequest<object>(globalContext.QKApiHost, $"api/QualityTask/SendMsgToPurchaseDepartment",
new new
{ {
TaskId, TaskId,
ModelTitle, SendCer3CValidMsgModel,
TipMsg,
UserName = globalContext.User.Name UserName = globalContext.User.Name
} }
, null, HttpMethod.Post); , null, HttpMethod.Post);

10
BBWY.Client/APIServices/QiKu/SealBoxService.cs

@ -91,7 +91,7 @@ namespace BBWY.Client.APIServices
, null, HttpMethod.Post); , null, HttpMethod.Post);
} }
public ApiResponse<GetWareSealBoxResponse> GetWareSealBoxList(string ShopName, long? TaskId, string SkuId,long? SealBoxId, int? PageIndex, int? PageSize) public ApiResponse<GetWareSealBoxResponse> GetWareSealBoxList(string ShopName, string TaskId, string SkuId,long? SealBoxId, int? PageIndex, int? PageSize)
{ {
return SendRequest<GetWareSealBoxResponse>(globalContext.QKApiHost, $"api/SealBox/GetWareSealBoxList", return SendRequest<GetWareSealBoxResponse>(globalContext.QKApiHost, $"api/SealBox/GetWareSealBoxList",
new new
@ -128,7 +128,7 @@ namespace BBWY.Client.APIServices
/// <param name="PageIndex"></param> /// <param name="PageIndex"></param>
/// <param name="PageSize"></param> /// <param name="PageSize"></param>
/// <returns></returns> /// <returns></returns>
public ApiResponse<SearchWaitFallWareResponse> SearchWareFallWareConfigureList(PositionState positionState, string ShopName = null, long? TaskId = null, string SkuId = null,long?sealBoxId=null, int PageIndex = 1 public ApiResponse<SearchWaitFallWareResponse> SearchWareFallWareConfigureList(PositionState positionState, string ShopName = null, string TaskId = null, string SkuId = null,long?sealBoxId=null, int PageIndex = 1
, int PageSize = 10) , int PageSize = 10)
{ {
return SendRequest<SearchWaitFallWareResponse>(globalContext.QKApiHost, $"api/SealBox/SearchWareFallWareConfigureList", return SendRequest<SearchWaitFallWareResponse>(globalContext.QKApiHost, $"api/SealBox/SearchWareFallWareConfigureList",
@ -155,7 +155,7 @@ namespace BBWY.Client.APIServices
/// <param name="PageIndex"></param> /// <param name="PageIndex"></param>
/// <param name="PageSize"></param> /// <param name="PageSize"></param>
/// <returns></returns> /// <returns></returns>
public ApiResponse<SearchFallWareConfiguredResponse> SearchFallWareConfiguredList(PositionState positionState, long? TaskId = null, string SkuId = null, int PageIndex = 1 public ApiResponse<SearchFallWareConfiguredResponse> SearchFallWareConfiguredList(PositionState positionState, string TaskId = null, string SkuId = null, int PageIndex = 1
, int PageSize = 10) , int PageSize = 10)
{ {
return SendRequest<SearchFallWareConfiguredResponse>(globalContext.QKApiHost, $"api/SealBox/SearchFallWareConfiguredList", return SendRequest<SearchFallWareConfiguredResponse>(globalContext.QKApiHost, $"api/SealBox/SearchFallWareConfiguredList",
@ -222,7 +222,7 @@ namespace BBWY.Client.APIServices
} }
public ApiResponse<GetWareSealBoxWaitConfigureResponse> GetWareSealBoxWaitConfigureList(string ShopName, long? TaskId, string SkuId, int? PageIndex, int? PageSize) public ApiResponse<GetWareSealBoxWaitConfigureResponse> GetWareSealBoxWaitConfigureList(string ShopName, string TaskId, string SkuId, int? PageIndex, int? PageSize)
{ {
return SendRequest<GetWareSealBoxWaitConfigureResponse>(globalContext.QKApiHost, $"api/SealBox/GetWareSealBoxWaitConfigureList", return SendRequest<GetWareSealBoxWaitConfigureResponse>(globalContext.QKApiHost, $"api/SealBox/GetWareSealBoxWaitConfigureList",
new new
@ -273,7 +273,7 @@ namespace BBWY.Client.APIServices
null, null, HttpMethod.Post); null, null, HttpMethod.Post);
} }
public ApiResponse<GetWareWaitCompletedResponse> GetWareWaitCompletedList(string shopId, string ShopName , long? TaskId , string SkuId , long? sealBoxId , int? PageIndex, int? PageSize) public ApiResponse<GetWareWaitCompletedResponse> GetWareWaitCompletedList(string shopId, string ShopName , string TaskId , string SkuId , long? sealBoxId , int? PageIndex, int? PageSize)
{ {
return SendRequest<GetWareWaitCompletedResponse>(globalContext.QKApiHost, $"api/SealBox/GetWareWaitCompletedList", return SendRequest<GetWareWaitCompletedResponse>(globalContext.QKApiHost, $"api/SealBox/GetWareWaitCompletedList",
new { new {

15
BBWY.Client/App.xaml.cs

@ -56,7 +56,7 @@ namespace BBWY.Client
//userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjY1ODk1OTgzMzc4MDc1NjQ4IiwidGVhbUlkIjoiMTUxNjcxNTM3MjQ0NTcwMDA5NiIsInNvblRlYW1JZHMiOiIxNTQwODg1NTcwNjI3MDQ3NDI0LDE1MTY3MTUzNzI0NDU3MDAwOTYiLCJleHAiOjE3MjQyOTE2MDZ9.NG6wDqHJ5ozmEDcAt2duJ50IcGarygrQ2bmiP4TGNRE"; //userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjY1ODk1OTgzMzc4MDc1NjQ4IiwidGVhbUlkIjoiMTUxNjcxNTM3MjQ0NTcwMDA5NiIsInNvblRlYW1JZHMiOiIxNTQwODg1NTcwNjI3MDQ3NDI0LDE1MTY3MTUzNzI0NDU3MDAwOTYiLCJleHAiOjE3MjQyOTE2MDZ9.NG6wDqHJ5ozmEDcAt2duJ50IcGarygrQ2bmiP4TGNRE";
//齐越山鸡 //齐越山鸡
userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNTM1MzMwMzI4ODkyMTQ5NzYwIiwidGVhbUlkIjoiMTUxNjk3NDI1MDU0MjUwMTg4OCIsInNvblRlYW1JZHMiOiIxNDM2Mjg4NTAwMjM1MjQzNTIwIiwiZXhwIjoxNzI2MzAwNjY0fQ.hPSbgJEuTt0MLy_7YkSJX4rRG3drJAfso-5IS8ZlOkY"; // userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNTM1MzMwMzI4ODkyMTQ5NzYwIiwidGVhbUlkIjoiMTUxNjk3NDI1MDU0MjUwMTg4OCIsInNvblRlYW1JZHMiOiIxNDM2Mjg4NTAwMjM1MjQzNTIwIiwiZXhwIjoxNzI2MzAwNjY0fQ.hPSbgJEuTt0MLy_7YkSJX4rRG3drJAfso-5IS8ZlOkY";
//飞鱼 //飞鱼
userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjI3NDg2MDI0Mjk0NzMxNzc2IiwidGVhbUlkIjoiMTUxNjk3NDI1MDU0MjUwMTg4OCIsInNvblRlYW1JZHMiOiIxNTE2OTc0MjUwNTQyNTAxODg4IiwiZXhwIjoxNzI0NTY1ODU5fQ._ezJmsvaStab8nDPB7qeoc2aakWfhHbeqq_X_RQsc4s"; userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjI3NDg2MDI0Mjk0NzMxNzc2IiwidGVhbUlkIjoiMTUxNjk3NDI1MDU0MjUwMTg4OCIsInNvblRlYW1JZHMiOiIxNTE2OTc0MjUwNTQyNTAxODg4IiwiZXhwIjoxNzI0NTY1ODU5fQ._ezJmsvaStab8nDPB7qeoc2aakWfhHbeqq_X_RQsc4s";
@ -68,15 +68,18 @@ namespace BBWY.Client
// userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjI0OTUxNjgzNTc2NTAwMjI0IiwidGVhbUlkIjoiMTYyMDM0MjAxNDcwNjk3ODgxNiIsInNvblRlYW1JZHMiOiIxNjIwMzQyMDE0NzA2OTc4ODE2LDE2MjAzNDQxNDA4NTAwMDgwNjQsMTQxMDk1NTYwNDYxMjA5MTkwNCIsImV4cCI6MTcyNDkxNDM5M30.tIgo70tzRxZyUQkX1Jsh9I4ySciX0VC9HMMOoTnwVtM"; // userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjI0OTUxNjgzNTc2NTAwMjI0IiwidGVhbUlkIjoiMTYyMDM0MjAxNDcwNjk3ODgxNiIsInNvblRlYW1JZHMiOiIxNjIwMzQyMDE0NzA2OTc4ODE2LDE2MjAzNDQxNDA4NTAwMDgwNjQsMTQxMDk1NTYwNDYxMjA5MTkwNCIsImV4cCI6MTcyNDkxNDM5M30.tIgo70tzRxZyUQkX1Jsh9I4ySciX0VC9HMMOoTnwVtM";
//包装组 //包装组
/// userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxMzk1NzA4MjA4NjU1MzcyMjg4IiwidGVhbUlkIjoiMTcxODU0MTA2MzM5NzgzODg0OCIsInNvblRlYW1JZHMiOiIiLCJleHAiOjE3MzAyODcxNjh9.lpiLJjP0prtQgZZfpG0NN6n60LNKstbFCJc-nLgb62A"; /// userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxMzk1NzA4MjA4NjU1MzcyMjg4IiwidGVhbUlkIjoiMTcxODU0MTA2MzM5NzgzODg0OCIsInNvblRlYW1JZHMiOiIiLCJleHAiOjE3MzAyODcxNjh9.lpiLJjP0prtQgZZfpG0NN6n60LNKstbFCJc-nLgb62A";
//齐越琳琳 //齐越琳琳
// userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjY4NDI2OTQyNTY0NTM2MzIwIiwidGVhbUlkIjoiMTUxNjcxNTM3MjQ0NTcwMDA5NiIsInNvblRlYW1JZHMiOiIxNzE4NTQxMDYzMzk3ODM4ODQ4LDE1MTY3MTUzNzI0NDU3MDAwOTYiLCJleHAiOjE3MzAyODcxNjh9.6vXadZWQfhnxbR3320RloKv3LqqbNdZ7wDDfO3tY_5U"; // userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjY4NDI2OTQyNTY0NTM2MzIwIiwidGVhbUlkIjoiMTUxNjcxNTM3MjQ0NTcwMDA5NiIsInNvblRlYW1JZHMiOiIxNzE4NTQxMDYzMzk3ODM4ODQ4LDE1MTY3MTUzNzI0NDU3MDAwOTYiLCJleHAiOjE3MzAyODcxNjh9.6vXadZWQfhnxbR3320RloKv3LqqbNdZ7wDDfO3tY_5U";
//齐越季夏 //齐越季夏
// userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjIyNzY3NTkzODM0MTU2MDMyIiwidGVhbUlkIjoiMTUxNjcxNTM3MjQ0NTcwMDA5NiIsInNvblRlYW1JZHMiOiIxNTE2NzE1MzcyNDQ1NzAwMDk2LDE3MTg1NDEwNjMzOTc4Mzg4NDgiLCJleHAiOjE3MzAyODcxNjh9.ZGBU0MoJbKdkgqe9x2e3l6q-AVZwfAkUwa3oB47PWhY"; // userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjIyNzY3NTkzODM0MTU2MDMyIiwidGVhbUlkIjoiMTUxNjcxNTM3MjQ0NTcwMDA5NiIsInNvblRlYW1JZHMiOiIxNTE2NzE1MzcyNDQ1NzAwMDk2LDE3MTg1NDEwNjMzOTc4Mzg4NDgiLCJleHAiOjE3MzAyODcxNjh9.ZGBU0MoJbKdkgqe9x2e3l6q-AVZwfAkUwa3oB47PWhY";
#else
//店铺自打包
//userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNzE5Nzc5OTU4MTYwNjI1NjY0IiwidGVhbUlkIjoiMTU0MDg4NTU3MDYyNzA0NzQyNCIsInNvblRlYW1JZHMiOiIxNzE4NTQxMDYzMzk3ODM4ODQ4IiwiZXhwIjoxNzMxNzI1NDA2fQ.VV6k8nDqTtQOY6_ma6QcX6geMU_kaswl16BGXF89so8";
#else
//var uid = e.Args.Count() > 0 ? e.Args.LastOrDefault(args => args.StartsWith("uid:")) : string.Empty; //var uid = e.Args.Count() > 0 ? e.Args.LastOrDefault(args => args.StartsWith("uid:")) : string.Empty;
//if (string.IsNullOrEmpty(uid)) //if (string.IsNullOrEmpty(uid))
//{ //{

5
BBWY.Client/BBWY.Client.csproj

@ -95,6 +95,11 @@
<ItemGroup> <ItemGroup>
<Folder Include="Resources\LabelNames\" /> <Folder Include="Resources\LabelNames\" />
<Folder Include="Views\QiKu\PackagingPort\" />
<Folder Include="Views\QiKu\PublishPort\QualityTask\" />
<Folder Include="Views\QiKu\PublishPort\PackagingTask\" />
<Folder Include="Views\QiKu\PublishPort\SealBox\" />
<Folder Include="Views\QiKu\WareHoursePort\" />
</ItemGroup> </ItemGroup>
</Project> </Project>

29
BBWY.Client/Models/APIModel/Request/QualityTaskRequest.cs

@ -63,21 +63,6 @@ namespace BBWY.Client.Models.APIModel.Request
/// 显示的条码Id /// 显示的条码Id
/// </summary> /// </summary>
public long? BarcodeId { get; set; } public long? BarcodeId { get; set; }
//public BarCodeDTO BarCodeDTO { get; set; }
/// <summary>
/// 是否需要合格证
/// </summary>
public bool IsNeedBar { get; set; }
/// <summary>
/// 是否需要合格证
/// </summary>
public bool IsNeedCer { get; set; }
///// <summary>
///// 配件列表
///// </summary>
//public PurchaseSku[] PurchaseSkus { get; set; }
/// <summary> /// <summary>
/// 到货数量 /// 到货数量
/// </summary> /// </summary>
@ -88,15 +73,9 @@ namespace BBWY.Client.Models.APIModel.Request
/// </summary> /// </summary>
public int GoodProductQuantity { get; set; } public int GoodProductQuantity { get; set; }
///// <summary> /// <summary>
///// 预计完成时间 /// 品牌标签类型
///// </summary> /// </summary>
//public DateTime? PreCompeteTime { get; set; } public BrandMarkType? BrandMarkType { get; set; }
///// <summary>
///// 地拖摆放编号
///// </summary>
//public int? FloorDragNumber { get; set; }
} }
} }

4
BBWY.Client/Models/APIModel/Response/PackTask/SearchTaskListResponse.cs

@ -22,6 +22,10 @@ namespace BBWY.Client.Models.APIModel
public class PackTaskData public class PackTaskData
{ {
/// <summary>
/// 任务备注(原任务:10000 子任务:10000-1)
/// </summary>
public string TaskIdRemark { get; set; }
/// <summary> /// <summary>
/// 图片链接 /// 图片链接
/// </summary> /// </summary>

2
BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitFallWareResponse.cs

@ -82,6 +82,8 @@ namespace BBWY.Client.Models.APIModel
public class WaitFallWareModel:NotifyObject public class WaitFallWareModel:NotifyObject
{ {
private bool isHideSkuList = true;//默认隐藏
public bool IsHideSkuList { get => isHideSkuList; set { Set(ref isHideSkuList, value); } }
/// <summary> /// <summary>
/// 仓库类型 /// 仓库类型
/// </summary> /// </summary>

1
BBWY.Client/Models/APIModel/Response/PackUser/SearchPackerSalaryResponse.cs

@ -81,6 +81,7 @@ namespace BBWY.Client.Models.APIModel
public class PackerTaskSalary public class PackerTaskSalary
{ {
public string TaskIdRemark { get; set; }
/// <summary> /// <summary>
/// 任务收益 /// 任务收益
/// </summary> /// </summary>

22
BBWY.Client/Models/APIModel/Response/PackUser/SearchPackerTaskResponse.cs

@ -8,6 +8,14 @@ namespace BBWY.Client.Models.APIModel
{ {
public class SearchPackerTaskResponse public class SearchPackerTaskResponse
{ {
/// <summary>
/// 待包装异常总数
/// </summary>
public string PackagingTaskExceptionCount { get; set; }
/// <summary>
/// 待包装数
/// </summary>
public string PackagingTaskCount { get; set; }
/// <summary> /// <summary>
/// 任务总量 /// 任务总量
/// </summary> /// </summary>
@ -23,9 +31,9 @@ namespace BBWY.Client.Models.APIModel
public string WaitPackCount { get; set; } public string WaitPackCount { get; set; }
} }
public class PackerTaskData:NotifyObject public class PackerTaskData : NotifyObject
{ {
public string TaskIdRemark { get; set; }
/// <summary> /// <summary>
/// 图片链接 /// 图片链接
@ -161,6 +169,16 @@ namespace BBWY.Client.Models.APIModel
/// </summary> /// </summary>
public bool? IsOverTimeTomorrow { get; set; } public bool? IsOverTimeTomorrow { get; set; }
/// <summary>
/// 任务挂起时间
/// </summary>
public DateTime? TaskAbortTime { get; set; }
/// <summary>
/// 包装任务状态
/// </summary>
public Models.PackagingTaskExceptionState PackagingTaskExceptionState { get; set; }
} }
public class MarkMessageModel public class MarkMessageModel

227
BBWY.Client/Models/APIModel/Response/PackagingTask/SearchPackagingTaskListResponse.cs

@ -0,0 +1,227 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace BBWY.Client.Models.APIModel
{
public class SearchPackagingTaskListResponse
{
/// <summary>
/// 待包装异常总数
/// </summary>
public int PackagingTaskExceptionCount { get; set; }
/// <summary>
/// 待包装数
/// </summary>
public int PackagingTaskCount { get; set; }
/// <summary>
/// 查询总数据(判断总页数)
/// </summary>
public int TotalCount { get; set; }
/// <summary>
/// 页面返回的数据
/// </summary>
public List<PackagingTaskData> Items { get; set; }
}
/// <summary>
/// 包装任务数据
/// </summary>
public class PackagingTaskData
{
/// <summary>
/// 任务备注(原任务:10000 子任务:10000-1)
/// </summary>
public string TaskIdRemark { get; set; }
/// <summary>
/// 图片链接
/// </summary>
public string Logo { get; set; }
/// <summary>
/// 任务id
/// </summary>
public long TaskId { get; set; }
/// <summary>
/// 需求方创建日期
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 任务状态
/// </summary>
public TaskState TaskState { get; set; }
/// <summary>
/// 需求方团队
/// </summary>
public string DepartmentName { get; set; }
/// <summary>
/// 需求方店铺
/// </summary>
public string ShopName { get; set; }
/// <summary>
/// 货号品名
/// </summary>
public string BrandName { get; set; }
/// <summary>
/// 对接人
/// </summary>
public string UserName { get; set; }
/// <summary>
/// skuid
/// </summary>
public string SkuId { get; set; }
/// <summary>
/// SKU标题
/// </summary>
public string SkuName { get; set; }
/// <summary>
/// sku数量
/// </summary>
public int SkuCount { get; set; }
/// <summary>
/// 打包类型(单件=0,多件=1)
/// </summary>
public int PackType { get; set; }
/// <summary>
/// 落仓(本地仓=0,齐越仓=1,京东仓=2,聚水潭=3)
/// </summary>
public string PositionType { get; set; }
/// <summary>
/// 基础包装(快递袋=0,纸箱=1,麻袋=2)
/// </summary>
public int BasicPack { get; set; }
/// <summary>
/// 增量1()
/// </summary>
public string Increment1 { get; set; }
/// <summary>
/// 合格证位置(外部包装=0,产品包装=1)
/// </summary>
public int? CertificatePosition { get; set; }
/// <summary>
/// sku配件名称
/// </summary>
public string SkuGoodsTitle { get; set; }
/// <summary>
/// 配件数
/// </summary>
public int GoodsNumber { get; set; }
/// <summary>
/// 条形码数据
/// </summary>
public BarCodeModel BarCodeDTO { get; set; }
/// <summary>
/// 合格证数据
/// </summary>
public CertificateModel[] Cers { get; set; }
/// <summary>
/// 品牌
/// </summary>
public string Brand { get; set; }
/// <summary>
/// 打包超时时间
/// </summary>
public DateTime? PackCompletionOverTime { get; set; }
/// <summary>
/// 打包完成时间
/// </summary>
public DateTime? PackCompeteTime { get; set; }
/// <summary>
/// 设置打包时间
/// </summary>
public DateTime? SetPackUserTaskTime { get; set; }
/// <summary>
/// 打包超时备注信息
/// </summary>
public string PackOverTimeMarkMsg { get; set; }
/// <summary>
/// 消息列表
/// </summary>
public List<MarkMessageModel> MarkMessageModelList { get; set; }
/// <summary>
/// 采购方案
/// </summary>
public string SkuPurchaseSchemeId { get; set; }
/// <summary>
/// 店铺id(采购店铺)
/// </summary>
public string ShopId { get; set; }
/// <summary>
/// 设置sku配置时间(信息不全,待移除)
/// </summary>
public DateTime? SendToSetSkuConfigureTime { get; set; }
/// <summary>
/// 任务挂起时间
/// </summary>
public DateTime? TaskAbortTime { get; set; }
/// <summary>
/// 包装任务状态
/// </summary>
public Models.PackagingTaskExceptionState PackagingTaskExceptionState { get; set; }
/// <summary>
/// 包装人收益(默认0.85折)
/// </summary>
public decimal PackagerFees { get; set; }
/// <summary>
/// 包装费用(包装原价)
/// </summary>
public decimal PackageFees { get; set; }
/// <summary>
/// 耗材费用
/// </summary>
public decimal ConsumableFees { get; set; }
/// <summary>
/// 总计
/// </summary>
public decimal PackTotalFees { get; set; }
/// <summary>
/// 包装人
/// </summary>
public string[] PackUserName { get; set; }
}
}

11
BBWY.Client/Models/APIModel/Response/QualityTask/SearchQualityTaskListResponse.cs

@ -11,6 +11,11 @@ namespace BBWY.Client.Models.APIModel
/// </summary> /// </summary>
public int QualityExceptionCount { get; set; } public int QualityExceptionCount { get; set; }
/// <summary>
/// 待验收数量
/// </summary>
public int QualityTaskCount { get; set; }
/// <summary> /// <summary>
/// 查询总数据(判断总页数) /// 查询总数据(判断总页数)
/// </summary> /// </summary>
@ -25,8 +30,12 @@ namespace BBWY.Client.Models.APIModel
/// <summary> /// <summary>
/// 待验收数据 /// 待验收数据
/// </summary> /// </summary>
public class QualityPackTaskData:NotifyObject public class QualityPackTaskData : NotifyObject
{ {
/// <summary>
/// 任务备注(原任务:10000 子任务:10000-1)
/// </summary>
public string TaskIdRemark { get; set; }
/// <summary> /// <summary>
/// 图片链接 /// 图片链接
/// </summary> /// </summary>

10
BBWY.Client/Models/APIModel/Response/SealBox/GetWareSealBoxResponse.cs

@ -1,4 +1,5 @@
using System; using BBWY.Client.Models.PackTask;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text; using System.Text;
@ -14,7 +15,7 @@ namespace BBWY.Client.Models.APIModel
/// <summary> /// <summary>
/// 分箱列表 /// 分箱列表
/// </summary> /// </summary>
public List<WareSealBoxData> WaitSealBoxModels { get; set; } public List<SealBoxModel> WaitSealBoxModels { get; set; }
} }
public class WareSealBoxData public class WareSealBoxData
@ -70,6 +71,11 @@ namespace BBWY.Client.Models.APIModel
public DateTime? CreateTime { get; set; } public DateTime? CreateTime { get; set; }
public TaskState TaskState { get; set; } public TaskState TaskState { get; set; }
/// <summary>
/// 新任务Id
/// </summary>
public string TaskIdRemark { get; set; }
/// <summary> /// <summary>
/// 任务Id /// 任务Id
/// </summary> /// </summary>

3
BBWY.Client/Models/APIModel/Response/SealBox/GetWareSealBoxWaitConfigureResponse.cs

@ -52,6 +52,9 @@ namespace BBWY.Client.Models.APIModel
public class WareNoSealBoxSku public class WareNoSealBoxSku
{ {
public string TaskIdRemark { get; set; }
public DateTime? CreateTime { get; set; } public DateTime? CreateTime { get; set; }
/// <summary> /// <summary>

1
BBWY.Client/Models/APIModel/Response/SealBox/GetWareWaitTransportResponse.cs

@ -75,6 +75,7 @@ namespace BBWY.Client.Models.APIModel
} }
public class WaitTransportSku public class WaitTransportSku
{ {
public string TaskIdRemark { get; set; }
public DateTime? CreateTime { get; set; } public DateTime? CreateTime { get; set; }
/// <summary> /// <summary>
/// 任务状态 /// 任务状态

26
BBWY.Client/Models/Enums.cs

@ -236,6 +236,7 @@
=11, =11,
=12, =12,
=13, =13,
=14
} }
@ -576,7 +577,7 @@
public enum TaskExceptionType public enum TaskExceptionType
{ {
= 0, = 0,=1
} }
/// <summary> /// <summary>
@ -588,9 +589,30 @@
} }
/// <summary>
/// 品牌标签类型(无需遮盖 = 1, 需遮盖 = 2, 无需贴商标=3)
/// </summary>
public enum BrandMarkType public enum BrandMarkType
{ {
= 1, = 2, =3 = 1, = 2, =3
} }
/// <summary>
/// 推送合格证验证(3C验证) 消息模板(任务未配置合格证=1, 包装无合格证=2, 验证3C有效性=3, 配置的合格证不是3c=4)
/// </summary>
public enum SendCer3CValidMsgModel
{
= 1, = 2, 3C有效性 = 3, 3c = 4
}
/// <summary>
/// 待包装任务状态( 待包装 = 0, 挂起任务 = 1,)
/// </summary>
public enum PackagingTaskExceptionState
{
= 0, = 1,
}
} }

49
BBWY.Client/Models/PackTask/PackTaskModel.cs

@ -26,6 +26,17 @@ namespace BBWY.Client.Models
/// </summary> /// </summary>
public class PackTaskModel : BaseVM public class PackTaskModel : BaseVM
{ {
private string taskIdRemark;
/// <summary>
///任务备注(原任务:10000 子任务:10000-1)
/// </summary>
public string TaskIdRemark { get => taskIdRemark; set { Set(ref taskIdRemark, value); } }
private bool showSendMsg = false; private bool showSendMsg = false;
/// <summary> /// <summary>
/// 展示留言信息 /// 展示留言信息
@ -104,10 +115,10 @@ namespace BBWY.Client.Models
LookCerCommand = new RelayCommand(LookCer); LookCerCommand = new RelayCommand(LookCer);
SetServiceCommand = new RelayCommand(SetService); SetServiceCommand = new RelayCommand(SetService);
UpdateTaskCommand = new RelayCommand(UpdateTask); UpdateTaskCommand = new RelayCommand(UpdateTask);
} }
private void SetService() private void SetService()
{ {
@ -382,6 +393,40 @@ namespace BBWY.Client.Models
public FeesItemResponse FeesItemResponse { get => feesItemResponse; set { Set(ref feesItemResponse, value); } } public FeesItemResponse FeesItemResponse { get => feesItemResponse; set { Set(ref feesItemResponse, value); } }
/// <summary>
/// 包装任务状态
/// </summary>
public Models.PackagingTaskExceptionState PackagingTaskExceptionState { get; set; }
/// <summary>
/// 包装人收益(默认0.85折)
/// </summary>
public decimal PackagerFees { get; set; }
/// <summary>
/// 包装费用(包装原价)
/// </summary>
public decimal PackageFees { get; set; }
/// <summary>
/// 耗材费用
/// </summary>
public decimal ConsumableFees { get; set; }
/// <summary>
/// 总计
/// </summary>
public decimal PackTotalFees { get; set; }
public IList<SkuMessage> ItemList { get; set; } public IList<SkuMessage> ItemList { get; set; }
public string OrderId { get; set; } public string OrderId { get; set; }

9
BBWY.Client/Models/PackTask/SealBoxModel.cs

@ -6,9 +6,12 @@ using System.Text;
namespace BBWY.Client.Models.PackTask namespace BBWY.Client.Models.PackTask
{ {
public class SealBoxModel : NotifyObject public class SealBoxModel : NotifyObject
{ /// <summary> {
/// 过期时间 private bool isHideSkuList = true;//默认隐藏
/// </summary> public bool IsHideSkuList { get => isHideSkuList; set { Set(ref isHideSkuList, value); } }
/// <summary>
/// 过期时间
/// </summary>
public DateTime? SealBoxPackOverTime { get; set; } public DateTime? SealBoxPackOverTime { get; set; }
/// <summary> /// <summary>
/// /封箱id /// /封箱id

6
BBWY.Client/Models/SealBox/SealBoxConfigureModel.cs

@ -12,6 +12,11 @@ namespace BBWY.Client.Models.SealBox
/// </summary> /// </summary>
public class SealBoxConfigureModel : NotifyObject public class SealBoxConfigureModel : NotifyObject
{ {
/// <summary>
/// 任务id
/// </summary>
public string TaskIdRemark { get; set; }
/// <summary> /// <summary>
/// skuid /// skuid
/// </summary> /// </summary>
@ -84,6 +89,7 @@ namespace BBWY.Client.Models.SealBox
/// </summary> /// </summary>
public class SealBoxConfigureWareHourseModel : NotifyObject public class SealBoxConfigureWareHourseModel : NotifyObject
{ {
public string TaskIdRemark { get; set; }
public long TaskId { get; set; } public long TaskId { get; set; }
public Action<int, long> TotalWareCount { get; set; } public Action<int, long> TotalWareCount { get; set; }

1
BBWY.Client/Models/SealBox/SealBoxConfiguredModel.cs

@ -51,6 +51,7 @@ namespace BBWY.Client.Models.SealBox
} }
public class SealBoxConfigureTask:NotifyObject public class SealBoxConfigureTask:NotifyObject
{ {
public string TaskIdRemark { get; set; }
/// <summary> /// <summary>
/// skuid /// skuid
/// </summary> /// </summary>

2
BBWY.Client/Models/SealBox/SealBoxWaitConfigureModel.cs

@ -6,6 +6,8 @@ namespace BBWY.Client.Models
{ {
public class SealBoxWaitConfigureModel : NotifyObject public class SealBoxWaitConfigureModel : NotifyObject
{ {
public string TaskIdRemark { get; set; }
/// <summary> /// <summary>
/// skuid /// skuid
/// </summary> /// </summary>

2
BBWY.Client/Models/SealBox/WareNoSealBoxModel.cs

@ -7,6 +7,8 @@ namespace BBWY.Client.Models
{ {
public class WareNoSealBoxModel:NotifyObject public class WareNoSealBoxModel:NotifyObject
{ {
private bool isHideSkuList = true;//默认隐藏
public bool IsHideSkuList { get => isHideSkuList; set { Set(ref isHideSkuList, value); } }
/// <summary> /// <summary>
/// 店铺Id /// 店铺Id
/// </summary> /// </summary>

2
BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs

@ -929,7 +929,7 @@ namespace BBWY.Client.ViewModels.PackTask
var updateTaskModel = JsonConvert.DeserializeObject<UpdatePackTaskV2Request>(JsonConvert.SerializeObject(createTaskModel)); var updateTaskModel = JsonConvert.DeserializeObject<UpdatePackTaskV2Request>(JsonConvert.SerializeObject(createTaskModel));
updateTaskModel.TaskId = TaskId; updateTaskModel.TaskId = TaskId;
updateTaskModel.SaveType = SaveType; updateTaskModel.SaveType = SaveType;//任务类型 修改操作
res = packTaskService.UpdatePackTaskV2(updateTaskModel); res = packTaskService.UpdatePackTaskV2(updateTaskModel);
} }
else else

700
BBWY.Client/ViewModels/PackTask/TaskListViewModel.cs

@ -40,7 +40,7 @@ namespace BBWY.Client.ViewModels.PackTask
public partial class TaskListViewModel : BaseVM, IDenpendency//注入服务 public partial class TaskListViewModel : BaseVM, IDenpendency//注入服务
{ {
private QualityTaskExceptionState? qualityTaskExceptionState; private QualityTaskExceptionState? qualityTaskExceptionState= Models.QualityTaskExceptionState.;
/// <summary> /// <summary>
/// 任务状态 /// 任务状态
/// </summary> /// </summary>
@ -282,6 +282,48 @@ namespace BBWY.Client.ViewModels.PackTask
public ObservableCollection<StoreGetSelfData> StoreGetSelfDataList { get => storeGetSelfDataList; set { Set(ref storeGetSelfDataList, value); } } public ObservableCollection<StoreGetSelfData> StoreGetSelfDataList { get => storeGetSelfDataList; set { Set(ref storeGetSelfDataList, value); } }
QualityTaskService qualityTaskService;
private string packagingTaskExceptionCount;
/// <summary>
/// 验收异常总数
/// </summary>
public string PackagingTaskExceptionCount { get => packagingTaskExceptionCount; set { Set(ref packagingTaskExceptionCount, value); } }
private string packagingTaskCount;
/// <summary>
/// 待包装总数
/// </summary>
public string PackagingTaskCount { get => packagingTaskCount; set { Set(ref packagingTaskCount, value); } }
private string qualityExceptionCount;
/// <summary>
/// 验收异常总数
/// </summary>
public string QualityExceptionCount { get => qualityExceptionCount; set { Set(ref qualityExceptionCount, value); } }
private string qualityTaskCount;
/// <summary>
/// 验收异常总数
/// </summary>
public string QualityTaskCount { get => qualityTaskCount; set { Set(ref qualityTaskCount, value); } }
private PackagingTaskExceptionState? packagingTaskExceptionState;
/// <summary>
/// 任务状态
/// </summary>
public PackagingTaskExceptionState? PackagingTaskExceptionState
{
get => packagingTaskExceptionState; set
{
Set(ref packagingTaskExceptionState, value);
}
}
/// <summary> /// <summary>
@ -360,7 +402,11 @@ namespace BBWY.Client.ViewModels.PackTask
public ICommand SetQualityTaskExceptionStateCommand { get; set; } public ICommand SetQualityTaskExceptionStateCommand { get; set; }
public TaskListViewModel(PackTaskService packTaskService, GlobalContext globalContext, SealBoxService sealBoxService, ProductService productService, MarkMessageService markMessageService) public ICommand SetPackagingTaskExceptionStateCommand { get; set; }
public TaskListViewModel(PackTaskService packTaskService, GlobalContext globalContext, SealBoxService sealBoxService, ProductService productService, MarkMessageService markMessageService, PackagingTaskService packagingTaskService, QualityTaskService qualityTaskService)
{ {
this.globalContext = globalContext; this.globalContext = globalContext;
this.markMessageService = markMessageService; this.markMessageService = markMessageService;
@ -419,7 +465,10 @@ namespace BBWY.Client.ViewModels.PackTask
{ {
SelectWareType = s; SelectWareType = s;
SearchTaskList(); if (PageIndex == 1)
SearchTaskList();
else
PageIndex = 1;
}); });
ShowMoreMessageCommand = new RelayCommand<long>(ShowMoreMessage); ShowMoreMessageCommand = new RelayCommand<long>(ShowMoreMessage);
@ -428,10 +477,23 @@ namespace BBWY.Client.ViewModels.PackTask
AppendMarkMessageCommand = new RelayCommand<long>(AppendMarkMessage); AppendMarkMessageCommand = new RelayCommand<long>(AppendMarkMessage);
SetQualityTaskExceptionStateCommand = new RelayCommand(() => { SetQualityTaskExceptionStateCommand = new RelayCommand(() =>
SearchTaskList(); {
if (PageIndex == 1)
SearchTaskList();
else
PageIndex = 1;
}); });
this.packagingTaskService = packagingTaskService;
this.qualityTaskService = qualityTaskService;
SetPackagingTaskExceptionStateCommand = new RelayCommand(() =>
{
if (PageIndex == 1)
SearchTaskList();
else
PageIndex = 1;
});
} }
MarkMessageService markMessageService; MarkMessageService markMessageService;
@ -722,6 +784,8 @@ namespace BBWY.Client.ViewModels.PackTask
TaskId = x.TaskId, TaskId = x.TaskId,
TaskState = x.TaskState, TaskState = x.TaskState,
WaitConfigureCount = x.SkuCount, WaitConfigureCount = x.SkuCount,
TaskIdRemark = x.TaskIdRemark
}).ToList(); }).ToList();
SetSealBoxPolicyWindow setSealBoxPolicyWindow = new SetSealBoxPolicyWindow(data, ReflashTask, 0); SetSealBoxPolicyWindow setSealBoxPolicyWindow = new SetSealBoxPolicyWindow(data, ReflashTask, 0);
@ -800,7 +864,7 @@ namespace BBWY.Client.ViewModels.PackTask
PackagingTaskService packagingTaskService;
@ -817,18 +881,8 @@ namespace BBWY.Client.ViewModels.PackTask
public void SearchTaskList() public void SearchTaskList()
{ {
IsStartThread = false; IsStartThread = false;
long? taskId = null;
try
{
if (SearchTaskId != null && !string.IsNullOrEmpty(SearchTaskId.Trim()))
taskId = Convert.ToInt64(SearchTaskId);
}
catch
{
System.Windows.MessageBox.Show("任务id必须为数字");
return;
}
IsLoading = true; IsLoading = true;
@ -836,223 +890,537 @@ namespace BBWY.Client.ViewModels.PackTask
Task.Factory.StartNew(() => Task.Factory.StartNew(() =>
{ {
try try
{ {
PackTaskList = new ObservableCollection<PackTaskModel>();//初始化数据 if (TaskState == Models.TaskState.)
var datas = packTaskService.SearchTaskList(SearchSkuId, SearchTaskId, SearchSpuId, SearchOrderSn, this.TaskState,
PageIndex, PageSize);
if (datas != null && datas.Data != null && datas.Success)
{ {
var dataModel = datas.Data; PackTaskList = new ObservableCollection<PackTaskModel>();//初始化数据
OrderCount = dataModel.TotalCount; var datas = qualityTaskService.SearchQualityTaskList( skuId:SearchSkuId,taskId: SearchTaskId,spuId: SearchSpuId, orderSn: SearchOrderSn, QualityTaskExceptionState: this.QualityTaskExceptionState, shopId: globalContext.User.Shop.ShopId.ToString(),
foreach (var item in dataModel.Items) pageIndex: PageIndex,pageSize: PageSize);
{
var data = JsonConvert.DeserializeObject<PackTaskModel>(JsonConvert.SerializeObject(item));
data.ItemList = new List<SkuMessage>() { new SkuMessage
if (datas != null && datas.Data != null && datas.Success)
{
var dataModel = datas.Data;
OrderCount = dataModel.TotalCount;
QualityExceptionCount = dataModel.QualityExceptionCount.ToString();
QualityTaskCount = dataModel.QualityTaskCount.ToString();
foreach (var item in dataModel.Items)
{
var data = JsonConvert.DeserializeObject<PackTaskModel>(JsonConvert.SerializeObject(item));
data.ItemList = new List<SkuMessage>() { new SkuMessage
{ BrandName = item.BrandName, { BrandName = item.BrandName,
GoodsNo = item.ProductItemNum, Logo= item.Logo, Logo= item.Logo,
SkuName = item.SkuName, SkuName = item.SkuName,
SkuId = item.SkuId SkuId = item.SkuId
} }; } };
data.ExpressOrderList = item.ExpressOrderResponses; data.ExpressOrderList = item.ExpressOrderResponses;
data.EndTime = item.CreateTime; data.EndTime = item.CreateTime;
data.SkuTitle = item.SkuGoodsTitle; data.SkuTitle = item.SkuGoodsTitle;
data.AcceptName = item.UserName; data.AcceptName = item.UserName;
if (item.BarCodeDTO != null && item.BarCodeDTO.Id > 0)
{
data.BarCodeModel = item.BarCodeDTO;
if (data.BarCodeModel.LabelModel == BarcodeLabelModel.)
data.BarCodeModel.LabelModel = BarcodeLabelModel.;
if (!item.OrderId.IsNullOrEmpty() && !item.SkuId.IsNullOrEmpty())//加载物流信息 }
if (item.Cers != null)
{
data.CertificateModel = item.Cers;
}
data.ReflashTask = ReflashTask;
App.Current.Dispatcher.Invoke(new Action(() =>
{
PackTaskList.Add(data);
}));
}
if (TaskState == Models.TaskState.)
{ {
var expressData = packTaskService.GetPurchaseExpressOrderList(item.OrderId, item.SkuId); if (QualityTaskExceptionState == Models.QualityTaskExceptionState.)
if (expressData != null && expressData.Success && expressData.Data != null)
{ {
expressData.Data.ForEach(e => qualityOverTimeThread = new Thread(() =>
{ {
e.ExpressState = ExpressOrderHelper.GetExpressStateName(e.ExpressState); var packtasks = PackTaskList.Where(p => p.TaskState == Models.TaskState. && p.QualityCompletionOverTime != null).ToList();
if (packtasks.Count() > 0)
{
IsStartThread = true;
while (IsStartThread)
{
App.Current.Dispatcher.BeginInvoke(new Action(() =>
{
foreach (var item in packtasks)
{
TimeSpan datetime;
if (item.SendToSetSkuConfigureTime != null)
datetime = item.QualityCompletionOverTime.Value.Subtract(item.SendToSetSkuConfigureTime.Value);
else
datetime = item.QualityCompletionOverTime.Value.Subtract(DateTime.Now);
item.QualityRemainTime = OverTimeHelper.GetTimeString(datetime);
if (datetime.TotalMilliseconds > 0)
{
item.IsQualityOverTime = false;
}
else
{
item.IsQualityOverTime = true;
}
}
}));
Thread.Sleep(1000);
}
}
}); });
data.ExpressOrderList = expressData.Data; //任务倒计时数据
qualityOverTimeThread.IsBackground = true;
qualityOverTimeThread.Start();
//任务状态为待验收
} }
}
if (item.BarCodeDTO != null && item.BarCodeDTO.Id > 0)
{
data.BarCodeModel = item.BarCodeDTO;
if (data.BarCodeModel.LabelModel == BarcodeLabelModel.)
data.BarCodeModel.LabelModel = BarcodeLabelModel.;
}
if (item.Cers != null)
{
data.CertificateModel = item.Cers;
}
if (item.FeesItemResponse != null)
{
data.FeesItemResponse = item.FeesItemResponse;
data.FeesMoney = item.FeesItemResponse.AllFees;
data.IsShowFees = item.FeesItemResponse.AllFees > 0 ? true : false;
data.FeesItemResponse.DiscountSingleFees = item.FeesItemResponse.SingleFees * item.FeesItemResponse.disCount;
data.FeesItemResponse.DiscountAllFees = item.FeesItemResponse.AllFees * item.FeesItemResponse.disCount;
} if (QualityTaskExceptionState == Models.QualityTaskExceptionState.)
else {
{ var packtasks = PackTaskList.Where(p => p.TaskState == Models.TaskState. && p.TaskAbortTime != null).ToList();
data.IsShowFees = false; App.Current.Dispatcher.BeginInvoke(new Action(() =>
} {
if (item.PackUserName != null && item.PackUserName.Count() > 0) foreach (var item in packtasks)
{ {
data.PackUser = string.Join("\r\n", item.PackUserName); TimeSpan datetime;
} datetime = item.QualityCompletionOverTime.Value.Subtract(item.TaskAbortTime.Value);
item.QualityRemainTime = OverTimeHelper.GetTimeString(datetime);
if (datetime.TotalMilliseconds > 0)
{
item.IsQualityOverTime = false;
data.ReflashTask = ReflashTask; }
else
{
item.IsQualityOverTime = true;
}
App.Current.Dispatcher.Invoke(new Action(() => }
{ }));
PackTaskList.Add(data); }
}));
} }
//任务状态为待打包
//任务状态为待验收
if (TaskState == Models.TaskState.)
{
var packtasks = PackTaskList.Where(p => p.TaskState == Models.TaskState. && p.QualityCompletionOverTime != null).ToList();
if (packtasks.Count() > 0)
{
//if (qualityOverTimeThread!=null)
//{
// qualityOverTimeThread.Abort();
//}
qualityOverTimeThread = new Thread(() => Task.Factory.StartNew(() =>
{
foreach (var item in PackTaskList)
{ {
IsStartThread = true; if (!item.OrderId.IsNullOrEmpty() && !item.SkuId.IsNullOrEmpty())
while (IsStartThread)
{ {
App.Current.Dispatcher.BeginInvoke(new Action(() => var expressData = packTaskService.GetPurchaseExpressOrderList(item.OrderId, item.SkuId);
if (expressData != null && expressData.Success && expressData.Data != null)
{ {
foreach (var item in packtasks)
App.Current.Dispatcher.BeginInvoke(new Action(() =>
{ {
TimeSpan datetime; expressData.Data.ForEach(e =>
if (item.SendToSetSkuConfigureTime != null) {
datetime = item.QualityCompletionOverTime.Value.Subtract(item.SendToSetSkuConfigureTime.Value); e.ExpressState = ExpressOrderHelper.GetExpressStateName(e.ExpressState);
else
datetime = item.QualityCompletionOverTime.Value.Subtract(DateTime.Now);
item.QualityRemainTime = OverTimeHelper.GetTimeString(datetime);
if (datetime.TotalMilliseconds > 0)
item.IsQualityOverTime = false;
else
item.IsQualityOverTime = true;
});
item.ExpressOrderList = expressData.Data;
}));
}
}));
Thread.Sleep(1000);
}
} }
}
});
//任务倒计时数据
qualityOverTimeThread.IsBackground = true;
qualityOverTimeThread.Start();
}
});
} }
else
{
}
}
else if (TaskState == Models.TaskState.) {
PackTaskList = new ObservableCollection<PackTaskModel>();//初始化数据
var datas = packagingTaskService.SearchPackagingTaskList(skuId: SearchSkuId, taskId: SearchTaskId, spuId: SearchSpuId, orderSn: SearchOrderSn, PackagingTaskExceptionState: this.PackagingTaskExceptionState, shopId: globalContext.User.Shop.ShopId.ToString(),
pageIndex: PageIndex, pageSize: PageSize);
//任务状态为待打包 if (datas != null && datas.Data != null && datas.Success)
if (TaskState == Models.TaskState.)
{ {
var packCompletedTasks = PackTaskList.Where(p => p.TaskState == Models.TaskState. && p.PackCompletionOverTime != null).ToList(); var dataModel = datas.Data;
if (packCompletedTasks.Count() > 0) OrderCount = dataModel.TotalCount;
PackagingTaskCount = dataModel.PackagingTaskCount.ToString();
PackagingTaskExceptionCount = dataModel.PackagingTaskExceptionCount.ToString();
foreach (var item in dataModel.Items)
{ {
packOverTimeThread = new Thread(() => var data = JsonConvert.DeserializeObject<PackTaskModel>(JsonConvert.SerializeObject(item));
data.ItemList = new List<SkuMessage>() { new SkuMessage
{ BrandName = item.BrandName,
Logo= item.Logo,
SkuName = item.SkuName,
SkuId = item.SkuId
} };
data.EndTime = item.CreateTime;
data.SkuTitle = item.SkuGoodsTitle;
data.AcceptName = item.UserName;
if (item.BarCodeDTO != null && item.BarCodeDTO.Id > 0)
{ {
IsStartThread = true;
while (IsStartThread) data.BarCodeModel = item.BarCodeDTO;
if (data.BarCodeModel.LabelModel == BarcodeLabelModel.)
data.BarCodeModel.LabelModel = BarcodeLabelModel.;
}
if (item.Cers != null)
{
data.CertificateModel = item.Cers;
}
data.ReflashTask = ReflashTask;
if (item.PackUserName != null)
data.PackUser = string.Join("\r\n", item.PackUserName);
if (item.PackUserName != null && item.PackUserName.Count() > 0)
{
data.PackUser = string.Join("\r\n", item.PackUserName);
}
App.Current.Dispatcher.Invoke(new Action(() =>
{
PackTaskList.Add(data);
}));
}
if (TaskState == Models.TaskState.)
{
var packCompletedTasks = PackTaskList.Where(p => p.TaskState == Models.TaskState. && p.PackCompletionOverTime != null).ToList();
if (packCompletedTasks.Count() > 0)
{
packOverTimeThread = new Thread(() =>
{ {
App.Current.Dispatcher.BeginInvoke(new Action(() => IsStartThread = true;
while (IsStartThread)
{ {
foreach (var item in packCompletedTasks) App.Current.Dispatcher.BeginInvoke(new Action(() =>
{ {
var datetime = item.PackCompletionOverTime.Value.Subtract(DateTime.Now); foreach (var item in packCompletedTasks)
if (datetime.TotalMilliseconds > 0)
{ {
item.IsPackOverTime = false; var datetime = item.PackCompletionOverTime.Value.Subtract(DateTime.Now);
item.PackRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分"; if (datetime.TotalMilliseconds > 0)
{
item.IsPackOverTime = false;
item.PackRemainTime = OverTimeHelper.GetTimeString(datetime);
}
else
{
item.IsPackOverTime = true;
item.PackRemainTime = OverTimeHelper.GetTimeString(datetime);
}
} }
else }));
Thread.Sleep(1000);
}
});
//任务倒计时数据
packOverTimeThread.IsBackground = true;
packOverTimeThread.Start();
}
}
//任务状态为待打包
Task.Factory.StartNew(() =>
{
foreach (var item in PackTaskList)
{
if (!item.OrderId.IsNullOrEmpty() && !item.SkuId.IsNullOrEmpty())
{
var expressData = packTaskService.GetPurchaseExpressOrderList(item.OrderId, item.SkuId);
if (expressData != null && expressData.Success && expressData.Data != null)
{
App.Current.Dispatcher.BeginInvoke(new Action(() =>
{
expressData.Data.ForEach(e =>
{ {
item.IsPackOverTime = true; e.ExpressState = ExpressOrderHelper.GetExpressStateName(e.ExpressState);
item.PackRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分";
}
}
})); });
Thread.Sleep(1000); item.ExpressOrderList = expressData.Data;
}));
}
} }
}
});
//任务倒计时数据
packOverTimeThread.IsBackground = true;
packOverTimeThread.Start();
}
}
if (TaskState == Models.TaskState.) });
}
else
{ {
var packCompletedTasks = PackTaskList.Where(p => p.TaskState == Models.TaskState. && p.ScheduleOverTime != null).ToList(); }
if (packCompletedTasks.Count() > 0) }
else
{
PackTaskList = new ObservableCollection<PackTaskModel>();//初始化数据
var datas = packTaskService.SearchTaskList(SearchSkuId, SearchTaskId, SearchSpuId, SearchOrderSn, this.TaskState,
PageIndex, PageSize);
if (datas != null && datas.Data != null && datas.Success)
{
var dataModel = datas.Data;
OrderCount = dataModel.TotalCount;
foreach (var item in dataModel.Items)
{ {
//if (packOverTimeThread!=null)
//{
// packOverTimeThread.Abort();
//}
scheduleOverTimeThread = new Thread(() => var data = JsonConvert.DeserializeObject<PackTaskModel>(JsonConvert.SerializeObject(item));
data.ItemList = new List<SkuMessage>() { new SkuMessage
{ BrandName = item.BrandName,
GoodsNo = item.ProductItemNum, Logo= item.Logo,
SkuName = item.SkuName,
SkuId = item.SkuId
} };
data.ExpressOrderList = item.ExpressOrderResponses;
data.EndTime = item.CreateTime;
data.SkuTitle = item.SkuGoodsTitle;
data.AcceptName = item.UserName;
if (!item.OrderId.IsNullOrEmpty() && !item.SkuId.IsNullOrEmpty())//加载物流信息
{ {
IsStartThread = true; var expressData = packTaskService.GetPurchaseExpressOrderList(item.OrderId, item.SkuId);
while (IsStartThread) if (expressData != null && expressData.Success && expressData.Data != null)
{ {
App.Current.Dispatcher.BeginInvoke(new Action(() => expressData.Data.ForEach(e =>
{
e.ExpressState = ExpressOrderHelper.GetExpressStateName(e.ExpressState);
});
data.ExpressOrderList = expressData.Data;
}
}
if (item.BarCodeDTO != null && item.BarCodeDTO.Id > 0)
{
data.BarCodeModel = item.BarCodeDTO;
if (data.BarCodeModel.LabelModel == BarcodeLabelModel.)
data.BarCodeModel.LabelModel = BarcodeLabelModel.;
}
if (item.Cers != null)
{
data.CertificateModel = item.Cers;
}
if (item.FeesItemResponse != null)
{
data.FeesItemResponse = item.FeesItemResponse;
data.FeesMoney = item.FeesItemResponse.AllFees;
data.IsShowFees = item.FeesItemResponse.AllFees > 0 ? true : false;
data.FeesItemResponse.DiscountSingleFees = item.FeesItemResponse.SingleFees * item.FeesItemResponse.disCount;
data.FeesItemResponse.DiscountAllFees = item.FeesItemResponse.AllFees * item.FeesItemResponse.disCount;
}
else
{
data.IsShowFees = false;
}
if (item.PackUserName != null && item.PackUserName.Count() > 0)
{
data.PackUser = string.Join("\r\n", item.PackUserName);
}
data.ReflashTask = ReflashTask;
App.Current.Dispatcher.Invoke(new Action(() =>
{
PackTaskList.Add(data);
}));
}
//任务状态为待验收
if (TaskState == Models.TaskState.)
{
var packtasks = PackTaskList.Where(p => p.TaskState == Models.TaskState. && p.QualityCompletionOverTime != null).ToList();
if (packtasks.Count() > 0)
{
//if (qualityOverTimeThread!=null)
//{
// qualityOverTimeThread.Abort();
//}
qualityOverTimeThread = new Thread(() =>
{
IsStartThread = true;
while (IsStartThread)
{ {
foreach (var item in packCompletedTasks) App.Current.Dispatcher.BeginInvoke(new Action(() =>
{ {
var datetime = item.ScheduleOverTime.Value.Subtract(DateTime.Now); foreach (var item in packtasks)
if (datetime.TotalMilliseconds > 0)
{ {
item.IsScheduleOverTime = false; TimeSpan datetime;
item.ScheduleRemainTime = OverTimeHelper.GetTimeString(datetime); if (item.SendToSetSkuConfigureTime != null)
datetime = item.QualityCompletionOverTime.Value.Subtract(item.SendToSetSkuConfigureTime.Value);
else
datetime = item.QualityCompletionOverTime.Value.Subtract(DateTime.Now);
item.QualityRemainTime = OverTimeHelper.GetTimeString(datetime);
if (datetime.TotalMilliseconds > 0)
item.IsQualityOverTime = false;
else
item.IsQualityOverTime = true;
} }
else }));
Thread.Sleep(1000);
}
});
//任务倒计时数据
qualityOverTimeThread.IsBackground = true;
qualityOverTimeThread.Start();
}
}
//任务状态为待打包
if (TaskState == Models.TaskState.)
{
var packCompletedTasks = PackTaskList.Where(p => p.TaskState == Models.TaskState. && p.PackCompletionOverTime != null).ToList();
if (packCompletedTasks.Count() > 0)
{
packOverTimeThread = new Thread(() =>
{
IsStartThread = true;
while (IsStartThread)
{
App.Current.Dispatcher.BeginInvoke(new Action(() =>
{
foreach (var item in packCompletedTasks)
{ {
item.IsScheduleOverTime = true; var datetime = item.PackCompletionOverTime.Value.Subtract(DateTime.Now);
item.ScheduleRemainTime = OverTimeHelper.GetTimeString(datetime); if (datetime.TotalMilliseconds > 0)
{
item.IsPackOverTime = false;
item.PackRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分";
}
else
{
item.IsPackOverTime = true;
item.PackRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分";
}
} }
}));
Thread.Sleep(1000);
}
} });
})); //任务倒计时数据
Thread.Sleep(1000); packOverTimeThread.IsBackground = true;
} packOverTimeThread.Start();
});
//任务倒计时数据
scheduleOverTimeThread.IsBackground = true;
scheduleOverTimeThread.Start();
}
}
if (TaskState == Models.TaskState.)
{
var packCompletedTasks = PackTaskList.Where(p => p.TaskState == Models.TaskState. && p.ScheduleOverTime != null).ToList();
if (packCompletedTasks.Count() > 0)
{
//if (packOverTimeThread!=null)
//{
// packOverTimeThread.Abort();
//}
scheduleOverTimeThread = new Thread(() =>
{
IsStartThread = true;
while (IsStartThread)
{
App.Current.Dispatcher.BeginInvoke(new Action(() =>
{
foreach (var item in packCompletedTasks)
{
var datetime = item.ScheduleOverTime.Value.Subtract(DateTime.Now);
if (datetime.TotalMilliseconds > 0)
{
item.IsScheduleOverTime = false;
item.ScheduleRemainTime = OverTimeHelper.GetTimeString(datetime);
}
else
{
item.IsScheduleOverTime = true;
item.ScheduleRemainTime = OverTimeHelper.GetTimeString(datetime);
}
}
}));
Thread.Sleep(1000);
}
});
//任务倒计时数据
scheduleOverTimeThread.IsBackground = true;
scheduleOverTimeThread.Start();
}
} }
}
}
else
{
if (datas != null) System.Windows.MessageBox.Show(datas.Msg);
}
IsLoadCount();
} }
else
{
if (datas != null) System.Windows.MessageBox.Show(datas.Msg);
}
IsLoadCount();
} }
catch (Exception ex) catch (Exception ex)
@ -1185,7 +1553,7 @@ namespace BBWY.Client.ViewModels.PackTask
if (SealBoxConfigureType == SealBoxConfigureType.) if (SealBoxConfigureType == SealBoxConfigureType.)
{ {
FallWareWaitConfigureList = new ObservableCollection<FallWareConfiguredModel>(); FallWareWaitConfigureList = new ObservableCollection<FallWareConfiguredModel>();
var fallWareRes = sealBoxService.SearchFallWareConfiguredList(PositionState., taskId, SearchSkuId, PageIndex, PageSize); var fallWareRes = sealBoxService.SearchFallWareConfiguredList(PositionState., SearchTaskId, SearchSkuId, PageIndex, PageSize);
if (fallWareRes == null) if (fallWareRes == null)
{ {
@ -1256,7 +1624,7 @@ namespace BBWY.Client.ViewModels.PackTask
if (SealBoxConfigureType == SealBoxConfigureType.) if (SealBoxConfigureType == SealBoxConfigureType.)
{ {
FallWareConfiguredList = new ObservableCollection<FallWareConfiguredModel>(); FallWareConfiguredList = new ObservableCollection<FallWareConfiguredModel>();
var fallWareRes = sealBoxService.SearchFallWareConfiguredList(PositionState., taskId, SearchSkuId, PageIndex, PageSize); var fallWareRes = sealBoxService.SearchFallWareConfiguredList(PositionState., SearchTaskId, SearchSkuId, PageIndex, PageSize);
if (fallWareRes == null) if (fallWareRes == null)
{ {
@ -1299,7 +1667,7 @@ namespace BBWY.Client.ViewModels.PackTask
Task.Factory.StartNew(() => Task.Factory.StartNew(() =>
{ {
WaitCompletedList = new ObservableCollection<WareWaitCompleted>(); WaitCompletedList = new ObservableCollection<WareWaitCompleted>();
var datas = sealBoxService.GetWareWaitCompletedList(globalContext.User.Shop.ShopId.ToString(), null, taskId, SearchSkuId, null, PageIndex, PageSize); var datas = sealBoxService.GetWareWaitCompletedList(globalContext.User.Shop.ShopId.ToString(), null, SearchTaskId, SearchSkuId, null, PageIndex, PageSize);
if (datas != null && datas.Data != null && datas.Success) if (datas != null && datas.Data != null && datas.Success)
{ {
var dataModel = datas.Data; var dataModel = datas.Data;

1513
BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs

File diff suppressed because it is too large

178
BBWY.Client/ViewModels/PackerTask/PackerTaskViewModel.cs

@ -7,6 +7,8 @@ using BBWY.Client.Models.PackUser;
using BBWY.Client.Views.BillCorrection; using BBWY.Client.Views.BillCorrection;
using BBWY.Client.Views.PackerTask; using BBWY.Client.Views.PackerTask;
using BBWY.Client.Views.PackTask; using BBWY.Client.Views.PackTask;
using BBWY.Client.Views.QualityTask;
using BBWY.Client.Views.SplitTask;
using BBWY.Client.Views.TaskOverTime; using BBWY.Client.Views.TaskOverTime;
using BBWY.Common.Models; using BBWY.Common.Models;
using BBWY.Controls; using BBWY.Controls;
@ -219,7 +221,7 @@ namespace BBWY.Client.ViewModels.PackerTask
/// <summary> /// <summary>
/// 查询物流 /// 查询物流
/// </summary> /// </summary>
private string selectExpress= "物流单号"; private string selectExpress = "物流单号";
public string SelectExpress public string SelectExpress
{ {
get => selectExpress; get => selectExpress;
@ -328,11 +330,31 @@ namespace BBWY.Client.ViewModels.PackerTask
public ObservableCollection<PackerTaskModel> PackerTaskModelList { get => packerTaskModelList; set { Set(ref packerTaskModelList, value); } } public ObservableCollection<PackerTaskModel> PackerTaskModelList { get => packerTaskModelList; set { Set(ref packerTaskModelList, value); } }
private PackagingTaskExceptionState? packagingTaskExceptionState = Models.PackagingTaskExceptionState.;
/// <summary>
/// 任务状态
/// </summary>
public PackagingTaskExceptionState? PackagingTaskExceptionState
{
get => packagingTaskExceptionState; set
{
Set(ref packagingTaskExceptionState, value);
}
}
private string packagingTaskExceptionCount;
/// <summary>
/// 包装异常总数
/// </summary>
public string PackagingTaskExceptionCount { get => packagingTaskExceptionCount; set { Set(ref packagingTaskExceptionCount, value); } }
private string packagingTaskCount;
/// <summary>
/// 待包装总数
/// </summary>
public string PackagingTaskCount { get => packagingTaskCount; set { Set(ref packagingTaskCount, value); } }
@ -376,11 +398,17 @@ namespace BBWY.Client.ViewModels.PackerTask
public ICommand PrintCerCommand { get; set; } public ICommand PrintCerCommand { get; set; }
public ICommand SetPackagingTaskExceptionStateCommand { get; set; }
public ICommand TaskSplitCommand { get; set; }
public ICommand PackagingTaskExceptionCommand { get; set; }
/// <summary> /// <summary>
/// 构造函数 /// 构造函数
/// </summary> /// </summary>
public PackerTaskViewModel(PackUserService packUserService, PackTaskService packTaskService, MarkMessageService markMessageService, GlobalContext globalContext) public PackerTaskViewModel(PackUserService packUserService, PackTaskService packTaskService, MarkMessageService markMessageService, GlobalContext globalContext, QualityTaskService qualityTaskService)
{ {
this.packUserService = packUserService; this.packUserService = packUserService;
@ -421,6 +449,31 @@ namespace BBWY.Client.ViewModels.PackerTask
PrintBarcodeCommand = new RelayCommand<BarCodeModel>(PrintBarcode); PrintBarcodeCommand = new RelayCommand<BarCodeModel>(PrintBarcode);
PrintCerCommand = new RelayCommand<CertificateModel[]>(PrintCer); PrintCerCommand = new RelayCommand<CertificateModel[]>(PrintCer);
SetPackagingTaskExceptionStateCommand = new RelayCommand(() =>
{
this.SearchTaskList();
});
TaskSplitCommand = new RelayCommand<PackerTaskModel>(TaskSplit);
PackagingTaskExceptionCommand = new RelayCommand<long>(PackagingTaskException);
this.qualityTaskService = qualityTaskService;
}
QualityTaskService qualityTaskService;
private void PackagingTaskException(long taskId)
{
AddExceptionWindow addExceptionWindow = new AddExceptionWindow(qualityTaskService, taskId, Models.TaskState., ReflashTask);
addExceptionWindow.ShowDialog();
}
private void TaskSplit(PackerTaskModel model)
{
SplitTaskWindow addExceptionWindow = new SplitTaskWindow(packTaskService, model.TaskId, model.TaskState.Value, ReflashTask);
addExceptionWindow.ShowDialog();
} }
private void PrintCer(CertificateModel[] certificateModel) private void PrintCer(CertificateModel[] certificateModel)
@ -473,7 +526,7 @@ namespace BBWY.Client.ViewModels.PackerTask
{ {
model.ShowMoreMsg = !model.ShowMoreMsg; model.ShowMoreMsg = !model.ShowMoreMsg;
} }
} }
@ -485,8 +538,8 @@ namespace BBWY.Client.ViewModels.PackerTask
var model = PackerTaskModelList?.SingleOrDefault(p => p.TaskId == taskId); var model = PackerTaskModelList?.SingleOrDefault(p => p.TaskId == taskId);
if (model != null) if (model != null)
{ {
var res = markMessageService.AppendMarkMessage(taskId, model.TaskMarkMsg,globalContext.User.Name); var res = markMessageService.AppendMarkMessage(taskId, model.TaskMarkMsg, globalContext.User.Name);
if (res == null) if (res == null)
{ {
@ -505,15 +558,15 @@ namespace BBWY.Client.ViewModels.PackerTask
ReflashTask(); ReflashTask();
} }
} }
private void PackTaskMarkMessage(long taskId) private void PackTaskMarkMessage(long taskId)
{ {
var model = PackerTaskModelList?.SingleOrDefault(p => p.TaskId == taskId); var model = PackerTaskModelList?.SingleOrDefault(p => p.TaskId == taskId);
if (model!=null) if (model != null)
{ {
model.ShowSendMsg = !model.ShowSendMsg; model.ShowSendMsg = !model.ShowSendMsg;
} }
@ -521,7 +574,7 @@ namespace BBWY.Client.ViewModels.PackerTask
private void CompletedPackTask(long taskId) private void CompletedPackTask(long taskId)
{ {
AddOneItemWeightWindow addOneItemWeightWindow = new AddOneItemWeightWindow(ReflashTask,packUserService,taskId); AddOneItemWeightWindow addOneItemWeightWindow = new AddOneItemWeightWindow(ReflashTask, packUserService, taskId);
addOneItemWeightWindow.ShowDialog(); addOneItemWeightWindow.ShowDialog();
} }
@ -575,7 +628,7 @@ namespace BBWY.Client.ViewModels.PackerTask
private Thread packOverTimeThread = null; private Thread packOverTimeThread = null;
bool IsStartThread = false; bool IsStartThread = false;
private void SearchTaskList() private void SearchTaskList()
{ {
@ -590,11 +643,15 @@ namespace BBWY.Client.ViewModels.PackerTask
{ {
var res = packUserService.SearchPackerTask(PackTaskState: PackTaskState, WayBillNo: SearchWayBillNo, SourceExpressName: SearchExpressName, var res = packUserService.SearchPackerTask(PackTaskState: PackTaskState, WayBillNo: SearchWayBillNo, SourceExpressName: SearchExpressName,
departmentName: SearchDepartment, SearchSkuId, SearchTaskId, SearchSpuId, SearchOrderSn, SearchShopName, PageIndex, PageSize, SearchSkuTitle, SearchSpuTitle); departmentName: SearchDepartment, SearchSkuId, SearchTaskId, SearchSpuId, SearchOrderSn, SearchShopName, PageIndex, PageSize, SearchSkuTitle, SearchSpuTitle,
PackagingTaskExceptionState
);
if (res.Success) if (res.Success)
{ {
WaitPackCount = res.Data.WaitPackCount; WaitPackCount = res.Data.WaitPackCount;
OrderCount = res.Data.TotalCount; OrderCount = res.Data.TotalCount;
PackagingTaskExceptionCount = res.Data.PackagingTaskExceptionCount;
packagingTaskCount = res.Data.PackagingTaskCount;
PackerTaskModelList = new ObservableCollection<PackerTaskModel>(); PackerTaskModelList = new ObservableCollection<PackerTaskModel>();
res.Data.Items.ForEach(item => res.Data.Items.ForEach(item =>
{ {
@ -602,10 +659,10 @@ namespace BBWY.Client.ViewModels.PackerTask
var data = JsonConvert.DeserializeObject<PackerTaskModel>(JsonConvert.SerializeObject(item)); var data = JsonConvert.DeserializeObject<PackerTaskModel>(JsonConvert.SerializeObject(item));
if (PackTaskState== Models.PackTaskState.) if (PackTaskState == Models.PackTaskState.)
{ {
if (item.PackCompletionOverTime<item.PackCompletionTime)//超时 if (item.PackCompletionOverTime < item.PackCompletionTime)//超时
{ {
data.IsPackOverTime = true; data.IsPackOverTime = true;
data.PackRemainTime = OverTimeHelper.GetTimeString(item.PackCompletionTime.Value.Subtract(item.PackCompletionOverTime.Value)); data.PackRemainTime = OverTimeHelper.GetTimeString(item.PackCompletionTime.Value.Subtract(item.PackCompletionOverTime.Value));
@ -623,49 +680,86 @@ namespace BBWY.Client.ViewModels.PackerTask
PackerTaskModelList.Add(data); PackerTaskModelList.Add(data);
}); });
}); });
if (PackTaskState == Models.PackTaskState.) if (PackTaskState == Models.PackTaskState.)
{ {
var packCompletedTasks = PackerTaskModelList.Where(p => p.TaskState == Models.TaskState. && p.PackCompletionOverTime != null).ToList();
if (packCompletedTasks.Count() > 0)
{
packOverTimeThread = new Thread(() =>
if (PackagingTaskExceptionState == Models.PackagingTaskExceptionState.)
{
var packCompletedTasks = PackerTaskModelList.Where(p => p.TaskState == Models.TaskState. && p.PackCompletionOverTime != null && p.TaskAbortTime == null).ToList();
if (packCompletedTasks.Count() > 0)
{ {
IsStartThread = true;
while (IsStartThread) packOverTimeThread = new Thread(() =>
{ {
App.Current.Dispatcher.BeginInvoke(new Action(() => IsStartThread = true;
while (IsStartThread)
{ {
foreach (var item in packCompletedTasks) App.Current.Dispatcher.BeginInvoke(new Action(() =>
{ {
var datetime = item.PackCompletionOverTime.Value.Subtract(DateTime.Now); foreach (var item in packCompletedTasks)
if (datetime.TotalMilliseconds > 0)
{
item.IsPackOverTime = false;
item.PackRemainTime = OverTimeHelper.GetTimeString(datetime);
}
else
{ {
item.IsPackOverTime = true; var datetime = item.PackCompletionOverTime.Value.Subtract(DateTime.Now);
item.PackRemainTime = OverTimeHelper.GetTimeString(datetime); if (datetime.TotalMilliseconds > 0)
{
item.IsPackOverTime = false;
item.PackRemainTime = OverTimeHelper.GetTimeString(datetime);
}
else
{
item.IsPackOverTime = true;
item.PackRemainTime = OverTimeHelper.GetTimeString(datetime);
}
} }
}));
Thread.Sleep(1000);
}
} });
})); //任务倒计时数据
Thread.Sleep(1000); packOverTimeThread.IsBackground = true;
} packOverTimeThread.Start();
});
//任务倒计时数据
packOverTimeThread.IsBackground = true;
packOverTimeThread.Start();
}
}
if (PackagingTaskExceptionState == Models.PackagingTaskExceptionState.)
{
var packtasks = PackerTaskModelList.Where(p => p.TaskState == Models.TaskState. && p.TaskAbortTime != null).ToList();
App.Current.Dispatcher.BeginInvoke(new Action(() =>
{
foreach (var item in packtasks)
{
TimeSpan datetime;
datetime = item.PackCompletionOverTime.Value.Subtract(item.TaskAbortTime.Value);
item.PackRemainTime = OverTimeHelper.GetTimeString(datetime);
if (datetime.TotalMilliseconds > 0)
{
item.IsPackOverTime = false;
}
else
{
item.IsPackOverTime = true;
}
}
}));
} }
} }
} }
@ -701,8 +795,8 @@ namespace BBWY.Client.ViewModels.PackerTask
var id = (long)paramList[0]; var id = (long)paramList[0];
var markMsg = paramList[1]?.ToString(); var markMsg = paramList[1]?.ToString();
var overTimeTaskType = Models.OverTimeTaskType.; var overTimeTaskType = Models.OverTimeTaskType.;
SubmitOverTimeMarkMsgWindow submitOverTimeMarkMsgWindow = new SubmitOverTimeMarkMsgWindow(overTimeTaskType, id, markMsg, packTaskService, ReflashTask); SubmitOverTimeMarkMsgWindow submitOverTimeMarkMsgWindow = new SubmitOverTimeMarkMsgWindow(overTimeTaskType, id, markMsg, packTaskService, ReflashTask);
submitOverTimeMarkMsgWindow.ShowDialog(); submitOverTimeMarkMsgWindow.ShowDialog();

65
BBWY.Client/ViewModels/QualityTask/QualityViewModel.cs

@ -23,6 +23,7 @@ using BBWY.Controls;
using WebSocketSharp; using WebSocketSharp;
using BBWY.Client.APIServices.QiKu; using BBWY.Client.APIServices.QiKu;
using BarcodeLib; using BarcodeLib;
using System.Runtime.ConstrainedExecution;
namespace BBWY.Client.ViewModels namespace BBWY.Client.ViewModels
{ {
@ -369,6 +370,11 @@ namespace BBWY.Client.ViewModels
public bool IsLoading { get => isLoading; set { Set(ref isLoading, value); } } public bool IsLoading { get => isLoading; set { Set(ref isLoading, value); } }
PurchaseService purchaseService; PurchaseService purchaseService;
MarkMessageService markMessageService;
QualityTaskService qualityTaskService;
SaveType? saveType;
public string OriginShopName { get; set; } public string OriginShopName { get; set; }
@ -387,14 +393,21 @@ namespace BBWY.Client.ViewModels
public ICommand OpenSkuDetailCommand { get; set; } public ICommand OpenSkuDetailCommand { get; set; }
public ICommand CompeteQualityTaskCommand { get; set; } public ICommand CompeteQualityTaskCommand { get; set; }
public ICommand SearchSkuCommand { get; set; } public ICommand SearchSkuCommand { get; set; }
public ICommand QualityTaskExceptionCommand { get; set; }
#endregion #endregion
public QualityViewModel(ProductService productService, GlobalContext globalContext, PackPurchaseTaskService packPurchaseTaskService, PurchaseService purchaseService, PackTaskService packTaskService, MarkMessageService markMessageService) public QualityViewModel(ProductService productService, GlobalContext globalContext, PackPurchaseTaskService packPurchaseTaskService, PurchaseService purchaseService, PackTaskService packTaskService, MarkMessageService markMessageService, QualityTaskService qualityTaskService)
{ {
this.packPurchaseTaskService = packPurchaseTaskService; this.packPurchaseTaskService = packPurchaseTaskService;
this.productService = productService; this.productService = productService;
this.globalContext = globalContext; this.globalContext = globalContext;
this.purchaseService = purchaseService;
this.packTaskService = packTaskService;
this.markMessageService = markMessageService;
this.qualityTaskService = qualityTaskService;
OpenSkuDetailCommand = new RelayCommand<object>(OpenSkuDetail); OpenSkuDetailCommand = new RelayCommand<object>(OpenSkuDetail);
SetBarCodeCommand = new RelayCommand(SetBarCode); SetBarCodeCommand = new RelayCommand(SetBarCode);
SetCertificateCommand = new RelayCommand<PurchaseSku>(SetCertificate); SetCertificateCommand = new RelayCommand<PurchaseSku>(SetCertificate);
@ -411,13 +424,25 @@ namespace BBWY.Client.ViewModels
}); });
} }
this.purchaseService = purchaseService; QualityTaskExceptionCommand = new RelayCommand<object>(QualityTaskException);
this.packTaskService = packTaskService;
this.markMessageService = markMessageService;
} }
#region 方法 #region 方法
private void QualityTaskException(object obj)
{
AddExceptionWindow addExceptionWindow = new AddExceptionWindow(qualityTaskService, TaskId, Models.TaskState., () => {
var window = obj as BWindow;
App.Current.Dispatcher.Invoke(new Action(() =>
{
window.Close();
}));
ReflashWindow?.Invoke();
});
addExceptionWindow.ShowDialog();
}
private void CompeteQualityTask(object obj) private void CompeteQualityTask(object obj)
{ {
if (ArrivalQuantity == null) if (ArrivalQuantity == null)
@ -448,11 +473,6 @@ namespace BBWY.Client.ViewModels
MessageBox.Show($"到货数量不能:{ArrivalQuantity}!"); MessageBox.Show($"到货数量不能:{ArrivalQuantity}!");
return; return;
} }
var request = new Models.APIModel.Request.QualityTaskRequest var request = new Models.APIModel.Request.QualityTaskRequest
{ {
BasicPack = BasicPack, BasicPack = BasicPack,
@ -461,19 +481,15 @@ namespace BBWY.Client.ViewModels
Increment1 = string.Join(",", IncreateList.Where(i => i.IsSelected).Select(i => i.IncreateName)), Increment1 = string.Join(",", IncreateList.Where(i => i.IsSelected).Select(i => i.IncreateName)),
BrandName = BrandName, BrandName = BrandName,
CertificatePosition = CertificatePosition, CertificatePosition = CertificatePosition,
MarkMessage = MarkMessage,
OrderId = OrderId, OrderId = OrderId,
PackType = PackType, PackType = PackType,
GoodsNumber = GoodsNumber, GoodsNumber = GoodsNumber,
SkuGoodsTitle = SkuTitle, SkuGoodsTitle = SkuTitle,
SkuId = SkuId, SkuId = SkuId,
IsNeedBar = IsNeedBarCode == Need.,
IsNeedCer = IsNeedCertificateModel == Need.,
TaskId = TaskId, TaskId = TaskId,
//FloorDragNumber = FloorDragNumber BrandMarkType= BrandMarkType
}; };
if (CreateTime > Convert.ToDateTime("2023-08-21")) if (CreateTime > Convert.ToDateTime("2023-08-21"))
{ {
if (IsNeedBarCode == Need.) if (IsNeedBarCode == Need.)
@ -515,7 +531,7 @@ namespace BBWY.Client.ViewModels
try try
{ {
var competeRes = packPurchaseTaskService.CompeteQualityTask(request); var competeRes = qualityTaskService.CompeteQualityTask(request);
if (competeRes == null) if (competeRes == null)
{ {
MessageBox.Show("网络异常"); MessageBox.Show("网络异常");
@ -526,23 +542,16 @@ namespace BBWY.Client.ViewModels
MessageBox.Show(competeRes.Msg); MessageBox.Show(competeRes.Msg);
return; return;
} }
BatchPrintWindow batchPrint = new BatchPrintWindow(); BatchPrintWindow batchPrint = new BatchPrintWindow(BrandMarkType, IsNeedPrintCer, GoodProductQuantity.Value,
//if (BarCodeModel!=null)
//{
// BarCodeModel.ShopName = OriginShopName;
//}
batchPrint.SetData(GoodProductQuantity.Value,
PurchaseSkuList.Where(p => p.IsNeedCer && p.CerDTO != null && p.CerDTO.Id > 0).Select(p => p.CerDTO).ToArray() PurchaseSkuList.Where(p => p.IsNeedCer && p.CerDTO != null && p.CerDTO.Id > 0).Select(p => p.CerDTO).ToArray()
, BarCodeModel); , BarCodeModel);
batchPrint.ShowDialog(); batchPrint.ShowDialog();
if (ReflashWindow != null) ReflashWindow(); if (ReflashWindow != null) ReflashWindow();
var window = obj as BWindow; var window = obj as BWindow;
App.Current.Dispatcher.Invoke(new Action(() => App.Current.Dispatcher.Invoke(new Action(() =>
{ {
window.Close(); window.Close();
})); }));
@ -669,9 +678,6 @@ namespace BBWY.Client.ViewModels
look.Show(); look.Show();
} }
MarkMessageService markMessageService;
SaveType? saveType;
/// <summary> /// <summary>
/// 搜索 skuId(todo:) /// 搜索 skuId(todo:)
/// </summary> /// </summary>
@ -845,12 +851,17 @@ namespace BBWY.Client.ViewModels
} }
BrandMarkType = brandMarkType; BrandMarkType = brandMarkType;
IsNeedPrintCer = cer;
}); });
} }
private Need IsNeedPrintCer;
public Action ReflashWindow { get; set; } public Action ReflashWindow { get; set; }

14
BBWY.Client/ViewModels/SealBox/SealBoxConfigureViewModel.cs

@ -499,6 +499,7 @@ namespace BBWY.Client.ViewModels.SealBox
TaskId = model.TaskId, TaskId = model.TaskId,
TaskState = model.TaskState, TaskState = model.TaskState,
WaitConfigureCount = count, WaitConfigureCount = count,
TaskIdRemark= model.TaskIdRemark,
}; };
data.WareHourseDatas = new ObservableCollection<SealBoxConfigureWareHourseModel>(); data.WareHourseDatas = new ObservableCollection<SealBoxConfigureWareHourseModel>();
switch (waretype) switch (waretype)
@ -516,7 +517,8 @@ namespace BBWY.Client.ViewModels.SealBox
WareId = item.WareId, WareId = item.WareId,
WareName = item.WareName, WareName = item.WareName,
//WareType = s.WareType, //WareType = s.WareType,
WareState = item.WareState WareState = item.WareState,
TaskIdRemark = item.TaskIdRemark,
}); });
} }
break; break;
@ -532,7 +534,9 @@ namespace BBWY.Client.ViewModels.SealBox
WareId = item.WareId, WareId = item.WareId,
WareName = item.WareName, WareName = item.WareName,
//WareType = s.WareType, //WareType = s.WareType,
WareState = item.WareState WareState = item.WareState,
TaskIdRemark = item.TaskIdRemark,
}); });
} }
@ -549,7 +553,8 @@ namespace BBWY.Client.ViewModels.SealBox
WareId = item.WareId, WareId = item.WareId,
WareName = item.WareName, WareName = item.WareName,
//WareType = s.WareType, //WareType = s.WareType,
WareState = item.WareState WareState = item.WareState,
TaskIdRemark = item.TaskIdRemark,
}); });
} }
@ -566,7 +571,8 @@ namespace BBWY.Client.ViewModels.SealBox
WareId = item.WareId, WareId = item.WareId,
WareName = item.WareName, WareName = item.WareName,
//WareType = s.WareType, //WareType = s.WareType,
WareState = item.WareState WareState = item.WareState,
TaskIdRemark = item.TaskIdRemark,
}); });
} }

4
BBWY.Client/Views/FallWare/FallWareConfiguredControl.xaml

@ -199,9 +199,9 @@ Foreground="{StaticResource Text.Link.Color}" FontSize="18" HorizontalAlignment=
<StackPanel Orientation="Vertical" Grid.Column="2" Margin="20,10,0,10"> <StackPanel Orientation="Vertical" Grid.Column="2" Margin="20,10,0,10">
<StackPanel Orientation="Horizontal" Margin="0 0 0 13"> <StackPanel Orientation="Horizontal" Margin="0 0 0 13">
<TextBlock Text="任务ID:" Style="{StaticResource middleTextBlock}" /> <TextBlock Text="任务ID:" Style="{StaticResource middleTextBlock}" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,0,0"/> Margin=" 5,0,0,0"/>
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" Margin="0 0 0 0 "> <StackPanel Orientation="Horizontal" Margin="0 0 0 0 ">

4
BBWY.Client/Views/FallWare/FallWareWaitConfigureControl.xaml

@ -227,9 +227,9 @@ Foreground="{StaticResource Text.Link.Color}" FontSize="18" HorizontalAlignment=
<StackPanel Orientation="Vertical" Grid.Column="2" Margin="20,10,0,10"> <StackPanel Orientation="Vertical" Grid.Column="2" Margin="20,10,0,10">
<StackPanel Orientation="Horizontal" Margin="0 0 0 13"> <StackPanel Orientation="Horizontal" Margin="0 0 0 13">
<TextBlock Text="任务ID:" Style="{StaticResource middleTextBlock}" /> <TextBlock Text="任务ID:" Style="{StaticResource middleTextBlock}" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,0,0"/> Margin=" 5,0,0,0"/>
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" Margin="0 0 0 0 "> <StackPanel Orientation="Horizontal" Margin="0 0 0 0 ">

8
BBWY.Client/Views/FallWare/WaitFallWareControl.xaml

@ -124,7 +124,7 @@
CommandParameter="{Binding}" CommandParameter="{Binding}"
/> />
<Grid Grid.Column="5" Panel.ZIndex="-2"> <Grid Grid.Column="5" Panel.ZIndex="-2">
<TextBlock Style="{StaticResource middleTextBlock}" Text="{Binding SealBoxSkus,Converter={StaticResource objConverter},ConverterParameter=#null:∧:∨}" FontWeight="Bold" <TextBlock Style="{StaticResource middleTextBlock}" Text="{Binding IsHideSkuList,Converter={StaticResource objConverter},ConverterParameter=true:∧:∨}" FontWeight="Bold"
Foreground="{StaticResource Text.Link.Color}" FontSize="18" Foreground="{StaticResource Text.Link.Color}" FontSize="18"
/> />
@ -132,7 +132,7 @@
</Grid> </Grid>
</Grid> </Grid>
<Grid Grid.Row="1" <Grid Grid.Row="1"
Visibility="{Binding SealBoxSkus,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible}" Visibility="{Binding IsHideSkuList,Converter={StaticResource objConverter},ConverterParameter=true:Collapsed:Visible}"
> >
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="400"/> <ColumnDefinition Width="400"/>
@ -217,9 +217,9 @@
<TextBlock Foreground="{StaticResource Text.Gray}"> <TextBlock Foreground="{StaticResource Text.Gray}">
<Run Text="任务ID:" /> <Run Text="任务ID:" />
</TextBlock> </TextBlock>
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,0,0"/> Margin=" 5,0,0,0"/>
</StackPanel> </StackPanel>
<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0"> <TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0">

5
BBWY.Client/Views/FallWare/WareFallWareListControl.xaml

@ -87,11 +87,6 @@
<Setter Property="IsReadOnly" Value="True"/> <Setter Property="IsReadOnly" Value="True"/>
</Style> </Style>
</StackPanel.Resources> </StackPanel.Resources>
<TextBlock x:Name="textblock_shop" Text="店铺:" VerticalAlignment="Center" Margin="16,0,0,0"/> <TextBlock x:Name="textblock_shop" Text="店铺:" VerticalAlignment="Center" Margin="16,0,0,0"/>
<c:BTextBox Name="btbShopName" Width="150" Visibility="Hidden" Margin="5,0,0,0" Text="{Binding SearchShopName,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="店铺名称"/> <c:BTextBox Name="btbShopName" Width="150" Visibility="Hidden" Margin="5,0,0,0" Text="{Binding SearchShopName,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="店铺名称"/>
<TextBlock Text="任务ID:" VerticalAlignment="Center" Margin="16,0,0,0"/> <TextBlock Text="任务ID:" VerticalAlignment="Center" Margin="16,0,0,0"/>

4
BBWY.Client/Views/PackTask/PackDetailWindow.xaml

@ -529,10 +529,6 @@
</ScrollViewer> </ScrollViewer>
</Grid> </Grid>
<Grid Grid.Row="1" Grid.Column="1" Visibility="Hidden" > <Grid Grid.Row="1" Grid.Column="1" Visibility="Hidden" >
<Grid x:Name="print_box" Height="492" Width="272"> <Grid x:Name="print_box" Height="492" Width="272">
<Grid Margin="0 10 0 10" Width="272"> <Grid Margin="0 10 0 10" Width="272">

4
BBWY.Client/Views/PackTask/ShopWaitPackageControl.xaml

@ -108,9 +108,9 @@
<TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" />
<TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/> <TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/> Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" <Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}"

5
BBWY.Client/Views/PackTask/TaskList.xaml

@ -8,6 +8,7 @@
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls" xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:cmodel="clr-namespace:BBWY.Client.Models" xmlns:cmodel="clr-namespace:BBWY.Client.Models"
xmlns:sealbox="clr-namespace:BBWY.Client.Views.SealBox" xmlns:sealbox="clr-namespace:BBWY.Client.Views.SealBox"
xmlns:packagingTask="clr-namespace:BBWY.Client.Views.PackagingTask"
xmlns:tran="clr-namespace:BBWY.Client.Views.WaitTransport" xmlns:tran="clr-namespace:BBWY.Client.Views.WaitTransport"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors" xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:sys="clr-namespace:System;assembly=mscorlib"
@ -195,10 +196,10 @@
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待封箱|待落仓:Visible:Collapsed}" Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待封箱|待落仓:Visible:Collapsed}"
/> />
<waitquality:ShopWaitQualityControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" /> <waitquality:ShopWaitQualityList Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" />
<local:ShopWaitPackageControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待排单:Visible:Collapsed}" /> <local:ShopWaitPackageControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待排单:Visible:Collapsed}" />
<local:ShopWaitPackageControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}" /> <packagingTask:ShopPackagingTaskList Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}" />
<tran:TeamWaitTransportListControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待转运:Visible:Collapsed}" /> <tran:TeamWaitTransportListControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待转运:Visible:Collapsed}" />
<store:ShopStorePickSelfControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=商家自取:Visible:Collapsed}" /> <store:ShopStorePickSelfControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=商家自取:Visible:Collapsed}" />

4
BBWY.Client/Views/PackTask/TaskListControl.xaml

@ -102,9 +102,9 @@
<TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" />
<TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/> <TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/> Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" Foreground="White" <Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" Foreground="White"

15
BBWY.Client/Views/PackTask/WaitPackageControl.xaml

@ -251,9 +251,9 @@
<TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" />
<TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/> <TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/> Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" <Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}"
@ -640,15 +640,16 @@ Margin=" 5,0,7,0">
<Grid Grid.Column="10" > <Grid Grid.Column="10" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"> <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<c:BButton HorizontalAlignment="Center" Height="20" Style="{StaticResource LinkButton}" VerticalAlignment="Center" Grid.Row="1"
Content="{Binding FeesItemResponse,Converter={StaticResource objConverter},ConverterParameter=#null:包装设置:修改设置 }"
Command="{Binding SetServiceCommand}"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=已取消|未到货|部分到货|待验收|:Collapsed:Visible}"
/>
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="验收" <c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="验收"
Command="{Binding QualityTaskCommand}" Command="{Binding QualityTaskCommand}"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}"
/> />
<c:BButton HorizontalAlignment="Center" Height="20" Style="{StaticResource LinkButton}" VerticalAlignment="Center" Grid.Row="1"
Content="{Binding FeesItemResponse,Converter={StaticResource objConverter},ConverterParameter=#null:包装设置:修改设置 }"
Command="{Binding SetServiceCommand}"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=已取消|未到货|部分到货|待验收|:Collapsed:Visible}"
/>
<StackPanel <StackPanel
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}" Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}"
> >

3
BBWY.Client/Views/PackTask/WareHouseList.xaml

@ -7,6 +7,7 @@
xmlns:fallware="clr-namespace:BBWY.Client.Views.FallWare" xmlns:fallware="clr-namespace:BBWY.Client.Views.FallWare"
xmlns:waittransport="clr-namespace:BBWY.Client.Views.WaitTransport" xmlns:waittransport="clr-namespace:BBWY.Client.Views.WaitTransport"
xmlns:waitquality="clr-namespace:BBWY.Client.Views.QualityTask" xmlns:waitquality="clr-namespace:BBWY.Client.Views.QualityTask"
xmlns:packagingtask="clr-namespace:BBWY.Client.Views.PackagingTask"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls" xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:ctr="clr-namespace:BBWY.Client.Converters" xmlns:ctr="clr-namespace:BBWY.Client.Converters"
xmlns:cmodel="clr-namespace:BBWY.Client.Models" xmlns:cmodel="clr-namespace:BBWY.Client.Models"
@ -151,7 +152,7 @@
<fallware:WareFallWareListControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待封箱:Visible:Collapsed}" /> <fallware:WareFallWareListControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待封箱:Visible:Collapsed}" />
<waitquality:WaitQualityList Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" /> <waitquality:WaitQualityList Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" />
<local:WaitPackageControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待排单:Visible:Collapsed}" /> <local:WaitPackageControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待排单:Visible:Collapsed}" />
<local:WaitPackageControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}" /> <packagingtask:PackagingTaskList Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}" />
<waittransport:WareWaitTransportListControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待转运:Visible:Collapsed}" /> <waittransport:WareWaitTransportListControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待转运:Visible:Collapsed}" />
<taskovertime:WareTaskOverTimeControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=已超时:Visible:Collapsed}" /> <taskovertime:WareTaskOverTimeControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=已超时:Visible:Collapsed}" />
<local:WaitCompletedControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待出库:Visible:Collapsed}" /> <local:WaitCompletedControl Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待出库:Visible:Collapsed}" />

11
BBWY.Client/Views/PackTask/WareHouseListControl.xaml

@ -242,9 +242,9 @@
<TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" />
<TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/> <TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/> Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" <Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}"
Foreground="White" Background="{Binding TaskState,Converter={StaticResource enumToColorConverter} , ConverterParameter={x:Type cmodel:TaskState} }" Margin="25,0,0,0" Foreground="White" Background="{Binding TaskState,Converter={StaticResource enumToColorConverter} , ConverterParameter={x:Type cmodel:TaskState} }" Margin="25,0,0,0"
@ -270,7 +270,7 @@
</StackPanel> </StackPanel>
</StackPanel> </StackPanel>
<StackPanel Grid.Column="9" Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" <StackPanel Grid.Column="9" Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=未到货|部分到货|待验收:Visible:Collapsed}"
> >
<!-- --> <!-- -->
<c:BButton Command="{Binding UpdateTaskCommand}" Style="{StaticResource LinkButton}" Content="修改" /> <c:BButton Command="{Binding UpdateTaskCommand}" Style="{StaticResource LinkButton}" Content="修改" />
@ -530,6 +530,11 @@
Command="{Binding QualityTaskCommand}" Command="{Binding QualityTaskCommand}"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}"
/> />
<c:BButton HorizontalAlignment="Center" Height="20" Style="{StaticResource LinkButton}" VerticalAlignment="Center" Grid.Row="1"
Content="{Binding FeesItemResponse,Converter={StaticResource objConverter},ConverterParameter=#null:包装设置:修改设置 }"
Command="{Binding SetServiceCommand}"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=已取消|未到货|部分到货|待验收:Collapsed:Visible}"
/>
<StackPanel <StackPanel
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}" Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}"

228
BBWY.Client/Views/PackagingTask/PackagingTaskList.xaml

@ -0,0 +1,228 @@
<UserControl x:Class="BBWY.Client.Views.PackagingTask.PackagingTaskList"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:ctr="clr-namespace:BBWY.Client.Converters" Background="White"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:BBWY.Client.Views.PackagingTask"
xmlns:cmodel="clr-namespace:BBWY.Client.Models"
DataContext="{Binding WareHouseList,Source={StaticResource Locator}}"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="1500">
<UserControl.Resources>
<ObjectDataProvider x:Key="storageTypeProvider" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="cmodel:StorageType"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<ctr:OrderStorageTypeOptionConverter x:Key="ostConverter"/>
<ctr:ProfitRatioConverter x:Key="profitRatioConverter"/>
<ctr:WaybillNoConverter x:Key="waybillConverter"/>
<ctr:MultiParameterTransferConverter x:Key="mptConverter"/>
<ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/>
<Style TargetType="RadioButton">
<Setter Property="IsChecked" Value="False" />
<Setter Property="Background" Value="#8080FF" />
<Setter Property="Foreground" Value="Black" />
<!--<Setter Property="Content" Value="{Binding ElementName=txt,Path=Text}"/>-->
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RadioButton">
<Grid Background="#F2F2F2" >
<Rectangle x:Name="_Rect" Fill="#F2F2F2" HorizontalAlignment="Center" Height="35" VerticalAlignment="Center" Width="{TemplateBinding Width}" RenderTransformOrigin="0.5,0.5">
<Rectangle.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleY="-1"/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Rectangle.RenderTransform>
</Rectangle>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Height="35">
<TextBlock VerticalAlignment="Center" Text="{TemplateBinding Content}" />
<TextBlock VerticalAlignment="Center" Text="{TemplateBinding Tag}" Foreground="{StaticResource Text.Pink}" Margin="5 0 0 0" />
</StackPanel>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="true">
<Setter TargetName="_Rect" Property="Fill" Value="#8080FF" />
<Setter Property="Foreground" Value="white"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
<Grid>
<StackPanel Panel.ZIndex="100" HorizontalAlignment="Left" VerticalAlignment="Top" Orientation="Vertical" Margin="590,15,0,0"
Visibility="{Binding SelectShop,Mode=OneWay,Converter={StaticResource objConverter},ConverterParameter=部门:Visible:Collapsed}"
>
<c:BTextBox x:Name="tb" Width="150" Height="30" TextChanged="tb_TextChanged" Text="{Binding SearchDepartment,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="部门名称"
BorderThickness="1 0 0 1" Margin="0 0 0 1"
/>
<ListBox MaxHeight="300" x:Name="tipBox" SelectionChanged="SelectionChangeCommand" Background="{StaticResource Border.Background}"/>
</StackPanel>
<StackPanel Panel.ZIndex="100" HorizontalAlignment="Left" VerticalAlignment="Top" Orientation="Vertical" Margin="590,15,0,0"
Visibility="{Binding SelectShop,Mode=OneWay,Converter={StaticResource objConverter},ConverterParameter=店铺:Visible:Collapsed}"
>
<c:BTextBox x:Name="tbShop" Width="150" Height="30" TextChanged="tbShop_TextChanged" Text="{Binding SearchShopName,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="店铺名称"
BorderThickness="1 0 0 1" Margin="0 0 0 1"
/>
<ListBox MaxHeight="300" x:Name="tipBoxShop" SelectionChanged="tipBoxShop_SelectionChanged" Background="{StaticResource Border.Background}">
</ListBox>
</StackPanel>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="54"/>
<RowDefinition Height="50"/>
<RowDefinition />
</Grid.RowDefinitions>
<Grid Grid.Row="0" HorizontalAlignment="Stretch" Panel.ZIndex="999" Margin="0,5,0,0" >
<Grid.RowDefinitions>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="auto"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal" Height="30" >
<StackPanel.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/HandyControl;component/Themes/SkinDefault.xaml"/>
<ResourceDictionary Source="pack://application:,,,/HandyControl;component/Themes/Theme.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</StackPanel.Resources>
<Border CornerRadius="0" BorderThickness="1" BorderBrush="{StaticResource Border.Brush}" Margin="5,0,0,0">
<StackPanel Orientation="Horizontal">
<ComboBox BorderThickness="0" Width="110" VerticalContentAlignment="Center" ItemsSource="{Binding SelectIdList}" HorizontalContentAlignment="Center" Text="{Binding SelectTaskId ,Mode=TwoWay}" />
<UniformGrid Width="150" Margin="0,0,0,0" Rows="1" Columns="1">
<c:BTextBox Width="150" BorderThickness="1 0 0 0" WaterRemark="任务ID" Text="{Binding SearchTaskId,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
Visibility="{Binding SelectTaskId,Mode=OneWay,Converter={StaticResource objConverter},ConverterParameter=任务ID:Visible:Collapsed}"
/>
<c:BTextBox Width="150" BorderThickness="1 0 0 0" WaterRemark="拳探订单号" Text="{Binding SearchOrderSn,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
Visibility="{Binding SelectTaskId,Mode=OneWay,Converter={StaticResource objConverter},ConverterParameter=拳探订单号:Visible:Collapsed}"
/>
</UniformGrid>
</StackPanel>
</Border>
<Border CornerRadius="0" BorderThickness="1" BorderBrush="{StaticResource Border.Brush}" Margin="5,0,0,0">
<StackPanel Orientation="Horizontal">
<ComboBox BorderThickness="0" Width="80" VerticalContentAlignment="Center" ItemsSource="{Binding SelectSkuList}" HorizontalContentAlignment="Center" Text="{Binding SelectSku ,Mode=TwoWay}" />
<UniformGrid Width="150" Rows="1" Columns="1">
<c:BTextBox Width="150" WaterRemark="SKUID" Text="{Binding SearchSkuId,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
BorderThickness="1 0 0 0" Visibility="{Binding SelectSku,Mode=OneWay,Converter={StaticResource objConverter},ConverterParameter=SKU:Visible:Collapsed}"
/>
<c:BTextBox Width="150" WaterRemark="SPUID" Text="{Binding SearchSpuId,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
BorderThickness="1 0 0 0" Visibility="{Binding SelectSku,Mode=OneWay,Converter={StaticResource objConverter},ConverterParameter=SPU:Visible:Collapsed}"
/>
</UniformGrid>
</StackPanel>
</Border>
<Border CornerRadius="0" BorderThickness="1" BorderBrush="{StaticResource Border.Brush}" Margin="5,0,0,0">
<StackPanel Orientation="Horizontal">
<ComboBox BorderThickness="0" Width="80" VerticalContentAlignment="Center" ItemsSource="{Binding SelectShopList}" HorizontalContentAlignment="Center" Text="{Binding SelectShop ,Mode=TwoWay}" />
<UniformGrid Width="150" Rows="1" Columns="1">
<c:BTextBox Width="150" WaterRemark="SKUID" Text="{Binding SearchSkuId,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
BorderThickness="1 0 0 0" Visibility="{Binding SelectSku,Mode=OneWay,Converter={StaticResource objConverter},ConverterParameter=SKU:Visible:Collapsed}"
/>
<!--<c:BTextBox Width="150" WaterRemark="SPUID" Text="{Binding SearchSpuId,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
BorderThickness="1 0 0 0" Visibility="{Binding SelectSku,Mode=OneWay,Converter={StaticResource objConverter},ConverterParameter=SPU:Visible:Collapsed}"
/>-->
</UniformGrid>
</StackPanel>
</Border>
<!--<TextBlock Text="部门: " VerticalAlignment="Center" Margin="16,0,2,0"/>
<c:BTextBox Visibility="Hidden" Width="150" Height="30" ></c:BTextBox>
<TextBlock x:Name="textblock_shop" Text="店铺:" VerticalAlignment="Center" Margin="16,0,0,0"/>
<c:BTextBox Name="btbShopName" Width="150" Visibility="Hidden" Margin="5,0,0,0" />-->
<Border CornerRadius="0" BorderThickness="1" BorderBrush="{StaticResource Border.Brush}" Margin="20,0,0,0">
<StackPanel Orientation="Horizontal">
<ComboBox Width="125" BorderThickness="0" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" ItemsSource="{Binding SelectExpressList}" Text="{Binding SelectExpress }"/>
<UniformGrid Width="150" Margin="0,0,0,0" Rows="1" Columns="1">
<c:BTextBox Width="150" Text="{Binding SearchWayBillNo,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="精准搜索"
BorderThickness="1 0 0 0" Visibility="{Binding SelectExpress,Converter={StaticResource objConverter},ConverterParameter=物流单号:Visible:Collapsed}"
/>
<c:BTextBox Width="150" Text="{Binding SearchExpressName,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="模糊搜索"
BorderThickness="1 0 0 0" Visibility="{Binding SelectExpress,Converter={StaticResource objConverter},ConverterParameter=物流公司名称:Visible:Collapsed}"
/>
</UniformGrid>
</StackPanel>
</Border>
<Grid Grid.Column="1" Grid.Row="1" Margin="20,0,0,0">
<Rectangle Stroke="{StaticResource Border.Brush}" StrokeThickness="1"/>
<StackPanel Orientation="Horizontal" Margin="1">
<ComboBox Width="125" BorderThickness="0" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" ItemsSource="{Binding SelectTitleList}" Text="{Binding SelectTitle }"/>
<UniformGrid Width="150" Margin="0,0,0,0" Rows="1" Columns="1">
<c:BTextBox Width="150" Text="{Binding SearchSkuTitle,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="模糊搜索"
BorderThickness="1 0 0 0" Visibility="{Binding SelectTitle,Converter={StaticResource objConverter},ConverterParameter=SKU名称:Visible:Collapsed}"
/>
<c:BTextBox Width="150" Text="{Binding SearchSpuTitle,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" WaterRemark="模糊搜索"
BorderThickness="1 0 0 0" Visibility="{Binding SelectTitle,Converter={StaticResource objConverter},ConverterParameter=标题:Visible:Collapsed}"
/>
</UniformGrid>
</StackPanel>
</Grid>
<c:BButton Content="搜索" Width="94" Height="30" VerticalAlignment="Stretch" Margin="10,0,0,0"
Command="{Binding SearchTaskCommand}"
Grid.RowSpan="2" Background="{StaticResource Button.Selected.Background}" BorderThickness="0" Foreground="White"/>
</StackPanel>
</Grid>
<StackPanel Orientation="Horizontal" Grid.Row="1">
<RadioButton Content="全部" Height="35" Width="130" IsChecked="{Binding PackagingTaskExceptionState,Converter={StaticResource taskStateToBoolean},ConverterParameter=#null:True:False}"
Command="{Binding SetPackagingTaskExceptionStateCommand}"
/>
<RadioButton Content="待包装" Height="35" Width="130" Tag="{Binding PackagingTaskCount,Mode=TwoWay}" IsChecked="{Binding PackagingTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=待包装:True:False}"
Command="{Binding SetPackagingTaskExceptionStateCommand}"
/>
<RadioButton Content="挂起任务" Height="35" Width="130" Tag="{Binding PackagingTaskExceptionCount,Mode=TwoWay}" IsChecked="{Binding PackagingTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=挂起任务:True:False}"
Command="{Binding SetPackagingTaskExceptionStateCommand}"
/>
</StackPanel>
<Grid Grid.Row="2">
<local:WaitPackingTaskControl/>
</Grid>
</Grid>
</Grid>
</UserControl>

245
BBWY.Client/Views/PackagingTask/PackagingTaskList.xaml.cs

@ -0,0 +1,245 @@
using BBWY.Client.Helpers;
using BBWY.Client.Models.PackTask;
using BBWY.Client.ViewModels;
using BBWY.Common.Models;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
using WebSocketSharp;
namespace BBWY.Client.Views.PackagingTask
{
/// <summary>
/// PackagingTaskList.xaml 的交互逻辑
/// </summary>
public partial class PackagingTaskList : UserControl
{
public PackagingTaskList()
{
InitializeComponent();
this.Loaded += Load;
}
GlobalContext globalContext;
public void LoadShops(GlobalContext globalContext)
{
this.globalContext = globalContext;
shops = globalContext.User.ShopList.Select(s => s.ShopName).ToList();
departments = globalContext.User.DepartmentList.Select(s => s.Name).ToList();
}
private void Load(object sender, RoutedEventArgs e)
{
try
{
var model = (App.Current.Resources["Locator"] as ViewModelLocator).Main;
LoadShops(model.GlobalContext);
}
catch
{
}
}
public string QKApiHost { get; set; }
public void SelectionChangeCommand(object sender, SelectionChangedEventArgs e)
{
try
{
var list = (ListBox)sender;
if (list.Items.Count <= 0)
{
return;
}
var value = (ListBoxItem)list.SelectedValue;
var content = (Label)value.Content;
tb.Text = content.Content.ToString();
tipBox.Visibility = Visibility.Collapsed;
}
catch (Exception)
{
}
}
List<string> departments = new List<string>();
List<string> shops = new List<string>();
private void tb_TextChanged(object sender, TextChangedEventArgs e)
{
if (tipBox != null)
try
{
var textBoxt = (TextBox)sender;
//创建一个ListBox
if (tipBox != null && tipBox.Items.Count > 0)
{
tipBox.Items.Clear();
}
if (departments.Count <= 0)
{
if (QKApiHost.IsNullOrEmpty()) QKApiHost = "http://qiku.qiyue666.com";
HttpClientHelper helper = new HttpClientHelper(QKApiHost);
string url = $"{QKApiHost}/api/PackTask/GetAllDepartment";//获取所有数据
var data = helper.Get(url);
var res = JsonConvert.DeserializeObject<ApiResponse<UserDepartment[]>>(data);
//创建一个ListBoxIem
if (res.Success)
{
if (res.Data != null && res.Data.Count() > 0)
{
foreach (var department in res.Data)
{
if (!departments.Contains(department.DePartmentName))
{
departments.Add(department.DePartmentName);
}
}
}
}
}
if (string.IsNullOrEmpty(textBoxt.Text))
{
tipBox.Visibility = Visibility.Collapsed;
return;
}
foreach (var department in departments)
{
if (department.Contains(textBoxt.Text))
{
ListBoxItem item = new ListBoxItem();
Label lb = new Label();
lb.Content = department;
item.Content = lb;
tipBox.Items.Add(item);
}
}
tipBox.Visibility = Visibility.Visible;
}
catch (Exception)
{
}
}
private void tbShop_TextChanged(object sender, TextChangedEventArgs e)
{
try
{
var textBoxt = (TextBox)sender;
//创建一个ListBox
if (tipBoxShop != null && tipBoxShop.Items.Count > 0)
{
tipBoxShop.Items.Clear();
}
if (shops.Count <= 0)
{
if (globalContext != null)
LoadShops(globalContext);
}
if (string.IsNullOrEmpty(textBoxt.Text))
{
tipBoxShop.Visibility = Visibility.Collapsed;
return;
}
foreach (var department in shops)
{
if (department.Contains(textBoxt.Text))
{
ListBoxItem item = new ListBoxItem();
Label lb = new Label();
lb.Content = department;
item.Content = lb;
tipBoxShop.Items.Add(item);
}
}
if (tipBoxShop != null)
tipBoxShop.Visibility = Visibility.Visible;
}
catch (Exception)
{
}
}
private void tipBoxShop_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
try
{
var list = (ListBox)sender;
if (list.Items.Count <= 0)
{
return;
}
var value = (ListBoxItem)list.SelectedValue;
var content = (Label)value.Content;
tbShop.Text = content.Content.ToString();
tipBoxShop.Visibility = Visibility.Collapsed;
}
catch (Exception)
{
}
}
private void tb_LostFocus(object sender, RoutedEventArgs e)
{
try
{
if (tipBox != null && tipBox.Items.Count > 0)
{
tipBox.Items.Clear();
}
}
catch (Exception)
{
}
}
private void tbShop_LostFocus(object sender, RoutedEventArgs e)
{
try
{
if (tipBoxShop != null && tipBoxShop.Items.Count > 0)
{
tipBoxShop.Items.Clear();
}
}
catch (Exception)
{
}
}
}
}

89
BBWY.Client/Views/PackagingTask/ShopPackagingTaskList.xaml

@ -0,0 +1,89 @@
<UserControl x:Class="BBWY.Client.Views.PackagingTask.ShopPackagingTaskList"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:ctr="clr-namespace:BBWY.Client.Converters" Background="White"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:cmodel="clr-namespace:BBWY.Client.Models"
xmlns:local="clr-namespace:BBWY.Client.Views.PackagingTask"
DataContext="{Binding TaskList,Source={StaticResource Locator}}"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="1500">
<UserControl.Resources>
<ObjectDataProvider x:Key="storageTypeProvider" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="cmodel:StorageType"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<ctr:OrderStorageTypeOptionConverter x:Key="ostConverter"/>
<ctr:ProfitRatioConverter x:Key="profitRatioConverter"/>
<ctr:WaybillNoConverter x:Key="waybillConverter"/>
<ctr:MultiParameterTransferConverter x:Key="mptConverter"/>
<ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/>
<Style TargetType="RadioButton">
<Setter Property="IsChecked" Value="False" />
<Setter Property="Background" Value="#8080FF" />
<Setter Property="Foreground" Value="Black" />
<!--<Setter Property="Content" Value="{Binding ElementName=txt,Path=Text}"/>-->
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RadioButton">
<Grid Background="#F2F2F2" >
<Rectangle x:Name="_Rect" Fill="#F2F2F2" HorizontalAlignment="Center" Height="35" VerticalAlignment="Center" Width="{TemplateBinding Width}" RenderTransformOrigin="0.5,0.5">
<Rectangle.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleY="-1"/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Rectangle.RenderTransform>
</Rectangle>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Height="35">
<TextBlock VerticalAlignment="Center" Text="{TemplateBinding Content}" />
<TextBlock VerticalAlignment="Center" Text="{TemplateBinding Tag}" Foreground="{StaticResource Text.Pink}" Margin="5 0 0 0" />
</StackPanel>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="true">
<Setter TargetName="_Rect" Property="Fill" Value="#8080FF" />
<Setter Property="Foreground" Value="white"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
<Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition />
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" Grid.Row="0">
<RadioButton Content="全部" Height="35" Width="130" IsChecked="{Binding PackagingTaskExceptionState,Converter={StaticResource taskStateToBoolean},ConverterParameter=#null:True:False}"
Command="{Binding SetPackagingTaskExceptionStateCommand}"
/>
<RadioButton Content="待包装" Height="35" Width="130" Tag="{Binding PackagingTaskCount,Mode=TwoWay}" IsChecked="{Binding PackagingTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=待包装:True:False}"
Command="{Binding SetPackagingTaskExceptionStateCommand}"
/>
<RadioButton Content="挂起任务" Height="35" Width="130" Tag="{Binding PackagingTaskExceptionCount,Mode=TwoWay}" IsChecked="{Binding PackagingTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=挂起任务:True:False}"
Command="{Binding SetPackagingTaskExceptionStateCommand}"
/>
</StackPanel>
<Grid Grid.Row="1">
<local:ShopWaitPackingTaskControl/>
</Grid>
</Grid>
</Grid>
</UserControl>

26
BBWY.Client/Views/PackagingTask/ShopPackagingTaskList.xaml.cs

@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace BBWY.Client.Views.PackagingTask
{
/// <summary>
/// ShopPackagingTaskList.xaml 的交互逻辑
/// </summary>
public partial class ShopPackagingTaskList : UserControl
{
public ShopPackagingTaskList()
{
InitializeComponent();
}
}
}

502
BBWY.Client/Views/PackagingTask/ShopWaitPackingTaskControl.xaml

@ -0,0 +1,502 @@
<UserControl x:Class="BBWY.Client.Views.PackagingTask.ShopWaitPackingTaskControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:hc="https://handyorg.github.io/handycontrol"
xmlns:ctr="clr-namespace:BBWY.Client.Converters"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:cmodel="clr-namespace:BBWY.Client.Models"
xmlns:viewmodel="clr-namespace:BBWY.Client.ViewModels.PackTask" Background="White"
xmlns:local="clr-namespace:BBWY.Client.Views.PackTask"
DataContext="{Binding TaskList,Source={StaticResource Locator}}"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="1500">
<UserControl.Resources>
<ObjectDataProvider x:Key="storageTypeProvider" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="cmodel:StorageType"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<ctr:OrderStorageTypeOptionConverter x:Key="ostConverter"/>
<ctr:ProfitRatioConverter x:Key="profitRatioConverter"/>
<ctr:WaybillNoConverter x:Key="waybillConverter"/>
<ctr:MultiParameterTransferConverter x:Key="mptConverter"/>
<ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/>
</UserControl.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="45"/>
<RowDefinition />
</Grid.RowDefinitions>
<Border Height="1" Grid.Row="0" Margin="0 0 0 0" Background="{StaticResource Border.Brush}" VerticalAlignment="Top"/>
<Grid Grid.Row="0" Margin="0 0 0 0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition MinWidth="280"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="140"/>
</Grid.ColumnDefinitions>
<TextBlock Text="商品信息" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="数量" Grid.Column="1" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="任务时限" Grid.Column="2" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="包装组合类型" Grid.Column="3" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="包装配件" Grid.Column="4" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="包装需求" Grid.Column="5" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="合格证、条形码" Grid.Column="6" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="包装员" Grid.Column="7" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="费用" Grid.Column="8" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="操作" Grid.Column="9" Style="{StaticResource middleTextBlock}"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="1"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="2"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="3"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="4"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="5"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="6"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="7"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="8"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="9"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="10"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="11"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="12"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="12"/>
</Grid>
<!--ItemsSource="{Binding OrderList}"-->
<ListBox x:Name="listbox_order"
Grid.Row="1"
ItemsSource="{Binding PackTaskList}"
ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}"
BorderBrush="{StaticResource Border.Brush}"
BorderThickness="1,1,1,0"
Foreground="{StaticResource Text.Color}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Width="{Binding ActualWidth,ElementName=listbox_order,Converter={StaticResource widthConverter},ConverterParameter=-0}"
MinHeight="100">
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition MinHeight="90"/>
</Grid.RowDefinitions>
<Grid Background="#F2F2F2" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition MinWidth="280"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="140"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal" Grid.Column="0" Grid.ColumnSpan="11">
<TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" />
<TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}"
Foreground="White" Background="{Binding TaskState,Converter={StaticResource enumToColorConverter} , ConverterParameter={x:Type cmodel:TaskState} }" Margin="25,0,0,0"
/>
<TextBlock VerticalAlignment="Center" Text="部门:" Margin="14,0,0,0" />
<c:BButton Content="{Binding DepartmentName}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding DepartmentName}"
Margin=" 5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="店铺:" Margin="14,0,0,0" />
<c:BButton Content="{Binding ShopName}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding ShopName}"
Margin=" 5,0,0,0"/>
<StackPanel Orientation="Horizontal" Visibility="{Binding OrderId, Converter={StaticResource objConverter},ConverterParameter=#null:Visible:Collapsed}">
<TextBlock VerticalAlignment="Center" Text="对接人:" Margin="16,0,0,0" />
<TextBlock VerticalAlignment="Center" Text="{Binding AcceptName}" Margin="5,0,0,0" />
</StackPanel>
</StackPanel>
<StackPanel Grid.Column="12" Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=未到货|部分到货|待验收:Visible:Collapsed}"
>
<!-- -->
<c:BButton Command="{Binding UpdateTaskCommand}" Style="{StaticResource LinkButton}" Content="修改" />
<!--<c:BButton Command="{Binding DataContext.DeletedTaskCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}" CommandParameter="{Binding}"
Margin="5,0,0,0" Style="{StaticResource LinkButton}" Content="取消"/>-->
</StackPanel>
</Grid>
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition MinWidth="280"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="140"/>
</Grid.ColumnDefinitions>
<Grid Width="{Binding ActualWidth,ElementName=listbox_orerSku}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="90"/>
<ColumnDefinition />
<!--<ColumnDefinition />-->
</Grid.ColumnDefinitions>
<!--{Binding Logo}-->
<c:BAsyncImage UrlSource="{Binding ItemList[0].Logo}"
Width="80" DecodePixelWidth="80"
VerticalAlignment="Top" Margin="11,9,0,10"
Cursor="Hand">
<b:Interaction.Triggers>
<b:EventTrigger EventName="PreviewMouseLeftButtonDown">
<b:InvokeCommandAction Command="{Binding DataContext.OpenSkuDetailCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}">
<b:InvokeCommandAction.CommandParameter>
<MultiBinding Converter="{StaticResource mptConverter}">
<Binding Path="SkuId"/>
</MultiBinding>
</b:InvokeCommandAction.CommandParameter>
</b:InvokeCommandAction>
</b:EventTrigger>
</b:Interaction.Triggers>
</c:BAsyncImage>
<StackPanel Grid.Column="1" Orientation="Vertical" Margin="8,12,0,10">
<StackPanel Orientation="Horizontal">
<TextBlock Text="SKU:"/>
<c:BButton Content="{Binding SkuId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding SkuId}"
Margin=" 5,0,0,11"/>
</StackPanel>
<TextBlock Foreground="{StaticResource Text.Gray}" TextTrimming="CharacterEllipsis">
<TextBlock.ToolTip>
<ToolTip Style="{StaticResource OrderCouponToolipStyle}">
<TextBlock Text="{Binding SkuName}"/>
</ToolTip>
</TextBlock.ToolTip>
<Run Text="SKU名称:"/>
<Run Text="{Binding SkuName}"/>
</TextBlock>
<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,11">
<Run Text="品名:"/>
<Run Text="{Binding BrandName}"/>
</TextBlock>
</StackPanel>
<!--<StackPanel Grid.Column="2" Orientation="Horizontal" Margin="0,12,0,5">
<TextBlock Foreground="{StaticResource Text.Gray}">
<Run Text="货号:" />
</TextBlock>
<c:BButton Content="{Binding GoodsNo}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding GoodsNo}"
Margin=" 5,0,0,0"/>
</StackPanel>-->
</Grid>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="0"/>
<Grid Grid.Column="1" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<TextBlock x:Name="txt_storeName"
Text="{Binding SkuCount}"
TextWrapping="Wrap"
HorizontalAlignment="Center"
/>
</StackPanel>
</Grid>
<Grid Grid.Column="2" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"
>
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"
Visibility="{Binding PackRemainTime,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible}"
>
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center"
Visibility="{Binding IsPackOverTime,Converter={StaticResource objConverter},ConverterParameter=false:Visible:Collapsed}"
>
<TextBlock Text="剩余: " />
<TextBlock Text="{Binding PackRemainTime}"/>
</StackPanel>
<StackPanel Orientation="Vertical" Margin="10,5" VerticalAlignment="Center" HorizontalAlignment="Center"
Visibility="{Binding IsPackOverTime,Converter={StaticResource objConverter},ConverterParameter=true:Visible:Collapsed}">
<StackPanel Orientation="Horizontal"
>
<TextBlock Foreground="Red" Text="超时: "/>
<TextBlock Foreground="Red" Text="{Binding PackRemainTime}"/>
</StackPanel>
</StackPanel>
<c:BButton Margin="0 10 0 0" Content="{Binding QualityOverTimeMarkMsg ,Converter={StaticResource objConverter},ConverterParameter=#null:提交备注:修改备注}" Style="{StaticResource LinkButton}"
>
<b:Interaction.Triggers>
<b:EventTrigger EventName="PreviewMouseLeftButtonDown">
<b:InvokeCommandAction Command="{Binding DataContext.SubmitOverTimeMarkMsgCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}">
<b:InvokeCommandAction.CommandParameter>
<MultiBinding Converter="{StaticResource mptConverter}">
<Binding Path="TaskId"/>
<Binding Path="QualityOverTimeMarkMsg"/>
</MultiBinding>
</b:InvokeCommandAction.CommandParameter>
</b:InvokeCommandAction>
</b:EventTrigger>
</b:Interaction.Triggers>
</c:BButton>
</StackPanel>
</StackPanel>
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"
Visibility="{Binding SendToSetSkuConfigureTime,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible}">
<TextBlock Style="{StaticResource middleTextBlock}" Text="待合格证信息补全"/>
</StackPanel>
</Grid>
<Grid Grid.Column="3" >
<StackPanel VerticalAlignment="Center" >
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="组合类型:"/>
<TextBlock Text="{Binding PackType}"/>
</StackPanel>
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="配件数量:"/>
<TextBlock Text="{Binding GoodsNumber}"/>
</StackPanel>
</StackPanel>
</Grid>
<Grid Grid.Column="4" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<TextBlock
Text="{Binding SkuTitle}"
TextWrapping="Wrap"
HorizontalAlignment="Center"
/>
</StackPanel>
</Grid>
<Grid Grid.Column="5" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Left">
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="基础包装:"/>
<TextBlock Text="{Binding BasicPack}"/>
</StackPanel>
<Grid Margin="10,5" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock TextWrapping="Wrap">
<Run Text="增量耗材:"/>
<Run Text="{Binding Increment1}"/>
</TextBlock>
</Grid>
</StackPanel>
</Grid>
<Grid Grid.Column="6" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="条形码:"/>
<StackPanel Orientation="Horizontal" Visibility="{Binding BarCodeModel,Converter={StaticResource objConverter}, ConverterParameter=#null:Collapsed:Visible}">
<c:BButton x:Name="btn_lookBarCode" Content="查看" Style="{StaticResource LinkButton}" Margin="5,0,0,0"
Command="{Binding LookBarCommand}" />
<c:BButton x:Name="btn_daCer" Content="打印" Style="{StaticResource LinkButton}" Margin="5,0,0,0"
Command="{Binding PrintBarcodeCommand}"/>
</StackPanel>
<TextBlock Text="未配置" Style="{StaticResource middleTextBlock}" Margin="5,0,0,0"
Visibility="{Binding BarCodeModel,Converter={StaticResource objConverter}, ConverterParameter=#null:Visible:Collapsed}"
/>
</StackPanel>
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="合格证:"/>
<StackPanel Orientation="Horizontal"
Visibility="{Binding CertificateModel,Converter={StaticResource objConverter}, ConverterParameter=#null:Collapsed:Visible}"
>
<StackPanel Orientation="Horizontal"
Visibility="{Binding CertificatePosition,Converter={StaticResource objConverter}, ConverterParameter=无需合格证:Collapsed:Visible}"
>
<c:BButton x:Name="btn_lookCer" Content="查看" Style="{StaticResource LinkButton}" Margin="5,0,0,0"
Command="{Binding LookCerCommand}"/>
<c:BButton x:Name="btn_dayinCer" Content="打印" Style="{StaticResource LinkButton}" Margin="5,0,0,0"
Command="{Binding PrintCerCommand}"/>
</StackPanel>
<TextBlock Text="无需合格证" Style="{StaticResource middleTextBlock}" Margin="5,0,0,0"
Visibility="{Binding CertificatePosition,Converter={StaticResource objConverter}, ConverterParameter=无需合格证:Visible:Collapsed}"
/>
</StackPanel>
<TextBlock Text="未配置" Style="{StaticResource middleTextBlock}" Margin="5,0,0,0"
Visibility="{Binding CertificateModel,Converter={StaticResource objConverter}, ConverterParameter=#null:Visible:Collapsed}"
/>
</StackPanel>
</StackPanel>
</StackPanel>
</Grid>
<Grid Grid.Column="7">
<TextBlock Text="{Binding PackUser}" Style="{StaticResource middleTextBlock}"/>
</Grid>
<StackPanel Orientation="Vertical" Grid.Column="8" VerticalAlignment="Center">
<TextBlock Style="{StaticResource middleTextBlock}">
<Run Text="人工:"/>
<Run Text="{Binding PackageFees,StringFormat=0.00}"/>
</TextBlock>
<TextBlock Style="{StaticResource middleTextBlock}" Margin="0 8 0 8">
<Run Text="耗材:"/>
<Run Text="{Binding ConsumableFees,StringFormat=0.00}"/>
</TextBlock>
<TextBlock Style="{StaticResource middleTextBlock}">
<Run Text="总计:"/>
<Run Text="{Binding PackTotalFees,StringFormat=0.00}"/>
</TextBlock>
</StackPanel>
<Grid Grid.Column="9" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<c:BButton Grid.Column="11" HorizontalAlignment="Stretch" Style="{StaticResource LinkButton}" Margin="0 5 0 5 " VerticalAlignment="Center" Content="{Binding ShowSendMsg,Converter={StaticResource objConverter},ConverterParameter=False:任务备注:取消备注}"
CommandParameter="{Binding TaskId}"
Command="{Binding DataContext.PackTaskMarkMessageCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}"
/>
</StackPanel>
</Grid>
<Grid Grid.Row="1" Grid.ColumnSpan="4" Visibility="{Binding MarkMessageModelList,Converter={StaticResource objConverter}, ConverterParameter=#null:Collapsed:Visible}" Margin="10 0 0 0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<c:BButton Margin="0" Panel.ZIndex="100" HorizontalAlignment="Stretch" VerticalAlignment="Top" Grid.ColumnSpan="2" Background="Transparent"
Command="{Binding DataContext.ShowMoreMessageCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" CommandParameter="{Binding TaskId}"/>
<c:BButton Margin="0" Content="{Binding ShowMoreMsg,Converter={StaticResource objConverter},ConverterParameter=false:∨:∧}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" Height="30"
/>
<ListBox Grid.Column="1" x:Name="listbox_message" Grid.Row="2" Margin=" 0" SelectionMode="Single" IsEnabled="False"
ItemsSource="{Binding MarkMessageModelList}" Height="{Binding ShowMoreMsg,Converter={StaticResource objConverter},ConverterParameter=false:30:*}"
ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}" ScrollViewer.VerticalScrollBarVisibility="Hidden"
BorderBrush="{StaticResource Border.Brush}"
BorderThickness="0,0,0,0"
Foreground="{StaticResource Text.Color}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Width="{Binding ActualWidth,ElementName=listbox_message,Converter={StaticResource widthConverter},ConverterParameter=-0}" MinHeight="30">
<DockPanel VerticalAlignment="Center">
<TextBlock HorizontalAlignment="Left" Text="{Binding CreateTime,StringFormat=yyyy-MM-dd HH:mm:ss}"/>
<TextBlock HorizontalAlignment="Left" Text=" "/>
<TextBlock HorizontalAlignment="Left" Text="{Binding UserName}"/>
<TextBlock HorizontalAlignment="Left" Text=" : "/>
<TextBlock HorizontalAlignment="Left" Text="{Binding MarkMessage}" Foreground="Red" TextWrapping="Wrap"/>
</DockPanel>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
<Border Width="1" Grid.Row="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="3"/>
<TextBlock Grid.Row="1" Grid.Column="4" Grid.ColumnSpan="6"
Visibility="{Binding QualityOverTimeMarkMsg,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible}"
HorizontalAlignment="Stretch" VerticalAlignment="Top" Margin="5 5 0 5" ScrollViewer.VerticalScrollBarVisibility="Visible" TextWrapping="Wrap" >
<TextBlock.ToolTip>
<ToolTip Style="{StaticResource OrderCouponToolipStyle}">
<TextBlock Text="{Binding QualityOverTimeMarkMsg}"/>
</ToolTip>
</TextBlock.ToolTip>
<Run Text="超时原因:"/>
<Run Text="{Binding QualityOverTimeMarkMsg}" Foreground="Red" />
</TextBlock>
<Grid Grid.Row="3" Grid.ColumnSpan="100" MinHeight="40" Visibility="{Binding ShowSendMsg,Converter={StaticResource objConverter},ConverterParameter=false:Collapsed:Visible}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="90"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="120"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition MinWidth="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="150"/>
<ColumnDefinition Width="120"/>
</Grid.ColumnDefinitions>
<Border Height="1" VerticalAlignment="Top" Background="{StaticResource Border.Brush}" Grid.ColumnSpan="100"/>
<c:BTextBox Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="9" Height="30" Margin="5 0 0 0" Text="{Binding TaskMarkMsg}" AcceptsReturn="True"/>
<c:BButton Grid.Column="10" Content="提交备注" Width="80" Command="{Binding DataContext.AppendMarkMessageCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}"/>
</Grid>
<Border Grid.Row="1" VerticalAlignment="Top" Height="1" Background="{StaticResource Border.Brush}" Grid.ColumnSpan="100"/>
<!--<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/>-->
<!--<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="1"/>-->
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="2" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="3" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="4" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="5" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="6" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="7" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="8" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="9" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="10" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="11" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="12" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="12"/>
</Grid>
<Border Grid.Row="1" VerticalAlignment="Bottom" Height="1" Background="{StaticResource Border.Brush}"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</UserControl>

26
BBWY.Client/Views/PackagingTask/ShopWaitPackingTaskControl.xaml.cs

@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace BBWY.Client.Views.PackagingTask
{
/// <summary>
/// ShopWaitPackingTaskControl.xaml 的交互逻辑
/// </summary>
public partial class ShopWaitPackingTaskControl : UserControl
{
public ShopWaitPackingTaskControl()
{
InitializeComponent();
}
}
}

566
BBWY.Client/Views/PackagingTask/WaitPackingTaskControl.xaml

@ -0,0 +1,566 @@
<UserControl x:Class="BBWY.Client.Views.PackagingTask.WaitPackingTaskControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:hc="https://handyorg.github.io/handycontrol"
xmlns:ctr="clr-namespace:BBWY.Client.Converters"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:cmodel="clr-namespace:BBWY.Client.Models"
xmlns:viewmodel="clr-namespace:BBWY.Client.ViewModels.PackTask" Background="White"
xmlns:local="clr-namespace:BBWY.Client.Views.PackTask"
DataContext="{Binding WareHouseList,Source={StaticResource Locator}}"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="1500">
<UserControl.Resources>
<ObjectDataProvider x:Key="storageTypeProvider" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="cmodel:StorageType"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<ctr:OrderStorageTypeOptionConverter x:Key="ostConverter"/>
<ctr:ProfitRatioConverter x:Key="profitRatioConverter"/>
<ctr:WaybillNoConverter x:Key="waybillConverter"/>
<ctr:MultiParameterTransferConverter x:Key="mptConverter"/>
<ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/>
</UserControl.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="45"/>
<RowDefinition />
</Grid.RowDefinitions>
<Border Height="1" Grid.Row="0" Margin="0 0 0 0" Background="{StaticResource Border.Brush}" VerticalAlignment="Top"/>
<Grid Grid.Row="0" Margin="0 0 0 0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition MinWidth="280"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="140"/>
</Grid.ColumnDefinitions>
<TextBlock Text="商品信息" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="数量" Grid.Column="1" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="任务时限" Grid.Column="2" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="包装组合类型" Grid.Column="3" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="包装配件" Grid.Column="4" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="包装需求" Grid.Column="5" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="合格证、条形码" Grid.Column="6" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="包装员" Grid.Column="7" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="费用" Grid.Column="8" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="操作" Grid.Column="9" Style="{StaticResource middleTextBlock}"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="1"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="2"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="3"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="4"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="5"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="6"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="7"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="8"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="9"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="10"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="11"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="12"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="12"/>
</Grid>
<!--ItemsSource="{Binding OrderList}"-->
<ListBox x:Name="listbox_order"
Grid.Row="1"
ItemsSource="{Binding PackTaskList}"
ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}"
BorderBrush="{StaticResource Border.Brush}"
BorderThickness="1,1,1,0"
Foreground="{StaticResource Text.Color}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Width="{Binding ActualWidth,ElementName=listbox_order,Converter={StaticResource widthConverter},ConverterParameter=-0}"
MinHeight="100">
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition MinHeight="90"/>
</Grid.RowDefinitions>
<Grid Background="#F2F2F2" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition MinWidth="280"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="140"/>
</Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal" Grid.Column="0" Grid.ColumnSpan="11">
<TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" />
<TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}"
Foreground="White" Background="{Binding TaskState,Converter={StaticResource enumToColorConverter} , ConverterParameter={x:Type cmodel:TaskState} }" Margin="25,0,0,0"
/>
<TextBlock VerticalAlignment="Center" Text="部门:" Margin="14,0,0,0" />
<c:BButton Content="{Binding DepartmentName}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding DepartmentName}"
Margin=" 5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="店铺:" Margin="14,0,0,0" />
<c:BButton Content="{Binding ShopName}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding ShopName}"
Margin=" 5,0,0,0"/>
<StackPanel Orientation="Horizontal" Visibility="{Binding OrderId, Converter={StaticResource objConverter},ConverterParameter=#null:Visible:Collapsed}">
<TextBlock VerticalAlignment="Center" Text="对接人:" Margin="16,0,0,0" />
<TextBlock VerticalAlignment="Center" Text="{Binding AcceptName}" Margin="5,0,0,0" />
</StackPanel>
</StackPanel>
<StackPanel Grid.Column="12" Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=未到货|部分到货|待验收:Visible:Collapsed}"
>
<!-- -->
<c:BButton Command="{Binding UpdateTaskCommand}" Style="{StaticResource LinkButton}" Content="修改" />
<!--<c:BButton Command="{Binding DataContext.DeletedTaskCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}" CommandParameter="{Binding}"
Margin="5,0,0,0" Style="{StaticResource LinkButton}" Content="取消"/>-->
</StackPanel>
</Grid>
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="80"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition MinWidth="280"/>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="140"/>
</Grid.ColumnDefinitions>
<Grid Width="{Binding ActualWidth,ElementName=listbox_orerSku}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="90"/>
<ColumnDefinition />
<!--<ColumnDefinition />-->
</Grid.ColumnDefinitions>
<!--{Binding Logo}-->
<c:BAsyncImage UrlSource="{Binding ItemList[0].Logo}"
Width="80" DecodePixelWidth="80"
VerticalAlignment="Top" Margin="11,9,0,10"
Cursor="Hand">
<b:Interaction.Triggers>
<b:EventTrigger EventName="PreviewMouseLeftButtonDown">
<b:InvokeCommandAction Command="{Binding DataContext.OpenSkuDetailCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}">
<b:InvokeCommandAction.CommandParameter>
<MultiBinding Converter="{StaticResource mptConverter}">
<Binding Path="SkuId"/>
</MultiBinding>
</b:InvokeCommandAction.CommandParameter>
</b:InvokeCommandAction>
</b:EventTrigger>
</b:Interaction.Triggers>
</c:BAsyncImage>
<StackPanel Grid.Column="1" Orientation="Vertical" Margin="8,12,0,10">
<StackPanel Orientation="Horizontal">
<TextBlock Text="SKU:"/>
<c:BButton Content="{Binding SkuId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding SkuId}"
Margin=" 5,0,0,11"/>
</StackPanel>
<TextBlock Foreground="{StaticResource Text.Gray}" TextTrimming="CharacterEllipsis">
<TextBlock.ToolTip>
<ToolTip Style="{StaticResource OrderCouponToolipStyle}">
<TextBlock Text="{Binding SkuName}"/>
</ToolTip>
</TextBlock.ToolTip>
<Run Text="SKU名称:"/>
<Run Text="{Binding SkuName}"/>
</TextBlock>
<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,11">
<Run Text="品名:"/>
<Run Text="{Binding BrandName}"/>
</TextBlock>
</StackPanel>
<!--<StackPanel Grid.Column="2" Orientation="Horizontal" Margin="0,12,0,5">
<TextBlock Foreground="{StaticResource Text.Gray}">
<Run Text="货号:" />
</TextBlock>
<c:BButton Content="{Binding GoodsNo}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding GoodsNo}"
Margin=" 5,0,0,0"/>
</StackPanel>-->
</Grid>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="0"/>
<Grid Grid.Column="1" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<TextBlock x:Name="txt_storeName"
Text="{Binding SkuCount}"
TextWrapping="Wrap"
HorizontalAlignment="Center"
/>
</StackPanel>
</Grid>
<Grid Grid.Column="2" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"
>
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"
Visibility="{Binding PackRemainTime,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible}"
>
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Center"
Visibility="{Binding IsPackOverTime,Converter={StaticResource objConverter},ConverterParameter=false:Visible:Collapsed}"
>
<TextBlock Text="剩余: " />
<TextBlock Text="{Binding PackRemainTime}"/>
</StackPanel>
<StackPanel Orientation="Vertical" Margin="10,5" VerticalAlignment="Center" HorizontalAlignment="Center"
Visibility="{Binding IsPackOverTime,Converter={StaticResource objConverter},ConverterParameter=true:Visible:Collapsed}">
<StackPanel Orientation="Horizontal"
>
<TextBlock Foreground="Red" Text="超时: "/>
<TextBlock Foreground="Red" Text="{Binding PackRemainTime}"/>
</StackPanel>
</StackPanel>
<c:BButton Margin="0 10 0 0" Content="{Binding QualityOverTimeMarkMsg ,Converter={StaticResource objConverter},ConverterParameter=#null:提交备注:修改备注}" Style="{StaticResource LinkButton}"
>
<b:Interaction.Triggers>
<b:EventTrigger EventName="PreviewMouseLeftButtonDown">
<b:InvokeCommandAction Command="{Binding DataContext.SubmitOverTimeMarkMsgCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}">
<b:InvokeCommandAction.CommandParameter>
<MultiBinding Converter="{StaticResource mptConverter}">
<Binding Path="TaskId"/>
<Binding Path="QualityOverTimeMarkMsg"/>
</MultiBinding>
</b:InvokeCommandAction.CommandParameter>
</b:InvokeCommandAction>
</b:EventTrigger>
</b:Interaction.Triggers>
</c:BButton>
</StackPanel>
</StackPanel>
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"
Visibility="{Binding SendToSetSkuConfigureTime,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible}">
<TextBlock Style="{StaticResource middleTextBlock}" Text="待合格证信息补全"/>
</StackPanel>
</Grid>
<Grid Grid.Column="3" >
<StackPanel VerticalAlignment="Center" >
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="组合类型:"/>
<TextBlock Text="{Binding PackType}"/>
</StackPanel>
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="配件数量:"/>
<TextBlock Text="{Binding GoodsNumber}"/>
</StackPanel>
</StackPanel>
</Grid>
<Grid Grid.Column="4" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<TextBlock
Text="{Binding SkuTitle}"
TextWrapping="Wrap"
HorizontalAlignment="Center"
/>
</StackPanel>
</Grid>
<Grid Grid.Column="5" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Left">
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="基础包装:"/>
<TextBlock Text="{Binding BasicPack}"/>
</StackPanel>
<Grid Margin="10,5" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock TextWrapping="Wrap">
<Run Text="增量耗材:"/>
<Run Text="{Binding Increment1}"/>
</TextBlock>
</Grid>
</StackPanel>
</Grid>
<Grid Grid.Column="6" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="条形码:"/>
<StackPanel Orientation="Horizontal" Visibility="{Binding BarCodeModel,Converter={StaticResource objConverter}, ConverterParameter=#null:Collapsed:Visible}">
<c:BButton x:Name="btn_lookBarCode" Content="查看" Style="{StaticResource LinkButton}" Margin="5,0,0,0"
Command="{Binding LookBarCommand}" />
<c:BButton x:Name="btn_daCer" Content="打印" Style="{StaticResource LinkButton}" Margin="5,0,0,0"
Command="{Binding PrintBarcodeCommand}"/>
</StackPanel>
<TextBlock Text="未配置" Style="{StaticResource middleTextBlock}" Margin="5,0,0,0"
Visibility="{Binding BarCodeModel,Converter={StaticResource objConverter}, ConverterParameter=#null:Visible:Collapsed}"
/>
</StackPanel>
<StackPanel Margin="10,5" Orientation="Horizontal" VerticalAlignment="Center" HorizontalAlignment="Left" >
<TextBlock Text="合格证:"/>
<StackPanel Orientation="Horizontal"
Visibility="{Binding CertificateModel,Converter={StaticResource objConverter}, ConverterParameter=#null:Collapsed:Visible}"
>
<StackPanel Orientation="Horizontal"
Visibility="{Binding CertificatePosition,Converter={StaticResource objConverter}, ConverterParameter=无需合格证:Collapsed:Visible}"
>
<c:BButton x:Name="btn_lookCer" Content="查看" Style="{StaticResource LinkButton}" Margin="5,0,0,0"
Command="{Binding LookCerCommand}"/>
<c:BButton x:Name="btn_dayinCer" Content="打印" Style="{StaticResource LinkButton}" Margin="5,0,0,0"
Command="{Binding PrintCerCommand}"/>
</StackPanel>
<TextBlock Text="无需合格证" Style="{StaticResource middleTextBlock}" Margin="5,0,0,0"
Visibility="{Binding CertificatePosition,Converter={StaticResource objConverter}, ConverterParameter=无需合格证:Visible:Collapsed}"
/>
</StackPanel>
<TextBlock Text="未配置" Style="{StaticResource middleTextBlock}" Margin="5,0,0,0"
Visibility="{Binding CertificateModel,Converter={StaticResource objConverter}, ConverterParameter=#null:Visible:Collapsed}"
/>
</StackPanel>
</StackPanel>
</StackPanel>
</Grid>
<Grid Grid.Column="7">
<TextBlock Text="{Binding PackUser}" Style="{StaticResource middleTextBlock}"/>
</Grid>
<StackPanel Orientation="Vertical" Grid.Column="8" VerticalAlignment="Center">
<TextBlock Style="{StaticResource middleTextBlock}">
<Run Text="人工:"/>
<Run Text="{Binding PackageFees,StringFormat=0.00}"/>
</TextBlock>
<TextBlock Style="{StaticResource middleTextBlock}" Margin="0 8 0 8">
<Run Text="耗材:"/>
<Run Text="{Binding ConsumableFees,StringFormat=0.00}"/>
</TextBlock>
<TextBlock Style="{StaticResource middleTextBlock}">
<Run Text="总计:"/>
<Run Text="{Binding PackTotalFees,StringFormat=0.00}"/>
</TextBlock>
</StackPanel>
<Grid Grid.Column="9" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<c:BButton HorizontalAlignment="Center" Height="20" Style="{StaticResource LinkButton}" VerticalAlignment="Center" Grid.Row="1"
Content="修改设置 "
Command="{Binding SetServiceCommand}"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=已取消|未到货|部分到货|待验收:Collapsed:Visible}"
/>
<StackPanel
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}"
>
<c:BButton Grid.Column="11" HorizontalAlignment="Stretch" Style="{StaticResource LinkButton}" Margin="0 5 0 5 " VerticalAlignment="Center" Content="完成"
CommandParameter="{Binding}"
Command="{Binding DataContext.CompletedPackTaskCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}"
Visibility="{Binding PackTotalFees,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible }"
/>
</StackPanel>
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="商品验收"
Command="{Binding DataContext.QualityTaskCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}"
/>
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="任务挂起"
Command="{Binding DataContext.PackagingTaskExceptionCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" CommandParameter="{Binding TaskId}"
Visibility="{Binding PackagingTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}"
/>
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" VerticalAlignment="Center" Grid.Row="1" Content="任务拆分"
Command="{Binding DataContext.TaskSplitCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" CommandParameter="{Binding }"
Visibility="{Binding DataContext.PackagingTaskExceptionState,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}},Converter={StaticResource objConverter},ConverterParameter=挂起任务:Visible:Collapsed}"
/>
<!--Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" -->
<!--<StackPanel >
<StackPanel.Visibility>
<MultiBinding Converter="{StaticResource mobjConverter}"
ConverterParameter="9;待验收:&amp;:Visible:Collapsed:1">
<Binding Path="ShopId"/>
<Binding Path="TaskState"/>
</MultiBinding>
</StackPanel.Visibility>
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="信息不全"
CommandParameter="{Binding }"
Command="{Binding DataContext.SendToSetSkuConfigureCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}">
<c:BButton.Visibility>
<MultiBinding Converter="{StaticResource mobjConverter}"
ConverterParameter=";:amp;:Visible:Collapsed:1">
<Binding Path="BarCodeModel"/>
<Binding Path="CertificateModel"/>
</MultiBinding>
</c:BButton.Visibility>
</c:BButton>
</StackPanel>-->
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="商家自取"
CommandParameter="{Binding TaskId}"
Command="{Binding DataContext.StoreGetBySelfCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收|待排单|待包装:Visible:Collapsed}"
/>
<c:BButton Grid.Column="11" HorizontalAlignment="Stretch" Style="{StaticResource LinkButton}" Margin="0 5 0 5 " VerticalAlignment="Center" Content="{Binding ShowSendMsg,Converter={StaticResource objConverter},ConverterParameter=False:任务备注:取消备注}"
CommandParameter="{Binding TaskId}"
Command="{Binding DataContext.PackTaskMarkMessageCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}"
/>
</StackPanel>
</Grid>
<Grid Grid.Row="1" Grid.ColumnSpan="4" Visibility="{Binding MarkMessageModelList,Converter={StaticResource objConverter}, ConverterParameter=#null:Collapsed:Visible}" Margin="10 0 0 0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<c:BButton Margin="0" Panel.ZIndex="100" HorizontalAlignment="Stretch" VerticalAlignment="Top" Grid.ColumnSpan="2" Background="Transparent"
Command="{Binding DataContext.ShowMoreMessageCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" CommandParameter="{Binding TaskId}"/>
<c:BButton Margin="0" Content="{Binding ShowMoreMsg,Converter={StaticResource objConverter},ConverterParameter=false:∨:∧}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" Height="30"
/>
<ListBox Grid.Column="1" x:Name="listbox_message" Grid.Row="2" Margin=" 0" SelectionMode="Single" IsEnabled="False"
ItemsSource="{Binding MarkMessageModelList}" Height="{Binding ShowMoreMsg,Converter={StaticResource objConverter},ConverterParameter=false:30:*}"
ItemContainerStyle="{StaticResource NoBgListBoxItemStyle}" ScrollViewer.VerticalScrollBarVisibility="Hidden"
BorderBrush="{StaticResource Border.Brush}"
BorderThickness="0,0,0,0"
Foreground="{StaticResource Text.Color}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Width="{Binding ActualWidth,ElementName=listbox_message,Converter={StaticResource widthConverter},ConverterParameter=-0}" MinHeight="30">
<DockPanel VerticalAlignment="Center">
<TextBlock HorizontalAlignment="Left" Text="{Binding CreateTime,StringFormat=yyyy-MM-dd HH:mm:ss}"/>
<TextBlock HorizontalAlignment="Left" Text=" "/>
<TextBlock HorizontalAlignment="Left" Text="{Binding UserName}"/>
<TextBlock HorizontalAlignment="Left" Text=" : "/>
<TextBlock HorizontalAlignment="Left" Text="{Binding MarkMessage}" Foreground="Red" TextWrapping="Wrap"/>
</DockPanel>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
<Border Width="1" Grid.Row="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="3"/>
<TextBlock Grid.Row="1" Grid.Column="4" Grid.ColumnSpan="6"
Visibility="{Binding QualityOverTimeMarkMsg,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible}"
HorizontalAlignment="Stretch" VerticalAlignment="Top" Margin="5 5 0 5" ScrollViewer.VerticalScrollBarVisibility="Visible" TextWrapping="Wrap" >
<TextBlock.ToolTip>
<ToolTip Style="{StaticResource OrderCouponToolipStyle}">
<TextBlock Text="{Binding QualityOverTimeMarkMsg}"/>
</ToolTip>
</TextBlock.ToolTip>
<Run Text="超时原因:"/>
<Run Text="{Binding QualityOverTimeMarkMsg}" Foreground="Red" />
</TextBlock>
<Grid Grid.Row="3" Grid.ColumnSpan="100" MinHeight="40" Visibility="{Binding ShowSendMsg,Converter={StaticResource objConverter},ConverterParameter=false:Collapsed:Visible}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="90"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="120"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition MinWidth="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="150"/>
<ColumnDefinition Width="120"/>
</Grid.ColumnDefinitions>
<Border Height="1" VerticalAlignment="Top" Background="{StaticResource Border.Brush}" Grid.ColumnSpan="100"/>
<c:BTextBox Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="9" Height="30" Margin="5 0 0 0" Text="{Binding TaskMarkMsg}" AcceptsReturn="True"/>
<c:BButton Grid.Column="10" Content="提交备注" Width="80" Command="{Binding DataContext.AppendMarkMessageCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}"/>
</Grid>
<Border Grid.Row="1" VerticalAlignment="Top" Height="1" Background="{StaticResource Border.Brush}" Grid.ColumnSpan="100"/>
<!--<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/>-->
<!--<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="1"/>-->
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="2" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="3" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="4" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="5" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="6" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="7" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="8" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="9" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="10" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="11" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="12" Margin="-1 0 0 0"/>
<Border Width="1" HorizontalAlignment="Right" Background="{StaticResource Border.Brush}" Grid.Column="12"/>
</Grid>
<Border Grid.Row="1" VerticalAlignment="Bottom" Height="1" Background="{StaticResource Border.Brush}"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</UserControl>

26
BBWY.Client/Views/PackagingTask/WaitPackingTaskControl.xaml.cs

@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace BBWY.Client.Views.PackagingTask
{
/// <summary>
/// WaitPackingTaskControl.xaml 的交互逻辑
/// </summary>
public partial class WaitPackingTaskControl : UserControl
{
public WaitPackingTaskControl()
{
InitializeComponent();
}
}
}

4
BBWY.Client/Views/PackerTask/PackerPackCompletedControl.xaml

@ -239,9 +239,9 @@
<StackPanel Orientation="Horizontal" Grid.Column="0" Grid.ColumnSpan="11"> <StackPanel Orientation="Horizontal" Grid.Column="0" Grid.ColumnSpan="11">
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/> Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding PackTaskState}" <Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding PackTaskState}"
Foreground="White" Background="{Binding PackTaskState,Converter={StaticResource enumToColorConverter} , ConverterParameter={x:Type cmodel:TaskState} }" Margin="25,0,0,0" Foreground="White" Background="{Binding PackTaskState,Converter={StaticResource enumToColorConverter} , ConverterParameter={x:Type cmodel:TaskState} }" Margin="25,0,0,0"

4
BBWY.Client/Views/PackerTask/PackerSalaryControl.xaml

@ -236,9 +236,9 @@ Foreground="{StaticResource Text.Color}"
<StackPanel Orientation="Horizontal" Grid.Column="4" Grid.Row="1" HorizontalAlignment="Center"> <StackPanel Orientation="Horizontal" Grid.Column="4" Grid.Row="1" HorizontalAlignment="Center">
<TextBlock VerticalAlignment="Center" Text="ID:" Margin="16,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/> Margin=" 5,0,7,0"/>
</StackPanel> </StackPanel>

2
BBWY.Client/Views/PackerTask/PackerTaskList.xaml

@ -95,7 +95,7 @@
<Grid Grid.Row="1" Margin="0,5,0,0"> <Grid Grid.Row="1" Margin="0,5,0,0">
<local:PackerWaitPackageControl Visibility="{Binding PackTaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}"/> <local:PackerWaitPackageList Visibility="{Binding PackTaskState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}"/>
<local:PackerPackCompletedControl Visibility="{Binding PackTaskState,Converter={StaticResource objConverter},ConverterParameter=已完成:Visible:Collapsed}"/> <local:PackerPackCompletedControl Visibility="{Binding PackTaskState,Converter={StaticResource objConverter},ConverterParameter=已完成:Visible:Collapsed}"/>
</Grid> </Grid>

14
BBWY.Client/Views/PackerTask/PackerWaitPackageControl.xaml

@ -240,9 +240,9 @@
<StackPanel Orientation="Horizontal" Grid.Column="0" Grid.ColumnSpan="11"> <StackPanel Orientation="Horizontal" Grid.Column="0" Grid.ColumnSpan="11">
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/> Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding PackTaskState}" <Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding PackTaskState}"
Foreground="White" Background="{Binding PackTaskState,Converter={StaticResource enumToColorConverter} , ConverterParameter={x:Type cmodel:TaskState} }" Margin="25,0,0,0" Foreground="White" Background="{Binding PackTaskState,Converter={StaticResource enumToColorConverter} , ConverterParameter={x:Type cmodel:TaskState} }" Margin="25,0,0,0"
@ -541,6 +541,16 @@ TextWrapping="Wrap"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskId}"
Command="{Binding DataContext.PackTaskMarkMessageCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.PackTaskMarkMessageCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}"
/> />
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="任务挂起"
Command="{Binding DataContext.PackagingTaskExceptionCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" CommandParameter="{Binding TaskId}"
Visibility="{Binding PackagingTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=待包装:Visible:Collapsed}"
/>
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" VerticalAlignment="Center" Grid.Row="1" Content="任务拆分"
Command="{Binding DataContext.TaskSplitCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" CommandParameter="{Binding }"
Visibility="{Binding DataContext.PackagingTaskExceptionState,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}},Converter={StaticResource objConverter},ConverterParameter=挂起任务:Visible:Collapsed}"
/>
</StackPanel> </StackPanel>
</StackPanel> </StackPanel>

89
BBWY.Client/Views/PackerTask/PackerWaitPackageList.xaml

@ -0,0 +1,89 @@
<UserControl x:Class="BBWY.Client.Views.PackerTask.PackerWaitPackageList"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:ctr="clr-namespace:BBWY.Client.Converters" Background="White"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:cmodel="clr-namespace:BBWY.Client.Models"
xmlns:local="clr-namespace:BBWY.Client.Views.PackerTask"
DataContext="{Binding PackerTaskVM,Source={StaticResource Locator}}"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="1500">
<UserControl.Resources>
<ObjectDataProvider x:Key="storageTypeProvider" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="cmodel:StorageType"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<ctr:OrderStorageTypeOptionConverter x:Key="ostConverter"/>
<ctr:ProfitRatioConverter x:Key="profitRatioConverter"/>
<ctr:WaybillNoConverter x:Key="waybillConverter"/>
<ctr:MultiParameterTransferConverter x:Key="mptConverter"/>
<ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/>
<Style TargetType="RadioButton">
<Setter Property="IsChecked" Value="False" />
<Setter Property="Background" Value="#8080FF" />
<Setter Property="Foreground" Value="Black" />
<!--<Setter Property="Content" Value="{Binding ElementName=txt,Path=Text}"/>-->
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RadioButton">
<Grid Background="#F2F2F2" >
<Rectangle x:Name="_Rect" Fill="#F2F2F2" HorizontalAlignment="Center" Height="35" VerticalAlignment="Center" Width="{TemplateBinding Width}" RenderTransformOrigin="0.5,0.5">
<Rectangle.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleY="-1"/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Rectangle.RenderTransform>
</Rectangle>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Height="35">
<TextBlock VerticalAlignment="Center" Text="{TemplateBinding Content}" />
<TextBlock VerticalAlignment="Center" Text="{TemplateBinding Tag}" Foreground="{StaticResource Text.Pink}" Margin="5 0 0 0" />
</StackPanel>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="true">
<Setter TargetName="_Rect" Property="Fill" Value="#8080FF" />
<Setter Property="Foreground" Value="white"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
<Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition />
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" Grid.Row="0">
<!--<RadioButton Content="全部" Height="35" Width="130" IsChecked="{Binding PackagingTaskExceptionState,Converter={StaticResource taskStateToBoolean},ConverterParameter=#null:True:False}"
Command="{Binding SetPackagingTaskExceptionStateCommand}"
/>-->
<RadioButton Content="待包装" Height="35" Width="130" Tag="{Binding PackagingTaskCount,Mode=TwoWay}" IsChecked="{Binding PackagingTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=待包装:True:False}"
Command="{Binding SetPackagingTaskExceptionStateCommand}"
/>
<RadioButton Content="挂起任务" Height="35" Width="130" Tag="{Binding PackagingTaskExceptionCount,Mode=TwoWay}" IsChecked="{Binding PackagingTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=挂起任务:True:False}"
Command="{Binding SetPackagingTaskExceptionStateCommand}"
/>
</StackPanel>
<Grid Grid.Row="1">
<local:PackerWaitPackageControl/>
</Grid>
</Grid>
</Grid>
</UserControl>

26
BBWY.Client/Views/PackerTask/PackerWaitPackageList.xaml.cs

@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace BBWY.Client.Views.PackerTask
{
/// <summary>
/// PackerWaitPackageList.xaml 的交互逻辑
/// </summary>
public partial class PackerWaitPackageList : UserControl
{
public PackerWaitPackageList()
{
InitializeComponent();
}
}
}

10
BBWY.Client/Views/QualityTask/AddExceptionWindow.xaml

@ -23,7 +23,7 @@ RightButtonGroupMargin="0,5,5,0">
</Grid.RowDefinitions> </Grid.RowDefinitions>
<Border BorderThickness="0,0,0,1" BorderBrush="{StaticResource MainMenu.BorderBrush}" <Border BorderThickness="0,0,0,1" BorderBrush="{StaticResource MainMenu.BorderBrush}"
Background="{StaticResource Button.Background}"> Background="{StaticResource Button.Background}">
<TextBlock Text="添加异常" HorizontalAlignment="Left" Foreground="White" Margin="20 0 0 0" VerticalAlignment="Center"/> <TextBlock Text="任务挂起" HorizontalAlignment="Left" Foreground="White" Margin="20 0 0 0" VerticalAlignment="Center"/>
</Border> </Border>
<Grid Grid.Row="1" Margin="20 20 20 20"> <Grid Grid.Row="1" Margin="20 20 20 20">
<Grid.RowDefinitions> <Grid.RowDefinitions>
@ -42,7 +42,7 @@ RightButtonGroupMargin="0,5,5,0">
<Label HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Content="异常类型:"/> <Label HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Content="异常类型:"/>
<Grid Grid.Column="1"> <Grid Grid.Column="1">
<Rectangle Stroke="{StaticResource Border.Brush}" StrokeThickness="1" HorizontalAlignment="Stretch"/> <Rectangle Stroke="{StaticResource Border.Brush}" StrokeThickness="1" HorizontalAlignment="Stretch"/>
<ComboBox Height="30" HorizontalAlignment="Stretch" ItemsSource="{Binding TaskExceptionTypeList}" Text="{Binding ExceptionType}" BorderThickness="0" Margin="1" > <ComboBox Height="30" HorizontalAlignment="Stretch" ItemsSource="{Binding TaskExceptionTypeList}" Text="{Binding TaskExceptionType}" BorderThickness="0" Margin="1" >
<ComboBox.Resources> <ComboBox.Resources>
<ResourceDictionary> <ResourceDictionary>
<ResourceDictionary.MergedDictionaries > <ResourceDictionary.MergedDictionaries >
@ -57,8 +57,10 @@ RightButtonGroupMargin="0,5,5,0">
</Grid> </Grid>
</Grid> </Grid>
<Grid Grid.Row="1">
<c:BTextBox Grid.Row="1" Text="{Binding RemarkMsg}" HorizontalContentAlignment="Left" VerticalContentAlignment="Top" WaterRemark="备注消息" Height="NaN" VerticalAlignment="Stretch"/> <c:BTextBox Text="{Binding RemarkMsg}" HorizontalContentAlignment="Left" VerticalContentAlignment="Top" WaterRemark="备注消息" VerticalAlignment="Stretch" Height="120" />
</Grid>
</Grid> </Grid>

20
BBWY.Client/Views/QualityTask/AddExceptionWindow.xaml.cs

@ -22,14 +22,24 @@ namespace BBWY.Client.Views.QualityTask
/// </summary> /// </summary>
public partial class AddExceptionWindow : BWindow public partial class AddExceptionWindow : BWindow
{ {
public AddExceptionWindow(QualityTaskService qualityTaskService, long taskId) public AddExceptionWindow(QualityTaskService qualityTaskService, long taskId, TaskState abortTaskState, Action taskAbort)
{ {
InitializeComponent(); InitializeComponent();
this.qualityTaskService = qualityTaskService; this.qualityTaskService = qualityTaskService;
this.TaskId = taskId; this.TaskId = taskId;
this.DataContext = this; this.DataContext = this;
AbortTaskState = abortTaskState;
TaskAbort = taskAbort;
} }
Action TaskAbort { get; set; }
/// <summary>
/// 任务挂起类型
/// </summary>
public TaskState AbortTaskState { get; set; }
QualityTaskService qualityTaskService; QualityTaskService qualityTaskService;
@ -48,7 +58,7 @@ namespace BBWY.Client.Views.QualityTask
private List<TaskExceptionType> taskExceptionTypeList=new List<TaskExceptionType> { private List<TaskExceptionType> taskExceptionTypeList=new List<TaskExceptionType> {
TaskExceptionType. TaskExceptionType., TaskExceptionType.
}; };
/// <summary> /// <summary>
/// 验收异常类型 /// 验收异常类型
@ -71,13 +81,13 @@ namespace BBWY.Client.Views.QualityTask
return; return;
} }
var res = qualityTaskService.QualityTaskException(TaskId, TaskExceptionType, RemarkMsg); var res = qualityTaskService.QualityTaskException(TaskId, TaskExceptionType, RemarkMsg, AbortTaskState);
if (res==null||!res.Success) if (res==null||!res.Success)
{ {
MessageBox.Show(res?.Msg); MessageBox.Show(res?.Msg);
return; return;
} }
TaskAbort?.Invoke();
this.Close(); this.Close();
} }
} }

28
BBWY.Client/Views/QualityTask/BatchPrintWindow.xaml

@ -38,29 +38,37 @@
<TextBlock Text="打印" HorizontalAlignment="Center" VerticalAlignment="Center"/> <TextBlock Text="打印" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border> </Border>
<StackPanel Grid.Row="1" Orientation="Vertical" > <StackPanel Grid.Row="1" Orientation="Vertical" HorizontalAlignment="Center">
<StackPanel Orientation="Horizontal" Margin=" 50 50 0 0" HorizontalAlignment="Left"> <StackPanel Orientation="Horizontal" Margin=" 0 20 0 0" HorizontalAlignment="Left">
<TextBlock Margin="0 0 5 0" VerticalAlignment="Center" HorizontalAlignment="Left" Text="打印机:"/> <TextBlock Margin="0 0 5 0" VerticalAlignment="Center" HorizontalAlignment="Left" Text="打印机:"/>
<Border BorderBrush="{StaticResource Border.Brush}" VerticalAlignment="Center" BorderThickness="1"> <Border BorderBrush="{StaticResource Border.Brush}" VerticalAlignment="Center" BorderThickness="1">
<ComboBox x:Name="cbPrints" BorderThickness="0" Height="30" Width="150" VerticalAlignment="Center" HorizontalAlignment="Left" /> <ComboBox x:Name="cbPrints" BorderThickness="0" Height="30" Width="170" VerticalAlignment="Center" HorizontalAlignment="Left" />
</Border> </Border>
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" Margin=" 50 10 0 0" HorizontalAlignment="Left"> <StackPanel Orientation="Horizontal" Margin=" 0 10 0 0" HorizontalAlignment="Left">
<TextBlock HorizontalAlignment="Left" Text="良品数量:" Margin="0 0 5 0" /> <TextBlock HorizontalAlignment="Left" Text="良品数量:" Margin="0 0 5 0" />
<TextBlock Name="goodProductQuantity" HorizontalAlignment="Left" Margin="0 0 5 0" />
<TextBlock Text="{Binding GoodProductQuantity}" HorizontalAlignment="Left" Margin="0 0 0 0" />
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" Margin="50 10 0 0"> <TextBlock HorizontalAlignment="Left" Foreground="Red" Margin="0 10 0 0" Visibility="{Binding BrandMarkType,Converter={StaticResource objConverter},ConverterParameter=无需贴商标:Collapsed:Visible}">
<Run Text="品牌商标:"/>
<Run Text="{Binding GoodProductQuantity}"/>
<Run Text=" "/>
<Run Text="{Binding BrandMarkType}"/>
</TextBlock>
<StackPanel Orientation="Horizontal" Margin="0 10 0 0">
<TextBlock Text="条形码数量:" VerticalAlignment="Center" Margin="0 0 5 0" /> <TextBlock Text="条形码数量:" VerticalAlignment="Center" Margin="0 0 5 0" />
<c:BTextBox Name="barNumber" Width="100" WaterRemark="填0不打印条形码"/> <c:BTextBox Text="{Binding BarNumber}" Width="150" WaterRemark="填0不打印条形码"/>
</StackPanel> </StackPanel>
<StackPanel Orientation="Horizontal" Margin="50 10 0 0"> <StackPanel Orientation="Horizontal" Margin="0 10 0 0" Visibility="{Binding IsNeedPrintCer,Converter={StaticResource objConverter},ConverterParameter=需要:Visible:Collapsed}">
<TextBlock Text="合格证数量:" VerticalAlignment="Center" Margin="0 0 5 0" /> <TextBlock Text="合格证数量:" VerticalAlignment="Center" Margin="0 0 5 0" />
<c:BTextBox Name="cerNumber" Width="100" WaterRemark="填0不打印合格证"/> <c:BTextBox Text="{Binding CerNumber}" Width="150" WaterRemark="填0不打印合格证"/>
</StackPanel> </StackPanel>
</StackPanel> </StackPanel>

52
BBWY.Client/Views/QualityTask/BatchPrintWindow.xaml.cs

@ -25,23 +25,46 @@ namespace BBWY.Client.Views.QualityTask
/// </summary> /// </summary>
public partial class BatchPrintWindow : BWindow public partial class BatchPrintWindow : BWindow
{ {
public BatchPrintWindow() public BatchPrintWindow(BrandMarkType brandMarkType, Need isNeedPrintCer, int GoodProductQuantity, CertificateModel[] CertificateModel, BarCodeModel BarCodeModel)
{ {
InitializeComponent(); InitializeComponent();
this.Loaded += BatchPrintWindow_Loaded; this.Loaded += BatchPrintWindow_Loaded;
} BrandMarkType = brandMarkType;
IsNeedPrintCer = isNeedPrintCer;
public void SetData(int GoodProductQuantity, CertificateModel[] CertificateModel, BarCodeModel BarCodeModel)
{
this.BarCodeModel = BarCodeModel; this.BarCodeModel = BarCodeModel;
this.GoodProductQuantity = GoodProductQuantity; this.GoodProductQuantity = GoodProductQuantity;
goodProductQuantity.Text = GoodProductQuantity.ToString();
this.CertificateModel = CertificateModel; this.CertificateModel = CertificateModel;
this.DataContext = this; this.DataContext = this;
BarNumber = GoodProductQuantity.ToString();
if (IsNeedPrintCer == Need.)
{
CerNumber = GoodProductQuantity.ToString();
}
else
{
CerNumber = "0";
}
} }
public Need IsNeedPrintCer { get => isNeedPrintCer; set { Set(ref isNeedPrintCer,value); } }
private Need isNeedPrintCer;
public BrandMarkType BrandMarkType { get => brandMarkType; set { Set(ref brandMarkType, value); } }
private BrandMarkType brandMarkType;
public void SetData()
{
}
public CertificateModel[] CertificateModel { get; set; } public CertificateModel[] CertificateModel { get; set; }
@ -81,7 +104,12 @@ namespace BBWY.Client.Views.QualityTask
} }
} }
private string barNumber;
public string BarNumber { get => barNumber; set { Set(ref barNumber, value); } }
private string cerNumber;
public string CerNumber { get => cerNumber; set { Set(ref cerNumber, value); } }
private void PrintData(int printCount, string printName, BarCodeModel barCode = null, CertificateModel certificateModel = null) private void PrintData(int printCount, string printName, BarCodeModel barCode = null, CertificateModel certificateModel = null)
@ -142,20 +170,20 @@ namespace BBWY.Client.Views.QualityTask
private void BButton_Click(object sender, RoutedEventArgs e) private void BButton_Click(object sender, RoutedEventArgs e)
{ {
int cerNum = 0, barNum = 0; int cerNum = 0, barNum = 0;
if (!string.IsNullOrEmpty(cerNumber.Text)) if (!string.IsNullOrEmpty(CerNumber))
try try
{ {
cerNum = Convert.ToInt32(cerNumber.Text); cerNum = Convert.ToInt32(CerNumber);
} }
catch catch
{ {
MessageBox.Show("请输入数字"); MessageBox.Show("请输入数字");
return; return;
} }
if (!string.IsNullOrEmpty(barNumber.Text)) if (!string.IsNullOrEmpty(BarNumber))
try try
{ {
barNum = Convert.ToInt32(barNumber.Text); barNum = Convert.ToInt32(BarNumber);
} }
catch catch
{ {

63
BBWY.Client/Views/QualityTask/QualityControl.xaml

@ -23,9 +23,6 @@
<ctr:MultiParameterTransferConverter x:Key="mptConverter"/> <ctr:MultiParameterTransferConverter x:Key="mptConverter"/>
<ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/> <ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/>
</UserControl.Resources> </UserControl.Resources>
<Grid> <Grid>
<Grid.RowDefinitions> <Grid.RowDefinitions>
@ -96,9 +93,9 @@
<TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" />
<TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/> <TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/> Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" <Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}"
@ -349,50 +346,28 @@
</Grid> </Grid>
<Grid Grid.Column="6" > <Grid Grid.Column="6" >
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center"> <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="商品验收" <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center" Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" >
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="商品验收"
Command="{Binding DataContext.QualityTaskCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.QualityTaskCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskId}"/>
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}"
/>
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="验收异常" <c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" VerticalAlignment="Center" Grid.Row="1" Content="验收异常"
Command="{Binding DataContext.QualityTaskExceptionCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" CommandParameter="{Binding TaskId}" Command="{Binding DataContext.QualityTaskExceptionCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" CommandParameter="{Binding TaskId}"
Visibility="{Binding DataContext.QualityTaskExceptionState,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}},Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" Visibility="{Binding DataContext.QualityTaskExceptionState,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}},Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}"
/> />
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" VerticalAlignment="Center" Grid.Row="1" Content="任务拆分"
<!--Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收:Visible:Collapsed}" --> Command="{Binding DataContext.TaskSplitCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}}}" CommandParameter="{Binding }"
<!--<StackPanel > Visibility="{Binding DataContext.QualityTaskExceptionState,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type UserControl}},Converter={StaticResource objConverter},ConverterParameter=待验收:Collapsed:Visible}"
<StackPanel.Visibility> />
<MultiBinding Converter="{StaticResource mobjConverter}" <c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 0 " VerticalAlignment="Center" Grid.Row="1" Content="商家自取"
ConverterParameter="9;待验收:&amp;:Visible:Collapsed:1"> CommandParameter="{Binding TaskId}"
<Binding Path="ShopId"/> Command="{Binding DataContext.StoreGetBySelfCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}"
<Binding Path="TaskState"/> />
</MultiBinding> </StackPanel>
</StackPanel.Visibility>
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="信息不全"
CommandParameter="{Binding }"
Command="{Binding DataContext.SendToSetSkuConfigureCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}">
<c:BButton.Visibility>
<MultiBinding Converter="{StaticResource mobjConverter}"
ConverterParameter=";:amp;:Visible:Collapsed:1">
<Binding Path="BarCodeModel"/>
<Binding Path="CertificateModel"/>
</MultiBinding>
</c:BButton.Visibility>
</c:BButton>
</StackPanel>-->
<c:BButton HorizontalAlignment="Center" Style="{StaticResource LinkButton}" Height="20" Margin="0 5 0 5 " VerticalAlignment="Center" Grid.Row="1" Content="商家自取"
CommandParameter="{Binding TaskId}"
Command="{Binding DataContext.StoreGetBySelfCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type Page}}}"
Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收|待排单|待包装:Visible:Collapsed}"
/>
<c:BButton Grid.Column="11" HorizontalAlignment="Stretch" Style="{StaticResource LinkButton}" Margin="0 5 0 5 " VerticalAlignment="Center" Content="{Binding ShowSendMsg,Converter={StaticResource objConverter},ConverterParameter=False:任务备注:取消备注}" <c:BButton Grid.Column="11" HorizontalAlignment="Stretch" Style="{StaticResource LinkButton}" Margin="0 5 0 5 " VerticalAlignment="Center" Content="{Binding ShowSendMsg,Converter={StaticResource objConverter},ConverterParameter=False:任务备注:取消备注}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskId}"
@ -494,8 +469,4 @@ CommandParameter="{Binding TaskId}"/>
</ListBox.ItemTemplate> </ListBox.ItemTemplate>
</ListBox> </ListBox>
</Grid> </Grid>
</UserControl> </UserControl>

6
BBWY.Client/Views/QualityTask/QualityControl.xaml.cs

@ -1,4 +1,5 @@
using System; using BBWY.Common.Extensions;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text; using System.Text;
using System.Windows; using System.Windows;
@ -21,6 +22,9 @@ namespace BBWY.Client.Views.QualityTask
public QualityControl() public QualityControl()
{ {
InitializeComponent(); InitializeComponent();
int b = 0;
int c=b.Copy();
} }
} }
} }

9
BBWY.Client/Views/QualityTask/QualityWindow.xaml

@ -466,13 +466,18 @@
<Border Width="1" Background="{StaticResource Border.Brush}" HorizontalAlignment="Right" /> <Border Width="1" Background="{StaticResource Border.Brush}" HorizontalAlignment="Right" />
</Grid> </Grid>
<DockPanel Grid.Row="2"> <DockPanel Grid.Row="2">
<c:BButton Content="完成验收" Width="100" DockPanel.Dock="Right" VerticalAlignment="Stretch" Margin="0,0,20,0" HorizontalAlignment="Right" <c:BButton Content="完成验收" Width="100" DockPanel.Dock="Right" VerticalAlignment="Stretch" Margin="0,0,20,0" HorizontalAlignment="Right"
Command="{Binding CompeteQualityTaskCommand}" Command="{Binding CompeteQualityTaskCommand}"
CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type c:BWindow}}}" CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type c:BWindow}}}"
Background="{StaticResource Button.Selected.Background}" BorderThickness="0" Foreground="White"/> Background="{StaticResource Button.Selected.Background}" BorderThickness="0" Foreground="White"/>
<c:BButton Content="验收异常" Width="100" DockPanel.Dock="Right" VerticalAlignment="Stretch" HorizontalAlignment="Right"
Command="{Binding QualityTaskExceptionCommand}"
CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type c:BWindow}}}"
Background="#ec808d" BorderThickness="0" Foreground="White"/>
</DockPanel> </DockPanel>
<Border Height="1" Background="{StaticResource Border.Brush}" Grid.Row="1" VerticalAlignment="Bottom"/> <Border Height="1" Background="{StaticResource Border.Brush}" Grid.Row="1" VerticalAlignment="Bottom"/>
</Grid> </Grid>

6
BBWY.Client/Views/QualityTask/ShopWaitQualityControl.xaml

@ -56,7 +56,7 @@
<TextBlock Text="包装员" Grid.Column="11" Style="{StaticResource middleTextBlock}"/>--> <TextBlock Text="包装员" Grid.Column="11" Style="{StaticResource middleTextBlock}"/>-->
<TextBlock Text="操作" Grid.Column="8" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="操作" Grid.Column="8" Style="{StaticResource middleTextBlock}"/>
<Border Height="1" VerticalAlignment="Top" Background="{StaticResource Border.Brush}" Grid.ColumnSpan="12"/>
<!--<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/>--> <!--<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/>-->
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/> <Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}"/>
<Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="1"/> <Border Width="1" HorizontalAlignment="Left" Background="{StaticResource Border.Brush}" Grid.Column="1"/>
@ -105,9 +105,9 @@
<TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="提交时间:" Margin="14,0,0,0" />
<TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/> <TextBlock Text="{Binding EndTime,StringFormat=yyyy-MM-dd HH:mm}" VerticalAlignment="Center" Margin="5,0,0,0"/>
<TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" /> <TextBlock VerticalAlignment="Center" Text="任务ID:" Margin="16,0,0,0" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Center"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Page}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,7,0"/> Margin=" 5,0,7,0"/>
<Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}" <Label Width="90" Height="25" HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" VerticalAlignment="Center" Content="{Binding TaskState}"

85
BBWY.Client/Views/QualityTask/ShopWaitQualityList.xaml

@ -0,0 +1,85 @@
<UserControl x:Class="BBWY.Client.Views.QualityTask.ShopWaitQualityList"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:ctr="clr-namespace:BBWY.Client.Converters" Background="White"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:cmodel="clr-namespace:BBWY.Client.Models"
xmlns:local="clr-namespace:BBWY.Client.Views.QualityTask"
DataContext="{Binding TaskList,Source={StaticResource Locator}}"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="1500">
<UserControl.Resources>
<ObjectDataProvider x:Key="storageTypeProvider" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="cmodel:StorageType"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<ctr:OrderStorageTypeOptionConverter x:Key="ostConverter"/>
<ctr:ProfitRatioConverter x:Key="profitRatioConverter"/>
<ctr:WaybillNoConverter x:Key="waybillConverter"/>
<ctr:MultiParameterTransferConverter x:Key="mptConverter"/>
<ctr:SaleGrossProfitConverter x:Key="sgpcConverter"/>
<Style TargetType="RadioButton">
<Setter Property="IsChecked" Value="False" />
<Setter Property="Background" Value="#8080FF" />
<Setter Property="Foreground" Value="Black" />
<!--<Setter Property="Content" Value="{Binding ElementName=txt,Path=Text}"/>-->
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RadioButton">
<Grid Background="#F2F2F2" >
<Rectangle x:Name="_Rect" Fill="#F2F2F2" HorizontalAlignment="Center" Height="35" VerticalAlignment="Center" Width="{TemplateBinding Width}" RenderTransformOrigin="0.5,0.5">
<Rectangle.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleY="-1"/>
<SkewTransform/>
<RotateTransform/>
<TranslateTransform/>
</TransformGroup>
</Rectangle.RenderTransform>
</Rectangle>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Height="35">
<TextBlock VerticalAlignment="Center" Text="{TemplateBinding Content}" />
<TextBlock VerticalAlignment="Center" Text="{TemplateBinding Tag}" Foreground="{StaticResource Text.Pink}" Margin="5 0 0 0" />
</StackPanel>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="true">
<Setter TargetName="_Rect" Property="Fill" Value="#8080FF" />
<Setter Property="Foreground" Value="white"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
<Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition />
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" Grid.Row="0">
<RadioButton Content="待验收" Height="35" Width="130" Tag="{Binding QualityTaskCount,Mode=TwoWay}" IsChecked="{Binding QualityTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=待验收:True:False}"
Command="{Binding SetQualityTaskExceptionStateCommand}" CommandParameter="{x:Static cmodel:QualityTaskExceptionState.待验收}"
/>
<RadioButton Content="验收异常" Height="35" Width="130" Tag="{Binding QualityExceptionCount,Mode=TwoWay}" IsChecked="{Binding QualityTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=验收异常:True:False}"
Command="{Binding SetQualityTaskExceptionStateCommand}" CommandParameter="{x:Static cmodel:QualityTaskExceptionState.验收异常}"
/>
</StackPanel>
<Grid Grid.Row="1">
<local:ShopWaitQualityControl/>
</Grid>
</Grid>
</Grid>
</UserControl>

25
BBWY.Client/Views/QualityTask/ShopWaitQualityList.xaml.cs

@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace BBWY.Client.Views.QualityTask
{
/// <summary>
/// ShopWaitQualityList.xaml 的交互逻辑
/// </summary>
public partial class ShopWaitQualityList : UserControl
{
public ShopWaitQualityList()
{
InitializeComponent();
}
}
}

7
BBWY.Client/Views/QualityTask/WaitQualityList.xaml

@ -1,13 +1,12 @@
<UserControl x:Class="BBWY.Client.Views.QualityTask.WaitQualityList" <UserControl x:Class="BBWY.Client.Views.QualityTask.WaitQualityList"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:BBWY.Client.Views.QualityTask"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls" xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
xmlns:ctr="clr-namespace:BBWY.Client.Converters" Background="White" xmlns:ctr="clr-namespace:BBWY.Client.Converters" Background="White"
xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:BBWY.Client.Views.QualityTask"
xmlns:cmodel="clr-namespace:BBWY.Client.Models" xmlns:cmodel="clr-namespace:BBWY.Client.Models"
DataContext="{Binding WareHouseList,Source={StaticResource Locator}}" DataContext="{Binding WareHouseList,Source={StaticResource Locator}}"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors" xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
@ -206,7 +205,7 @@
<StackPanel Orientation="Horizontal" Grid.Row="1"> <StackPanel Orientation="Horizontal" Grid.Row="1">
<RadioButton Content="待验收" Height="35" Width="130" IsChecked="{Binding QualityTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=待验收:True:False}" <RadioButton Content="待验收" Height="35" Width="130" Tag="{Binding QualityTaskCount,Mode=TwoWay}" IsChecked="{Binding QualityTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=待验收:True:False}"
Command="{Binding SetQualityTaskExceptionStateCommand}" CommandParameter="{x:Static cmodel:QualityTaskExceptionState.待验收}" Command="{Binding SetQualityTaskExceptionStateCommand}" CommandParameter="{x:Static cmodel:QualityTaskExceptionState.待验收}"
/> />
<RadioButton Content="验收异常" Height="35" Width="130" Tag="{Binding QualityExceptionCount,Mode=TwoWay}" IsChecked="{Binding QualityTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=验收异常:True:False}" <RadioButton Content="验收异常" Height="35" Width="130" Tag="{Binding QualityExceptionCount,Mode=TwoWay}" IsChecked="{Binding QualityTaskExceptionState,Converter={StaticResource objConverter},ConverterParameter=验收异常:True:False}"

4
BBWY.Client/Views/SealBox/SealBoxConfiguredControl.xaml

@ -215,9 +215,9 @@ Foreground="{StaticResource Text.Link.Color}" FontSize="18"
<StackPanel Orientation="Vertical" Grid.Column="2" Margin="20,10,0,10"> <StackPanel Orientation="Vertical" Grid.Column="2" Margin="20,10,0,10">
<StackPanel Orientation="Horizontal" Margin="0 0 0 13"> <StackPanel Orientation="Horizontal" Margin="0 0 0 13">
<TextBlock Text="任务ID:" Style="{StaticResource middleTextBlock}" /> <TextBlock Text="任务ID:" Style="{StaticResource middleTextBlock}" />
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,0,0"/> Margin=" 5,0,0,0"/>
</StackPanel> </StackPanel>
<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,0,0 0"> <TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,0,0 0">

8
BBWY.Client/Views/SealBox/SealBoxNoConfigureControl.xaml

@ -113,7 +113,7 @@
CommandParameter="{Binding}" CommandParameter="{Binding}"
/> />
<Grid Grid.Column="4" Panel.ZIndex="-2"> <Grid Grid.Column="4" Panel.ZIndex="-2">
<TextBlock Style="{StaticResource middleTextBlock}" Text="{Binding SealBoxSkus.Count,Converter={StaticResource objConverter},ConverterParameter=0:∧:∨}" FontWeight="Bold" <TextBlock Style="{StaticResource middleTextBlock}" Text="{Binding IsHideSkuList,Converter={StaticResource objConverter},ConverterParameter=true:∧:∨}" FontWeight="Bold"
Foreground="{StaticResource Text.Link.Color}" FontSize="18" Foreground="{StaticResource Text.Link.Color}" FontSize="18"
/> />
@ -121,7 +121,7 @@
</Grid> </Grid>
</Grid> </Grid>
<Grid Grid.Row="1"> <Grid Grid.Row="1" Visibility="{Binding IsHideSkuList,Converter={StaticResource objConverter},ConverterParameter=true:Collapsed:Visible}">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="400"/> <ColumnDefinition Width="400"/>
<ColumnDefinition Width="80"/> <ColumnDefinition Width="80"/>
@ -207,9 +207,9 @@
<TextBlock Foreground="{StaticResource Text.Gray}"> <TextBlock Foreground="{StaticResource Text.Gray}">
<Run Text="任务ID:" /> <Run Text="任务ID:" />
</TextBlock> </TextBlock>
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,0,0"/> Margin=" 5,0,0,0"/>
</StackPanel> </StackPanel>
<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0"> <TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0">

4
BBWY.Client/Views/SealBox/SealBoxWaitConfigureControl.xaml

@ -151,9 +151,9 @@
<TextBlock Foreground="{StaticResource Text.Gray}"> <TextBlock Foreground="{StaticResource Text.Gray}">
<Run Text="任务ID:" /> <Run Text="任务ID:" />
</TextBlock> </TextBlock>
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,0,0"/> Margin=" 5,0,0,0"/>
</StackPanel> </StackPanel>
<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0"> <TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0">

8
BBWY.Client/Views/SealBox/SetSealBoxPolicyWindow.xaml

@ -158,7 +158,7 @@ Foreground="{StaticResource Text.Color}">
</Grid.RowDefinitions> </Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" Background="{StaticResource Border.Background}"> <StackPanel Orientation="Horizontal" Background="{StaticResource Border.Background}">
<TextBlock Text="任务ID:" Margin="10 0 0 0" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="任务ID:" Margin="10 0 0 0" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TaskId}" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="{Binding TaskIdRemark}" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="任务状态:" Margin="20 0 0 0" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="任务状态:" Margin="20 0 0 0" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TaskState}" Style="{StaticResource middleTextBlock}" <TextBlock Text="{Binding TaskState}" Style="{StaticResource middleTextBlock}"
@ -324,7 +324,7 @@ Foreground="{StaticResource Text.Color}">
</Grid.RowDefinitions> </Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" Background="{StaticResource Border.Background}"> <StackPanel Orientation="Horizontal" Background="{StaticResource Border.Background}">
<TextBlock Text="任务ID:" Margin="10 0 0 0" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="任务ID:" Margin="10 0 0 0" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TaskId}" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="{Binding TaskIdRemark}" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="任务状态:" Margin="20 0 0 0" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="任务状态:" Margin="20 0 0 0" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TaskState}" Style="{StaticResource middleTextBlock}" <TextBlock Text="{Binding TaskState}" Style="{StaticResource middleTextBlock}"
@ -500,7 +500,7 @@ Foreground="{StaticResource Text.Color}">
</Grid.RowDefinitions> </Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" Background="{StaticResource Border.Background}"> <StackPanel Orientation="Horizontal" Background="{StaticResource Border.Background}">
<TextBlock Text="任务ID:" Margin="10 0 0 0" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="任务ID:" Margin="10 0 0 0" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TaskId}" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="{Binding TaskIdRemark}" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="任务状态:" Margin="20 0 0 0" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="任务状态:" Margin="20 0 0 0" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TaskState}" Style="{StaticResource middleTextBlock}" <TextBlock Text="{Binding TaskState}" Style="{StaticResource middleTextBlock}"
@ -679,7 +679,7 @@ Foreground="{StaticResource Text.Color}">
</Grid.RowDefinitions> </Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" Background="{StaticResource Border.Background}"> <StackPanel Orientation="Horizontal" Background="{StaticResource Border.Background}">
<TextBlock Text="任务ID:" Margin="10 0 0 0" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="任务ID:" Margin="10 0 0 0" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TaskId}" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="{Binding TaskIdRemark}" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="任务状态:" Margin="20 0 0 0" Style="{StaticResource middleTextBlock}"/> <TextBlock Text="任务状态:" Margin="20 0 0 0" Style="{StaticResource middleTextBlock}"/>
<TextBlock Text="{Binding TaskState}" Style="{StaticResource middleTextBlock}" <TextBlock Text="{Binding TaskState}" Style="{StaticResource middleTextBlock}"

2
BBWY.Client/Views/SealBox/SetSealBoxPolicyWindow.xaml.cs

@ -125,6 +125,7 @@ namespace BBWY.Client.Views.SealBox
WareName = s.WareName, WareName = s.WareName,
WareId=s.WareId, WareId=s.WareId,
TaskId=sealBoxWaitConfigureModel.TaskId, TaskId=sealBoxWaitConfigureModel.TaskId,
TaskIdRemark=sealBoxWaitConfigureModel.TaskIdRemark,
TotalWareCount=sealBoxConfigureVM.TotalCount, TotalWareCount=sealBoxConfigureVM.TotalCount,
} }
@ -153,6 +154,7 @@ namespace BBWY.Client.Views.SealBox
WareName = s.WareName, WareName = s.WareName,
WareId=s.WareId, WareId=s.WareId,
TaskId=sealBoxWaitConfigureModel.TaskId, TaskId=sealBoxWaitConfigureModel.TaskId,
TaskIdRemark=sealBoxWaitConfigureModel.TaskIdRemark,
TotalWareCount=sealBoxConfigureVM.TotalCount, TotalWareCount=sealBoxConfigureVM.TotalCount,
} }

8
BBWY.Client/Views/SealBox/WaitSealBoxControl.xaml

@ -249,13 +249,13 @@
CommandParameter="{Binding}" CommandParameter="{Binding}"
/> />
<Grid Grid.Column="6" Panel.ZIndex="-2"> <Grid Grid.Column="6" Panel.ZIndex="-2">
<TextBlock Style="{StaticResource middleTextBlock}" Text="{Binding SealBoxSkus,Converter={StaticResource objConverter},ConverterParameter=#null:∧:∨}" FontWeight="Bold" <TextBlock Style="{StaticResource middleTextBlock}" Text="{Binding IsHideSkuList,Converter={StaticResource objConverter},ConverterParameter=true:∧:∨}" FontWeight="Bold"
Foreground="{StaticResource Text.Link.Color}" FontSize="18" Foreground="{StaticResource Text.Link.Color}" FontSize="18"
/> />
</Grid> </Grid>
</Grid> </Grid>
<Grid Grid.Row="1" <Grid Grid.Row="1"
Visibility="{Binding SealBoxSkus,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible}" Visibility="{Binding IsHideSkuList,Converter={StaticResource objConverter},ConverterParameter=true:Collapsed:Visible}"
> >
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="400"/> <ColumnDefinition Width="400"/>
@ -346,9 +346,9 @@
<TextBlock Foreground="{StaticResource Text.Gray}"> <TextBlock Foreground="{StaticResource Text.Gray}">
<Run Text="任务ID:" /> <Run Text="任务ID:" />
</TextBlock> </TextBlock>
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,0,0"/> Margin=" 5,0,0,0"/>
</StackPanel> </StackPanel>
<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0"> <TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0">

92
BBWY.Client/Views/SplitTask/SplitTaskWindow.xaml

@ -0,0 +1,92 @@
<c:BWindow x:Class="BBWY.Client.Views.SplitTask.SplitTaskWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:BBWY.Client.Views.SplitTask"
xmlns:c="clr-namespace:BBWY.Controls;assembly=BBWY.Controls"
WindowStartupLocation="CenterScreen"
CloseButtonVisibility="Visible"
xmlns:hc="https://handyorg.github.io/handycontrol"
CloseButtonColor="{StaticResource WindowButtonColor}"
MinButtonVisibility="Collapsed"
MaxButtonVisibility="Collapsed"
Width="384" Height="300" ResizeMode="NoResize"
RightButtonGroupMargin="0,5,5,0">
<!--CloseButtonColor="{StaticResource WindowButtonColor}" -->
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="39"/>
<RowDefinition/>
<RowDefinition Height="36"/>
</Grid.RowDefinitions>
<Border BorderThickness="0,0,0,1" BorderBrush="{StaticResource MainMenu.BorderBrush}"
Background="{StaticResource Button.Background}">
<TextBlock Text="任务拆分" HorizontalAlignment="Left" Foreground="White" Margin="20 0 0 0" VerticalAlignment="Center"/>
</Border>
<Grid Grid.Row="1" Margin="20 20 20 20">
<Grid.RowDefinitions>
<RowDefinition Height="40"/>
<RowDefinition Height="40"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid Grid.Row="0" Height="30" Margin="0">
<Rectangle HorizontalAlignment="Stretch" Stroke="{StaticResource Border.Brush}" StrokeThickness="1"/>
<Grid Height="30" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="80"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Label HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Content="异常类型"/>
<Grid Grid.Column="1">
<Rectangle Stroke="{StaticResource Border.Brush}" StrokeThickness="1" HorizontalAlignment="Stretch"/>
<ComboBox Height="30" HorizontalAlignment="Stretch" ItemsSource="{Binding TaskExceptionTypeList}" Text="{Binding TaskExceptionType}" BorderThickness="0" Margin="1" >
<ComboBox.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries >
<ResourceDictionary Source="pack://application:,,,/HandyControl;component/Themes/SkinDefault.xaml"/>
<ResourceDictionary Source="pack://application:,,,/HandyControl;component/Themes/Theme.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</ComboBox.Resources>
</ComboBox>
</Grid>
</Grid>
</Grid>
<Grid Grid.Row="1" Height="30" Margin="0">
<Rectangle HorizontalAlignment="Stretch" Stroke="{StaticResource Border.Brush}" StrokeThickness="1"/>
<Grid Height="30" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="80"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Label HorizontalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Content="异常任务量"/>
<Grid Grid.Column="1">
<Rectangle Stroke="{StaticResource Border.Brush}" StrokeThickness="1" HorizontalAlignment="Stretch"/>
<c:BTextBox Height="30" HorizontalAlignment="Stretch" Text="{Binding ExceptionCount}" BorderThickness="0" Margin="1" />
</Grid>
</Grid>
</Grid>
<Grid Grid.Row="2">
<c:BTextBox Text="{Binding RemarkMsg}" HorizontalContentAlignment="Left" AcceptsReturn="True" VerticalContentAlignment="Top" WaterRemark="备注消息" VerticalAlignment="Stretch" MinHeight="80" />
</Grid>
</Grid>
<Border Height="1" Background="{StaticResource Border.Brush}" Grid.Row="2" VerticalAlignment="Top"/>
<c:BButton Grid.Row="2" Content="确定" HorizontalAlignment="Right" Width="105" VerticalAlignment="Center" Height="40" Click="BButton_Click"
/>
</Grid>
</c:BWindow>

104
BBWY.Client/Views/SplitTask/SplitTaskWindow.xaml.cs

@ -0,0 +1,104 @@
using BBWY.Client.APIServices;
using BBWY.Client.APIServices.QiKu;
using BBWY.Client.Models;
using BBWY.Controls;
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using WebSocketSharp;
namespace BBWY.Client.Views.SplitTask
{
/// <summary>
/// SplitTaskWindow.xaml 的交互逻辑
/// </summary>
public partial class SplitTaskWindow : BWindow
{
public SplitTaskWindow(PackTaskService packTaskService, long taskId, TaskState abortTaskState, Action splitTask)
{
InitializeComponent();
this.TaskId = taskId;
this.DataContext = this;
AbortTaskState = abortTaskState;
this.packTaskService = packTaskService;
TaskId = taskId;
SplitTask = splitTask;
}
private Action SplitTask { get; set; }
/// <summary>
/// 任务挂起类型
/// </summary>
public TaskState AbortTaskState { get; set; }
PackTaskService packTaskService;
private long taskId;
/// <summary>
/// 任务id
/// </summary>
public long TaskId { get => taskId; set { Set(ref taskId, value); } }
private TaskExceptionType taskExceptionType;
/// <summary>
/// 验收异常类型
/// </summary>
public TaskExceptionType TaskExceptionType { get => taskExceptionType; set { Set(ref taskExceptionType, value); } }
private int exceptionCount;
/// <summary>
/// 验收异常类型
/// </summary>
public int ExceptionCount { get => exceptionCount; set { Set(ref exceptionCount, value); } }
private List<TaskExceptionType> taskExceptionTypeList = new List<TaskExceptionType> {
TaskExceptionType., TaskExceptionType.
};
/// <summary>
/// 验收异常类型
/// </summary>
public List<TaskExceptionType> TaskExceptionTypeList { get => taskExceptionTypeList; set { Set(ref taskExceptionTypeList, value); } }
private string remarkMsg;
/// <summary>
/// 备注消息
/// </summary>
public string RemarkMsg { get => remarkMsg; set { Set(ref remarkMsg, value); } }
private void BButton_Click(object sender, RoutedEventArgs e)
{
if (RemarkMsg.IsNullOrEmpty())
{
MessageBox.Show("请输入具体问题描述.");
return;
}
var res = packTaskService.SplitPackTask(TaskId, ExceptionCount, TaskExceptionType, RemarkMsg, AbortTaskState);
if (res == null || !res.Success)
{
MessageBox.Show(res?.Msg);
return;
}
SplitTask?.Invoke();
this.Close();
}
}
}

4
BBWY.Client/Views/WaitTransport/TeamWaitTransportControl.xaml

@ -247,9 +247,9 @@ Foreground="{StaticResource Text.Link.Color}" FontSize="18"
<TextBlock Foreground="{StaticResource Text.Gray}"> <TextBlock Foreground="{StaticResource Text.Gray}">
<Run Text="任务ID:" /> <Run Text="任务ID:" />
</TextBlock> </TextBlock>
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,0,0"/> Margin=" 5,0,0,0"/>
</StackPanel> </StackPanel>
<!--<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0"> <!--<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0">

8
BBWY.Client/Views/WaitTransport/WareWaitTransportControl.xaml

@ -182,13 +182,13 @@ Visibility="{Binding WaitTransportRemainTime,Converter={StaticResource objConver
CommandParameter="{Binding}" CommandParameter="{Binding}"
/> />
<Grid Grid.Column="5" Panel.ZIndex="-2"> <Grid Grid.Column="5" Panel.ZIndex="-2">
<TextBlock Style="{StaticResource middleTextBlock}" Text="{Binding WaitTransportSkus,Converter={StaticResource objConverter},ConverterParameter=#null:∧:∨}" FontWeight="Bold" <TextBlock Style="{StaticResource middleTextBlock}" Text="{Binding IsHideSkuList,Converter={StaticResource objConverter},ConverterParameter=true:∧:∨}" FontWeight="Bold"
Foreground="{StaticResource Text.Link.Color}" FontSize="18" Foreground="{StaticResource Text.Link.Color}" FontSize="18"
/> />
</Grid> </Grid>
</Grid> </Grid>
<Grid Grid.Row="1" Visibility="{Binding WaitTransportSkus,Converter={StaticResource objConverter},ConverterParameter=#null:Collapsed:Visible}"> <Grid Grid.Row="1" Visibility="{Binding IsHideSkuList,Converter={StaticResource objConverter},ConverterParameter=true:Collapsed:Visible}">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="400"/> <ColumnDefinition Width="400"/>
<ColumnDefinition Width="80"/> <ColumnDefinition Width="80"/>
@ -281,9 +281,9 @@ Foreground="{StaticResource Text.Link.Color}" FontSize="18"
<TextBlock Foreground="{StaticResource Text.Gray}"> <TextBlock Foreground="{StaticResource Text.Gray}">
<Run Text="任务ID:" /> <Run Text="任务ID:" />
</TextBlock> </TextBlock>
<c:BButton Content="{Binding TaskId}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top" <c:BButton Content="{Binding TaskIdRemark}" Style="{StaticResource LinkButton}" HorizontalAlignment="Left" VerticalAlignment="Top"
Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}" Command="{Binding DataContext.CopyTextCommand,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}}"
CommandParameter="{Binding TaskId}" CommandParameter="{Binding TaskIdRemark}"
Margin=" 5,0,0,0"/> Margin=" 5,0,0,0"/>
</StackPanel> </StackPanel>
<!--<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0"> <!--<TextBlock Foreground="{StaticResource Text.Gray}" TextWrapping="Wrap" Margin="0,10,0 0">

Loading…
Cancel
Save