@@ -0,0 +1,123 @@ | |||
using Learun.Util; | |||
using System.Data; | |||
using Learun.Application.TwoDevelopment.EducationalAdministration; | |||
using System.Web.Mvc; | |||
using System.Collections.Generic; | |||
namespace Learun.Application.Web.Areas.EducationalAdministration.Controllers | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-08 16:10 | |||
/// 描 述:老生缴费管理 | |||
/// </summary> | |||
public class StuInfoBasic_PayFeeController : MvcControllerBase | |||
{ | |||
private StuInfoBasic_PayFeeIBLL stuInfoBasic_PayFeeIBLL = new StuInfoBasic_PayFeeBLL(); | |||
#region 视图功能 | |||
/// <summary> | |||
/// 主页面 | |||
/// <summary> | |||
/// <returns></returns> | |||
[HttpGet] | |||
public ActionResult Index() | |||
{ | |||
return View(); | |||
} | |||
[HttpGet] | |||
public ActionResult PayFeeIndex() | |||
{ | |||
return View(); | |||
} | |||
/// <summary> | |||
/// 表单页 | |||
/// <summary> | |||
/// <returns></returns> | |||
[HttpGet] | |||
public ActionResult Form() | |||
{ | |||
return View(); | |||
} | |||
#endregion | |||
#region 获取数据 | |||
/// <summary> | |||
/// 获取页面显示列表数据 | |||
/// </summary> | |||
/// <param name="pagination">分页参数</param> | |||
/// <param name="queryJson">查询参数</param> | |||
/// <returns></returns> | |||
[HttpGet] | |||
[AjaxOnly] | |||
public ActionResult GetPageList(string pagination, string queryJson) | |||
{ | |||
Pagination paginationobj = pagination.ToObject<Pagination>(); | |||
var data = stuInfoBasic_PayFeeIBLL.GetPageList(paginationobj, queryJson); | |||
var jsonData = new | |||
{ | |||
rows = data, | |||
total = paginationobj.total, | |||
page = paginationobj.page, | |||
records = paginationobj.records | |||
}; | |||
return Success(jsonData); | |||
} | |||
/// <summary> | |||
/// 获取表单数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
[HttpGet] | |||
[AjaxOnly] | |||
public ActionResult GetFormData(string keyValue) | |||
{ | |||
var StuInfoBasic_PayFeeData = stuInfoBasic_PayFeeIBLL.GetStuInfoBasic_PayFeeEntity( keyValue ); | |||
var jsonData = new { | |||
StuInfoBasic_PayFee = StuInfoBasic_PayFeeData, | |||
}; | |||
return Success(jsonData); | |||
} | |||
#endregion | |||
#region 提交数据 | |||
/// <summary> | |||
/// 删除实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
[HttpPost] | |||
[AjaxOnly] | |||
public ActionResult DeleteForm(string keyValue) | |||
{ | |||
stuInfoBasic_PayFeeIBLL.DeleteEntity(keyValue); | |||
return Success("删除成功!"); | |||
} | |||
/// <summary> | |||
/// 保存实体数据(新增、修改) | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <param name="strEntity">实体</param> | |||
/// <returns></returns> | |||
[HttpPost] | |||
[ValidateAntiForgeryToken] | |||
[AjaxOnly] | |||
public ActionResult SaveForm(string keyValue, string strEntity) | |||
{ | |||
StuInfoBasic_PayFeeEntity entity = strEntity.ToObject<StuInfoBasic_PayFeeEntity>(); | |||
stuInfoBasic_PayFeeIBLL.SaveEntity(keyValue,entity); | |||
if (string.IsNullOrEmpty(keyValue)) | |||
{ | |||
} | |||
return Success("保存成功!"); | |||
} | |||
#endregion | |||
} | |||
} |
@@ -0,0 +1,23 @@ | |||
@{ | |||
ViewBag.Title = "老生缴费管理"; | |||
Layout = "~/Views/Shared/_Form.cshtml"; | |||
} | |||
<div class="lr-form-wrap" id="form"> | |||
<div class="col-xs-12 lr-form-item" data-table="StuInfoBasic_PayFee" > | |||
<div class="lr-form-item-title">学号</div> | |||
<input id="StuNo" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="StuInfoBasic_PayFee" > | |||
<div class="lr-form-item-title">缴费状态</div> | |||
<input id="PayStatus" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="StuInfoBasic_PayFee" > | |||
<div class="lr-form-item-title">开票状态</div> | |||
<input id="InvoiceStatus" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item" data-table="StuInfoBasic_PayFee" > | |||
<div class="lr-form-item-title">缴费年度</div> | |||
<input id="PayYear" type="text" class="form-control" /> | |||
</div> | |||
</div> | |||
@Html.AppendJsFile("/Areas/EducationalAdministration/Views/StuInfoBasic_PayFee/Form.js") |
@@ -0,0 +1,50 @@ | |||
/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn) | |||
* Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
* 创建人:超级管理员 | |||
* 日 期:2022-08-08 16:10 | |||
* 描 述:老生缴费管理 | |||
*/ | |||
var acceptClick; | |||
var keyValue = request('keyValue'); | |||
var bootstrap = function ($, learun) { | |||
"use strict"; | |||
var page = { | |||
init: function () { | |||
$('.lr-form-wrap').lrscroll(); | |||
page.bind(); | |||
page.initData(); | |||
}, | |||
bind: function () { | |||
}, | |||
initData: function () { | |||
if (!!keyValue) { | |||
$.lrSetForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic_PayFee/GetFormData?keyValue=' + keyValue, function (data) { | |||
for (var id in data) { | |||
if (!!data[id].length && data[id].length > 0) { | |||
$('#' + id ).jfGridSet('refreshdata', data[id]); | |||
} | |||
else { | |||
$('[data-table="' + id + '"]').lrSetFormData(data[id]); | |||
} | |||
} | |||
}); | |||
} | |||
} | |||
}; | |||
// 保存数据 | |||
acceptClick = function (callBack) { | |||
if (!$('body').lrValidform()) { | |||
return false; | |||
} | |||
var postData = { | |||
strEntity: JSON.stringify($('body').lrGetFormData()) | |||
}; | |||
$.lrSaveForm(top.$.rootUrl + '/EducationalAdministration/StuInfoBasic_PayFee/SaveForm?keyValue=' + keyValue, postData, function (res) { | |||
// 保存成功后才回调 | |||
if (!!callBack) { | |||
callBack(); | |||
} | |||
}); | |||
}; | |||
page.init(); | |||
} |
@@ -0,0 +1,47 @@ | |||
@{ | |||
ViewBag.Title = "老生缴费管理"; | |||
Layout = "~/Views/Shared/_Index.cshtml"; | |||
} | |||
<div class="lr-layout " > | |||
<div class="lr-layout-center"> | |||
<div class="lr-layout-wrap lr-layout-wrap-notitle "> | |||
<div class="lr-layout-tool"> | |||
<div class="lr-layout-tool-left"> | |||
<div class="lr-layout-tool-item"> | |||
<div id="multiple_condition_query"> | |||
<div class="lr-query-formcontent"> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">学号</div> | |||
<input id="StuNo" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">缴费年度</div> | |||
<input id="PayYear" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">缴费状态</div> | |||
<input id="PayStatus" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">开票状态</div> | |||
<input id="InvoiceStatus" type="text" class="form-control" /> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="lr-layout-tool-right"> | |||
<div class=" btn-group btn-group-sm"> | |||
<a id="lr_refresh" class="btn btn-default"><i class="fa fa-refresh"></i></a> | |||
</div> | |||
<div class=" btn-group btn-group-sm" learun-authorize="yes"> | |||
<a id="lr_add" class="btn btn-default"><i class="fa fa-plus"></i> 新增</a> | |||
<a id="lr_edit" class="btn btn-default"><i class="fa fa-pencil-square-o"></i> 编辑</a> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="lr-layout-body" id="gridtable"></div> | |||
</div> | |||
</div> | |||
</div> | |||
@Html.AppendJsFile("/Areas/EducationalAdministration/Views/StuInfoBasic_PayFee/Index.js") |
@@ -0,0 +1,77 @@ | |||
/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn) | |||
* Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
* 创建人:超级管理员 | |||
* 日 期:2022-08-08 16:10 | |||
* 描 述:老生缴费管理 | |||
*/ | |||
var refreshGirdData; | |||
var bootstrap = function ($, learun) { | |||
"use strict"; | |||
var page = { | |||
init: function () { | |||
page.initGird(); | |||
page.bind(); | |||
}, | |||
bind: function () { | |||
$('#multiple_condition_query').lrMultipleQuery(function (queryJson) { | |||
page.search(queryJson); | |||
}, 220, 400); | |||
// 刷新 | |||
$('#lr_refresh').on('click', function () { | |||
location.reload(); | |||
}); | |||
// 新增 | |||
$('#lr_add').on('click', function () { | |||
learun.layerForm({ | |||
id: 'form', | |||
title: '新增', | |||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic_PayFee/Form', | |||
width: 600, | |||
height: 400, | |||
callBack: function (id) { | |||
return top[id].acceptClick(refreshGirdData); | |||
} | |||
}); | |||
}); | |||
// 编辑 | |||
$('#lr_edit').on('click', function () { | |||
var keyValue = $('#gridtable').jfGridValue('Id'); | |||
if (learun.checkrow(keyValue)) { | |||
learun.layerForm({ | |||
id: 'form', | |||
title: '编辑', | |||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic_PayFee/Form?keyValue=' + keyValue, | |||
width: 600, | |||
height: 400, | |||
callBack: function (id) { | |||
return top[id].acceptClick(refreshGirdData); | |||
} | |||
}); | |||
} | |||
}); | |||
}, | |||
// 初始化列表 | |||
initGird: function () { | |||
$('#gridtable').lrAuthorizeJfGrid({ | |||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic_PayFee/GetPageList', | |||
headData: [ | |||
{ label: "学号", name: "StuNo", width: 100, align: "left"}, | |||
{ label: "缴费状态", name: "PayStatus", width: 100, align: "left"}, | |||
{ label: "开票状态", name: "InvoiceStatus", width: 100, align: "left"}, | |||
{ label: "缴费年度", name: "PayYear", width: 100, align: "left"}, | |||
], | |||
mainId:'Id', | |||
isPage: true | |||
}); | |||
page.search(); | |||
}, | |||
search: function (param) { | |||
param = param || {}; | |||
$('#gridtable').jfGridSet('reload',{ queryJson: JSON.stringify(param) }); | |||
} | |||
}; | |||
refreshGirdData = function () { | |||
$('#gridtable').jfGridSet('reload'); | |||
}; | |||
page.init(); | |||
} |
@@ -0,0 +1,63 @@ | |||
@{ | |||
ViewBag.Title = "学生学籍"; | |||
Layout = "~/Views/Shared/_Index.cshtml"; | |||
} | |||
<div class="lr-layout "> | |||
<div class="lr-layout-center"> | |||
<div class="lr-layout-wrap lr-layout-wrap-notitle "> | |||
<div class="lr-layout-tool"> | |||
<div class="lr-layout-tool-left"> | |||
<div class="lr-layout-tool-item"> | |||
<div id="multiple_condition_query"> | |||
<div class="lr-query-formcontent"> | |||
<div class="col-xs-6 lr-form-item"> | |||
<div class="lr-form-item-title">学号</div> | |||
<input id="StuNo" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-6 lr-form-item"> | |||
<div class="lr-form-item-title">姓名</div> | |||
<input id="StuName" type="text" class="form-control" /> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">系部</div> | |||
<div id="DeptNo"></div> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">专业</div> | |||
<div id="MajorNo"></div> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">班级</div> | |||
<div id="ClassNo"></div> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">缴费年度</div> | |||
<div id="PayFeeYear"></div> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">缴费状态</div> | |||
<div id="PayFeeStatus"></div> | |||
</div> | |||
<div class="col-xs-12 lr-form-item"> | |||
<div class="lr-form-item-title">开票状态</div> | |||
<div id="InvoiceStatus"></div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="lr-layout-tool-right"> | |||
<div class=" btn-group btn-group-sm"> | |||
<a id="lr_refresh" class="btn btn-default"><i class="fa fa-refresh"></i></a> | |||
</div> | |||
<div class=" btn-group btn-group-sm" learun-authorize="yes"> | |||
<a id="lr_payCode" class="btn btn-default"><i class="fa fa-plus"></i> 二维码缴费</a> | |||
<a id="lr_viewinvoice" class="btn btn-default"><i class="fa fa-pencil-square-o"></i> 查看发票</a> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="lr-layout-body" id="gridtable"></div> | |||
</div> | |||
</div> | |||
</div> | |||
@Html.AppendJsFile("/Areas/EducationalAdministration/Views/StuInfoBasic_PayFee/PayFeeIndex.js") |
@@ -0,0 +1,175 @@ | |||
var refreshGirdData; | |||
var StuId; | |||
var bootstrap = function ($, learun) { | |||
"use strict"; | |||
var page = { | |||
init: function () { | |||
page.initGird(); | |||
page.bind(); | |||
}, | |||
bind: function () { | |||
$('#multiple_condition_query').lrMultipleQuery(function (queryJson) { | |||
page.search(queryJson); | |||
}, 220, 400); | |||
$('#DeptNo').lrDataSourceSelect({ code: 'CdDeptInfo', value: 'deptno', text: 'deptname' }); | |||
$('#MajorNo').lrDataSourceSelect({ code: 'CdMajorInfo', value: 'majorno', text: 'majorname' }); | |||
$('#ClassNo').lrDataSourceSelect({ code: 'bjsj', value: 'classno', text: 'classname' }); | |||
$('#PayFeeStatus').lrDataItemSelect({ code: 'PayStatus' }); | |||
$('#InvoiceStatus').lrDataItemSelect({ code: 'InvoiceStatus' }); | |||
$('#PayFeeYear').lrselect({ | |||
url: top.$.rootUrl + '/EducationalAdministration/CdMajor/GenerateNearByYear', | |||
value: 'value', | |||
text: 'text' | |||
}); | |||
var now = new Date(); | |||
$('#PayFeeYear').lrselectSet(now.getFullYear()); | |||
// 刷新 | |||
$('#lr_refresh').on('click', function () { | |||
location.reload(); | |||
}); | |||
$("#lr_photo").on('click', function () { | |||
StuId = $("#gridtable").jfGridValue('StuId'); | |||
if (learun.checkrow(StuId)) { | |||
takeImg(); | |||
} | |||
}); | |||
//二维码缴费 | |||
$('#lr_payCode').on('click', function () { | |||
var keyValue = $('#gridtable').jfGridValue('StuId'); | |||
selectedRow = $('#gridtable').jfGridGet('rowdata'); | |||
if (learun.checkrow(keyValue)) { | |||
if (selectedRow.PayFeeStatus == "1") { | |||
learun.alert.warning("当前新生已缴费!"); | |||
return; | |||
} | |||
learun.layerForm({ | |||
id: 'form_payCode', | |||
title: '二维码缴费', | |||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoFresh/PayFeeForm?keyValue=' + keyValue, | |||
width: 800, | |||
height: 600, | |||
btn: null | |||
}); | |||
} | |||
}); | |||
//查看发票 | |||
$('#lr_viewinvoice').on('click', function () { | |||
var keyValue = $('#gridtable').jfGridValue('StuId'); | |||
selectedRow = $('#gridtable').jfGridGet('rowdata'); | |||
if (learun.checkrow(keyValue)) { | |||
if (selectedRow.PayFeeStatus == "1") { | |||
//查询发票链接 | |||
learun.httpAsyncGet( | |||
top.$.rootUrl + '/EducationalAdministration/StuInfoFresh/InvoiceForm?keyValue=' + keyValue, function (res) { | |||
if (!!res.data && !!res.data.billUrl) { | |||
learun.layerForm({ | |||
id: 'form_invoice', | |||
title: '查看发票', | |||
url: res.data.billUrl, | |||
width: 1000, | |||
height: 600, | |||
btn: null | |||
}); | |||
} else { | |||
learun.alert.warning("当前新生尚未开具发票,请缴费成功后耐心等待!"); | |||
return; | |||
} | |||
}); | |||
} else { | |||
learun.alert.warning("当前新生尚未缴费,请缴费成功后耐心等待!"); | |||
return; | |||
} | |||
} | |||
}); | |||
}, | |||
// 初始化列表 | |||
initGird: function () { | |||
$('#gridtable').lrAuthorizeJfGrid({ | |||
url: top.$.rootUrl + '/EducationalAdministration/StuInfoBasic_PayFeeController/GetPageList', | |||
headData: [ | |||
{ label: "学号", name: "StuNo", width: 100, align: "left" }, | |||
{ label: "学籍号", name: "StuCode", width: 100, align: "left" }, | |||
{ label: "姓名", name: "StuName", width: 100, align: "left" }, | |||
{ | |||
label: "性别", name: "GenderNo", width: 80, align: "left", | |||
formatter: function (cellvalue) { | |||
return cellvalue == true ? "男" : "女"; | |||
} | |||
}, | |||
{ label: "身份证号", name: "IdentityCardNo", width: 100, align: "left" }, | |||
{ | |||
label: "缴费状态", name: "PayFeeStatus", width: 80, align: "center", | |||
formatterAsync: function (callback, value, row, op, $cell) { | |||
learun.clientdata.getAsync('dataItem', { | |||
key: value, | |||
code: 'PayStatus', | |||
callback: function (_data) { | |||
callback(_data.text); | |||
} | |||
}); | |||
} | |||
}, | |||
{ | |||
label: "开票状态", name: "InvoiceStatus", width: 80, align: "center", | |||
formatter: function (cellvalue) { | |||
return cellvalue == true ? "<span class=\"label label-success\">已开票</span>" : "<span class=\"label label-danger\">未开票</span>"; | |||
} | |||
}, | |||
{ label: "缴费年度", name: "PayYear", width: 80, align: "left" }, | |||
{ | |||
label: "系所", name: "DeptNo", width: 100, align: "left", | |||
formatterAsync: function (callback, value, row, op, $cell) { | |||
learun.clientdata.getAsync('custmerData', { | |||
url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'CdDeptInfo', | |||
key: value, | |||
keyId: 'deptno', | |||
callback: function (_data) { | |||
callback(_data['deptname']); | |||
} | |||
}); | |||
} | |||
}, | |||
{ | |||
label: "专业", name: "MajorNo", width: 100, align: "left", | |||
formatterAsync: function (callback, value, row, op, $cell) { | |||
learun.clientdata.getAsync('custmerData', { | |||
url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'CdMajorInfo', | |||
key: value, | |||
keyId: 'majorno', | |||
callback: function (_data) { | |||
callback(_data['majorname']); | |||
} | |||
}); | |||
} | |||
}, | |||
{ | |||
label: "班级", name: "ClassNo", width: 100, align: "left", | |||
formatterAsync: function (callback, value, row, op, $cell) { | |||
learun.clientdata.getAsync('custmerData', { | |||
url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'bjsj', | |||
key: value, | |||
keyId: 'classno', | |||
callback: function (_data) { | |||
callback(_data['classname']); | |||
} | |||
}); | |||
} | |||
}, | |||
{ label: "年级", name: "Grade", width: 100, align: "left" } | |||
], | |||
mainId: 'StuId', | |||
isPage: true | |||
}); | |||
page.search(); | |||
}, | |||
search: function (param) { | |||
param = param || {}; | |||
$('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) }); | |||
} | |||
}; | |||
refreshGirdData = function () { | |||
page.search(); | |||
}; | |||
page.init(); | |||
} |
@@ -71,7 +71,7 @@ var bootstrap = function ($, learun) { | |||
return; | |||
} | |||
if (data['FinaChargesStandardList'].length == 0) { | |||
learun.alert.warning("检测到还未维护该专业收费标准!请先维护该专业收费标准。"); | |||
learun.alert.warning("未查询到该学生收费标准!请先维护收费标准。"); | |||
learun.layerClose(window.name); | |||
return; | |||
} | |||
@@ -100,9 +100,9 @@ var bootstrap = function ($, learun) { | |||
html += "<tr><td class=\"tableLeft\">姓名</td> <td>" + StuInfoFresh.StuName + "</td></tr>"; | |||
html += "<tr><td class=\"tableLeft\">班级</td><td>" + className + "</td></tr>"; | |||
html += "<tr><td class=\"tableLeft\">系别</td><td>" + deptName + "</td></tr>"; | |||
html += '<tr style="border-top: 10px solid blue;"><td class=\"tableLeft\">缴费项目</td><td class=\"tableLeft\">应交费用</td><td class=\"tableLeft\">本次实交</td></tr>'; | |||
html += '<tr style="border-top: 10px solid blue;"><td class=\"tableLeft\">缴费项目</td><td class=\"tableLeft\">应缴费用</td><td class=\"tableLeft\">已缴费用</td><td class=\"tableLeft\">本次实缴</td></tr>'; | |||
$.each(data['FinaChargesStandardList'], function (i, item) { | |||
html += '<tr><td class=\"tableLeft\">' + item.ChargeItemName + '</td><td>' + item.Standard + '元</td><td><input id="' + item.ChargeItemCode + '" data-amount="' + item.Standard + '" data-name="' + item.ChargeItemName + '" type="number" class="form-control paydetail" /></td></tr>'; | |||
html += '<tr><td class=\"tableLeft\">' + item.ChargeItemName + '</td><td>' + item.Standard + '元</td><td class=\"tableLeft\">' + item.PayedMoney+'</td><td><input id="' + item.ChargeItemCode + '" data-amount="' + item.Standard + '" data-name="' + item.ChargeItemName + '" type="number" class="form-control paydetail" /></td></tr>'; | |||
}); | |||
html += '<tr><td class=\"tableLeft\">合计</td><td>' + data['PayFeeTotal'] + '元</td><td><span id="PayMoney"></span></td></tr>'; | |||
html += '<tr><td class=\"tableLeft\">贷款金额</td><td colspan="2"><input id="LoanMoney" type="number" class="form-control" value="' + StuInfoFresh.LoanMoney + '" /></td></tr>'; | |||
@@ -860,6 +860,7 @@ | |||
<Compile Include="Areas\EducationalAdministration\Controllers\Exam_ArrangeExamTermNewController.cs" /> | |||
<Compile Include="Areas\EducationalAdministration\Controllers\Exam_ArrangeExamTermItemNewController.cs" /> | |||
<Compile Include="Areas\EducationalAdministration\Controllers\ExamSubjectController.cs" /> | |||
<Compile Include="Areas\EducationalAdministration\Controllers\StuInfoBasic_PayFeeController.cs" /> | |||
</ItemGroup> | |||
<ItemGroup> | |||
<Content Include="Areas\AdmissionsPlatform\Views\AP_OnlineUserInfo\DropOutIndex.js" /> | |||
@@ -1096,6 +1097,7 @@ | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic\IndexOfDC.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic\IndexInClass.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic\MyClass.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic_PayFee\PayFeeIndex.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic\Print.css" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoFresh\AllocationClassDC.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoFresh\InvoiceForm.js" /> | |||
@@ -6441,6 +6443,10 @@ | |||
<Content Include="Areas\EducationalAdministration\Views\ExamSubject\Index.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\ExamSubject\Form.cshtml" /> | |||
<Content Include="Areas\EducationalAdministration\Views\ExamSubject\Form.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic_PayFee\Index.cshtml" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic_PayFee\Index.js" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic_PayFee\Form.cshtml" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic_PayFee\Form.js" /> | |||
</ItemGroup> | |||
<ItemGroup> | |||
<Folder Include="Areas\EducationalAdministration\Views\AwardAndPunishment\" /> | |||
@@ -7733,6 +7739,7 @@ | |||
<Content Include="Areas\EducationalAdministration\Views\OpenLessonPlanOfElective\FormOfElective.cshtml" /> | |||
<Content Include="Areas\EducationalAdministration\Views\OpenLessonPlanOfElective\IndexElective.cshtml" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoFresh\InvoiceForm.cshtml" /> | |||
<Content Include="Areas\EducationalAdministration\Views\StuInfoBasic_PayFee\PayFeeIndex.cshtml" /> | |||
<None Include="Properties\PublishProfiles\CustomProfile.pubxml" /> | |||
<None Include="Properties\PublishProfiles\FolderProfile.pubxml" /> | |||
<Content Include="Views\Login\Default-beifen.cshtml" /> | |||
@@ -44,6 +44,6 @@ | |||
<add name="CollegeMIS" connectionString="Server=123.57.209.16;Initial Catalog=CollegeMIS_西昌;User ID=sa;Password=bjqjkj@2014~2015!" providerName="System.Data.SqlClient" /> | |||
<add name="hangfireString" connectionString="Server=123.57.209.16;Initial Catalog=Hangfire;User ID=sa;Password=bjqjkj@2014~2015!" providerName="System.Data.SqlClient" /> | |||
<add name="paikeDbString" connectionString="Data Source=10.30.0.11;Database=paike;User ID=root;Password=12345678;" providerName="MySql.Data.MySqlClient" /> | |||
<add name="YongyouDb" connectionString="Server=192.168.53.19,1433;Password=sa123456.;User ID=sa; Initial Catalog=u8gx" providerName="System.Data.SqlClient" /> | |||
<add name="YongyouDb" connectionString="Server=.;Password=1;User ID=sa; Initial Catalog=u8gx" providerName="System.Data.SqlClient" /> | |||
</connectionStrings> |
@@ -0,0 +1,29 @@ | |||
using Learun.Application.TwoDevelopment.EducationalAdministration; | |||
using System.Data.Entity.ModelConfiguration; | |||
namespace Learun.Application.Mapping | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-08 16:10 | |||
/// 描 述:老生缴费管理 | |||
/// </summary> | |||
public class StuInfoBasic_PayFeeMap : EntityTypeConfiguration<StuInfoBasic_PayFeeEntity> | |||
{ | |||
public StuInfoBasic_PayFeeMap() | |||
{ | |||
#region 表、主键 | |||
//表 | |||
this.ToTable("STUINFOBASIC_PAYFEE"); | |||
//主键 | |||
this.HasKey(t => t.Id); | |||
#endregion | |||
#region 配置关系 | |||
#endregion | |||
} | |||
} | |||
} | |||
@@ -586,6 +586,7 @@ | |||
<Compile Include="EducationalAdministration\Exam_ExamPlanRoomMap.cs" /> | |||
<Compile Include="EducationalAdministration\Exam_ArrangeExamTermItemNewMap.cs" /> | |||
<Compile Include="EducationalAdministration\ExamSubjectMap.cs" /> | |||
<Compile Include="EducationalAdministration\StuInfoBasic_PayFeeMap.cs" /> | |||
</ItemGroup> | |||
<ItemGroup> | |||
<ProjectReference Include="..\..\..\Learun.Application.Organization\Learun.Application.Organization.csproj"> | |||
@@ -0,0 +1,125 @@ | |||
using Learun.Util; | |||
using System; | |||
using System.Data; | |||
using System.Collections.Generic; | |||
namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-08 16:10 | |||
/// 描 述:老生缴费管理 | |||
/// </summary> | |||
public class StuInfoBasic_PayFeeBLL : StuInfoBasic_PayFeeIBLL | |||
{ | |||
private StuInfoBasic_PayFeeService stuInfoBasic_PayFeeService = new StuInfoBasic_PayFeeService(); | |||
#region 获取数据 | |||
/// <summary> | |||
/// 获取页面显示列表数据 | |||
/// </summary> | |||
/// <param name="pagination">分页参数</param> | |||
/// <param name="queryJson">查询参数</param> | |||
/// <returns></returns> | |||
public IEnumerable<StuInfoBasic_PayFeeEntity> GetPageList(Pagination pagination, string queryJson) | |||
{ | |||
try | |||
{ | |||
return stuInfoBasic_PayFeeService.GetPageList(pagination, queryJson); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 获取StuInfoBasic_PayFee表实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
public StuInfoBasic_PayFeeEntity GetStuInfoBasic_PayFeeEntity(string keyValue) | |||
{ | |||
try | |||
{ | |||
return stuInfoBasic_PayFeeService.GetStuInfoBasic_PayFeeEntity(keyValue); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
#endregion | |||
#region 提交数据 | |||
/// <summary> | |||
/// 删除实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
public void DeleteEntity(string keyValue) | |||
{ | |||
try | |||
{ | |||
stuInfoBasic_PayFeeService.DeleteEntity(keyValue); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 保存实体数据(新增、修改) | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <param name="entity">实体</param> | |||
/// <returns></returns> | |||
public void SaveEntity(string keyValue, StuInfoBasic_PayFeeEntity entity) | |||
{ | |||
try | |||
{ | |||
stuInfoBasic_PayFeeService.SaveEntity(keyValue, entity); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowBusinessException(ex); | |||
} | |||
} | |||
} | |||
#endregion | |||
} | |||
} |
@@ -0,0 +1,65 @@ | |||
using Learun.Util; | |||
using System; | |||
using System.ComponentModel.DataAnnotations.Schema; | |||
namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-08 16:10 | |||
/// 描 述:老生缴费管理 | |||
/// </summary> | |||
public class StuInfoBasic_PayFeeEntity | |||
{ | |||
#region 实体成员 | |||
/// <summary> | |||
/// Id | |||
/// </summary> | |||
[Column("ID")] | |||
public string Id { get; set; } | |||
/// <summary> | |||
/// StuNo | |||
/// </summary> | |||
[Column("STUNO")] | |||
public string StuNo { get; set; } | |||
/// <summary> | |||
/// PayStatus | |||
/// </summary> | |||
[Column("PAYSTATUS")] | |||
public int? PayStatus { get; set; } | |||
/// <summary> | |||
/// InvoiceStatus | |||
/// </summary> | |||
[Column("INVOICESTATUS")] | |||
public bool? InvoiceStatus { get; set; } | |||
/// <summary> | |||
/// PayYear | |||
/// </summary> | |||
[Column("PAYYEAR")] | |||
public int? PayYear { get; set; } | |||
#endregion | |||
#region 扩展操作 | |||
/// <summary> | |||
/// 新增调用 | |||
/// </summary> | |||
public void Create() | |||
{ | |||
this.Id = Guid.NewGuid().ToString(); | |||
} | |||
/// <summary> | |||
/// 编辑调用 | |||
/// </summary> | |||
/// <param name="keyValue"></param> | |||
public void Modify(string keyValue) | |||
{ | |||
this.Id = keyValue; | |||
} | |||
#endregion | |||
#region 扩展字段 | |||
#endregion | |||
} | |||
} | |||
@@ -0,0 +1,48 @@ | |||
using Learun.Util; | |||
using System.Data; | |||
using System.Collections.Generic; | |||
namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-08 16:10 | |||
/// 描 述:老生缴费管理 | |||
/// </summary> | |||
public interface StuInfoBasic_PayFeeIBLL | |||
{ | |||
#region 获取数据 | |||
/// <summary> | |||
/// 获取页面显示列表数据 | |||
/// </summary> | |||
/// <param name="queryJson">查询参数</param> | |||
/// <returns></returns> | |||
IEnumerable<StuInfoBasic_PayFeeEntity> GetPageList(Pagination pagination, string queryJson); | |||
/// <summary> | |||
/// 获取StuInfoBasic_PayFee表实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
StuInfoBasic_PayFeeEntity GetStuInfoBasic_PayFeeEntity(string keyValue); | |||
#endregion | |||
#region 提交数据 | |||
/// <summary> | |||
/// 删除实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
void DeleteEntity(string keyValue); | |||
/// <summary> | |||
/// 保存实体数据(新增、修改) | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <param name="entity">实体</param> | |||
void SaveEntity(string keyValue, StuInfoBasic_PayFeeEntity entity); | |||
#endregion | |||
} | |||
} |
@@ -0,0 +1,181 @@ | |||
using Dapper; | |||
using Learun.DataBase.Repository; | |||
using Learun.Util; | |||
using System; | |||
using System.Collections.Generic; | |||
using System.Data; | |||
using System.Text; | |||
namespace Learun.Application.TwoDevelopment.EducationalAdministration | |||
{ | |||
/// <summary> | |||
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架 | |||
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司 | |||
/// 创 建:超级管理员 | |||
/// 日 期:2022-08-08 16:10 | |||
/// 描 述:老生缴费管理 | |||
/// </summary> | |||
public class StuInfoBasic_PayFeeService : RepositoryFactory | |||
{ | |||
#region 获取数据 | |||
/// <summary> | |||
/// 获取页面显示列表数据 | |||
/// </summary> | |||
/// <param name="pagination">查询参数</param> | |||
/// <param name="queryJson">查询参数</param> | |||
/// <returns></returns> | |||
public IEnumerable<StuInfoBasic_PayFeeEntity> GetPageList(Pagination pagination, string queryJson) | |||
{ | |||
try | |||
{ | |||
var strSql = new StringBuilder(); | |||
strSql.Append("SELECT a.*,t.PayStatus,t.InvoiceStatus,t.PayYear "); | |||
strSql.Append(" FROM StuInfoBasic a left join StuInfoBasic_PayFee t on a.StuNo=t.StuNo"); | |||
strSql.Append(" WHERE 1=1 "); | |||
var queryParam = queryJson.ToJObject(); | |||
// 虚拟参数 | |||
var dp = new DynamicParameters(new { }); | |||
if (!queryParam["StuNo"].IsEmpty()) | |||
{ | |||
dp.Add("StuNo", "" + queryParam["StuNo"].ToString() + "", DbType.String); | |||
strSql.Append(" AND t.StuNo =@StuNo "); | |||
} | |||
if (!queryParam["StuName"].IsEmpty()) | |||
{ | |||
dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String); | |||
strSql.Append(" AND a.StuName like @StuName "); | |||
} | |||
if (!queryParam["PayYear"].IsEmpty()) | |||
{ | |||
dp.Add("PayYear", "" + queryParam["PayYear"].ToString() + "", DbType.String); | |||
strSql.Append(" AND t.PayYear =@PayYear "); | |||
} | |||
if (!queryParam["PayStatus"].IsEmpty()) | |||
{ | |||
dp.Add("PayStatus", "" + queryParam["PayStatus"].ToString() + "", DbType.String); | |||
strSql.Append(" AND t.PayStatus =@PayStatus "); | |||
} | |||
if (!queryParam["InvoiceStatus"].IsEmpty()) | |||
{ | |||
dp.Add("InvoiceStatus", "" + queryParam["InvoiceStatus"].ToString() + "", DbType.String); | |||
strSql.Append(" AND t.InvoiceStatus =@InvoiceStatus "); | |||
} | |||
if (!queryParam["DeptNo"].IsEmpty()) | |||
{ | |||
dp.Add("DeptNo", "" + queryParam["DeptNo"].ToString() + "", DbType.String); | |||
strSql.Append(" AND a.DeptNo =@DeptNo "); | |||
} | |||
if (!queryParam["MajorNo"].IsEmpty()) | |||
{ | |||
dp.Add("MajorNo", "" + queryParam["MajorNo"].ToString() + "", DbType.String); | |||
strSql.Append(" AND a.MajorNo =@MajorNo "); | |||
} | |||
if (!queryParam["ClassNo"].IsEmpty()) | |||
{ | |||
dp.Add("ClassNo", "" + queryParam["ClassNo"].ToString() + "", DbType.String); | |||
strSql.Append(" AND a.ClassNo =@ClassNo "); | |||
} | |||
return this.BaseRepository("CollegeMIS").FindList<StuInfoBasic_PayFeeEntity>(strSql.ToString(),dp, pagination); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 获取StuInfoBasic_PayFee表实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <returns></returns> | |||
public StuInfoBasic_PayFeeEntity GetStuInfoBasic_PayFeeEntity(string keyValue) | |||
{ | |||
try | |||
{ | |||
return this.BaseRepository("CollegeMIS").FindEntity<StuInfoBasic_PayFeeEntity>(keyValue); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
#endregion | |||
#region 提交数据 | |||
/// <summary> | |||
/// 删除实体数据 | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
public void DeleteEntity(string keyValue) | |||
{ | |||
try | |||
{ | |||
this.BaseRepository("CollegeMIS").Delete<StuInfoBasic_PayFeeEntity>(t=>t.Id == keyValue); | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
/// <summary> | |||
/// 保存实体数据(新增、修改) | |||
/// </summary> | |||
/// <param name="keyValue">主键</param> | |||
/// <param name="entity">实体</param> | |||
public void SaveEntity(string keyValue, StuInfoBasic_PayFeeEntity entity) | |||
{ | |||
try | |||
{ | |||
if (!string.IsNullOrEmpty(keyValue)) | |||
{ | |||
entity.Modify(keyValue); | |||
this.BaseRepository("CollegeMIS").Update(entity); | |||
} | |||
else | |||
{ | |||
entity.Create(); | |||
this.BaseRepository("CollegeMIS").Insert(entity); | |||
} | |||
} | |||
catch (Exception ex) | |||
{ | |||
if (ex is ExceptionEx) | |||
{ | |||
throw; | |||
} | |||
else | |||
{ | |||
throw ExceptionEx.ThrowServiceException(ex); | |||
} | |||
} | |||
} | |||
#endregion | |||
} | |||
} |
@@ -1817,6 +1817,10 @@ | |||
<Compile Include="EducationalAdministration\ExamSubject\ExamSubjectService.cs" /> | |||
<Compile Include="EducationalAdministration\ExamSubject\ExamSubjectBLL.cs" /> | |||
<Compile Include="EducationalAdministration\ExamSubject\ExamSubjectIBLL.cs" /> | |||
<Compile Include="EducationalAdministration\StuInfoBasic_PayFee\StuInfoBasic_PayFeeEntity.cs" /> | |||
<Compile Include="EducationalAdministration\StuInfoBasic_PayFee\StuInfoBasic_PayFeeService.cs" /> | |||
<Compile Include="EducationalAdministration\StuInfoBasic_PayFee\StuInfoBasic_PayFeeBLL.cs" /> | |||
<Compile Include="EducationalAdministration\StuInfoBasic_PayFee\StuInfoBasic_PayFeeIBLL.cs" /> | |||
</ItemGroup> | |||
<ItemGroup> | |||
<ProjectReference Include="..\..\..\Learun.Application.Organization\Learun.Application.Organization.csproj"> | |||
@@ -95,6 +95,11 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement | |||
public string ChargeItemName { get; set; } | |||
[NotMapped] | |||
public string ChargeItemCode { get; set; } | |||
/// <summary> | |||
/// 已交金额 | |||
/// </summary> | |||
[NotMapped] | |||
public string PayedMoney { get; set; } | |||
//专业名称 | |||
[NotMapped] | |||
public string MajorName { get; set; } | |||
@@ -424,10 +424,10 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement | |||
{ | |||
try | |||
{ | |||
IEnumerable<FinaChargesStandardEntity> yylist = BaseRepository("YongyouDb").FindList<FinaChargesStandardEntity>("select ISNULL(A.YJJE,0) as YJJE,s.*,s1.SFND,ISNULL(s1.YSJE,0) AS YSJE,ISNULL(s1.SFXMDM,'') AS SFXMDM,isnull(sf.SFXMMC,'-2') AS SFXMMC,s2.SFXMDM DAI,ISNULL(s2.JE,0) JE " + | |||
IEnumerable<FinaChargesStandardEntity> yylist = BaseRepository("YongyouDb").FindList<FinaChargesStandardEntity>("select ISNULL(A.YJJE,0) as YJJE,s.*,s1.SFND,ISNULL(s1.YSJE,0) AS YSJE,ISNULL(s1.SFXMDM,'') AS ChargeItemCode,sf.SFXMMC as ChargeItemName,s2.SFXMDM DAI,ISNULL(s2.JE,0) as PayedMoney,(isnull(s1.ysje,0)- isnull(s2.je,0)) as Standard " + | |||
"from SCS_XSXX s left join SCS_YSK s1 on s.XSID=s1.XSID and s1.SFND in (" + jiaoFeiYear + " ) " + | |||
"left join SCS_SFXM sf on sf.SFXMDM=s1.SFXMDM and sf.KJND=" + DateTime.Now.Year + " and sf.SFXMMC is not null " + | |||
"left join (select O.XSID,O1.SFXMDM,sum(O1.JE) as JE from SCS_ORDER o inner join SCS_ORDEL o1 on o1.OR_ID=o.OR_ID group by O.XSID,O1.SFXMDM) as s2 on s2.XSID=s1.XSID AND S1.SFXMDM=S2.SFXMDM " + | |||
"left join (select O.XSID,O1.SFXMDM,sum(O1.JE) as JE from SCS_ORDER o inner join SCS_ORDEL o1 on o1.OR_ID=o.OR_ID AND o.KJND=" + DateTime.Now.Year + " group by O.XSID,O1.SFXMDM) as s2 on s2.XSID=s1.XSID AND S1.SFXMDM=S2.SFXMDM " + | |||
"LEFT JOIN (SELECT SUM(JE) YJJE,SFND,B.SFXMDM FROM SCS_SFD_MX A LEFT JOIN SCS_SFXM B ON A.SFND=B.KJND AND A.SFXMDM=B.SFXMDM " + | |||
"INNER JOIN SCS_SFD_ML C ON C.DJNM = A.DJNM INNER JOIN SCS_XSXX D ON D.XSID = C.XSID " + | |||
"WHERE D.XH='" + stuNo + "' AND SFND in (" + jiaoFeiYear + " ) AND (C.DJLY<>'订单' OR C.DJLY IS NULL) GROUP BY SFND, B.SFXMDM) A ON A.SFXMDM = sf.SFXMDM " + | |||