tijian_tieying/web/dccdc/Views/kc/rkdMessage.cshtml

313 lines
13 KiB
Plaintext
Raw Normal View History

2025-02-20 12:14:39 +08:00

@{
ViewBag.Title = "rkdMessage";
}
@model dccdc.Models.rkdModel
@using Newtonsoft.Json;
@section scripts{
<script type="text/javascript" src="@Url.Content("~/Scripts/public.js")"></script>
<script type="text/javascript">
var openf;
$(function () {
$("#layout1").ligerLayout({ leftWidth: 360, topHeight:100 });
$("#btSelect").click(function () {
liger.get("grid1").set("parms", { key: $("#wzmc").val(), key1: $("#wzlb").val(), key2: $("#ckmc").val() });
liger.get("grid1").reload();
})
$("#wzmc").keydown(function (e) {
var curKey = e.which;
if (curKey == 13) {
liger.get("grid1").set("parms", { key: $("#wzmc").val(), key1: $("#wzlb").val(), key2: $("#ckmc").val() });
liger.get("grid1").reload();
return false;
}
});
$("#grid1").ligerGrid({
height: "100%",
columns: [
{ display: "id", name: "id", align: "left", width: 40 },
{ display: "物资名称", name: "mc", align: "left", width: 100 },
{ display: "规格型号", name: "ggxh", align: "left", width: 60 },
{ display: "单位", name: "jldw", align: "left", width: 60 },
{ display: "单价", name: "dj", align: "right", width: 60 }
],
url: "@Url.Action("getwzbykey")",
rownumber: true,
usePager: false,
onDblClickRow: function (rowdata, rowid, rowobj) {
//liger.get("grid1").remove(rowdata);
var rows = liger.get("grid2").getData();
for (var i in rows) {
if (rows[i].id == rowdata.id)
return;
}
//添加数量
//if (rowdata.sl == undefined || rowdata.sl == 0)
//rowdata.sl = "";
if (rowdata.sl == undefined || rowdata.sl == 0)
rowdata.sl = 1;
liger.get("grid2").add(rowdata); //不使用副本 使用引用
//计算
sum();
}
});
$("#grid2").ligerGrid({
height: "100%",
columns: [
{ display: "id", name: "id", align: "left", width: 40 },
{ display: "物资名称", name: "mc", align: "left", width: 160 },
{ display: "单价", name: "dj", align: "right", width: 60, type: 'float', editor: { type: 'float', initSelect: true} },
//{ display: "数量", name: "sl", align: "right", width: 60, type: 'text', editor: { type: 'text' } },
{ display: "数量", name: "sl", align: "right", width: 60, type: 'int', editor: { type: 'int', initSelect: true } },
{ display: "金额", align: "right", width: 90, render: function (r, i, v) { return (r.sl * r.dj).toFixed(2) } },
{
display: "仓库", name: "sign", align: "right", width: 60,
render: function (r, i, v) {
if (v) {
var json =@Html.Raw(JsonConvert.SerializeObject(ViewBag.kD));
for (i in json) {
if (json[i]["Value"] == v)
return json[i]["Text"];
}
}
}
}
],
url: "@Url.Action("getwzbykey")?key=0000000&id=@Request.QueryString["id"]",
rownumber: true,
usePager: false,
enabledEdit: true,
checkbox: true,
isChecked: function (rowdata) {
return true;
},
onCheckRow: function (checked, data, rowid, rowdata) {
sum();
},
onDblClickRow: function (rowdata, rowid, rowobj) {
liger.get("grid2").remove(rowdata);
//计算
sum();
//var rows = liger.get("grid1").getData();
//for (var i in rows) {
// if (rows[i].id == rowdata.id)
// return;
//}
//liger.get("grid1").add(rowdata);
},
onAfterEdit: function (e) {
//根据价格生成字典
if (e.column.name == "dj") {
$.ajax("savewz2", {
type: "post", dataType: "json", data: e.record, async: false,
success: function (data) {
if (data.State == 2)
return;
var rowindex = e.rowindex;
if (data.State == 1) {
liger.get("grid2").updateCell("id", data.id, rowindex);
}
else {
$.ligerDialog.error("维护单价发生错误,请重新打开入库窗口" + data.Message);
error = true;
}
}
});
}
//计算
sum();
}
});
$("#cgsqd").bind("click", function () {
openf=$.ligerDialog.open({
url: "@Url.Action("selectCGSQD")", title: "选择采购申请单", width: 620, height: 400, isHidden:false
});
});
$("#qk").bind("click", function () {
cgsqdm = "";
$("#cgsqd").val("");
$("#cgsqdid").val("");
cgsqdmx = "";
});
});
var cgsqdm;
var cgsqdmx;
function selesqd(r)
{
openf.close();
cgsqdm = r;
$("#cgsqd").val(r.sqdh);
$("#cgsqdid").val(r.id);
//清空grid2
liger.get("grid2").set("data", { Rows: [] });
liger.get("grid2").reload();
$.ligerDialog.waitting("正在获取申请单信息请稍后……");
$.ajax("@Url.Action("getcgxqdmx")", {
type: "post", dataType: "json", data: { id: r.id }, async: false,
success:function(data)
{
cgsqdmx = data;
for(var i=0;i<data.length;i++)
{
$.ajax("@Url.Action("getwzmx")", {
async: false,
type: "post", dataType: "json", data: { id: data[i].wzid },
success: function (wzmx) {
wzmx.sl = data[i].sl;
liger.get("grid2").add(wzmx);
}
});
}
}
});
$.ligerDialog.closeWaitting();
sum();
}
function sum() {
var rows = liger.get("grid2").getSelectedRows();
var result = 0;
for (var i in rows) {
result += rows[i].dj * rows[i].sl;
}
$("#rkje").val(result.toFixed(2));
}
var error = false;
function save(last) {
if (error) {
$.ligerDialog.error("维护单价发生错误,请重新打开入库窗口");
return;
}
liger.get("grid2").endEdit();
var rows = liger.get("grid2").getSelectedRows();
if (rows.length == 0) {
$.ligerDialog.error("请添加物资项目!")
return;
}
var id = $("#id").val();
var gysid = $("#gysid").val();
var gys = $("#gysid option:checked").text();
var rkje = $("#rkje").val();
var zt = $("#zt").val();
var sign = $("#sign").val();
if (!gysid || !rkje || !zt || !sign) {
$.ligerDialog.error("请填写供应商与金额与库!")
return;
}
//if (rkje <= 0) {
// $.ligerDialog.error("金额必须大于0")
// return;
//}
//for (var i in rows) {
// if (!rows[i].dj || rows[i].dj <= 0) {
// $.ligerDialog.error("单价必须大于0")
// return;
// }
//}
var items = "";
for (var i in rows) {
items += rows[i].id + "|" + rows[i].mc + "|" + rows[i].dj + "|" + rows[i].sl + ",";
}
$.ajax({
url: "@Url.Action("opSaveRkd")", type: "post", dataType: "json", data: { id: id, gysid: gysid, gys: gys, rkje: rkje, zt: zt, sign: sign, items: items, sqdid: $("#cgsqdid").val(), last: last },
success: function (d) {
$.ligerDialog.closeWaitting();
if (d.Message == "false") {
$.ligerDialog.error("操作失败!");
}
else {
$.ligerDialog.success("操作成功!");
if (d.tag == "1") {
var url = "@(Request.Url.Scheme + "://" + Request.Url.Authority + Url.Content("~/"))";
if (window.top.Formium.external.Print.finit( "rkd.frx")) {
window.top.Formium.external.Print.PrintRKD(d.Message, "打印");
}
}
parent.init();
}
},
beforeSend: function () {
$.ligerDialog.waitting("正在进行请稍后……");
}
});
}
//js对象深度克隆
var deepCopy = function (source) {
var result = {};
for (var key in source) {
result[key] = typeof source[key] === 'object' ? deepCopy(source[key]) : source[key];
}
return result;
}
</script>
}
<div class="l-clear"></div>
<div id="layout1">
<div position="left">
<table class="t1" style="width:100%">
<tr>
<td class="ltd" width="70px">物资类别</td>
<td class="rtd">@Html.DropDownList("wzlb", ViewBag.wzlbD as SelectList, "----请选择----", new { @class = "l-text" })</td>
<td class="rtd" rowspan="2"><input type="button" id="btSelect" value="查询" class="l-button" style="height:50px" /></td>
</tr>
<tr>
<td class="ltd" width="70px">物资名称</td>
<td class="rtd">@Html.TextBox("wzmc", "", new { @class = "l-text" })</td>
</tr>
</table>
<div id="grid1"></div>
</div>
<div position="center" title="物资(双击增删)">
<div id="grid2"></div>
</div>
<div position="top">
@Html.HiddenFor(m => m.id)
<table class="t1" style="width:100%">
<tr>
<td class="ltd" width="80px">采购申请单</td>
<td class="rtd" width="150px"><input type="text" id="cgsqd" readonly="readonly" class="l-text" /><input type="hidden" id="cgsqdid" /></td>
<td class="rtd" colspan="3"><input type="button" value="清空" id="qk" class="l-button" /></td>
</tr>
<tr>
<td class="ltd" width="70px">供应商</td>
<td class="rtd" width="150px">@Html.DropDownListFor(m => m.gysid, ViewBag.gysD as SelectList, "----请选择----", new { @class = "l-text" })<span style="color:red">*</span></td>
<td class="ltd" width="70px">入库状态</td>
<td class="rtd" width="150px">@Html.DropDownListFor(m => m.zt, ViewBag.ztD as SelectList, "----请选择----", new { @class = "l-text" })</td>
<td class="rtd" rowspan="2">
<input type="@Request.QueryString["type"]" style="height:46px" value="部分入库" class="l-button" onclick="save(0)" />
<input type="@Request.QueryString["type"]" style="height:46px" value="最终入库" class="l-button" onclick="save(1)" />
</td>
</tr>
<tr>
<td class="ltd" width="70px">仓库:</td>
<td class="rtd" width="150px">@Html.DropDownListFor(m => m.sign, ViewBag.kD as SelectList, "----请选择----", new { @class = "l-text" })<span style="color:red">*</span></td>
<td class="ltd" width="70px">入库金额</td>
<td class="rtd" width="150px">@Html.TextBoxFor(m => m.rkje, new { @class = "l-text l-text-field-number", @type = "number", @readonly = "readonly" })<span style="color:red">*</span></td>
</tr>
</table>
</div>
</div>
<div style="display:none;"></div>
<div class="dispReport">
<object classid="clsid:F6A015E2-092A-4006-93DA-4CBDE3AFF4B8" id="window.top.Formium.external.Print" width="300" height="50"></object>
</div>