| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306 | 
							- <!DOCTYPE html>
 
- <html lang="en">
 
- <head>
 
-     <meta charset="UTF-8">
 
-     <title>form</title>
 
-     <script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.js"></script>
 
-     <link href="https://cdn.jsdelivr.net/npm/iview@2.14.3/dist/styles/iview.css" rel="stylesheet">
 
-     <script src="https://cdn.jsdelivr.net/npm/iview@2.14.3/dist/iview.js"></script>
 
-     <script src="./form-create.min.js"></script>
 
-     <script src="http://www.jq22.com/jquery/jquery-1.10.2.js"></script>
 
-     <script src="../../../assets/libs/layui/layui.all.js"></script>
 
- </head>
 
- <body>
 
- <div id="page_app">
 
-     <div id="app3">
 
-     </div>
 
- </div>
 
- <script>
 
-     var urlId = getQueryVariable("id");
 
-     var urls = getQueryVariable("url");
 
-     var aId = getQueryVariable("aId");
 
-     var cId = getQueryVariable("cId");
 
-     var _m2 = false;
 
-     var App = new Vue({
 
-         el: '#page_app',
 
-         data() {
 
-             return {
 
-                 approverSelectOption: { // 自定义选项 => 审批人人员选择
 
-                     type: 'select',
 
-                     name: '审批人',
 
-                 },
 
-                 wenbenArr: [],    // 文本数据
 
-                 submitDataArr: [], // 提交数据
 
-                 approverIndex: null,    // 审批人下标
 
-                 isAddWenbenData: false,
 
-             }
 
-         },
 
-         mounted() {
 
-             var _rule = this.getFormRuleData()
 
-             var $f_3 = formCreate.create(_rule, {
 
-                 //表单插入的父级元素
 
-                 el: '#app3',
 
-                 //显示表单重置按钮
 
-                 resetBtn: true,
 
-                 //表单提交事件
 
-                 onSubmit: function (formData) {
 
-                     App.submitData(formData);
 
-                     //按钮进入提交状态
 
-                     $f_3.btn.loading();
 
-                     // 重置按钮禁用
 
-                     $f_3.resetBtn.disabled();
 
-                     //按钮进入可点击状态
 
-                     $f_3.btn.finish();
 
-                 },
 
-                 mounted: function () {
 
-                     _m2 = false;
 
-                 }
 
-             });
 
-         },
 
-         methods: {
 
-             /**
 
-              * @Author: NanKeYang
 
-              * @Description: 提交数据
 
-              * @Data: 2020/1/8 16:43
 
-              */
 
-             submitData(data) {
 
-                 var submitDataArr = this.submitDataArr, wenbenArr = this.wenbenArr;
 
-                 var approverVal = data[this.approverIndex];
 
-                 console.log(submitDataArr)
 
-                 if (approverVal <= 0) {
 
-                     layer.msg('请选择审批人');
 
-                     return false;
 
-                 }
 
-                 for (var key in submitDataArr) {
 
-                     submitDataArr[key].userVal = data[key]
 
-                     submitDataArr[key].value = data[key]
 
-                     if (submitDataArr[key].tipFlagtext) {
 
-                         delete submitDataArr[key].tipFlagtext
 
-                     }
 
-                 }
 
-                 /**
 
-                  * @Author: NanKeYang
 
-                  * @Description: 处理提交失败,重复添加问题
 
-                  * @Data: 2020/1/8 18:08
 
-                  */
 
-                 if (wenbenArr.length > 0 && !this.isAddWenbenData) {
 
-                     let num = 1
 
-                     for (let i = 0; i < wenbenArr.length; i++) {
 
-                         //向数组中添加纯文本对象
 
-                         submitDataArr.splice(wenbenArr[i].idx + num, 0, {
 
-                             "type": "label",
 
-                             "title": wenbenArr[i].tips.title,
 
-                             "value": wenbenArr[i].tips.value,
 
-                             "userVal": wenbenArr[i].tips.value
 
-                         })
 
-                         //每添加一次数组长度增加1
 
-                         num++;
 
-                     }
 
-                     this.isAddWenbenData = true;
 
-                 }
 
-                 $.ajax({
 
-                     type: "post",
 
-                     url: urls + "/3rd/flow/add",
 
-                     data: {
 
-                         formId: urlId,
 
-                         formJson: JSON.stringify(submitDataArr),
 
-                         aId: aId,
 
-                         cId: cId,
 
-                         deptLeader: approverVal
 
-                     },
 
-                     error: function (request) {
 
-                     },
 
-                     success: function (resp) {
 
-                         if (resp.code == 1) {
 
-                             $.ajax({
 
-                                 type: "post",
 
-                                 url: urls + "/3rd/flow/holiday",
 
-                                 data: {
 
-                                     aId: aId,
 
-                                     cId: cId,
 
-                                     userFormId: resp.data.userFormId
 
-                                 },
 
-                                 success: function (resp) {
 
-                                     if (resp.code == 1) {
 
-                                         layer.msg('操作成功', {offset: ['50%'], time: 2000}, function () {
 
-                                             parent.layer.closeAll();
 
-                                         });
 
-                                     } else {
 
-                                         layer.msg('操作失败');
 
-                                     }
 
-                                 }
 
-                             });
 
-                         } else {
 
-                             layer.msg('操作失败');
 
-                         }
 
-                     }
 
-                 });
 
-             },
 
-             /**
 
-              * @Author: NanKeYang
 
-              * @Description: 获取表单规则
 
-              * @Data: 2020/1/8 16:36
 
-              */
 
-             getFormRuleData() {
 
-                 var submitDataArr = [], wenbenArr = [];
 
-                 $.ajax({
 
-                     type: "get",
 
-                     url: urls + "/3rd/flow/getById",
 
-                     data: {
 
-                         id: urlId,
 
-                         aId: aId,
 
-                         cId: cId
 
-                     },
 
-                     async: false,
 
-                     contentType: false,
 
-                     processData: true,
 
-                     error: function (request) {
 
-                         layer.alert('操作失败', {
 
-                             icon: 2,
 
-                             title: "提示"
 
-                         });
 
-                     },
 
-                     success: function (resp) {
 
-                         if (resp.code == 1) {
 
-                             jsonData = JSON.parse(resp.data.formJson);
 
-                         } else {
 
-                             layer.msg(resp.msg);
 
-                         }
 
-                     }
 
-                 });
 
-                 // 去掉type=lebel的文本数据,并在该数据之前的元素添加文本说明
 
-                 for (let i = jsonData.length - 1; i >= 0; i--) {
 
-                     if (jsonData[i].type == 'label') {
 
-                         // debugger
 
-                         if (i != 0) {
 
-                             jsonData[i - 1].tipFlagtext = {title: jsonData[i].title, value: jsonData[i].value}
 
-                         }
 
-                         jsonData.splice(i, 1)
 
-                     }
 
-                 }
 
-                 submitDataArr = submitDataArr.concat(jsonData)
 
-                 for (var key in jsonData) {
 
-                     if (jsonData[key].tipFlagtext) {
 
-                         wenbenArr.push({idx: parseInt(key), tips: jsonData[key].tipFlagtext})
 
-                     }
 
-                     if (jsonData[key].type == 'text' || jsonData[key].type == 'textarea' || jsonData[key].type == 'password' || jsonData[key].type == 'date') {
 
-                         jsonData[key] = {
 
-                             type: "input",
 
-                             title: jsonData[key].title,
 
-                             field: key,
 
-                             value: jsonData[key].value,
 
-                             props: {
 
-                                 "type": jsonData[key].type,
 
-                                 "placeholder": "请输入内容"
 
-                             }
 
-                         }
 
-                     } else if (jsonData[key].type == 'select-search' || jsonData[key].type == 'checkbox' || jsonData[key].type == 'radio') {
 
-                         let myOption = [], formType = jsonData[key].type;
 
-                         let item = jsonData[key].label.split(',');
 
-                         for (let i = 0; i < item.length; i++) {
 
-                             myOption.push({"value": item[i], "label": item[i]})
 
-                         }
 
-                         if (jsonData[key].type == 'select-search') {
 
-                             formType = 'select'
 
-                         }
 
-                         let typeValue = jsonData[key].value.split(',')
 
-                         if (jsonData[key].type == 'radio') {
 
-                             typeValue = typeValue[0]
 
-                         }
 
-                         jsonData[key] = {
 
-                             type: formType,
 
-                             field: key,
 
-                             title: jsonData[key].title,
 
-                             value: typeValue,
 
-                             options: myOption
 
-                         }
 
-                     }
 
-                 }
 
-                 this.submitDataArr = submitDataArr;
 
-                 this.wenbenArr = wenbenArr;
 
-                 $.ajax({
 
-                     type: "get",
 
-                     url: urls + "/3rd/flow/getUsers",
 
-                     data: {
 
-                         aId: aId,
 
-                         cId: cId
 
-                     },
 
-                     async: false,
 
-                     contentType: false,
 
-                     processData: true,
 
-                     error: function (request) {
 
-                         layer.alert('操作失败', {
 
-                             icon: 2,
 
-                             title: "提示"
 
-                         });
 
-                     },
 
-                     success: function (resp) {
 
-                         const {code, data, msg} = resp;
 
-                         if (code == 1) {
 
-                             approverList = [];
 
-                             // 提交要格式 => ID#名称
 
-                             data.forEach(function (item, index) {
 
-                                 approverList.push({
 
-                                     value: item.aId + '#' + item.accountRealName,
 
-                                     label: item.accountRealName
 
-                                 })
 
-                             })
 
-                         } else {
 
-                             layer.msg(msg);
 
-                         }
 
-                     }
 
-                 });
 
-                 /**
 
-                  * @Author: NanKeYang
 
-                  * @Description: 添加审批人数据
 
-                  * @Data: 2020/1/8 17:48
 
-                  */
 
-                 this.approverIndex = jsonData.length;
 
-                 jsonData.push(
 
-                     {
 
-                         type: this.approverSelectOption.type,
 
-                         field: jsonData.length + '',
 
-                         title: this.approverSelectOption.name,
 
-                         value: '',
 
-                         options: approverList
 
-                     }
 
-                 )
 
-                 return jsonData;
 
-             }
 
-         }
 
-     })
 
-     // //获取url参数
 
-     function getQueryVariable(variable) {
 
-         var query = window.location.search.substring(1);
 
-         var vars = query.split("&");
 
-         for (var i = 0; i < vars.length; i++) {
 
-             var pair = vars[i].split("=");
 
-             if (pair[0] == variable) {
 
-                 return pair[1];
 
-             }
 
-         }
 
-         return (false);
 
-     }
 
-     //将纯文本数据隐藏
 
-     /*$('.ivu-col').each(function (i, v) {
 
-         if($(v).find('.ivu-form-item >label').text() == '纯文本'){
 
-             $(v).css('display','none')
 
-         }
 
-     })*/
 
- </script>
 
- </body>
 
- </html>
 
 
  |