You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
DS7/DSWeb/Import/Viewsjs/Comm/UnitDEF.js

431 lines
14 KiB
JavaScript

2 years ago
Ext.namespace('DsTruck');
DsTruck.GetDirty = function (store1, Delstore1) {
var changelines = store1.getModifiedRecords();
var delcount = Delstore1.length;
var changecount = changelines.length;
if (delcount == 0 && changecount == 0)
{ return false; }
else { return true; }
}
DsTruck.GetDirty1 = function (store1) {
var changelines = store1.getModifiedRecords();
var changecount = changelines.length;
if (changecount == 0)
{ return false; }
else { return true; }
}
DsTruck.GLFYAudit = function (records, newStatus, waitMsg) {
var jsondata = ConvertRecordsToJsonAll(records);
Ext.Msg.wait(waitMsg);
Ext.Ajax.request({
waitMsg: waitMsg,
url: '/Account/AccountAudit/Audit',
scope: this,
async: false,
params: {
newStatus: newStatus,
chfeelist: jsondata
},
callback: function (options, success, response) {
if (success) {
Ext.MessageBox.hide();
var jsonresult = Ext.JSON.decode(response.responseText);
if (jsonresult.Success) {
var newStatusRef = jsonresult.Data;
for (var i = 0; i < records.length; i++) {
var record = records[i];
record.set('BXSTATUS', newStatus);
//record.set('FeeStatus_Ref', newStatusRef);
record.commit();
}
} else {
Ext.Msg.show({
title: '错误',
msg: jsonresult.Message,
icon: Ext.Msg.ERROR,
buttons: Ext.Msg.OK
});
}
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR,
buttons: Ext.Msg.OK
});
}
}
});
}
Ext.define('Accitemsmb', {
extend: 'Ext.data.Model',
idProperty: 'GID',
fields: [
{ name: 'GID', type: 'string' },
{ name: 'ACCID', type: 'string' },
{ name: 'ACCNAME', type: 'string' },
{ name: 'ACCIDNAME', type: 'string' },
{ name: 'DC', type: 'string' },
{ name: 'ISFCY', type: 'string' },
{ name: 'REMARKS', type: 'string' },
{ name: 'DETAILED', type: 'string' }
]
});
DsTruck.newID = function () {
var guid = "";
for (var i = 1; i <= 32; i++) {
var n = Math.floor(Math.random() * 16.0).toString(16);
guid += n;
if ((i == 8) || (i == 12) || (i == 16) || (i == 20))
guid += "-";
}
return guid.toUpperCase();
}
Ext.define('CMBmb', {
extend: 'Ext.data.Model',
fields: [
{ type: 'string', name: 'id' },
{ type: 'string', name: 'name' }
]
});
Ext.define('MsOpFeeAmend', {
extend: 'Ext.data.Model',
idProperty: 'GID',
fields: [
{ name: 'GID', type: 'string' },
{ name: 'BSNO', type: 'string' },
{ name: 'AMENDNO', type: 'string' },
{ name: 'PARENTID', type: 'string' },
{ name: 'FEESTATUS', type: 'boolean', convert: function (v) { return v === '1'; } },
{ name: 'FEESTATUSREF', type: 'string' },
{ name: 'ACCDATE', type: 'date', dateFormat: 'Y-m' },
{ name: 'REASON', type: 'string' },
{ name: 'REMARKS', type: 'string' },
{ name: 'SALE', type: 'string' },
{ name: 'BillFeeStatus', type: 'string' },
{ name: 'CREATEUSER', type: 'string' },
{ name: 'CREATETIME', type: 'string' }
]
});
Ext.define('AuthorityRangemb', {
extend: 'Ext.data.Model',
idProperty: 'GID',
fields: [
{ name: 'GID', type: 'string' },
{ name: 'VISIBLERANGE', type: 'string' },
{ name: 'OPERATERANGE', type: 'string' }
]
});
//审核报销单 报销单审核
DsTruck.BaoxiaoAudit = function (records, newStatus,WorkFlowName, waitMsg,Reason) {
var jsondata = ConvertRecordsToJsonAll(records);
Ext.Msg.wait(waitMsg);
Ext.Ajax.request({
waitMsg: waitMsg,
url: '/OA/BaoxiaoAudit/Audit',
scope: this,
async: false,
params: {
newStatus: newStatus,
WorkFlowName: WorkFlowName,
Reason:Reason,
chfeelist: jsondata
},
callback: function (options, success, response) {
if (success) {
Ext.MessageBox.hide();
var jsonresult = Ext.JSON.decode(response.responseText);
if (jsonresult.Success) {
var newStatusRef = jsonresult.Data;
for (var i = 0; i < records.length; i++) {
var record = records[i];
record.set('BXSTATUS', newStatus);
record.set('BXSTATUS_REF', newStatusRef);
record.commit();
}
} else {
Ext.Msg.show({
title: '错误',
msg: jsonresult.Message,
icon: Ext.Msg.ERROR,
buttons: Ext.Msg.OK
});
}
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR,
buttons: Ext.Msg.OK
});
}
}
});
}
//借款单审核
DsTruck.JKAudit = function (records, newStatus, waitMsg) {
var jsondata = ConvertRecordsToJsonAll(records);
Ext.Msg.wait(waitMsg);
Ext.Ajax.request({
waitMsg: waitMsg,
url: '/OA/Jiekuan/Audit',
scope: this,
async: false,
params: {
newStatus: newStatus,
chfeelist: jsondata
},
callback: function (options, success, response) {
if (success) {
Ext.MessageBox.hide();
var jsonresult = Ext.JSON.decode(response.responseText);
if (jsonresult.Success) {
var newStatusRef = jsonresult.Data;
for (var i = 0; i < records.length; i++) {
var record = records[i];
record.set('JKSTATUS', newStatus);
record.set('JKSTATUS_REF', newStatusRef);
record.commit();
}
} else {
Ext.Msg.show({
title: '错误',
msg: jsonresult.Message,
icon: Ext.Msg.ERROR,
buttons: Ext.Msg.OK
});
}
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR,
buttons: Ext.Msg.OK
});
}
}
});
}
//设定挂账的费用
DsTruck.SetGZ = function (BXGID) {
//var jsondata = ConvertRecordsToJsonAll(records);
Ext.Msg.wait("");
}
Ext.define('SumDetail', {
extend: 'Ext.data.Model',
idProperty: 'SUM1',
fields: [
{ name: 'SUM1', type: 'string' },
{ name: 'SUM2', type: 'string' },
{ name: 'SUM3', type: 'string' },
{ name: 'SUM4', type: 'string' },
{ name: 'SUM5', type: 'string' },
{ name: 'SUM6', type: 'string' },
{ name: 'SUM7', type: 'string' },
{ name: 'SUM8', type: 'string' },
{ name: 'SUM9', type: 'string' },
{ name: 'SUM10', type: 'string' }
]
});
DsTruck.CheckBaoxiaoDelete = function (records) {
for (var i = 0; i < records.length; i++) {
var rec = records[i];
var BXSTATUS = rec.data.BXSTATUS;
var canDelete = BXSTATUS == 1 || BXSTATUS == 6;
if (canDelete == false) {
Ext.Msg.show({
title: '提示',
msg: '只能删除费用状态为[录入状态]和[驳回提交]的报销单,请重新选择',
icon: Ext.Msg.ERROR,
buttons: Ext.Msg.OK
});
return false;
}
}
return true;
}
DsTruck.trimdata= function (value) {
if (value == "") {
return "0";
} else
return value;
}
round2 = function (str, length) {
var r2 = parseFloat(str).toFixed(8);
//var r2 = parseFloat(str).toFixed(parseInt(length) + 1);
var r1 = parseFloat(r2).toFixed(parseInt(length));
//str = parseFloat(str).toFixed(parseInt(length));
return r1;
}
/*
Number.prototype.toFixed = function (len) {
var add = 0;
var s, temp;
var s1 = this + "";
var start = s1.indexOf(".");
if (start >= 0) {
s1 = s1 + "0";
if (s1.substr(start + len + 1, 1) >= 5) add = 1;
var temp = Math.pow(10, len);
s = Math.floor(this * temp) + add;
return s / temp;
} else return this;
}
//除法函数,用来得到精确的除法结果
//说明javascript的除法结果会有误差在两个浮点数相除的时候会比较明显。这个函数返回较为精确的除法结果。
//调用accDiv(arg1,arg2)
//返回值arg1除以arg2的精确结果
function accDiv(arg1, arg2) {
var t1 = 0, t2 = 0, r1, r2;
try { t1 = arg1.toString().split(".")[1].length } catch (e) { }
try { t2 = arg2.toString().split(".")[1].length } catch (e) { }
with (Math) {
r1 = Number(arg1.toString().replace(".", ""))
r2 = Number(arg2.toString().replace(".", ""))
return (r1 / r2) * pow(10, t2 - t1);
}
}
//给Number类型增加一个div方法调用起来更加方便。
Number.prototype.div = function (arg) {
return accDiv(this, arg);
}
//乘法函数,用来得到精确的乘法结果
//说明javascript的乘法结果会有误差在两个浮点数相乘的时候会比较明显。这个函数返回较为精确的乘法结果。
//调用accMul(arg1,arg2)
//返回值arg1乘以arg2的精确结果
function accMul(arg1, arg2) {
var m = 0, s1 = arg1.toString(), s2 = arg2.toString();
try { m += s1.split(".")[1].length } catch (e) { }
try { m += s2.split(".")[1].length } catch (e) { }
return Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)
}
//给Number类型增加一个mul方法调用起来更加方便。
Number.prototype.mul = function (arg) {
return accMul(arg, this);
}
//加法函数,用来得到精确的加法结果
//说明javascript的加法结果会有误差在两个浮点数相加的时候会比较明显。这个函数返回较为精确的加法结果。
//调用accAdd(arg1,arg2)
//返回值arg1加上arg2的精确结果
function accAdd(arg1, arg2) {
var r1, r2, m;
try { r1 = arg1.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = arg2.toString().split(".")[1].length } catch (e) { r2 = 0 }
m = Math.pow(10, Math.max(r1, r2))
return (arg1 * m + arg2 * m) / m
}
//给Number类型增加一个add方法调用起来更加方便。
Number.prototype.add = function (arg) {
return accAdd(arg, this);
}
function Add(a, b, length) {
if ((typeof(length) == undefined) || (length == null)){
length=2;
}
var _r = parseFloat(a).add(parseFloat(b)).toFixed(parseInt(length));
return parseFloat(_r);
}
function Cut(a, b, length) {
if ((typeof (length) == undefined) || (length == null)) {
length = 2;
}
var _r = parseFloat(a).add(parseFloat(0) - parseFloat(b)).toFixed(parseInt(length));
return parseFloat(_r);
}
function Mul(a, b, length) {
if ((typeof (length) == undefined) || (length == null)) {
length = 2;
}
var _r = parseFloat(a).mul(parseFloat(b))
var _r2 = _r.toFixed(parseInt(length));
return parseFloat(_r2);
}
function Mul3(a, b,c, length) {
if ((typeof (length) == undefined) || (length == null)) {
length = 2;
}
var _r = (parseFloat(a).mul(parseFloat(b)).mul(parseFloat(c))).toFixed(parseInt(length));
return parseFloat(_r);
}
function Mul4(a, b, c,d, length) {
if ((typeof (length) == undefined) || (length == null)) {
length = 2;
}
var _r = (parseFloat(a).mul(parseFloat(b)).mul(parseFloat(c)).mul(parseFloat(d))).toFixed(parseInt(length));
return parseFloat(_r);
}
function Mul5(a, b, c,d,e, length) {
if ((typeof (length) == undefined) || (length == null)) {
length = 2;
}
var _r = (parseFloat(a).mul(parseFloat(b)).mul(parseFloat(c)).mul(parseFloat(d)).mul(parseFloat(e))).toFixed(parseInt(length));
return parseFloat(_r);
}
function Div(a, b, length) {
if ((typeof (length) == undefined) || (length == null)) {
length = 2;
}
var _r = parseFloat(a).div(parseFloat(b)).toFixed(parseInt(length));
return parseFloat(_r);
}
*/
function getUrlParam(param) {
var params = Ext.urlDecode(location.search.substring(1));
return param ? params[param] : params;
}
//在js中获取当前日期(参数0)或当前日期前后某天(参数1为后一天-2为两天前)
function GetDateStr(AddDayCount) {
var dd = new Date();
dd.setDate(dd.getDate() + AddDayCount); //获取AddDayCount天后的日期
var y = dd.getFullYear();
var m = dd.getMonth() + 1; //获取当前月份的日期
var d = dd.getDate();
return y + "-" + m + "-" + d;
}