diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Form.cshtml
new file mode 100644
index 000000000..7f0430f12
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Form.cshtml
@@ -0,0 +1,35 @@
+@{
+ ViewBag.Title = "收费系统操作日志";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Form.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Form.js
new file mode 100644
index 000000000..43c3d6caf
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Form.js
@@ -0,0 +1,36 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-20 16:06
+ * 描 述:收费系统操作日志
+ */
+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 () {
+ $('#F_OperateType').lrDataItemSelect({ code: '' });
+ },
+ initData: function () {
+ if (!!keyValue) {
+ $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeLog/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]);
+ }
+ }
+ });
+ }
+ }
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Index.cshtml
new file mode 100644
index 000000000..97d8b9387
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Index.cshtml
@@ -0,0 +1,37 @@
+@{
+ ViewBag.Title = "收费系统操作日志";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Index.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Index.js
new file mode 100644
index 000000000..e1f0a9ca3
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeLog/Index.js
@@ -0,0 +1,95 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-20 16:06
+ * 描 述:收费系统操作日志
+ */
+var refreshGirdData;
+var bootstrap = function ($, learun) {
+ "use strict";
+ var startTime;
+ var endTime;
+ var page = {
+ init: function () {
+ page.initGird();
+ page.bind();
+ },
+ bind: function () {
+ // 时间搜索框
+ $('#datesearch').lrdate({
+ dfdata: [
+ { name: '今天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00') }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
+ { name: '近7天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'd', -6) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
+ { name: '近1个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -1) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
+ { name: '近3个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -3) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }
+ ],
+ // 月
+ mShow: false,
+ premShow: false,
+ // 季度
+ jShow: false,
+ prejShow: false,
+ // 年
+ ysShow: false,
+ yxShow: false,
+ preyShow: false,
+ yShow: false,
+ // 默认
+ dfvalue: '1',
+ selectfn: function (begin, end) {
+ startTime = begin;
+ endTime = end;
+ page.search();
+ }
+ });
+ $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
+ page.search(queryJson);
+ }, 220, 400);
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ $('#lr_view').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('F_LogId');
+ if (learun.checkrow(keyValue)) {
+ learun.layerForm({
+ id: 'formview',
+ title: '查看详细',
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeLog/Form?keyValue=' + keyValue,
+ width: 700,
+ height: 600,
+ btn:null
+ });
+ }
+ });
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeLog/GetPageList',
+ headData: [
+ { label: "功能模块", name: "F_Module", width: 120, align: "left"},
+ { label: "操作类型", name: "F_OperateType", width: 100, align: "left"},
+ { label: "操作时间", name: "F_OperateTime", width: 180, align: "left"},
+ { label: "操作用户", name: "F_OperateAccount", width: 150, align: "left"},
+ { label: "用户IP", name: "F_IPAddress", width: 100, align: "left"},
+ { label: "操作内容", name: "F_SourceContentJson", width: 200, align: "left"},
+ { label: "操作数据Id", name: "F_SourceObjectId", width: 100, align: "left"},
+ ],
+ mainId:'F_LogId',
+ isPage: true,
+ sidx:'F_OperateTime desc'
+ });
+ },
+ search: function (param) {
+ param = param || {};
+ param.StartTime = startTime;
+ param.EndTime = endTime;
+ $('#gridtable').jfGridSet('reload',{ queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Form.cshtml
new file mode 100644
index 000000000..b39cf1a6c
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Form.cshtml
@@ -0,0 +1,18 @@
+@{
+ ViewBag.Title = "FinaChargeRefund";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Form.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Form.js
new file mode 100644
index 000000000..cba8b0b2d
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Form.js
@@ -0,0 +1,105 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-18 18:07
+ * 描 述:FinaChargeRefund
+ */
+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 () {
+ $('#ChargeItemType').lrDataItemSelect({ code: 'ChargeItemType' });
+ $('#RType').lrDataItemSelect({ code: 'RType' });
+ $('#FinaChargeRefundList').jfGrid({
+ headData: [
+ { label: "学号", name: "StuNo", width: 100, align: "left" },
+ { label: "姓名", name: "StuName", width: 100, align: "left" },
+ {
+ 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: "FSYear", width: 80, align: "left" },
+ { label: "收费项目编号", name: "ChargeItemCode", width: 100, align: "left" },
+ { label: "收费项名称", name: "ChargeItemName", width: 100, align: "left" },
+ {
+ label: "收费项目类型", name: "ChargeItemType", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'ChargeItemType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ { label: "收费标准", name: "Standard", width: 80, align: "left" },
+ { label: "实缴金额", name: "SJAmount", width: 80, align: "left" },
+ { label: "应退费金额", name: "FSBlance", width: 80, align: "left" },
+ ],
+ height: 400,
+ mainId: 'FSYIId'
+ });
+ },
+ initData: function () {
+ if (!!keyValue) {
+ $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeRefund/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 = {
+ FinaChargeRefundList: JSON.stringify($('#FinaChargeRefundList').jfGridGet("rowdatas")),
+ strEntity: JSON.stringify($('body').lrGetFormData())
+ };
+ $.lrSaveForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeRefund/SaveForm', postData, function (res) {
+ // 保存成功后才回调
+ if (!!callBack) {
+ callBack();
+ }
+ });
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/FormView.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/FormView.cshtml
new file mode 100644
index 000000000..feab65141
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/FormView.cshtml
@@ -0,0 +1,35 @@
+@{
+ ViewBag.Title = "FinaChargeRefund";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/FormView.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/FormView.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/FormView.js
new file mode 100644
index 000000000..6aa56b5d6
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/FormView.js
@@ -0,0 +1,37 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-18 18:07
+ * 描 述:FinaChargeRefund
+ */
+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 () {
+ $('#RType').lrDataItemSelect({ code: 'RType' });
+ },
+ initData: function () {
+ if (!!keyValue) {
+ $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeRefund/GetFormDataById?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]);
+ }
+ }
+ });
+ }
+ }
+ };
+
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Index.cshtml
new file mode 100644
index 000000000..1865e1dfe
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Index.cshtml
@@ -0,0 +1,49 @@
+@{
+ ViewBag.Title = "FinaChargeRefund";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Index.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Index.js
new file mode 100644
index 000000000..2349b8adc
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeRefund/Index.js
@@ -0,0 +1,103 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-18 18:07
+ * 描 述:FinaChargeRefund
+ */
+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);
+ $('#RType').lrDataItemSelect({ code: 'RType' });
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeRefund/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", width: 100, align: "left" },
+ { label: "姓名", name: "StuName", width: 100, align: "left" },
+ {
+ 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: "FSYear", width: 100, align: "left" },
+ { label: "收费项目编号", name: "ChargeItemCode", width: 100, align: "left" },
+ { label: "收费项目名称", name: "ChargeItemName", width: 100, align: "left" },
+ {
+ label: "收费项目类型", name: "ChargeItemType", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'ChargeItemType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ { label: "退费金额", name: "Amount", width: 100, align: "left" },
+ { label: "退费时间", name: "F_CreateDate", width: 150, align: "left" },
+ {
+ label: "退费方式", name: "RType", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'RType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ ],
+ 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();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Form.cshtml
new file mode 100644
index 000000000..881720633
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Form.cshtml
@@ -0,0 +1,59 @@
+@{
+ ViewBag.Title = "费用变更明细";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Form.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Form.js
new file mode 100644
index 000000000..eff4d82cb
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Form.js
@@ -0,0 +1,50 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-16 11:02
+ * 描 述:费用变更明细
+ */
+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 + '/ReceiveSendFeeManagement/FinaChargeStuBalance/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 + '/ReceiveSendFeeManagement/FinaChargeStuBalance/SaveForm?keyValue=' + keyValue, postData, function (res) {
+ // 保存成功后才回调
+ if (!!callBack) {
+ callBack();
+ }
+ });
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Index.cshtml
new file mode 100644
index 000000000..517bf9fdc
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Index.cshtml
@@ -0,0 +1,46 @@
+@{
+ ViewBag.Title = "费用变更明细";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Index.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Index.js
new file mode 100644
index 000000000..ccf6cbc26
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuBalance/Index.js
@@ -0,0 +1,156 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-16 11:02
+ * 描 述:费用变更明细
+ */
+var refreshGirdData;
+var bootstrap = function ($, learun) {
+ "use strict";
+ var startTime;
+ var endTime;
+ var page = {
+ init: function () {
+ page.initGird();
+ page.bind();
+ },
+ bind: function () {
+ // 时间搜索框
+ $('#datesearch').lrdate({
+ dfdata: [
+ { name: '今天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00') }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
+ { name: '近7天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'd', -6) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
+ { name: '近1个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -1) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
+ { name: '近3个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -3) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }
+ ],
+ // 月
+ mShow: false,
+ premShow: false,
+ // 季度
+ jShow: false,
+ prejShow: false,
+ // 年
+ ysShow: false,
+ yxShow: false,
+ preyShow: false,
+ yShow: false,
+ // 默认
+ dfvalue: '1',
+ selectfn: function (begin, end) {
+ startTime = begin;
+ endTime = end;
+ page.search();
+ }
+ });
+ $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
+ page.search(queryJson);
+ }, 220, 400);
+ $("#ChangeType").lrDataItemSelect({ code: 'ChangeType' });
+
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuBalance/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", 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: 150, 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: 80, align: "left" },
+ { label: "缴费年度", name: "FSYear", width: 100, align: "left" },
+ { label: "收费项目编号", name: "ChargeItemCode", width: 100, align: "left" },
+ { label: "收费项目名称", name: "ChargeItemName", width: 100, align: "left" },
+ { label: "收费标准", name: "Standard", width: 100, align: "left" },
+ { label: "本次应缴余额", name: "DJAmount", width: 100, align: "left" },
+ { label: "缴费金额", name: "PaymentAmount", width: 100, align: "left" },
+ { label: "剩余应缴余额", name: "QJAmount", width: 100, align: "left" },
+ { label: "当前超出应收额", name: "OldBalance", width: 100, align: "left" },
+ { label: "本次变动金额", name: "ChangeAmount", width: 100, align: "left" },
+ { label: "超出应收额", name: "NowBalance", width: 100, align: "left" },
+ { label: "变动时间", name: "ChangeDate", width: 150, align: "left" },
+ {
+ label: "变动原因", name: "ChangeType", width: 100, align: "left", formatter: function (cellvalue, row) {
+ if (cellvalue === 1) {
+ return '
二维码缴费';
+ } else if (cellvalue === 2) {
+ return '
导入贷款';
+ } else if (cellvalue === 3) {
+ return '
导入现金';
+ } else if (cellvalue === 4) {
+ return '
退费';
+ } else if (cellvalue === 5) {
+ return '
自动分配扣减';
+ } else if (cellvalue === 6) {
+ return '
自动分配增加';
+ } else if (cellvalue === 7) {
+ return '
导入POS收款';
+ }
+ }
+ },
+ ],
+ mainId: 'Id',
+ isPage: true,
+ sidx:'ChangeDate'
+ });
+ },
+ search: function (param) {
+ param = param || {};
+ param.StartTime = startTime;
+ param.EndTime = endTime;
+ $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Form.cshtml
new file mode 100644
index 000000000..9ce96c2e4
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Form.cshtml
@@ -0,0 +1,59 @@
+@{
+ ViewBag.Title = "缴费订单管理";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Form.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Form.js
new file mode 100644
index 000000000..1591be1db
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Form.js
@@ -0,0 +1,53 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-12 22:06
+ * 描 述:缴费订单管理
+ */
+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 () {
+ $('#Status').lrDataItemSelect({ code: 'PayStatus' });
+ $('#PayMode').lrDataItemSelect({ code: 'PayMode' });
+ $('#OrderType').lrDataItemSelect({ code: 'OrderType' });
+ },
+ initData: function () {
+ if (!!keyValue) {
+ $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuOrder/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 + '/ReceiveSendFeeManagement/FinaChargeStuOrder/SaveForm?keyValue=' + keyValue, postData, function (res) {
+ // 保存成功后才回调
+ if (!!callBack) {
+ callBack();
+ }
+ });
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Import.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Import.cshtml
new file mode 100644
index 000000000..f75886794
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Import.cshtml
@@ -0,0 +1,26 @@
+@{
+ ViewBag.Title = "Form";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+
+@Html.AppendCssFile("/Areas/LR_SystemModule/Views/ExcelImport/ImportForm.css")
+
+
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Import.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Import.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Import.js
new file mode 100644
index 000000000..fcb9330fd
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Import.js
@@ -0,0 +1,175 @@
+/*
+ * 描 述:附件上传管理
+ */
+var gridId = request('gridtable');
+var bootstrap = function ($, learun) {
+ "use strict";
+
+ var fileInfo = {};
+
+ // 触发合并文件碎片
+ var mergeFileChunks = function (file) {
+ var param = {};
+ param['__RequestVerificationToken'] = $.lrToken;
+ param['fileGuid'] = fileInfo[file.id].fileGuid;
+ param['fileName'] = fileInfo[file.id].name;
+ param['chunks'] = fileInfo[file.id].chunks;
+ var queryJson = JSON.stringify(learun.frameTab.currentIframe().queryJson);
+
+ param['queryJson'] = queryJson;
+ learun.httpAsyncPost(top.$.rootUrl + "/ReceiveSendFeeManagement/FinaChargeStuOrder/ExecuteImportExcel", param, function (res) {
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.find('.lr-uploader-progress').remove();
+
+ if (res.code == learun.httpCode.success) {
+ if (res.data.Success != '0') {
+ learun.alert.success('导入成功' + res.data.Success + '条');
+ }
+ // 文件保存成功后
+ $fileItem.append('
' + res.data.Success + '/' + res.data.Fail + '
');
+ // 如果有失败
+ if (res.data.Fail != '0') {
+ learun.download({ url: top.$.rootUrl + '/LR_SystemModule/ExcelImport/DownImportErrorFile', param: { fileId: fileInfo[file.id].fileGuid, fileName: fileInfo[file.id].name, __RequestVerificationToken: $.lrToken }, method: 'POST' });
+ }
+
+ }
+ else {
+ learun.alert.error(res.info);
+ $fileItem.append('
');
+ }
+ });
+ }
+ // 触发清楚文件碎片
+ var reomveFileChunks = function (file) {
+ var param = {};
+ param['__RequestVerificationToken'] = $.lrToken;
+ param['fileGuid'] = fileInfo[file.id].fileGuid;
+ param['chunks'] = fileInfo[file.id].chunks;
+ learun.httpAsyncPost(top.$.rootUrl + "/LR_SystemModule/Annexes/MergeAnnexesFile", param, function (res) { });
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.find('.lr-uploader-progress').remove();
+ $fileItem.append('
');
+ }
+ // 删除文件
+ var DeleteFile = function (fileId) {
+ var param = {};
+ param['__RequestVerificationToken'] = $.lrToken;
+ param['fileId'] = fileInfo[fileId].fileGuid;
+ learun.httpAsyncPost(top.$.rootUrl + "/LR_SystemModule/Annexes/DeleteAnnexesFile", param, function (res) { });
+ var file = page.uploader.getFile(fileId);
+ if (!!file) {
+ page.uploader.removeFile(file);
+ }
+ delete fileInfo[fileId];
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + fileId);
+ $fileItem.remove();
+ if ($('#lr_form_file_queue_list>div').length == 0) {
+ $('#lr_form_file_queue .lr-form-file-queue-bg').show();
+ }
+ }
+
+ var page = {
+ uploader: null,
+ init: function () {
+ if (!WebUploader.Uploader.support()) {
+ alert('Web Uploader 不支持您的浏览器!如果你使用的是IE浏览器,请尝试升级 flash 播放器');
+ throw new Error('WebUploader does not support the browser you are using.');
+ }
+ /*导入模板下载*/
+ $('#lr_down_file_btn').on('click', function () {
+ learun.download({
+ method: "get",
+ url: '/Content/excel/线下缴费记录.xls'
+ });
+ });
+
+ page.uploader = WebUploader.create({
+ auto: true,
+ swf: top.$.rootUrl + '/Content/webuploader/Uploader.swf',
+ // 文件接收服务端。
+ server: top.$.rootUrl + "/LR_SystemModule/Annexes/UploadAnnexesFileChunk",
+ // 选择文件的按钮。可选。
+ // 内部根据当前运行是创建,可能是input元素,也可能是flash.
+ pick: '#lr_add_file_btn',
+ dnd: '#lr_form_file_queue',
+ paste: 'document.body',
+ disableGlobalDnd: true,
+ accept: {
+ extensions: "xls,xlsx"
+ },
+ multiple: false,
+ // 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传!
+ resize: false,
+ // 文件分片上传
+ chunked: true,
+ chunkRetry: 3,
+ prepareNextFile: true,
+ chunkSize: '1048576',
+ // 上传参数
+ formData: {
+ __RequestVerificationToken: $.lrToken
+ }
+ });
+ page.uploader.on('fileQueued', page.fileQueued);
+ page.uploader.on('uploadStart', page.uploadStart);
+ page.uploader.on('uploadBeforeSend', page.uploadBeforeSend);
+ page.uploader.on('uploadProgress', page.uploadProgress);
+ page.uploader.on('uploadSuccess', page.uploadSuccess);
+ page.uploader.on('uploadError', page.uploadError);
+ page.uploader.on('uploadComplete', page.uploadComplete);
+ page.uploader.on('error', page.error);
+
+
+ //$('#lr_form_file_queue').mCustomScrollbar({ // 优化滚动条
+ // theme: "minimal-dark"
+ //});
+
+ },
+ fileQueued: function (file) {// 文件加载到队列
+ fileInfo[file.id] = { name: file.name };
+ $('#lr_form_file_queue .lr-form-file-queue-bg').hide();
+ // 添加一条文件记录
+ var $item = $('
');
+ $item.append('
');
+ $item.append('
' + file.name + '(' + learun.countFileSize(file.size) + ')');
+
+ $('#lr_form_file_queue_list').append($item);
+ },
+ uploadStart: function (file) {
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.append('
');
+ },
+ uploadBeforeSend: function (object, data, headers) {
+ data.chunk = data.chunk || 0;
+ data.chunks = data.chunks || 1;
+ fileInfo[data.id].fileGuid = fileInfo[data.id].fileGuid || WebUploader.Base.guid();
+ data.fileGuid = fileInfo[data.id].fileGuid;
+ fileInfo[data.id].chunks = data.chunks;
+ },
+ uploadProgress: function (file, percentage) {
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.find('.lr-uploader-progress-bar').css('width', (percentage * 100 + '%'));
+ },
+ uploadSuccess: function (file, res) {
+ if (res.code == 200) {// 上传成功
+ mergeFileChunks(file);
+ }
+ else {// 上传失败
+ reomveFileChunks(file);
+ }
+ },
+ uploadError: function (file, code) {
+ reomveFileChunks(file);
+ },
+ uploadComplete: function (file) {
+ },
+ error: function (type) {
+ switch (type) {
+ case 'Q_TYPE_DENIED':
+ learun.alert.error('当前文件类型不允许上传');
+ break;
+ };
+ }
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Index.cshtml
new file mode 100644
index 000000000..982de67fe
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Index.cshtml
@@ -0,0 +1,58 @@
+@{
+ ViewBag.Title = "缴费订单管理";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Index.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Index.js
new file mode 100644
index 000000000..1bbdb8193
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrder/Index.js
@@ -0,0 +1,198 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-12 22:06
+ * 描 述:缴费订单管理
+ */
+var refreshGirdData;
+var bootstrap = function ($, learun) {
+ "use strict";
+ var startTime;
+ var endTime;
+ var page = {
+ init: function () {
+ page.initGird();
+ page.bind();
+ },
+ bind: function () {
+ // 时间搜索框
+ $('#datesearch').lrdate({
+ dfdata: [
+ { name: '今天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00') }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
+ { name: '近7天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'd', -6) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
+ { name: '近1个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -1) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
+ { name: '近3个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -3) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } }
+ ],
+ // 月
+ mShow: false,
+ premShow: false,
+ // 季度
+ jShow: false,
+ prejShow: false,
+ // 年
+ ysShow: false,
+ yxShow: false,
+ preyShow: false,
+ yShow: false,
+ // 默认
+ dfvalue: '1',
+ selectfn: function (begin, end) {
+ startTime = begin;
+ endTime = end;
+ page.search();
+ }
+ });
+ $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
+ page.search(queryJson);
+ }, 220, 400);
+ $('#Status').lrDataItemSelect({ code: 'PayStatus' });
+ $('#PayMode').lrDataItemSelect({ code: 'PayMode' });
+ $('#OrderType').lrDataItemSelect({ code: 'OrderType' });
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ // 导入
+ $('#lr_import').on('click', function () {
+ learun.layerForm({
+ id: 'indexImport',
+ title: "导入线下缴费记录",
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuOrder/Import',
+ width: 600,
+ height: 400,
+ maxmin: true,
+ btn: null,
+ end: function () {
+ refreshGirdData();
+ }
+ });
+ });
+ //明细
+ $('#lr_detail').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('Id');
+ if (learun.checkrow(keyValue)) {
+ learun.layerForm({
+ id: 'detail',
+ title: "订单明细",
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/Index?keyValue=' + keyValue,
+ width: 800,
+ height: 450,
+ btn: null,
+ end: function () {
+ refreshGirdData();
+ }
+ });
+ }
+ });
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuOrder/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", 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: 150, 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: 80, align: "left" },
+ { label: "缴费年度", name: "YearNo", width: 80, align: "left" },
+ { label: "订单编号", name: "orderid", width: 150, align: "left"},
+ { label: "收费标准", name: "YJAmount", width: 100, align: "left"},
+ { label: "缴费金额", name: "SJAmount", width: 100, align: "left"},
+ { label: "应缴余额", name: "DJAmount", width: 100, align: "left"},
+ { label: "超出应收额", name: "NowBlance", width: 100, align: "left"},
+ { label: "缴费状态", name: "Status", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op,$cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'PayStatus',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }},
+ { label: "订单生成时间", name: "PlaceOrderTime", width: 150, align: "left"},
+ { label: "付款时间", name: "PayTime", width: 150, align: "left"},
+ { label: "支付方式", name: "PayMode", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op,$cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'PayMode',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }},
+ { label: "订单来源", name: "OrderType", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op,$cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'OrderType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }},
+ { label: "银行订单号", name: "BankOrder", width: 100, align: "left"},
+ ],
+ mainId:'Id',
+ isPage: true,
+ sidx:'PlaceOrderTime desc'
+ });
+ },
+ search: function (param) {
+ param = param || {};
+ param.StartTime = startTime;
+ param.EndTime = endTime;
+ $('#gridtable').jfGridSet('reload',{ queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Form.cshtml
new file mode 100644
index 000000000..380d5cd25
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Form.cshtml
@@ -0,0 +1,31 @@
+@{
+ ViewBag.Title = "FinaChargeStuOrderDetail";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Form.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Form.js
new file mode 100644
index 000000000..5a1b15f19
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Form.js
@@ -0,0 +1,50 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-12 22:14
+ * 描 述:FinaChargeStuOrderDetail
+ */
+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 + '/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/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 + '/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/SaveForm?keyValue=' + keyValue, postData, function (res) {
+ // 保存成功后才回调
+ if (!!callBack) {
+ callBack();
+ }
+ });
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Index.cshtml
new file mode 100644
index 000000000..cd6f2e612
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Index.cshtml
@@ -0,0 +1,21 @@
+@{
+ ViewBag.Title = "FinaChargeStuOrderDetail";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Index.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Index.js
new file mode 100644
index 000000000..8b1dbd5b7
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuOrderDetail/Index.js
@@ -0,0 +1,50 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-12 22:14
+ * 描 述:FinaChargeStuOrderDetail
+ */
+var refreshGirdData;
+var keyValue = request('keyValue');
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ page.initGird();
+ page.bind();
+ },
+ bind: function () {
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/GetPageList',
+ headData: [
+ { label: "收费项目编号", name: "ChargeItemCode", width: 100, align: "left"},
+ { label: "收费项目名称", name: "ChargeItemName", width: 100, align: "left"},
+ { label: "收费标准", name: "YJAmount", width: 100, align: "left"},
+ { label: "缴费金额", name: "SJAmount", width: 100, align: "left"},
+ { label: "应缴余额", name: "DJAmount", width: 100, align: "left"},
+ { label: "超出应收额", name: "NowBlance", width: 100, align: "left"},
+ ],
+ mainId:'Id',
+ isPage: true,
+ sidx: 'ChargeItemCode'
+ });
+ page.search();
+ },
+ search: function (param) {
+ param = param || {};
+ param.FCSOId = keyValue;
+ $('#gridtable').jfGridSet('reload',{ queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Form.cshtml
new file mode 100644
index 000000000..4cc5331d1
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Form.cshtml
@@ -0,0 +1,31 @@
+@{
+ ViewBag.Title = "学生年度缴费管理";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Form.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Form.js
new file mode 100644
index 000000000..864a7fcec
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Form.js
@@ -0,0 +1,51 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-07 15:52
+ * 描 述:学生年度缴费管理
+ */
+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 () {
+ $('#PayFeeStatus').lrDataItemSelect({ code: 'PayStatus' });
+ },
+ initData: function () {
+ if (!!keyValue) {
+ $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/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 + '/ReceiveSendFeeManagement/FinaChargeStuYear/SaveForm?keyValue=' + keyValue, postData, function (res) {
+ // 保存成功后才回调
+ if (!!callBack) {
+ callBack();
+ }
+ });
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/GenerateByConditionForm.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/GenerateByConditionForm.cshtml
new file mode 100644
index 000000000..b9ef0b9c7
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/GenerateByConditionForm.cshtml
@@ -0,0 +1,14 @@
+@{
+ ViewBag.Title = "按条件清空排课数据";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/GenerateByConditionForm.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/GenerateByConditionForm.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/GenerateByConditionForm.js
new file mode 100644
index 000000000..5aeb6bd6d
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/GenerateByConditionForm.js
@@ -0,0 +1,42 @@
+/* * 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园(http://www.learun.cn)
+ * Copyright (c) 2013-2018 北京泉江科技有限公司
+ * 创建人:超级管理员
+ * 日 期:2019-02-27 11:05
+ * 描 述:按条件清空排课数据
+ */
+var acceptClick;
+var sDeptNo, sMajorNo, sGrade;
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ page.bind();
+ },
+ bind: function () {
+ $('#FSYear').lrselect({
+ url: top.$.rootUrl + '/EducationalAdministration/CdMajor/GenerateNearByYear',
+ value: 'value',
+ text: 'text'
+ });
+ var now = new Date();
+ $('#FSYear').lrselectSet(now.getFullYear());
+ }
+ };
+ // 保存数据
+ acceptClick = function (callBack) {
+ if (!$('#form').lrValidform()) {
+ return false;
+ }
+ var postData = {
+ strEntity: JSON.stringify($('body').lrGetFormData())
+ };
+ $.lrSaveForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/SaveGenerateByCondition', postData, function (res) {
+ // 保存成功后才回调
+ if (!!callBack) {
+ callBack();
+ }
+ });
+
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Index.cshtml
new file mode 100644
index 000000000..459ea2c14
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Index.cshtml
@@ -0,0 +1,64 @@
+@{
+ ViewBag.Title = "学生年度缴费管理";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Index.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Index.js
new file mode 100644
index 000000000..3e954a123
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/Index.js
@@ -0,0 +1,154 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-07 15:52
+ * 描 述:学生年度缴费管理
+ */
+var refreshGirdData;
+var fSYear;
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ page.initGird();
+ page.bind();
+ },
+ bind: function () {
+ // 初始化左侧树形数据
+ $('#dataTree').lrtree({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/GetYearTree',
+ nodeClick: function (item) {
+ fSYear = item.value;
+ page.search();
+ }
+ });
+ $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
+ page.search(queryJson);
+ }, 250, 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' });
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ //明细
+ $('#lr_detail').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSYId');
+ if (learun.checkrow(keyValue)) {
+ learun.layerForm({
+ id: 'detail',
+ title: "收费明细",
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/Index?keyValue=' + keyValue,
+ width: 1400,
+ height: 600,
+ btn: null,
+ end: function () {
+ refreshGirdData();
+ }
+ });
+ }
+ });
+ // 新增
+ $('#lr_add').on('click', function () {
+ learun.layerForm({
+ id: 'form',
+ title: '生成缴费信息',
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/GenerateByConditionForm',
+ width: 400,
+ height: 200,
+ callBack: function (id) {
+ return top[id].acceptClick(refreshGirdData);
+ }
+ });
+ });
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", 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: 150, 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: 80, align: "left" },
+ { label: "缴费年度", name: "FSYear", width: 80, align: "left" },
+ { label: "收费标准", name: "YJAmount", width: 80, align: "left" },
+ { label: "缴费金额", name: "SJAmount", width: 80, align: "left" },
+ { label: "应缴余额", name: "NeedToPay", width: 80, align: "left" },
+ { label: "超出应收额", name: "FSBlance", width: 80, align: "left" },
+ {
+ label: "缴费状态", name: "PayFeeStatus", width: 100, align: "left",
+ formatter: function (cellvalue, row) {
+ if (cellvalue === 0) {
+ return '
未缴费';
+ } else if (cellvalue === 1) {
+ return '
已缴费';
+ } else {
+ return '
部分缴纳';
+ }
+ }
+ },
+ ],
+ mainId: 'FSYId',
+ isPage: true
+ });
+ page.search();
+ },
+ search: function (param) {
+ param = param || {};
+ param.fSYear = fSYear;
+ $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForStudent.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForStudent.cshtml
new file mode 100644
index 000000000..ade5d56f5
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForStudent.cshtml
@@ -0,0 +1,32 @@
+@{
+ ViewBag.Title = "学生年度缴费管理";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForStudent.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForStudent.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForStudent.js
new file mode 100644
index 000000000..0b386ea48
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForStudent.js
@@ -0,0 +1,181 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-07 15:52
+ * 描 述:学生年度缴费管理
+ */
+var refreshGirdData;
+var fSYear;
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ page.bind();
+ learun.httpAsync("get", "/ReceiveSendFeeManagement/FinaChargeStuYear/IfCanPay", {}, function (data) {
+ if (data.success == "0") {
+ learun.alert.error(data.info);
+ } else {
+ setTimeout(function () {
+ page.initGird();
+ }, 500);//延迟
+ }
+ });
+ },
+ bind: function () {
+ $('#FSYear').lrselect({
+ placeholder:"请选择缴费年度",
+ url: top.$.rootUrl + '/EducationalAdministration/CdMajor/GenerateNearByYear',
+ value: 'value',
+ text: 'text'
+ });
+ var now = new Date();
+ fSYear = now.getFullYear();
+ $('#FSYear').lrselectSet(fSYear);
+ $('#btn_Search').on('click', function () {
+ page.search();
+ });
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ //二维码缴费
+ $('#lr_pay').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSYId');
+ var 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 + '/ReceiveSendFeeManagement/FinaChargeStuYear/PayFeeForm?keyValue=' + keyValue,
+ width: 800,
+ height: 690,
+ btn: null
+ });
+ }
+ });
+ //查看发票
+ $('#lr_viewinvoice').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSYId');
+ var selectedRow = $('#gridtable').jfGridGet('rowdata');
+ if (learun.checkrow(keyValue)) {
+ if (selectedRow.PayFeeStatus == "1" || selectedRow.PayFeeStatus == "4") {
+ //查询发票链接
+ learun.httpAsyncGet(
+ top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/GetInvoiceRecord?keyValue=' + keyValue, function (res) {
+ if (!!res.data && res.data.length > 0) {
+ learun.layerForm({
+ id: 'form_invoice',
+ title: '查看发票',
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/InvoiceForm?keyValue=' + keyValue,
+ width: 1000,
+ height: 800,
+ btn: null
+ });
+ } else {
+ learun.alert.warning("当前学生尚未开具发票,请缴费成功后耐心等待!");
+ return;
+ }
+ });
+ } else {
+ learun.alert.warning("当前学生尚未开票,请缴费成功后耐心等待!");
+ return;
+ }
+ }
+ });
+
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", 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: "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" },
+ { label: "缴费年度", name: "FSYear", width: 100, align: "left" },
+ { label: "收费标准", name: "YJAmount", width: 80, align: "left" },
+ { label: "缴费金额", name: "SJAmount", width: 80, align: "left" },
+ { label: "应缴余额", name: "NeedToPay", width: 80, align: "left" },
+ { label: "超出应收额", name: "FSBlance", width: 80, align: "left" },
+ {
+ label: "缴费状态", name: "PayFeeStatus", width: 100, align: "left",
+ formatter: function (cellvalue, row) {
+ if (cellvalue === 0) {
+ return '
未缴费';
+ } else if (cellvalue === 1) {
+ return '
已缴费';
+ } else {
+ return '
部分缴纳';
+ }
+ }
+ },
+ ],
+ mainId: 'FSYId',
+ isPage: true
+ });
+ page.search();
+ },
+ search: function (param) {
+ param = param || {};
+ var userinfo = learun.clientdata.get(['userinfo']);
+ param.StuNo = userinfo.account;
+ param.F_CheckMark = 1;
+ param.FSYear = $("#FSYear").lrselectGet();
+ $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForTeacher.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForTeacher.cshtml
new file mode 100644
index 000000000..d6bfb42b6
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForTeacher.cshtml
@@ -0,0 +1,63 @@
+@{
+ ViewBag.Title = "学生年度缴费管理";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForTeacher.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForTeacher.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForTeacher.js
new file mode 100644
index 000000000..6a7a2b132
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/IndexForTeacher.js
@@ -0,0 +1,154 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-07 15:52
+ * 描 述:学生年度缴费管理
+ */
+var refreshGirdData;
+var fSYear;
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ page.initGird();
+ page.bind();
+ },
+ bind: function () {
+ // 初始化左侧树形数据
+ $('#dataTree').lrtree({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/GetYearTree',
+ nodeClick: function (item) {
+ fSYear = item.value;
+ page.search();
+ }
+ });
+ $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
+ page.search(queryJson);
+ }, 250, 400);
+ $('#DeptNo').lrselect({
+ url: "/ReceiveSendFeeManagement/FinaChargeStuYear/GetDeptByEmpNo",
+ value: "DeptNo",
+ text: "DeptName"
+ });
+ $('#MajorNo').lrselect({
+ url: "/ReceiveSendFeeManagement/FinaChargeStuYear/GetMajorByEmpNo",
+ value: "MajorNo",
+ text: "MajorName"
+ });
+ $('#ClassNo').lrselect({
+ url:"/ReceiveSendFeeManagement/FinaChargeStuYear/GetClassByEmpNo",
+ value: "ClassNo",
+ text: "ClassName"
+ });
+ $('#PayFeeStatus').lrDataItemSelect({ code: 'PayStatus' });
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ //明细
+ $('#lr_detail').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSYId');
+ if (learun.checkrow(keyValue)) {
+ learun.layerForm({
+ id: 'detail',
+ title: "收费明细",
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/IndexForTeacher?keyValue=' + keyValue,
+ width: 1400,
+ height: 600,
+ btn: null,
+ end: function () {
+ refreshGirdData();
+ }
+ });
+ }
+ });
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", 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: 150, 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: 80, align: "left" },
+ { label: "缴费年度", name: "FSYear", width: 100, align: "left" },
+ { label: "收费标准", name: "YJAmount", width: 80, align: "left" },
+ { label: "缴费金额", name: "SJAmount", width: 80, align: "left" },
+ { label: "应缴余额", name: "NeedToPay", width: 80, align: "left" },
+ { label: "超出应收额", name: "FSBlance", width: 80, align: "left" },
+ {
+ label: "缴费状态", name: "PayFeeStatus", width: 100, align: "left",
+ formatter: function (cellvalue, row) {
+ if (cellvalue === 0) {
+ return '
未缴费';
+ } else if (cellvalue === 1) {
+ return '
已缴费';
+ } else {
+ return '
部分缴纳';
+ }
+ }
+ },
+ ],
+ mainId: 'FSYId',
+ isPage: true
+ });
+ page.search();
+ },
+ search: function (param) {
+ param = param || {};
+ param.fSYear = fSYear;
+ param.Teacher = 1;
+ $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/InvoiceForm.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/InvoiceForm.cshtml
new file mode 100644
index 000000000..2be5e31cc
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/InvoiceForm.cshtml
@@ -0,0 +1,15 @@
+@{
+ ViewBag.Title = "新生缴费管理";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+
+
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/InvoiceForm.js")
\ No newline at end of file
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/InvoiceForm.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/InvoiceForm.js
new file mode 100644
index 000000000..493457ff9
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/InvoiceForm.js
@@ -0,0 +1,53 @@
+/* * 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园(http://www.learun.cn)
+ * Copyright (c) 2013-2018 北京泉江科技有限公司
+ * 创建人:超级管理员
+ * 日 期:2019-08-08 17:21
+ * 描 述:新生缴费管理
+ */
+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 () {
+ $('#lr_form_tabs').lrFormTab();
+ //$('#lr_form_tabs ul li').eq(0).trigger('click');
+
+ //取消缴费
+ $('#cancelPayFee').click(function () {
+ learun.layerClose(window.name);
+ });
+ },
+ initData: function () {
+ if (!!keyValue) {
+ learun.httpAsyncGet(
+ top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/GetInvoiceRecord?keyValue=' + keyValue, function (res) {
+ if (!!res.data) {
+ var ulHtml = "";
+ var contentHtml = "";
+ for (var i = 0; i < res.data.length; i++) {
+ ulHtml += '
票据' + (i + 1) + '';
+ contentHtml += '
';
+ contentHtml += '';
+ contentHtml += '
';
+ }
+ $('#tabul').html(ulHtml);
+ $('#lr_tab_content').html(contentHtml);
+ $('#lr_form_tabs ul li').eq(0).trigger('click');
+ } else {
+ learun.alert.warning("当前新生尚未开具发票,请缴费成功后耐心等待!");
+ return;
+ }
+ });
+ }
+ }
+ };
+
+
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/PayFeeForm.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/PayFeeForm.cshtml
new file mode 100644
index 000000000..9da091aef
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/PayFeeForm.cshtml
@@ -0,0 +1,50 @@
+@{
+ ViewBag.Title = "新生缴费管理";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/PayFeeForm.js")
\ No newline at end of file
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/PayFeeForm.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/PayFeeForm.js
new file mode 100644
index 000000000..8cba934d2
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYear/PayFeeForm.js
@@ -0,0 +1,162 @@
+/* * 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园(http://www.learun.cn)
+ * Copyright (c) 2013-2018 北京泉江科技有限公司
+ * 创建人:超级管理员
+ * 日 期:2019-08-08 17:21
+ * 描 述:老生缴费管理
+ */
+var acceptClick;
+var keyValue = request('keyValue');
+var PayFeeTotal = 0;//应交费用
+var SJAmount = 0;//已交费用
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ $('.lr-form-wrap').lrscroll();
+ page.bind();
+ page.initData();
+ },
+ bind: function () {
+ //获取缴费二维码
+ $('#confirmPayFee').click(function () {
+ if (parseFloat($('#PayMoney').html()) === 0) {
+ return learun.alert.warning("所交费用不能为0!");
+ }
+ if (parseFloat($('#PayMoney').html()) > PayFeeTotal) {
+ return learun.alert.warning("所交费用超出应交费用!");
+ }
+ if (SJAmount > 0) {
+ learun.layerConfirm('当前年度已存在缴费记录,是否继续缴费!',
+ function (res) {
+ if (!res) {
+ return false;
+ } else {
+ page.getQRCode();
+ }
+ });
+ } else {
+ page.getQRCode();
+ }
+
+ });
+ //取消缴费
+ $('#cancelPayFee').click(function () {
+ learun.layerClose(window.name);
+ });
+ $('#queryPayFee').click(function () {
+ location.reload();
+ });
+
+ //计算实交金额
+ $('table').on('change',
+ '.paydetail',
+ function () {
+ var num = 0;
+ num = parseFloat(num);
+ $(".paydetail").each(function (i, item) {
+ var val = 0;
+ if (!!$(this).val()) {
+ val = parseFloat($(this).val()).toFixed(2);
+ }
+ num += parseFloat(val);
+ });
+ $('#PayMoney').html(parseFloat(num).toFixed(2));
+ });
+ },
+ initData: function () {
+ if (!!keyValue) {
+ $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/GetPayFeeDetail?keyValue=' + keyValue, function (data) {
+ if (data['FinaChargesStandardList'].length == 0) {
+ learun.alert.warning("未查询到该学生收费明细!请先维护收费明细。");
+ learun.layerClose(window.name);
+ return;
+ }
+ var StuInfoFresh = data['StuInfoFreshData'];
+ var className = "";
+ learun.clientdata.getAsync('custmerData', {
+ url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'bjsj',
+ key: StuInfoFresh.ClassNo,
+ keyId: 'classno',
+ callback: function (_data) {
+ className = _data['classname'];
+ if (!className) {
+ className = "未知";
+ }
+ }
+ });
+ var deptName = "";
+ learun.clientdata.getAsync('custmerData', {
+ url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'CdDeptInfo',
+ key: StuInfoFresh.DeptNo,
+ keyId: 'deptno',
+ callback: function (_data) {
+ deptName = _data['deptname'];
+ if (!deptName) {
+ deptName = "未知";
+ }
+ }
+ });
+ PayFeeTotal = parseFloat(data['PayFeeTotal']);
+ SJAmount = parseFloat(data['SJAmount']);
+ var html = "
学号 | " + StuInfoFresh.StuNo + " | |
";
+ html += "
姓名 | " + StuInfoFresh.StuName + " |
";
+ html += "
班级 | " + className + " |
";
+ html += "
系别 | " + deptName + " |
";
+ html += "
缴费年度 | " + StuInfoFresh.FSYear + " |
";
+
+ html += '
缴费项目 | 收费标准 | 本次实缴 |
';
+ $.each(data['FinaChargesStandardList'], function (i, item) {
+ html += '
' + item.ChargeItemName + ' | ' + item.Standard + '元 | ' +
+ ' |
';
+ });
+
+ html += '
应缴合计 | ' + data['PayFeeTotal'] + '元 | ' + PayFeeTotal + ' |
';
+ html += '
| |
';
+ html += '
已缴金额 | ' + SJAmount + ' |
';
+ $('#PayFeeDetail').html(html);
+ });
+ }
+ },
+ getQRCode: function () {
+ var list = [];
+ var ifisnull = false;
+ $('.paydetail').each(function (i, item) {
+ var value = 0;
+ if (!!$(this).val()) {
+ value = parseFloat($(this).val());
+ } else {
+ ifisnull = true;
+ }
+ var entity = {
+ ChargeItemName: ($(this).attr('data-name')).replace(/^\s*|\s*$/g, ""),
+ ChargeItemCode: $(this).attr('id'),
+ YJAmount: $(this).attr('data-amount'),
+ SJAmount: value
+ };
+ list.push(entity);
+ });
+ if (ifisnull) {
+ learun.alert.warning("收费项目金额不能为空!请检查并填写。");
+ return;
+ }
+ $('.paydetail').each(function(i, item) {
+ $(this).attr('disabled', 'disabled');
+ });
+ var param = {};
+ param.FSYId = keyValue;
+ param.StuNo = $('#StuNo').html();
+ param.FSYear = $('#FSYear').html();
+ param.PayMoney = $('#PayMoney').html();
+ learun.loading(true, '正在生成付款信息请稍等...');
+ $("#confirmPayFee").hide();
+ learun.httpAsyncPost(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYear/PayFeeQRCode', { strEntity: JSON.stringify(param), detailList: JSON.stringify(list) }, function (res) {
+ learun.loading(false);
+ $('#qrcodeImg').attr('src', res.info);
+ });
+ }
+ };
+
+
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Form.cshtml
new file mode 100644
index 000000000..d7df03b56
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Form.cshtml
@@ -0,0 +1,31 @@
+@{
+ ViewBag.Title = "FinaChargeStuYearItem";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Form.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Form.js
new file mode 100644
index 000000000..a0ab57b63
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Form.js
@@ -0,0 +1,52 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-07 16:40
+ * 描 述:FinaChargeStuYearItem
+ */
+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 () {
+ $('#ChargeItemType').lrDataItemSelect({ code: 'ChargeItemType' });
+ $('#PayFeeStatus').lrDataItemSelect({ code: 'PayStatus' });
+ },
+ initData: function () {
+ if (!!keyValue) {
+ $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/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 + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/SaveForm?keyValue=' + keyValue, postData, function (res) {
+ // 保存成功后才回调
+ if (!!callBack) {
+ callBack();
+ }
+ });
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Import.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Import.cshtml
new file mode 100644
index 000000000..d75b149d9
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Import.cshtml
@@ -0,0 +1,26 @@
+@{
+ ViewBag.Title = "Form";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+
+@Html.AppendCssFile("/Areas/LR_SystemModule/Views/ExcelImport/ImportForm.css")
+
+
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Import.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Import.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Import.js
new file mode 100644
index 000000000..38c6791c0
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Import.js
@@ -0,0 +1,175 @@
+/*
+ * 描 述:附件上传管理
+ */
+var gridId = request('gridtable');
+var bootstrap = function ($, learun) {
+ "use strict";
+
+ var fileInfo = {};
+
+ // 触发合并文件碎片
+ var mergeFileChunks = function (file) {
+ var param = {};
+ param['__RequestVerificationToken'] = $.lrToken;
+ param['fileGuid'] = fileInfo[file.id].fileGuid;
+ param['fileName'] = fileInfo[file.id].name;
+ param['chunks'] = fileInfo[file.id].chunks;
+ var queryJson = JSON.stringify(learun.frameTab.currentIframe().queryJson);
+
+ param['queryJson'] = queryJson;
+ learun.httpAsyncPost(top.$.rootUrl + "/ReceiveSendFeeManagement/FinaChargeStuYearItem/ExecuteImportExcel", param, function (res) {
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.find('.lr-uploader-progress').remove();
+
+ if (res.code == learun.httpCode.success) {
+ if (res.data.Success != '0') {
+ learun.alert.success('导入成功' + res.data.Success + '条');
+ }
+ // 文件保存成功后
+ $fileItem.append('
' + res.data.Success + '/' + res.data.Fail + '
');
+ // 如果有失败
+ if (res.data.Fail != '0') {
+ learun.download({ url: top.$.rootUrl + '/LR_SystemModule/ExcelImport/DownImportErrorFile', param: { fileId: fileInfo[file.id].fileGuid, fileName: fileInfo[file.id].name, __RequestVerificationToken: $.lrToken }, method: 'POST' });
+ }
+
+ }
+ else {
+ learun.alert.error(res.info);
+ $fileItem.append('
');
+ }
+ });
+ }
+ // 触发清楚文件碎片
+ var reomveFileChunks = function (file) {
+ var param = {};
+ param['__RequestVerificationToken'] = $.lrToken;
+ param['fileGuid'] = fileInfo[file.id].fileGuid;
+ param['chunks'] = fileInfo[file.id].chunks;
+ learun.httpAsyncPost(top.$.rootUrl + "/LR_SystemModule/Annexes/MergeAnnexesFile", param, function (res) { });
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.find('.lr-uploader-progress').remove();
+ $fileItem.append('
');
+ }
+ // 删除文件
+ var DeleteFile = function (fileId) {
+ var param = {};
+ param['__RequestVerificationToken'] = $.lrToken;
+ param['fileId'] = fileInfo[fileId].fileGuid;
+ learun.httpAsyncPost(top.$.rootUrl + "/LR_SystemModule/Annexes/DeleteAnnexesFile", param, function (res) { });
+ var file = page.uploader.getFile(fileId);
+ if (!!file) {
+ page.uploader.removeFile(file);
+ }
+ delete fileInfo[fileId];
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + fileId);
+ $fileItem.remove();
+ if ($('#lr_form_file_queue_list>div').length == 0) {
+ $('#lr_form_file_queue .lr-form-file-queue-bg').show();
+ }
+ }
+
+ var page = {
+ uploader: null,
+ init: function () {
+ if (!WebUploader.Uploader.support()) {
+ alert('Web Uploader 不支持您的浏览器!如果你使用的是IE浏览器,请尝试升级 flash 播放器');
+ throw new Error('WebUploader does not support the browser you are using.');
+ }
+ /*导入模板下载*/
+ $('#lr_down_file_btn').on('click', function () {
+ learun.download({
+ method: "get",
+ url: '/Content/excel/缴费明细.xls'
+ });
+ });
+
+ page.uploader = WebUploader.create({
+ auto: true,
+ swf: top.$.rootUrl + '/Content/webuploader/Uploader.swf',
+ // 文件接收服务端。
+ server: top.$.rootUrl + "/LR_SystemModule/Annexes/UploadAnnexesFileChunk",
+ // 选择文件的按钮。可选。
+ // 内部根据当前运行是创建,可能是input元素,也可能是flash.
+ pick: '#lr_add_file_btn',
+ dnd: '#lr_form_file_queue',
+ paste: 'document.body',
+ disableGlobalDnd: true,
+ accept: {
+ extensions: "xls,xlsx"
+ },
+ multiple: false,
+ // 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传!
+ resize: false,
+ // 文件分片上传
+ chunked: true,
+ chunkRetry: 3,
+ prepareNextFile: true,
+ chunkSize: '1048576',
+ // 上传参数
+ formData: {
+ __RequestVerificationToken: $.lrToken
+ }
+ });
+ page.uploader.on('fileQueued', page.fileQueued);
+ page.uploader.on('uploadStart', page.uploadStart);
+ page.uploader.on('uploadBeforeSend', page.uploadBeforeSend);
+ page.uploader.on('uploadProgress', page.uploadProgress);
+ page.uploader.on('uploadSuccess', page.uploadSuccess);
+ page.uploader.on('uploadError', page.uploadError);
+ page.uploader.on('uploadComplete', page.uploadComplete);
+ page.uploader.on('error', page.error);
+
+
+ //$('#lr_form_file_queue').mCustomScrollbar({ // 优化滚动条
+ // theme: "minimal-dark"
+ //});
+
+ },
+ fileQueued: function (file) {// 文件加载到队列
+ fileInfo[file.id] = { name: file.name };
+ $('#lr_form_file_queue .lr-form-file-queue-bg').hide();
+ // 添加一条文件记录
+ var $item = $('
');
+ $item.append('
');
+ $item.append('
' + file.name + '(' + learun.countFileSize(file.size) + ')');
+
+ $('#lr_form_file_queue_list').append($item);
+ },
+ uploadStart: function (file) {
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.append('
');
+ },
+ uploadBeforeSend: function (object, data, headers) {
+ data.chunk = data.chunk || 0;
+ data.chunks = data.chunks || 1;
+ fileInfo[data.id].fileGuid = fileInfo[data.id].fileGuid || WebUploader.Base.guid();
+ data.fileGuid = fileInfo[data.id].fileGuid;
+ fileInfo[data.id].chunks = data.chunks;
+ },
+ uploadProgress: function (file, percentage) {
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.find('.lr-uploader-progress-bar').css('width', (percentage * 100 + '%'));
+ },
+ uploadSuccess: function (file, res) {
+ if (res.code == 200) {// 上传成功
+ mergeFileChunks(file);
+ }
+ else {// 上传失败
+ reomveFileChunks(file);
+ }
+ },
+ uploadError: function (file, code) {
+ reomveFileChunks(file);
+ },
+ uploadComplete: function (file) {
+ },
+ error: function (type) {
+ switch (type) {
+ case 'Q_TYPE_DENIED':
+ learun.alert.error('当前文件类型不允许上传');
+ break;
+ };
+ }
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Index.cshtml
new file mode 100644
index 000000000..8ee9cc8a0
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Index.cshtml
@@ -0,0 +1,69 @@
+@{
+ ViewBag.Title = "FinaChargeStuYearItem";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Index.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Index.js
new file mode 100644
index 000000000..738c36e48
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/Index.js
@@ -0,0 +1,190 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-07 16:40
+ * 描 述:FinaChargeStuYearItem
+ */
+var refreshGirdData;
+var sYear;
+var keyValue = request('keyValue');
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ page.bind();
+ setTimeout(function () {
+ page.initGird();
+ }, 500);//延迟
+
+ },
+ bind: function () {
+ $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
+ page.search(queryJson);
+ }, 300, 400);
+ $('#FSYear').lrselect({
+ url: top.$.rootUrl + '/EducationalAdministration/CdMajor/GenerateNearByYear',
+ value: 'value',
+ text: 'text'
+ });
+ var now = new Date();
+ sYear = now.getFullYear();
+ $('#FSYear').lrselectSet(sYear);
+ $('#MajorNo').lrDataSourceSelect({ code: 'CdMajorInfo', value: 'majorno', text: 'majorname' });
+ $('#ClassNo').lrDataSourceSelect({ code: 'bjsj', value: 'classno', text: 'classname' });
+ $('#PayFeeStatus').lrDataItemSelect({ code: 'PayStatus' });
+ $('#ChargeItemType').lrDataItemSelect({ code: 'ChargeItemType' });
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ // 导入
+ $('#lr_add').on('click', function () {
+ learun.layerForm({
+ id: 'indexImport',
+ title: "导入收费",
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/Import',
+ width: 600,
+ height: 400,
+ maxmin: true,
+ btn: null,
+ end: function () {
+ refreshGirdData();
+ }
+ });
+ });
+ // 恢复
+ $('#lr_undelete').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSYIId');
+ var F_DeleteMark = $('#gridtable').jfGridValue('F_DeleteMark').toString();
+ if (learun.checkrow(keyValue)) {
+ if (F_DeleteMark.indexOf('false') != -1) {
+ learun.alert.error("包含未作废项目,不能恢复");
+ return;
+ }
+ learun.layerConfirm('是否确认恢复该项!', function (res) {
+ if (res) {
+ learun.postForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/UnDeleteForm', { keyValue: keyValue }, function () {
+ refreshGirdData();
+ });
+ }
+ });
+ }
+ });
+ // 作废
+ $('#lr_delete').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSYIId');
+ var ChargeItemType = $('#gridtable').jfGridValue('ChargeItemType');
+ var PayFeeStatus = $('#gridtable').jfGridValue('PayFeeStatus');
+ if (learun.checkrow(keyValue)) {
+ if (ChargeItemType.indexOf('1')!=-1) {
+ learun.alert.error("包含固定收费项目,不能作废");
+ return;
+ }
+ if (PayFeeStatus.indexOf('1') != -1 || PayFeeStatus.indexOf('4') != -1) {
+ learun.alert.error("包含已缴费项目,不能作废");
+ return;
+ }
+ learun.layerConfirm('是否确认作废该项!', function (res) {
+ if (res) {
+ learun.postForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/DeleteForm', { keyValue: keyValue }, function () {
+ refreshGirdData();
+ });
+ }
+ });
+ }
+ });
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", width: 100, align: "left" },
+ { label: "姓名", name: "StuName", width: 100, align: "left" },
+ {
+ 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: "FSYear", width: 100, align: "left" },
+ { label: "收费项目编号", name: "ChargeItemCode", width: 100, align: "left" },
+ { label: "收费项名称", name: "ChargeItemName", width: 100, align: "left" },
+ {
+ label: "收费项目类型", name: "ChargeItemType", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'ChargeItemType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ { label: "收费标准", name: "Standard", width: 100, align: "left" },
+ { label: "缴费金额", name: "SJAmount", width: 100, align: "left" },
+ { label: "应缴余额", name: "NeedToPay", width: 100, align: "left" },
+ { label: "超出应收额", name: "FSBlance", width: 100, align: "left" },
+ {
+ label: "缴费状态", name: "PayFeeStatus", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'PayStatus',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ {
+ label: "是否作废", name: "F_DeleteMark", width: 100, align: "left",
+ formatter: function (cellvalue, row) {
+ if (cellvalue ===true) {
+ return '
作废';
+ } else{
+ return '
正常';
+ }
+ }
+ }
+ ],
+ mainId: 'FSYIId',
+ isPage: true,
+ isMultiselect: true,
+ sidx:'MajorNo,ClassNo,StuNo,ChargeItemCode'
+ });
+ page.search();
+ },
+ search: function (param) {
+ param = param || {};
+ param.FSYId = keyValue;
+ param.FSYear = $('#FSYear').lrselectGet();
+ $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForRefund.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForRefund.cshtml
new file mode 100644
index 000000000..d26428af6
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForRefund.cshtml
@@ -0,0 +1,67 @@
+@{
+ ViewBag.Title = "FinaChargeStuYearItem";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForRefund.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForRefund.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForRefund.js
new file mode 100644
index 000000000..54dc27936
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForRefund.js
@@ -0,0 +1,181 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-07 16:40
+ * 描 述:FinaChargeStuYearItem
+ */
+var refreshGirdData;
+var sYear;
+var keyValue = request('keyValue');
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ page.bind();
+ setTimeout(function () {
+ page.initGird();
+ }, 500);//延迟
+
+ },
+ bind: function () {
+ $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
+ page.search(queryJson);
+ }, 300, 400);
+ $('#FSYear').lrselect({
+ url: top.$.rootUrl + '/EducationalAdministration/CdMajor/GenerateNearByYear',
+ value: 'value',
+ text: 'text'
+ });
+ var now = new Date();
+ sYear = now.getFullYear();
+ $('#FSYear').lrselectSet(sYear);
+ $('#MajorNo').lrDataSourceSelect({ code: 'CdMajorInfo', value: 'majorno', text: 'majorname' });
+ $('#ClassNo').lrDataSourceSelect({ code: 'bjsj', value: 'classno', text: 'classname' });
+ $('#RefundStatus').lrDataItemSelect({ code: 'RefundStatus' });
+ $('#ChargeItemType').lrDataItemSelect({ code: 'ChargeItemType' });
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ //退费
+ $('#lr_refund').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSYIId');
+ var RefundStatus = $('#gridtable').jfGridValue('RefundStatus').toString();
+ if (learun.checkrow(keyValue)) {
+ if (RefundStatus.indexOf('true') != -1) {
+ learun.alert.error("包含已退费项目,不能退费");
+ return;
+ }
+ learun.layerForm({
+ id: 'formrefund',
+ title: '退费',
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeRefund/Form?keyValue=' + keyValue,
+ width: 1200,
+ height: 700,
+ callBack: function (id) {
+ return top[id].acceptClick(refreshGirdData);
+ }
+ });
+ }
+ });
+ //查看
+ $('#lr_view').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSYIId');
+ var RefundStatus = $('#gridtable').jfGridValue('RefundStatus').toString();
+ if (learun.checkrow(keyValue)) {
+ if (keyValue.indexOf(',') != -1) {
+ learun.alert.error("查看操作只支持单条记录");
+ return;
+ }
+ if (RefundStatus.indexOf('false')!=-1) {
+ learun.alert.error("未进行退费操作,请核对。");
+ return;
+ }
+ learun.layerForm({
+ id: 'formview',
+ title: '查看',
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeRefund/FormView?keyValue=' + keyValue,
+ width: 600,
+ height: 400,
+ btn:null
+ });
+ }
+ });
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", width: 100, align: "left" },
+ { label: "姓名", name: "StuName", width: 100, align: "left" },
+ {
+ 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: "FSYear", width: 100, align: "left" },
+ { label: "收费项目编号", name: "ChargeItemCode", width: 100, align: "left" },
+ { label: "收费项名称", name: "ChargeItemName", width: 100, align: "left" },
+ {
+ label: "收费项目类型", name: "ChargeItemType", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'ChargeItemType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ { label: "收费标准", name: "Standard", width: 100, align: "left" },
+ { label: "缴费金额", name: "SJAmount", width: 100, align: "left" },
+ { label: "应缴余额", name: "NeedToPay", width: 100, align: "left" },
+ { label: "超出应收额", name: "FSBlance", width: 100, align: "left" },
+ {
+ label: "缴费状态", name: "PayFeeStatus", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'PayStatus',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ {
+ label: "是否退费", name: "RefundStatus", width: 100, align: "left",
+ formatter: function (cellvalue, row) {
+ if (cellvalue ===true) {
+ return '
已退费';
+ } else{
+ return '
未退费';
+ }
+ }
+ }
+ ],
+ mainId: 'FSYIId',
+ isPage: true,
+ isMultiselect: true,
+ sidx:'MajorNo,ClassNo,StuNo,ChargeItemCode'
+ });
+ page.search();
+ },
+ search: function (param) {
+ param = param || {};
+ param.FSYId = keyValue;
+ param.PayFeeStatus = 1;
+ param.F_DeleteMark = 0;
+ param.Refund = 1;
+ param.FSYear = $('#FSYear').lrselectGet();
+ $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForTeacher.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForTeacher.cshtml
new file mode 100644
index 000000000..275de099e
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForTeacher.cshtml
@@ -0,0 +1,65 @@
+@{
+ ViewBag.Title = "FinaChargeStuYearItem";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForTeacher.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForTeacher.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForTeacher.js
new file mode 100644
index 000000000..f66fb1a33
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStuYearItem/IndexForTeacher.js
@@ -0,0 +1,135 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-07 16:40
+ * 描 述:FinaChargeStuYearItem
+ */
+var refreshGirdData;
+var sYear;
+var keyValue = request('keyValue');
+var bootstrap = function ($, learun) {
+ "use strict";
+ var page = {
+ init: function () {
+ page.bind();
+ setTimeout(function () {
+ page.initGird();
+ }, 500);//延迟
+
+ },
+ bind: function () {
+ $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
+ page.search(queryJson);
+ }, 300, 400);
+ $('#FSYear').lrselect({
+ url: top.$.rootUrl + '/EducationalAdministration/CdMajor/GenerateNearByYear',
+ value: 'value',
+ text: 'text'
+ });
+ var now = new Date();
+ sYear = now.getFullYear();
+ $('#FSYear').lrselectSet(sYear);
+ $('#MajorNo').lrDataSourceSelect({ code: 'CdMajorInfo', value: 'majorno', text: 'majorname' });
+ $('#ClassNo').lrDataSourceSelect({ code: 'bjsj', value: 'classno', text: 'classname' });
+ $('#PayFeeStatus').lrDataItemSelect({ code: 'PayStatus' });
+ $('#ChargeItemType').lrDataItemSelect({ code: 'ChargeItemType' });
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStuYearItem/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", width: 100, align: "left" },
+ { label: "姓名", name: "StuName", width: 100, align: "left" },
+ {
+ 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: "FSYear", width: 100, align: "left" },
+ { label: "收费项目编号", name: "ChargeItemCode", width: 100, align: "left" },
+ { label: "收费项名称", name: "ChargeItemName", width: 100, align: "left" },
+ {
+ label: "收费项目类型", name: "ChargeItemType", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'ChargeItemType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ { label: "收费标准", name: "Standard", width: 100, align: "left" },
+ { label: "缴费金额", name: "SJAmount", width: 100, align: "left" },
+ { label: "应缴余额", name: "NeedToPay", width: 100, align: "left" },
+ { label: "超出应收额", name: "FSBlance", width: 100, align: "left" },
+ {
+ label: "缴费状态", name: "PayFeeStatus", width: 100, align: "left",
+ formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'PayStatus',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ {
+ label: "是否作废", name: "F_DeleteMark", width: 100, align: "left",
+ formatter: function (cellvalue, row) {
+ if (cellvalue ===true) {
+ return '
作废';
+ } else{
+ return '
正常';
+ }
+ }
+ }
+ ],
+ mainId: 'FSYIId',
+ isPage: true,
+ isMultiselect: true,
+ sidx:'MajorNo,ClassNo,StuNo,ChargeItemCode'
+ });
+ page.search();
+ },
+ search: function (param) {
+ param = param || {};
+ param.FSYId = keyValue;
+ param.FSYear = $('#FSYear').lrselectGet();
+ $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Form.cshtml
new file mode 100644
index 000000000..b1e812e79
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Form.cshtml
@@ -0,0 +1,43 @@
+@{
+ ViewBag.Title = "缴费学生信息";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Form.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Form.js
new file mode 100644
index 000000000..2bb459eaf
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Form.js
@@ -0,0 +1,54 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-06 17:09
+ * 描 述:缴费学生信息
+ */
+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 () {
+ $('#GenderNo').lrDataItemSelect({ code: 'usersexbit' });
+ $('#DeptNo').lrDataSourceSelect({ code: 'CdDeptInfo',value: 'deptno',text: 'deptname' });
+ $('#MajorNo').lrDataSourceSelect({ code: 'CdMajorInfo',value: 'majorno',text: 'majorname' });
+ $('#ClassNo').lrDataSourceSelect({ code: 'bjsj',value: 'classno',text: 'classname' });
+ },
+ initData: function () {
+ if (!!keyValue) {
+ $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStudent/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 + '/ReceiveSendFeeManagement/FinaChargeStudent/SaveForm?keyValue=' + keyValue, postData, function (res) {
+ // 保存成功后才回调
+ if (!!callBack) {
+ callBack();
+ }
+ });
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Index.cshtml
new file mode 100644
index 000000000..d85f9cf3f
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Index.cshtml
@@ -0,0 +1,58 @@
+@{
+ ViewBag.Title = "缴费学生信息";
+ Layout = "~/Views/Shared/_Index.cshtml";
+}
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Index.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Index.js
new file mode 100644
index 000000000..db73e0ad1
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargeStudent/Index.js
@@ -0,0 +1,183 @@
+/* * 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架(http://www.learun.cn)
+ * Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ * 创建人:超级管理员
+ * 日 期:2023-08-06 17:09
+ * 描 述:缴费学生信息
+ */
+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);
+ }, 250, 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' });
+ // 刷新
+ $('#lr_refresh').on('click', function () {
+ location.reload();
+ });
+ // 新增
+ $('#lr_add').on('click', function () {
+ learun.layerConfirm('是否确认导入!', function (res) {
+ if (res) {
+ learun.postForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStudent/ImportForm', {}, function () {
+ refreshGirdData();
+ });
+ }
+ });
+ });
+ // 编辑
+ $('#lr_edit').on('click', function () {
+ learun.layerConfirm('是否确认更新!', function (res) {
+ if (res) {
+ learun.postForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStudent/UpdateForm', {},function () {
+ refreshGirdData();
+ });
+ }
+ });
+ });
+ // 删除
+ $('#lr_delete').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSId');
+ if (learun.checkrow(keyValue)) {
+ if (keyValue.indexOf(',') != -1) {
+ learun.alert.warning("只能选择一条记录进行删除!");
+ return;
+ }
+ var CheckMark = $('#gridtable').jfGridValue('F_CheckMark').toString();
+ if (CheckMark.indexOf('true') != -1) {
+ learun.alert.warning("选中记录中包含已审核项目!");
+ return;
+ }
+ learun.layerConfirm('是否确认删除该项!', function (res) {
+ if (res) {
+ learun.deleteForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStudent/DeleteForm', { keyValue: keyValue }, function () {
+ refreshGirdData();
+ });
+ }
+ });
+ }
+ });
+ //启用
+ $('#lr_lock').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSId');
+ if (learun.checkrow(keyValue)) {
+ var CheckMark = $('#gridtable').jfGridValue('F_CheckMark').toString();
+ if (CheckMark.indexOf('true') != -1) {
+ learun.alert.warning("选中记录中包含已审核项目!");
+ return;
+ }
+ learun.layerConfirm('是否确认审核该项!', function (res) {
+ if (res) {
+ learun.deleteForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStudent/Lock', { keyValue: keyValue }, function () {
+ refreshGirdData();
+ });
+ }
+ });
+ }
+ });
+ //停用
+ $('#lr_unlock').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('FSId');
+ if (learun.checkrow(keyValue)) {
+ var CheckMark = $('#gridtable').jfGridValue('F_CheckMark').toString();
+ if (CheckMark.indexOf('false') != -1) {
+ learun.alert.warning("选中记录中包含已去审项目!");
+ return;
+ }
+ learun.layerConfirm('是否确认去审核该项!', function (res) {
+ if (res) {
+ learun.deleteForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStudent/UnLock', { keyValue: keyValue }, function () {
+ refreshGirdData();
+ });
+ }
+ });
+ }
+ });
+ },
+ // 初始化列表
+ initGird: function () {
+ $('#gridtable').jfGrid({
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargeStudent/GetPageList',
+ headData: [
+ { label: "学号", name: "StuNo", 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: 200, align: "left" },
+ {
+ label: "系部", name: "DeptNo", width: 150, 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: 200, 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: 200, 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: 80, align: "left" },
+ { label: "手机号", name: "Mobile", width: 100, align: "left" },
+ { label: "应缴余额", name: "NeedToPay", width: 80, align: "left" },
+ { label: "超出应收额", name: "FSBlance", width: 80, align: "left" },
+ {
+ label: "审核标志", name: "F_CheckMark", width: 80, align: "left", formatter: function (cellvalue, rowObject) {
+ return cellvalue == "1" ? "
" : "
";
+ }
+ },
+ ],
+ mainId: 'FSId',
+ isMultiselect: true,
+ isPage: true
+ });
+ page.search();
+ },
+ search: function (param) {
+ param = param || {};
+ $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
+ }
+ };
+ refreshGirdData = function () {
+ $('#gridtable').jfGridSet('reload');
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Form.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Form.cshtml
index 155f7e8f6..d7d482690 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Form.cshtml
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Form.cshtml
@@ -4,17 +4,17 @@
}
-
+
专业编号
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Form.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Form.js
index 06af87106..a0edeb6a1 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Form.js
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Form.js
@@ -5,9 +5,9 @@
* 描 述:收费标准设置
*/
var acceptClick;
-var keyValue = request('keyValue');//专业编号
-var academicYearNo = request('academicYearNo');
-var semester = request('semester');
+var deptno = request('deptno');
+var majorno = request('majorno');
+var syear = request('syear');
var grade = request('grade');
var bootstrap = function ($, learun) {
"use strict";
@@ -19,16 +19,30 @@ var bootstrap = function ($, learun) {
},
bind: function () {
//绑定值
- $('#AcademicYearNo').val(academicYearNo);
- $('#Semester').val(semester);
+ $('#SYear').val(syear);
$('#Grade').val(grade);
- $('#MajorNo').val(keyValue);
+ $('#DeptNo').val(deptno);
+ $('#MajorNo').val(majorno);
//收费项目下的收费标准表格
$('#FinaChargesStandard').jfGrid({
headData: [
{
label: '收费项目名称', name: 'ChargeItemName', width: 200, align: 'left'
},
+ {
+ label: '收费项目编号', name: 'ChargeItemCode', width: 200, align: 'left'
+ },
+ {
+ label: '收费项目类型', name: 'ChargeItemType', width: 200, align: 'left', formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'ChargeItemType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
{
label: '收费标准', name: 'Standard', width: 100, align: 'left'
, edit: {
@@ -38,13 +52,12 @@ var bootstrap = function ($, learun) {
],
isEdit: false,
height: 400,
- sidx: 'ChargeItemID',
- sord: 'asc'
+ sidx: 'ChargeItemCode'
});
},
initData: function () {
- if (!!keyValue) {
- $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/GetFormData?majorNo=' + keyValue + '&academicYearNo=' + academicYearNo + '&semester=' + semester + '&grade=' + grade + '', function (data) {
+ if (!!majorno) {
+ $.lrSetForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/GetFormData?majorNo=' + majorno + '&syear=' + syear + '&grade=' + grade + '', function (data) {
for (var id in data) {
if (!!data[id].length && data[id].length > 0) {
$('#' + id).jfGridSet('refreshdata', data[id]);
@@ -67,7 +80,7 @@ var bootstrap = function ($, learun) {
for (var i = 0; i < data.length; i++) {
var item = data[i];
if (item.Standard != null && !isNumber(item.Standard)) {
- learun.alert.warning("收费标准中存在非法字符!");
+ learun.alert.warning("收费标准必须是数字!");
return false;
}
}
@@ -75,7 +88,7 @@ var bootstrap = function ($, learun) {
var postData = {
strEntity: JSON.stringify(data)
};
- $.lrSaveForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/SaveForm?majorNo=' + keyValue + '&academicYearNo=' + academicYearNo + '&semester=' + semester + '&grade=' + grade + '', postData, function (res) {
+ $.lrSaveForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/SaveForm?deptno=' + deptno+'&majorNo=' + majorno + '&syear=' + syear + '&grade=' + grade + '', postData, function (res) {
// 保存成功后才回调
if (!!callBack) {
callBack();
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Import.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Import.cshtml
new file mode 100644
index 000000000..edf537f46
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Import.cshtml
@@ -0,0 +1,26 @@
+@{
+ ViewBag.Title = "Form";
+ Layout = "~/Views/Shared/_Form.cshtml";
+}
+
+
+@Html.AppendCssFile("/Areas/LR_SystemModule/Views/ExcelImport/ImportForm.css")
+
+
+
+@Html.AppendJsFile("/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Import.js")
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Import.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Import.js
new file mode 100644
index 000000000..2120b6fc6
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Import.js
@@ -0,0 +1,175 @@
+/*
+ * 描 述:附件上传管理
+ */
+var gridId = request('gridtable');
+var bootstrap = function ($, learun) {
+ "use strict";
+
+ var fileInfo = {};
+
+ // 触发合并文件碎片
+ var mergeFileChunks = function (file) {
+ var param = {};
+ param['__RequestVerificationToken'] = $.lrToken;
+ param['fileGuid'] = fileInfo[file.id].fileGuid;
+ param['fileName'] = fileInfo[file.id].name;
+ param['chunks'] = fileInfo[file.id].chunks;
+ var queryJson = JSON.stringify(learun.frameTab.currentIframe().queryJson);
+
+ param['queryJson'] = queryJson;
+ learun.httpAsyncPost(top.$.rootUrl + "/ReceiveSendFeeManagement/FinaChargesStandard/ExecuteImportExcel", param, function (res) {
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.find('.lr-uploader-progress').remove();
+
+ if (res.code == learun.httpCode.success) {
+ if (res.data.Success != '0') {
+ learun.alert.success('导入成功' + res.data.Success + '条');
+ }
+ // 文件保存成功后
+ $fileItem.append('
' + res.data.Success + '/' + res.data.Fail + '
');
+ // 如果有失败
+ if (res.data.Fail != '0') {
+ learun.download({ url: top.$.rootUrl + '/LR_SystemModule/ExcelImport/DownImportErrorFile', param: { fileId: fileInfo[file.id].fileGuid, fileName: fileInfo[file.id].name, __RequestVerificationToken: $.lrToken }, method: 'POST' });
+ }
+
+ }
+ else {
+ learun.alert.error(res.info);
+ $fileItem.append('
');
+ }
+ });
+ }
+ // 触发清楚文件碎片
+ var reomveFileChunks = function (file) {
+ var param = {};
+ param['__RequestVerificationToken'] = $.lrToken;
+ param['fileGuid'] = fileInfo[file.id].fileGuid;
+ param['chunks'] = fileInfo[file.id].chunks;
+ learun.httpAsyncPost(top.$.rootUrl + "/LR_SystemModule/Annexes/MergeAnnexesFile", param, function (res) { });
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.find('.lr-uploader-progress').remove();
+ $fileItem.append('
');
+ }
+ // 删除文件
+ var DeleteFile = function (fileId) {
+ var param = {};
+ param['__RequestVerificationToken'] = $.lrToken;
+ param['fileId'] = fileInfo[fileId].fileGuid;
+ learun.httpAsyncPost(top.$.rootUrl + "/LR_SystemModule/Annexes/DeleteAnnexesFile", param, function (res) { });
+ var file = page.uploader.getFile(fileId);
+ if (!!file) {
+ page.uploader.removeFile(file);
+ }
+ delete fileInfo[fileId];
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + fileId);
+ $fileItem.remove();
+ if ($('#lr_form_file_queue_list>div').length == 0) {
+ $('#lr_form_file_queue .lr-form-file-queue-bg').show();
+ }
+ }
+
+ var page = {
+ uploader: null,
+ init: function () {
+ if (!WebUploader.Uploader.support()) {
+ alert('Web Uploader 不支持您的浏览器!如果你使用的是IE浏览器,请尝试升级 flash 播放器');
+ throw new Error('WebUploader does not support the browser you are using.');
+ }
+ /*导入模板下载*/
+ $('#lr_down_file_btn').on('click', function () {
+ learun.download({
+ method: "get",
+ url: '/Content/excel/收费标准设置.xls'
+ });
+ });
+
+ page.uploader = WebUploader.create({
+ auto: true,
+ swf: top.$.rootUrl + '/Content/webuploader/Uploader.swf',
+ // 文件接收服务端。
+ server: top.$.rootUrl + "/LR_SystemModule/Annexes/UploadAnnexesFileChunk",
+ // 选择文件的按钮。可选。
+ // 内部根据当前运行是创建,可能是input元素,也可能是flash.
+ pick: '#lr_add_file_btn',
+ dnd: '#lr_form_file_queue',
+ paste: 'document.body',
+ disableGlobalDnd: true,
+ accept: {
+ extensions: "xls,xlsx"
+ },
+ multiple: false,
+ // 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传!
+ resize: false,
+ // 文件分片上传
+ chunked: true,
+ chunkRetry: 3,
+ prepareNextFile: true,
+ chunkSize: '1048576',
+ // 上传参数
+ formData: {
+ __RequestVerificationToken: $.lrToken
+ }
+ });
+ page.uploader.on('fileQueued', page.fileQueued);
+ page.uploader.on('uploadStart', page.uploadStart);
+ page.uploader.on('uploadBeforeSend', page.uploadBeforeSend);
+ page.uploader.on('uploadProgress', page.uploadProgress);
+ page.uploader.on('uploadSuccess', page.uploadSuccess);
+ page.uploader.on('uploadError', page.uploadError);
+ page.uploader.on('uploadComplete', page.uploadComplete);
+ page.uploader.on('error', page.error);
+
+
+ //$('#lr_form_file_queue').mCustomScrollbar({ // 优化滚动条
+ // theme: "minimal-dark"
+ //});
+
+ },
+ fileQueued: function (file) {// 文件加载到队列
+ fileInfo[file.id] = { name: file.name };
+ $('#lr_form_file_queue .lr-form-file-queue-bg').hide();
+ // 添加一条文件记录
+ var $item = $('
');
+ $item.append('
');
+ $item.append('
' + file.name + '(' + learun.countFileSize(file.size) + ')');
+
+ $('#lr_form_file_queue_list').append($item);
+ },
+ uploadStart: function (file) {
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.append('
');
+ },
+ uploadBeforeSend: function (object, data, headers) {
+ data.chunk = data.chunk || 0;
+ data.chunks = data.chunks || 1;
+ fileInfo[data.id].fileGuid = fileInfo[data.id].fileGuid || WebUploader.Base.guid();
+ data.fileGuid = fileInfo[data.id].fileGuid;
+ fileInfo[data.id].chunks = data.chunks;
+ },
+ uploadProgress: function (file, percentage) {
+ var $fileItem = $('#lr_form_file_queue_list').find('#lr_filequeue_' + file.id);
+ $fileItem.find('.lr-uploader-progress-bar').css('width', (percentage * 100 + '%'));
+ },
+ uploadSuccess: function (file, res) {
+ if (res.code == 200) {// 上传成功
+ mergeFileChunks(file);
+ }
+ else {// 上传失败
+ reomveFileChunks(file);
+ }
+ },
+ uploadError: function (file, code) {
+ reomveFileChunks(file);
+ },
+ uploadComplete: function (file) {
+ },
+ error: function (type) {
+ switch (type) {
+ case 'Q_TYPE_DENIED':
+ learun.alert.error('当前文件类型不允许上传');
+ break;
+ };
+ }
+ };
+ page.init();
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Index.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Index.cshtml
index 0ee22c7e9..df52abd5c 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Index.cshtml
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Index.cshtml
@@ -13,10 +13,13 @@
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Index.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Index.js
index 07d87a4ea..dff0af6a9 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Index.js
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Areas/ReceiveSendFeeManagement/Views/FinaChargesStandard/Index.js
@@ -8,44 +8,16 @@ var refreshGirdData;
var selectedRow;
var bootstrap = function ($, learun) {
"use strict";
- var academicYearNo;
- var semester;
- var grade;
+ var sYear, grade, deptno, majorno;
var page = {
init: function () {
- //获取当前学年和学期
- learun.httpAsyncGet(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/AcademicAndSemeter', function (res) {
- if (res.code == 200) {
- academicYearNo = res.data.academic;
- semester = res.data.semester;
- grade = res.data.grade;
- $('#AcademicYearNo').lrselectSet(res.data.academic);
- $('#Semester').lrselectSet(res.data.semester);
- $('#Grade').lrselectSet(res.data.grade);
-
- //todo:暂定
- semester = "1";
- $('#Semester').lrselectSet("1");
-
- page.initGird();
- };
- });
- //学年
- $('#AcademicYearNo').lrselect({
- placeholder: "请选择学年",
- allowSearch: true,
- url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/GenerateNearByAcademic',
- value: 'value',
- text: 'text',
- maxHeight: 200
- });
- //学期
- $('#Semester').lrselect({
- placeholder: "请选择学期",
- url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/GenerateNearBySemeter',
+ $('#DeptNo').lrDataSourceSelect({ code: 'CdDeptInfo', value: 'deptno', text: 'deptname' });
+ $('#MajorNo').lrDataSourceSelect({ code: 'CdMajorInfo', value: 'majorno', text: 'majorname' });
+ //缴费年度
+ $('#SYear').lrselect({
+ url: top.$.rootUrl + '/EducationalAdministration/CdMajor/GenerateNearByYear',
value: 'value',
- text: 'text',
- maxHeight: 200
+ text: 'text'
});
//年级
$('#Grade').lrselect({
@@ -55,8 +27,13 @@ var bootstrap = function ($, learun) {
text: 'text',
maxHeight: 200
});
-
+ var now = new Date();
+ sYear = now.getFullYear();
+ $('#SYear').lrselectSet(sYear);
+ grade = sYear.toString().substring(2);
+ $('#Grade').lrselectSet(grade);
page.bind();
+ page.initGird();
},
bind: function () {
@@ -66,11 +43,35 @@ var bootstrap = function ($, learun) {
});
// 查询
$('#lr_search').on('click', function () {
- academicYearNo = $('#AcademicYearNo').lrselectGet();
- semester = $('#Semester').lrselectGet();
+ sYear = $('#SYear').lrselectGet();
+ if (!sYear) {
+ learun.alert.warning("请选择收费年度!");
+ return;
+ }
grade = $('#Grade').lrselectGet();
+ if (!grade) {
+ learun.alert.warning("请选择年级!");
+ return;
+ }
+ deptno = $('#DeptNo').lrselectGet();
+ majorno = $('#MajorNo').lrselectGet();
page.search();
});
+ // 导入
+ $('#lr_import').on('click', function () {
+ learun.layerForm({
+ id: 'indexImport',
+ title: "导入收费标准",
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/Import',
+ width: 600,
+ height: 400,
+ maxmin: true,
+ btn: null,
+ end: function () {
+ refreshGirdData();
+ }
+ });
+ });
// 新增
$('#lr_add').on('click', function () {
var keyValue = $('#gridtable').jfGridValue('TempId');
@@ -83,7 +84,7 @@ var bootstrap = function ($, learun) {
learun.layerForm({
id: 'formFinaChargesStandard',
title: '新增',
- url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/Form?keyValue=' + selectedRow.MajorNo + '&academicYearNo=' + academicYearNo + '&semester=' + semester + '&grade=' + grade + '',
+ url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/Form?deptno=' + selectedRow.DeptNo + '&majorno=' + selectedRow.MajorNo + '&syear=' + sYear + '&grade=' + grade + '',
width: 1000,
height: 600,
callBack: function (id) {
@@ -117,11 +118,16 @@ var bootstrap = function ($, learun) {
$('#lr_delete').on('click', function () {
var keyValue = $('#gridtable').jfGridValue('TempId');
selectedRow = $('#gridtable').jfGridGet('rowdata');
+ console.log(selectedRow);
if (learun.checkrow(keyValue)) {
if (selectedRow.ChargeStandardID == 0) {//专业下收费标准
learun.alert.warning("请选择具体的收费项目!");
return false;
}
+ if (selectedRow.CheckMark==true) {
+ learun.alert.warning("删除失败,选中记录中包含已审核项目!");
+ return;
+ }
learun.layerConfirm('是否确认删除该项!', function (res) {
if (res) {
learun.deleteForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/DeleteForm', { keyValue: selectedRow.ChargeStandardID }, function () {
@@ -131,32 +137,112 @@ var bootstrap = function ($, learun) {
});
}
});
+ //审核
+ $('#lr_lock').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('TempId');
+ selectedRow = $('#gridtable').jfGridGet('rowdata');
+ if (learun.checkrow(keyValue)) {
+ learun.layerConfirm('是否确认审核该项!', function (res) {
+ if (res) {
+ if (selectedRow.ChargeStandardID == 0) {
+ learun.postForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/Lock',
+ { deptno: selectedRow.DeptNo, majorno: selectedRow.MajorNo, syear: sYear, grade: grade, ChargeStandardID: '' },
+ function () {
+ refreshGirdData();
+ });
+ } else {
+ learun.postForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/Lock',
+ { deptno: '', majorno: '', syear: '', grade: '', ChargeStandardID: selectedRow.ChargeStandardID },
+ function () {
+ refreshGirdData();
+ });
+ }
+ }
+ });
+ }
+ });
+ //去审
+ $('#lr_unlock').on('click', function () {
+ var keyValue = $('#gridtable').jfGridValue('TempId');
+ selectedRow = $('#gridtable').jfGridGet('rowdata');
+ if (learun.checkrow(keyValue)) {
+ learun.layerConfirm('是否确认去审该项!', function (res) {
+ if (res) {
+ if (selectedRow.ChargeStandardID == 0) {
+ learun.postForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/UnLock',
+ { deptno: selectedRow.DeptNo, majorno: selectedRow.MajorNo, syear: sYear, grade: grade, ChargeStandardID: '' },
+ function () {
+ refreshGirdData();
+ });
+ } else {
+ learun.postForm(top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/UnLock',
+ { deptno: '', majorno: '', syear: '', grade: '', ChargeStandardID: selectedRow.ChargeStandardID },
+ function () {
+ refreshGirdData();
+ });
+ }
+ }
+ });
+ }
+ });
},
// 初始化列表
initGird: function () {
- $('#gridtable').lrAuthorizeJfGrid({
+ $('#gridtable').jfGrid({
url: top.$.rootUrl + '/ReceiveSendFeeManagement/FinaChargesStandard/GetTreeList',
headData: [
+ {
+ label: "系部", name: "DeptNo", width: 200, 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" },
- { label: "专业名称", name: "MajorName", width: 100, align: "left" },
+ { label: "专业名称", name: "MajorName", width: 200, align: "left" },
+ { label: "缴费年度", name: "SYear", width: 80, align: "left" },
+ { label: "年级", name: "Grade", width: 80, align: "left" },
{ label: "收费项目名称", name: "ChargeItemName", width: 200, align: "left" },
+ { label: "收费项目编号", name: "ChargeItemCode", width: 100, align: "left" },
{ label: "收费标准", name: "Standard", width: 100, align: "left" },
+ {
+ label: "收费项目类型", name: "ChargeItemType", width: 100, align: "left", formatterAsync: function (callback, value, row, op, $cell) {
+ learun.clientdata.getAsync('dataItem', {
+ key: value,
+ code: 'ChargeItemType',
+ callback: function (_data) {
+ callback(_data.text);
+ }
+ });
+ }
+ },
+ {
+ label: "是否审核", name: "CheckMark", width: 100, align: "left",
+ formatter: function (cellvalue, rowObject) {
+ return cellvalue == "1" ? "
" : "
";
+ }
+ }
],
isTree: true,
mainId: 'TempId',
parentId: 'ParentId',
- //mainId:'ChargeStandardID',
isPage: true,
- sidx: 'MajorNo',
- sord: 'asc'
+ //sidx: 'MajorNo asc ,ChargeItemCode asc',
+ //sord: 'asc'
});
page.search();
},
search: function (param) {
param = param || {};
- param.AcademicYearNo = academicYearNo;
- param.Semester = semester;
+ param.SYear = sYear;
param.Grade = grade;
+ param.DeptNo = deptno;
+ param.MajorNo = majorno;
$('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
}
};
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/收费标准设置.xls b/Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/收费标准设置.xls
new file mode 100644
index 000000000..fda89b89c
Binary files /dev/null and b/Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/收费标准设置.xls differ
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/线下缴费记录.xls b/Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/线下缴费记录.xls
new file mode 100644
index 000000000..62e3aaa5a
Binary files /dev/null and b/Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/线下缴费记录.xls differ
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/缴费明细.xls b/Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/缴费明细.xls
new file mode 100644
index 000000000..cb6504bcb
Binary files /dev/null and b/Learun.Framework.Ultimate V7/Learun.Application.Web/Content/excel/缴费明细.xls differ
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/HomeController.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/HomeController.cs
index b21289315..4c18d02e7 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/HomeController.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/HomeController.cs
@@ -431,6 +431,8 @@ namespace Learun.Application.Web.Controllers
[HttpGet]
public ActionResult Index()
{
+ #if DEBUG
+ #else
//判断当前ip是否是123服务器,如果是123服务器,跳过授权验证
if (Net.GetLanIp() != "172.17.3.181")
{
@@ -441,6 +443,7 @@ namespace Learun.Application.Web.Controllers
return Content("");
}
}
+ #endif
//return View("AdminTop");
string learn_UItheme = WebHelper.GetCookie("Learn_ADMS_V6.1_UItheme");
@@ -667,7 +670,7 @@ namespace Learun.Application.Web.Controllers
{
return View();
}
- #endregion
+#endregion
private ICache cache = CacheFactory.CaChe();
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/LoginController.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/LoginController.cs
index fa051881f..cfeca65ef 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/LoginController.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/LoginController.cs
@@ -209,6 +209,8 @@ namespace Learun.Application.Web.Controllers
[HttpGet]
public ActionResult Index()
{
+ #if DEBUG
+ #else
//判断当前ip是否是123服务器,如果是123服务器,跳过授权验证
if (Net.GetLanIp() != "172.17.3.181")
{
@@ -219,6 +221,7 @@ namespace Learun.Application.Web.Controllers
return Content("");
}
}
+ #endif
//获取错误次数
ViewBag.errornum = OperatorHelper.Instance.GetCurrentErrorNum();
//获取高职版跳转地址
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/UtilityController.cs b/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/UtilityController.cs
index 6151dc105..9b2f535b3 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/UtilityController.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Controllers/UtilityController.cs
@@ -95,7 +95,11 @@ namespace Learun.Application.Web.Controllers
case "listfile":
return ListFileManager(UeditorConfig.GetString("fileManagerListPath"), UeditorConfig.GetStringList("fileManagerAllowFiles"));
case "catchimage":
- return CrawlerHandler();
+ //return CrawlerHandler();存在漏洞
+ return Content(new
+ {
+ state = "action 参数为空或者 action 不被支持。"
+ }.ToJson());
default:
return Content(new
{
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj b/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
index 66929525f..0aa27f508 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
@@ -23,7 +23,7 @@
..\..\..\
true
-
+
false
@@ -316,6 +316,7 @@
+
@@ -885,6 +886,14 @@
+
+
+
+
+
+
+
+
@@ -1195,6 +1204,7 @@
+
@@ -1626,6 +1636,17 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -6638,6 +6659,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -7946,6 +7999,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/database.config b/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/database.config
index 63a1b93ce..c56dd0a31 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/database.config
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/XmlConfig/database.config
@@ -1,45 +1,5 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Learun.Application.WebApi.csproj b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Learun.Application.WebApi.csproj
index b7517bb38..38de3dbc7 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Learun.Application.WebApi.csproj
+++ b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Learun.Application.WebApi.csproj
@@ -13,7 +13,7 @@
Properties
Learun.Application.WebApi
Learun.Application.WebApi
- v4.6.1
+ v4.6.2
true
@@ -107,7 +107,6 @@
..\packages\Oracle.ManagedDataAccess.EntityFramework.12.1.2400\lib\net45\Oracle.ManagedDataAccess.EntityFramework.dll
-
..\packages\Microsoft.AspNet.WebApi.Client.5.2.4\lib\net45\System.Net.Http.Formatting.dll
@@ -121,7 +120,6 @@
-
..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.Helpers.dll
@@ -155,7 +153,6 @@
-
..\packages\ThoughtWorks.QRCode.1.1.0\lib\ThoughtWorks.QRCode.dll
@@ -195,6 +192,7 @@
+
@@ -363,6 +361,9 @@
+
+
+
10.0
$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/ReceiveSendFeeManagement/FinaChargeStuYearApi.cs b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/ReceiveSendFeeManagement/FinaChargeStuYearApi.cs
new file mode 100644
index 000000000..28c0596ee
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/ReceiveSendFeeManagement/FinaChargeStuYearApi.cs
@@ -0,0 +1,220 @@
+using System;
+using Learun.Application.Organization;
+using Learun.Application.TwoDevelopment.EducationalAdministration;
+using Learun.Application.TwoDevelopment.EvaluationTeach;
+using Learun.Util;
+using Nancy;
+using System.Collections.Generic;
+using System.Drawing;
+using System.IO;
+using System.Linq;
+using System.Security.Cryptography;
+using System.Text;
+using System.Web;
+using System.Web.Mvc;
+using Learun.Application.Base.SystemModule;
+using Learun.Application.TwoDevelopment.Ask;
+using Learun.Application.TwoDevelopment.ReceiveSendFeeManagement;
+using Newtonsoft.Json;
+using ThoughtWorks.QRCode.Codec;
+
+namespace Learun.Application.WebApi.Modules
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.0 数字化智慧校园
+ /// Copyright (c) 2013-2018 北京泉江科技有限公司
+ /// 创建人:数字化智慧校园-框架开发组
+ /// 日 期:2018.01.04
+ /// 描 述:
+ ///
+ public class FinaChargeStuYearApi : BaseApi
+ {
+ private FinaChargeStuYearIBLL finaChargeStuYearIBLL = new FinaChargeStuYearBLL();
+ private FinaChargeStuOrderIBLL finaChargeStuOrderIbll = new FinaChargeStuOrderBLL();
+ private TeachSwitchIBLL teachSwitchIbll = new TeachSwitchBLL();
+
+ public FinaChargeStuYearApi()
+ : base("/ReceiveSendFeeManagement/FinaChargeStuYearApi")
+ {
+ Get["/getpayfeelist"] = GetPayfeeList;// 获取缴费列表
+ Get["/getpayfeeinfo"] = GetPayfeeInfo;//获取缴费明细
+ Post["/generateqrcode"] = PayFeeQRCode;//生成缴费二维码
+ Get["/getinvoice"] = GetInvoice;//获取发票
+ }
+
+ public Response GetInvoice(dynamic _)
+ {
+ string keyValue = Request.Query["keyValue"];
+ var list = finaChargeStuYearIBLL.GetStuInvoice(keyValue);
+ return Success(list);
+ }
+
+ public Response GetPayfeeList(dynamic _)
+ {
+ var eastatus = teachSwitchIbll.GetFirst("jf");
+ if (eastatus != null && eastatus.status == "1")
+ {
+ ReqPageParam parameter = this.GetReqData();
+ var data = finaChargeStuYearIBLL.GetPageList(parameter.pagination, parameter.queryJson);
+ var jsonData = new
+ {
+ rows = data,
+ total = parameter.pagination.total,
+ page = parameter.pagination.page,
+ records = parameter.pagination.records
+ };
+ return Success(jsonData);
+ }
+ else
+ {
+ return Fail("当前不在缴费时间范围");
+ }
+
+ }
+
+ public Response GetPayfeeInfo(dynamic _)
+ {
+ string keyValue = Request.Query["keyValue"];
+ //学生基础信息
+ var FinaChargeStuYearData = finaChargeStuYearIBLL.GetFinaChargeStuYearEntity(keyValue);
+ //学生缴费明细
+ var FinaChargeStuItemList = finaChargeStuYearIBLL.GetFinaChargeStuItemList(keyValue);
+ var jsonData = new
+ {
+ StuInfoFreshData = FinaChargeStuYearData,
+ FinaChargesStandardList = FinaChargeStuItemList,
+ PayFeeTotal =FinaChargeStuYearData.NeedToPay,
+ SJAmount = FinaChargeStuYearData.SJAmount
+ };
+ return Success(jsonData);
+ }
+
+
+ public class PayfeeRequest
+ {
+ public string strEntity { get; set; }
+ public string detailList { get; set; }
+ }
+
+ ///
+ /// 生成缴费二维码
+ ///
+ ///
+ public Response PayFeeQRCode(dynamic _)
+ {
+ PayfeeRequest parameter = this.GetReqData();
+ FinaChargeStuYearEntity entity = parameter.strEntity.ToObject();
+ List list = parameter.detailList.ToObject>();
+ var imgUrl = "";
+ Random ran = new Random();
+ string merchantid = "105000082201406";//商户号
+ string posid = "043724806";//商户柜台代码
+ string branchid = "510000000";//分行代码
+ string orderid = DateTime.Now.ToString("yyyyMMddhhmmss") + ran.Next(0, 100000);
+ string payment = entity.PayMoney.ToString();
+ string curcode = "01";
+ string txcode = "530550";
+ string remark1 = entity.StuNo;
+ string remark2 = entity.FSYear.ToString();
+ string returntype = "3";
+ string timeout = DateTime.Now.AddMinutes(10).ToString("yyyyMMddHHmmss");
+ string pub32tr2 = "40d987faa793a0a27e7a86ef020111";
+ string bankURL = "https://ibsbjstar.ccb.com.cn/CCBIS/ccbMain?CCB_IBSVersion=V6";
+ string tmp = "MERCHANTID=" + merchantid + "&POSID=" + posid + "&BRANCHID=" + branchid + "&ORDERID=" + orderid;
+ tmp += "&PAYMENT=" + payment + "&CURCODE=" + curcode + "&TXCODE=" + txcode + "&REMARK1=" + remark1;
+ tmp += "&REMARK2=" + remark2 + "&RETURNTYPE=" + returntype + "&TIMEOUT=" + timeout;
+ MD5 md5 = MD5.Create();
+ string tmp1 = tmp;
+ tmp += "&PUB=" + pub32tr2;
+ byte[] buffer = Encoding.Default.GetBytes(tmp);
+ byte[] md5Buffer = md5.ComputeHash(buffer);
+ string strMd5 = "";
+ //hdnOrderId.Value = orderid;
+ foreach (byte item in md5Buffer)
+ {
+ strMd5 += item.ToString("x2");
+ }
+ String url = bankURL + "&" + tmp1 + "&MAC=" + strMd5;
+ string reJson = HttpMethods.Post(url);
+ LogEntity logEntity = new LogEntity();
+ logEntity.F_CategoryId = 121;
+ logEntity.F_ExecuteResultJson = reJson;
+ logEntity.WriteLog();
+ //HttpConnect conn = new HttpConnect();
+ //string reJson = conn.Post(url, "");
+ JsonBean MemberInfoList = JsonConvert.DeserializeObject(reJson);
+ if (MemberInfoList.SUCCESS.Equals("true"))
+ {
+ string imgCode = HttpMethods.Post(MemberInfoList.PAYURL);
+ logEntity.F_CategoryId = 121;
+ logEntity.F_ExecuteResultJson = imgCode;
+ logEntity.WriteLog();
+ MemberInfoList = JsonConvert.DeserializeObject(imgCode);
+ if (MemberInfoList.SUCCESS.Equals("true"))
+ {
+ imgUrl = CreateQRImg(MemberInfoList.QRURL, orderid);
+ }
+ }
+
+ if (!string.IsNullOrEmpty(imgUrl))
+ {
+ entity.orderid = orderid;
+ finaChargeStuOrderIbll.SaveOrderData(entity, list);
+ }
+
+ var backimgUrl = new { imgUrl };
+ return Success(backimgUrl);
+ }
+
+ public class JsonBean
+ {
+ ///
+ ///
+ ///
+ public string SUCCESS { get; set; }
+ public string PAYURL { get; set; }
+ public string QRURL { get; set; }
+ }
+ ///
+ /// 生成并保存二维码图片的方法
+ ///
+ /// 输入的内容
+ public string CreateQRImg(string str, string orderId)
+ {
+ string QRCodeFile = Config.GetValue("QRCodeFile");
+ Random ran = new Random();
+ Bitmap bt;
+ str = HttpUtility.UrlDecode(str);
+ string enCodeString = str;
+ //生成设置编码实例
+ QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
+ //设置二维码的规模,默认4
+ qrCodeEncoder.QRCodeScale = 3;
+ //设置二维码的版本,默认7
+ qrCodeEncoder.QRCodeVersion = 7;
+ //设置错误校验级别,默认中等
+ qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
+ //生成二维码图片
+ bt = qrCodeEncoder.Encode(enCodeString, Encoding.UTF8);
+ //二维码图片的名称
+ string filename = orderId;
+ if (!DirFileHelper.IsExistFile(QRCodeFile + "/Content/images/QRCode/"))
+ {
+ Directory.CreateDirectory(QRCodeFile + "/Content/images/QRCode/");
+ }
+ var path = QRCodeFile + "/Content/images/QRCode/" + filename + ".jpg";
+ //保存二维码图片在photos路径下
+ try
+ {
+ bt.Save(path);
+ }
+ catch (Exception ex)
+ {
+ return "";
+ }
+
+ //图片控件要显示的二维码图片路径
+ return "/Content/images/QRCode/" + filename + ".jpg";
+ }
+ }
+}
\ No newline at end of file
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Web.config b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Web.config
index b5d6fb6cb..2c44b0280 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Web.config
+++ b/Learun.Framework.Ultimate V7/Learun.Application.WebApi/Web.config
@@ -25,7 +25,7 @@
-->
-
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Base/Learun.Application.Base.csproj b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Base/Learun.Application.Base.csproj
index 896dcff84..e56b4edf5 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Base/Learun.Application.Base.csproj
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Base/Learun.Application.Base.csproj
@@ -222,6 +222,9 @@
+
+
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/Learun.Application.Mapping.csproj b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/Learun.Application.Mapping.csproj
index 517ce7ea1..09d35324a 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/Learun.Application.Mapping.csproj
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/Learun.Application.Mapping.csproj
@@ -588,6 +588,14 @@
+
+
+
+
+
+
+
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeLogMap.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeLogMap.cs
new file mode 100644
index 000000000..7fe17a719
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeLogMap.cs
@@ -0,0 +1,29 @@
+using Learun.Application.TwoDevelopment.ReceiveSendFeeManagement;
+using System.Data.Entity.ModelConfiguration;
+
+namespace Learun.Application.Mapping
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-20 16:06
+ /// 描 述:收费系统操作日志
+ ///
+ public class FinaChargeLogMap : EntityTypeConfiguration
+ {
+ public FinaChargeLogMap()
+ {
+ #region 表、主键
+ //表
+ this.ToTable("FINACHARGELOG");
+ //主键
+ this.HasKey(t => t.F_LogId);
+ #endregion
+
+ #region 配置关系
+ #endregion
+ }
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeRefundMap.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeRefundMap.cs
new file mode 100644
index 000000000..fd77680aa
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeRefundMap.cs
@@ -0,0 +1,29 @@
+using Learun.Application.TwoDevelopment.ReceiveSendFeeManagement;
+using System.Data.Entity.ModelConfiguration;
+
+namespace Learun.Application.Mapping
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-18 18:07
+ /// 描 述:FinaChargeRefund
+ ///
+ public class FinaChargeRefundMap : EntityTypeConfiguration
+ {
+ public FinaChargeRefundMap()
+ {
+ #region 表、主键
+ //表
+ this.ToTable("FINACHARGEREFUND");
+ //主键
+ this.HasKey(t => t.Id);
+ #endregion
+
+ #region 配置关系
+ #endregion
+ }
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuBalanceMap.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuBalanceMap.cs
new file mode 100644
index 000000000..74b326edc
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuBalanceMap.cs
@@ -0,0 +1,29 @@
+using Learun.Application.TwoDevelopment.ReceiveSendFeeManagement;
+using System.Data.Entity.ModelConfiguration;
+
+namespace Learun.Application.Mapping
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-16 11:02
+ /// 描 述:费用变更明细
+ ///
+ public class FinaChargeStuBalanceMap : EntityTypeConfiguration
+ {
+ public FinaChargeStuBalanceMap()
+ {
+ #region 表、主键
+ //表
+ this.ToTable("FINACHARGESTUBALANCE");
+ //主键
+ this.HasKey(t => t.Id);
+ #endregion
+
+ #region 配置关系
+ #endregion
+ }
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuOrderDetailMap.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuOrderDetailMap.cs
new file mode 100644
index 000000000..5dbd1f7b8
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuOrderDetailMap.cs
@@ -0,0 +1,29 @@
+using Learun.Application.TwoDevelopment.ReceiveSendFeeManagement;
+using System.Data.Entity.ModelConfiguration;
+
+namespace Learun.Application.Mapping
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:14
+ /// 描 述:FinaChargeStuOrderDetail
+ ///
+ public class FinaChargeStuOrderDetailMap : EntityTypeConfiguration
+ {
+ public FinaChargeStuOrderDetailMap()
+ {
+ #region 表、主键
+ //表
+ this.ToTable("FINACHARGESTUORDERDETAIL");
+ //主键
+ this.HasKey(t => t.Id);
+ #endregion
+
+ #region 配置关系
+ #endregion
+ }
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuOrderMap.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuOrderMap.cs
new file mode 100644
index 000000000..dde5fd77e
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuOrderMap.cs
@@ -0,0 +1,29 @@
+using Learun.Application.TwoDevelopment.ReceiveSendFeeManagement;
+using System.Data.Entity.ModelConfiguration;
+
+namespace Learun.Application.Mapping
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:06
+ /// 描 述:缴费订单管理
+ ///
+ public class FinaChargeStuOrderMap : EntityTypeConfiguration
+ {
+ public FinaChargeStuOrderMap()
+ {
+ #region 表、主键
+ //表
+ this.ToTable("FINACHARGESTUORDER");
+ //主键
+ this.HasKey(t => t.Id);
+ #endregion
+
+ #region 配置关系
+ #endregion
+ }
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuYearItemMap.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuYearItemMap.cs
new file mode 100644
index 000000000..ee31e79d3
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuYearItemMap.cs
@@ -0,0 +1,29 @@
+using Learun.Application.TwoDevelopment.ReceiveSendFeeManagement;
+using System.Data.Entity.ModelConfiguration;
+
+namespace Learun.Application.Mapping
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 16:40
+ /// 描 述:FinaChargeStuYearItem
+ ///
+ public class FinaChargeStuYearItemMap : EntityTypeConfiguration
+ {
+ public FinaChargeStuYearItemMap()
+ {
+ #region 表、主键
+ //表
+ this.ToTable("FINACHARGESTUYEARITEM");
+ //主键
+ this.HasKey(t => t.FSYIId);
+ #endregion
+
+ #region 配置关系
+ #endregion
+ }
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuYearMap.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuYearMap.cs
new file mode 100644
index 000000000..dd4743bde
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStuYearMap.cs
@@ -0,0 +1,29 @@
+using Learun.Application.TwoDevelopment.ReceiveSendFeeManagement;
+using System.Data.Entity.ModelConfiguration;
+
+namespace Learun.Application.Mapping
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 15:52
+ /// 描 述:学生年度缴费管理
+ ///
+ public class FinaChargeStuYearMap : EntityTypeConfiguration
+ {
+ public FinaChargeStuYearMap()
+ {
+ #region 表、主键
+ //表
+ this.ToTable("FINACHARGESTUYEAR");
+ //主键
+ this.HasKey(t => t.FSYId);
+ #endregion
+
+ #region 配置关系
+ #endregion
+ }
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStudentMap.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStudentMap.cs
new file mode 100644
index 000000000..3e38c8f6b
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping/ReceiveSendFeeManagement/FinaChargeStudentMap.cs
@@ -0,0 +1,29 @@
+using Learun.Application.TwoDevelopment.ReceiveSendFeeManagement;
+using System.Data.Entity.ModelConfiguration;
+
+namespace Learun.Application.Mapping
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-06 17:09
+ /// 描 述:缴费学生信息
+ ///
+ public class FinaChargeStudentMap : EntityTypeConfiguration
+ {
+ public FinaChargeStudentMap()
+ {
+ #region 表、主键
+ //表
+ this.ToTable("FINACHARGESTUDENT");
+ //主键
+ this.HasKey(t => t.FSId);
+ #endregion
+
+ #region 配置关系
+ #endregion
+ }
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoBLL.cs
index d23fd75a4..dffc5c2b1 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoBLL.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoBLL.cs
@@ -256,6 +256,61 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
}
}
+ public IEnumerable GetClassByEmpNo(string EmpNo)
+ {
+ try
+ {
+ return classInfoService.GetClassByEmpNo(EmpNo);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+ public IEnumerable GetDeptByEmpNo(string EmpNo)
+ {
+ try
+ {
+ return classInfoService.GetDeptByEmpNo(EmpNo);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+ public IEnumerable GetMajorByEmpNo(string EmpNo)
+ {
+ try
+ {
+ return classInfoService.GetMajorByEmpNo(EmpNo);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
#endregion
}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoIBLL.cs
index d6972f2bf..41c5d33f7 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoIBLL.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoIBLL.cs
@@ -62,5 +62,8 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
IEnumerable GetAllClass();
IEnumerable GetClassByMajorNo(string majorNo);
+ IEnumerable GetClassByEmpNo(string EmpNo);
+ IEnumerable GetDeptByEmpNo(string EmpNo);
+ IEnumerable GetMajorByEmpNo(string EmpNo);
}
}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoService.cs
index 22f3f3772..b5d8b2ad3 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoService.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/ClassInfo/ClassInfoService.cs
@@ -348,5 +348,61 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
}
}
}
+
+ public IEnumerable GetClassByEmpNo(string EmpNo)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindList(m => m.CheckMark == true && m.ClassDiredctorNo == EmpNo);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+ public IEnumerable GetDeptByEmpNo(string EmpNo)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindList("select b.* from ClassInfo a left join cddept b on a.deptno=b.deptno where a.ClassDiredctorNo='"+EmpNo+ "' and a.CheckMark=1");
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public IEnumerable GetMajorByEmpNo(string EmpNo)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindList("select b.* from ClassInfo a left join cdmajor b on a.majorno=b.majorno where a.ClassDiredctorNo='" + EmpNo + "' and a.checkmark=1 and b.checkmark=1");
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
}
}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollService.cs
index b61bad7b5..7bb1c5aa3 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollService.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/StuEnroll/StuEnrollService.cs
@@ -687,7 +687,7 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
if (classInfo != null)
{
teacherInfo = this.BaseRepository("CollegeMIS").FindEntity(a => a.EmpNo == classInfo.ClassDiredctorNo);
- result = this.BaseRepository("CollegeMIS").FindList(a => a.Grade == classInfo.Grade && a.MajorNo == stuEnroll.MajorNo && a.AcademicYearNo == yearAndSemester.AcademicYearShort && a.Semester == yearAndSemester.Semester)
+ result = this.BaseRepository("CollegeMIS").FindList(a => a.Grade == classInfo.Grade && a.MajorNo == stuEnroll.MajorNo && a.SYear ==Convert.ToInt32(yearAndSemester.AcademicYearShort ))
.Select(a => new StuPayInfo
{
standerid = a.ChargeItemID,
@@ -699,30 +699,30 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
foreach (var item in result)
{
//住宿费
- if (item.standerid == 12 && stuEnroll.IsCheckIn == false)
+ if (item.standerid == "12" && stuEnroll.IsCheckIn == false)
{
item.shouldPay = 0;
}
//学费
- if (item.standerid == 14 && stuEnroll.IsSubsidize1 == true)
+ if (item.standerid == "14" && stuEnroll.IsSubsidize1 == true)
{
item.shouldPay = 0;
}
switch (item.standerid)
{
- case 12:
+ case "12":
if (stuEnroll.IsCheckIn == false) item.shouldPay = 0;
break;
- case 14:
+ case "14":
if (stuEnroll.IsSubsidize1 == true) item.shouldPay = 0;
break;
- case 15:
+ case "15":
if (stuEnroll.IsMilitary == false) item.shouldPay = 0;
break;
- case 32:
+ case "32":
if (stuEnroll.IsCheckIn == false) item.shouldPay = 0;
break;
- case 33:
+ case "33":
if (stuEnroll.EnrollType == "0") item.shouldPay = 0;
break;
default:
@@ -771,7 +771,7 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
}
public class StuPayInfo
{
- public int standerid { get; set; }
+ public string standerid { get; set; }
public decimal? shouldPay { get; set; }
public decimal? standard { get; set; }
public string standerdName { get; set; }
@@ -1765,7 +1765,7 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
var result = new List();
if (classInfo != null)
{
- result = this.BaseRepository("CollegeMIS").FindList(a => a.Grade == classInfo.Grade && a.MajorNo == stuEnroll.MajorNo && a.AcademicYearNo == yearAndSemester.AcademicYearShort && a.Semester == yearAndSemester.Semester)
+ result = this.BaseRepository("CollegeMIS").FindList(a => a.Grade == classInfo.Grade && a.MajorNo == stuEnroll.MajorNo && a.SYear ==Convert.ToInt32(yearAndSemester.AcademicYearShort))
.Select(a => new StuPayInfo
{
standerid = a.ChargeItemID,
@@ -1777,30 +1777,30 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
foreach (var item in result)
{
//住宿费
- if (item.standerid == 12 && stuEnroll.IsCheckIn == false)
+ if (item.standerid == "12" && stuEnroll.IsCheckIn == false)
{
item.shouldPay = 0;
}
//学费
- if (item.standerid == 14 && stuEnroll.IsSubsidize1 == true)
+ if (item.standerid == "14" && stuEnroll.IsSubsidize1 == true)
{
item.shouldPay = 0;
}
switch (item.standerid)
{
- case 12:
+ case "12":
if (stuEnroll.IsCheckIn == false) item.shouldPay = 0;
break;
- case 14:
+ case "14":
if (stuEnroll.IsSubsidize1 == true) item.shouldPay = 0;
break;
- case 15:
+ case "15":
if (stuEnroll.IsMilitary == false) item.shouldPay = 0;
break;
- case 32:
+ case "32":
if (stuEnroll.IsCheckIn == false) item.shouldPay = 0;
break;
- case 33:
+ case "33":
if (stuEnroll.EnrollType == "0") item.shouldPay = 0;
break;
default:
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/TeachSwitch/TeachSwitchService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/TeachSwitch/TeachSwitchService.cs
index 97e966393..0238cb421 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/TeachSwitch/TeachSwitchService.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/EducationalAdministration/TeachSwitch/TeachSwitchService.cs
@@ -84,6 +84,10 @@ namespace Learun.Application.TwoDevelopment.EducationalAdministration
var queryParam = queryJson.ToJObject();
// 虚拟参数
var dp = new DynamicParameters(new { });
+ if (!queryParam["JF"].IsEmpty())
+ {
+ strSql.Append(" AND t.type ='jf' ");
+ }
return this.BaseRepository().FindList(strSql.ToString(), dp, pagination);
}
catch (Exception ex)
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/Learun.Application.TwoDevelopment.csproj b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/Learun.Application.TwoDevelopment.csproj
index 2f581d224..2b201d184 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/Learun.Application.TwoDevelopment.csproj
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/Learun.Application.TwoDevelopment.csproj
@@ -1788,6 +1788,7 @@
+
@@ -1826,6 +1827,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemBLL.cs
index d6ce78e72..fdd9c83c7 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemBLL.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemBLL.cs
@@ -116,7 +116,42 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
#endregion
#region 提交数据
-
+ public void Lock(string keyValue)
+ {
+ try
+ {
+ finaChargeItemService.Lock(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+ public void UnLock(string keyValue)
+ {
+ try
+ {
+ finaChargeItemService.UnLock(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
///
/// 删除实体数据
/// 主键
@@ -165,6 +200,25 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
}
}
+ public FinaChargeItemEntity GetFinaChargeItemEntityByChargeItemCode(string entityChargeItemName)
+ {
+ try
+ {
+ return finaChargeItemService.GetFinaChargeItemEntityByChargeItemCode(entityChargeItemName);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
#endregion
}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemEntity.cs
index 6c90ebb23..bb631172c 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemEntity.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemEntity.cs
@@ -17,8 +17,8 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
/// 收费项目代码
///
- [DatabaseGenerated(DatabaseGeneratedOption.Identity)] [Column("CHARGEITEMID")]
- public int ChargeItemID { get; set; }
+ [Column("CHARGEITEMID")]
+ public string ChargeItemID { get; set; }
///
/// 收费项名称
///
@@ -30,21 +30,24 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
[Column("REMARK")]
public string Remark { get; set; }
///
- /// 当前在用状态(0为过去的,1为现正用的)
+ /// 审核状态
///
- [Column("CURRENTMARK")]
- public string CurrentMark { get; set; }
- ///
- /// 系统保留字段标志
- ///
- [Column("KEYWORDMARK")]
- public string KeyWordMark { get; set; }
+ [Column("CHECKMARK")]
+ public bool? CheckMark { get; set; }
+
+ [Column("F_DELETEMARK")]
+ public bool? F_DeleteMark { get; set; }
///
/// priority
///
[Column("PRIORITY")]
public int? priority { get; set; }
///
+ /// 收费项目类型 1固定项目,2非固定项目
+ ///
+ [Column("CHARGEITEMTYPE")]
+ public int? ChargeItemType { get; set; }
+ ///
/// CreateDate
///
[Column("CREATEDATE")]
@@ -60,6 +63,19 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
[Column("CREATEUSERNAME")]
public string CreateUserName { get; set; }
+ [Column("F_MODIFYDATE")]
+ public DateTime? F_ModifyDate { get; set; }
+ ///
+ /// F_ModifyUserId
+ ///
+ [Column("F_MODIFYUSERID")]
+ public string F_ModifyUserId { get; set; }
+ ///
+ /// F_ModifyUserName
+ ///
+ [Column("F_MODIFYUSERNAME")]
+ public string F_ModifyUserName { get; set; }
+
[Column("CHARGEITEMCODE")]
public string ChargeItemCode { get; set; }
@@ -71,6 +87,13 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
public void Create()
{
+ ChargeItemID = Guid.NewGuid().ToString();
+ CheckMark = false;
+ F_DeleteMark = false;
+ CreateDate = DateTime.Now;
+ UserInfo u = LoginUserInfo.Get();
+ CreateUserId = u.userId;
+ CreateUserName = u.realName;
}
///
/// 编辑调用
@@ -78,7 +101,11 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
public void Modify(string keyValue)
{
- this.ChargeItemID = Convert.ToInt32(keyValue);
+ this.ChargeItemID = keyValue;
+ F_ModifyDate = DateTime.Now;
+ UserInfo u = LoginUserInfo.Get();
+ F_ModifyUserId = u.userId;
+ F_ModifyUserName = u.realName;
}
#endregion
#region 扩展字段
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemIBLL.cs
index eefbfcc7b..eac6a08a9 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemIBLL.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemIBLL.cs
@@ -58,5 +58,8 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
void SaveEntity(string keyValue, FinaChargeItemEntity entity);
#endregion
+ FinaChargeItemEntity GetFinaChargeItemEntityByChargeItemCode(string entityChargeItemName);
+ void Lock(string keyValue);
+ void UnLock(string keyValue);
}
}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemService.cs
index fcb9ea4e6..fc73317af 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemService.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeItem/FinaChargeItemService.cs
@@ -31,7 +31,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
var strSql = new StringBuilder();
strSql.Append("SELECT * ");
strSql.Append(" FROM FinaChargeItem t ");
- strSql.Append(" WHERE 1=1 ");
+ strSql.Append(" WHERE 1=1 and F_DeleteMark=0 ");
var queryParam = queryJson.ToJObject();
// 虚拟参数
var dp = new DynamicParameters(new { });
@@ -87,8 +87,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
{
try
{
- var keyvalue = Convert.ToInt32(keyValue);
- return this.BaseRepository("CollegeMIS").FindEntity(keyvalue);
+ return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
}
catch (Exception ex)
{
@@ -127,10 +126,87 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
}
}
+ public FinaChargeItemEntity GetFinaChargeItemEntityByChargeItemCode(string chargeItemCode)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity(x => x.ChargeItemCode.Trim() == chargeItemCode.Trim());
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
#endregion
#region 提交数据
+ public void Lock(string keyValue)
+ {
+ var db = this.BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ //单个启用
+ //this.BaseRepository("CollegeMIS").ExecuteBySql("update ClassInfo set CheckMark=1 where ClassId='" + keyValue + "'");
+ //多个启用
+ var keyValueArr = keyValue.Split(',');
+ foreach (var item in keyValueArr)
+ {
+ db.ExecuteBySql("update FinaChargeItem set CheckMark=1 where ChargeItemID='" + item + "'");
+ }
+ db.Commit();
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public void UnLock(string keyValue)
+ {
+ var db = this.BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ //单个停用
+ //this.BaseRepository("CollegeMIS").ExecuteBySql("update ClassInfo set CheckMark=0 where ClassId='" + keyValue + "'");
+
+ //多个停用
+ var keyValueArr = keyValue.Split(',');
+ foreach (var item in keyValueArr)
+ {
+ db.ExecuteBySql("update FinaChargeItem set CheckMark=0 where ChargeItemID='" + item + "'");
+ }
+ db.Commit();
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
///
/// 删除实体数据
/// 主键
@@ -140,8 +216,9 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
{
try
{
- var keyvalue = Convert.ToInt32(keyValue);
- this.BaseRepository("CollegeMIS").Delete(t => t.ChargeItemID == keyvalue);
+ var entity = this.BaseRepository("CollegeMIS").FindEntity(m=>m.ChargeItemID==keyValue);
+ entity.F_DeleteMark = true;
+ this.BaseRepository("CollegeMIS").Update(entity);
}
catch (Exception ex)
{
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogBLL.cs
new file mode 100644
index 000000000..bcef1735f
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogBLL.cs
@@ -0,0 +1,125 @@
+using Learun.Util;
+using System;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-20 16:06
+ /// 描 述:收费系统操作日志
+ ///
+ public class FinaChargeLogBLL : FinaChargeLogIBLL
+ {
+ private FinaChargeLogService finaChargeLogService = new FinaChargeLogService();
+
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 分页参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ return finaChargeLogService.GetPageList(pagination, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeLog表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeLogEntity GetFinaChargeLogEntity(string keyValue)
+ {
+ try
+ {
+ return finaChargeLogService.GetFinaChargeLogEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ finaChargeLogService.DeleteEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ ///
+ public void SaveEntity(string keyValue, FinaChargeLogEntity entity)
+ {
+ try
+ {
+ finaChargeLogService.SaveEntity(keyValue, entity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogBLLStatic.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogBLLStatic.cs
new file mode 100644
index 000000000..5b64107d2
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogBLLStatic.cs
@@ -0,0 +1,59 @@
+using Learun.Util;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ public static class FinaChargeLogBLLStatic
+ {
+ private static FinaChargeLogService finaChargeLogService = new FinaChargeLogService();
+
+ public static void RemoveLog(int categoryId, string keepTime)
+ {
+
+ try
+ {
+ finaChargeLogService.RemoveLog(categoryId, keepTime);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+
+ }
+
+
+ ///
+ /// 写日志
+ ///
+ /// 对象
+ public static void WriteLog(this FinaChargeLogEntity logEntity)
+ {
+ try
+ {
+ finaChargeLogService.WriteLog(logEntity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogEntity.cs
new file mode 100644
index 000000000..80d890c27
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogEntity.cs
@@ -0,0 +1,140 @@
+using Learun.Util;
+using System;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-20 16:06
+ /// 描 述:收费系统操作日志
+ ///
+ public class FinaChargeLogEntity
+ {
+ #region 实体成员
+ ///
+ /// 日志主键
+ ///
+ [Column("F_LOGID")]
+ public string F_LogId { get; set; }
+ ///
+ /// 分类Id 1-登陆2-访问3-操作4-异常
+ ///
+ [Column("F_CATEGORYID")]
+ public int? F_CategoryId { get; set; }
+ ///
+ /// 来源对象主键
+ ///
+ [Column("F_SOURCEOBJECTID")]
+ public string F_SourceObjectId { get; set; }
+ ///
+ /// 来源日志内容
+ ///
+ [Column("F_SOURCECONTENTJSON")]
+ public string F_SourceContentJson { get; set; }
+ ///
+ /// 操作时间
+ ///
+ [Column("F_OPERATETIME")]
+ public DateTime? F_OperateTime { get; set; }
+ ///
+ /// 操作用户Id
+ ///
+ [Column("F_OPERATEUSERID")]
+ public string F_OperateUserId { get; set; }
+ ///
+ /// 操作用户
+ ///
+ [Column("F_OPERATEACCOUNT")]
+ public string F_OperateAccount { get; set; }
+ ///
+ /// 操作类型Id
+ ///
+ [Column("F_OPERATETYPEID")]
+ public string F_OperateTypeId { get; set; }
+ ///
+ /// 操作类型
+ ///
+ [Column("F_OPERATETYPE")]
+ public string F_OperateType { get; set; }
+ ///
+ /// 系统功能
+ ///
+ [Column("F_MODULE")]
+ public string F_Module { get; set; }
+ ///
+ /// IP地址
+ ///
+ [Column("F_IPADDRESS")]
+ public string F_IPAddress { get; set; }
+ ///
+ /// IP地址所在城市
+ ///
+ [Column("F_IPADDRESSNAME")]
+ public string F_IPAddressName { get; set; }
+ ///
+ /// 主机
+ ///
+ [Column("F_HOST")]
+ public string F_Host { get; set; }
+ ///
+ /// 浏览器
+ ///
+ [Column("F_BROWSER")]
+ public string F_Browser { get; set; }
+ ///
+ /// 执行结果状态
+ ///
+ [Column("F_EXECUTERESULT")]
+ public int? F_ExecuteResult { get; set; }
+ ///
+ /// 执行结果信息
+ ///
+ [Column("F_EXECUTERESULTJSON")]
+ public string F_ExecuteResultJson { get; set; }
+ ///
+ /// 备注
+ ///
+ [Column("F_DESCRIPTION")]
+ public string F_Description { get; set; }
+ ///
+ /// 删除标记
+ ///
+ [Column("F_DELETEMARK")]
+ public int? F_DeleteMark { get; set; }
+ ///
+ /// 有效标志
+ ///
+ [Column("F_ENABLEDMARK")]
+ public int? F_EnabledMark { get; set; }
+ ///
+ /// 来源
+ ///
+ [Column("F_SOURCE")]
+ public string F_Source { get; set; }
+ #endregion
+
+ #region 扩展操作
+ ///
+ /// 新增调用
+ ///
+ public void Create()
+ {
+ this.F_LogId = Guid.NewGuid().ToString();
+ }
+ ///
+ /// 编辑调用
+ ///
+ ///
+ public void Modify(string keyValue)
+ {
+ this.F_LogId = keyValue;
+ }
+ #endregion
+ #region 扩展字段
+ #endregion
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogIBLL.cs
new file mode 100644
index 000000000..6e8fa5404
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogIBLL.cs
@@ -0,0 +1,48 @@
+using Learun.Util;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-20 16:06
+ /// 描 述:收费系统操作日志
+ ///
+ public interface FinaChargeLogIBLL
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ ///
+ IEnumerable GetPageList(Pagination pagination, string queryJson);
+ ///
+ /// 获取FinaChargeLog表实体数据
+ ///
+ /// 主键
+ ///
+ FinaChargeLogEntity GetFinaChargeLogEntity(string keyValue);
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ void DeleteEntity(string keyValue);
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ void SaveEntity(string keyValue, FinaChargeLogEntity entity);
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogService.cs
new file mode 100644
index 000000000..f3f8118e2
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeLog/FinaChargeLogService.cs
@@ -0,0 +1,232 @@
+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.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-20 16:06
+ /// 描 述:收费系统操作日志
+ ///
+ public class FinaChargeLogService : RepositoryFactory
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ var strSql = new StringBuilder();
+ strSql.Append("SELECT ");
+ strSql.Append(@"
+ t.F_LogId,
+ t.F_Module,
+ t.F_OperateType,
+ t.F_OperateTime,
+ t.F_OperateAccount,
+ t.F_IPAddress,
+ t.F_SourceContentJson,
+ t.F_SourceObjectId
+ ");
+ strSql.Append(" FROM FinaChargeLog t ");
+ strSql.Append(" WHERE 1=1 ");
+ var queryParam = queryJson.ToJObject();
+ // 虚拟参数
+ var dp = new DynamicParameters(new { });
+ if (!queryParam["StartTime"].IsEmpty() && !queryParam["EndTime"].IsEmpty())
+ {
+ dp.Add("startTime", queryParam["StartTime"].ToDate(), DbType.DateTime);
+ dp.Add("endTime", queryParam["EndTime"].ToDate(), DbType.DateTime);
+ strSql.Append(" AND ( t.F_OperateTime >= @startTime AND t.F_OperateTime <= @endTime ) ");
+ }
+ if (!queryParam["F_OperateAccount"].IsEmpty())
+ {
+ dp.Add("F_OperateAccount", "%" + queryParam["F_OperateAccount"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.F_OperateAccount Like @F_OperateAccount ");
+ }
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(),dp, pagination);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeLog表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeLogEntity GetFinaChargeLogEntity(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ this.BaseRepository("CollegeMIS").Delete(t=>t.F_LogId == keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ public void SaveEntity(string keyValue, FinaChargeLogEntity 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);
+ }
+ }
+ }
+
+ ///
+ /// 清空日志
+ ///
+ /// 日志分类Id
+ /// 保留时间段内
+ public void RemoveLog(int categoryId, string keepTime)
+ {
+ try
+ {
+ DateTime operateTime = DateTime.Now;
+ if (keepTime == "7")//保留近一周
+ {
+ operateTime = DateTime.Now.AddDays(-7);
+ }
+ else if (keepTime == "1")//保留近一个月
+ {
+ operateTime = DateTime.Now.AddMonths(-1);
+ }
+ else if (keepTime == "3")//保留近三个月
+ {
+ operateTime = DateTime.Now.AddMonths(-3);
+ }
+ var expression = LinqExtensions.True();
+
+ this.BaseRepository("CollegeMIS").Delete(expression);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 写日志
+ ///
+ /// 对象
+ public void WriteLog(FinaChargeLogEntity logEntity)
+ {
+ try
+ {
+ logEntity.F_LogId = Guid.NewGuid().ToString();
+ logEntity.F_OperateTime = DateTime.Now;
+ logEntity.F_DeleteMark = 0;
+ logEntity.F_EnabledMark = 1;
+ logEntity.F_IPAddress = Net.Ip;
+ logEntity.F_Host = Net.Host;
+ logEntity.F_Browser = Net.Browser;
+ this.BaseRepository("CollegeMIS").Insert(logEntity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+
+ }
+
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundBLL.cs
new file mode 100644
index 000000000..2dfa31ac0
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundBLL.cs
@@ -0,0 +1,144 @@
+using Learun.Util;
+using System;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-18 18:07
+ /// 描 述:FinaChargeRefund
+ ///
+ public class FinaChargeRefundBLL : FinaChargeRefundIBLL
+ {
+ private FinaChargeRefundService FinaChargeRefundService = new FinaChargeRefundService();
+
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 分页参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ return FinaChargeRefundService.GetPageList(pagination, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeRefund表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeRefundEntity GetFinaChargeRefundEntity(string keyValue)
+ {
+ try
+ {
+ return FinaChargeRefundService.GetFinaChargeRefundEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ FinaChargeRefundService.DeleteEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ ///
+ public void SaveEntity(List list, FinaChargeRefundEntity entity)
+ {
+ try
+ {
+ FinaChargeRefundService.SaveEntity(list, entity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public FinaChargeRefundEntity GetFinaChargeRefundEntityByFSYIId(string keyValue)
+ {
+ try
+ {
+ return FinaChargeRefundService.GetFinaChargeRefundEntityByFSYIId(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundEntity.cs
new file mode 100644
index 000000000..72eaa8e3f
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundEntity.cs
@@ -0,0 +1,110 @@
+using Learun.Util;
+using System;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-18 18:07
+ /// 描 述:FinaChargeRefund
+ ///
+ public class FinaChargeRefundEntity
+ {
+ #region 实体成员
+ ///
+ /// Id
+ ///
+ [Column("ID")]
+ public string Id { get; set; }
+ ///
+ /// FSYIId
+ ///
+ [Column("FSYIID")]
+ public string FSYIId { get; set; }
+ ///
+ /// ChargeItemCode
+ ///
+ [Column("CHARGEITEMCODE")]
+ public string ChargeItemCode { get; set; }
+ ///
+ /// ChargeItemName
+ ///
+ [Column("CHARGEITEMNAME")]
+ public string ChargeItemName { get; set; }
+ ///
+ /// ChargeItemType
+ ///
+ [Column("CHARGEITEMTYPE")]
+ public int? ChargeItemType { get; set; }
+ ///
+ /// Amount
+ ///
+ [Column("AMOUNT")]
+ public decimal? Amount { get; set; }
+ ///
+ /// Remark
+ ///
+ [Column("REMARK")]
+ public string Remark { get; set; }
+ ///
+ /// 退费方式(1现金,2转账,3支票)
+ ///
+ [Column("RTYPE")]
+ public int? RType { get; set; }
+ ///
+ /// 创建日期
+ ///
+ [Column("F_CREATEDATE")]
+ public DateTime? F_CreateDate { get; set; }
+ ///
+ /// 创建用户主键
+ ///
+ [Column("F_CREATEUSERID")]
+ public string F_CreateUserId { get; set; }
+ ///
+ /// 创建用户
+ ///
+ [Column("F_CREATEUSERNAME")]
+ public string F_CreateUserName { get; set; }
+
+ [NotMapped]
+ public string StuNo { get; set; }
+ [NotMapped]
+ public string StuName { get; set; }
+ [NotMapped]
+ public string MajorNo { get; set; }
+ [NotMapped]
+ public string ClassNo { get; set; }
+ [NotMapped]
+ public string FSYear { get; set; }
+ #endregion
+
+ #region 扩展操作
+ ///
+ /// 新增调用
+ ///
+ public void Create()
+ {
+ this.Id = Guid.NewGuid().ToString();
+ this.F_CreateDate = DateTime.Now;
+ UserInfo userInfo = LoginUserInfo.Get();
+ this.F_CreateUserId = userInfo.userId;
+ this.F_CreateUserName = userInfo.realName;
+ }
+ ///
+ /// 编辑调用
+ ///
+ ///
+ public void Modify(string keyValue)
+ {
+ this.Id = keyValue;
+ }
+ #endregion
+ #region 扩展字段
+ #endregion
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundIBLL.cs
new file mode 100644
index 000000000..911c207ee
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundIBLL.cs
@@ -0,0 +1,49 @@
+using Learun.Util;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-18 18:07
+ /// 描 述:FinaChargeRefund
+ ///
+ public interface FinaChargeRefundIBLL
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ ///
+ IEnumerable GetPageList(Pagination pagination, string queryJson);
+ ///
+ /// 获取FinaChargeRefund表实体数据
+ ///
+ /// 主键
+ ///
+ FinaChargeRefundEntity GetFinaChargeRefundEntity(string keyValue);
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ void DeleteEntity(string keyValue);
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ void SaveEntity(List list, FinaChargeRefundEntity entity);
+ #endregion
+
+ FinaChargeRefundEntity GetFinaChargeRefundEntityByFSYIId(string keyValue);
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundService.cs
new file mode 100644
index 000000000..792053c7a
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeRefund/FinaChargeRefundService.cs
@@ -0,0 +1,232 @@
+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.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-18 18:07
+ /// 描 述:FinaChargeRefund
+ ///
+ public class FinaChargeRefundService : RepositoryFactory
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ var strSql = new StringBuilder();
+ strSql.Append("SELECT t.*,d.StuNo,d.StuName,d.MajorNo,d.ClassNo,b.FSYear ");
+ strSql.Append(" FROM FinaChargeRefund t left join FinaChargeStuYearItem b on t.FSYIId=b.FSYIId left join FinaChargeStuYear c on b.FSYId=c.FSYId ");
+ strSql.Append(" left join FinaChargeStudent d on c.StuNo=d.StuNo ");
+ strSql.Append(" WHERE 1=1 ");
+ var queryParam = queryJson.ToJObject();
+ // 虚拟参数
+ var dp = new DynamicParameters(new { });
+ if (!queryParam["ChargeItemCode"].IsEmpty())
+ {
+ dp.Add("ChargeItemCode", "%" + queryParam["ChargeItemCode"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.ChargeItemCode Like @ChargeItemCode ");
+ }
+ if (!queryParam["ChargeItemName"].IsEmpty())
+ {
+ dp.Add("ChargeItemName", "%" + queryParam["ChargeItemName"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.ChargeItemName Like @ChargeItemName ");
+ }
+ if (!queryParam["StuNo"].IsEmpty())
+ {
+ dp.Add("StuNo", "%" + queryParam["StuNo"].ToString() + "%", DbType.String);
+ strSql.Append(" AND d.StuNo Like @StuNo ");
+ }
+ if (!queryParam["StuName"].IsEmpty())
+ {
+ dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String);
+ strSql.Append(" AND d.StuName Like @StuName ");
+ }
+ if (!queryParam["RType"].IsEmpty())
+ {
+ dp.Add("RType", queryParam["RType"].ToString(), DbType.String);
+ strSql.Append(" AND t.RType = @RType ");
+ }
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(), dp, pagination);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeRefund表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeRefundEntity GetFinaChargeRefundEntity(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ this.BaseRepository("CollegeMIS").Delete(t => t.Id == keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ public void SaveEntity(List list, FinaChargeRefundEntity entity)
+ {
+ try
+ {
+ foreach (var finaChargeStuYearItemEntity in list)
+ {
+ var db = BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ var finaChargeRefundEntity = new FinaChargeRefundEntity();
+ finaChargeRefundEntity.Create();
+ finaChargeRefundEntity.Remark = entity.Remark;
+ finaChargeRefundEntity.RType = entity.RType;
+ finaChargeRefundEntity.FSYIId = finaChargeStuYearItemEntity.FSYIId;
+ finaChargeRefundEntity.ChargeItemCode = finaChargeStuYearItemEntity.ChargeItemCode;
+ finaChargeRefundEntity.ChargeItemName = finaChargeStuYearItemEntity.ChargeItemName;
+ finaChargeRefundEntity.ChargeItemType = finaChargeStuYearItemEntity.ChargeItemType;
+ finaChargeRefundEntity.Amount = finaChargeStuYearItemEntity.FSBlance;
+ db.Insert(finaChargeRefundEntity);
+ //退费状态修改,余额归零
+ finaChargeStuYearItemEntity.SJAmount =finaChargeStuYearItemEntity.SJAmount - finaChargeStuYearItemEntity.FSBlance;
+ finaChargeStuYearItemEntity.RefundStatus = true;
+ finaChargeStuYearItemEntity.FSBlance = 0;
+ db.Update(finaChargeStuYearItemEntity);
+ //FinaChargeStuYear年度余额计算
+ db.ExecuteBySql("update FinaChargeStuYear set FSBlance=FSBlance-" + finaChargeRefundEntity.Amount + ",SJAmount=SJAmount-"+ finaChargeRefundEntity.Amount + " where FSYId='" + finaChargeStuYearItemEntity.FSYId + "'");
+ //学生余额扣减
+ db.ExecuteBySql("update FinaChargeStudent set FSBlance=FSBlance-" + finaChargeRefundEntity.Amount + " where StuNo='" + finaChargeStuYearItemEntity.StuNo + "'");
+ //交易流水记录
+ var finaChargeStuBalance=new FinaChargeStuBalanceEntity();
+ finaChargeStuBalance.Create();
+ finaChargeStuBalance.StuNo = finaChargeStuYearItemEntity.StuNo;
+ finaChargeStuBalance.FSYear = finaChargeStuYearItemEntity.FSYear;
+ finaChargeStuBalance.FCSOId = finaChargeRefundEntity.Id;
+ finaChargeStuBalance.ChargeItemCode = finaChargeRefundEntity.ChargeItemCode;
+ finaChargeStuBalance.ChargeItemName = finaChargeRefundEntity.ChargeItemName;
+ finaChargeStuBalance.Standard = finaChargeStuYearItemEntity.Standard;
+ finaChargeStuBalance.DJAmount = 0;
+ finaChargeStuBalance.PaymentAmount =0;
+ finaChargeStuBalance.QJAmount = 0;
+ finaChargeStuBalance.OldBalance = finaChargeRefundEntity.Amount;
+ finaChargeStuBalance.ChangeAmount =- finaChargeRefundEntity.Amount;
+ finaChargeStuBalance.NowBalance = 0;
+ finaChargeStuBalance.ChangeDate = DateTime.Now;
+ finaChargeStuBalance.ChangeType = 4;
+ db.Insert(finaChargeStuBalance);
+ db.Commit();
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ public FinaChargeRefundEntity GetFinaChargeRefundEntityByFSYIId(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity(m=>m.FSYIId== keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceBLL.cs
new file mode 100644
index 000000000..95142d331
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceBLL.cs
@@ -0,0 +1,125 @@
+using Learun.Util;
+using System;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-16 11:02
+ /// 描 述:费用变更明细
+ ///
+ public class FinaChargeStuBalanceBLL : FinaChargeStuBalanceIBLL
+ {
+ private FinaChargeStuBalanceService finaChargeStuBalanceService = new FinaChargeStuBalanceService();
+
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 分页参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ return finaChargeStuBalanceService.GetPageList(pagination, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuBalance表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuBalanceEntity GetFinaChargeStuBalanceEntity(string keyValue)
+ {
+ try
+ {
+ return finaChargeStuBalanceService.GetFinaChargeStuBalanceEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ finaChargeStuBalanceService.DeleteEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ ///
+ public void SaveEntity(string keyValue, FinaChargeStuBalanceEntity entity)
+ {
+ try
+ {
+ finaChargeStuBalanceService.SaveEntity(keyValue, entity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceEntity.cs
new file mode 100644
index 000000000..96bc7c200
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceEntity.cs
@@ -0,0 +1,131 @@
+using Learun.Util;
+using System;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-16 11:02
+ /// 描 述:费用变更明细
+ ///
+ public class FinaChargeStuBalanceEntity
+ {
+ #region 实体成员
+ ///
+ /// Id
+ ///
+ [Column("ID")]
+ public string Id { get; set; }
+ ///
+ /// StuNo
+ ///
+ [Column("STUNO")]
+ public string StuNo { get; set; }
+ ///
+ /// FSYear
+ ///
+ [Column("FSYEAR")]
+ public int? FSYear { get; set; }
+ ///
+ /// FCSOId
+ ///
+ [Column("FCSOID")]
+ public string FCSOId { get; set; }
+ ///
+ /// ChargeItemCode
+ ///
+ [Column("CHARGEITEMCODE")]
+ public string ChargeItemCode { get; set; }
+ ///
+ /// ChargeItemName
+ ///
+ [Column("CHARGEITEMNAME")]
+ public string ChargeItemName { get; set; }
+ ///
+ /// Standard
+ ///
+ [Column("STANDARD")]
+ public decimal? Standard { get; set; }
+ ///
+ /// 剩余缴费金额
+ ///
+ [Column("DJAMOUNT")]
+ public decimal? DJAmount { get; set; }
+ ///
+ /// 变动金额
+ ///
+ [Column("PAYMENTAMOUNT")]
+ public decimal? PaymentAmount { get; set; }
+ ///
+ /// 本次剩余缴费金额
+ ///
+ [Column("QJAMOUNT")]
+ public decimal? QJAmount { get; set; }
+ ///
+ /// OldBalance
+ ///
+ [Column("OLDBALANCE")]
+ public decimal? OldBalance { get; set; }
+ ///
+ /// ChangeAmount
+ ///
+ [Column("CHANGEAMOUNT")]
+ public decimal? ChangeAmount { get; set; }
+ ///
+ /// NowBalance
+ ///
+ [Column("NOWBALANCE")]
+ public decimal? NowBalance { get; set; }
+ ///
+ /// ChangeDate
+ ///
+ [Column("CHANGEDATE")]
+ public DateTime? ChangeDate { get; set; }
+ ///
+ /// 变动原因(1二维码缴费,2导入贷款,3导入现金,4退费,5自动分配扣减,6自动分配增加,7导入POS收款)
+ ///
+ [Column("CHANGETYPE")]
+ public int? ChangeType { get; set; }
+ #endregion
+
+ #region 扩展操作
+ ///
+ /// 新增调用
+ ///
+ public void Create()
+ {
+ this.Id = Guid.NewGuid().ToString();
+ }
+ ///
+ /// 编辑调用
+ ///
+ ///
+ public void Modify(string keyValue)
+ {
+ this.Id = keyValue;
+ }
+ #endregion
+ #region 扩展字段
+ [NotMapped]
+ public string StuName { get; set; }
+ [NotMapped]
+ public bool? GenderNo { get; set; }
+ [NotMapped]
+ public string IdentityCardNo { get; set; }
+ [NotMapped]
+ public string DeptNo { get; set; }
+ [NotMapped]
+ public string MajorNo { get; set; }
+ [NotMapped]
+ public string ClassNo { get; set; }
+ [NotMapped]
+ public string Grade { get; set; }
+ [NotMapped]
+ public string Mobile { get; set; }
+ #endregion
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceIBLL.cs
new file mode 100644
index 000000000..26803fe4c
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceIBLL.cs
@@ -0,0 +1,48 @@
+using Learun.Util;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-16 11:02
+ /// 描 述:费用变更明细
+ ///
+ public interface FinaChargeStuBalanceIBLL
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ ///
+ IEnumerable GetPageList(Pagination pagination, string queryJson);
+ ///
+ /// 获取FinaChargeStuBalance表实体数据
+ ///
+ /// 主键
+ ///
+ FinaChargeStuBalanceEntity GetFinaChargeStuBalanceEntity(string keyValue);
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ void DeleteEntity(string keyValue);
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ void SaveEntity(string keyValue, FinaChargeStuBalanceEntity entity);
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceService.cs
new file mode 100644
index 000000000..ca2accd2a
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuBalance/FinaChargeStuBalanceService.cs
@@ -0,0 +1,167 @@
+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.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-16 11:02
+ /// 描 述:费用变更明细
+ ///
+ public class FinaChargeStuBalanceService : RepositoryFactory
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ var strSql = new StringBuilder();
+ strSql.Append("SELECT t.*,b.StuName,b.GenderNo,b.IdentityCardNo,b.DeptNo,b.MajorNo,b.ClassNo,b.Grade,b.Mobile ");
+ strSql.Append(" FROM FinaChargeStuBalance t left join FinaChargeStudent b on t.StuNo=b.StuNo ");
+ strSql.Append(" WHERE 1=1 ");
+ var queryParam = queryJson.ToJObject();
+ // 虚拟参数
+ var dp = new DynamicParameters(new { });
+ if (!queryParam["StartTime"].IsEmpty() && !queryParam["EndTime"].IsEmpty())
+ {
+ dp.Add("startTime", queryParam["StartTime"].ToDate(), DbType.DateTime);
+ dp.Add("endTime", queryParam["EndTime"].ToDate(), DbType.DateTime);
+ strSql.Append(" AND ( t.ChangeDate >= @startTime AND t.ChangeDate <= @endTime ) ");
+ }
+ if (!queryParam["StuNo"].IsEmpty())
+ {
+ dp.Add("StuNo", "%" + queryParam["StuNo"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.StuNo Like @StuNo ");
+ }
+ if (!queryParam["FSYear"].IsEmpty())
+ {
+ dp.Add("FSYear", "%" + queryParam["FSYear"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.FSYear Like @FSYear ");
+ }
+ if (!queryParam["ChargeItemCode"].IsEmpty())
+ {
+ dp.Add("ChargeItemCode", "%" + queryParam["ChargeItemCode"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.ChargeItemCode Like @ChargeItemCode ");
+ }
+ if (!queryParam["ChangeType"].IsEmpty())
+ {
+ dp.Add("ChangeType", "" + queryParam["ChangeType"].ToString() + "", DbType.String);
+ strSql.Append(" AND t.ChangeType =@ChangeType ");
+ }
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(),dp, pagination);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuBalance表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuBalanceEntity GetFinaChargeStuBalanceEntity(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ this.BaseRepository("CollegeMIS").Delete(t=>t.Id == keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ public void SaveEntity(string keyValue, FinaChargeStuBalanceEntity 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
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderBLL.cs
new file mode 100644
index 000000000..9552bd2e0
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderBLL.cs
@@ -0,0 +1,163 @@
+using Learun.Util;
+using System;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:06
+ /// 描 述:缴费订单管理
+ ///
+ public class FinaChargeStuOrderBLL : FinaChargeStuOrderIBLL
+ {
+ private FinaChargeStuOrderService finaChargeStuOrderService = new FinaChargeStuOrderService();
+
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 分页参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ return finaChargeStuOrderService.GetPageList(pagination, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuOrder表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuOrderEntity GetFinaChargeStuOrderEntity(string keyValue)
+ {
+ try
+ {
+ return finaChargeStuOrderService.GetFinaChargeStuOrderEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ finaChargeStuOrderService.DeleteEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ ///
+ public void SaveEntity(string keyValue, FinaChargeStuOrderEntity entity)
+ {
+ try
+ {
+ finaChargeStuOrderService.SaveEntity(keyValue, entity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public void SaveOrderData(FinaChargeStuYearEntity entity, List list)
+ {
+ try
+ {
+ finaChargeStuOrderService.SaveOrderData( entity,list);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public string ExecuteImportExcel(DataTable dt, string fileGuid, string queryJson)
+ {
+ try
+ {
+ return finaChargeStuOrderService.ExecuteImportExcel(dt, fileGuid, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderEntity.cs
new file mode 100644
index 000000000..bf617c008
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderEntity.cs
@@ -0,0 +1,132 @@
+using Learun.Util;
+using System;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:06
+ /// 描 述:缴费订单管理
+ ///
+ public class FinaChargeStuOrderEntity
+ {
+ #region 实体成员
+ ///
+ /// Id
+ ///
+ [Column("ID")]
+ public string Id { get; set; }
+ ///
+ /// FSYId
+ ///
+ [Column("FSYID")]
+ public string FSYId { get; set; }
+ ///
+ /// 年度
+ ///
+ [Column("YEARNO")]
+ public int? YearNo { get; set; }
+ ///
+ /// 学号
+ ///
+ [Column("STUNO")]
+ public string StuNo { get; set; }
+ ///
+ /// 订单编号
+ ///
+ [Column("ORDERID")]
+ public string orderid { get; set; }
+ ///
+ /// 应交金额
+ ///
+ [Column("YJAMOUNT")]
+ public decimal? YJAmount { get; set; }
+ ///
+ /// 实交金额
+ ///
+ [Column("SJAMOUNT")]
+ public decimal? SJAmount { get; set; }
+ ///
+ /// 待缴金额
+ ///
+ [Column("DJAMOUNT")]
+ public decimal? DJAmount { get; set; }
+ ///
+ /// 超出余额
+ ///
+ [Column("NOWBLANCE")]
+ public decimal? NowBlance { get; set; }
+ ///
+ /// 缴费订单状态(0未支付,1已支付)
+ ///
+ [Column("STATUS")]
+ public int? Status { get; set; }
+ ///
+ /// 下单时间
+ ///
+ [Column("PLACEORDERTIME")]
+ public DateTime? PlaceOrderTime { get; set; }
+ ///
+ /// 付款时间
+ ///
+ [Column("PAYTIME")]
+ public DateTime? PayTime { get; set; }
+ ///
+ /// 付款方式
+ ///
+ [Column("PAYMODE")]
+ public string PayMode { get; set; }
+ ///
+ /// 订单来源(1二维码缴费,2人工导入)
+ ///
+ [Column("ORDERTYPE")]
+ public int? OrderType { get; set; }
+ ///
+ /// 银行流水号
+ ///
+ [Column("BANKORDER")]
+ public string BankOrder { get; set; }
+ #endregion
+
+ #region 扩展操作
+ ///
+ /// 新增调用
+ ///
+ public void Create()
+ {
+ this.Id = Guid.NewGuid().ToString();
+ NowBlance = 0;
+ }
+ ///
+ /// 编辑调用
+ ///
+ ///
+ public void Modify(string keyValue)
+ {
+ this.Id = keyValue;
+ }
+ #endregion
+ #region 扩展字段
+ [NotMapped]
+ public string StuName { get; set; }
+ [NotMapped]
+ public bool? GenderNo { get; set; }
+ [NotMapped]
+ public string IdentityCardNo { get; set; }
+ [NotMapped]
+ public string DeptNo { get; set; }
+ [NotMapped]
+ public string MajorNo { get; set; }
+ [NotMapped]
+ public string ClassNo { get; set; }
+ [NotMapped]
+ public string Grade { get; set; }
+ [NotMapped]
+ public string Mobile { get; set; }
+ #endregion
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderIBLL.cs
new file mode 100644
index 000000000..2bf76e7da
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderIBLL.cs
@@ -0,0 +1,50 @@
+using Learun.Util;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:06
+ /// 描 述:缴费订单管理
+ ///
+ public interface FinaChargeStuOrderIBLL
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ ///
+ IEnumerable GetPageList(Pagination pagination, string queryJson);
+ ///
+ /// 获取FinaChargeStuOrder表实体数据
+ ///
+ /// 主键
+ ///
+ FinaChargeStuOrderEntity GetFinaChargeStuOrderEntity(string keyValue);
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ void DeleteEntity(string keyValue);
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ void SaveEntity(string keyValue, FinaChargeStuOrderEntity entity);
+ #endregion
+
+ void SaveOrderData(FinaChargeStuYearEntity entity, List list);
+ string ExecuteImportExcel(DataTable dt, string fileGuid, string queryJson);
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderService.cs
new file mode 100644
index 000000000..247655105
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrder/FinaChargeStuOrderService.cs
@@ -0,0 +1,616 @@
+using Dapper;
+using Learun.DataBase.Repository;
+using Learun.Util;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Text;
+using Learun.Application.Base.SystemModule;
+using Learun.Cache.Base;
+using Learun.Cache.Factory;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:06
+ /// 描 述:缴费订单管理
+ ///
+ public class FinaChargeStuOrderService : RepositoryFactory
+ {
+ private ICache cache = CacheFactory.CaChe();
+ private string cacheKey = "Learun_adms_excelError_";
+ private DataItemService datarItemService = new DataItemService();
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ var strSql = new StringBuilder();
+ strSql.Append("SELECT t.*,b.StuName,b.GenderNo,b.IdentityCardNo,b.DeptNo,b.MajorNo,b.ClassNo,b.Grade,b.Mobile ");
+ strSql.Append(" FROM FinaChargeStuOrder t left join FinaChargeStudent b on t.StuNo=b.StuNo ");
+ strSql.Append(" WHERE 1=1 ");
+ var queryParam = queryJson.ToJObject();
+ // 虚拟参数
+ var dp = new DynamicParameters(new { });
+ if (!queryParam["StartTime"].IsEmpty() && !queryParam["EndTime"].IsEmpty())
+ {
+ dp.Add("startTime", queryParam["StartTime"].ToDate(), DbType.DateTime);
+ dp.Add("endTime", queryParam["EndTime"].ToDate(), DbType.DateTime);
+ strSql.Append(" AND ( t.PlaceOrderTime >= @startTime AND t.PlaceOrderTime <= @endTime ) ");
+ }
+ if (!queryParam["YearNo"].IsEmpty())
+ {
+ dp.Add("YearNo", "%" + queryParam["YearNo"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.YearNo Like @YearNo ");
+ }
+ if (!queryParam["StuNo"].IsEmpty())
+ {
+ dp.Add("StuNo", "%" + queryParam["StuNo"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.StuNo Like @StuNo ");
+ }
+ if (!queryParam["Status"].IsEmpty())
+ {
+ dp.Add("Status", queryParam["Status"].ToString(), DbType.String);
+ strSql.Append(" AND t.Status = @Status ");
+ }
+ if (!queryParam["PayMode"].IsEmpty())
+ {
+ dp.Add("PayMode", queryParam["PayMode"].ToString(), DbType.String);
+ strSql.Append(" AND t.PayMode = @PayMode ");
+ }
+ if (!queryParam["OrderType"].IsEmpty())
+ {
+ dp.Add("OrderType", queryParam["OrderType"].ToString(), DbType.String);
+ strSql.Append(" AND t.OrderType = @OrderType ");
+ }
+ if (!queryParam["BankOrder"].IsEmpty())
+ {
+ dp.Add("BankOrder", "%" + queryParam["BankOrder"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.BankOrder Like @BankOrder ");
+ }
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(), dp, pagination);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuOrder表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuOrderEntity GetFinaChargeStuOrderEntity(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ this.BaseRepository("CollegeMIS").Delete(t => t.Id == keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ public void SaveEntity(string keyValue, FinaChargeStuOrderEntity 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
+
+ ///
+ /// 二维码缴费下单
+ ///
+ ///
+ ///
+ public void SaveOrderData(FinaChargeStuYearEntity entity, List list)
+ {
+ var db = this.BaseRepository("CollegeMIS");
+ try
+ {
+ db.BeginTrans();
+ //保存缴费订单数据
+ var order = new FinaChargeStuOrderEntity();
+ order.Create();
+ order.FSYId = entity.FSYId;
+ order.YearNo = entity.FSYear;
+ order.StuNo = entity.StuNo;
+ order.orderid = entity.orderid;
+ order.YJAmount = list.Sum(x => x.YJAmount);
+ order.SJAmount = list.Sum(x => x.SJAmount);
+ order.DJAmount = order.YJAmount - order.SJAmount;
+ if (order.DJAmount < 0)
+ {
+ order.NowBlance = Math.Abs(order.DJAmount.Value);
+ order.DJAmount = 0;
+ }
+ order.PlaceOrderTime = DateTime.Now;
+ order.Status = 0;
+ order.OrderType = 1;
+ db.Insert(order);
+ //订单明细
+ foreach (var detail in list)
+ {
+ detail.Create();
+ detail.FCSOId = order.Id;
+ detail.DJAmount = detail.YJAmount - detail.SJAmount;
+ if (detail.DJAmount < 0)
+ {
+ detail.NowBlance = Math.Abs(detail.DJAmount.Value);
+ detail.DJAmount = 0;
+ }
+ db.Insert(detail);
+ }
+ db.Commit();
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public string ExecuteImportExcel(DataTable dt, string fileGuid, string queryJson)
+ {
+ try
+ {
+ int snum = 0;
+ int fnum = 0;
+ if (dt.Rows.Count > 0)
+ {
+ DataTable failDt = new DataTable();
+ dt.Columns.Add("导入错误", typeof(string));
+ foreach (DataColumn dc in dt.Columns)
+ {
+ failDt.Columns.Add(dc.ColumnName, dc.DataType);
+ }
+ //导入订单
+ var oldOrderList = BaseRepository("CollegeMIS").FindList("select * from FinaChargeStuOrder where OrderType='2' ");
+ //缴费方式字典
+ var dataitemlist = datarItemService.GetDetailList("PayTypeOffLine");
+
+ foreach (DataRow dr in dt.Rows)
+ {
+ var db = this.BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ //获取已有年度学生缴费记录
+ var oldFinaChargeStuYearList = db.FindList();
+ //获取已有年度学生缴费明细记录
+ var oldFinaChargeStuYearItemList = db.FindList("select a.*,b.StuNo,c.StuName from FinaChargeStuYearItem a left join FinaChargeStuYear b on a.FSYId=b.FSYId left join FinaChargeStudent c on b.StuNo=c.StuNo where ChargeItemType=1 and F_DeleteMark=0 and RefundStatus=0");
+ IEnumerable finaChargeStuYearItemList = null;
+ FinaChargeStuYearItemEntity finaChargeStuYearItemEntity = null;
+ FinaChargeStuYearEntity finaChargeStuYearEntity = null;
+ int ChangeType = 0;
+ //检测是否有空值
+ if (dr[0].ToString() == "" || dr[1].ToString() == "" || dr[2].ToString() == "" || dr[3].ToString() == "" || dr[4].ToString() == "" || dr[5].ToString() == "")
+ {
+ throw new Exception("行内数据有空值,不能为空!");
+ }
+ //检测缴费年度是否为数字
+ decimal payyearresult = 0;
+ bool parsepayyearresult = decimal.TryParse(dr[2].ToString(), out payyearresult);
+ if (!parsepayyearresult || dr[2].ToString().Length != 4)
+ {
+ throw new Exception("【缴费年度】格式不正确,必须为四位数字年份!");
+ }
+ //首先校验金额是否为数字
+ decimal dresult = 0;
+ bool parseresult = decimal.TryParse(dr[3].ToString(), out dresult);
+ if (!parseresult)
+ {
+ throw new Exception("【金额】转换失败,必须为数字!");
+ }
+ //金额不能小于等于零
+ if (dresult <= 0)
+ {
+ throw new Exception("【金额】不能为零或小于零,必须为正数!");
+ }
+ //筛选不在收费学生表内的数据
+ finaChargeStuYearEntity = oldFinaChargeStuYearList.FirstOrDefault(m => m.StuNo == dr[0].ToString() && m.FSYear == payyearresult);
+ finaChargeStuYearItemList = oldFinaChargeStuYearItemList.Where(m => m.StuNo == dr[0].ToString() && m.StuName == dr[1].ToString() && m.FSYear == payyearresult);
+ if (finaChargeStuYearEntity == null || finaChargeStuYearItemList.Count() == 0)
+ {
+ throw new Exception("【年度收费学生】不存在,请核对!");
+ }
+ else
+ {
+ //筛选已缴费的学生
+ if (finaChargeStuYearEntity.PayFeeStatus == 1)
+ {
+ throw new Exception("【年度收费学生】已缴费,请核对!");
+ }
+ }
+ //缴费方式判断
+ var itemcodeentity = dataitemlist.FirstOrDefault(m => m.F_ItemName == dr[4].ToString());
+ if (itemcodeentity == null)
+ {
+ throw new Exception("【缴费方式】只能为现金或贷款,请核对!");
+ }
+ int itemcodeint = 0;
+ if (!int.TryParse(itemcodeentity.F_ItemValue, out itemcodeint))
+ {
+ throw new Exception("【线下缴费方式字典(PayTypeOffLine)】值code只能为整数,请核对!");
+ }
+ //线下订单去重
+ if (oldOrderList.Count(m => m.BankOrder == dr[5].ToString()) > 0)
+ {
+ throw new Exception("【线下缴费编号】已存在,请核对!");
+ }
+
+ //开始导入
+ //生成订单
+ FinaChargeStuOrderEntity orderEntity = new FinaChargeStuOrderEntity();
+ orderEntity.Create();
+ orderEntity.FSYId = finaChargeStuYearEntity.FSYId;
+ orderEntity.YearNo = finaChargeStuYearEntity.FSYear;
+ orderEntity.StuNo = finaChargeStuYearEntity.StuNo;
+ Random ran = new Random();
+ orderEntity.orderid = DateTime.Now.ToString("yyyyMMddhhmmss") + ran.Next(0, 100000);
+ orderEntity.PlaceOrderTime = DateTime.Now;
+ orderEntity.PayTime = orderEntity.PlaceOrderTime;
+ orderEntity.Status = 1;
+ orderEntity.OrderType = 2;
+ orderEntity.BankOrder = dr[5].ToString();
+ //历史固定项目未缴费和部分缴费的数据
+ var oldnotpaylist = finaChargeStuYearItemList.Where(m => m.PayFeeStatus != 1).OrderBy(m => m.priority).ToList();
+ if (oldnotpaylist.Count==0)
+ {
+ throw new Exception("【固定收费项目】已缴费,请核对!");
+ }
+ finaChargeStuYearItemEntity = oldnotpaylist.FirstOrDefault();
+ //订单明细 写入优先级最高的一条为暂存位置
+ FinaChargeStuOrderDetailEntity detail = new FinaChargeStuOrderDetailEntity();
+ detail.Create();
+ detail.FCSOId = orderEntity.Id;
+ detail.ChargeItemCode = finaChargeStuYearItemEntity.ChargeItemCode;
+ detail.ChargeItemName = finaChargeStuYearItemEntity.ChargeItemName;
+ detail.YJAmount = finaChargeStuYearItemEntity.Standard;
+ detail.SJAmount = dresult;
+ detail.DJAmount = detail.YJAmount - detail.SJAmount;
+ if (detail.DJAmount < 0)//有结余
+ {
+ detail.NowBlance = Math.Abs(detail.DJAmount.Value);
+ detail.DJAmount = 0;
+ }
+ //主表金额根据子表计算
+ orderEntity.YJAmount = detail.YJAmount;
+ orderEntity.SJAmount = dresult;
+ orderEntity.DJAmount = detail.DJAmount;
+ orderEntity.NowBlance = detail.NowBlance;
+ db.Insert(orderEntity);
+ db.Insert(detail);
+ //判断实缴金额是否缴清费用
+ //如果存在未缴费的非固定项目,直接判定部分缴费
+ var fgdfinaChargeStuYearItem = db.FindList("select * from FinaChargeStuYearItem where ChargeItemType=2 and PayFeeStatus<>1 and FSYId='"+ finaChargeStuYearEntity.FSYId+ "'");
+ var gdfinaChargeStuYearItem = db.FindList("select * from FinaChargeStuYearItem where ChargeItemType=1 and PayFeeStatus<>1 and FSYId='" + finaChargeStuYearEntity.FSYId + "'");
+ //if (fgdfinaChargeStuYearItem.Count()==0)
+ //{
+ // decimal sjcount = Convert.ToDecimal(db.FindObject("select isnull(sum(SJAmount),0) from FinaChargeStuOrder where StuNo='" + orderEntity.StuNo + "' and Status=1 and YearNo='" + orderEntity.YearNo + "' "));
+ // //增加本次缴费金额
+ // sjcount = sjcount + orderEntity.SJAmount.Value;
+ // decimal yjcount = finaChargeStuYearEntity.YJAmount.Value;
+ // if (sjcount >= yjcount)
+ // {
+ // //更新缴费状态
+ // db.ExecuteBySql("update FinaChargeStuYear set PayFeeStatus='1' where FSYId='" + finaChargeStuYearEntity.FSYId + "'");
+ // }
+ // else//更新部分缴费状态
+ // {
+ // //更新缴费状态
+ // db.ExecuteBySql("update FinaChargeStuYear set PayFeeStatus='4' where FSYId='" + finaChargeStuYearEntity.FSYId + "'");
+ // }
+ //}
+ //else
+ //{
+ // //更新缴费状态
+ // db.ExecuteBySql("update FinaChargeStuYear set PayFeeStatus='4' where FSYId='" + finaChargeStuYearEntity.FSYId + "'");
+ //}
+ //费用变更明细
+ FinaChargeStuBalanceEntity finaChargeStuBalanceEntity = new FinaChargeStuBalanceEntity();
+ finaChargeStuBalanceEntity.Create();
+ finaChargeStuBalanceEntity.StuNo = orderEntity.StuNo;
+ finaChargeStuBalanceEntity.FSYear = orderEntity.YearNo;
+ finaChargeStuBalanceEntity.FCSOId = orderEntity.Id;
+ finaChargeStuBalanceEntity.ChargeItemCode = detail.ChargeItemCode;
+ finaChargeStuBalanceEntity.ChargeItemName = detail.ChargeItemName;
+ finaChargeStuBalanceEntity.Standard = finaChargeStuYearItemEntity.Standard;
+ finaChargeStuBalanceEntity.DJAmount = finaChargeStuYearItemEntity.NeedToPay;
+ finaChargeStuBalanceEntity.PaymentAmount = dresult;
+ finaChargeStuBalanceEntity.QJAmount = finaChargeStuYearItemEntity.NeedToPay - dresult > 0 ? finaChargeStuYearItemEntity.NeedToPay - dresult : 0;
+ finaChargeStuBalanceEntity.OldBalance = finaChargeStuYearItemEntity.FSBlance;
+ if (finaChargeStuYearItemEntity.NeedToPay-dresult<0)
+ {
+ finaChargeStuBalanceEntity.ChangeAmount = dresult - finaChargeStuBalanceEntity.DJAmount;
+ finaChargeStuBalanceEntity.NowBalance = finaChargeStuBalanceEntity.ChangeAmount;
+ }
+ else
+ {
+ finaChargeStuBalanceEntity.ChangeAmount = 0;
+ finaChargeStuBalanceEntity.NowBalance = 0;
+ }
+ finaChargeStuBalanceEntity.ChangeDate = DateTime.Now;
+ finaChargeStuBalanceEntity.ChangeType = itemcodeint;
+ db.Insert(finaChargeStuBalanceEntity);
+ //FinaChargeStuYearItem表
+ finaChargeStuYearItemEntity.SJAmount = finaChargeStuYearItemEntity.SJAmount + dresult;
+ if (finaChargeStuYearItemEntity.NeedToPay - dresult < 0)
+ {
+ finaChargeStuYearItemEntity.FSBlance = Math.Abs(finaChargeStuYearItemEntity.NeedToPay.Value - dresult);
+ finaChargeStuYearItemEntity.NeedToPay = 0;
+ }
+ else
+ {
+ finaChargeStuYearItemEntity.NeedToPay = finaChargeStuYearItemEntity.NeedToPay - dresult;
+ }
+ finaChargeStuYearItemEntity.PayFeeStatus = finaChargeStuYearItemEntity.NeedToPay > 0 ? 4 : 1;
+ db.Update(finaChargeStuYearItemEntity);
+ //如果存在未缴费的非固定项目,应缴余额和超出应收应该排除掉
+ //同时满足固定项目超出的情况
+ if (fgdfinaChargeStuYearItem.Count() == 0)
+ {
+ //FinaChargeStuYear表
+ db.ExecuteBySql("update FinaChargeStuYear set SJAmount=SJAmount+" + dresult + ",NeedToPay=(case when(NeedToPay-" + dresult + ")>0 then (NeedToPay-" + dresult + ") else 0 end),FSBlance=(case when(NeedToPay-" + dresult + ")>=0 then 0 else abs(NeedToPay-" + dresult + ") end),PayFeeStatus=(case when(NeedToPay-" + dresult + ">=0) then 4 else 1 end) where FSYId='" + finaChargeStuYearItemEntity.FSYId + "'");
+ //FinaChargeStudent表
+ db.ExecuteBySql("update FinaChargeStudent set NeedToPay=(case when(NeedToPay-" + dresult + ")>0 then (NeedToPay-" + dresult + ") else 0 end),FSBlance=(case when(NeedToPay-" + dresult + ")>=0 then 0 else abs(NeedToPay-" + dresult + ") end) where StuNo='" + finaChargeStuYearItemEntity.StuNo + "'");
+ }
+ else
+ {
+ decimal fgdcount = fgdfinaChargeStuYearItem.Sum(m=>m.NeedToPay).Value;
+ if (gdfinaChargeStuYearItem.Sum(m=>m.NeedToPay).Value- dresult<=0)
+ {
+ //FinaChargeStuYear表
+ db.ExecuteBySql("update FinaChargeStuYear set SJAmount=SJAmount+" + dresult + ",NeedToPay="+ fgdcount + ",FSBlance=" + (dresult-gdfinaChargeStuYearItem.Sum(m => m.NeedToPay)) + ",PayFeeStatus=4 where FSYId='" + finaChargeStuYearItemEntity.FSYId + "'");
+ //FinaChargeStudent表
+ db.ExecuteBySql("update FinaChargeStudent set NeedToPay="+ fgdcount + ",FSBlance=" + (dresult - gdfinaChargeStuYearItem.Sum(m => m.NeedToPay)) + " where StuNo='" + finaChargeStuYearItemEntity.StuNo + "'");
+ }
+ else
+ {
+ //FinaChargeStuYear表
+ db.ExecuteBySql("update FinaChargeStuYear set SJAmount=SJAmount+" + dresult + ",NeedToPay=(case when(NeedToPay-" + dresult +")>0 then (NeedToPay-" + dresult +") else 0 end),FSBlance=0,PayFeeStatus=(case when(NeedToPay-" + dresult + "+" + fgdcount + ">=0) then 4 else 1 end) where FSYId='" + finaChargeStuYearItemEntity.FSYId + "'");
+ //FinaChargeStudent表
+ db.ExecuteBySql("update FinaChargeStudent set NeedToPay=(case when(NeedToPay-" + dresult + ")>0 then (NeedToPay-" + dresult + ") else 0 end),FSBlance=0 where StuNo='" + finaChargeStuYearItemEntity.StuNo + "'");
+ }
+ }
+ db.Commit();
+ //自动分配超出金额
+ AutoCharge(finaChargeStuYearEntity.FSYear.Value);
+ snum++;
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ fnum++;
+ dr["导入错误"] = ex.Message;
+ failDt.Rows.Add(dr.ItemArray);
+ }
+ }
+
+ // 写入缓存如果有未导入的数据
+ if (failDt.Rows.Count > 0)
+ {
+ string errordt = failDt.ToJson();
+ cache.Write(cacheKey + fileGuid, errordt, CacheId.excel);
+ }
+ }
+ return snum + "|" + fnum;
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 自动分配固定项目缴费多余金额
+ ///
+ ///
+ public void AutoCharge(int YearNo)
+ {
+ try
+ {
+ Random ran = new Random();
+ //获取有缴费余额的固定项目,按照优先级倒排,即优先级低的,先拿出多出余额去分配给高的项目
+ var FinaChargeStuYearItemHasBalance = BaseRepository("CollegeMIS").FindList("select a.*,b.StuNo from FinaChargeStuYearItem a left join FinaChargeStuYear b on a.FSYId=b.FSYId where ChargeItemType=1 and F_DeleteMark=0 and a.FSBlance>0 and b.FSYear='"+YearNo+"' order by priority desc ");
+ //获取欠费的固定项目,按照优先级排序,优先级高的首先会分配到多出的余额
+ var FinaChargeStuYearItemHasDJ = BaseRepository("CollegeMIS").FindList("select a.*,b.StuNo from FinaChargeStuYearItem a left join FinaChargeStuYear b on a.FSYId=b.FSYId where ChargeItemType=1 and F_DeleteMark=0 and a.NeedToPay>0 and b.FSYear='" + YearNo + "' order by priority ");
+ foreach (var hasBalanceItem in FinaChargeStuYearItemHasBalance)
+ {
+ if (hasBalanceItem.FSBlance > 0)
+ {
+ foreach (var QJItem in FinaChargeStuYearItemHasDJ.Where(m=>m.StuNo== hasBalanceItem.StuNo))
+ {
+ var db = BaseRepository("CollegeMIS").BeginTrans();
+ if (QJItem.NeedToPay >0 && hasBalanceItem.FSBlance > 0)
+ {
+ //费用变更表
+ //超出应收额表余额扣减
+ FinaChargeStuBalanceEntity finaChargeStuBalanceMinus = new FinaChargeStuBalanceEntity();
+ finaChargeStuBalanceMinus.Create();
+ finaChargeStuBalanceMinus.StuNo = hasBalanceItem.StuNo;
+ finaChargeStuBalanceMinus.FSYear = hasBalanceItem.FSYear;
+ finaChargeStuBalanceMinus.FCSOId = DateTime.Now.ToString("yyyyMMddhhmmss") + ran.Next(0, 100000);
+ finaChargeStuBalanceMinus.ChargeItemCode = hasBalanceItem.ChargeItemCode;
+ finaChargeStuBalanceMinus.ChargeItemName = hasBalanceItem.ChargeItemName;
+ finaChargeStuBalanceMinus.Standard = hasBalanceItem.Standard;
+ finaChargeStuBalanceMinus.DJAmount = 0;
+ finaChargeStuBalanceMinus.QJAmount = 0;
+ finaChargeStuBalanceMinus.PaymentAmount = 0;
+ finaChargeStuBalanceMinus.OldBalance = hasBalanceItem.FSBlance;
+ finaChargeStuBalanceMinus.ChangeDate = DateTime.Now;
+ finaChargeStuBalanceMinus.ChangeType = 5;
+ //欠费表增加
+ FinaChargeStuBalanceEntity finaChargeStuBalanceAdd = new FinaChargeStuBalanceEntity();
+ finaChargeStuBalanceAdd.Create();
+ finaChargeStuBalanceAdd.StuNo = QJItem.StuNo;
+ finaChargeStuBalanceAdd.FSYear = QJItem.FSYear;
+ finaChargeStuBalanceAdd.FCSOId = DateTime.Now.ToString("yyyyMMddhhmmss") + ran.Next(0, 100000);
+ finaChargeStuBalanceAdd.ChargeItemCode = QJItem.ChargeItemCode;
+ finaChargeStuBalanceAdd.ChargeItemName = QJItem.ChargeItemName;
+ finaChargeStuBalanceAdd.Standard = QJItem.Standard;
+ finaChargeStuBalanceAdd.DJAmount =QJItem.NeedToPay;
+ finaChargeStuBalanceAdd.ChangeDate = DateTime.Now;
+ finaChargeStuBalanceAdd.ChangeType = 6;
+ //余额分配还有剩余
+ if (hasBalanceItem.FSBlance - QJItem.NeedToPay >= 0)
+ {
+ QJItem.SJAmount = QJItem.Standard;
+ QJItem.FSBlance = 0;
+ QJItem.PayFeeStatus = 1;
+ hasBalanceItem.FSBlance = hasBalanceItem.FSBlance - QJItem.NeedToPay;
+ hasBalanceItem.SJAmount = hasBalanceItem.SJAmount - QJItem.NeedToPay;
+ finaChargeStuBalanceMinus.ChangeAmount = -QJItem.NeedToPay;
+ finaChargeStuBalanceMinus.NowBalance = hasBalanceItem.FSBlance;
+ db.Insert(finaChargeStuBalanceMinus);
+ //欠费变更记录
+ finaChargeStuBalanceAdd.PaymentAmount = QJItem.NeedToPay;
+ finaChargeStuBalanceAdd.QJAmount = 0;
+ finaChargeStuBalanceAdd.OldBalance = 0;
+ finaChargeStuBalanceAdd.ChangeAmount = 0;
+ finaChargeStuBalanceAdd.NowBalance = 0;
+ QJItem.NeedToPay = 0;
+ db.Insert(finaChargeStuBalanceAdd);
+ db.Update(hasBalanceItem);
+ db.Update(QJItem);
+ db.Commit();
+ continue;
+ }
+ else
+ {
+ QJItem.SJAmount = QJItem.SJAmount + hasBalanceItem.FSBlance;
+ QJItem.PayFeeStatus = 4;
+ finaChargeStuBalanceMinus.ChangeAmount = -hasBalanceItem.FSBlance;
+ finaChargeStuBalanceMinus.NowBalance = 0;
+ db.Insert(finaChargeStuBalanceMinus);
+ //欠费变更
+ finaChargeStuBalanceAdd.PaymentAmount = hasBalanceItem.FSBlance;
+ finaChargeStuBalanceAdd.QJAmount = QJItem.NeedToPay - hasBalanceItem.FSBlance;
+ finaChargeStuBalanceAdd.OldBalance = 0;
+ finaChargeStuBalanceAdd.ChangeAmount = 0;
+ finaChargeStuBalanceAdd.NowBalance = 0;
+ QJItem.NeedToPay = QJItem.NeedToPay - hasBalanceItem.FSBlance;
+ hasBalanceItem.SJAmount = hasBalanceItem.SJAmount - hasBalanceItem.FSBlance;
+ hasBalanceItem.FSBlance = 0;
+ db.Insert(finaChargeStuBalanceAdd);
+ db.Update(hasBalanceItem);
+ db.Update(QJItem);
+ db.Commit();
+ break;
+ }
+ }
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+
+
+ }
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailBLL.cs
new file mode 100644
index 000000000..58a839c85
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailBLL.cs
@@ -0,0 +1,125 @@
+using Learun.Util;
+using System;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:14
+ /// 描 述:FinaChargeStuOrderDetail
+ ///
+ public class FinaChargeStuOrderDetailBLL : FinaChargeStuOrderDetailIBLL
+ {
+ private FinaChargeStuOrderDetailService finaChargeStuOrderDetailService = new FinaChargeStuOrderDetailService();
+
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 分页参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ return finaChargeStuOrderDetailService.GetPageList(pagination, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuOrderDetail表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuOrderDetailEntity GetFinaChargeStuOrderDetailEntity(string keyValue)
+ {
+ try
+ {
+ return finaChargeStuOrderDetailService.GetFinaChargeStuOrderDetailEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ finaChargeStuOrderDetailService.DeleteEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ ///
+ public void SaveEntity(string keyValue, FinaChargeStuOrderDetailEntity entity)
+ {
+ try
+ {
+ finaChargeStuOrderDetailService.SaveEntity(keyValue, entity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailEntity.cs
new file mode 100644
index 000000000..2ca8dd2b6
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailEntity.cs
@@ -0,0 +1,81 @@
+using Learun.Util;
+using System;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:14
+ /// 描 述:FinaChargeStuOrderDetail
+ ///
+ public class FinaChargeStuOrderDetailEntity
+ {
+ #region 实体成员
+ ///
+ /// Id
+ ///
+ [Column("ID")]
+ public string Id { get; set; }
+ ///
+ /// FCSOId
+ ///
+ [Column("FCSOID")]
+ public string FCSOId { get; set; }
+ ///
+ /// ChargeItemCode
+ ///
+ [Column("CHARGEITEMCODE")]
+ public string ChargeItemCode { get; set; }
+ ///
+ /// ChargeItemName
+ ///
+ [Column("CHARGEITEMNAME")]
+ public string ChargeItemName { get; set; }
+ ///
+ /// 应缴
+ ///
+ [Column("YJAMOUNT")]
+ public decimal? YJAmount { get; set; }
+ ///
+ /// 实缴
+ ///
+ [Column("SJAMOUNT")]
+ public decimal? SJAmount { get; set; }
+ ///
+ /// 待缴
+ ///
+ [Column("DJAMOUNT")]
+ public decimal? DJAmount { get; set; }
+ ///
+ /// 超出余额
+ ///
+ [Column("NOWBLANCE")]
+ public decimal? NowBlance { get; set; }
+ #endregion
+
+ #region 扩展操作
+ ///
+ /// 新增调用
+ ///
+ public void Create()
+ {
+ this.Id = Guid.NewGuid().ToString();
+ NowBlance = 0;
+ }
+ ///
+ /// 编辑调用
+ ///
+ ///
+ public void Modify(string keyValue)
+ {
+ this.Id = keyValue;
+ }
+ #endregion
+ #region 扩展字段
+ #endregion
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailIBLL.cs
new file mode 100644
index 000000000..b154f6ca8
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailIBLL.cs
@@ -0,0 +1,48 @@
+using Learun.Util;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:14
+ /// 描 述:FinaChargeStuOrderDetail
+ ///
+ public interface FinaChargeStuOrderDetailIBLL
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ ///
+ IEnumerable GetPageList(Pagination pagination, string queryJson);
+ ///
+ /// 获取FinaChargeStuOrderDetail表实体数据
+ ///
+ /// 主键
+ ///
+ FinaChargeStuOrderDetailEntity GetFinaChargeStuOrderDetailEntity(string keyValue);
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ void DeleteEntity(string keyValue);
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ void SaveEntity(string keyValue, FinaChargeStuOrderDetailEntity entity);
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailService.cs
new file mode 100644
index 000000000..1c2684132
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuOrderDetail/FinaChargeStuOrderDetailService.cs
@@ -0,0 +1,155 @@
+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.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-12 22:14
+ /// 描 述:FinaChargeStuOrderDetail
+ ///
+ public class FinaChargeStuOrderDetailService : RepositoryFactory
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ var strSql = new StringBuilder();
+ strSql.Append("SELECT ");
+ strSql.Append(@"
+ t.Id,
+ t.ChargeItemCode,
+ t.ChargeItemName,
+ t.YJAmount,
+ t.SJAmount,
+ t.DJAmount,
+ t.NowBlance
+ ");
+ strSql.Append(" FROM FinaChargeStuOrderDetail t ");
+ strSql.Append(" WHERE 1=1 ");
+ var queryParam = queryJson.ToJObject();
+ // 虚拟参数
+ var dp = new DynamicParameters(new { });
+ if (!queryParam["FCSOId"].IsEmpty())
+ {
+ dp.Add("FCSOId", queryParam["FCSOId"].ToString(), DbType.String);
+ strSql.Append(" AND t.FCSOId = @FCSOId ");
+ }
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(),dp, pagination);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuOrderDetail表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuOrderDetailEntity GetFinaChargeStuOrderDetailEntity(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ this.BaseRepository("CollegeMIS").Delete(t=>t.Id == keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ public void SaveEntity(string keyValue, FinaChargeStuOrderDetailEntity 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
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearBLL.cs
new file mode 100644
index 000000000..084736550
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearBLL.cs
@@ -0,0 +1,218 @@
+using Learun.Util;
+using System;
+using System.Data;
+using System.Collections.Generic;
+using Learun.Application.TwoDevelopment.EducationalAdministration;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 15:52
+ /// 描 述:学生年度缴费管理
+ ///
+ public class FinaChargeStuYearBLL : FinaChargeStuYearIBLL
+ {
+ private FinaChargeStuYearService finaChargeStuYearService = new FinaChargeStuYearService();
+
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 分页参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ return finaChargeStuYearService.GetPageList(pagination, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuYear表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuYearEntity GetFinaChargeStuYearEntity(string keyValue)
+ {
+ try
+ {
+ return finaChargeStuYearService.GetFinaChargeStuYearEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ finaChargeStuYearService.DeleteEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ ///
+ public void SaveEntity(string keyValue, FinaChargeStuYearEntity entity)
+ {
+ try
+ {
+ finaChargeStuYearService.SaveEntity(keyValue, entity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public void SaveGenerateByCondition(FinaChargeStuYearEntity entity)
+ {
+ try
+ {
+ finaChargeStuYearService.SaveGenerateByCondition(entity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public List GetTree()
+ {
+ try
+ {
+ var list = finaChargeStuYearService.GetYearList();
+ List treeList = new List();
+ foreach (var item in list)
+ {
+ TreeModel node = new TreeModel
+ {
+ id =item.FSYear.ToString(),
+ text = item.FSYear.ToString(),
+ value = item.FSYear.ToString(),
+ showcheck = false,
+ checkstate = 0,
+ isexpand = true,
+ parentId = ""
+ };
+ treeList.Add(node);
+ }
+ return treeList.ToTree();
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public IEnumerable GetFinaChargeStuItemList(string keyValue)
+ {
+ try
+ {
+ return finaChargeStuYearService.GetFinaChargeStuItemList(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public IEnumerable GetStuInvoice(string keyValue)
+ {
+ try
+ {
+ return finaChargeStuYearService.GetStuInvoice(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearEntity.cs
new file mode 100644
index 000000000..8fa3b6449
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearEntity.cs
@@ -0,0 +1,98 @@
+using Learun.Util;
+using System;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 15:52
+ /// 描 述:学生年度缴费管理
+ ///
+ public class FinaChargeStuYearEntity
+ {
+ #region 实体成员
+ ///
+ /// FSYId
+ ///
+ [Column("FSYID")]
+ public string FSYId { get; set; }
+ ///
+ /// StuNo
+ ///
+ [Column("STUNO")]
+ public string StuNo { get; set; }
+ ///
+ /// FSYear
+ ///
+ [Column("FSYEAR")]
+ public int? FSYear { get; set; }
+ ///
+ /// 应缴金额(收费标准)
+ ///
+ [Column("YJAMOUNT")]
+ public decimal? YJAmount { get; set; }
+ ///
+ /// 实缴金额(已缴金额)
+ ///
+ [Column("SJAMOUNT")]
+ public decimal? SJAmount { get; set; }
+ ///
+ /// 应缴余额
+ ///
+ [Column("NEEDTOPAY")]
+ public decimal? NeedToPay { get; set; }
+ ///
+ /// 超出应收额
+ ///
+ [Column("FSBLANCE")]
+ public decimal? FSBlance { get; set; }
+ ///
+ /// 缴费标志(0未缴费,1已缴清,4部分缴纳)
+ ///
+ [Column("PAYFEESTATUS")]
+ public int? PayFeeStatus { get; set; }
+ #endregion
+
+ #region 扩展操作
+ ///
+ /// 新增调用
+ ///
+ public void Create()
+ {
+ this.FSYId = Guid.NewGuid().ToString();
+ }
+ ///
+ /// 编辑调用
+ ///
+ ///
+ public void Modify(string keyValue)
+ {
+ this.FSYId = keyValue;
+ }
+ #endregion
+ #region 扩展字段
+ [NotMapped]
+ public string DeptNo { get; set; }
+ [NotMapped]
+ public string MajorNo { get; set; }
+ [NotMapped]
+ public string ClassNo { get; set; }
+ [NotMapped]
+ public string Grade { get; set; }
+ [NotMapped]
+ public string IdentityCardNo { get; set; }
+ [NotMapped]
+ public string StuName { get; set; }
+ [NotMapped]
+ public bool? GenderNo { get; set; }
+ [NotMapped]
+ public decimal? PayMoney { get; set; }
+ [NotMapped]
+ public string orderid { get; set; }
+ #endregion
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearIBLL.cs
new file mode 100644
index 000000000..d672ee0c8
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearIBLL.cs
@@ -0,0 +1,59 @@
+using Learun.Util;
+using System.Data;
+using System.Collections.Generic;
+using Learun.Application.TwoDevelopment.EducationalAdministration;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 15:52
+ /// 描 述:学生年度缴费管理
+ ///
+ public interface FinaChargeStuYearIBLL
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ ///
+ IEnumerable GetPageList(Pagination pagination, string queryJson);
+ ///
+ /// 获取FinaChargeStuYear表实体数据
+ ///
+ /// 主键
+ ///
+ FinaChargeStuYearEntity GetFinaChargeStuYearEntity(string keyValue);
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ void DeleteEntity(string keyValue);
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ void SaveEntity(string keyValue, FinaChargeStuYearEntity entity);
+ #endregion
+
+ void SaveGenerateByCondition(FinaChargeStuYearEntity entity);
+ List GetTree();
+ ///
+ /// 获取学生缴费明细
+ ///
+ ///
+ ///
+ IEnumerable GetFinaChargeStuItemList(string keyValue);
+
+ IEnumerable GetStuInvoice(string keyValue);
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearService.cs
new file mode 100644
index 000000000..8a2c5e3a1
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYear/FinaChargeStuYearService.cs
@@ -0,0 +1,460 @@
+using Dapper;
+using Learun.DataBase.Repository;
+using Learun.Util;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Threading;
+using Learun.Application.TwoDevelopment.EducationalAdministration;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 15:52
+ /// 描 述:学生年度缴费管理
+ ///
+ public class FinaChargeStuYearService : RepositoryFactory
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ var strSql = new StringBuilder();
+ strSql.Append("SELECT t.*,b.DeptNo,b.MajorNo,b.ClassNo,b.Grade,b.IdentityCardNo,b.StuName,b.GenderNo ");
+ strSql.Append(" FROM FinaChargeStuYear t left join FinaChargeStudent b on t.StuNo=b.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 b.StuNo = @StuNo ");
+ }
+ if (!queryParam["StuName"].IsEmpty())
+ {
+ dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String);
+ strSql.Append(" AND b.StuName Like @StuName ");
+ }
+ if (!queryParam["DeptNo"].IsEmpty())
+ {
+ dp.Add("DeptNo", "" + queryParam["DeptNo"].ToString() + "", DbType.String);
+ strSql.Append(" AND b.DeptNo = @DeptNo ");
+ }
+ if (!queryParam["MajorNo"].IsEmpty())
+ {
+ dp.Add("MajorNo", "" + queryParam["MajorNo"].ToString() + "", DbType.String);
+ strSql.Append(" AND b.MajorNo = @MajorNo ");
+ }
+ if (!queryParam["ClassNo"].IsEmpty())
+ {
+ dp.Add("ClassNo", "" + queryParam["ClassNo"].ToString() + "", DbType.String);
+ strSql.Append(" AND b.ClassNo = @ClassNo ");
+ }
+ if (!queryParam["IdentityCardNo"].IsEmpty())
+ {
+ dp.Add("IdentityCardNo", "" + queryParam["IdentityCardNo"].ToString() + "", DbType.String);
+ strSql.Append(" AND b.IdentityCardNo = @IdentityCardNo ");
+ }
+ if (!queryParam["FSYear"].IsEmpty())
+ {
+ dp.Add("FSYear", "" + queryParam["FSYear"].ToString() + "", DbType.String);
+ strSql.Append(" AND t.FSYear = @FSYear ");
+ }
+ if (!queryParam["PayFeeStatus"].IsEmpty())
+ {
+ dp.Add("PayFeeStatus", queryParam["PayFeeStatus"].ToString(), DbType.String);
+ strSql.Append(" AND t.PayFeeStatus = @PayFeeStatus ");
+ }
+ if (!queryParam["F_CheckMark"].IsEmpty())
+ {
+ dp.Add("F_CheckMark", queryParam["F_CheckMark"].ToString(), DbType.String);
+ strSql.Append(" AND b.F_CheckMark = @F_CheckMark ");
+ }
+ if (!queryParam["Teacher"].IsEmpty())
+ {
+ var userinfo = LoginUserInfo.Get();
+ strSql.Append(" and classno in(select classno from classinfo where ClassDiredctorNo='"+ userinfo.account+ "') ");
+ }
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(), dp, pagination);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuYear表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuYearEntity GetFinaChargeStuYearEntity(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity("select b.*,a.FSYear,a.YJAmount,a.SJAmount,a.NeedToPay,a.FSBlance,a.PayFeeStatus from FinaChargeStuYear a left join FinaChargeStudent b on a.StuNo=b.StuNo where a.FSYId='" + keyValue + "'", null);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取学生缴费明细
+ ///
+ ///
+ ///
+ public IEnumerable GetFinaChargeStuItemList(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindList("select a.StuNo,b.* from FinaChargeStuYear a left join FinaChargeStuYearItem b on a.FSYId=b.FSYId where b.F_DeleteMark=0 and a.FSYId='" + keyValue + "' order by ChargeItemCode");
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ this.BaseRepository("CollegeMIS").Delete(t => t.FSYId == keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ public void SaveEntity(string keyValue, FinaChargeStuYearEntity 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
+
+ public class InnerDataEntity
+ {
+ public FinaChargeStuYearEntity entity { get; set; }
+ public IEnumerable oldFinaChargeStuYearList { get; set; }
+ public IEnumerable oldFinaChargeStuYearItemList { get; set; }
+ public IEnumerable finaChargesStandardList { get; set; }
+ public IEnumerable finaChargesStandardListGroup { get; set; }
+ public FinaChargeStudentEntity stuitem { get; set; }
+ public UserInfo userInfo { get; set; }
+ }
+
+ private Thread thread = null;
+ public void SaveGenerateByCondition(FinaChargeStuYearEntity entity)
+ {
+ try
+ {
+ UserInfo userInfo = LoginUserInfo.Get();
+ InnerDataEntity innerDataEntity = new InnerDataEntity();
+ innerDataEntity.entity = entity;
+ innerDataEntity.userInfo = userInfo;
+ thread = new Thread(ThreadMethod);
+ thread.Start(innerDataEntity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public void ThreadMethod(object obj)
+ {
+ var innerDataobj = obj as InnerDataEntity;
+ var entity = innerDataobj.entity;
+ var userInfo = innerDataobj.userInfo;
+ //获取缴费学生
+ var stulist = BaseRepository("CollegeMIS").FindList(m => m.F_CheckMark == true);
+ //获取已有年度学生缴费记录
+ var oldFinaChargeStuYearList = BaseRepository("CollegeMIS").FindList(m => m.FSYear == entity.FSYear);
+ //获取已有年度学生缴费明细记录
+ var oldFinaChargeStuYearItemList = BaseRepository("CollegeMIS").FindList(m => m.FSYear == entity.FSYear);
+ //获取收费标准
+ var finaChargesStandardList = BaseRepository("CollegeMIS").FindList("select a.Grade,a.DeptNo,a.MajorNo,a.Standard,a.SYear,b.ChargeItemName,b.ChargeItemCode,b.ChargeItemType,b.priority from [dbo].[FinaChargesStandard] a left join [dbo].[FinaChargeItem] b on a.ChargeItemID=b.[ChargeItemID] where b.ChargeItemType=1 and a.SYear='" + entity.FSYear + "' and a.F_DeleteMark=0 and a.CheckMark=1 and b.CheckMark=1 and b.F_DeleteMark=0");
+ var finaChargesStandardListGroup = BaseRepository("CollegeMIS").FindList(@"select a.Grade,a.DeptNo,a.MajorNo,sum(isnull(a.Standard,0)) as YJAmount,a.SYear
+ from[dbo].[FinaChargesStandard] a left join[dbo].[FinaChargeItem] b on a.ChargeItemID = b.[ChargeItemID] where b.ChargeItemType=1 and a.SYear='" + entity.FSYear + "' and a.F_DeleteMark=0 and a.CheckMark=1 and b.CheckMark=1 and b.F_DeleteMark=0 group by a.Grade, a.DeptNo, a.MajorNo, a.SYear");
+
+ //线程池优化生成速度
+ ThreadPool.SetMaxThreads(10, 10);
+ foreach (var stuitem in stulist)
+ {
+ var innerDataEntity = new InnerDataEntity();
+ innerDataEntity.oldFinaChargeStuYearList = oldFinaChargeStuYearList;
+ innerDataEntity.oldFinaChargeStuYearItemList = oldFinaChargeStuYearItemList;
+ innerDataEntity.finaChargesStandardList = finaChargesStandardList;
+ innerDataEntity.finaChargesStandardListGroup = finaChargesStandardListGroup;
+ innerDataEntity.entity = entity;
+ innerDataEntity.userInfo = userInfo;
+ innerDataEntity.stuitem = stuitem;
+ ThreadPool.QueueUserWorkItem(GeneralInner, innerDataEntity);
+ }
+ int t1 = 0;
+ int t2 = 0;
+ while (t1 < 10)
+ {
+ ThreadPool.GetAvailableThreads(out t1, out t2);
+ }
+ //更新学生缴费总表
+ BaseRepository("CollegeMIS").ExecuteBySql(@"update FinaChargeStudent set NeedToPay=a.NeedToPay
+ from (select isnull(sum(NeedToPay),0) as NeedToPay,StuNo from [FinaChargeStuYear] group by StuNo) a left join
+ FinaChargeStudent b on a.stuno=b.stuno");
+ try
+ {
+ thread.Abort();
+ }
+ catch (Exception e)
+ {
+ }
+ }
+
+ public void GeneralInner(object innerobject)
+ {
+ var innerDataEntity = innerobject as InnerDataEntity;
+ var stuitem = innerDataEntity.stuitem;
+ var finaChargesStandardList = innerDataEntity.finaChargesStandardList;
+ var oldFinaChargeStuYearList = innerDataEntity.oldFinaChargeStuYearList;
+ var oldFinaChargeStuYearItemList = innerDataEntity.oldFinaChargeStuYearItemList;
+ var entity = innerDataEntity.entity;
+ var userInfo = innerDataEntity.userInfo;
+ var finaChargesStandardListGroup = innerDataEntity.finaChargesStandardListGroup;
+ try
+ {
+ var studentchargestanderdlist = finaChargesStandardList.Where(m => m.MajorNo == stuitem.MajorNo && m.Grade == stuitem.Grade);
+ //判断有无年度学生缴费数据
+ if (oldFinaChargeStuYearList.Count(m => m.StuNo == stuitem.StuNo) > 0)
+ {
+ var oldFinaChargeStuYearEntity = oldFinaChargeStuYearList.FirstOrDefault(m => m.StuNo == stuitem.StuNo);
+ //查询明细并比对
+ var oldFinaChargeStuYearItemListForStu = oldFinaChargeStuYearItemList.Where(m => m.FSYId == oldFinaChargeStuYearEntity.FSYId).Select(m => m.ChargeItemCode);
+ string oldcodeitem = string.Join(",", oldFinaChargeStuYearItemListForStu);
+ var needinsertchargeitem = studentchargestanderdlist.Where(m => !oldcodeitem.Contains(m.ChargeItemCode));
+ var db = BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ foreach (var finaChargesStandardEntity in needinsertchargeitem)
+ {
+ var finaChargeStuYearItem = new FinaChargeStuYearItemEntity();
+ finaChargeStuYearItem.Create();
+ finaChargeStuYearItem.F_CreateUserId = userInfo.userId;
+ finaChargeStuYearItem.F_CreateUserName = userInfo.realName;
+ finaChargeStuYearItem.FSYId = oldFinaChargeStuYearEntity.FSYId;
+ finaChargeStuYearItem.FSYear = entity.FSYear;
+ finaChargeStuYearItem.ChargeItemCode = finaChargesStandardEntity.ChargeItemCode;
+ finaChargeStuYearItem.ChargeItemName = finaChargesStandardEntity.ChargeItemName;
+ finaChargeStuYearItem.ChargeItemType = finaChargesStandardEntity.ChargeItemType;
+ finaChargeStuYearItem.priority = finaChargesStandardEntity.priority;
+ finaChargeStuYearItem.Standard = finaChargesStandardEntity.Standard;
+ finaChargeStuYearItem.NeedToPay = finaChargesStandardEntity.Standard;
+ //主表应缴金额更新
+ oldFinaChargeStuYearEntity.YJAmount += finaChargeStuYearItem.Standard;
+ oldFinaChargeStuYearEntity.NeedToPay += finaChargeStuYearItem.Standard;
+ db.Insert(finaChargeStuYearItem);
+ }
+ if (oldFinaChargeStuYearItemList.Where(m => m.FSYId == oldFinaChargeStuYearEntity.FSYId).Sum(m => m.SJAmount) > 0)
+ oldFinaChargeStuYearEntity.PayFeeStatus = 4;
+ else
+ {
+ oldFinaChargeStuYearEntity.PayFeeStatus = 0;
+ }
+ //年度学生缴费数据主表更新
+ db.Update(oldFinaChargeStuYearEntity);
+ db.Commit();
+ }
+ catch (Exception e)
+ {
+ db.Rollback();
+ }
+ }
+ else
+ {
+ if (studentchargestanderdlist.Count() > 0)
+ {
+ var db = BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ //写入学生年度缴费数据
+ var finaChargeStuYear = new FinaChargeStuYearEntity();
+ finaChargeStuYear.Create();
+ finaChargeStuYear.StuNo = stuitem.StuNo;
+ finaChargeStuYear.FSYear = entity.FSYear;
+ finaChargeStuYear.SJAmount = 0;
+ finaChargeStuYear.PayFeeStatus = 0;
+ //写入年度缴费明细数据
+ foreach (var finaChargesStandardEntity in studentchargestanderdlist)
+ {
+ var finaChargeStuYearItem = new FinaChargeStuYearItemEntity();
+ finaChargeStuYearItem.Create();
+ finaChargeStuYearItem.F_CreateUserId = userInfo.userId;
+ finaChargeStuYearItem.F_CreateUserName = userInfo.realName;
+ finaChargeStuYearItem.FSYId = finaChargeStuYear.FSYId;
+ finaChargeStuYearItem.FSYear = entity.FSYear;
+ finaChargeStuYearItem.ChargeItemCode = finaChargesStandardEntity.ChargeItemCode;
+ finaChargeStuYearItem.ChargeItemName = finaChargesStandardEntity.ChargeItemName;
+ finaChargeStuYearItem.ChargeItemType = finaChargesStandardEntity.ChargeItemType;
+ finaChargeStuYearItem.priority = finaChargesStandardEntity.priority;
+ finaChargeStuYearItem.Standard = finaChargesStandardEntity.Standard;
+ finaChargeStuYearItem.NeedToPay = finaChargesStandardEntity.Standard;
+ finaChargeStuYearItem.FSBlance = 0;
+ db.Insert(finaChargeStuYearItem);
+ }
+ finaChargeStuYear.YJAmount = finaChargesStandardListGroup.FirstOrDefault(m => m.MajorNo == stuitem.MajorNo && m.Grade == stuitem.Grade)?.YJAmount;
+ finaChargeStuYear.NeedToPay = finaChargeStuYear.YJAmount;
+ finaChargeStuYear.FSBlance = 0;
+ db.Insert(finaChargeStuYear);
+ db.Commit();
+ }
+ catch (Exception e)
+ {
+ db.Rollback();
+ }
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public IEnumerable GetYearList()
+ {
+ try
+ {
+ var strSql = new StringBuilder();
+ strSql.Append("select [FSYear] from [dbo].[FinaChargeStuYear] group by [FSYear] order by[FSYear] ");
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString());
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public IEnumerable GetStuInvoice(string keyValue)
+ {
+ try
+ {
+ var stufreshinfo = GetFinaChargeStuYearEntity(keyValue);
+ return BaseRepository("CollegeMIS").FindList(a => a.StuNo == stufreshinfo.StuNo && !string.IsNullOrEmpty(a.billUrl) && a.YearNo == stufreshinfo.FSYear);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemBLL.cs
new file mode 100644
index 000000000..b40f5fb63
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemBLL.cs
@@ -0,0 +1,182 @@
+using Learun.Util;
+using System;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 16:40
+ /// 描 述:FinaChargeStuYearItem
+ ///
+ public class FinaChargeStuYearItemBLL : FinaChargeStuYearItemIBLL
+ {
+ private FinaChargeStuYearItemService FinaChargeStuYearItemService = new FinaChargeStuYearItemService();
+
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 分页参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ return FinaChargeStuYearItemService.GetPageList(pagination, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuYearItem表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuYearItemEntity GetFinaChargeStuYearItemEntity(string keyValue)
+ {
+ try
+ {
+ return FinaChargeStuYearItemService.GetFinaChargeStuYearItemEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ FinaChargeStuYearItemService.DeleteEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ ///
+ public void SaveEntity(string keyValue, FinaChargeStuYearItemEntity entity)
+ {
+ try
+ {
+ FinaChargeStuYearItemService.SaveEntity(keyValue, entity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public void UnDeleteEntity(string keyValue)
+ {
+ try
+ {
+ FinaChargeStuYearItemService.UnDeleteEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public string ExecuteImportExcel(DataTable dt, string fileGuid, string queryJson)
+ {
+ try
+ {
+ return FinaChargeStuYearItemService.ExecuteImportExcel(dt, fileGuid, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public IEnumerable GetFinaChargeRefundList(string keyValue)
+ {
+ try
+ {
+ return FinaChargeStuYearItemService.GetFinaChargeRefundList(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemEntity.cs
new file mode 100644
index 000000000..cc390ce98
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemEntity.cs
@@ -0,0 +1,141 @@
+using Learun.Util;
+using System;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 16:40
+ /// 描 述:FinaChargeStuYearItem
+ ///
+ public class FinaChargeStuYearItemEntity
+ {
+ #region 实体成员
+ ///
+ /// FSYIId
+ ///
+ [Column("FSYIID")]
+ public string FSYIId { get; set; }
+ ///
+ /// FSYId
+ ///
+ [Column("FSYID")]
+ public string FSYId { get; set; }
+
+ [Column("FSYEAR")]
+ public int? FSYear { get; set; }
+ ///
+ /// ChargeItemCode
+ ///
+ [Column("CHARGEITEMCODE")]
+ public string ChargeItemCode { get; set; }
+ ///
+ /// 收费项名称
+ ///
+ [Column("CHARGEITEMNAME")]
+ public string ChargeItemName { get; set; }
+ ///
+ /// ChargeItemType
+ ///
+ [Column("CHARGEITEMTYPE")]
+ public int? ChargeItemType { get; set; }
+ ///
+ /// 优先级
+ ///
+ [Column("PRIORITY")]
+ public int? priority { get; set; }
+ ///
+ /// 收费标准
+ ///
+ [Column("STANDARD")]
+ public decimal? Standard { get; set; }
+ ///
+ /// SJAmount
+ ///
+ [Column("SJAMOUNT")]
+ public decimal? SJAmount { get; set; }
+ ///
+ /// 应缴余额
+ ///
+ [Column("NEEDTOPAY")]
+ public decimal? NeedToPay { get; set; }
+ ///
+ /// 超出应收额
+ ///
+ [Column("FSBLANCE")]
+ public decimal? FSBlance { get; set; }
+ ///
+ /// 缴费标志(0未缴费,1已缴清,4部分缴纳)
+ ///
+ [Column("PAYFEESTATUS")]
+ public int? PayFeeStatus { get; set; }
+ ///
+ /// F_DeleteMark
+ ///
+ [Column("F_DELETEMARK")]
+ public bool? F_DeleteMark { get; set; }
+ ///
+ /// 创建时间
+ ///
+ [Column("F_CREATEDATE")]
+ public DateTime? F_CreateDate { get; set; }
+ ///
+ /// 创建人主键
+ ///
+ [Column("F_CREATEUSERID")]
+ public string F_CreateUserId { get; set; }
+ ///
+ /// 创建人名字
+ ///
+ [Column("F_CREATEUSERNAME")]
+ public string F_CreateUserName { get; set; }
+ ///
+ /// 退费标志
+ ///
+ [Column("REFUNDSTATUS")]
+ public bool? RefundStatus { get; set; }
+ #endregion
+
+ #region 扩展操作
+ ///
+ /// 新增调用
+ ///
+ public void Create()
+ {
+ this.FSYIId = Guid.NewGuid().ToString();
+ this.F_CreateDate = DateTime.Now;
+
+ F_DeleteMark = false;
+ SJAmount = 0;
+ PayFeeStatus = 0;
+ FSBlance = 0;
+ NeedToPay = 0;
+ RefundStatus = false;
+ }
+ ///
+ /// 编辑调用
+ ///
+ ///
+ public void Modify(string keyValue)
+ {
+ this.FSYIId = keyValue;
+ }
+ #endregion
+ #region 扩展字段
+ [NotMapped]
+ public string StuNo { get; set; }
+ [NotMapped]
+ public string StuName { get; set; }
+ [NotMapped]
+ public string MajorNo { get; set; }
+ [NotMapped]
+ public string ClassNo { get; set; }
+ [NotMapped]
+ public string DeptNo { get; set; }
+ #endregion
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemIBLL.cs
new file mode 100644
index 000000000..3e7d8a343
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemIBLL.cs
@@ -0,0 +1,51 @@
+using Learun.Util;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 16:40
+ /// 描 述:FinaChargeStuYearItem
+ ///
+ public interface FinaChargeStuYearItemIBLL
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ ///
+ IEnumerable GetPageList(Pagination pagination, string queryJson);
+ ///
+ /// 获取FinaChargeStuYearItem表实体数据
+ ///
+ /// 主键
+ ///
+ FinaChargeStuYearItemEntity GetFinaChargeStuYearItemEntity(string keyValue);
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ void DeleteEntity(string keyValue);
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ void SaveEntity(string keyValue, FinaChargeStuYearItemEntity entity);
+ #endregion
+
+ void UnDeleteEntity(string keyValue);
+ string ExecuteImportExcel(DataTable dt, string fileGuid, string queryJson);
+ IEnumerable GetFinaChargeRefundList(string keyValue);
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemService.cs
new file mode 100644
index 000000000..48789497c
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStuYearItem/FinaChargeStuYearItemService.cs
@@ -0,0 +1,446 @@
+using Dapper;
+using Learun.DataBase.Repository;
+using Learun.Util;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Text;
+using Learun.Cache.Base;
+using Learun.Cache.Factory;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-07 16:40
+ /// 描 述:FinaChargeStuYearItem
+ ///
+ public class FinaChargeStuYearItemService : RepositoryFactory
+ {
+ private ICache cache = CacheFactory.CaChe();
+ private string cacheKey = "Learun_adms_excelError_";
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ var strSql = new StringBuilder();
+ strSql.Append("SELECT t.*,b.StuNo,b.StuName,b.MajorNo,b.ClassNo,b.DeptNo,b.IdentityCardNo ");
+ strSql.Append(" FROM FinaChargeStuYearItem t left join FinaChargeStuYear a on t.FSYId=a.FSYId left join FinaChargeStudent b on a.StuNo=b.StuNo ");
+ strSql.Append(" WHERE 1=1 and b.F_CheckMark=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 b.StuNo = @StuNo ");
+ }
+ if (!queryParam["StuName"].IsEmpty())
+ {
+ dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String);
+ strSql.Append(" AND b.StuName Like @StuName ");
+ }
+ if (!queryParam["MajorNo"].IsEmpty())
+ {
+ dp.Add("MajorNo", "" + queryParam["MajorNo"].ToString() + "", DbType.String);
+ strSql.Append(" AND b.MajorNo = @MajorNo ");
+ }
+ if (!queryParam["FSYear"].IsEmpty())
+ {
+ dp.Add("FSYear", "" + queryParam["FSYear"].ToString() + "", DbType.String);
+ strSql.Append(" AND a.FSYear = @FSYear ");
+ }
+ if (!queryParam["ChargeItemCode"].IsEmpty())
+ {
+ dp.Add("ChargeItemCode", "%" + queryParam["ChargeItemCode"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.ChargeItemCode Like @ChargeItemCode ");
+ }
+ if (!queryParam["ChargeItemName"].IsEmpty())
+ {
+ dp.Add("ChargeItemName", "%" + queryParam["ChargeItemName"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.ChargeItemName Like @ChargeItemName ");
+ }
+ if (!queryParam["ChargeItemType"].IsEmpty())
+ {
+ dp.Add("ChargeItemType", "" + queryParam["ChargeItemType"].ToString() + "", DbType.String);
+ strSql.Append(" AND t.ChargeItemType = @ChargeItemType ");
+ }
+ if (!queryParam["FSYId"].IsEmpty())
+ {
+ dp.Add("FSYId", "" + queryParam["FSYId"].ToString() + "", DbType.String);
+ strSql.Append(" AND t.FSYId = @FSYId ");
+ }
+ if (!queryParam["RefundStatus"].IsEmpty())
+ {
+ dp.Add("RefundStatus", "" + queryParam["RefundStatus"].ToString() + "", DbType.String);
+ strSql.Append(" AND t.RefundStatus = @RefundStatus ");
+ }
+ if (!queryParam["Refund"].IsEmpty())
+ {
+ strSql.Append(" AND (t.FSBlance>0 or RefundStatus=1) ");
+ }
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(), dp, pagination);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStuYearItem表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStuYearItemEntity GetFinaChargeStuYearItemEntity(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 作废
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ var db = this.BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ //单个启用
+ //this.BaseRepository("CollegeMIS").ExecuteBySql("update ClassInfo set CheckMark=1 where ClassId='" + keyValue + "'");
+
+ //多个启用
+ var keyValueArr = keyValue.Split(',');
+ foreach (var item in keyValueArr)
+ {
+ db.ExecuteBySql("update FinaChargeStuYearItem set F_DeleteMark=1 where FSYIId='" + item + "'");
+ }
+ db.Commit();
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+ ///
+ /// 恢复
+ ///
+ ///
+ public void UnDeleteEntity(string keyValue)
+ {
+ var db = this.BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ //单个启用
+ //this.BaseRepository("CollegeMIS").ExecuteBySql("update ClassInfo set CheckMark=1 where ClassId='" + keyValue + "'");
+
+ //多个启用
+ var keyValueArr = keyValue.Split(',');
+ foreach (var item in keyValueArr)
+ {
+ db.ExecuteBySql("update FinaChargeStuYearItem set F_DeleteMark=0 where FSYIId='" + item + "'");
+ }
+ db.Commit();
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ public void SaveEntity(string keyValue, FinaChargeStuYearItemEntity 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
+
+ public string ExecuteImportExcel(DataTable dt, string fileGuid, string queryJson)
+ {
+ var db = this.BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ int snum = 0;
+ int fnum = 0;
+ if (dt.Rows.Count > 0)
+ {
+ //获取缴费学生
+ var stulist = db.FindList(m => m.F_CheckMark == true);
+ DataTable failDt = new DataTable();
+ dt.Columns.Add("导入错误", typeof(string));
+ foreach (DataColumn dc in dt.Columns)
+ {
+ failDt.Columns.Add(dc.ColumnName, dc.DataType);
+ }
+ //获取收费标准 非固定项目
+ var finaChargesStandardList = db.FindList("select a.Grade,a.DeptNo,a.MajorNo,a.Standard,a.SYear,b.ChargeItemName,b.ChargeItemCode,b.ChargeItemType,b.priority from [dbo].[FinaChargesStandard] a left join [dbo].[FinaChargeItem] b on a.ChargeItemID=b.[ChargeItemID] where b.ChargeItemType=2 and a.F_DeleteMark=0 and a.CheckMark=1 and b.CheckMark=1 and b.F_DeleteMark=0");
+ //var finaChargesStandardListGroup = db.FindList(@"select a.Grade,a.DeptNo,a.MajorNo,sum(isnull(a.Standard,0)) as YJAmount,a.SYear
+ // from[dbo].[FinaChargesStandard] a left join[dbo].[FinaChargeItem] b on a.ChargeItemID = b.[ChargeItemID] where b.ChargeItemType=2 and a.F_DeleteMark=0 and a.CheckMark=1 and b.CheckMark=1 and b.F_DeleteMark=0 group by a.Grade, a.DeptNo, a.MajorNo, a.SYear");
+ //获取已有年度学生缴费记录
+ var oldFinaChargeStuYearList = db.FindList();
+ //获取已有年度学生缴费明细记录
+ var oldFinaChargeStuYearItemList = db.FindList("select a.*,b.StuNo from FinaChargeStuYearItem a left join FinaChargeStuYear b on a.FSYId=b.FSYId ");
+ // 循环遍历导入
+ foreach (DataRow dr in dt.Rows)
+ {
+ try
+ {
+ FinaChargeStudentEntity finaChargeStudentEntity = null;
+ FinaChargesStandardEntity finaChargesStandardEntity = null;
+ //检测是否有空值
+ if (dr[0].ToString() == "" || dr[1].ToString() == "" || dr[2].ToString() == "" || dr[3].ToString() == "" || dr[4].ToString() == "" || dr[5].ToString() == "")
+ {
+ throw new Exception("行内数据有空值,不能为空!");
+ }
+ //检测缴费年度是否为数字
+ decimal payyearresult = 0;
+ bool parsepayyearresult = decimal.TryParse(dr[2].ToString(), out payyearresult);
+ if (!parsepayyearresult || dr[2].ToString().Length != 4)
+ {
+ throw new Exception("【缴费年度】格式不正确,必须为四位数字年份!");
+ }
+ //首先校验金额是否为数字
+ decimal dresult = 0;
+ bool parseresult = decimal.TryParse(dr[5].ToString(), out dresult);
+ if (!parseresult)
+ {
+ throw new Exception("【金额】转换失败,必须为数字!");
+ }
+ //金额不能小于等于零
+ if (dresult <= 0)
+ {
+ throw new Exception("【金额】不能为零或小于零,必须为正数!");
+ }
+ //筛选不在标准代码表内的数据
+ if (finaChargesStandardList.Count(m => m.ChargeItemCode == dr[3].ToString()&&m.ChargeItemName== dr[4].ToString()) == 0)
+ {
+ throw new Exception("【收费项目】不存在,请核对!");
+ }
+ //筛选不在收费学生表内的数据
+ finaChargeStudentEntity = stulist.FirstOrDefault(m => m.StuNo == dr[0].ToString()&&m.StuName== dr[1].ToString());
+ if (finaChargeStudentEntity == null)
+ {
+ throw new Exception("【收费学生】不存在,请核对!");
+ }
+ else
+ {
+ //筛选有无对应专业收费标准的数据
+ finaChargesStandardEntity = finaChargesStandardList.FirstOrDefault(m =>
+ m.DeptNo == finaChargeStudentEntity.DeptNo &&
+ m.MajorNo == finaChargeStudentEntity.MajorNo && m.SYear == payyearresult &&
+ m.Grade == finaChargeStudentEntity.Grade && m.ChargeItemCode == dr[3].ToString()&&m.ChargeItemName== dr[4].ToString());
+ if (finaChargesStandardEntity == null)
+ {
+ throw new Exception("【专业年度收费标准】不存在,请核对!");
+ }
+ }
+ //开始导入操作
+ //查询有无学生年度缴费数据
+ FinaChargeStuYearEntity oldFinaChargeStuYearEntity =
+ oldFinaChargeStuYearList.FirstOrDefault(m =>
+ m.StuNo == finaChargeStudentEntity.StuNo &&
+ m.FSYear == finaChargesStandardEntity.SYear);
+ if (oldFinaChargeStuYearEntity==null)
+ {
+ //无数据新增主表
+ var finaChargeStuYear = new FinaChargeStuYearEntity();
+ finaChargeStuYear.Create();
+ finaChargeStuYear.StuNo = finaChargeStudentEntity.StuNo;
+ finaChargeStuYear.FSYear = finaChargesStandardEntity.SYear;
+ finaChargeStuYear.SJAmount = 0;
+ finaChargeStuYear.PayFeeStatus = 0;
+ //子表
+ var finaChargeStuYearItem = new FinaChargeStuYearItemEntity();
+ finaChargeStuYearItem.Create();
+ finaChargeStuYearItem.FSYId = finaChargeStuYear.FSYId;
+ finaChargeStuYearItem.FSYear = finaChargeStuYear.FSYear;
+ finaChargeStuYearItem.ChargeItemCode = finaChargesStandardEntity.ChargeItemCode;
+ finaChargeStuYearItem.ChargeItemName = finaChargesStandardEntity.ChargeItemName;
+ finaChargeStuYearItem.ChargeItemType = finaChargesStandardEntity.ChargeItemType;
+ finaChargeStuYearItem.priority = finaChargesStandardEntity.priority;
+ finaChargeStuYearItem.Standard = finaChargesStandardEntity.Standard;
+ finaChargeStuYearItem.NeedToPay = finaChargesStandardEntity.Standard;
+ finaChargeStuYearItem.FSBlance = 0;
+ var loginUserInfo = LoginUserInfo.Get();
+ finaChargeStuYearItem.F_CreateUserId = loginUserInfo.userId;
+ finaChargeStuYearItem.F_CreateUserName = loginUserInfo.realName;
+ db.Insert(finaChargeStuYearItem);
+ finaChargeStuYear.YJAmount = finaChargeStuYearItem.Standard;
+ finaChargeStuYear.NeedToPay+= finaChargeStuYearItem.Standard;
+ finaChargeStuYear.FSBlance = 0;
+ db.Insert(finaChargeStuYear);
+ snum++;
+ }
+ else
+ {
+ //查询子表有无记录
+ if (oldFinaChargeStuYearItemList.Count(m=>m.StuNo== finaChargeStudentEntity.StuNo&&m.FSYear == finaChargesStandardEntity.SYear&&m.ChargeItemCode== finaChargesStandardEntity.ChargeItemCode) ==0)
+ {
+ //子表
+ var finaChargeStuYearItem = new FinaChargeStuYearItemEntity();
+ finaChargeStuYearItem.Create();
+ finaChargeStuYearItem.FSYId = oldFinaChargeStuYearEntity.FSYId;
+ finaChargeStuYearItem.FSYear = oldFinaChargeStuYearEntity.FSYear;
+ finaChargeStuYearItem.ChargeItemCode = finaChargesStandardEntity.ChargeItemCode;
+ finaChargeStuYearItem.ChargeItemName = finaChargesStandardEntity.ChargeItemName;
+ finaChargeStuYearItem.ChargeItemType = finaChargesStandardEntity.ChargeItemType;
+ finaChargeStuYearItem.priority = finaChargesStandardEntity.priority;
+ finaChargeStuYearItem.Standard = finaChargesStandardEntity.Standard;
+ finaChargeStuYearItem.NeedToPay = finaChargeStuYearItem.Standard;
+ var loginUserInfo = LoginUserInfo.Get();
+ finaChargeStuYearItem.F_CreateUserId = loginUserInfo.userId;
+ finaChargeStuYearItem.F_CreateUserName = loginUserInfo.realName;
+ db.Insert(finaChargeStuYearItem);
+ //更新主表
+ oldFinaChargeStuYearEntity.YJAmount+= finaChargeStuYearItem.Standard;
+ oldFinaChargeStuYearEntity.NeedToPay += finaChargeStuYearItem.Standard;
+ oldFinaChargeStuYearEntity.PayFeeStatus = (oldFinaChargeStuYearEntity.PayFeeStatus==1 || oldFinaChargeStuYearEntity.PayFeeStatus == 4)? 4:0;
+ db.Update(oldFinaChargeStuYearEntity);
+ snum++;
+ }
+ else
+ {
+ throw new Exception("【学生收费明细】已存在,请核对!");
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ fnum++;
+ dr["导入错误"] = ex.Message;
+ failDt.Rows.Add(dr.ItemArray);
+ }
+ }
+ // 写入缓存如果有未导入的数据
+ if (failDt.Rows.Count > 0)
+ {
+ string errordt = failDt.ToJson();
+ cache.Write(cacheKey + fileGuid, errordt, CacheId.excel);
+ }
+ db.Commit();
+ //更新学生缴费总表
+ BaseRepository("CollegeMIS").ExecuteBySql(@"update FinaChargeStudent set NeedToPay=a.[NeedToPay]
+ from (select isnull(sum([NeedToPay]),0) as [NeedToPay],StuNo from [FinaChargeStuYear] group by StuNo) a left join
+ FinaChargeStudent b on a.stuno=b.stuno");
+ }
+ return snum + "|" + fnum;
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public IEnumerable GetFinaChargeRefundList(string keyValue)
+ {
+ try
+ {
+ List keys = keyValue.Split(',').ToList().Select(m=>"'"+m.Clone().ToString()+"'").ToList();
+ var strSql = new StringBuilder();
+ strSql.Append("SELECT t.*,b.StuNo,b.StuName,b.MajorNo,b.ClassNo,b.DeptNo,b.IdentityCardNo ");
+ strSql.Append(" FROM FinaChargeStuYearItem t left join FinaChargeStuYear a on t.FSYId=a.FSYId left join FinaChargeStudent b on a.StuNo=b.StuNo ");
+ strSql.Append(" WHERE 1=1 and b.F_CheckMark=1 and t.FSBlance>0 and t.FSYIId in(" + string.Join(",", keys)+")");
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString());
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentBLL.cs
new file mode 100644
index 000000000..0ff245c4a
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentBLL.cs
@@ -0,0 +1,201 @@
+using Learun.Util;
+using System;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-06 17:09
+ /// 描 述:缴费学生信息
+ ///
+ public class FinaChargeStudentBLL : FinaChargeStudentIBLL
+ {
+ private FinaChargeStudentService finaChargeStudentService = new FinaChargeStudentService();
+
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 分页参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ return finaChargeStudentService.GetPageList(pagination, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStudent表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStudentEntity GetFinaChargeStudentEntity(string keyValue)
+ {
+ try
+ {
+ return finaChargeStudentService.GetFinaChargeStudentEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ finaChargeStudentService.DeleteEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ ///
+ public void SaveEntity(string keyValue, FinaChargeStudentEntity entity)
+ {
+ try
+ {
+ finaChargeStudentService.SaveEntity(keyValue, entity);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public void Lock(string keyValue)
+ {
+ try
+ {
+ finaChargeStudentService.Lock(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public void UnLock(string keyValue)
+ {
+ try
+ {
+ finaChargeStudentService.UnLock(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public void ImportForm()
+ {
+ try
+ {
+ finaChargeStudentService.ImportForm();
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public void UpdateForm()
+ {
+ try
+ {
+ finaChargeStudentService.UpdateForm();
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentEntity.cs
new file mode 100644
index 000000000..0e2f986ab
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentEntity.cs
@@ -0,0 +1,101 @@
+using Learun.Util;
+using System;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-06 17:09
+ /// 描 述:缴费学生信息
+ ///
+ public class FinaChargeStudentEntity
+ {
+ #region 实体成员
+ ///
+ /// FSId
+ ///
+ [Column("FSID")]
+ public string FSId { get; set; }
+ ///
+ /// StuNo
+ ///
+ [Column("STUNO")]
+ public string StuNo { get; set; }
+ ///
+ /// StuName
+ ///
+ [Column("STUNAME")]
+ public string StuName { get; set; }
+ ///
+ /// GenderNo
+ ///
+ [Column("GENDERNO")]
+ public bool? GenderNo { get; set; }
+ ///
+ /// IdentityCardNo
+ ///
+ [Column("IDENTITYCARDNO")]
+ public string IdentityCardNo { get; set; }
+ ///
+ /// DeptNo
+ ///
+ [Column("DEPTNO")]
+ public string DeptNo { get; set; }
+ ///
+ /// MajorNo
+ ///
+ [Column("MAJORNO")]
+ public string MajorNo { get; set; }
+ ///
+ /// ClassNo
+ ///
+ [Column("CLASSNO")]
+ public string ClassNo { get; set; }
+
+ [Column("GRADE")]
+ public string Grade { get; set; }
+ ///
+ /// Mobile
+ ///
+ [Column("MOBILE")]
+ public string Mobile { get; set; }
+ ///
+ /// 应缴余额
+ ///
+ [Column("NEEDTOPAY")]
+ public decimal? NeedToPay { get; set; }
+ ///
+ /// 超出应收额
+ ///
+ [Column("FSBLANCE")]
+ public decimal? FSBlance { get; set; }
+
+ [Column("F_CHECKMARK")]
+ public bool? F_CheckMark { get; set; }
+ #endregion
+
+ #region 扩展操作
+ ///
+ /// 新增调用
+ ///
+ public void Create()
+ {
+ this.FSId = Guid.NewGuid().ToString();
+ }
+ ///
+ /// 编辑调用
+ ///
+ ///
+ public void Modify(string keyValue)
+ {
+ this.FSId = keyValue;
+ }
+ #endregion
+ #region 扩展字段
+ #endregion
+ }
+}
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentIBLL.cs
new file mode 100644
index 000000000..10221ff72
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentIBLL.cs
@@ -0,0 +1,52 @@
+using Learun.Util;
+using System.Data;
+using System.Collections.Generic;
+
+namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-06 17:09
+ /// 描 述:缴费学生信息
+ ///
+ public interface FinaChargeStudentIBLL
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ ///
+ IEnumerable GetPageList(Pagination pagination, string queryJson);
+ ///
+ /// 获取FinaChargeStudent表实体数据
+ ///
+ /// 主键
+ ///
+ FinaChargeStudentEntity GetFinaChargeStudentEntity(string keyValue);
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ void DeleteEntity(string keyValue);
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ void SaveEntity(string keyValue, FinaChargeStudentEntity entity);
+ #endregion
+
+ void Lock(string keyValue);
+ void UnLock(string keyValue);
+ void ImportForm();
+ void UpdateForm();
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentService.cs
new file mode 100644
index 000000000..22a009ac0
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargeStudent/FinaChargeStudentService.cs
@@ -0,0 +1,270 @@
+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.ReceiveSendFeeManagement
+{
+ ///
+ /// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
+ /// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
+ /// 创 建:超级管理员
+ /// 日 期:2023-08-06 17:09
+ /// 描 述:缴费学生信息
+ ///
+ public class FinaChargeStudentService : RepositoryFactory
+ {
+ #region 获取数据
+
+ ///
+ /// 获取页面显示列表数据
+ ///
+ /// 查询参数
+ /// 查询参数
+ ///
+ public IEnumerable GetPageList(Pagination pagination, string queryJson)
+ {
+ try
+ {
+ var strSql = new StringBuilder();
+ strSql.Append("SELECT * ");
+ strSql.Append(" FROM FinaChargeStudent t ");
+ 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 Like @StuNo ");
+ }
+ if (!queryParam["StuName"].IsEmpty())
+ {
+ dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.StuName Like @StuName ");
+ }
+ if (!queryParam["IdentityCardNo"].IsEmpty())
+ {
+ dp.Add("IdentityCardNo", "%" + queryParam["IdentityCardNo"].ToString() + "%", DbType.String);
+ strSql.Append(" AND t.IdentityCardNo Like @IdentityCardNo ");
+ }
+ if (!queryParam["DeptNo"].IsEmpty())
+ {
+ dp.Add("DeptNo", queryParam["DeptNo"].ToString(), DbType.String);
+ strSql.Append(" AND t.DeptNo = @DeptNo ");
+ }
+ if (!queryParam["MajorNo"].IsEmpty())
+ {
+ dp.Add("MajorNo", queryParam["MajorNo"].ToString(), DbType.String);
+ strSql.Append(" AND t.MajorNo = @MajorNo ");
+ }
+ if (!queryParam["ClassNo"].IsEmpty())
+ {
+ dp.Add("ClassNo", queryParam["ClassNo"].ToString(), DbType.String);
+ strSql.Append(" AND t.ClassNo = @ClassNo ");
+ }
+ return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(), dp, pagination);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 获取FinaChargeStudent表实体数据
+ ///
+ /// 主键
+ ///
+ public FinaChargeStudentEntity GetFinaChargeStudentEntity(string keyValue)
+ {
+ try
+ {
+ return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ #endregion
+
+ #region 提交数据
+
+ ///
+ /// 删除实体数据
+ ///
+ /// 主键
+ public void DeleteEntity(string keyValue)
+ {
+ try
+ {
+ this.BaseRepository("CollegeMIS").Delete(t => t.FSId == keyValue);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ ///
+ /// 保存实体数据(新增、修改)
+ ///
+ /// 主键
+ /// 实体
+ public void SaveEntity(string keyValue, FinaChargeStudentEntity 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
+
+ public void Lock(string keyValue)
+ {
+ var db = this.BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ //单个启用
+ //this.BaseRepository("CollegeMIS").ExecuteBySql("update ClassInfo set CheckMark=1 where ClassId='" + keyValue + "'");
+
+ //多个启用
+ var keyValueArr = keyValue.Split(',');
+ foreach (var item in keyValueArr)
+ {
+ db.ExecuteBySql("update FinaChargeStudent set F_CheckMark=1 where FSId='" + item + "'");
+ }
+ db.Commit();
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public void UnLock(string keyValue)
+ {
+ var db = this.BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ //单个停用
+ //this.BaseRepository("CollegeMIS").ExecuteBySql("update ClassInfo set CheckMark=0 where ClassId='" + keyValue + "'");
+
+ //多个停用
+ var keyValueArr = keyValue.Split(',');
+ foreach (var item in keyValueArr)
+ {
+ db.ExecuteBySql("update FinaChargeStudent set F_CheckMark=0 where FSId='" + item + "'");
+ }
+ db.Commit();
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public void ImportForm()
+ {
+ try
+ {
+ this.BaseRepository("CollegeMIS").ExecuteBySql(@"insert into FinaChargeStudent(FSId, StuNo, StuName, GenderNo, IdentityCardNo, DeptNo, MajorNo, ClassNo,Grade, Mobile,NeedToPay, FSBlance, F_CheckMark)
+ select newid(), stuno, stuname, genderno, identitycardno, deptno, majorno, classno,grade, mobile, 0,0, 1 from StuInfoBasic a where a.checkmark = 1 and InSchoolStatus=1 and stuno not in(select stuno from FinaChargeStudent)");
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public void UpdateForm()
+ {
+ try
+ {
+ this.BaseRepository("CollegeMIS").ExecuteBySql(@"update [FinaChargeStudent] set StuName=a.StuName,GenderNo=a.GenderNo,IdentityCardNo=a.IdentityCardNo,DeptNo=a.DeptNo, MajorNo=a.MajorNo, ClassNo=a.ClassNo,Grade=a.Grade, Mobile=a.Mobile
+from StuInfoBasic a left join [FinaChargeStudent] b on a.stuno=b.stuno");
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+ }
+}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardBLL.cs
index 4712358d5..043b128d0 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardBLL.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardBLL.cs
@@ -97,11 +97,11 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
/// 学期
/// 年级
///
- public IEnumerable GetFinaChargesStandardListByMajorNo(string majorNo, string academicYearNo, string semester, string grade)
+ public IEnumerable GetFinaChargesStandardListByMajorNo(string majorNo, string syear, string grade)
{
try
{
- return finaChargesStandardService.GetFinaChargesStandardListByMajorNo(majorNo, academicYearNo, semester, grade);
+ return finaChargesStandardService.GetFinaChargesStandardListByMajorNo(majorNo, syear, grade);
}
catch (Exception ex)
{
@@ -249,11 +249,11 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
/// 保存
///
- public void SaveFinaChargesStandardList(string majorNo, string academicYearNo, string semester, string grade, List finaChargesStandardList)
+ public void SaveFinaChargesStandardList(string deptno,string majorNo, string syear, string grade, List finaChargesStandardList)
{
try
{
- finaChargesStandardService.SaveFinaChargesStandardList(majorNo, academicYearNo, semester, grade, finaChargesStandardList);
+ finaChargesStandardService.SaveFinaChargesStandardList(deptno,majorNo, syear, grade, finaChargesStandardList);
}
catch (Exception ex)
{
@@ -314,6 +314,62 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
}
}
+ public void Lock(string deptno, string majorNo, string syear, string grade, string ChargeStandardID)
+ {
+ try
+ {
+ finaChargesStandardService.Lock(deptno, majorNo, syear, grade, ChargeStandardID);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+ public void UnLock(string deptno, string majorNo, string syear, string grade, string ChargeStandardID)
+ {
+ try
+ {
+ finaChargesStandardService.UnLock(deptno, majorNo, syear, grade, ChargeStandardID);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
+ public string ExecuteImportExcel(DataTable dt, string fileGuid, string queryJson)
+ {
+ try
+ {
+ return finaChargesStandardService.ExecuteImportExcel(dt, fileGuid, queryJson);
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowBusinessException(ex);
+ }
+ }
+ }
+
#endregion
}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardEntity.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardEntity.cs
index 933d5586e..d4c538bda 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardEntity.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardEntity.cs
@@ -17,13 +17,13 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
/// ChargeStandardID
///
- [DatabaseGenerated(DatabaseGeneratedOption.Identity)] [Column("CHARGESTANDARDID")]
- public int ChargeStandardID { get; set; }
+ [Column("CHARGESTANDARDID")]
+ public string ChargeStandardID { get; set; }
///
/// 收费项目代码
///
[Column("CHARGEITEMID")]
- public int ChargeItemID { get; set; }
+ public string ChargeItemID { get; set; }
///
/// 年级
///
@@ -40,35 +40,25 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
[Column("MAJORNO")]
public string MajorNo { get; set; }
///
- /// 专业方向号(如0,1,2,3,4,5)0代表无专业方向细分
- ///
- [Column("MAJORDETAILNO")]
- public string MajorDetailNo { get; set; }
- ///
- /// 专业方向名
- ///
- [Column("MAJORDETAILNAME")]
- public string MajorDetailName { get; set; }
- ///
/// 收费标准
///
[Column("STANDARD")]
public decimal? Standard { get; set; }
///
- /// AcademicYearNo
+ /// SYear
///
- [Column("ACADEMICYEARNO")]
- public string AcademicYearNo { get; set; }
+ [Column("SYEAR")]
+ public int? SYear { get; set; }
///
- /// Semester
+ /// 审核标志
///
- [Column("SEMESTER")]
- public string Semester { get; set; }
+ [Column("CHECKMARK")]
+ public bool? CheckMark { get; set; }
///
- /// CheckMark
+ /// 删除标志
///
- [Column("CHECKMARK")]
- public string CheckMark { get; set; }
+ [Column("F_DELETEMARK")]
+ public bool? F_DeleteMark { get; set; }
#endregion
#region 扩展操作
@@ -77,6 +67,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
public void Create()
{
+ this.ChargeStandardID = Guid.NewGuid().ToString();
}
///
/// 编辑调用
@@ -84,7 +75,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
public void Modify(string keyValue)
{
- this.ChargeStandardID = Convert.ToInt32(keyValue);
+ this.ChargeStandardID = keyValue;
}
#endregion
#region 扩展字段
@@ -95,11 +86,20 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
public string ChargeItemName { get; set; }
[NotMapped]
public string ChargeItemCode { get; set; }
+ [NotMapped]
+ public int? ChargeItemType { get; set; }
+ [NotMapped]
+ public int? priority { get; set; }
///
/// 已交金额
///
[NotMapped]
- public decimal? PayedMoney { get; set; }
+ public decimal? PayedMoney { get; set; }
+ ///
+ ///
+ ///
+ [NotMapped]
+ public decimal? YJAmount { get; set; }
///
/// 实缴金额
///
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardIBLL.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardIBLL.cs
index 8081ab7c8..bd3f19e32 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardIBLL.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardIBLL.cs
@@ -41,7 +41,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
/// 学期
/// 年级
///
- IEnumerable GetFinaChargesStandardListByMajorNo(string majorNo, string academicYearNo, string semester, string grade);
+ IEnumerable GetFinaChargesStandardListByMajorNo(string majorNo, string syear, string grade);
///
/// 获取FinaChargesStandard表数据
///
@@ -86,7 +86,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
/// 保存
///
- void SaveFinaChargesStandardList(string majorNo, string academicYearNo, string semester, string grade, List finaChargesStandardList);
+ void SaveFinaChargesStandardList(string deptno,string majorNo, string syear, string grade, List finaChargesStandardList);
///
/// 某专业的收费标准是否已使用
@@ -96,9 +96,12 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
///
///
- bool IsChargeByMajorNo(string majorNo, string academicYearNo, string semester, string grade);
+ bool IsChargeByMajorNo(string deptNo, string majorNo, string sYear, string grade);
#endregion
IEnumerable GetFinaChargesStandardListByYongYou(string stuNo, int jiaoFeiYear);
+ void Lock(string deptno, string majorNo, string syear, string grade, string ChargeStandardID);
+ void UnLock(string deptno, string majorNo, string syear, string grade, string ChargeStandardID);
+ string ExecuteImportExcel(DataTable dt, string fileGuid, string queryJson);
}
}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardService.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardService.cs
index b7a369c84..60f845748 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardService.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment/ReceiveSendFeeManagement/FinaChargesStandard/FinaChargesStandardService.cs
@@ -6,6 +6,9 @@ using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
+using Learun.Application.TwoDevelopment.EducationalAdministration;
+using Learun.Cache.Base;
+using Learun.Cache.Factory;
namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
{
@@ -18,6 +21,8 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
public class FinaChargesStandardService : RepositoryFactory
{
+ private ICache cache = CacheFactory.CaChe();
+ private string cacheKey = "Learun_adms_excelError_";
#region 获取数据
///
@@ -77,46 +82,56 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
try
{
var strSql = new StringBuilder();
- strSql.Append("select CONVERT(varchar,t.ChargeStandardID)+'Temp' as TempId,t.ChargeStandardID,t.ChargeItemID,i.ChargeItemName,t.Standard,t.MajorNo,m.MajorName,t.AcademicYearNo,t.Semester,t.Grade,t.MajorNo as ParentId ");
+ strSql.Append("select CONVERT(varchar,t.ChargeStandardID)+'Temp' as TempId,t.ChargeStandardID,t.ChargeItemID,i.ChargeItemName,i.ChargeItemType,i.ChargeItemCode,t.Standard,'' as MajorNo,'' as MajorName,'' as DeptNo,t.SYear,t.Grade,t.MajorNo as ParentId,t.CheckMark");
strSql.Append(" FROM [dbo].[CdMajor] m left join [dbo].[FinaChargesStandard] t on m.MajorNo=t.MajorNo left join [dbo].[FinaChargeItem] i on t.ChargeItemID=i.ChargeItemID ");
- strSql.Append(" WHERE 1=1 ");
+ strSql.Append(" WHERE 1=1 and i.CheckMark=1 and i.F_DeleteMark=0 and t.F_DeleteMark=0 ");
var queryParam = queryJson.ToJObject();
// 虚拟参数
var dp = new DynamicParameters(new { });
- if (!queryParam["AcademicYearNo"].IsEmpty())
- {
- dp.Add("AcademicYearNo", queryParam["AcademicYearNo"].ToString(), DbType.String);
- strSql.Append(" AND t.AcademicYearNo = @AcademicYearNo ");
- }
- if (!queryParam["Semester"].IsEmpty())
+ if (!queryParam["SYear"].IsEmpty())
{
- dp.Add("Semester", queryParam["Semester"].ToString(), DbType.String);
- strSql.Append(" AND t.Semester = @Semester ");
+ dp.Add("SYear", queryParam["SYear"].ToString(), DbType.String);
+ strSql.Append(" AND t.SYear = @SYear ");
}
if (!queryParam["Grade"].IsEmpty())
{
dp.Add("Grade", queryParam["Grade"].ToString(), DbType.String);
strSql.Append(" AND t.Grade = @Grade ");
}
- strSql.Append(" union ");
- strSql.Append(" select m.MajorNo as TempId,0 as ChargeStandardID,0 as ChargeItemID,null as ChargeItemName, ");
- strSql.Append(" (select SUM(t.Standard) from [dbo].[FinaChargesStandard] t where t.MajorNo=m.MajorNo ");
- if (!queryParam["AcademicYearNo"].IsEmpty())
+ if (!queryParam["DeptNo"].IsEmpty())
{
- strSql.Append(" AND t.AcademicYearNo = @AcademicYearNo ");
+ dp.Add("DeptNo", queryParam["DeptNo"].ToString(), DbType.String);
+ strSql.Append(" AND m.DeptNo = @DeptNo ");
}
- if (!queryParam["Semester"].IsEmpty())
+ if (!queryParam["MajorNo"].IsEmpty())
{
- strSql.Append(" AND t.Semester = @Semester ");
+ dp.Add("MajorNo", queryParam["MajorNo"].ToString(), DbType.String);
+ strSql.Append(" AND m.MajorNo = @MajorNo ");
+ }
+ strSql.Append(" union ");
+ strSql.Append(" select m.MajorNo as TempId,'' as ChargeStandardID,'0' as ChargeItemID,null as ChargeItemName,null as ChargeItemType, null as ChargeItemCode,");
+ strSql.Append(" (select SUM(t.Standard) from [dbo].[FinaChargesStandard] t left join [FinaChargeItem] tt on t.ChargeItemID=tt.ChargeItemID where tt.CheckMark=1 and tt.F_DeleteMark=0 and t.MajorNo=m.MajorNo and t.CheckMark=1 and t.F_DeleteMark=0 ");
+ if (!queryParam["SYear"].IsEmpty())
+ {
+ strSql.Append(" AND t.SYear = @SYear ");
}
if (!queryParam["Grade"].IsEmpty())
{
- dp.Add("Grade", queryParam["Grade"].ToString(), DbType.String);
strSql.Append(" AND t.Grade = @Grade ");
}
- strSql.Append(" ) as Standard,m.MajorNo,m.MajorName,null as AcademicYearNo,null as Semester,null as Grade,'0' as ParentId");
+ strSql.Append(" ) as Standard,m.MajorNo,m.MajorName,m.DeptNo,null as SYear,null as Grade,'0' as ParentId, 0 as CheckMark");
strSql.Append(" from [dbo].[CdMajor] m ");
strSql.Append(" WHERE 1=1 ");
+ if (!queryParam["DeptNo"].IsEmpty())
+ {
+ strSql.Append(" AND m.DeptNo = @DeptNo ");
+ }
+ if (!queryParam["MajorNo"].IsEmpty())
+ {
+ strSql.Append(" AND m.MajorNo = @MajorNo ");
+ }
+
+ strSql.Append(" order by majorno,ChargeItemCode ");
return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(), dp);
}
catch (Exception ex)
@@ -140,8 +155,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
{
try
{
- var keyvalue = Convert.ToInt32(keyValue);
- return this.BaseRepository("CollegeMIS").FindList(t => t.ChargeStandardID == keyvalue);
+ return this.BaseRepository("CollegeMIS").FindList(t => t.ChargeStandardID == keyValue);
}
catch (Exception ex)
{
@@ -164,14 +178,16 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
/// 学期
/// 年级
///
- public IEnumerable GetFinaChargesStandardListByMajorNo(string majorNo, string academicYearNo, string semester, string grade)
+ public IEnumerable GetFinaChargesStandardListByMajorNo(string majorNo, string syear, string grade)
{
try
{
var strSql = new StringBuilder();
- strSql.Append("select i.ChargeItemID,REPLACE(i.ChargeItemName,'','') as ChargeItemName,t.ChargeStandardID,t.Standard as Standard");
+ strSql.Append("select i.ChargeItemID,i.ChargeItemName,i.ChargeItemCode,i.ChargeItemType,t.ChargeStandardID,t.Standard as Standard");
strSql.Append(" from [dbo].[FinaChargeItem] i left join [dbo].[FinaChargesStandard] t on i.ChargeItemID=t.ChargeItemID ");
- strSql.Append(" and t.AcademicYearNo='" + academicYearNo + "' and t.Semester='" + semester + "' and t.Grade='" + grade + "' and t.MajorNo='" + majorNo + "' ");
+ strSql.Append(" and t.syear='" + syear + "' and t.Grade='" + grade + "' and t.MajorNo='" + majorNo + "' ");
+ strSql.Append(" where 1=1 and i.checkmark=1 order by ChargeItemCode");
+
return this.BaseRepository("CollegeMIS").FindList(strSql.ToString());
}
catch (Exception ex)
@@ -252,8 +268,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
{
try
{
- var aa = Convert.ToInt32(chargeItemID);
- return this.BaseRepository("CollegeMIS").FindEntity(x => x.ChargeItemID == aa);
+ return this.BaseRepository("CollegeMIS").FindEntity(x => x.ChargeItemID == chargeItemID);
}
catch (Exception ex)
{
@@ -281,8 +296,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
{
try
{
- var keyvalue = Convert.ToInt32(keyValue);
- this.BaseRepository("CollegeMIS").Delete(t => t.ChargeStandardID == keyvalue);
+ this.BaseRepository("CollegeMIS").ExecuteBySql("update FinaChargesStandard set F_DeleteMark=1 where ChargeStandardID='" + keyValue + "'");
}
catch (Exception ex)
{
@@ -337,7 +351,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
///
/// 新增保存
///
- public void SaveFinaChargesStandardList(string majorNo, string academicYearNo, string semester, string grade, List finaChargesStandardList)
+ public void SaveFinaChargesStandardList(string deptNo, string majorNo, string sYear, string grade, List finaChargesStandardList)
{
var db = this.BaseRepository("CollegeMIS");
try
@@ -345,7 +359,7 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
db.BeginTrans();
//删除学年学期年级某专业下的收费标准
- var preResult = db.ExecuteBySql("delete from FinaChargesStandard where AcademicYearNo='" + academicYearNo + "' and Semester='" + semester + "' and Grade='" + grade + "' and MajorNo='" + majorNo + "' ");
+ var preResult = db.ExecuteBySql("delete from FinaChargesStandard where SYear='" + sYear + "' and Grade='" + grade + "' and MajorNo='" + majorNo + "' ");
//增加收费标准
foreach (var item in finaChargesStandardList)
{
@@ -353,12 +367,12 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
{
ChargeItemID = item.ChargeItemID,
Grade = grade,
- DeptNo = "-1",
+ DeptNo = deptNo,
MajorNo = majorNo,
Standard = item.Standard,
- AcademicYearNo = academicYearNo,
- Semester = semester,
- CheckMark = "0"
+ SYear = Convert.ToInt32(sYear),
+ CheckMark = false,
+ F_DeleteMark = false
};
entity.Create();
db.Insert(entity);
@@ -446,5 +460,183 @@ namespace Learun.Application.TwoDevelopment.ReceiveSendFeeManagement
}
}
}
+
+ public void Lock(string deptno, string majorNo, string syear, string grade, string ChargeStandardID)
+ {
+ try
+ {
+ if (!string.IsNullOrEmpty(deptno))
+ {
+ BaseRepository("CollegeMIS").ExecuteBySql("update FinaChargesStandard set CheckMark=1 where Grade='" + grade + "' and DeptNo='" + deptno + "' and MajorNo='" + majorNo + "' and SYear='" + syear + "'");
+ }
+ else
+ {
+ BaseRepository("CollegeMIS").ExecuteBySql("update FinaChargesStandard set CheckMark=1 where ChargeStandardID='" + ChargeStandardID + "'");
+ }
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public void UnLock(string deptno, string majorNo, string syear, string grade, string ChargeStandardID)
+ {
+ try
+ {
+ if (!string.IsNullOrEmpty(deptno))
+ {
+ BaseRepository("CollegeMIS").ExecuteBySql("update FinaChargesStandard set CheckMark=0 where Grade='" + grade + "' and DeptNo='" + deptno + "' and MajorNo='" + majorNo + "' and SYear='" + syear + "'");
+ }
+ else
+ {
+ BaseRepository("CollegeMIS").ExecuteBySql("update FinaChargesStandard set CheckMark=0 where ChargeStandardID='" + ChargeStandardID + "'");
+ }
+ }
+ catch (Exception ex)
+ {
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
+
+ public string ExecuteImportExcel(DataTable dt, string fileGuid, string queryJson)
+ {
+ var db = this.BaseRepository("CollegeMIS").BeginTrans();
+ try
+ {
+ int snum = 0;
+ int fnum = 0;
+ if (dt.Rows.Count > 0)
+ {
+ DataTable failDt = new DataTable();
+ dt.Columns.Add("导入错误", typeof(string));
+ foreach (DataColumn dc in dt.Columns)
+ {
+ failDt.Columns.Add(dc.ColumnName, dc.DataType);
+ }
+ var cddeptlist = db.FindList("select * from cddept");
+ var cdmajorlist = db.FindList("select * from cdmajor where checkmark=1");
+ var finaChargeItemlist = db.FindList("select * from FinaChargeItem where checkmark=1 and f_deletemark=0");
+ //获取收费标准
+ var finaChargesStandardList = db.FindList(@"select a.Grade,a.DeptNo,a.MajorNo,a.Standard,a.SYear,b.ChargeItemName,b.ChargeItemCode,b.ChargeItemType,b.priority,a.ChargeItemID
+from [dbo].[FinaChargesStandard] a left join [dbo].[FinaChargeItem] b on a.ChargeItemID=b.[ChargeItemID]
+where a.F_DeleteMark=0 and a.F_DeleteMark=0 and b.CheckMark=1 and b.F_DeleteMark=0");
+ // 循环遍历导入
+ foreach (DataRow dr in dt.Rows)
+ {
+ try
+ {
+ //检测是否有空值
+ if (dr[0].ToString() == "" || dr[1].ToString() == "" || dr[2].ToString() == "" || dr[3].ToString() == "" || dr[4].ToString() == "" || dr[5].ToString() == "")
+ {
+ throw new Exception("行内数据有空值,不能为空!");
+ }
+ //系部检测
+ var deptEntity = cddeptlist.FirstOrDefault(m => m.DeptName == dr[0].ToString());
+ if (deptEntity == null)
+ {
+ throw new Exception("【系部】不存在,请确认!");
+ }
+ //专业检测
+ var cdmajorEntity = cdmajorlist.FirstOrDefault(m => m.MajorName == dr[1].ToString()&&m.DeptNo== deptEntity.DeptNo);
+ if (cdmajorEntity == null)
+ {
+ throw new Exception("【专业】不存在或与系部不对应,请确认!");
+ }
+ //收费项目检测
+ var finaChargeItemEntity = finaChargeItemlist.FirstOrDefault(m => m.ChargeItemName == dr[4].ToString());
+ if (finaChargeItemEntity == null)
+ {
+ throw new Exception("【收费项目】不存在,请确认是否启用!");
+ }
+ //检测缴费年度是否为数字
+ int payyearresult = 0;
+ bool parsepayyearresult = int.TryParse(dr[3].ToString(), out payyearresult);
+ if (!parsepayyearresult || dr[3].ToString().Length != 4)
+ {
+ throw new Exception("【缴费年度】格式不正确,必须为四位数字年份!");
+ }
+ //首先校验金额是否为数字
+ decimal dresult = 0;
+ bool parseresult = decimal.TryParse(dr[5].ToString(), out dresult);
+ if (!parseresult)
+ {
+ throw new Exception("【金额】转换失败,必须为数字!");
+ }
+ //金额不能小于等于零
+ if (dresult <= 0)
+ {
+ throw new Exception("【金额】不能为零或小于零,必须为正数!");
+ }
+ //年级检测
+ int paygraderesult = 0;
+ bool parsepaygraderesult = int.TryParse(dr[2].ToString(), out paygraderesult);
+ if (!parsepaygraderesult || dr[2].ToString().Length != 2)
+ {
+ throw new Exception("【年级】格式不正确,必须为二位数字年级!");
+ }
+ //去重
+ if (finaChargesStandardList.Count(m => m.DeptNo == deptEntity.DeptNo && m.MajorNo ==cdmajorEntity.MajorNo&&m.Grade == paygraderesult.ToString()&& m.SYear==payyearresult&&m.ChargeItemID== finaChargeItemEntity.ChargeItemID) >0)
+ {
+ throw new Exception("【收费标准】已存在,不能重复导入!");
+ }
+ //开始导入
+ FinaChargesStandardEntity finaChargesStandardEntity=new FinaChargesStandardEntity();
+ finaChargesStandardEntity.Create();
+ finaChargesStandardEntity.ChargeItemID = finaChargeItemEntity.ChargeItemID;
+ finaChargesStandardEntity.Grade = paygraderesult.ToString();
+ finaChargesStandardEntity.DeptNo = deptEntity.DeptNo;
+ finaChargesStandardEntity.MajorNo = cdmajorEntity.MajorNo;
+ finaChargesStandardEntity.Standard = dresult;
+ finaChargesStandardEntity.SYear = payyearresult;
+ finaChargesStandardEntity.CheckMark = false;
+ finaChargesStandardEntity.F_DeleteMark = false;
+ db.Insert(finaChargesStandardEntity);
+ snum++;
+ }
+ catch (Exception ex)
+ {
+ fnum++;
+ dr["导入错误"] = ex.Message;
+ failDt.Rows.Add(dr.ItemArray);
+ }
+ }
+ // 写入缓存如果有未导入的数据
+ if (failDt.Rows.Count > 0)
+ {
+ string errordt = failDt.ToJson();
+ cache.Write(cacheKey + fileGuid, errordt, CacheId.excel);
+ }
+ db.Commit();
+ }
+ return snum + "|" + fnum;
+ }
+ catch (Exception ex)
+ {
+ db.Rollback();
+ if (ex is ExceptionEx)
+ {
+ throw;
+ }
+ else
+ {
+ throw ExceptionEx.ThrowServiceException(ex);
+ }
+ }
+ }
}
}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util.Operat/OperationType.cs b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util.Operat/OperationType.cs
index 041be9dde..245118831 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util.Operat/OperationType.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Module/Learun.Util/Learun.Util.Operat/OperationType.cs
@@ -66,5 +66,11 @@ namespace Learun.Util.Operat
///
[Description("移动登录")]
AppLogin = 10,
+
+ [Description("审核、启用")]
+ Lock = 11,
+
+ [Description("去审核、停用")]
+ UnLock = 12,
}
}
diff --git a/Learun.Framework.Ultimate V7/Learun.Framework.Ultimate V7 - 副本.sln b/Learun.Framework.Ultimate V7/Learun.Framework.Ultimate V7 - 副本.sln
index fbf9e9c15..f8f325e77 100644
--- a/Learun.Framework.Ultimate V7/Learun.Framework.Ultimate V7 - 副本.sln
+++ b/Learun.Framework.Ultimate V7/Learun.Framework.Ultimate V7 - 副本.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.29025.244
+# Visual Studio Version 17
+VisualStudioVersion = 17.6.33829.357
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "01 Framework 基础模块", "01 Framework 基础模块", "{C6B09613-CC72-4D16-8056-1FD68ED86BF3}"
EndProject
@@ -106,6 +106,14 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Quanjiang.DigitalScholl.Pus
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Quanjiang.DigitalScholl.JobService", "Quanjiang.DigitalScholl.JobService\Quanjiang.DigitalScholl.JobService.csproj", "{22D95C1F-07D6-40A4-8F14-26013EB23C12}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Learun.Application.Message", "Learun.Framework.Module\Learun.Application.Module\Learun.Application.Message\Learun.Application.Message.csproj", "{211FA31A-B9D8-4F48-80CC-573B9410828E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Learun.Workflow.Engine", "Learun.Framework.Module\Learun.Workflow\Learun.Workflow.Engine\Learun.Workflow.Engine.csproj", "{1D192591-B85A-41DB-AE3A-4BF9765786C1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Learun.Application.Language", "Learun.Framework.Module\Learun.Application.Module\Learun.Application.Language\Learun.Application.Language.csproj", "{36083FBB-CE7F-4EE0-8459-C4B60A2DD070}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Learun.Application.Extention", "Learun.Framework.Module\Learun.Application.Module\Learun.Application.Extention\Learun.Application.Extention.csproj", "{4D033392-BBB8-4B5F-9144-A42E7695847E}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Android = Debug|Android
@@ -1388,6 +1396,150 @@ Global
{22D95C1F-07D6-40A4-8F14-26013EB23C12}.Release|Windows-x64.Build.0 = Release|Any CPU
{22D95C1F-07D6-40A4-8F14-26013EB23C12}.Release|Windows-x86.ActiveCfg = Release|Any CPU
{22D95C1F-07D6-40A4-8F14-26013EB23C12}.Release|Windows-x86.Build.0 = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Android.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Android.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|iOS.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|iOS.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Windows-ARM.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Windows-ARM.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Windows-x64.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Windows-x64.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Windows-x86.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Debug|Windows-x86.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Android.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Android.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Any CPU.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Any CPU.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|iOS.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|iOS.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Windows-ARM.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Windows-ARM.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Windows-x64.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Windows-x64.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Windows-x86.ActiveCfg = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Development|Windows-x86.Build.0 = Debug|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Android.ActiveCfg = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Android.Build.0 = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|iOS.ActiveCfg = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|iOS.Build.0 = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Windows-ARM.ActiveCfg = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Windows-ARM.Build.0 = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Windows-x64.ActiveCfg = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Windows-x64.Build.0 = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Windows-x86.ActiveCfg = Release|Any CPU
+ {211FA31A-B9D8-4F48-80CC-573B9410828E}.Release|Windows-x86.Build.0 = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Android.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Android.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|iOS.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|iOS.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Windows-ARM.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Windows-ARM.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Windows-x64.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Windows-x64.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Windows-x86.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Debug|Windows-x86.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Android.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Android.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Any CPU.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Any CPU.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|iOS.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|iOS.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Windows-ARM.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Windows-ARM.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Windows-x64.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Windows-x64.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Windows-x86.ActiveCfg = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Development|Windows-x86.Build.0 = Debug|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Android.ActiveCfg = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Android.Build.0 = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|iOS.ActiveCfg = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|iOS.Build.0 = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Windows-ARM.ActiveCfg = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Windows-ARM.Build.0 = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Windows-x64.ActiveCfg = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Windows-x64.Build.0 = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Windows-x86.ActiveCfg = Release|Any CPU
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1}.Release|Windows-x86.Build.0 = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Android.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Android.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|iOS.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|iOS.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Windows-ARM.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Windows-ARM.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Windows-x64.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Windows-x64.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Windows-x86.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Debug|Windows-x86.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Android.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Android.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Any CPU.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Any CPU.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|iOS.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|iOS.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Windows-ARM.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Windows-ARM.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Windows-x64.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Windows-x64.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Windows-x86.ActiveCfg = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Development|Windows-x86.Build.0 = Debug|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Android.ActiveCfg = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Android.Build.0 = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Any CPU.Build.0 = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|iOS.ActiveCfg = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|iOS.Build.0 = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Windows-ARM.ActiveCfg = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Windows-ARM.Build.0 = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Windows-x64.ActiveCfg = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Windows-x64.Build.0 = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Windows-x86.ActiveCfg = Release|Any CPU
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070}.Release|Windows-x86.Build.0 = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Android.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Android.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|iOS.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|iOS.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Windows-ARM.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Windows-ARM.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Windows-x64.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Windows-x64.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Windows-x86.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Debug|Windows-x86.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Android.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Android.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Any CPU.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Any CPU.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|iOS.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|iOS.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Windows-ARM.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Windows-ARM.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Windows-x64.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Windows-x64.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Windows-x86.ActiveCfg = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Development|Windows-x86.Build.0 = Debug|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Android.ActiveCfg = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Android.Build.0 = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|iOS.ActiveCfg = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|iOS.Build.0 = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Windows-ARM.ActiveCfg = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Windows-ARM.Build.0 = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Windows-x64.ActiveCfg = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Windows-x64.Build.0 = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Windows-x86.ActiveCfg = Release|Any CPU
+ {4D033392-BBB8-4B5F-9144-A42E7695847E}.Release|Windows-x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -1432,150 +1584,13 @@ Global
{8F770F8B-06B3-43DA-886F-15D41CEC62EE} = {16DDB25D-3101-47A2-BDC8-161954FD77FA}
{7491A0D1-23A0-43AE-A492-9D7B3D962F50} = {C6B09613-CC72-4D16-8056-1FD68ED86BF3}
{9B8B014F-BF59-4578-B931-E0F27FAE3598} = {7491A0D1-23A0-43AE-A492-9D7B3D962F50}
+ {211FA31A-B9D8-4F48-80CC-573B9410828E} = {16DDB25D-3101-47A2-BDC8-161954FD77FA}
+ {1D192591-B85A-41DB-AE3A-4BF9765786C1} = {16DDB25D-3101-47A2-BDC8-161954FD77FA}
+ {36083FBB-CE7F-4EE0-8459-C4B60A2DD070} = {16DDB25D-3101-47A2-BDC8-161954FD77FA}
+ {4D033392-BBB8-4B5F-9144-A42E7695847E} = {16DDB25D-3101-47A2-BDC8-161954FD77FA}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {968C278F-4142-4DFF-96B0-B3D70A649451}
EnterpriseLibraryConfigurationToolBinariesPath = packages\Unity.2.1.505.0\lib\NET35
- EndGlobalSection
- GlobalSection(TeamFoundationVersionControl) = preSolution
- SccNumberOfProjects = 36
- SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
- SccTeamFoundationServer = http://192.168.2.126:8080/tfs/defaultcollection
- SccLocalPath0 = .
- SccProjectUniqueName1 = Learun.Application.IMServer\\Learun.Application.IMServer.csproj
- SccProjectTopLevelParentUniqueName1 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName1 = Learun.Application.IMServer
- SccLocalPath1 = Learun.Application.IMServer
- SccProjectUniqueName2 = Learun.Application.Organization\\Learun.Application.Organization.csproj
- SccProjectTopLevelParentUniqueName2 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName2 = Learun.Application.Organization
- SccLocalPath2 = Learun.Application.Organization
- SccProjectUniqueName3 = Learun.Application.WebApi\\Learun.Application.WebApi.csproj
- SccProjectTopLevelParentUniqueName3 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName3 = Learun.Application.WebApi
- SccLocalPath3 = Learun.Application.WebApi
- SccProjectUniqueName4 = Learun.Application.WorkFlowServer\\Learun.Application.WorkFlowServer.csproj
- SccProjectTopLevelParentUniqueName4 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName4 = Learun.Application.WorkFlowServer
- SccLocalPath4 = Learun.Application.WorkFlowServer
- SccProjectUniqueName5 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.AppMagager\\Learun.Application.AppMagager.csproj
- SccProjectTopLevelParentUniqueName5 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName5 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.AppMagager
- SccLocalPath5 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.AppMagager
- SccProjectUniqueName6 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Base\\Learun.Application.Base.csproj
- SccProjectTopLevelParentUniqueName6 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName6 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.Base
- SccLocalPath6 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Base
- SccProjectUniqueName7 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.CRM\\Learun.Application.CRM.csproj
- SccProjectTopLevelParentUniqueName7 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName7 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.CRM
- SccLocalPath7 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.CRM
- SccProjectUniqueName8 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Excel\\Learun.Application.Excel.csproj
- SccProjectTopLevelParentUniqueName8 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName8 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.Excel
- SccLocalPath8 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Excel
- SccProjectUniqueName9 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Form\\Learun.Application.Form.csproj
- SccProjectTopLevelParentUniqueName9 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName9 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.Form
- SccLocalPath9 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Form
- SccProjectUniqueName10 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.IM\\Learun.Application.IM.csproj
- SccProjectTopLevelParentUniqueName10 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName10 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.IM
- SccLocalPath10 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.IM
- SccProjectUniqueName11 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.OA\\Learun.Application.OA.csproj
- SccProjectTopLevelParentUniqueName11 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName11 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.OA
- SccLocalPath11 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.OA
- SccProjectUniqueName12 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Report\\Learun.Application.Report.csproj
- SccProjectTopLevelParentUniqueName12 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName12 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.Report
- SccLocalPath12 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Report
- SccProjectUniqueName13 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.WeChat\\Learun.Application.WeChat.csproj
- SccProjectTopLevelParentUniqueName13 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName13 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.WeChat
- SccLocalPath13 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.WeChat
- SccProjectUniqueName14 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.WorkFlow\\Learun.Application.WorkFlow.csproj
- SccProjectTopLevelParentUniqueName14 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName14 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.WorkFlow
- SccLocalPath14 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.WorkFlow
- SccProjectUniqueName15 = Learun.Framework.Module\\Learun.Cache\\Learun.Cache.Base\\Learun.Cache.Base.csproj
- SccProjectTopLevelParentUniqueName15 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName15 = Learun.Framework.Module/Learun.Cache/Learun.Cache.Base
- SccLocalPath15 = Learun.Framework.Module\\Learun.Cache\\Learun.Cache.Base
- SccProjectUniqueName16 = Learun.Framework.Module\\Learun.Cache\\Learun.Cache.Factory\\Learun.Cache.Factory.csproj
- SccProjectTopLevelParentUniqueName16 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName16 = Learun.Framework.Module/Learun.Cache/Learun.Cache.Factory
- SccLocalPath16 = Learun.Framework.Module\\Learun.Cache\\Learun.Cache.Factory
- SccProjectUniqueName17 = Learun.Framework.Module\\Learun.Cache\\Learun.Cache.Redis\\Learun.Cache.Redis.csproj
- SccProjectTopLevelParentUniqueName17 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName17 = Learun.Framework.Module/Learun.Cache/Learun.Cache.Redis
- SccLocalPath17 = Learun.Framework.Module\\Learun.Cache\\Learun.Cache.Redis
- SccProjectUniqueName18 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase.EF.Oracle\\Learun.DataBase.Oracle.csproj
- SccProjectTopLevelParentUniqueName18 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName18 = Learun.Framework.Module/Learun.Db/Learun.DataBase.EF.Oracle
- SccLocalPath18 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase.EF.Oracle
- SccProjectUniqueName19 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase.EF.Sqlserver\\Learun.DataBase.SqlServer.csproj
- SccProjectTopLevelParentUniqueName19 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName19 = Learun.Framework.Module/Learun.Db/Learun.DataBase.EF.Sqlserver
- SccLocalPath19 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase.EF.Sqlserver
- SccProjectUniqueName20 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase.MySql\\Learun.DataBase.MySqlEx.csproj
- SccProjectTopLevelParentUniqueName20 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName20 = Learun.Framework.Module/Learun.Db/Learun.DataBase.MySql
- SccLocalPath20 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase.MySql
- SccProjectUniqueName21 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase.Repository\\Learun.DataBase.Repository.csproj
- SccProjectTopLevelParentUniqueName21 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName21 = Learun.Framework.Module/Learun.Db/Learun.DataBase.Repository
- SccLocalPath21 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase.Repository
- SccProjectUniqueName22 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase\\Learun.DataBase.csproj
- SccProjectTopLevelParentUniqueName22 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName22 = Learun.Framework.Module/Learun.Db/Learun.DataBase
- SccLocalPath22 = Learun.Framework.Module\\Learun.Db\\Learun.DataBase
- SccProjectUniqueName23 = Learun.Framework.Module\\Learun.Ioc\\Learun.Ioc.csproj
- SccProjectTopLevelParentUniqueName23 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName23 = Learun.Framework.Module/Learun.Ioc
- SccLocalPath23 = Learun.Framework.Module\\Learun.Ioc
- SccProjectUniqueName24 = Learun.Framework.Module\\Learun.Log\\Learun.Loger.csproj
- SccProjectTopLevelParentUniqueName24 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName24 = Learun.Framework.Module/Learun.Log
- SccLocalPath24 = Learun.Framework.Module\\Learun.Log
- SccProjectUniqueName25 = Learun.Framework.Module\\Learun.Util\\Learun.Util.Operat\\Learun.Util.Operat.csproj
- SccProjectTopLevelParentUniqueName25 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName25 = Learun.Framework.Module/Learun.Util/Learun.Util.Operat
- SccLocalPath25 = Learun.Framework.Module\\Learun.Util\\Learun.Util.Operat
- SccProjectUniqueName26 = Learun.Framework.Module\\Learun.Util\\Learun.Util\\Learun.Util.csproj
- SccProjectTopLevelParentUniqueName26 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName26 = Learun.Framework.Module/Learun.Util/Learun.Util
- SccLocalPath26 = Learun.Framework.Module\\Learun.Util\\Learun.Util
- SccProjectUniqueName27 = Xq.SpireHelper\\Xq.SpireHelper.csproj
- SccProjectTopLevelParentUniqueName27 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName27 = Xq.SpireHelper
- SccLocalPath27 = Xq.SpireHelper
- SccProjectUniqueName28 = Quanjiang.DigitalScholl.DataSync\\Quanjiang.DigitalScholl.DataSync.csproj
- SccProjectName28 = Quanjiang.DigitalScholl.DataSync
- SccLocalPath28 = Quanjiang.DigitalScholl.DataSync
- SccProjectUniqueName29 = Quanjiang.DigitalScholl.License\\Quanjiang.DigitalScholl.License.csproj
- SccProjectName29 = Quanjiang.DigitalScholl.License
- SccLocalPath29 = Quanjiang.DigitalScholl.License
- SccProjectUniqueName30 = Quanjiang.DigitalScholl.WebLicense\\Quanjiang.DigitalScholl.WebLicense.csproj
- SccProjectName30 = Quanjiang.DigitalScholl.WebLicense
- SccLocalPath30 = Quanjiang.DigitalScholl.WebLicense
- SccProjectUniqueName31 = Quanjiang.DigitalScholl.PushNotifications\\Quanjiang.DigitalScholl.PushNotifications.csproj
- SccProjectName31 = Quanjiang.DigitalScholl.PushNotifications
- SccLocalPath31 = Quanjiang.DigitalScholl.PushNotifications
- SccProjectUniqueName32 = Quanjiang.DigitalScholl.JobService\\Quanjiang.DigitalScholl.JobService.csproj
- SccProjectName32 = Quanjiang.DigitalScholl.JobService
- SccLocalPath32 = Quanjiang.DigitalScholl.JobService
- SccProjectUniqueName33 = Learun.Application.Web\\Learun.Application.Web.csproj
- SccProjectTopLevelParentUniqueName33 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName33 = Learun.Application.Web
- SccLocalPath33 = Learun.Application.Web
- SccProjectUniqueName34 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.TwoDevelopment\\Learun.Application.TwoDevelopment.csproj
- SccProjectTopLevelParentUniqueName34 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName34 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.TwoDevelopment
- SccLocalPath34 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.TwoDevelopment
- SccProjectUniqueName35 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Mapping\\Learun.Application.Mapping.csproj
- SccProjectTopLevelParentUniqueName35 = Learun.Framework.Ultimate\u0020V7.sln
- SccProjectName35 = Learun.Framework.Module/Learun.Application.Module/Learun.Application.Mapping
- SccLocalPath35 = Learun.Framework.Module\\Learun.Application.Module\\Learun.Application.Mapping
+ SolutionGuid = {968C278F-4142-4DFF-96B0-B3D70A649451}
EndGlobalSection
EndGlobal
diff --git a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/config.js b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/config.js
index 599dabebe..d4e77b1c4 100644
--- a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/config.js
+++ b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/config.js
@@ -2,31 +2,17 @@ export default {
// 登录页显示的公司名称
"company": "数字化智慧校园",
// App 版本号
- "appVersion": "2.0",
+ "appVersion": "1.0.0",
// 是否允许用户注册
"enableSignUp": true,
//请求数据的接口地址;可以配置多个,开发环境下登录页会出现选择菜单供您选择
- // "apiHost": [
- // "http://123.57.209.16:31173/"
- // ],
- // "apiHost": [
- // "http://123.57.209.16:31174/learun/adms"
- // "https://wx.qjkjedu.com/learun/adms"
- // ],
- // "apiHost": [
- // "http://localhost:8088/"
- // "http://192.168.2.202:8083/learun/adms"
- // ],
- // "apiHost": [
- // "http://192.168.2.98:8088/"
- // ],
"apiHost": [
- // "http://localhost:31173/"
+ "http://112.45.152.8:8083/"
// "http://123.57.209.16:31173/"
- "http://112.45.152.8:8083/"
+ // "http://112.45.152.8:8083/"
],
- // "webHost":"http://123.57.209.16:8081/",
"webHost":"http://112.45.152.8:8000/",
+ // "webHost":"http://112.45.152.8:8000/",
// 开发环境下自动填充登录账号密码,与接口地址一一对应,只在开发环境下显示
"devAccount": [
// 20201130230 21364200000400266 老师 420528196310072253 学生 420528200606205026 420528200507261428
diff --git a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages.json b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages.json
index cfcc16d4c..b18f9a249 100644
--- a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages.json
+++ b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages.json
@@ -868,6 +868,25 @@
"navigationBarTitleText": "学生签到"
}
},
+ //在线缴费2.0
+ {
+ "path": "pages/ReceiveSendFeeManagement/PayFee/list",
+ "style": {
+ "navigationBarTitleText": "在线缴费"
+ }
+ },
+ {
+ "path": "pages/ReceiveSendFeeManagement/PayFee/single",
+ "style": {
+ "navigationBarTitleText": "缴费详情"
+ }
+ },
+ {
+ "path": "pages/ReceiveSendFeeManagement/PayFee/payInvioce",
+ "style": {
+ "navigationBarTitleText": "查看发票"
+ }
+ },
//教学工作量
{
"path": "pages/TeacherWorkload/list",
diff --git a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/EducationalAdministration/StuInfoBasic_PayFee/PayFee/payInvioce.vue b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/EducationalAdministration/StuInfoBasic_PayFee/PayFee/payInvioce.vue
index 72fb2501f..564f0d833 100644
--- a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/EducationalAdministration/StuInfoBasic_PayFee/PayFee/payInvioce.vue
+++ b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/EducationalAdministration/StuInfoBasic_PayFee/PayFee/payInvioce.vue
@@ -36,7 +36,7 @@
},
init(){
this.LOADING()
- this.HTTP_GET("/learun/payfee/getinvoice?keyValue="+this.keyValue).then((success)=>{
+ this.HTTP_GET("/ReceiveSendFeeManagement/FinaChargeStuYearApi/getinvoice?keyValue="+this.keyValue).then((success)=>{
this.HIDE_LOADING()
if(!success)return
if(!success.length){
diff --git a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/ReceiveSendFeeManagement/PayFee/list.vue b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/ReceiveSendFeeManagement/PayFee/list.vue
new file mode 100644
index 000000000..7539d6177
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/ReceiveSendFeeManagement/PayFee/list.vue
@@ -0,0 +1,280 @@
+
+
+
+
+
+ {{ tips }}
+
+
+
+
+
+
+
+ 学号:
+ {{ item.StuNo }}
+
+
+
+ 姓名:
+ {{ item.StuName }}
+
+
+
+ 身份证号:
+ {{ item.IdentityCardNo.replace(/^(.{6})(?:\d+)(.{2})$/,"$1**********$2") }}
+
+
+ 缴费年度:
+ {{ item.FSYear }}
+
+
+ 收费标准:
+ {{ item.YJAmount }}
+
+
+ 缴费金额:
+ {{ item.SJAmount }}
+
+
+ 应缴余额:
+ {{ item.NeedToPay }}
+
+
+ 超出应收额:
+ {{ item.FSBlance }}
+
+
+ 缴费状态:
+ {{ displayListItem(item, 'PayFeeStatus') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 查询
+
+
+
+
+
+
+
+
+
diff --git a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/ReceiveSendFeeManagement/PayFee/payInvioce.vue b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/ReceiveSendFeeManagement/PayFee/payInvioce.vue
new file mode 100644
index 000000000..564f0d833
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/ReceiveSendFeeManagement/PayFee/payInvioce.vue
@@ -0,0 +1,87 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/ReceiveSendFeeManagement/PayFee/single.vue b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/ReceiveSendFeeManagement/PayFee/single.vue
new file mode 100644
index 000000000..d2b1eee88
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/ReceiveSendFeeManagement/PayFee/single.vue
@@ -0,0 +1,339 @@
+
+
+
+
+
+
+
+
+
+ {FinaChargesStandardList = $event}"
+ :value="FinaChargesStandardList"
+ :item="item"
+ :edit="false"
+ />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 生成二维码
+
+
+ 查询缴费结果
+
+
+ 查看发票
+
+
+ 取消缴费
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/login.vue b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/login.vue
index a731c6afc..4cf874dc0 100644
--- a/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/login.vue
+++ b/Learun.Framework.Ultimate V7/LearunApp-2.2.0/pages/login.vue
@@ -25,7 +25,7 @@
-
+
@@ -33,9 +33,9 @@
登 录
微信登录
-
+