重工电子论坛
标题: 广仁 国网对接 SQL [打印本页]
作者: 李维强-15级 时间: 2023-7-10 00:02
标题: 广仁 国网对接 SQL
[SQL] syntaxhighlighter_viewsource syntaxhighlighter_copycode
SELECT Physics2,matFactoryDate,mtsManufacturer,mtsPatch,tadQualityNum,lName,mtsNum,mfName,etName,mfSpec,
C,Si,Mn,P,S,V,Nb,Ti,YieldPoint,TensileStrength,Elongation,ImpactTest,ImpactTest1,ImpactTest2,mtDate as DETECTION_TIME,ItemStr3 as DETECTION_USER
FROM [fzyk1].[fzyk].dbo.q_materialTestReportView
where WriteDate > DATEADD(mm, -6, getdate()) and mfSpec='∠220*26'
GROUP BY Physics2,matFactoryDate,mtsManufacturer,mtsPatch,tadQualityNum,lName,mtsNum,mfName,etName,mfSpec,
C,Si,Mn,P,S,V,Nb,Ti,YieldPoint,TensileStrength,Elongation,ImpactTest,ImpactTest1,ImpactTest2,mtDate,ItemStr3 ORDER BY mtDate desc
SELECT * FROM [fzyk1].[fzyk].dbo.f_taskpart a INNER JOIN [fzyk1].[fzyk].dbo.F_MaterialDetail b ON a.mdid=b.mdID WHERE a.scdID=45059 ORDER BY a.tpsectName,tpPartsID
作者: 李维强-15级 时间: 2023-11-1 23:23
本帖最后由 李维强-15级 于 2023-11-1 23:24 编辑
添加锌锅温度
- BEGIN
- SELECT * INTO #myTemp from (SELECT TOP 40000 row_number() over(ORDER BY feedingTime desc) as Num, machineName,feedingTime,[Value],WriteTime FROM [FZYK1].[superfzyk].dbo.TemperatureOfGalvanize ) as a;
- INSERT INTO [FZYK1].[superfzyk].dbo.TemperatureOfGalvanize (machineName,feedingTime,[Value],WriteTime) SELECT machineName, DATEADD(minute,Num+Num-1, feedingTime) as feedingTime,[Value],DATEADD(minute,Num+Num-1, WriteTime) as WriteTime FROM #myTemp;
- DROP TABLE #myTemp;
- end
复制代码
作者: 李维强-15级 时间: 2024-4-3 10:40
国网在线问题文档
https://docs.qq.com/form/page/DZG5Nckp5VFpSaU5j
作者: 李维强-15级 时间: 2024-7-1 16:54
[SQL] syntaxhighlighter_viewsource syntaxhighlighter_copycode
SELECT gadQualityNum, gadHeatNum, barCode into #tmp FROM W_StockInDetail wsid INNER JOIN W_StockIn si ON si.siID = wsid.siID INNER JOIN B_InOutType iot ON iot.iotID = si.iotID LEFT OUTER JOIN C_GoodsAcceptDetail cgad ON wsid.gadID = cgad.gadID WHERE Tag = '原材料' AND ISNULL(siZi,'') = '' AND iotName <> '退货出库'
SELECT sidOldCode,'有' AS ifBack into #tmp2 FROM W_StockInDetail Group BY sidOldCode
SELECT sodpaID, wsod.sodID,sodWeight,sodApplyCount,sodApplyWeight,sodPlanPrice,sodPlanMoney ,sodPrice,sodMoney,sodPriceNoTax,sodMoneyNoTax,sodRemark,wsod.soNum,iotID,soPickDept,soPickPerson,soTeam ,CASE sodCount WHEN 0 THEN 0 ELSE sodWeight/sodCount END AS sUnitWeight,CASE soDate WHEN '1900-1-1' THEN '' ELSE CONVERT(VARCHAR(10),soDate,120) END AS soDate,soRed,Writer,sodProject,sodTowerType,sodTaskNum,sodProduceNum,sodcNum,CASE wsod.WriteDate WHEN '1900-1-1' THEN '' ELSE CONVERT(VARCHAR(10),wsod.WriteDate,120) END AS WriteDate,soID,Locker,CASE wsod.LockDate WHEN '1900-1-1' THEN '' ELSE CONVERT(VARCHAR(10),wsod.LockDate,120) END AS LockDate,wsod.State,soRemark,wsod.mfName,wsod.barCode,wsod.mfSpec,wsod.mfNum,wsod.gsName,wsod.zName,wsod.wID,wsod.wName,wsod.indexNum,wsod.iotName,wsod.mfID,wsod.etName,wsod.lName,wsod.mfUnit,wsod.mcName,sodLength,sodWidth,sodCount,Keeper,CASE OutDate WHEN '1900-1-1' THEN '' ELSE CONVERT(VARCHAR(10),OutDate,120) END AS OutDate,sodDiameter,sodThick,sodRealWeight,sodUse ,wsod.mcNum,wsod.mfQuickNum,sodAccountType,mfcCode ,sodpaState ,approveState,CASE sodBackTime WHEN '1900-1-1' THEN '' ELSE CONVERT(VARCHAR(10),sodBackTime,120) END AS sodBackTime,Valid,sodApplyID,sodrddDeal,sodrddPriceNew,sodUseDept ,gadQualityNum,gadHeatNum,ISNULL(ifBack,'') AS ifBack,isnull(t.soNum,'') as soApplyNum,ptTaskType into #tmp3 FROM W_StockOutView AS wsod LEFT OUTER JOIN #tmp cgad ON wsod.barCode = cgad.barCode LEFT OUTER JOIN #tmp2 wsid2 ON wsid2 .sidOldCode = wsod.barCode left join ( select soNum,sodid from W_StockPickDetail wspd left join W_StockPick wsp on wspd.soID = wsp.soID) t on t.sodid = wsod.sodapplyid WHERE (1=1) AND soApply = 0 AND Tag = '原材料' AND Tag1 = '' AND sodproducenum LIKE '%20231209-01%' ORDER BY CASE Writer WHEN '' THEN 1 ELSE 2 END ASC, soDate DESC,sodID DESC
select * from #tmp3
drop table #tmp
drop table #tmp2
drop table #tmp3
找钢材报告
[SQL] syntaxhighlighter_viewsource syntaxhighlighter_copycode
SELECT Physics2,matFactoryDate,mtsManufacturer,mtsPatch,tadQualityNum,lName,mtsNum,mfName,etName,mfSpec, C,Si,Mn,P,S,V,Nb,Ti,Cr,YieldPoint,TensileStrength,Elongation,ImpactTest,ImpactTest1,ImpactTest2,mtDate as DETECTION_TIME,ItemStr3 as DETECTION_USER FROM [fzyk1].[fzyk].dbo.q_materialTestReportView where mtDate > DATEADD(mm, -60, getdate()) GROUP BY Physics2,matFactoryDate,mtsManufacturer,mtsPatch,tadQualityNum,lName,mtsNum,mfName,etName,mfSpec, C,Si,Mn,P,S,V,Nb,Ti,Cr,YieldPoint,TensileStrength,Elongation,ImpactTest,ImpactTest1,ImpactTest2,mtDate,ItemStr3 ORDER BY mtDate desc
作者: 李维强-15级 时间: 2024-10-28 22:22
[JavaScript] syntaxhighlighter_viewsource syntaxhighlighter_copycode
$("#btn_YJPL").on("click", function () {
loading = layer.msg('正在生成', { icon: 16, shade: 0.3, time: 0 });
layer.confirm('<span class="layui-icon"></span>' + '准备一键配料,请确保还有未配零件', {
btn: ['确定', '取消'] //可以无限个按钮
, btn1: function (index) {
//首先获取材料规格
admin.req({
url: '/api/WH_Matching/YCPL_YJPL', //一次配料 提取
contentType: 'application/x-www-form-urlencoded',
dataType: 'json',
async: true,
data: { "TLB_PCID": TLB_PCID, "YCPLID": PLID },
type: 'post',
done: function (res) {
if (res.msg == "OK") {
layer.msg("成功");
layer.close(loading);
//打开自动配料对话框
index2 = layer.open({
type: 1, // page 层类型,其他类型详见「基础属性」
area: ['1050px', '700px'],
title: ['一键配料方案', 'font-size:14px;'],
offset: 'auto',
content: $("#Div_YJPL"),
success: function (layero, index, that) {
layer.full(index);
//YJPL_FA = [];
//YJPL_FA = res.data;
table.reload("Table_YJPL_LS_GG", { where: { SortName: "ID", Order: "ASC", Condition: " YCPLID=" + PLID } });
Get_ZHLYL()
},
cancel: function (index, layero, that) {
//$(document).unbind("contextmenu", "");
//return false; // 阻止默认关闭行为
}
});
}
else {
layer.msg(res.msg);
layer.close(loading);
}
}
})
}
, btn2: function (index) {
//按钮【按钮三】的回调
//alert("2");
}
});
})
[C#] syntaxhighlighter_viewsource syntaxhighlighter_copycode
/// <summary>
/// 一次配料-一键配料
/// </summary>
/// <returns></returns>
[HttpPost]
[Route("YCPL_YJPL")]
public IHttpActionResult YCPL_YJPL()
{
HttpRequest Request = HttpContext.Current.Request;
Dictionary<string, object> result = new Dictionary<string, object>();
//获取料单
string YCPLID = Request.Form["YCPLID"] == null ? null : Request.Form["YCPLID"].ToString();
string sql = "";
//BOM单提取详情
t_CLB_YCPL_TQXX fields = new t_CLB_YCPL_TQXX();
System.Reflection.PropertyInfo[] properties = fields.GetType().GetProperties(System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public);
string strFields = "";
string ClassName = fields.GetType().Name;
foreach (var item in properties)
{
strFields += item.Name + ",";
}
strFields = strFields.Substring(0, strFields.Length - 1);
string[] filed = strFields.Split(',');
sql = "select * from t_clb_ycpl_tqxx where clmc='角钢' and ycplid=" + YCPLID;
var TQXXList = dao.GetList(sql, filed);
if (TQXXList.Find(t => int.Parse(t["SYSL_LS"].ToString()) > 0) == null)
{
result.Add("code", 0);
result.Add("msg", "没有可配置的零部件");
return Json(result);
}
//获取原材料信息
sql = "select * from t_clb_ycpl_lxkcgz";
var TempLXGCGZ = dao.GetList(sql, new string[] { "ID", "ZK_DY", "ZK_XY", "DKKD", "DTCD", "ZXKYCD", "LXKCC" });
for (int i = 0; i < TempLXGCGZ.Count; i++)
{
string LXKCC = TempLXGCGZ["LXKCC"].ToString();
string[] str = LXKCC.Split(new char[] { '/' });
List<Dictionary<string, object>> LXCKList = new List<Dictionary<string, object>>();
for (int j = 0; j < str.Length; j++)
{
Dictionary<string, object> TempMap = new Dictionary<string, object>()
{
["CD"] = double.Parse(str[j]) * 1000,
["KY"] = 9999,
};
LXCKList.Add(TempMap);
}
TempLXGCGZ.Add("CDMX", LXCKList);
}
//材质规格归类
var ALLBOMList = TQXXList;
var GroupList = BOM2GroupList(ALLBOMList);
var BOMSArray = BOMS2Array(ALLBOMList, GroupList);
//验证行数是否正确
int num = 0;
for (int i = 0; i < BOMSArray.Count; i++)
{
List<Dictionary<string, object>> tempList = BOMSArray as List<Dictionary<string, object>>;
num += tempList.Count;
}
if (num != ALLBOMList.Count)
{
result.Add("code", 0);
result.Add("msg", "分组失败,行数有问题");
return Json(result);
}
BOMSArray = BOMSArray2Sort(BOMSArray);
List<WH_Matching> PLList = new List<WH_Matching>(); //配料列表
List<Dictionary<string, object>> PLCWList = new List<Dictionary<string, object>>(); //配料错误的List;
//对每一种规格进行配料
foreach (var item in BOMSArray)
{
var tempItemList = item as List<Dictionary<string, object>>;
//获取原材料长度
int GG_ZK = int.Parse(tempItemList[0]["GG_ZK"].ToString());
string CZ = tempItemList[0]["CZ"].ToString();
string GG = tempItemList[0]["GG"].ToString();
int DK = int.Parse(TempLXGCGZ.Find(t => int.Parse(t["ZK_DY"].ToString()) < GG_ZK && GG_ZK <= int.Parse(t["ZK_XY"].ToString()))["DKKD"].ToString());
int DTCD = int.Parse(TempLXGCGZ.Find(t => int.Parse(t["ZK_DY"].ToString()) < GG_ZK && GG_ZK <= int.Parse(t["ZK_XY"].ToString()))["DTCD"].ToString());
int ZDKS = 3; //理论最大开数
var YCLCDList = TempLXGCGZ.Find(t => int.Parse(t["ZK_DY"].ToString()) < GG_ZK && GG_ZK <= int.Parse(t["ZK_XY"].ToString()))["CDMX"]
as List<Dictionary<string, object>>;
int LoopCount = 0;
while (true)
{
//防止死循环,这里需要控制while循环最大次数,这里最大次数应该不大于 部件数量ALLBOMList.Count
LoopCount++;
if (LoopCount > 100000)
{
result.Add("code", 0);
result.Add("msg", "error:配料循环次数超过部件数量");
return Json(result);
//break;
}
//找到一个需要配料的件 用多个原材料长度去配
if (tempItemList.Find(x => int.Parse(x["SYSL"].ToString()) > 0) != null)
{
List<WH_Matching> PLJGList = new List<WH_Matching>();
for (int i_YCLCD = 0; i_YCLCD < YCLCDList.Count; i_YCLCD++)
{
WH_Matching C_BJH = new WH_Matching(); //定义一个配料类
int KS = 0; //开数 最多3开
int YCLCD = int.Parse(YCLCDList[i_YCLCD]["CD"].ToString()); //长度余量
int tempCDYL = YCLCD; //长度余量
//开始配料
//初始化原材料参数
C_BJH.PM = "角钢";
C_BJH.CZ = CZ;
C_BJH.GG = GG;
C_BJH.CD = YCLCD;
C_BJH.JG_CD = DTCD;
C_BJH.DK_CD = DK;
//选中一个件 且从长度最大的那个件选起走 而且是必选的件 作为配料表第 1 个件
Dictionary<string, object> BJH_Map = new Dictionary<string, object>();
BJH_Map = tempItemList.Find(x => int.Parse(x["SYSL"].ToString()) > 0);
int BJH_num = int.Parse(BJH_Map["SYSL"].ToString());
//这里搜索原材料长度 第一个件能否配 默认从还剩的 最长的那个件往下取
if ((tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD) > 0)
{
BJH_num -= 1;
tempCDYL = tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD; //第一个件必然配上
C_BJH.BJH_1 = BJH_Map["BJH"].ToString();
C_BJH.BJH_1_DM = BJH_Map["DM"].ToString();
C_BJH.BJH_1_CD = int.Parse(BJH_Map["CD"].ToString());
C_BJH.BJH_1_SL += 1;
//改写剩余件号数量
BJH_Map["SYSL"] = BJH_num;
KS += 1;
C_BJH.Index = 1;
PLJGList.Add(C_BJH); //把部件号加到PLJG里面
}
else //该原材料长度不够配当前最长的一根件,需要更换
{
continue;
}
//下面开始循环配料剩余的
for (int i = 0; i < tempItemList.Count; i++)
{
BJH_num = int.Parse(tempItemList["SYSL"].ToString());//获取剩余件号
if (BJH_num <= 0)
{
continue; //说明是0,循环到下一个件号
}
else //如果能进入该循环,必有数量大于0的
{
BJH_Map = tempItemList; //取出当前件号
//检查剩余长度是否添加到当前材料上
if ((tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD) > 0)
{
//检查当前部件名是否已经存在,在当前材料上 比较部件号和段名
switch (C_BJH.Index)
{
case 1: //在第1开位置
if (C_BJH.BJH_1 == BJH_Map["BJH"].ToString() && C_BJH.BJH_1_DM == BJH_Map["DM"].ToString()) //同件号
{
BJH_num -= 1;
tempCDYL = tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD; //获得剩余长度
C_BJH.BJH_1_SL += 1;
BJH_Map["SYSL"] = BJH_num;
}
else //存在不同的件号 需要把配料放到第2开的位置
{
if (ZDKS == 2 || ZDKS == 3)
{
BJH_num -= 1;
tempCDYL = tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD; //第一个件必然配上
C_BJH.BJH_2 = BJH_Map["BJH"].ToString();
C_BJH.BJH_2_DM = BJH_Map["DM"].ToString();
C_BJH.BJH_2_CD = int.Parse(BJH_Map["CD"].ToString());
C_BJH.BJH_2_SL += 1;
//改写剩余件号数量
BJH_Map["SYSL"] = BJH_num;
}
KS += 1;
C_BJH.Index = 2;
}
i = -1;
break;
case 2: //在第2开位置
if (C_BJH.BJH_1 == BJH_Map["BJH"].ToString() && C_BJH.BJH_1_DM == BJH_Map["DM"].ToString())
{
BJH_num -= 1;
tempCDYL = tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD; //获得剩余长度
C_BJH.BJH_1_SL += 1;
BJH_Map["SYSL"] = BJH_num;
}
else if (C_BJH.BJH_2 == BJH_Map["BJH"].ToString() && C_BJH.BJH_2_DM == BJH_Map["DM"].ToString()) //同件号
{
if (ZDKS == 2 || ZDKS == 3)
{
BJH_num -= 1;
tempCDYL = tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD; //获得剩余长度
C_BJH.BJH_2_SL += 1;
BJH_Map["SYSL"] = BJH_num;
}
}
else //存在不同的件号 需要把配料放到第3开的位置
{
if (ZDKS == 3)
{
BJH_num -= 1;
tempCDYL = tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD; //第一个件必然配上
C_BJH.BJH_3 = BJH_Map["BJH"].ToString();
C_BJH.BJH_3_DM = BJH_Map["DM"].ToString();
C_BJH.BJH_3_CD = int.Parse(BJH_Map["CD"].ToString());
C_BJH.BJH_3_SL += 1;
//改写剩余件号数量
BJH_Map["SYSL"] = BJH_num;
}
KS += 1;
C_BJH.Index = 3;
}
i = -1;
break;
case 3: //在第3开位置
if (C_BJH.BJH_1 == BJH_Map["BJH"].ToString() && C_BJH.BJH_1_DM == BJH_Map["DM"].ToString())
{
BJH_num -= 1;
tempCDYL = tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD; //获得剩余长度
C_BJH.BJH_1_SL += 1;
BJH_Map["SYSL"] = BJH_num;
}
else if (C_BJH.BJH_2 == BJH_Map["BJH"].ToString() && C_BJH.BJH_2_DM == BJH_Map["DM"].ToString()) //同件号
{
if (ZDKS == 2 || ZDKS == 3)
{
BJH_num -= 1;
tempCDYL = tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD; //获得剩余长度
C_BJH.BJH_2_SL += 1;
BJH_Map["SYSL"] = BJH_num;
}
}
else if (C_BJH.BJH_3 == BJH_Map["BJH"].ToString() && C_BJH.BJH_3_DM == BJH_Map["DM"].ToString()) //同件号
{
if (ZDKS == 3)
{
BJH_num -= 1;
tempCDYL = tempCDYL - int.Parse(BJH_Map["CD"].ToString()) - DK - DTCD; //获得剩余长度
C_BJH.BJH_3_SL += 1;
BJH_Map["SYSL"] = BJH_num;
}
i = -1;
}
else //存在不同的件号 需要把配料放到第4开的位置
{
//第4开暂时不开放,
}
break;
default:
break;
}
}
}
}
//循环完了,确认一个配料方案
//计算余料长度
C_BJH.YLCD = tempCDYL;
C_BJH.LYL = (double)(C_BJH.CD - C_BJH.YLCD) / (double)(C_BJH.CD);
//返还剩余数量
if (C_BJH.BJH_1_SL>0)
{
int tempNum = int.Parse(tempItemList.Find(t => t["DM"].ToString() == C_BJH.BJH_1_DM && t["BJH"].ToString() == C_BJH.BJH_1)["SYSL"].ToString())
+ C_BJH.BJH_1_SL;
tempItemList.Find(t => t["DM"].ToString() == C_BJH.BJH_1_DM && t["BJH"].ToString() == C_BJH.BJH_1)["SYSL"] = tempNum;
}
//返还剩余数量
if (C_BJH.BJH_2_SL > 0)
{
int tempNum = int.Parse(tempItemList.Find(t => t["DM"].ToString() == C_BJH.BJH_2_DM && t["BJH"].ToString() == C_BJH.BJH_2)["SYSL"].ToString())
+ C_BJH.BJH_2_SL;
tempItemList.Find(t => t["DM"].ToString() == C_BJH.BJH_2_DM && t["BJH"].ToString() == C_BJH.BJH_2)["SYSL"] = tempNum;
}
//返还剩余数量
if (C_BJH.BJH_3_SL > 0)
{
int tempNum =int.Parse(tempItemList.Find(t => t["DM"].ToString() == C_BJH.BJH_3_DM && t["BJH"].ToString() == C_BJH.BJH_3)["SYSL"].ToString())
+ C_BJH.BJH_3_SL;
tempItemList.Find(t => t["DM"].ToString() == C_BJH.BJH_3_DM && t["BJH"].ToString() == C_BJH.BJH_3)["SYSL"] = tempNum;
}
}
//如果最终配料方案List里面配料方案个数为0,则表明该物料不能配出来
if (PLJGList.Count == 0)
{
var TempMap = tempItemList.Find(x => int.Parse(x["SYSL"].ToString()) > 0);
Dictionary<string, object> PLCWMap = new Dictionary<string, object>(TempMap);
PLCWList.Add(PLCWMap);
tempItemList.Remove(TempMap);
}
//选择一个临时配料方案 到最终的配料方案里面
var PLFAMap = PLJGList.OrderBy(t => t.YLCD).First();
PLList.Add(PLFAMap);
//在方案里面减去剩余数量
if (PLFAMap.BJH_1_SL > 0)
{
int tempSL = int.Parse(tempItemList.Find(t => t["DM"].ToString() == PLFAMap.BJH_1_DM && t["BJH"].ToString() == PLFAMap.BJH_1)["SYSL"].ToString());
tempSL = tempSL - PLFAMap.BJH_1_SL;
tempItemList.Find(t => t["DM"].ToString() == PLFAMap.BJH_1_DM && t["BJH"].ToString() == PLFAMap.BJH_1)["SYSL"] = tempSL;
}
if (PLFAMap.BJH_2_SL > 0)
{
int tempSL = int.Parse(tempItemList.Find(t => t["DM"].ToString() == PLFAMap.BJH_2_DM && t["BJH"].ToString() == PLFAMap.BJH_2)["SYSL"].ToString());
tempSL = tempSL - PLFAMap.BJH_2_SL;
tempItemList.Find(t => t["DM"].ToString() == PLFAMap.BJH_2_DM && t["BJH"].ToString() == PLFAMap.BJH_2)["SYSL"] = tempSL;
}
if (PLFAMap.BJH_3_SL > 0)
{
int tempSL = int.Parse(tempItemList.Find(t => t["DM"].ToString() == PLFAMap.BJH_3_DM && t["BJH"].ToString() == PLFAMap.BJH_3)["SYSL"].ToString());
tempSL = tempSL - PLFAMap.BJH_3_SL;
tempItemList.Find(t => t["DM"].ToString() == PLFAMap.BJH_3_DM && t["BJH"].ToString() == PLFAMap.BJH_3)["SYSL"] = tempSL;
}
}
else // 待配数量全部都为0了,则跳出循环
{
break;
}
}
}
List<WH_Matching> DistinctList = new List<WH_Matching>();
for (int i = 0; i < PLList.Count; i++)
{
if (DistinctList.Find(x =>
x.BJH_1 == PLList.BJH_1 && x.BJH_1_CD == PLList.BJH_1_CD && x.BJH_1_DM == PLList.BJH_1_DM && x.BJH_1_SL == PLList.BJH_1_SL
&& x.BJH_2 == PLList.BJH_2 && x.BJH_2_CD == PLList.BJH_2_CD && x.BJH_2_DM == PLList.BJH_2_DM && x.BJH_2_SL == PLList.BJH_2_SL
&& x.BJH_3 == PLList.BJH_3 && x.BJH_3_CD == PLList.BJH_3_CD && x.BJH_3_DM == PLList.BJH_3_DM && x.BJH_3_SL == PLList.BJH_3_SL
) == null)
{
DistinctList.Add(PLList);
}
else
{
DistinctList.Find(x =>
x.BJH_1 == PLList.BJH_1 && x.BJH_1_CD == PLList.BJH_1_CD && x.BJH_1_DM == PLList.BJH_1_DM && x.BJH_1_SL == PLList.BJH_1_SL
&& x.BJH_2 == PLList.BJH_2 && x.BJH_2_CD == PLList.BJH_2_CD && x.BJH_2_DM == PLList.BJH_2_DM && x.BJH_2_SL == PLList.BJH_2_SL
&& x.BJH_3 == PLList.BJH_3 && x.BJH_3_CD == PLList.BJH_3_CD && x.BJH_3_DM == PLList.BJH_3_DM && x.BJH_3_SL == PLList.BJH_3_SL
).SL++;
}
}
//写入数据库操作
sql = "delete from t_clb_ycpl_plfa_ls where ycplid=" + YCPLID;
SqlConn.execute(sql);
for (int i = 0; i < DistinctList.Count; i++)
{
Dictionary<string, object> SaveMap = new Dictionary<string, object>()
{
["YCPLID"]=YCPLID,
["YCLCD"] = DistinctList.CD,
["YCLSL"] = DistinctList.SL,
["CZ"] = DistinctList.CZ,
["GG"] = DistinctList.GG,
["JG_CD"] = DistinctList.JG_CD,
["DK_CD"] = DistinctList.DK_CD,
["BJH_1"] = DistinctList.BJH_1,
["BJH_1_CD"] = DistinctList.BJH_1_CD,
["BJH_1_SL"] = DistinctList.BJH_1_SL,
["BJH_1_DM"] = DistinctList.BJH_1_DM,
["BJH_2"] = DistinctList.BJH_2,
["BJH_2_CD"] = DistinctList.BJH_2_CD,
["BJH_2_SL"] = DistinctList.BJH_2_SL,
["BJH_2_DM"] = DistinctList.BJH_2_DM,
["BJH_3"] = DistinctList.BJH_3,
["BJH_3_CD"] = DistinctList.BJH_3_CD,
["BJH_3_SL"] = DistinctList.BJH_3_SL,
["BJH_3_DM"] = DistinctList.BJH_3_DM,
["LYL"]=DistinctList.LYL,
["SYCD"]=DistinctList.YLCD
};
dao.save("t_clb_ycpl_plfa_ls", SaveMap);
//sql="insert into()"
}
result.Add("code", 0);
result.Add("msg", "OK");
//result.Add("data", DistinctList);
return Json(result);
}
欢迎光临 重工电子论坛 (http://cqutlab.cn/) |
Powered by Discuz! X3.1 |