yuqian лет назад: 8
Родитель
Сommit
6364b8a1b1

+ 1 - 0
CallCenterApi/CallCenterApi.BLL/CallCenterApi.BLL.csproj

@@ -52,6 +52,7 @@
52 52
     <Compile Include="T_Call_CallRecords_QC.cs" />
53 53
     <Compile Include="T_Call_LeaveRecord.cs" />
54 54
     <Compile Include="T_Call_PageField.cs" />
55
+    <Compile Include="T_Call_PageTemp.cs" />
55 56
     <Compile Include="T_Call_TaskTelNum.cs" />
56 57
     <Compile Include="T_Call_WorkOrder.cs" />
57 58
     <Compile Include="T_Call_ZBDH.cs" />

+ 8 - 0
CallCenterApi/CallCenterApi.BLL/T_Call_PageField.cs

@@ -46,6 +46,14 @@ namespace CallCenterApi.BLL
46 46
             return dal.UpdateByTaskId(taskId);
47 47
         }
48 48
 
49
+
50
+        /// <summary>
51
+        /// 更新多条数据
52
+        /// </summary>
53
+        public bool UpdateByTempId(int tempId)
54
+        {
55
+            return dal.UpdateByTempId(tempId);
56
+        }
49 57
         /// <summary>
50 58
         /// 删除一条数据
51 59
         /// </summary>

+ 51 - 0
CallCenterApi/CallCenterApi.BLL/T_Call_PageTemp.cs

@@ -0,0 +1,51 @@
1
+using System;
2
+using System.Collections.Generic;
3
+using System.Linq;
4
+using System.Text;
5
+using System.Threading.Tasks;
6
+
7
+namespace CallCenterApi.BLL
8
+{
9
+    public class T_Call_PageTemp
10
+    {
11
+        private readonly DAL.T_Call_PageTemp dal = new DAL.T_Call_PageTemp();
12
+        private readonly DAL.T_Call_PageField dalPageField = new DAL.T_Call_PageField();
13
+        public T_Call_PageTemp()
14
+        { }
15
+
16
+        #region  Method
17
+        /// <summary>
18
+        /// 增加一条数据
19
+        /// </summary>
20
+        public int Add(Model.T_Call_PageTemp model)
21
+        {
22
+            return dal.Add(model);
23
+        }
24
+
25
+        /// <summary>
26
+        /// 修改一条数据
27
+        /// </summary>
28
+        public bool Update(Model.T_Call_PageTemp model)
29
+        {
30
+            return dal.Update(model) > 0;
31
+        }
32
+
33
+        /// <summary>
34
+        /// 获取一条数据
35
+        /// </summary>
36
+        public Model.T_Call_PageTemp GetModel(int id)
37
+        {
38
+            return dal.GetModel(id);
39
+        }
40
+        /// <summary>
41
+        /// 删除一条数据
42
+        /// </summary>
43
+        public bool Delete(int F_Id)
44
+        {
45
+            dalPageField.DeleteByTempId(F_Id);
46
+            dal.Delete(F_Id);
47
+            return true;
48
+        }
49
+        #endregion  Method
50
+    }
51
+}

+ 1 - 0
CallCenterApi/CallCenterApi.DAL/CallCenterApi.DAL.csproj

@@ -52,6 +52,7 @@
52 52
     <Compile Include="T_Call_CallRecords_QC.cs" />
53 53
     <Compile Include="T_Call_LeaveRecord.cs" />
54 54
     <Compile Include="T_Call_PageField.cs" />
55
+    <Compile Include="T_Call_PageTemp.cs" />
55 56
     <Compile Include="T_Call_TaskTelNum.cs" />
56 57
     <Compile Include="T_Call_WorkOrder.cs" />
57 58
     <Compile Include="T_Call_ZBDH.cs" />

+ 42 - 4
CallCenterApi/CallCenterApi.DAL/T_Call_PageField.cs

@@ -40,21 +40,24 @@ namespace CallCenterApi.DAL
40 40
         {
41 41
             StringBuilder strSql = new StringBuilder();
42 42
             strSql.Append("insert into T_Call_PageField(");
43
-            strSql.Append("F_TaskId,F_FeildId,F_Name,F_DBFieldlName,F_Sort)");
43
+            strSql.Append("F_TaskId,F_FeildId,F_Name,F_DBFieldlName,F_Sort,F_TempId)");
44 44
             strSql.Append(" values (");
45
-            strSql.Append("@F_TaskId,@F_FeildId,@F_Name,@F_DBFieldlName,@F_Sort)");
45
+            strSql.Append("@F_TaskId,@F_FeildId,@F_Name,@F_DBFieldlName,@F_Sort,@F_TempId)");
46 46
             strSql.Append(";select @@IDENTITY");
47 47
             SqlParameter[] parameters = {
48 48
                     new SqlParameter("@F_TaskId", SqlDbType.Int,4),
49 49
                     new SqlParameter("@F_FeildId", SqlDbType.Int,4),
50 50
                     new SqlParameter("@F_Name", SqlDbType.NVarChar,50),
51 51
                     new SqlParameter("@F_DBFieldlName", SqlDbType.NVarChar,50),
52
-                    new SqlParameter("@F_Sort", SqlDbType.Int,4)};
52
+                    new SqlParameter("@F_Sort", SqlDbType.Int,4),
53
+                    new SqlParameter("@F_TempId", SqlDbType.Int,8)
54
+            };
53 55
             parameters[0].Value = model.F_TaskId;
54 56
             parameters[1].Value = model.F_FeildId;
55 57
             parameters[2].Value = model.F_Name;
56 58
             parameters[3].Value = model.F_DBFieldlName;
57 59
             parameters[4].Value = model.F_Sort;
60
+            parameters[5].Value = model.F_TempId;
58 61
 
59 62
             object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
60 63
             if (obj == null)
@@ -124,6 +127,24 @@ namespace CallCenterApi.DAL
124 127
         }
125 128
 
126 129
         /// <summary>
130
+        /// 更新多条数据
131
+        /// </summary>
132
+        public bool UpdateByTempId(int tempId)
133
+        {
134
+            StringBuilder strSql = new StringBuilder();
135
+            strSql.Append("UPDATE  T_Call_PageField set F_TaskId=0,F_TempId=@F_TempId WHERE  F_TaskId=-1");
136
+            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), new SqlParameter("@F_TempId", tempId));
137
+            if (rows > 0)
138
+            {
139
+                return true;
140
+            }
141
+            else
142
+            {
143
+                return false;
144
+            }
145
+        }
146
+
147
+        /// <summary>
127 148
         /// 删除一条数据
128 149
         /// </summary>
129 150
         public bool Delete(int F_Id)
@@ -183,7 +204,24 @@ namespace CallCenterApi.DAL
183 204
                 return false;
184 205
             }
185 206
         }
186
-
207
+        /// <summary>
208
+        /// 批量删除数据
209
+        /// </summary>
210
+        public bool DeleteByTempId(int tempId)
211
+        {
212
+            StringBuilder strSql = new StringBuilder();
213
+            strSql.Append("delete from T_Call_PageField ");
214
+            strSql.Append(" where F_TempId=" + tempId);
215
+            int rows = DbHelperSQL.ExecuteSql(strSql.ToString());
216
+            if (rows > 0)
217
+            {
218
+                return true;
219
+            }
220
+            else
221
+            {
222
+                return false;
223
+            }
224
+        }
187 225
 
188 226
         /// <summary>
189 227
         /// 得到一个对象实体

+ 110 - 0
CallCenterApi/CallCenterApi.DAL/T_Call_PageTemp.cs

@@ -0,0 +1,110 @@
1
+using CallCenterApi.DB;
2
+using System;
3
+using System.Collections.Generic;
4
+using System.Data;
5
+using System.Data.SqlClient;
6
+using System.Linq;
7
+using System.Text;
8
+using System.Threading.Tasks;
9
+
10
+namespace CallCenterApi.DAL
11
+{
12
+    public class T_Call_PageTemp
13
+    {
14
+        public T_Call_PageTemp()
15
+        { }
16
+        #region  Method
17
+
18
+        /// <summary>
19
+        /// 增加一条数据
20
+        /// </summary>
21
+        public int Add(Model.T_Call_PageTemp model)
22
+        {
23
+            StringBuilder strSql = new StringBuilder();
24
+            strSql.Append("insert into T_Call_PageTemp(");
25
+            strSql.Append("F_Name)");
26
+            strSql.Append(" values (");
27
+            strSql.Append("@F_Name)");
28
+            strSql.Append(";select @@IDENTITY");
29
+            SqlParameter[] parameters = {
30
+                    new SqlParameter("@F_Name",System.Data.SqlDbType.NVarChar,300),
31
+                };
32
+            parameters[0].Value = model.F_Name;
33
+            object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
34
+            if (obj == null)
35
+            {
36
+                return 0;
37
+            }
38
+            else
39
+            {
40
+                return Convert.ToInt32(obj);
41
+            }
42
+        }
43
+
44
+        /// <summary>
45
+        /// 修改一条数据
46
+        /// </summary>
47
+        public int Update(Model.T_Call_PageTemp model)
48
+        {
49
+            StringBuilder strSql = new StringBuilder();
50
+            strSql.Append("Update T_Call_PageTemp Set F_Name=@F_Name where F_Id=@F_Id");
51
+
52
+            SqlParameter[] parameters = {
53
+                    new SqlParameter("@F_Name",System.Data.SqlDbType.NVarChar,300),
54
+                    new SqlParameter("@F_Id",System.Data.SqlDbType.Int,8),
55
+                };
56
+            parameters[0].Value = model.F_Name;
57
+            parameters[1].Value = model.F_Id;
58
+            return DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
59
+        }
60
+
61
+        /// <summary>
62
+        /// 删除一条数据
63
+        /// </summary>
64
+        public bool Delete(int F_Id)
65
+        {
66
+
67
+            StringBuilder strSql = new StringBuilder();
68
+            strSql.Append("delete from T_Call_PageTemp where F_Id=@F_Id");
69
+            strSql.Append("");
70
+            SqlParameter[] parameters = {
71
+                    new SqlParameter("@F_Id", SqlDbType.Int,4)
72
+            };
73
+            parameters[0].Value = F_Id;
74
+
75
+            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
76
+            if (rows > 0)
77
+            {
78
+                return true;
79
+            }
80
+            else
81
+            {
82
+                return false;
83
+            }
84
+        }
85
+
86
+        /// <summary>
87
+        /// 获取一条数据
88
+        /// </summary>
89
+        public Model.T_Call_PageTemp GetModel(int id)
90
+        {
91
+
92
+            StringBuilder strSql = new StringBuilder();
93
+            strSql.Append("select * from T_Call_PageTemp where F_Id=@F_Id");
94
+            strSql.Append("");
95
+            SqlParameter[] parameters = {
96
+                    new SqlParameter("@F_Id", SqlDbType.Int,4)
97
+            };
98
+            parameters[0].Value = id;
99
+
100
+            var dt = DbHelperSQL.Query(strSql.ToString(), parameters).Tables[0];
101
+            var model = new Model.T_Call_PageTemp();
102
+            model.F_Id = Convert.ToInt32(dt.Rows[0]["F_Id"]);
103
+            model.F_Name = dt.Rows[0]["F_Name"] == DBNull.Value ? "" : dt.Rows[0]["F_Name"].ToString();
104
+            return model;
105
+        }
106
+
107
+
108
+        #endregion  Method
109
+    }
110
+}

+ 22 - 3
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/callout/CallPlanController.cs

@@ -253,7 +253,26 @@ namespace CallCenterApi.Interface.Controllers.callout
253 253
                 {
254 254
                     try
255 255
                     {
256
-                        pageFieldBLL.UpdateByTaskId(taskId);
256
+                        if (input.TempId > 0)
257
+                        {
258
+                            var fields = pageFieldBLL.DataTableToList(pageFieldBLL.GetList($" F_TaskId=0 and  F_TempId={input.TempId}").Tables[0]);
259
+                            foreach (var item in fields)
260
+                            {
261
+                                pageFieldBLL.Add(new T_Call_PageField()
262
+                                {
263
+                                    F_Name = item.F_Name,
264
+                                    F_FeildId = item.F_FeildId,
265
+                                    F_TaskId = (int)taskId,
266
+                                    F_Sort = item.F_Sort,
267
+                                    F_DBFieldlName = item.F_DBFieldlName
268
+                                });
269
+                            }
270
+                        }
271
+                        else
272
+                        {
273
+                            pageFieldBLL.UpdateByTaskId(taskId);
274
+                        }
275
+
257 276
 
258 277
 
259 278
 
@@ -738,8 +757,8 @@ namespace CallCenterApi.Interface.Controllers.callout
738 757
             if (Request.Files.Count <= 0)
739 758
                 return Error("请正确上传Excel文件");
740 759
             var file = Request.Files[0];
741
-            if (!file.ContentType.Equals("application/vnd.ms-excel") && !file.ContentType.Equals("application/x-xls"))
742
-                return Error("请正确上传Excel文件");
760
+            if (!file.ContentType.Equals("application/vnd.ms-excel") && !file.ContentType.Equals("application/x-xls") && !file.ContentType.Equals("application/x-xlsx") && !file.ContentType.Equals("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"))
761
+                return Error($"请正确上传Excel文件:file.ContentType={file.ContentType}");
743 762
             var filePath = "";
744 763
             NPOIHelper npoi = new NPOIHelper();
745 764
             var dt = npoi.ExcelToTable(file, 0, out filePath);

+ 52 - 29
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Controllers/callout/ExcelTmpController.cs

@@ -1,4 +1,5 @@
1 1
 using CallCenter.Utility;
2
+using CallCenterApi.DB;
2 3
 using CallCenterApi.Interface.Controllers.Base;
3 4
 using CallCenterApi.Interface.Models.Filter;
4 5
 using CallCenterApi.Model;
@@ -14,7 +15,7 @@ namespace CallCenterApi.Interface.Controllers.callout
14 15
     {
15 16
         private readonly BLL.T_Form_EntityAttribute formEntityAttrBLL = new BLL.T_Form_EntityAttribute();
16 17
         private readonly BLL.T_Call_PageField pageFieldBLL = new BLL.T_Call_PageField();
17
-
18
+        private readonly BLL.T_Call_PageTemp pageTempBLL = new BLL.T_Call_PageTemp();
18 19
         /// <summary>
19 20
         /// 获取所有自定义字段
20 21
         /// </summary>
@@ -70,6 +71,10 @@ namespace CallCenterApi.Interface.Controllers.callout
70 71
             {
71 72
                 sql += " and [F_TaskId]=" + filter.TaskId + " ";
72 73
             }
74
+            else if (filter.TaskId == 0 && filter.TempId > 0)
75
+            {
76
+                sql += " and [F_TaskId]=0 and F_TempId=" + filter.TempId;
77
+            }
73 78
             else
74 79
             {
75 80
                 sql += " and [F_TaskId]=-1 ";
@@ -159,7 +164,7 @@ namespace CallCenterApi.Interface.Controllers.callout
159 164
         /// <param name="ids"></param>
160 165
         /// <param name="taskId"></param>
161 166
         /// <returns></returns>
162
-        public ActionResult Add(int[] ids, int taskId)
167
+        public ActionResult Add(int[] ids, int taskId, int tempId)
163 168
         {
164 169
             if (ids == null)
165 170
                 return Error("");
@@ -172,41 +177,16 @@ namespace CallCenterApi.Interface.Controllers.callout
172 177
                 var itemmodel = new T_Call_PageField();
173 178
                 itemmodel.F_Name = fieldmodel.F_Name;
174 179
                 itemmodel.F_DBFieldlName = fieldmodel.F_DBFieldlName;
175
-                itemmodel.F_TaskId = taskId;
180
+                itemmodel.F_TaskId = tempId > 0 ? 0 : taskId;
176 181
                 itemmodel.F_Sort = sort++;
177 182
                 itemmodel.F_FeildId = id;
183
+                itemmodel.F_TempId = tempId;
178 184
                 if (pageFieldBLL.Add(itemmodel) > 0)
179 185
                     continue;
180 186
             }
181 187
             return Success("添加成功");
182 188
         }
183 189
 
184
-        ///// <summary>
185
-        ///// 去除自定义字段
186
-        ///// </summary>
187
-        ///// <param name="ids"></param>
188
-        ///// <returns></returns>
189
-        //public ActionResult Remove(int[] ids, int taskId)
190
-        //{
191
-        //    pageFieldBLL.DeleteByTaskId(taskId);
192
-        //    var sort = 0;
193
-        //    foreach (var id in ids)
194
-        //    {
195
-        //        var fieldmodel = formEntityAttrBLL.GetModel(id);
196
-        //        if (fieldmodel == null)
197
-        //            continue;
198
-        //        var itemmodel = new T_Call_PageField();
199
-        //        itemmodel.F_Name = fieldmodel.F_Name;
200
-        //        itemmodel.F_DBFieldlName = fieldmodel.F_DBFieldlName;
201
-        //        itemmodel.F_TaskId = taskId;
202
-        //        itemmodel.F_Sort = sort++;
203
-        //        itemmodel.F_FeildId = id;
204
-        //        if (pageFieldBLL.Add(itemmodel) > 0)
205
-        //            continue;
206
-        //    }
207
-        //    return Success("删除成功");
208
-        //}
209
-
210 190
         /// <summary>
211 191
         /// 去除自定义字段
212 192
         /// </summary>
@@ -237,5 +217,48 @@ namespace CallCenterApi.Interface.Controllers.callout
237 217
                 return Success("修改成功");
238 218
             return Error("修改失败");
239 219
         }
220
+
221
+        public ActionResult AddTemp(int id = 0, string name = "")
222
+        {
223
+            if (string.IsNullOrWhiteSpace(name))
224
+                return Error("请填写模板名称");
225
+            T_Call_PageTemp model = new T_Call_PageTemp();
226
+            if (id <= 0)
227
+            {
228
+                model = new T_Call_PageTemp
229
+                {
230
+                    F_Name = name
231
+                };
232
+                id = pageTempBLL.Add(model);
233
+                if (id > 0)
234
+                {
235
+                    pageFieldBLL.UpdateByTempId(id);
236
+                }
237
+                return Success("");
238
+            }
239
+            model = pageTempBLL.GetModel(id);
240
+            model.F_Name = name;
241
+            if (pageTempBLL.Update(model))
242
+                return Success("");
243
+            return Error("");
244
+        }
245
+
246
+        public ActionResult GetAllTemp()
247
+        {
248
+            var dt = DbHelperSQL.Query("SELECT F_ID,F_Name from T_Call_PageTemp").Tables[0];
249
+            return Success("", dt);
250
+        }
251
+
252
+        public ActionResult DeleteTemp(int id)
253
+        {
254
+            if (id <= 0)
255
+                return Error("请选择需要删除的模板");
256
+            if (pageTempBLL.Delete(id))
257
+                return Success("");
258
+            return Error("删除失败");
259
+        }
260
+
261
+
262
+
240 263
     }
241 264
 }

+ 1 - 0
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Models/Filter/FilterExcelTmp.cs

@@ -10,5 +10,6 @@ namespace CallCenterApi.Interface.Models.Filter
10 10
     {
11 11
         public long TaskId { get; set; } = 0;
12 12
         public int Type { get; set; } = 0;
13
+        public int TempId { get; set; } = 0;
13 14
     }
14 15
 }

+ 1 - 0
CallCenterApi/CallCenterApi.Interface/CallCenterApi.Interface/Models/Input/CallPlanInput.cs

@@ -92,6 +92,7 @@ namespace CallCenterApi.Interface.Models.Input
92 92
         /// </summary>
93 93
         public string FilePath { get; set; }
94 94
         public string SelectIds { get; set; }
95
+        public int TempId { get; set; } = 0;
95 96
 
96 97
     }
97 98
 }

+ 1 - 0
CallCenterApi/CallCenterApi.Model/CallCenterApi.Model.csproj

@@ -56,6 +56,7 @@
56 56
     <Compile Include="T_Call_CallRecords_QC.cs" />
57 57
     <Compile Include="T_Call_LeaveRecord.cs" />
58 58
     <Compile Include="T_Call_PageField.cs" />
59
+    <Compile Include="T_Call_PageTemp.cs" />
59 60
     <Compile Include="T_Call_TaskTelNum.cs" />
60 61
     <Compile Include="T_Call_TaskTelNumRes.cs" />
61 62
     <Compile Include="T_Call_WorkOrder.cs" />

+ 1 - 0
CallCenterApi/CallCenterApi.Model/T_Call_PageField.cs

@@ -68,6 +68,7 @@ namespace CallCenterApi.Model
68 68
             set { _f_sort = value; }
69 69
             get { return _f_sort; }
70 70
         }
71
+        public int? F_TempId { get; set; }
71 72
         #endregion Model
72 73
 
73 74
     }

+ 14 - 0
CallCenterApi/CallCenterApi.Model/T_Call_PageTemp.cs

@@ -0,0 +1,14 @@
1
+using System;
2
+using System.Collections.Generic;
3
+using System.Linq;
4
+using System.Text;
5
+using System.Threading.Tasks;
6
+
7
+namespace CallCenterApi.Model
8
+{
9
+    public class T_Call_PageTemp
10
+    {
11
+        public int F_Id { get; set; }
12
+        public string F_Name { get; set; }
13
+    }
14
+}