Просмотр исходного кода

核价后台: 1、业务取消下单时,业务补充审核的无法取消下单
2、保存床垫报价时,已业务下单的,无法保存
3、复制床垫报价时,清空相关字段信息

chen_yjin 1 день назад
Родитель
Сommit
bd1bf4678d

+ 1 - 0
JLHHJSvr/DataStore/web_mattress.xml

@@ -163,6 +163,7 @@
 		<field field="dannum_cost4" datatype="number">小单金额</field>
 		<field field="foreign_cost" datatype="number">外币价</field>
 		<field field="packtype">包装方式</field>
+		<field field="cabinet_type" width="100">柜型</field>
 		<field field="packqty" datatype="number">压包数量</field>
 		<field field="woodpallettype" datatype="checkbox">木托方式</field>
 		<field field="dijia_cost" datatype="number">底价</field>

+ 3 - 1
JLHHJSvr/DataStore/web_mattress_subspecs.xml

@@ -10,7 +10,9 @@
 			parentid,
 			ISNULL(vv_mattress.mtrlid, 0) AS mtrlid,
 			ISNULL(u_bednetmx.spring_qty_width, 0) AS spring_qty_width,
-			ISNULL(u_bednetmx.spring_qty_length, 0) AS spring_qty_length
+			ISNULL(u_bednetmx.spring_qty_length, 0) AS spring_qty_length,
+			u_mattress.erp_mtrlid,
+			u_mattress.erp_mtrlcode
 		FROM u_mattress
 		LEFT OUTER JOIN (
 			SELECT

+ 1 - 1
JLHHJSvr/Excutor/ReCalculateERPCostExcutor.cs

@@ -78,7 +78,7 @@ namespace JLHHJSvr.Excutor
 
                                 if (mattress_temp.erp_mtrlid > 0)
                                 {
-                                    string errmsg = l1Helper.SaveMtrldef(mattress_temp);
+                                    string errmsg = l1Helper.SaveMtrldef(mattress_temp, null, "dijia_cost1,dijia_cost2,dijia_cost3,dijia_cost4");
                                     if (!string.IsNullOrEmpty(errmsg)) throw new LJCommonException(errmsg);
                                 }
 

+ 6 - 1
JLHHJSvr/Excutor/SaveMattressAuditingExcutor.cs

@@ -42,7 +42,7 @@ namespace JLHHJSvr.Excutor
                         foreach (int itemid in request.mattressids)
                         {
                             var mattressInfo = new u_mattress() { mattressid = itemid };
-                            if (DbSqlHelper.SelectOne(cmd, mattressInfo, "flag, xd_flag, mattresscode, parentid") != 1)
+                            if (DbSqlHelper.SelectOne(cmd, mattressInfo, "flag, xd_flag, yw_flag, mattresscode, parentid") != 1)
                             {
                                 rslt.ErrMsg = "查找报价单据失败:" + itemid;
                                 return;
@@ -123,6 +123,11 @@ namespace JLHHJSvr.Excutor
                                         rslt.ErrMsg = "未进行业务下单,不能取消下单!(" + mattressInfo.mattresscode + ")";
                                         return;
                                     }
+                                    if (mattressInfo.yw_flag == 1)
+                                    {
+                                        rslt.ErrMsg = "床垫清单已业务补充审核,不能取消下单!(" + mattressInfo.mattresscode + ")";
+                                        return;
+                                    }
 
                                     mattressInfo.xd_flag = 0;
                                     mattressInfo.xd_auditingrep = "";

+ 84 - 27
JLHHJSvr/Excutor/SaveMattressExcutor.cs

@@ -44,7 +44,15 @@ namespace JLHHJSvr.Excutor
                 {
                     request.mattress.mattressid = 0;
                     request.mattress.mattresscode = string.Empty;
+                    request.mattress.yw_flag = 0;
+                    request.mattress.yw_auditingrep = "";
+                    request.mattress.yw_auditingdate = null;
                     request.mattress.js1_flag = 0;
+                    request.mattress.js1_auditingrep = "";
+                    request.mattress.js1_auditingdate = null;
+                    request.mattress.js2_flag = 0;
+                    request.mattress.js2_auditingrep = "";
+                    request.mattress.js2_auditingdate = null;
                     request.mattress.xd_flag = 0;
                     request.mattress.xd_auditingrep = "";
                     request.mattress.xd_auditingdate = null;
@@ -53,6 +61,10 @@ namespace JLHHJSvr.Excutor
                     request.mattress.auditingdate = null;
                     request.mattress.qr_auditingrep = "";
                     request.mattress.qr_auditingdate = null;
+                    request.mattress.erp_mtrlid = 0;
+                    request.mattress.erp_mtrlcode = "";
+                    request.mattress.erp_piccode = "";
+                    request.mattress.erp_mtrlname = "";
 
                     foreach (var mx in request.mattressMx)
                     {
@@ -60,8 +72,42 @@ namespace JLHHJSvr.Excutor
                         mx.mattressmxid = 0;
                     }
                 }
+                else
+                {
+                    #region 状态判断
+                    if (request.mattress.mattressid > 0) {
+                        var mattressInfo = new u_mattress() { mattressid = request.mattress.mattressid };
+                        if (DbSqlHelper.SelectOne(cmd, mattressInfo, "flag, xd_flag, yw_flag, mattresscode, parentid") == 1)
+                        {
+                            if (mattressInfo.xd_flag == 1)
+                            {
+                                rslt.ErrMsg = "床垫报价单【" + mattressInfo.mattresscode + "】已业务下单,不能修改";
+                                return;
+                            }
+                        }
+                    }
+                    if (request.subspecs.Count > 0)
+                    {
+                        foreach (var submx in request.subspecs)
+                        {
+                            var itemid = Convert.ToInt32(submx["mattressid"]);
+                            if (itemid == 0) continue;
+                            var mattressInfo = new u_mattress() { mattressid = itemid };
+                            if (DbSqlHelper.SelectOne(cmd, mattressInfo, "flag, xd_flag, yw_flag, mattresscode, parentid") == 1)
+                            {
+                                if (mattressInfo.xd_flag == 1)
+                                {
+                                    rslt.ErrMsg = "副规格-床垫报价单【" + mattressInfo.mattresscode + "】已业务下单,不能修改";
+                                    return;
+                                }
+                            }
 
-                foreach(var mx in request.mattressMx)
+                        }
+                    }
+                    #endregion
+                }
+
+                foreach (var mx in request.mattressMx)
                 {
                     AutoInit.AutoInitS(cmd, mx);
                 }
@@ -82,32 +128,32 @@ namespace JLHHJSvr.Excutor
                         rslt.mattressid = request.mattress.mattressid;
                         rslt.mattresscode = request.mattress.mattresscode;
 
-                        var subspecsList = helper.GetMattressSubspecs(request.mattress.mattressid);
-
-                        if (subspecsList.Count > 0)
-                        {
-
-                            foreach (var submx in subspecsList)
-                            {
-                                // 删除副规格特殊工艺表
-                                cmd.CommandText = @"DELETE u_mattress_mx_extra WHERE mattressid = @mattressid";
-                                cmd.Parameters.Clear();
-                                cmd.Parameters.AddWithValue("@mattressid", submx.mattressid);
-                                cmd.ExecuteNonQuery();
-
-                                // 删除副规格明细
-                                cmd.CommandText = @"DELETE u_mattress_mx_mtrl WHERE mattressid = @mattressid";
-                                cmd.Parameters.Clear();
-                                cmd.Parameters.AddWithValue("@mattressid", submx.mattressid);
-                                cmd.ExecuteNonQuery();
-
-                                // 删除副规格
-                                cmd.CommandText = @"DELETE u_mattress WHERE mattressid = @mattressid";
-                                cmd.Parameters.Clear();
-                                cmd.Parameters.AddWithValue("@mattressid", submx.mattressid);
-                                cmd.ExecuteNonQuery();
-                            }
-                        }
+                        //var subspecsList = helper.GetMattressSubspecs(request.mattress.mattressid);
+
+                        //if (subspecsList.Count > 0)
+                        //{
+
+                        //    foreach (var submx in subspecsList)
+                        //    {
+                        //        // 删除副规格特殊工艺表
+                        //        cmd.CommandText = @"DELETE u_mattress_mx_extra WHERE mattressid = @mattressid";
+                        //        cmd.Parameters.Clear();
+                        //        cmd.Parameters.AddWithValue("@mattressid", submx.mattressid);
+                        //        cmd.ExecuteNonQuery();
+
+                        //        // 删除副规格明细
+                        //        cmd.CommandText = @"DELETE u_mattress_mx_mtrl WHERE mattressid = @mattressid";
+                        //        cmd.Parameters.Clear();
+                        //        cmd.Parameters.AddWithValue("@mattressid", submx.mattressid);
+                        //        cmd.ExecuteNonQuery();
+
+                        //        // 删除副规格
+                        //        cmd.CommandText = @"DELETE u_mattress WHERE mattressid = @mattressid";
+                        //        cmd.Parameters.Clear();
+                        //        cmd.Parameters.AddWithValue("@mattressid", submx.mattressid);
+                        //        cmd.ExecuteNonQuery();
+                        //    }
+                        //}
 
                         if (request.subspecs != null && request.subspecs.Count > 0)
                         {
@@ -116,6 +162,8 @@ namespace JLHHJSvr.Excutor
                             // 副规格
                             foreach (var submx in _subspecs)
                             {
+
+
                                 var _mattress = ObjectHelper.DeepCopy(request.mattress);
                                 _mattress.parentid = request.mattress.mattressid;
                                 _mattress.createby = request.mattress.createby;
@@ -127,6 +175,15 @@ namespace JLHHJSvr.Excutor
                                 _mattress.mattressrelcode = Convert.ToString(submx["mattressrelcode"]);
                                 _mattress.mattressname = Convert.ToString(submx["mattressname"]);
 
+                                if (submx.Value<int>("erp_mtrlid") > 0)
+                                {
+                                    _mattress.erp_mtrlid = Convert.ToInt32(submx["erp_mtrlid"]);
+                                }
+                                if (submx.Value<string>("erp_mtrlcode") != null)
+                                {
+                                    _mattress.erp_mtrlcode = Convert.ToString(submx["erp_mtrlcode"]);
+                                }
+
                                 var _mattressMx = new List<u_mattress_mx_mtrl>();
                                 if (request.mattressMx != null && request.mattressMx.Any())
                                 {

+ 11 - 4
JLHHJSvr/Helper/BedNetHelper.cs

@@ -2134,7 +2134,14 @@ namespace JLHHJSvr.Helper
 
                 var index = 0;
                 var lengthValSum = 0;
-                var sum = bednetMx.spring_qty_length.Value;
+                var sumLength = bednetMx.spring_qty_length.Value;
+                var sumWidth = bednetMx.spring_qty_width.Value;
+
+                if (bednetMx.if_hard_around > 0 && bednetMx.hard_around_row.Value > 0)
+                {
+                    sumLength = sumLength - bednetMx.hard_around_row.Value * 2;
+                    sumWidth = sumWidth - bednetMx.hard_around_row.Value * 2;
+                }
                 foreach (var _spr in springList)
                 {
                     var lengthVal = 0;
@@ -2144,11 +2151,11 @@ namespace JLHHJSvr.Helper
                         {
                             if (index == rateList.Count - 1)
                             {
-                                lengthVal = sum - lengthValSum;
+                                lengthVal = sumLength - lengthValSum;
                             }
                             else
                             {
-                                lengthVal = (int)Math.Round((rateList[index] / totality) * sum);
+                                lengthVal = (int)Math.Round((rateList[index] / totality) * sumLength);
                                 lengthValSum += lengthVal;
                             }
                         }
@@ -2157,7 +2164,7 @@ namespace JLHHJSvr.Helper
                             lengthVal = 0;
                         }
                     }
-                    _spr.spring_qty_width = bednetMx.spring_qty_width;
+                    _spr.spring_qty_width = sumWidth;
                     _spr.spring_qty_length = lengthVal;
                     index++;
                 }

+ 1 - 0
JLHHJSvr/Helper/ERPHelper.cs

@@ -382,6 +382,7 @@ namespace JLHHJSvr.Helper
                         ["dijia_cost2"] = mtrl.dijia_cost2, // 底价2
                         ["dijia_cost3"] = mtrl.dijia_cost3, // 底价3
                         ["dijia_cost4"] = mtrl.dijia_cost4, // 底价3
+                        ["GYAuditdate"] = DateTime.Now, // 底价更新时间
                         ["fob"] = mtrl.fob, // fob费用
                         ["taxes"] = mtrl.taxes, // 税金
                         ["extras_cost"] = mtrl.extras_cost, // 额外费用

+ 3 - 1
JLHHJSvr/Helper/MattressHelper.cs

@@ -1833,7 +1833,9 @@ namespace JLHHJSvr.Helper
 		                            mattress_height,
 		                            mattressname,
 		                            mattressrelcode,
-		                            parentid
+		                            parentid,
+                                    erp_mtrlid,
+                                    erp_mtrlcode
                                 FROM u_mattress
                                 ";
             var whereList = new List<string>();