zhangkun 5 lat temu
rodzic
commit
d342a17adf

+ 10 - 0
代码/System.IRepositories/ISysUser_GradeRepository.cs

@@ -0,0 +1,10 @@
1
+using System.Common;
2
+using System;
3
+using System.Model;
4
+
5
+namespace System.IRepositories
6
+{
7
+    public interface ISysUser_GradeRepository : IRepository<T_SysUser_Grade>
8
+    {
9
+    }
10
+}

+ 306 - 0
代码/System.Model/T_SysUser_Grade.cs

@@ -0,0 +1,306 @@
1
+using System;
2
+namespace System.Model
3
+{
4
+	/// <summary>
5
+	/// T_SysUser_Grade:实体类(属性说明自动提取数据库字段的描述信息)
6
+	/// </summary>
7
+	[Serializable]
8
+	public partial class T_SysUser_Grade
9
+	{
10
+		public T_SysUser_Grade()
11
+		{ }
12
+		#region Model
13
+		private string _f_id;
14
+		private string _f_username;
15
+		private int? _f_userid;
16
+		private string _f_usercode;
17
+		private DateTime _f_addtime;
18
+		private string _f_dept;
19
+		private int _f_deptid;
20
+		private string _f_post;
21
+		private int _f_postid;
22
+		private string _f_type;
23
+		private string _f_month;
24
+		private int _f_sendtotlenumber = 0;
25
+		private decimal _f_totlemoney = 0.00M;
26
+		private int _f_signnumber;
27
+		private decimal _f_signmoney = 0.00M;
28
+		private int _f_nosignnumber = 0;
29
+		private decimal _f_nosignmoney;
30
+		private int _f_refusenumber = 0;
31
+		private decimal _f_refusemoney = 0.00M;
32
+		private string _f_signrate;
33
+		private decimal _f_errormoney = 0.00M;
34
+		private int _f_errornumber;
35
+		private decimal _f_aftermoney = 0.00M;
36
+		private decimal _f_alongmoney;
37
+		private int _f_tasknumber;
38
+		private int _f_taskovernumber;
39
+		private string _f_taskrate;
40
+		private decimal? _f_agentsignmoney;
41
+		private int? _f_teamid = 0;
42
+		private int _f_state;
43
+		private string _f_statereamrk;
44
+		private string _f_team;
45
+
46
+		/// <summary>
47
+		/// 团队名称
48
+		/// </summary>
49
+		public string F_Team
50
+		{
51
+			set { _f_team = value; }
52
+			get { return _f_team; }
53
+		}
54
+		/// <summary>
55
+		/// 绩效表ID
56
+		/// </summary>
57
+		public string F_Id
58
+		{
59
+			set { _f_id = value; }
60
+			get { return _f_id; }
61
+		}
62
+		/// <summary>
63
+		/// 员工姓名
64
+		/// </summary>
65
+		public string F_UserName
66
+		{
67
+			set { _f_username = value; }
68
+			get { return _f_username; }
69
+		}
70
+		/// <summary>
71
+		/// 员工ID
72
+		/// </summary>
73
+		public int? F_UserId
74
+		{
75
+			set { _f_userid = value; }
76
+			get { return _f_userid; }
77
+		}
78
+		/// <summary>
79
+		/// 员工工号
80
+		/// </summary>
81
+		public string F_UserCode
82
+		{
83
+			set { _f_usercode = value; }
84
+			get { return _f_usercode; }
85
+		}
86
+		/// <summary>
87
+		/// 添加时间
88
+		/// </summary>
89
+		public DateTime F_AddTime
90
+		{
91
+			set { _f_addtime = value; }
92
+			get { return _f_addtime; }
93
+		}
94
+		/// <summary>
95
+		/// 部门
96
+		/// </summary>
97
+		public string F_Dept
98
+		{
99
+			set { _f_dept = value; }
100
+			get { return _f_dept; }
101
+		}
102
+		/// <summary>
103
+		/// 部门ID
104
+		/// </summary>
105
+		public int F_DeptId
106
+		{
107
+			set { _f_deptid = value; }
108
+			get { return _f_deptid; }
109
+		}
110
+		/// <summary>
111
+		/// 职位
112
+		/// </summary>
113
+		public string F_Post
114
+		{
115
+			set { _f_post = value; }
116
+			get { return _f_post; }
117
+		}
118
+		/// <summary>
119
+		/// 职务ID
120
+		/// </summary>
121
+		public int F_PostId
122
+		{
123
+			set { _f_postid = value; }
124
+			get { return _f_postid; }
125
+		}
126
+		/// <summary>
127
+		/// 统计类型:当月业绩
128
+		/// </summary>
129
+		public string F_Type
130
+		{
131
+			set { _f_type = value; }
132
+			get { return _f_type; }
133
+		}
134
+		/// <summary>
135
+		/// 统计月份 例如:202007
136
+		/// </summary>
137
+		public string F_Month
138
+		{
139
+			set { _f_month = value; }
140
+			get { return _f_month; }
141
+		}
142
+		/// <summary>
143
+		/// 发货单总数
144
+		/// </summary>
145
+		public int F_SendTotleNumber
146
+		{
147
+			set { _f_sendtotlenumber = value; }
148
+			get { return _f_sendtotlenumber; }
149
+		}
150
+		/// <summary>
151
+		/// 总金额
152
+		/// </summary>
153
+		public decimal F_TotleMoney
154
+		{
155
+			set { _f_totlemoney = value; }
156
+			get { return _f_totlemoney; }
157
+		}
158
+		/// <summary>
159
+		/// 签收单数
160
+		/// </summary>
161
+		public int F_SignNumber
162
+		{
163
+			set { _f_signnumber = value; }
164
+			get { return _f_signnumber; }
165
+		}
166
+		/// <summary>
167
+		/// 签收金额
168
+		/// </summary>
169
+		public decimal F_SignMoney
170
+		{
171
+			set { _f_signmoney = value; }
172
+			get { return _f_signmoney; }
173
+		}
174
+		/// <summary>
175
+		/// 未签收单数
176
+		/// </summary>
177
+		public int F_NoSignNumber
178
+		{
179
+			set { _f_nosignnumber = value; }
180
+			get { return _f_nosignnumber; }
181
+		}
182
+		/// <summary>
183
+		/// 未签收金额
184
+		/// </summary>
185
+		public decimal F_NoSignMoney
186
+		{
187
+			set { _f_nosignmoney = value; }
188
+			get { return _f_nosignmoney; }
189
+		}
190
+		/// <summary>
191
+		/// 拒收单数
192
+		/// </summary>
193
+		public int F_RefuseNumber
194
+		{
195
+			set { _f_refusenumber = value; }
196
+			get { return _f_refusenumber; }
197
+		}
198
+		/// <summary>
199
+		/// 拒收金额
200
+		/// </summary>
201
+		public decimal F_RefuseMoney
202
+		{
203
+			set { _f_refusemoney = value; }
204
+			get { return _f_refusemoney; }
205
+		}
206
+		/// <summary>
207
+		/// 签收率
208
+		/// </summary>
209
+		public string F_SignRate
210
+		{
211
+			set { _f_signrate = value; }
212
+			get { return _f_signrate; }
213
+		}
214
+		/// <summary>
215
+		/// 录错信息金额
216
+		/// </summary>
217
+		public decimal F_ErrorMoney
218
+		{
219
+			set { _f_errormoney = value; }
220
+			get { return _f_errormoney; }
221
+		}
222
+		/// <summary>
223
+		/// 录错信息单数
224
+		/// </summary>
225
+		public int F_ErrorNumber
226
+		{
227
+			set { _f_errornumber = value; }
228
+			get { return _f_errornumber; }
229
+		}
230
+		/// <summary>
231
+		/// 售后退款金额
232
+		/// </summary>
233
+		public decimal F_AfterMoney
234
+		{
235
+			set { _f_aftermoney = value; }
236
+			get { return _f_aftermoney; }
237
+		}
238
+		/// <summary>
239
+		/// 特殊金额(归属个人的金额,单独计算)
240
+		/// </summary>
241
+		public decimal F_AlongMoney
242
+		{
243
+			set { _f_alongmoney = value; }
244
+			get { return _f_alongmoney; }
245
+		}
246
+		/// <summary>
247
+		/// 任务数
248
+		/// </summary>
249
+		public int F_TaskNumber
250
+		{
251
+			set { _f_tasknumber = value; }
252
+			get { return _f_tasknumber; }
253
+		}
254
+		/// <summary>
255
+		/// 任务完成数
256
+		/// </summary>
257
+		public int F_TaskOverNumber
258
+		{
259
+			set { _f_taskovernumber = value; }
260
+			get { return _f_taskovernumber; }
261
+		}
262
+		/// <summary>
263
+		/// 任务完成比例
264
+		/// </summary>
265
+		public string F_TaskRate
266
+		{
267
+			set { _f_taskrate = value; }
268
+			get { return _f_taskrate; }
269
+		}
270
+		/// <summary>
271
+		/// 改代收金额
272
+		/// </summary>
273
+		public decimal? F_AgentSignMoney
274
+		{
275
+			set { _f_agentsignmoney = value; }
276
+			get { return _f_agentsignmoney; }
277
+		}
278
+		/// <summary>
279
+		/// 团队id 0个人
280
+		/// </summary>
281
+		public int? F_TeamId
282
+		{
283
+			set { _f_teamid = value; }
284
+			get { return _f_teamid; }
285
+		}
286
+		/// <summary>
287
+		/// 0待确认 1有异议  4已确认 5最终已确认
288
+		/// </summary>
289
+		public int F_State
290
+		{
291
+			set { _f_state = value; }
292
+			get { return _f_state; }
293
+		}
294
+		/// <summary>
295
+		/// 有异议或者审核的备注
296
+		/// </summary>
297
+		public string F_StateReamrk
298
+		{
299
+			set { _f_statereamrk = value; }
300
+			get { return _f_statereamrk; }
301
+		}
302
+		#endregion Model
303
+
304
+	}
305
+}
306
+

+ 15 - 0
代码/System.Model/T_Sys_UserAccount.cs

@@ -153,5 +153,20 @@ namespace System.Model
153 153
         /// 删除工号
154 154
         /// </summary>
155 155
         public string F_DeleteBy { get; set; }
156
+
157
+        /// <summary>
158
+        /// 部门名称
159
+        /// </summary>
160
+        public string F_Dept { get; set; }
161
+
162
+        /// <summary>
163
+        /// 团队名称
164
+        /// </summary>
165
+        public string F_Team { get; set; }
166
+
167
+        /// <summary>
168
+        /// 职位名称
169
+        /// </summary>
170
+        public string F_Post { get; set; }
156 171
     }
157 172
 }

+ 13 - 0
代码/System.Repositories/SysUser_GradeRepository.cs

@@ -0,0 +1,13 @@
1
+using System;
2
+using System.Collections.Generic;
3
+using System.Text;
4
+using System.IRepositories;
5
+using System.Model;
6
+using System.Common;
7
+namespace System.Repositories
8
+{
9
+    public class SysUser_GradeRepository : BaseRepository<T_SysUser_Grade>, ISysUser_GradeRepository
10
+    {
11
+    }
12
+
13
+}

+ 1 - 0
代码/TVShoppingCallCenter_ZLJ/Controllers/CallCenter/CallFunctionController.cs

@@ -49,6 +49,7 @@ namespace TVShoppingCallCenter_ZLJ.Controllers.CallCenter
49 49
         /// <param name="tel"></param>
50 50
         /// <param name="type"></param>
51 51
         /// <returns></returns>
52
+        [NonAction]
52 53
         internal async Task<string> GetLocationFunc(string tel, int type = 0)
53 54
         {
54 55
 

+ 1 - 1
代码/TVShoppingCallCenter_ZLJ/Controllers/CallCenter/CallRecordsController.cs

@@ -67,7 +67,7 @@ namespace TVShoppingCallCenter_ZLJ.Controllers.CallCenter
67 67
             #endregion
68 68
 
69 69
             int count = 0;
70
-            PageData<T_Call_CallRecords> pagelist=   await busCallRecordsRepository.GetListByPage(ConditionalModels, new MyPageModel { PageCount= count ,PageIndex= input.pageindex,PageSize=input.pagesize});
70
+            PageData<T_Call_CallRecords> pagelist=   await busCallRecordsRepository.GetListByPage(ConditionalModels, new MyPageModel { PageCount= count ,PageIndex= input.pageindex,PageSize=input.pagesize}, " BeginTime DESC");
71 71
             return Success("成功", pagelist);
72 72
 
73 73
         }

+ 4 - 0
代码/TVShoppingCallCenter_ZLJ/Controllers/MediaCente/MediaCenteController.cs

@@ -564,6 +564,10 @@ namespace TVShoppingCallCenter_ZLJ.Controllers.MediaCente
564 564
                         t_Sys_PlanManagemen.F_BroadcastDuration = it.F_BroadcastDuration;//播出时长
565 565
                         t_Sys_PlanManagemen.F_PlayCount = it.F_PlayCount;//播放次数
566 566
                         t_Sys_PlanManagemen.F_Describe = it.F_Describe;//播放说明
567
+                        if (string.IsNullOrEmpty(it.F_State))
568
+                        {
569
+                            it.F_State = "1";
570
+                        }
567 571
                         t_Sys_PlanManagemen.F_State = int .Parse (it.F_State);//状态
568 572
                         t_Sys_PlanManagemen.F_CreateTime = DateTime.Now;
569 573
                         t_Sys_PlanManagemen.F_CreateUser  = user;

+ 6 - 4
代码/TVShoppingCallCenter_ZLJ/Controllers/Product/ProductController.cs

@@ -554,8 +554,9 @@ namespace TVShoppingCallCenter_ZLJ.Controllers.Product
554 554
             if (ids.Replace(",", "") == "")
555 555
                 return Error("请输入删除id");
556 556
             #endregion
557
-
558
-            if (await _productRepository.Delete(a => ids.Contains("," + a.F_ProductId.ToString() + ",")))
557
+            ids = ids.Trim(',');
558
+            string[] idarry = ids.Split(',');
559
+            if (await _productRepository.Delete(q => idarry.Contains(q.F_ProductId.ToString())))
559 560
             {
560 561
                 return Success("删除商品成功");
561 562
             }
@@ -580,8 +581,9 @@ namespace TVShoppingCallCenter_ZLJ.Controllers.Product
580 581
             if (ids.Replace(",", "") == "")
581 582
                 return Error("请输入删除id");
582 583
             #endregion
583
-
584
-            if (await _productRepository.Delete( q => ids.Contains("," + q.F_ProductId.ToString() + ",")))
584
+            ids = ids.Trim(',');
585
+            string[] idarry = ids.Split(',');
586
+            if (await _productRepository.Delete( q => idarry.Contains(q.F_ProductId.ToString())))
585 587
                 return Success("删除商品成功");
586 588
             else
587 589
                 return Success("删除商品失败");

+ 74 - 0
代码/TVShoppingCallCenter_ZLJ/Controllers/Report/GradeController.cs

@@ -0,0 +1,74 @@
1
+using System;
2
+using System.Collections.Generic;
3
+using System.Common;
4
+using System.IRepositories;
5
+using System.Linq;
6
+using System.Model;
7
+using System.Security.Claims;
8
+using System.Threading.Tasks;
9
+using System.Utility;
10
+using Microsoft.AspNetCore.Authorization;
11
+using Microsoft.AspNetCore.Mvc;
12
+using Microsoft.Extensions.Configuration;
13
+using SqlSugar;
14
+using TVShoppingCallCenter_ZLJ.Models.Inputs;
15
+
16
+namespace TVShoppingCallCenter_ZLJ.Controllers.CallCenter
17
+{
18
+    /// <summary>
19
+    /// 绩效报表
20
+    /// </summary>
21
+    [Authorize]
22
+    [Produces("application/json")]
23
+    [Route("api/[controller]")]
24
+    public class GradeController : BaseController
25
+    {
26
+        private readonly IConfiguration config;
27
+        private readonly ISysUser_GradeRepository busGradeRepository;
28
+        public GradeController(ISysUser_GradeRepository _busGradeRepository, IConfiguration _configuration)
29
+        {
30
+            busGradeRepository = _busGradeRepository;
31
+            config = _configuration;
32
+        }
33
+
34
+/// <summary>
35
+/// 
36
+/// </summary>
37
+/// <param name="input"></param>
38
+/// <returns></returns>
39
+        [HttpPost("getlistbypage")]
40
+        public async Task<IActionResult> GetListByPage(SysUser_GradeInput input)
41
+        {
42
+           
43
+            List<IConditionalModel> ConditionalModels = new List<IConditionalModel>();
44
+            #region 筛选条件
45
+            if (input.SearchStartTime != null)
46
+            {
47
+                ConditionalModels.Add(new ConditionalModel { FieldName = "F_Month", ConditionalType = ConditionalType.GreaterThanOrEqual, FieldValue = input.SearchStartTime.GetValueOrDefault().ToString("yyyyMM") });
48
+            }
49
+            if (input.SearchEndTime != null)
50
+            {
51
+                ConditionalModels.Add(new ConditionalModel { FieldName = "F_Month", ConditionalType = ConditionalType.LessThanOrEqual, FieldValue = input.SearchEndTime.GetValueOrDefault().ToString("yyyyMM") });
52
+            }
53
+            if (!string.IsNullOrEmpty(input.F_UserCode))
54
+            {
55
+                ConditionalModels.Add(new ConditionalModel { FieldName = "F_UserCode", ConditionalType = ConditionalType.Equal, FieldValue = input.F_UserCode });
56
+            }
57
+            if (input.F_DeptId>0)
58
+            {
59
+                ConditionalModels.Add(new ConditionalModel { FieldName = "F_DeptId", ConditionalType = ConditionalType.Equal, FieldValue = input.F_DeptId.ToString() });
60
+            }
61
+            if (input.F_TeamId > 0)
62
+            {
63
+                ConditionalModels.Add(new ConditionalModel { FieldName = "F_TeamId", ConditionalType = ConditionalType.Equal, FieldValue = input.F_TeamId.ToString() });
64
+            }
65
+            #endregion
66
+
67
+            int count = 0;
68
+            PageData<T_SysUser_Grade> pagelist=   await busGradeRepository.GetListByPage(ConditionalModels, new MyPageModel { PageCount= count ,PageIndex= input.pageindex,PageSize=input.pagesize}, " F_TotleMoney DESC");
69
+            return Success("成功", pagelist);
70
+
71
+        }
72
+
73
+    }
74
+}

+ 9 - 6
代码/TVShoppingCallCenter_ZLJ/Controllers/System/DeptmentController.cs

@@ -165,12 +165,15 @@ namespace TVShoppingCallCenter_ZLJ.Controllers.System
165 165
                 List<int> _ids = await GetTreeDeptId(new List<int>(ids));
166 166
                 foreach (var item in _ids)
167 167
                 {
168
-                    var ml = await _sys_departmentRepository.GetSingle(x => x.F_DeptId == item);
169
-                    ml.F_State = (int)EnumDelState.Delete;
170
-                    ml.F_DeleteOn = DateTime.Now.ToLocalTime();
171
-                    ml.F_DeleteBy = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value;
172
-                    if (_sys_departmentRepository.Update(ml).Result)
173
-                        res += 1;
168
+                    if (item > 4)
169
+                    {
170
+                        var ml = await _sys_departmentRepository.GetSingle(x => x.F_DeptId == item);
171
+                        ml.F_State = (int)EnumDelState.Delete;
172
+                        ml.F_DeleteOn = DateTime.Now.ToLocalTime();
173
+                        ml.F_DeleteBy = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value;
174
+                        if (_sys_departmentRepository.Update(ml).Result)
175
+                            res += 1;
176
+                    }
174 177
                 }
175 178
                 if (res == _ids.Count)
176 179
                     return Success("删除部门成功");

+ 55 - 15
代码/TVShoppingCallCenter_ZLJ/Controllers/System/UserAccountController.cs

@@ -22,10 +22,10 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
22 22
         private readonly ISys_UserAccountRepository _sys_useraccountRepository;
23 23
         private readonly ISys_RoleInfoRepository _sys_role_infoRepository;
24 24
         private readonly IConfiguration _configuration;
25
-        public UserAccountController(IConfiguration configuration,ISys_UserAccountRepository sys_useraccountRepository, ISys_RoleInfoRepository sys_role_infoRepository)
25
+        public UserAccountController(IConfiguration configuration, ISys_UserAccountRepository sys_useraccountRepository, ISys_RoleInfoRepository sys_role_infoRepository)
26 26
         {
27 27
             _configuration = configuration;
28
-             _sys_useraccountRepository = sys_useraccountRepository;
28
+            _sys_useraccountRepository = sys_useraccountRepository;
29 29
             _sys_role_infoRepository = sys_role_infoRepository;
30 30
         }
31 31
 
@@ -63,7 +63,7 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
63 63
         }
64 64
 
65 65
         [HttpGet("getlistdrop")]
66
-        public async Task<IActionResult> GetListDropAsync(string deptid, string roleid,string rolecode)
66
+        public async Task<IActionResult> GetListDropAsync(string deptid, string roleid, string rolecode)
67 67
         {
68 68
             List<IConditionalModel> conModels = new List<IConditionalModel>();
69 69
             #region 筛选
@@ -72,9 +72,9 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
72 72
                 conModels.Add(new ConditionalModel() { FieldName = "F_DeptId", ConditionalType = ConditionalType.Equal, FieldValue = deptid });
73 73
             if (!string.IsNullOrEmpty(roleid))
74 74
                 conModels.Add(new ConditionalModel() { FieldName = "F_RoleId", ConditionalType = ConditionalType.Equal, FieldValue = roleid });
75
-            if(!string.IsNullOrEmpty(rolecode))
75
+            if (!string.IsNullOrEmpty(rolecode))
76 76
             {
77
-                var rolemodel=await _sys_role_infoRepository.GetSingle(x => x.F_RoleCode == rolecode && x.F_State == (int)EnumDelState.Enabled);
77
+                var rolemodel = await _sys_role_infoRepository.GetSingle(x => x.F_RoleCode == rolecode && x.F_State == (int)EnumDelState.Enabled);
78 78
                 if (rolemodel != null)
79 79
                     conModels.Add(new ConditionalModel() { FieldName = "F_RoleId", ConditionalType = ConditionalType.Equal, FieldValue = rolemodel.F_RoleId.ToString() });
80 80
                 else
@@ -82,7 +82,8 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
82 82
             }
83 83
             #endregion
84 84
             var list = await _sys_useraccountRepository.GetListALL(conModels, "F_CreateOn desc");
85
-            var result = list.Select(x => new {
85
+            var result = list.Select(x => new
86
+            {
86 87
                 x.F_UserCode,
87 88
                 x.F_UserName,
88 89
                 x.F_DeptId,
@@ -127,8 +128,8 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
127 128
                 return Error("密码不能为空");
128 129
             //if (string.IsNullOrEmpty(input.mobile))
129 130
             //    return Error("手机号码不能为空");
130
-            
131
-            if(await _sys_useraccountRepository.GetCount(p => p.F_UserCode == input.usercode && p.F_DeleteFlag == (int)EnumUserCountState.Enabled) >0)
131
+
132
+            if (await _sys_useraccountRepository.GetCount(p => p.F_UserCode == input.usercode && p.F_DeleteFlag == (int)EnumUserCountState.Enabled) > 0)
132 133
             {
133 134
                 return Error("账号已经存在");
134 135
             }
@@ -165,7 +166,7 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
165 166
             model.F_CreateOn = DateTime.Now;
166 167
 
167 168
             var b = await _sys_useraccountRepository.Add(model);
168
-            if (b>0)
169
+            if (b > 0)
169 170
                 return Success("添加成功");
170 171
             else
171 172
                 return Error("添加失败");
@@ -221,8 +222,8 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
221 222
             bool b = await _sys_useraccountRepository.Update(model);
222 223
             if (b)
223 224
                 return Success("保存成功");
224
-           else
225
-            return Error("保存失败");
225
+            else
226
+                return Error("保存失败");
226 227
         }
227 228
 
228 229
         /// <summary>
@@ -240,7 +241,7 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
240 241
             {
241 242
                 foreach (var item in ids)
242 243
                 {
243
-                    var eq = await _sys_useraccountRepository.GetSingle(p => p.F_UserId == item );
244
+                    var eq = await _sys_useraccountRepository.GetSingle(p => p.F_UserId == item);
244 245
                     if (eq != null)
245 246
                     {
246 247
                         eq.F_DeleteFlag = (int)EnumUserCountState.Delete;
@@ -265,7 +266,7 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
265 266
         public async Task<IActionResult> GetNowUser()
266 267
         {
267 268
             string nowusercode = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Sid).Value;
268
-            var userModel = await _sys_useraccountRepository.GetSingle(u => u.F_UserCode == nowusercode && u.F_DeleteFlag== (int)EnumUserCountState.Enabled);
269
+            var userModel = await _sys_useraccountRepository.GetSingle(u => u.F_UserCode == nowusercode && u.F_DeleteFlag == (int)EnumUserCountState.Enabled);
269 270
             if (userModel == null)
270 271
                 return Error("获取失败");
271 272
             userModel.F_HeadImg = _configuration["appSettings:ApiHost"].ToString() + userModel.F_HeadImg;
@@ -301,7 +302,7 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
301 302
                 return Success("保存成功");
302 303
             return Error("保存失败");
303 304
         }
304
-        
305
+
305 306
         /// <summary>
306 307
         /// 更新头像
307 308
         /// </summary>
@@ -324,7 +325,7 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
324 325
             model.F_HeadImg = headimg;
325 326
             List<T_Sys_UserAccount> list = new List<T_Sys_UserAccount>();
326 327
             list.Add(model);
327
-            bool b = await _sys_useraccountRepository.UpdateListToColumns(list, s=>new { s.F_HeadImg});
328
+            bool b = await _sys_useraccountRepository.UpdateListToColumns(list, s => new { s.F_HeadImg });
328 329
             if (b)
329 330
                 return Success("保存成功");
330 331
             return Error("保存失败");
@@ -358,5 +359,44 @@ namespace TVShoppingCallCenter_ZLJ.Controllers
358 359
                 return Success("更新成功");
359 360
             return Error("更新失败");
360 361
         }
362
+
363
+
364
+        [HttpGet("getseatlist")]
365
+        public async Task<IActionResult> GetSeatList(string usercode, string rolecode, string deptid = "")
366
+        {
367
+            List<IConditionalModel> conModels = new List<IConditionalModel>();
368
+
369
+            if (!string.IsNullOrEmpty(rolecode))
370
+            {
371
+                T_Sys_RoleInfo rolemodelList = await _sys_role_infoRepository.GetFirst(x => x.F_RoleCode == rolecode && x.F_State == (int)EnumDelState.Enabled);
372
+                conModels.Add(new ConditionalModel() { FieldName = "F_SeatFlag", ConditionalType = ConditionalType.Equal, FieldValue = "1" });
373
+            }
374
+
375
+           
376
+            #region 筛选
377
+            conModels.Add(new ConditionalModel() { FieldName = "F_DeleteFlag", ConditionalType = ConditionalType.Equal, FieldValue = ((int)EnumUserCountState.Enabled).ToString() });
378
+            conModels.Add(new ConditionalModel() { FieldName = "F_SeatFlag", ConditionalType = ConditionalType.Equal, FieldValue = "1" });
379
+            if (!string.IsNullOrEmpty(deptid))
380
+                conModels.Add(new ConditionalModel() { FieldName = "F_DeptId", ConditionalType = ConditionalType.Equal, FieldValue = deptid });
381
+            if (!string.IsNullOrEmpty(usercode))
382
+                conModels.Add(new ConditionalModel() { FieldName = "F_UserCode", ConditionalType = ConditionalType.Equal, FieldValue = usercode });
383
+            #endregion
384
+
385
+
386
+            var list = await _sys_useraccountRepository.GetListALL(conModels, "F_CreateOn desc");
387
+            var result = list.Select(x => new
388
+            {
389
+                x.F_UserCode,
390
+                x.F_UserName,
391
+                x.F_DeptId,
392
+                x.F_RoleId,
393
+                x.F_UserId,
394
+                x.F_SeatRight,
395
+                x.F_SeartGroupID,
396
+                x.F_ExtensionNumber
397
+            });
398
+
399
+            return Success("获取成功", result);
400
+        }
361 401
     }
362 402
 }

Plik diff jest za duży
+ 99 - 2
代码/TVShoppingCallCenter_ZLJ/Controllers/hangfire/HangfireController.cs


+ 300 - 0
代码/TVShoppingCallCenter_ZLJ/Models/Inputs/SysUser/SysUser_GradeInput.cs

@@ -0,0 +1,300 @@
1
+using System;
2
+using System.Collections.Generic;
3
+using System.Linq;
4
+using System.Threading.Tasks;
5
+
6
+namespace TVShoppingCallCenter_ZLJ.Models.Inputs
7
+{
8
+	/// <summary>
9
+	/// 绩效表输入
10
+	/// </summary>
11
+	[Serializable]
12
+	public partial class SysUser_GradeInput : BaseInput
13
+	{
14
+		public SysUser_GradeInput()
15
+		{ }
16
+		#region Model
17
+		private string _f_id;
18
+		private string _f_username;
19
+		private int? _f_userid;
20
+		private string _f_usercode;
21
+		private DateTime _f_addtime;
22
+		private string _f_dept;
23
+		private int _f_deptid;
24
+		private string _f_post;
25
+		private int _f_postid;
26
+		private string _f_type;
27
+		private string _f_month;
28
+		private int _f_sendtotlenumber = 0;
29
+		private decimal _f_totlemoney = 0.00M;
30
+		private int _f_signnumber;
31
+		private decimal _f_signmoney = 0.00M;
32
+		private int _f_nosignnumber = 0;
33
+		private decimal _f_nosignmoney;
34
+		private int _f_refusenumber = 0;
35
+		private decimal _f_refusemoney = 0.00M;
36
+		private string _f_signrate;
37
+		private decimal _f_errormoney = 0.00M;
38
+		private int _f_errornumber;
39
+		private decimal _f_aftermoney = 0.00M;
40
+		private decimal _f_alongmoney;
41
+		private int _f_tasknumber;
42
+		private int _f_taskovernumber;
43
+		private string _f_taskrate;
44
+		private decimal? _f_agentsignmoney;
45
+		private int? _f_teamid = 0;
46
+		private int _f_state;
47
+		private string _f_statereamrk;
48
+		/// <summary>
49
+		/// 绩效表ID
50
+		/// </summary>
51
+		public string F_Id
52
+		{
53
+			set { _f_id = value; }
54
+			get { return _f_id; }
55
+		}
56
+		/// <summary>
57
+		/// 员工姓名
58
+		/// </summary>
59
+		public string F_UserName
60
+		{
61
+			set { _f_username = value; }
62
+			get { return _f_username; }
63
+		}
64
+		/// <summary>
65
+		/// 员工ID
66
+		/// </summary>
67
+		public int? F_UserId
68
+		{
69
+			set { _f_userid = value; }
70
+			get { return _f_userid; }
71
+		}
72
+		/// <summary>
73
+		/// 员工工号
74
+		/// </summary>
75
+		public string F_UserCode
76
+		{
77
+			set { _f_usercode = value; }
78
+			get { return _f_usercode; }
79
+		}
80
+		/// <summary>
81
+		/// 添加时间
82
+		/// </summary>
83
+		public DateTime F_AddTime
84
+		{
85
+			set { _f_addtime = value; }
86
+			get { return _f_addtime; }
87
+		}
88
+		/// <summary>
89
+		/// 部门
90
+		/// </summary>
91
+		public string F_Dept
92
+		{
93
+			set { _f_dept = value; }
94
+			get { return _f_dept; }
95
+		}
96
+		/// <summary>
97
+		/// 部门ID
98
+		/// </summary>
99
+		public int F_DeptId
100
+		{
101
+			set { _f_deptid = value; }
102
+			get { return _f_deptid; }
103
+		}
104
+		/// <summary>
105
+		/// 职位
106
+		/// </summary>
107
+		public string F_Post
108
+		{
109
+			set { _f_post = value; }
110
+			get { return _f_post; }
111
+		}
112
+		/// <summary>
113
+		/// 职务ID
114
+		/// </summary>
115
+		public int F_PostId
116
+		{
117
+			set { _f_postid = value; }
118
+			get { return _f_postid; }
119
+		}
120
+		/// <summary>
121
+		/// 统计类型:当月业绩
122
+		/// </summary>
123
+		public string F_Type
124
+		{
125
+			set { _f_type = value; }
126
+			get { return _f_type; }
127
+		}
128
+		/// <summary>
129
+		/// 统计月份 例如:202007
130
+		/// </summary>
131
+		public string F_Month
132
+		{
133
+			set { _f_month = value; }
134
+			get { return _f_month; }
135
+		}
136
+		/// <summary>
137
+		/// 发货单总数
138
+		/// </summary>
139
+		public int F_SendTotleNumber
140
+		{
141
+			set { _f_sendtotlenumber = value; }
142
+			get { return _f_sendtotlenumber; }
143
+		}
144
+		/// <summary>
145
+		/// 总金额
146
+		/// </summary>
147
+		public decimal F_TotleMoney
148
+		{
149
+			set { _f_totlemoney = value; }
150
+			get { return _f_totlemoney; }
151
+		}
152
+		/// <summary>
153
+		/// 签收单数
154
+		/// </summary>
155
+		public int F_SignNumber
156
+		{
157
+			set { _f_signnumber = value; }
158
+			get { return _f_signnumber; }
159
+		}
160
+		/// <summary>
161
+		/// 签收金额
162
+		/// </summary>
163
+		public decimal F_SignMoney
164
+		{
165
+			set { _f_signmoney = value; }
166
+			get { return _f_signmoney; }
167
+		}
168
+		/// <summary>
169
+		/// 未签收单数
170
+		/// </summary>
171
+		public int F_NoSignNumber
172
+		{
173
+			set { _f_nosignnumber = value; }
174
+			get { return _f_nosignnumber; }
175
+		}
176
+		/// <summary>
177
+		/// 未签收金额
178
+		/// </summary>
179
+		public decimal F_NoSignMoney
180
+		{
181
+			set { _f_nosignmoney = value; }
182
+			get { return _f_nosignmoney; }
183
+		}
184
+		/// <summary>
185
+		/// 拒收单数
186
+		/// </summary>
187
+		public int F_RefuseNumber
188
+		{
189
+			set { _f_refusenumber = value; }
190
+			get { return _f_refusenumber; }
191
+		}
192
+		/// <summary>
193
+		/// 拒收金额
194
+		/// </summary>
195
+		public decimal F_RefuseMoney
196
+		{
197
+			set { _f_refusemoney = value; }
198
+			get { return _f_refusemoney; }
199
+		}
200
+		/// <summary>
201
+		/// 签收率
202
+		/// </summary>
203
+		public string F_SignRate
204
+		{
205
+			set { _f_signrate = value; }
206
+			get { return _f_signrate; }
207
+		}
208
+		/// <summary>
209
+		/// 录错信息金额
210
+		/// </summary>
211
+		public decimal F_ErrorMoney
212
+		{
213
+			set { _f_errormoney = value; }
214
+			get { return _f_errormoney; }
215
+		}
216
+		/// <summary>
217
+		/// 录错信息单数
218
+		/// </summary>
219
+		public int F_ErrorNumber
220
+		{
221
+			set { _f_errornumber = value; }
222
+			get { return _f_errornumber; }
223
+		}
224
+		/// <summary>
225
+		/// 售后退款金额
226
+		/// </summary>
227
+		public decimal F_AfterMoney
228
+		{
229
+			set { _f_aftermoney = value; }
230
+			get { return _f_aftermoney; }
231
+		}
232
+		/// <summary>
233
+		/// 特殊金额(归属个人的金额,单独计算)
234
+		/// </summary>
235
+		public decimal F_AlongMoney
236
+		{
237
+			set { _f_alongmoney = value; }
238
+			get { return _f_alongmoney; }
239
+		}
240
+		/// <summary>
241
+		/// 任务数
242
+		/// </summary>
243
+		public int F_TaskNumber
244
+		{
245
+			set { _f_tasknumber = value; }
246
+			get { return _f_tasknumber; }
247
+		}
248
+		/// <summary>
249
+		/// 任务完成数
250
+		/// </summary>
251
+		public int F_TaskOverNumber
252
+		{
253
+			set { _f_taskovernumber = value; }
254
+			get { return _f_taskovernumber; }
255
+		}
256
+		/// <summary>
257
+		/// 任务完成比例
258
+		/// </summary>
259
+		public string F_TaskRate
260
+		{
261
+			set { _f_taskrate = value; }
262
+			get { return _f_taskrate; }
263
+		}
264
+		/// <summary>
265
+		/// 改代收金额
266
+		/// </summary>
267
+		public decimal? F_AgentSignMoney
268
+		{
269
+			set { _f_agentsignmoney = value; }
270
+			get { return _f_agentsignmoney; }
271
+		}
272
+		/// <summary>
273
+		/// 团队id 0个人
274
+		/// </summary>
275
+		public int? F_TeamId
276
+		{
277
+			set { _f_teamid = value; }
278
+			get { return _f_teamid; }
279
+		}
280
+		/// <summary>
281
+		/// 0待确认 1有异议  4已确认 5最终已确认
282
+		/// </summary>
283
+		public int F_State
284
+		{
285
+			set { _f_state = value; }
286
+			get { return _f_state; }
287
+		}
288
+		/// <summary>
289
+		/// 有异议或者审核的备注
290
+		/// </summary>
291
+		public string F_StateReamrk
292
+		{
293
+			set { _f_statereamrk = value; }
294
+			get { return _f_statereamrk; }
295
+		}
296
+		#endregion Model
297
+
298
+	}
299
+}
300
+

+ 1 - 0
代码/TVShoppingCallCenter_ZLJ/Models/Inputs/System/UserAccountInput.cs

@@ -104,5 +104,6 @@ namespace TVShoppingCallCenter_ZLJ.Models.Inputs
104 104
         /// 离职日期
105 105
         /// </summary>
106 106
         public DateTime termdate { get; set; }
107
+
107 108
     }
108 109
 }

代码/TVShoppingCallCenter_ZLJ/Models/Inputs/VIPInfoInput.cs → 代码/TVShoppingCallCenter_ZLJ/Models/Inputs/Vip/VIPInfoInput.cs


代码/TVShoppingCallCenter_ZLJ/Models/Inputs/VipLabelInfoInput.cs → 代码/TVShoppingCallCenter_ZLJ/Models/Inputs/Vip/VipLabelInfoInput.cs


+ 4 - 2
代码/TVShoppingCallCenter_ZLJ/Startup.cs

@@ -236,7 +236,7 @@ namespace TVShoppingCallCenter_ZLJ
236 236
 
237 237
             app.UseHangfireServer(new BackgroundJobServerOptions
238 238
             {
239
-                Queues = new[] { "birthday", "minutely" },//队列名称,只能为小写
239
+                Queues = new[] { "daily", "minutely", "monthly", "month12" },//队列名称,只能为小写
240 240
                 WorkerCount = Environment.ProcessorCount * 3, //并发任务数
241 241
                 ServerName = "hangfireMysql",//服务器名称
242 242
             });//启动Hangfire服务  有可选参数
@@ -246,8 +246,10 @@ namespace TVShoppingCallCenter_ZLJ
246 246
                     Authorization = new[] { new HangfireAuthorizationFilter() }
247 247
                 });//启动hangfire面板 有可选参数
248 248
 
249
-            RecurringJob.AddOrUpdate<HangfireController>(a => a.AddOrder(), Cron.Daily, TimeZoneInfo.Local, "birthday");
249
+            RecurringJob.AddOrUpdate<HangfireController>(a => a.AddOrder(), Cron.Daily, TimeZoneInfo.Local, "daily");
250 250
             RecurringJob.AddOrUpdate<HangfireController>(a => a.SyncCallRecord(), Cron.Minutely, TimeZoneInfo.Local, "minutely");
251
+            //秒 分 时 日   *每
252
+            //RecurringJob.AddOrUpdate<HangfireController>(a => a.Month12Recurring(), "0 0 0 12 * ?", TimeZoneInfo.Local, "month12");
251 253
             #region steeltoe
252 254
             //app.UseDiscoveryClient();
253 255
             #endregion