修改以前的垃圾代码
This commit is contained in:
@@ -1,153 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>表单阅读</title>
|
||||
<!-- css -->
|
||||
<link rel="stylesheet" href="/bat-wkflow/formjs/cdn/element-ui/theme-chalk/index.css">
|
||||
<!-- babel -->
|
||||
<script src="/bat-wkflow/resource/babel/babel-browser.min.js"></script>
|
||||
<!-- vue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/vue/vue.min.js"></script>
|
||||
<!-- element-ui js -->
|
||||
<script src="/bat-wkflow/formjs/cdn/element-ui/index.js"></script>
|
||||
<!-- axios -->
|
||||
<script src="/bat-wkflow/formjs/cdn/axios/axios.min.js"></script>
|
||||
<!-- avue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/avue/avue.min.js"></script>
|
||||
<style>
|
||||
.el-select{
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
||||
<!-- jquery -->
|
||||
<script src="/bat-wkflow/resource/js/jquery.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script type="text/javascript">
|
||||
//获取地址栏参数值
|
||||
function getUrlParam(name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); // 构造一个含有目标参数的正则表达式对象
|
||||
var r = window.location.search.substr(1).match(reg); // 匹配目标参数
|
||||
if (r != null){
|
||||
return decodeURIComponent(r[2]);
|
||||
}
|
||||
return null; //返回参数值
|
||||
}
|
||||
var formData = {};
|
||||
function loadFormData(){
|
||||
var url = '/bat-wkflow/form/vals/get_json_formval?form_val_kid='+getUrlParam('form_val_kid');
|
||||
$.ajax({
|
||||
url:url,
|
||||
dataType:"json",
|
||||
async:false,
|
||||
type:"get",
|
||||
success:function(data){
|
||||
if(data.code==200){
|
||||
formData = data.result;
|
||||
console.log(formData);
|
||||
formData.form = formData.formVals.formJson;
|
||||
formData.values = formData.formVals.formValsJson;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var form_json_str = formData.form;
|
||||
var form_values = formData.values;
|
||||
console.log(form_values);
|
||||
|
||||
if(!form_json_str){
|
||||
form_json_str = {};
|
||||
}
|
||||
if(!form_values){
|
||||
form_values = {};
|
||||
}
|
||||
// console.log(form_json_str);
|
||||
var form_json = JSON.parse(form_json_str);
|
||||
console.log(form_json);
|
||||
//修复一下 string -> 应该为json 的数据
|
||||
var cloumns = form_json.column;
|
||||
var columnsMap = {};
|
||||
if(cloumns && cloumns.length > 0){
|
||||
for(var i=0;i<cloumns.length;i++){
|
||||
var column = cloumns[i];
|
||||
|
||||
var ctype = column.type;
|
||||
console.log("------表单类型------"+ctype);
|
||||
column["readonly"]=true;
|
||||
if(ctype=='number' || ctype=='radio'){
|
||||
column["disabled"]=true;
|
||||
}
|
||||
|
||||
columnsMap[column.prop] = column;
|
||||
if("daterange"==column.type && column.prop){
|
||||
console.log("-----------daterange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("timerange"==column.type && column.prop){
|
||||
console.log("-----------timerange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("datetimerange"==column.type && column.prop){
|
||||
console.log("-----------datetimerange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("select"==column.type && column.prop){
|
||||
console.log("-----------选择------>" + form_values[column.prop]);
|
||||
if("remote" == column.dicOption){
|
||||
delete column.dicData;
|
||||
}
|
||||
}
|
||||
if("tree"==column.type && column.prop){
|
||||
console.log("----------tree------>" + form_values[column.prop]);
|
||||
if("remote" == column.dicOption){
|
||||
delete column.dicData;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//隐藏提交按钮
|
||||
form_json.menuBtn=false;
|
||||
formData.form = form_json;
|
||||
formData.columnsMap = columnsMap;
|
||||
// 初始化 表单的值
|
||||
formData.values = JSON.parse(form_values);
|
||||
return formData;
|
||||
}
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app">
|
||||
<avue-form v-show="showApp" :option="option" v-model="form"></avue-form>
|
||||
</div>
|
||||
|
||||
<script type="text/babel">
|
||||
var formData = loadFormData();
|
||||
console.log(formData);
|
||||
var formVue = new Vue({
|
||||
el: "#app",
|
||||
data() {
|
||||
return {
|
||||
form: formData.values,
|
||||
option: formData.form,
|
||||
showApp : true
|
||||
}
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,244 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>表单提交</title>
|
||||
<!-- css -->
|
||||
<link rel="stylesheet" href="/bat-wkflow/formjs/cdn/element-ui/theme-chalk/index.css">
|
||||
<!-- babel -->
|
||||
<script src="/bat-wkflow/resource/babel/babel-browser.min.js"></script>
|
||||
<!-- vue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/vue/vue.min.js"></script>
|
||||
<!-- element-ui js -->
|
||||
<script src="/bat-wkflow/formjs/cdn/element-ui/index.js"></script>
|
||||
<!-- axios -->
|
||||
<script src="/bat-wkflow/formjs/cdn/axios/axios.min.js"></script>
|
||||
<!-- avue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/avue/avue.min.js"></script>
|
||||
<style>
|
||||
.el-select{
|
||||
width: 100%;
|
||||
}
|
||||
.readonlyForm{
|
||||
width:100%;
|
||||
frameborder:0;
|
||||
border:0;
|
||||
}
|
||||
|
||||
</style>
|
||||
<!-- jquery -->
|
||||
<script src="/bat-wkflow/resource/js/jquery.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script src="./rejectAvanceJs.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script type="text/javascript">
|
||||
var formVue;
|
||||
//获取地址栏参数值
|
||||
function getUrlParam(name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); // 构造一个含有目标参数的正则表达式对象
|
||||
var r = window.location.search.substr(1).match(reg); // 匹配目标参数
|
||||
if (r != null){
|
||||
return decodeURIComponent(r[2]);
|
||||
}
|
||||
return null; //返回参数值
|
||||
}
|
||||
|
||||
//加载每一个表单
|
||||
function loadOneForm(form){
|
||||
console.log(form);
|
||||
var iframe = "<iframe class='readonlyForm' onload='reinitIframe(this)' src='@src' ></iframe>"
|
||||
var src = "/bat-wkflow/resource/form/form-read.html?form_val_kid=" + form.OBJECT_ID;
|
||||
iframe = iframe.replace('@src',src);
|
||||
$("#form-reads").append(iframe);
|
||||
}
|
||||
function reinitIframe(thiz){
|
||||
var iframe = thiz;
|
||||
try{
|
||||
var bHeight = iframe.contentWindow.document.body.scrollHeight;
|
||||
var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;
|
||||
var height = Math.min(bHeight, dHeight);
|
||||
iframe.height = height+20;
|
||||
// console.log(iframe.height);
|
||||
}catch (ex){
|
||||
console.log(ex);
|
||||
}
|
||||
}
|
||||
//加载以往的只读表单
|
||||
function loadFormReads(){
|
||||
var url = '/bat-wkflow/form/vals/get_forms?task_id='+getUrlParam('task_id');
|
||||
$.ajax({
|
||||
url:url,
|
||||
dataType:"json",
|
||||
// async:false,
|
||||
type:"get",
|
||||
success:function(data){
|
||||
if(data.code!=200){
|
||||
alert('服务器正忙,请稍后再试.');
|
||||
return;
|
||||
}
|
||||
var formList = data.result;
|
||||
console.log(formList);
|
||||
if(!formList || formList.length==0){
|
||||
return;
|
||||
}
|
||||
for(var i=0;i<formList.length;i++){
|
||||
loadOneForm(formList[i]);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
$(function(){
|
||||
loadFormReads();
|
||||
});
|
||||
|
||||
var formData = {};
|
||||
function loadFormData(){
|
||||
var url = '/bat-wkflow/form/json/get_json_new?task_id='+getUrlParam('task_id')+'&form_id='+getUrlParam('form_id');
|
||||
console.log(url)
|
||||
$.ajax({
|
||||
url:url,
|
||||
dataType:"json",
|
||||
async:false,
|
||||
type:"get",
|
||||
success:function(data){
|
||||
console.log(data)
|
||||
if(data.code==200){
|
||||
formData = data.result;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var form_json_str = formData.form;
|
||||
var form_values = formData.values;
|
||||
console.log(form_json_str, form_values);
|
||||
|
||||
if(!form_json_str){
|
||||
form_json_str = {};
|
||||
}
|
||||
if(!form_values){
|
||||
form_values = {};
|
||||
}
|
||||
// console.log(form_json_str);
|
||||
var form_json = JSON.parse(form_json_str.widgetJson);
|
||||
//修复一下 string -> 应该为json 的数据
|
||||
var cloumns = form_json.column;
|
||||
var columnsMap = {};
|
||||
if(cloumns && cloumns.length > 0){
|
||||
for(var i=0;i<cloumns.length;i++){
|
||||
var column = cloumns[i];
|
||||
columnsMap[column.prop] = column;
|
||||
console.log("------类型------"+column.type);
|
||||
if("daterange"==column.type && column.prop){
|
||||
console.log("-----------daterange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("timerange"==column.type && column.prop){
|
||||
console.log("-----------timerange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("datetimerange"==column.type && column.prop){
|
||||
console.log("-----------datetimerange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("select"==column.type && column.prop){
|
||||
console.log("-----------选择------>" + form_values[column.prop]);
|
||||
if("remote" == column.dicOption){
|
||||
delete column.dicData;
|
||||
}
|
||||
}
|
||||
if("tree"==column.type && column.prop){
|
||||
console.log("----------tree------>" + form_values[column.prop]);
|
||||
if("remote" == column.dicOption){
|
||||
delete column.dicData;
|
||||
}
|
||||
}
|
||||
if (column.change) column.change = eval(column.change)
|
||||
else delete column.change
|
||||
|
||||
if (column.click) column.click = eval(column.click)
|
||||
else delete column.click
|
||||
|
||||
if (column.focus) column.focus = eval(column.focus)
|
||||
else delete column.focus
|
||||
|
||||
if (column.blur) column.blur = eval(column.blur)
|
||||
else delete column.blur
|
||||
}
|
||||
}
|
||||
|
||||
// 注入高级代码
|
||||
form_json = rejectAdvanceJs(form_json,form_json_str.json_eval);
|
||||
|
||||
formData.form = form_json;
|
||||
formData.columnsMap = columnsMap;
|
||||
// 新改的审批单,不设置初始值
|
||||
formData.values = JSON.parse(form_values);
|
||||
return formData;
|
||||
}
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="form-reads">
|
||||
</div>
|
||||
<div id="app">
|
||||
<avue-form :option="option" v-model="form" @submit="handleSubmit"></avue-form>
|
||||
</div>
|
||||
|
||||
<script type="text/babel">
|
||||
var formData = loadFormData();
|
||||
|
||||
var urlSubmit = '/bat-wkflow/form/workflow/submit';
|
||||
|
||||
formVue = new Vue({
|
||||
el: "#app",
|
||||
data() {
|
||||
return {
|
||||
form: formData.values,
|
||||
option: formData.form
|
||||
}
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
handleSubmit(form, done) {
|
||||
var thiz = this;
|
||||
console.log(form);
|
||||
axios({
|
||||
method: 'post',
|
||||
url: urlSubmit,
|
||||
data: {
|
||||
task_id: getUrlParam('task_id'),
|
||||
form: JSON.stringify(form),
|
||||
form_id: getUrlParam('form_id')
|
||||
}
|
||||
})
|
||||
.then(function (response) {
|
||||
console.log(response);
|
||||
if(response.data.code==200){
|
||||
thiz.$message.success(response.data.result);
|
||||
thiz.option.menuBtn = false;
|
||||
// window.close();
|
||||
// done()
|
||||
|
||||
}else{
|
||||
thiz.$message.error(response.message);
|
||||
}
|
||||
})
|
||||
.catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
} // handleSubmit
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,47 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>表单提交</title>
|
||||
<script src="/bat-wkflow/resource/js/jquery.js" type="text/javascript"
|
||||
charset="utf-8"></script>
|
||||
<script type="text/javascript">
|
||||
//获取地址栏参数值
|
||||
function getUrlParam(name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); // 构造一个含有目标参数的正则表达式对象
|
||||
var r = window.location.search.substr(1).match(reg); // 匹配目标参数
|
||||
if (r != null) {
|
||||
return decodeURIComponent(r[2]);
|
||||
}
|
||||
return null; //返回参数值
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url : '/bat-wkflow/form/vals/get_json_formval?form_val_kid=' + getUrlParam('form_val_kid'),
|
||||
dataType : "json",
|
||||
async : false,
|
||||
type : "get",
|
||||
success : function(data) {
|
||||
if (data.code == 200) {
|
||||
var formData = data.result;
|
||||
if (formData.formVals.runType == 'json') {
|
||||
window.location.href = '/bat-wkflow/resource/form/form-json-read.html?form_val_kid=' + getUrlParam('form_val_kid')
|
||||
} else {
|
||||
|
||||
window.location.href = '/bat-wkflow/form/vals/getHtmlReadonly?form_val_kid=' + getUrlParam('form_val_kid');
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,166 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>表单提交</title>
|
||||
<!-- css -->
|
||||
<link rel="stylesheet" href="/bat-wkflow/formjs/cdn/element-ui/theme-chalk/index.css">
|
||||
<!-- babel -->
|
||||
<script src="/bat-wkflow/resource/babel/babel-browser.min.js"></script>
|
||||
<!-- vue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/vue/vue.min.js"></script>
|
||||
<!-- element-ui js -->
|
||||
<script src="/bat-wkflow/formjs/cdn/element-ui/index.js"></script>
|
||||
<!-- axios -->
|
||||
<script src="/bat-wkflow/formjs/cdn/axios/axios.min.js"></script>
|
||||
<!-- avue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/avue/avue.min.js"></script>
|
||||
<!-- jquery -->
|
||||
<script src="/bat-wkflow/web/resource/js/jquery.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script src="./rejectAvanceJs.js" type="text/javascript" charset="utf-8"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
var formVue;
|
||||
//获取地址栏参数值
|
||||
function getUrlParam(name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); // 构造一个含有目标参数的正则表达式对象
|
||||
var r = window.location.search.substr(1).match(reg); // 匹配目标参数
|
||||
if (r != null){
|
||||
return decodeURIComponent(r[2]);
|
||||
}
|
||||
return null; //返回参数值
|
||||
}
|
||||
function loadFormData(){
|
||||
var formData = {};
|
||||
var url = '/bat-wkflow/form/json/get_json_formkey?form_key='+getUrlParam('form_key');
|
||||
$.ajax({
|
||||
url:url,
|
||||
dataType:"json",
|
||||
async:false,
|
||||
type:"get",
|
||||
success:function(data){
|
||||
if(data.code==200){
|
||||
formData = data.result;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var form_json_str = formData.form;
|
||||
var form_values = formData.values;
|
||||
|
||||
if(!form_json_str){
|
||||
form_json_str = {};
|
||||
}
|
||||
if(!form_values){
|
||||
form_values = {};
|
||||
}
|
||||
// console.log(form_json_str);
|
||||
var form_json = JSON.parse(form_json_str.json);
|
||||
//console.log(form_json);
|
||||
//修复一下 string -> 应该为json 的数据
|
||||
var cloumns = form_json.column;
|
||||
if(cloumns && cloumns.length > 0){
|
||||
for(var i=0;i<cloumns.length;i++){
|
||||
var column = cloumns[i];
|
||||
console.log("------i------"+column.type);
|
||||
if("daterange"==column.type && column.prop){
|
||||
console.log("-----------daterange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("timerange"==column.type && column.prop){
|
||||
console.log("-----------timerange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("datetimerange"==column.type && column.prop){
|
||||
console.log("-----------datetimerange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("select"==column.type && column.prop){
|
||||
console.log("-----------选择------>" + form_values[column.prop]);
|
||||
if("remote" == column.dicOption){
|
||||
delete column.dicData;
|
||||
}
|
||||
}
|
||||
if("tree"==column.type && column.prop){
|
||||
console.log("----------tree------>" + form_values[column.prop]);
|
||||
if("remote" == column.dicOption){
|
||||
delete column.dicData;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 注入高级代码
|
||||
form_json = rejectAdvanceJs(form_json,form_json_str.json_eval);
|
||||
|
||||
formData.form = form_json;
|
||||
formData.values = form_values;
|
||||
return formData;
|
||||
}
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app" >
|
||||
<avue-form v-show="showApp" :option="option" v-model="form" @submit="handleSubmit"></avue-form>
|
||||
</div>
|
||||
|
||||
<script type="text/babel">
|
||||
var formData = loadFormData();
|
||||
|
||||
var urlSubmit = '/bat-wkflow/form/workflow/submit';
|
||||
console.log(formData);
|
||||
formVue = new Vue({
|
||||
el: "#app",
|
||||
data() {
|
||||
return {
|
||||
form: formData.values,
|
||||
option: formData.form,
|
||||
showApp : true
|
||||
}
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
handleSubmit(form, done) {
|
||||
var thiz = this;
|
||||
console.log(form);
|
||||
axios({
|
||||
method: 'post',
|
||||
url: urlSubmit,
|
||||
data: {
|
||||
task_id: getUrlParam('task_id'),
|
||||
form: JSON.stringify(form)
|
||||
}
|
||||
})
|
||||
.then(function (response) {
|
||||
console.log(response);
|
||||
if(response.data.code==200){
|
||||
thiz.$message.success(response.data.result);
|
||||
thiz.showApp = false;
|
||||
// window.close();
|
||||
// done()
|
||||
|
||||
}else{
|
||||
thiz.$message.error(response.message);
|
||||
}
|
||||
})
|
||||
.catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
} // handleSubmit
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,124 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>表单提交</title>
|
||||
<!-- css -->
|
||||
<link rel="stylesheet" href="/bat-wkflow/formjs/cdn/element-ui/theme-chalk/index.css">
|
||||
<!-- babel -->
|
||||
<script src="/bat-wkflow/resource/babel/babel-browser.min.js"></script>
|
||||
<!-- vue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/vue/vue.min.js"></script>
|
||||
<!-- element-ui js -->
|
||||
<script src="/bat-wkflow/formjs/cdn/element-ui/index.js"></script>
|
||||
<!-- axios -->
|
||||
<script src="/bat-wkflow/formjs/cdn/axios/axios.min.js"></script>
|
||||
<!-- avue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/avue/avue.min.js"></script>
|
||||
<!-- jquery -->
|
||||
<script src="/bat-wkflow/web/resource/js/jquery.js" type="text/javascript" charset="utf-8"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app" >
|
||||
<avue-form v-show="showApp" :option="option" v-model="form" @submit="handleSubmit"></avue-form>
|
||||
</div>
|
||||
|
||||
<script type="text/babel">
|
||||
var formVue;
|
||||
var formJson = {
|
||||
"gutter": 0,
|
||||
"emptySize": "medium",
|
||||
"submitBtn": true,
|
||||
"submitText": "提交",
|
||||
"labelPosition": "left",
|
||||
"emptyText": "清空",
|
||||
"column": [
|
||||
{
|
||||
"display": true,
|
||||
"prop": "name",
|
||||
"rules": [
|
||||
{
|
||||
"message": "姓名必须填写",
|
||||
"required": true
|
||||
}
|
||||
],
|
||||
"label": "姓名",
|
||||
"type": "input",
|
||||
"required": true,
|
||||
"span": 24
|
||||
},
|
||||
{
|
||||
"type": "datetimerange",
|
||||
"label": "日期范围",
|
||||
"span": 24,
|
||||
"display": true,
|
||||
"format": "yyyy-MM-dd HH:mm:ss",
|
||||
"valueFormat": "yyyy-MM-dd HH:mm:ss",
|
||||
"prop": "datetimerange",
|
||||
"change": function(time){
|
||||
console.log(time.value);
|
||||
var endTime = new Date(time.value[1]).getTime() - new Date(time.value[0]).getTime();
|
||||
var day = parseInt(endTime / 60 / 60 / 24 / 1000);
|
||||
if(day<1){day=0.5};
|
||||
appForm.form.day=day;
|
||||
}
|
||||
},
|
||||
{
|
||||
"display": true,
|
||||
"prop": "day",
|
||||
"label": "请假天数",
|
||||
"placeholder": "",
|
||||
"type": "number",
|
||||
"required": true,
|
||||
"precision": 1,
|
||||
"span": 24
|
||||
},
|
||||
{
|
||||
"display": true,
|
||||
"prop": "reason",
|
||||
"rules": [
|
||||
{
|
||||
"message": "请假原因必须填写",
|
||||
"required": true
|
||||
}
|
||||
],
|
||||
"label": "请假原因",
|
||||
"type": "textarea",
|
||||
"required": true,
|
||||
"span": 24
|
||||
}
|
||||
],
|
||||
"menuBtn": true,
|
||||
"emptyBtn": true,
|
||||
"menuPosition": "center",
|
||||
"labelWidth": 120,
|
||||
"submitSize": "medium"
|
||||
};
|
||||
|
||||
|
||||
|
||||
formVue = new Vue({
|
||||
el: "#app",
|
||||
data() {
|
||||
return {
|
||||
form: {},
|
||||
option: formJson,
|
||||
showApp : true
|
||||
}
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
handleSubmit(form, done) {
|
||||
var thiz = this;
|
||||
console.log(form);
|
||||
} // handleSubmit
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,44 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>表单提交</title>
|
||||
<script src="/bat-wkflow/resource/js/jquery.js" type="text/javascript"
|
||||
charset="utf-8"></script>
|
||||
<script type="text/javascript">
|
||||
//获取地址栏参数值
|
||||
function getUrlParam(name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); // 构造一个含有目标参数的正则表达式对象
|
||||
var r = window.location.search.substr(1).match(reg); // 匹配目标参数
|
||||
if (r != null) {
|
||||
return decodeURIComponent(r[2]);
|
||||
}
|
||||
return null; //返回参数值
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url : '/bat-wkflow/form/json/get_json_new?task_id=' + getUrlParam('task_id') + '&form_id=' + getUrlParam('form_id'),
|
||||
dataType : "json",
|
||||
async : false,
|
||||
type : "get",
|
||||
success : function(data) {
|
||||
if (data.code == 200) {
|
||||
var formData = data.result;
|
||||
if(formData.form.runType=='json'){
|
||||
window.location.href = '/bat-wkflow/resource/form/form-json.html?task_id=' + getUrlParam('task_id') + '&form_id=' + getUrlParam('form_id');
|
||||
}else{
|
||||
window.location.href = '/bat-wkflow/form/json/getHtml?task_id=' + getUrlParam('task_id') + '&form_id=' + getUrlParam('form_id');
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,214 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>表单提交</title>
|
||||
<!-- css -->
|
||||
<link rel="stylesheet" href="/bat-wkflow/formjs/cdn/element-ui/theme-chalk/index.css">
|
||||
<!-- babel -->
|
||||
<script src="/bat-wkflow/resource/babel/babel-browser.min.js"></script>
|
||||
<!-- vue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/vue/vue.min.js"></script>
|
||||
<!-- element-ui js -->
|
||||
<script src="/bat-wkflow/formjs/cdn/element-ui/index.js"></script>
|
||||
<!-- axios -->
|
||||
<script src="/bat-wkflow/formjs/cdn/axios/axios.min.js"></script>
|
||||
<!-- avue -->
|
||||
<script src="/bat-wkflow/formjs/cdn/avue/avue.min.js"></script>
|
||||
<style>
|
||||
.el-select{
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
||||
<!-- jquery -->
|
||||
<script src="/bat-wkflow/web/resource/js/jquery.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script type="text/javascript">
|
||||
//获取地址栏参数值
|
||||
function getUrlParam(name) {
|
||||
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); // 构造一个含有目标参数的正则表达式对象
|
||||
var r = window.location.search.substr(1).match(reg); // 匹配目标参数
|
||||
if (r != null){
|
||||
return decodeURIComponent(r[2]);
|
||||
}
|
||||
return null; //返回参数值
|
||||
}
|
||||
var formData = {};
|
||||
function loadFormData(){
|
||||
var url = '/bat-wkflow/form/json/get_json?task_id='+getUrlParam('task_id');
|
||||
$.ajax({
|
||||
url:url,
|
||||
dataType:"json",
|
||||
async:false,
|
||||
type:"get",
|
||||
success:function(data){
|
||||
if(data.code==200){
|
||||
formData = data.result;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var form_json_str = formData.form;
|
||||
var form_values = formData.values;
|
||||
console.log(form_values);
|
||||
|
||||
if(!form_json_str){
|
||||
form_json_str = {};
|
||||
}
|
||||
if(!form_values){
|
||||
form_values = {};
|
||||
}
|
||||
// console.log(form_json_str);
|
||||
var form_json = JSON.parse(form_json_str.json);
|
||||
//console.log(form_json);
|
||||
//修复一下 string -> 应该为json 的数据
|
||||
var cloumns = form_json.column;
|
||||
var columnsMap = {};
|
||||
if(cloumns && cloumns.length > 0){
|
||||
for(var i=0;i<cloumns.length;i++){
|
||||
var column = cloumns[i];
|
||||
columnsMap[column.prop] = column;
|
||||
console.log("------类型------"+column.type);
|
||||
if("daterange"==column.type && column.prop){
|
||||
console.log("-----------daterange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("timerange"==column.type && column.prop){
|
||||
console.log("-----------timerange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("datetimerange"==column.type && column.prop){
|
||||
console.log("-----------datetimerange------>" + form_values[column.prop]);
|
||||
if(form_values[column.prop]){
|
||||
form_values[column.prop] = JSON.parse(form_values[column.prop]);
|
||||
}
|
||||
}
|
||||
if("select"==column.type && column.prop){
|
||||
console.log("-----------选择------>" + form_values[column.prop]);
|
||||
if("remote" == column.dicOption){
|
||||
delete column.dicData;
|
||||
}
|
||||
}
|
||||
if("tree"==column.type && column.prop){
|
||||
console.log("----------tree------>" + form_values[column.prop]);
|
||||
if("remote" == column.dicOption){
|
||||
delete column.dicData;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
formData.form = form_json;
|
||||
formData.columnsMap = columnsMap;
|
||||
formData.values = form_values;
|
||||
return formData;
|
||||
}
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app" >
|
||||
<avue-form v-show="showApp" :option="option" v-model="form" @submit="handleSubmit"></avue-form>
|
||||
</div>
|
||||
|
||||
<script type="text/babel">
|
||||
var formData = loadFormData();
|
||||
|
||||
var urlSubmit = '/bat-wkflow/form/workflow/submit';
|
||||
|
||||
var formVue = new Vue({
|
||||
el: "#app",
|
||||
data() {
|
||||
return {
|
||||
form: formData.values,
|
||||
option: formData.form,
|
||||
showApp : true
|
||||
}
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
updateFormValue(){
|
||||
console.log("强制更新");
|
||||
// this.form = formData.values;
|
||||
console.log(this.option);
|
||||
for(var field in this.form){
|
||||
if(!formData.columnsMap[field])continue;
|
||||
var dicData = formData.columnsMap[field].dicData;
|
||||
if(!dicData)continue;
|
||||
if(dicData.length == 0){
|
||||
continue;
|
||||
}
|
||||
|
||||
var dataVavl = dicData[0].value;
|
||||
console.log(field,this.form[field],typeof dataVavl,typeof this.form[field]);
|
||||
var val = this.form[field];
|
||||
|
||||
var typeofField = typeof dataVavl;
|
||||
|
||||
if(typeofField == 'string'){
|
||||
console.log(11,val);
|
||||
this.form[field] = val +"" ;
|
||||
}else if(typeofField == 'number'){
|
||||
console.log(22,val);
|
||||
if(checkNum(val)){
|
||||
var i = parseInt(val);
|
||||
this.form[field] = i ;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
} //# for
|
||||
},
|
||||
handleSubmit(form, done) {
|
||||
var thiz = this;
|
||||
console.log(form);
|
||||
axios({
|
||||
method: 'post',
|
||||
url: urlSubmit,
|
||||
data: {
|
||||
task_id: getUrlParam('task_id'),
|
||||
form: JSON.stringify(form)
|
||||
}
|
||||
})
|
||||
.then(function (response) {
|
||||
console.log(response);
|
||||
if(response.data.code==200){
|
||||
thiz.$message.success(response.data.result);
|
||||
thiz.showApp = false;
|
||||
// window.close();
|
||||
// done()
|
||||
|
||||
}else{
|
||||
thiz.$message.error(response.message);
|
||||
}
|
||||
})
|
||||
.catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
} // handleSubmit
|
||||
}
|
||||
});
|
||||
|
||||
setTimeout(function(){
|
||||
formVue.updateFormValue();
|
||||
},1000);
|
||||
|
||||
function checkNum(num){
|
||||
var reg=/^[0-9]+.?[0-9]*$/; //判断字符串是否为数字 ,判断正整数用/^[1-9]+[0-9]*]*$/
|
||||
if(!reg.test(num)){
|
||||
return false;
|
||||
}else{
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,42 +0,0 @@
|
||||
//注入高级代码js,补充画表单不成功问题
|
||||
function rejectAdvanceJs(json,json_eval){
|
||||
if(!json_eval){
|
||||
return json;
|
||||
}
|
||||
console.log(json_eval);
|
||||
json_eval = JSON.parse(json_eval);
|
||||
console.log(json_eval);
|
||||
if(!json_eval){
|
||||
return json;
|
||||
}
|
||||
if(json_eval.column){
|
||||
combineColumn(json.column,json_eval.column);
|
||||
}
|
||||
console.log(json);
|
||||
return json;
|
||||
}
|
||||
function combineColumn(columnA,columnB){
|
||||
if(!columnA){
|
||||
columnA = {};
|
||||
}
|
||||
for(var i=0;i<columnB.length;i++){
|
||||
var objB = columnB[i];
|
||||
var propB = objB.prop;
|
||||
if(!propB){continue;}
|
||||
for(j=0;j<columnA.length;j++){
|
||||
var objA = columnA[j];
|
||||
var propA = objA.prop;
|
||||
if(!propA){continue;}
|
||||
if(propA==propB){
|
||||
for(field in objB){
|
||||
objA[field] = objB[field];
|
||||
if(objA[field].startsWith("function")){
|
||||
//处理函数转换
|
||||
objA[field] = eval("objA."+field+"="+objA[field]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}//# for j
|
||||
}//# for i
|
||||
return columnA;
|
||||
}
|
||||
Reference in New Issue
Block a user