|
@@ -2087,7 +2087,20 @@ namespace JLHHJSvr.Helper
|
|
|
|
|
|
if (bednetMx.if_part == 1 && springList.Count > 0)
|
|
|
{
|
|
|
- var bednetArea = GetBedNetArea(Convert.ToInt32(bednet.duo_qv_str));
|
|
|
+
|
|
|
+ if (string.IsNullOrEmpty(bednet.duo_qv_str))
|
|
|
+ {
|
|
|
+ throw new LJCommonException("主规格的床网多区设置有误,请重新设置");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ var outputFields = @"u_bednet_area.areaid, u_bednet_area.areaname, u_bednet_area.area_1, u_bednet_area.area_2, u_bednet_area.area_3, u_bednet_area.area_4, u_bednet_area.area_5, u_bednet_area.area_6, u_bednet_area.area_7, u_bednet_area.area_8, u_bednet_area.area_9, u_bednet_area.area_10, u_bednet_area.area_11, u_bednet_area.area_12, u_bednet_area.area_13, u_bednet_area.area_14, u_bednet_area.area_15
|
|
|
+ ,u_bednet_area.sponge_1 ,u_bednet_area.sponge_2 ,u_bednet_area.sponge_3 ,u_bednet_area.sponge_4 ,u_bednet_area.sponge_5 ,u_bednet_area.sponge_6 ,u_bednet_area.sponge_7 ,u_bednet_area.sponge_8 ,u_bednet_area.sponge_9 ,u_bednet_area.sponge_10 ,u_bednet_area.sponge_11 ,u_bednet_area.sponge_12 ,u_bednet_area.sponge_13 ,u_bednet_area.sponge_14 ,u_bednet_area.sponge_15";
|
|
|
+ var bedentArea = new u_bednet_area() { areaid = Convert.ToInt32(bednet.duo_qv_str) };
|
|
|
+ if (DbSqlHelper.SelectOne(cmd, bedentArea, outputFields) == 0) {
|
|
|
+ // 无匹配终止
|
|
|
+ throw new LJCommonException("主规格的床网多区设置有误,请重新设置");
|
|
|
+ return;
|
|
|
+ }
|
|
|
var attrKey = "area_";
|
|
|
|
|
|
|
|
@@ -2097,15 +2110,40 @@ namespace JLHHJSvr.Helper
|
|
|
attrKey = "sponge_";
|
|
|
}
|
|
|
|
|
|
- var bednetAreaDic = ToDictionary(bednetArea);
|
|
|
+ var bednetAreaDic = ToDictionary(bedentArea);
|
|
|
|
|
|
- var rateList = GetDuoquVal(bednetAreaDic);
|
|
|
+ var rateList = GetDuoquVal(bednetAreaDic, attrKey);
|
|
|
|
|
|
+ var totality = rateList.Sum();
|
|
|
|
|
|
+ var index = 0;
|
|
|
+ var lengthValSum = 0;
|
|
|
+ var sum = bednetMx.spring_qty_length.Value;
|
|
|
foreach (var _spr in springList)
|
|
|
{
|
|
|
+ var lengthVal = 0;
|
|
|
+ if (rateList.Count >= index + 1)
|
|
|
+ {
|
|
|
+ if (index <= rateList.Count - 1)
|
|
|
+ {
|
|
|
+ if (index == rateList.Count - 1)
|
|
|
+ {
|
|
|
+ lengthVal = sum - lengthValSum;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ lengthVal = (int)Math.Round((rateList[index] / totality) * sum);
|
|
|
+ lengthValSum += lengthVal;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ lengthVal = 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
_spr.spring_qty_width = bednetMx.spring_qty_width;
|
|
|
- //_spr.spring_qty_length =
|
|
|
+ _spr.spring_qty_length = lengthVal;
|
|
|
+ index++;
|
|
|
}
|
|
|
}
|
|
|
}
|