| | |
| | | if (cell.OpenType === 'pop' || (cell.OpenType === 'funcbutton' && cell.execMode === 'pop')) { |
| | | if (!cell.modal || cell.modal.fields.length === 0) { |
| | | errors.push({ level: 0, detail: `按钮“${cell.label}”中表单尚未添加`}) |
| | | } else if (cell.OpenType === 'pop') { |
| | | let forms = [] |
| | | cell.modal.fields.forEach(n => { |
| | | if (n.type === 'funcvar' && n.field) { |
| | | forms.push(n.field) |
| | | } |
| | | }) |
| | | if (cell.verify && cell.verify.billcodes && cell.verify.billcodes.length > 0) { |
| | | let bills = cell.verify.billcodes.filter(item => item.status !== 'false').map(item => item.field) |
| | | bills.forEach(n => { |
| | | if (!forms.includes(n)) { |
| | | errors.push({ level: 0, detail: `按钮“${cell.label}”中单号生成的函数变量“${n}”不存在`}) |
| | | } |
| | | }) |
| | | forms = forms.filter(n => !bills.includes(n)) |
| | | } |
| | | if (forms.length) { |
| | | errors.push({ level: 0, detail: `按钮“${cell.label}”中函数变量表单“${forms.join(',')}”尚未使用`}) |
| | | } |
| | | } |
| | | } else if (cell.OpenType === 'excelIn') { |
| | | if (!cell.verify || !cell.verify.sheet || !cell.verify.columns || cell.verify.columns.length === 0) { |
| | |
| | | if (doubleClick) { |
| | | errors.push({ level: 1, detail: `绑定的双击按钮已删除`}) |
| | | } |
| | | } |
| | | |
| | | if (card.$c_fc) { |
| | | let idCtrl = false |
| | | let supModule = '' |
| | | |
| | | if (card.wrap.datatype === 'dynamic') { |
| | | supModule = card.setting.supModule ? card.setting.supModule[card.setting.supModule.length - 1] || '' : '' |
| | | if (supModule === 'empty') { |
| | | supModule = '' |
| | | } |
| | | } else { |
| | | if (card.wrap.datatype === 'static') { |
| | | supModule = card.wrap.supModule ? card.wrap.supModule[card.wrap.supModule.length - 1] : '' |
| | | } else { |
| | | supModule = null |
| | | } |
| | | } |
| | | |
| | | card.subcards.forEach(item => { |
| | | if (item.subButton.intertype === 'system' && !item.subButton.sqlType) { |
| | | errors.push({ level: 0, detail: `${item.subButton.label} 按钮请设置操作类型`}) |
| | | } |
| | | if (item.subButton.verify && !item.subButton.output) { |
| | | if (item.subButton.verify.noteEnable === 'true') { |
| | | errors.push({ level: 0, detail: `${item.subButton.label} 按钮未设置返回值短信发送无效!`}) |
| | | } else if (item.subButton.verify.emailEnable === 'true') { |
| | | errors.push({ level: 0, detail: `${item.subButton.label} 按钮未设置返回值邮件发送无效!`}) |
| | | } |
| | | } |
| | | |
| | | let forms = [] |
| | | item.fields.forEach(m => { |
| | | if (m.type === 'funcvar' && m.field) { |
| | | forms.push(m.field) |
| | | } |
| | | if (m.dataSource && /@ID@/ig.test(m.dataSource)) { |
| | | idCtrl = true |
| | | } |
| | | if (m.type === 'linkMain' && !supModule && supModule !== null) { |
| | | if (item.setting && item.setting.title) { |
| | | errors.push({ level: 1, detail: `请检查分组“${item.setting.title}”中关联主表“${m.label}”是否有效`}) |
| | | } else { |
| | | errors.push({ level: 1, detail: `请检查关联主表“${m.label}”是否有效`}) |
| | | } |
| | | } |
| | | }) |
| | | |
| | | if (item.subButton.verify && item.subButton.verify.billcodes && item.subButton.verify.billcodes.length > 0) { |
| | | let bills = item.subButton.verify.billcodes.filter(item => item.status !== 'false').map(item => item.field) |
| | | bills.forEach(n => { |
| | | if (!forms.includes(n)) { |
| | | errors.push({ level: 0, detail: `按钮“${item.subButton.label}”中单号生成的函数变量“${n}”不存在`}) |
| | | } |
| | | }) |
| | | forms = forms.filter(n => !bills.includes(n)) |
| | | } |
| | | if (forms.length) { |
| | | if (item.setting && item.setting.title) { |
| | | errors.push({ level: 0, detail: `分组“${item.setting.title}”中函数变量表单“${forms.join(',')}”尚未使用`}) |
| | | } else { |
| | | errors.push({ level: 0, detail: `函数变量表单“${forms.join(',')}”尚未使用`}) |
| | | } |
| | | } |
| | | }) |
| | | |
| | | card.idCtrl = idCtrl |
| | | } |
| | | |
| | | return errors |
| | |
| | | let _fields = unique.field.split(',') |
| | | let _fields_ = _fields.map(_field => `a.${_field}=b.${_field}`) |
| | | _fields_ = _fields_.join(' and ') |
| | | _fields_ += ` and a.jskey != b.${setting.primaryKey || 'id'}` |
| | | |
| | | let _where = [] |
| | | _fields.forEach(f => { |
| | |
| | | |
| | | let declarefields = [] |
| | | let fields = [] |
| | | let upFields = [] |
| | | |
| | | forms.forEach(col => { |
| | | let key = col.field.toLowerCase() |
| | |
| | | |
| | | declarefields.push(`${col.field} ${col.datatype}`) |
| | | fields.push(col.field) |
| | | upFields.push(`${col.field}=t.${col.field}`) |
| | | }) |
| | | |
| | | fields = fields.join(',') |
| | | upFields = upFields.join(',') |
| | | |
| | | let _insert = '' |
| | | if (btn.default !== 'false') { |
| | | _insert = ` |
| | | /* 默认sql */ |
| | | Insert into ${database}${sheet} (${fields},createuserid,createuser,createstaff,bid) |
| | | update a set ${upFields},modifydate=getdate(),modifyuserid=@UserID@,modifyuser=@username,modifystaff=@fullname,deleted=0 |
| | | from (select * from #${sheet} where data_type='upt') t |
| | | inner join ${database}${sheet} a on t.jskey=a.${setting.primaryKey || 'id'} |
| | | |
| | | update a set deleted=1,modifydate=getdate(),modifyuserid=@UserID@,modifyuser=@username,modifystaff=@fullname |
| | | from (select * from #${sheet} where data_type='del') t |
| | | inner join ${database}${sheet} a on t.jskey=a.${setting.primaryKey || 'id'} |
| | | |
| | | delete t from #${sheet} t inner join ${database}${sheet} a on t.jskey=a.${setting.primaryKey || 'id'} |
| | | |
| | | Insert into ${database}${sheet} (${fields},createuserid,createuser,createstaff,bid) |
| | | Select ${fields},@UserID@,@username,@fullname,@BID@ From #${sheet} |
| | | ` |
| | | } |