| | |
| | | label:"name",//是下拉选项时设置 |
| | | filter: "", |
| | | orderby: "name" |
| | | } |
| | | }, |
| | | { |
| | | name: "md_org_account_criteria_rule", |
| | | dataname: "md_org_account_criteria_rule", |
| | | isnotoption: true, //true:不是选项 |
| | | filter: "", |
| | | }, |
| | | ], |
| | | options_md_geo_province: [], |
| | | md_geo_city_obj: {}, |
| | |
| | | }, |
| | | |
| | | formFields: [], |
| | | formFields_criteria: [], |
| | | |
| | | formData: {}, |
| | | formData_criteria: {}, |
| | | formData1:[], |
| | | imgLoading:false, |
| | | imgurl:'', |
| | | |
| | | formdata_group:[{group_name:'客观评分',group_code:'Objective',children:[]},{group_name:'主观评分',group_code:'Subjective',children:[]}], |
| | | |
| | | //按键权限设置 |
| | | isedit: false,//提交前编辑,保存/提交 |
| | | isrefuseedit: false,//拒绝后编辑,保存/再次提交 |
| | | isapproval: false,//审批,同意/拒绝/转办/退回 |
| | | isChange:false, |
| | | |
| | | iscommit: false,//提交标记 |
| | | |
| | | // 审批 |
| | | reasonvisible: false, // 审批备注填写弹窗 |
| | | approveremark: "", // 审批备注 |
| | | passOrRefuse: false, // 通过或拒绝 |
| | | loading_pass: false, |
| | | |
| | | //弹窗参数 |
| | | popupParames: {}, |
| | |
| | | this.formAttr.disabled = true; |
| | | } |
| | | else if (this.popupParames.sceneCode == "edit") {//编辑 |
| | | var newEntity_ = { |
| | | name: "md_org_account_criteria", |
| | | url: "root/data/getEntitySet", |
| | | paramsobj: {dataname: 'md_org_account_criteria',parent_id:this.popupParames.data.id}, |
| | | isnotoption: true, //true:不是选项 |
| | | } |
| | | this.dataRequest.push(newEntity_); |
| | | |
| | | // if (this.newformData) { |
| | | // let formData_ = clone(this.formData); |
| | | |
| | | // for (var k in this.newformData) { |
| | | // formData_[k] = this.newformData[k]; |
| | | // } |
| | | // this.formData = formData_; |
| | | // } |
| | | this.isedit = true; |
| | | } |
| | | else if (this.popupParames.sceneCode == "approval") {//审批 |
| | |
| | | this.loadRequestData(this.dataRequest, result, function(data) { |
| | | me.dataRequestObj = data; |
| | | //预加载数据后给哪些字段设置options或formatterjson |
| | | if (me.dataRequestObj.md_org_account_criteria_rule) { |
| | | me.formFields_criteria = me.dataRequestObj.md_org_account_criteria_rule; |
| | | //数据处理 |
| | | me.formdata_group.map(g=>{ |
| | | me.formFields_criteria.map(v=>{ |
| | | if (v.group_code == g.group_code) { |
| | | v['criteria_value'] = null |
| | | v['remark'] = null |
| | | g.children.push(v) |
| | | } |
| | | }) |
| | | }) |
| | | console.log(me.formdata_group) |
| | | } |
| | | if (me.dataRequestObj.md_org_account_criteria && me.dataRequestObj.md_org_account_criteria.data && me.dataRequestObj.md_org_account_criteria.data.entityset.length>0) { |
| | | me.formData_criteria = me.dataRequestObj.md_org_account_criteria.data.entityset |
| | | //数据处理 |
| | | me.formFields_criteria.map(g=>{ |
| | | me.formData_criteria.map(e=>{ |
| | | if (g.id == e.criteria_id) { |
| | | e['group_name'] = g.group_name |
| | | e['group_code'] = g.group_code |
| | | e['content_before'] = g.content_before |
| | | e['content_type'] = g.content_type |
| | | } |
| | | }) |
| | | }) |
| | | me.formdata_group.map(g=>{ |
| | | formData_criteria.map(v=>{ |
| | | if (v.group_code == g.group_code) { |
| | | // v['content_before'] = g.content_before |
| | | g.children.push(v) |
| | | } |
| | | }) |
| | | }) |
| | | console.log(me.formdata_group) |
| | | |
| | | } |
| | | if (me.dataRequestObj.md_geo_province) { |
| | | me.options_md_geo_province = me.dataRequestObj.md_geo_province |
| | | } |
| | |
| | | if (this.formData.id) { |
| | | id_ = this.formData.id; |
| | | } |
| | | |
| | | this.getRowDataById(id_, function(result) {//查询后的回调,用于获取字段的 |
| | | if (result.meta && result.meta[me.dataname] && result.meta[me.dataname].fields) { |
| | | var metas = clone(result.meta[me.dataname].fields); |
| | |
| | | } |
| | | } |
| | | }) |
| | | console.log(me.formdata_group) |
| | | |
| | | }, |
| | | |
| | | tableFieldClick() { |
| | |
| | | } |
| | | }); |
| | | }, |
| | | uploadFileFun_file(one,fileList,type) { |
| | | var me = this; |
| | | me.imgLoading = true |
| | | me.imgurl =URL.createObjectURL(one.raw) //保持文件在本窗口,否则会加载失败 |
| | | // me.imgurl = one.url |
| | | // console.log(one+fileList+type) |
| | | |
| | | }, |
| | | showThumbnail(file, type, num) { |
| | | var me = this; |
| | | |
| | | if(num == "2"){ |
| | | return me.fileUrl; |
| | | } |
| | | if(type == "pic") { |
| | | return file.url; |
| | | } |
| | | console.log(file) |
| | | // var me = this; |
| | | |
| | | // if(num == "2"){ |
| | | // return me.fileUrl; |
| | | // } |
| | | // if(type == "pic") { |
| | | // me.imgurl = file.url |
| | | // return file.url; |
| | | // } |
| | | |
| | | }, |
| | | delyyzz() {//删除营业执照 |
| | | var me = this; |
| | | me.imgurl = ""; |
| | | me.formData1 = [] |
| | | }, |
| | | |
| | | //提交 |
| | | submitRowTable() { |
| | |
| | | this.iscommit = true; |
| | | this.saveRowTable(); |
| | | }, |
| | | showCluster() { |
| | | this.$forceUpdate(); |
| | | }, |
| | | onShowApproval(passOrRefuse) { |
| | | this.approveremark = ""; |
| | | this.reasonvisible = true;//审批备注填写弹窗 |
| | | this.passOrRefuse = passOrRefuse;// commit下一个状态;approve通过;gohome;//拒绝 goback;//回退 |
| | | }, |
| | | saveReason() { |
| | | this.loading_pass = true; |
| | | if(this.passOrRefuse == "commit" || this.passOrRefuse == "approve"){ |
| | | this.doApproval(); |
| | | } |
| | | else{ |
| | | if(this.approveremark != ""){ |
| | | this.doApproval(); |
| | | } |
| | | else{ |
| | | Root.message({ |
| | | type: 'warning', |
| | | message: '请填写原因' |
| | | }); |
| | | this.loading_pass = false; |
| | | } |
| | | } |
| | | }, |
| | | doApproval() { |
| | | var me = this; |
| | | me.doRunApproval(); |
| | | |
| | | // this.getMachine(function(next_step, up_step) { // |
| | | // me.doRunApproval(next_step, up_step); |
| | | // }); |
| | | }, |
| | | doRunApproval(next_step, up_step) { |
| | | var me = this; |
| | | if (!next_step) { |
| | | next_step = {} |
| | | } |
| | | if (!up_step) { |
| | | up_step = {} |
| | | } |
| | | |
| | | // this.passOrRefuse;//首次开户-通过 |
| | | // commit // 下一个状态 |
| | | // approve // 通过 |
| | | // gohome // 拒绝 |
| | | // goback // 回退 |
| | | |
| | | var to_state_ = ""; |
| | | if (this.passOrRefuse == "commit") { |
| | | to_state_ = next_step[this.formData.state_code]; |
| | | } |
| | | else if (this.passOrRefuse == "approve") { |
| | | // to_state_ = up_step[this.formData.state_code]; |
| | | } |
| | | else if (this.passOrRefuse == "gohome") { |
| | | // to_state_ = up_step[this.formData.state_code]; |
| | | } |
| | | else if (this.passOrRefuse == "goback") { |
| | | to_state_ = up_step[this.formData.state_code]; |
| | | } |
| | | |
| | | let param = { |
| | | dataname: "md_org", |
| | | id: me.formData.id, |
| | | remark: this.approveremark |
| | | } |
| | | if (to_state_) { |
| | | param.to_state = to_state_ |
| | | } |
| | | // |
| | | // return |
| | | Server.call("root/data/" + this.passOrRefuse, param, function(result) { |
| | | me.loading_pass = false; |
| | | console.log(result); |
| | | if (me.passOrRefuse == "commit" || me.passOrRefuse == "approve") { |
| | | Root.message({ |
| | | type: 'success', |
| | | message: '审批成功' |
| | | }); |
| | | } |
| | | else if (me.passOrRefuse == "goback") { |
| | | Root.message({ |
| | | type: 'success', |
| | | message: '已退回' |
| | | }); |
| | | } |
| | | else if (me.passOrRefuse == "gohome") { |
| | | Root.message({ |
| | | type: 'success', |
| | | message: '已拒绝' |
| | | }); |
| | | } |
| | | me.saveAfter(); |
| | | }, function(errorresult) { |
| | | console.log("错误信息", errorresult); |
| | | me.loading_pass = false; |
| | | if (errorresult.messages && errorresult.messages.count && errorresult.messages.count.error) { |
| | | if (errorresult.messages.list) { |
| | | var config = { |
| | | totab: false, |
| | | // width: "1200px", |
| | | // height: 800, |
| | | icon: "icon-product", |
| | | text: "错误信息", |
| | | url: "module/tool/page/popup_error_messages.html", |
| | | data: {}, |
| | | delta: errorresult.messages.list, |
| | | callback: function(obj, callback) { |
| | | if (callback) { |
| | | callback(); |
| | | } |
| | | } |
| | | }; |
| | | me.doPopupByPublic(config); |
| | | |
| | | } |
| | | } |
| | | else { |
| | | Root.message({ |
| | | type: 'error', |
| | | message: '审批失败' |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | //保存 |
| | | saveRowTable() { |
| | | var me = this; |
| | | var operator_ = "save";//保存 |
| | | var operator_ = "saveEntity";//保存 |
| | | var md_org_account_criteria_ = [] |
| | | |
| | | var entity_ = clone(this.formData); |
| | | var entity = {}; |
| | |
| | | } |
| | | if(me.iscommit) { |
| | | operator_ = "commit";//提交 |
| | | entity.state_code = "Open" |
| | | entity.state_name = "已生效" |
| | | } |
| | | let param = { |
| | | dataname: this.dataname, |
| | |
| | | // operator: operator_, |
| | | data: {}, |
| | | } |
| | | //新增的情况 |
| | | me.formdata_group.map(group => { |
| | | group.children.map(unitobj => { |
| | | var row_ = { |
| | | id: uuid_short(), |
| | | parent_id: me.formData.id, |
| | | criteria_id: unitobj.id, |
| | | criteria_value: unitobj.criteria_value, |
| | | remark: unitobj.remark, |
| | | } |
| | | md_org_account_criteria_.push(row_); |
| | | }) |
| | | }) |
| | | param.data["md_org_account_criteria"] = md_org_account_criteria_.length ? md_org_account_criteria_ : null; |
| | | param.data[this.dataname] = entity; |
| | | |
| | | Server.call("root/data/uniqueSaveEntity", param, function(result) { |
| | | |
| | | |
| | | Server.call("root/data/"+operator_, param, function(result) { |
| | | console.log(result); |
| | | if (result.success) { |
| | | if(me.iscommit){ |
| | |
| | | [v-cloak] { |
| | | display: none !important; |
| | | } |
| | | .me_h_itemgroup_row { |
| | | margin-bottom: 10px; |
| | | } |
| | | .me_h_itemgroup_row .me_h_unitlabel:before { |
| | | content: '*'; |
| | | color: #F56C6C; |
| | | margin-right: 4px; |
| | | } |
| | | .me_h_itemgroup_row .me_h_nounitlabel:before { |
| | | content: '*'; |
| | | color: #F56C6C00; |
| | | margin-right: 4px; |
| | | } |
| | | .itemgroup_row_item { |
| | | text-align: left; |
| | | } |
| | | .ocr_img .el-upload-list--picture-card .el-upload-list__item { |
| | | width: 100% ; |
| | | height: 100% ; |
| | | } |
| | | div .el-upload--picture-card { |
| | | width: 100% ; |
| | | |
| | | } |
| | | </style> |
| | | |
| | | </head> |
| | |
| | | </div> |
| | | <div :style="{height: dheight + 'px', 'overflow-y': 'auto'}"> |
| | | <!-- <div style="position: absolute; top:40px; bottom: 50px; left: 0px; right: 0px; overflow-y: auto;"> --> |
| | | <div class="el-dialog__body"> |
| | | <div class="el-dialog__body" style="width: 20%; float: left;"> |
| | | <el-image |
| | | v-if="imgurl.length>0" |
| | | :style="{width: '100%', 'max-height': dheight + 'px'}" |
| | | :src="imgurl" |
| | | :preview-src-list="[imgurl]"> |
| | | </el-image> |
| | | <el-upload |
| | | v-else-if="!imgurl" |
| | | class="ocr_img" |
| | | action="#" style="margin-top: 15px;margin-bottom: 15px;" accept="image/jpeg,image/gif,image/png" |
| | | ref="reportUpload1" list-type="picture-card" :file-list="formData1" |
| | | :on-change="(file, fileList) => {uploadFileFun_file(file, fileList, '1')}" :auto-upload="false"> |
| | | <!-- <i slot="default" class="el-icon-plus"></i> --> |
| | | <span style="font-size: 14px; color: #909399;">营业执照上传</span> |
| | | <div slot="file" slot-scope="{file}"> |
| | | <img class="el-upload-list__item-thumbnail" :src="showThumbnail(file, 'pic', '1')" alt=""> |
| | | </div> |
| | | </el-upload> |
| | | <el-button v-if="imgurl" size="small" type="danger" @click="delyyzz">删除营业执照</el-button> |
| | | </div> |
| | | |
| | | <div class="el-dialog__body" style="width: 79%; float: right;"> |
| | | <h-form |
| | | ref="form1" |
| | | :form-attr="formAttr" |
| | |
| | | > |
| | | </h-form> |
| | | </div> |
| | | <div v-if='formFields.length>0' class="el-dialog__body" style="width: 100%; float: right; "> |
| | | <div style="border: 1px solid #C0C4CC ;padding: 5px"> |
| | | <div class="h_table_title"><i class="iconfont icon-fuzhushuxian" style="color: rgb(2, 112, 193);"></i><span style="font-size: 16px;">推广商评分</span></div> |
| | | </i> |
| | | <!-- <el-row style="display: flex;flex-direction: row;justify-content:space-between;padding-left: 91px;padding-top: 10px;" > |
| | | <el-col :span="16"><div class="itemgroup_field"><span>评分项</span></div></el-col> |
| | | <el-col :span="8"><div class="itemgroup_field"><span>评分</span></div></el-col> |
| | | </el-row> --> |
| | | <div style="width: 100%;height: 5px;margin: 10px 0px 25px 0px;background-color: gainsboro; opacity: 40%;"></div> |
| | | <template v-for="(formgroup, k) in formdata_group"> |
| | | <div style="display: flex;justify-content: space-between;padding: 5px;"> |
| | | <div style="width: 7%; display: flex; align-items: center; justify-content: center; text-align: center;font-weight: bold;border-right: 3px solid gainsboro;"> |
| | | <div style="display: flex;justify-content: center;align-items: center;margin-right: 15px;"> |
| | | <!-- {{formgroup.groupname}} --> |
| | | {{formgroup.group_name}} |
| | | </div> |
| | | <div class="el-dialog__footer" style="position: absolute; bottom: 0px; left: 0px; right: 0px;"> |
| | | </div> |
| | | <div style="width: 93%;padding: 0 10px;"> |
| | | |
| | | <el-row v-for="(unitobj, kc) in formgroup.children" :key="'YWNL' + k + kc" class="me_h_itemgroup_row"> |
| | | <el-col :span="6" class="itemgroup_row_item"> |
| | | <div> |
| | | <span :class="[unitobj.required_no ? 'me_h_nounitlabel' : 'me_h_unitlabel']" style="font-size: 12px;"> |
| | | <!-- {{unitobj.content_before}} --> |
| | | {{unitobj.content_before}} |
| | | </span> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="18" > |
| | | <div v-if="unitobj.content_type == 'textarea'"> |
| | | <el-input style="width:100%" type="textarea" |
| | | v-model="unitobj.criteria_value"> |
| | | </el-input> |
| | | </div> |
| | | <div v-else-if="unitobj.content_type == 'radio' && !unitobj.dictionary_id"> |
| | | <el-radio-group v-model="unitobj.criteria_value"> |
| | | <el-radio label="T">是</el-radio> |
| | | <el-radio label="F">否</el-radio> |
| | | </el-radio-group> |
| | | </div> |
| | | <div v-else-if="unitobj.content_type == 'radio' && unitobj.dictionary_id"> |
| | | <el-radio-group v-model="unitobj.criteria_value"> |
| | | <el-radio v-for="(r, k) in unitobj.options" :key="unitobj.id + k" :label="r.code">{{r.value}}</el-radio> |
| | | </el-radio-group> |
| | | </div> |
| | | <div v-else-if="unitobj.content_type == 'input'"> |
| | | <el-input style="width:100%" @input="showCluster" |
| | | v-model="unitobj.criteria_value"> |
| | | </el-input> |
| | | </div> |
| | | <div v-else-if="unitobj.content_type == 'date'"> |
| | | <el-date-picker style="width:100%" type="date" value-format="yyyy-MM-dd" |
| | | v-model="unitobj.criteria_value"> |
| | | </el-date-picker> |
| | | </div> |
| | | <div v-else-if="unitobj.content_type == 'upload'"> |
| | | <table> |
| | | <tr> |
| | | <td align="left" style="width: 100%; padding: 0px; overflow: hidden; border-bottom: 1px solid #DCDFE6;"> |
| | | <span class="h_cellclick" @click="buttonArrayClick(unitobj, {code:'showfile'})">{{unitobj.criteria_value}}</span> |
| | | </td> |
| | | <td > |
| | | <template v-if="isBusiness && unitobj.criteria_value"> |
| | | <el-button type="primary" style="padding: 5px;" @click="buttonArrayClick(unitobj, {code:'delfile'})" icon="el-icon-delete" class="form_delfile">删除附件</el-button> |
| | | </template > |
| | | |
| | | <template v-else-if="isBusiness && !unitobj.criteria_value"> |
| | | <el-button type="primary" style="padding: 5px;" @click="buttonArrayClick(unitobj, {code:'upload'})" icon="el-icon-upload" class="form_uploadfile">附件上传</el-button> |
| | | </template > |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | </div> |
| | | <div style="width: 100%;height: 5px;margin: 25px 0px;background-color: gainsboro;opacity: 40%"></div> |
| | | </template > |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="el-dialog__footer" style="position: absolute; bottom: 0px; left: 0px; right: 0px;"> |
| | | <el-button size="small" type="default" @click="reasonvisible = false">取 消</el-button> |
| | | <el-button size="small" type="default" @click="closeDialog">取 消</el-button> |
| | | <el-button size="small" v-if="isedit || isrefuseedit" type="primary" :loading="loading_save" @click="saveRowTable":icon="buttonsconfig.save.icon">{{buttonsconfig.save.name}}</el-button> |
| | | <el-button size="small" v-if="isedit" type="success" :loading="loading_submit" @click="submitRowTable":icon="buttonsconfig.submit.icon">{{buttonsconfig.submit.name}}</el-button> |
| | | <el-button size="small" v-if="isrefuseedit" type="success" @click="">再次提交</el-button> |
| | | |
| | | <el-button size="small" v-if="isapproval" type="success" @click="">通 过</el-button> |
| | | <el-button size="small" v-if="isapproval" type="danger" @click="">拒 绝</el-button> |
| | | <el-button size="small" v-if="isapproval" type="primary" @click="">转 办</el-button> |
| | | <el-button size="small" v-if="isapproval" type="success" @click="">退 回</el-button> |
| | | <el-button-group style="margin-right: 80px;" > |
| | | <el-button size="small" v-if="isapproval" type="warning" plain @click="onShowApproval('gohome')">退回到申请人</el-button> |
| | | <el-button size="small" v-if="isapproval" type="danger" plain @click="onShowApproval('goback')">退回到上一步</el-button> |
| | | </el-button-group> |
| | | <el-button size="small" v-if="isapproval" type="success" @click="onShowApproval('approve')">通 过</el-button> |
| | | </div> --> |
| | | <el-dialog title="填写原因" :visible.sync="reasonvisible" height="50%"> |
| | | <el-input |
| | | type="textarea" |
| | | :autosize="{ minRows: 2, maxRows: 10}" |
| | | placeholder="请输入原因" |
| | | v-model="approveremark"> |
| | | </el-input> |
| | | |
| | | <div slot="footer" class="dialog-footer" > |
| | | <el-button size="small" type="default" @click="reasonvisible = false">取 消</el-button> |
| | | <el-button size="small" type="primary" :loading="loading_pass" @click="saveReason">确 定</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <div class="el-dialog__footer"> |
| | | <el-button-group style="margin-right: 80px;" > |
| | | <el-button size="small" v-if="isapproval" type="warning" plain @click="onShowApproval('gohome')">退回到申请人</el-button> |
| | | <el-button size="small" v-if="isapproval" type="danger" plain @click="onShowApproval('goback')">退回到上一步</el-button> |
| | | </el-button-group> |
| | | <el-button size="small" type="default" @click="closeDialog">取 消</el-button> |
| | | <el-button size="small" v-if="!isChange && (isedit || isrefuseedit)" type="primary" @click="saveRowTable":icon="buttonsconfig.save.icon">{{buttonsconfig.save.name}}</el-button> |
| | | <el-button size="small" v-if="!isChange && isedit" type="success" @click="submitRowTable":icon="buttonsconfig.submit.icon">{{buttonsconfig.submit.name}}</el-button> |
| | | |
| | | <el-button size="small" v-if="isChange" type="primary" @click="saveChangeRowTable":icon="buttonsconfig.save.icon">{{buttonsconfig.save.name}}</el-button> |
| | | <el-button size="small" v-if="isChange" type="success" @click="submitRowTable":icon="buttonsconfig.submit.icon">{{buttonsconfig.submit.name}}</el-button> |
| | | |
| | | <el-button size="small" v-if="isrefuseedit" type="success" @click="">再次提交</el-button> |
| | | |
| | | <el-button size="small" v-if="isapproval" type="success" @click="onShowApproval('approve')">通 过</el-button> |
| | | <!-- <el-button size="small" v-if="isapproval" type="danger" @click="onShowApproval('goback')">拒 绝</el-button> --> |
| | | <!-- <el-button size="small" v-if="isapproval" type="primary" @click="">转 办</el-button> --> |
| | | <!-- <el-button size="small" v-if="isapproval" type="success" @click="onShowApproval('gohome')">退 回</el-button> --> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | this.popupParames = clone(Root.popupParames); |
| | | this.title = this.popupParames.title || this.popupParames.text |
| | | if (this.popupParames.data) { |
| | | this.formData = clone(this.popupParames.data); |
| | | if (this.formData.source && !this.formData.md_org__source) { |
| | | this.newformData.md_org__source = this.formData.source; |
| | | } |
| | | else if (this.formData.md_org__ncc_code) { |
| | | this.newformData.md_org__source = "NCC" |
| | | } |
| | | // var formdata_ = {} |
| | | // let formdata_ = { |
| | | // account_name, |
| | | // actor_code, |
| | | // actor_name, |
| | | // authorize_province, |
| | | // authorize_province_remark, |
| | | // bu_id, |
| | | // bu_name, |
| | | // business_address, |
| | | // business_email, |
| | | // business_need_code, |
| | | // business_need_name, |
| | | // business_need_others, |
| | | // business_person, |
| | | // business_phone, |
| | | // check_error, |
| | | // code, |
| | | // combined_score, |
| | | // company_id, |
| | | // company_name, |
| | | // create_time, |
| | | // creator_id, |
| | | // creator_name, |
| | | // credit_amt, |
| | | // credit_available, |
| | | // degree, |
| | | // file_authorization_name, |
| | | // file_authorization_id, |
| | | // h_rowindex, |
| | | // id, |
| | | // is_frozen, |
| | | // objective_score, |
| | | // open_date, |
| | | // opening_reason, |
| | | // org_id, |
| | | // org_ncc_id, |
| | | // platform_account_code, |
| | | // platform_account_id, |
| | | // platform_account_name, |
| | | // platform_org_id, |
| | | // remark, |
| | | // settlement, |
| | | // state_code, |
| | | // state_name, |
| | | // subjective_score, |
| | | // update_time, |
| | | |
| | | // } = clone(this.popupParames.data); |
| | | // this.formData = {} |
| | | // if (this.formData.source && !this.formData.md_org__source) { |
| | | // this.newformData.md_org__source = this.formData.source; |
| | | // } |
| | | // else if (this.formData.md_org__ncc_code) { |
| | | // this.newformData.md_org__source = "NCC" |
| | | // } |
| | | this.formData = this.popupParames.data |
| | | } |
| | | |
| | | var customer_id = "" |
| | |
| | | //预加载数据后给哪些字段设置options或formatterjson |
| | | if (me.dataRequestObj.newEntity) { |
| | | var formData = clone(me.dataRequestObj.newEntity.data[me.dataname]); |
| | | formData['company_id'] = '1181' |
| | | formData['company_name'] = '汇宇制药' |
| | | formData['bu_id'] = 'BU-GM' |
| | | formData['bu_name'] = '肿瘤' |
| | | // formData.product_category_name = []; |
| | | if (me.newformData) { |
| | | let formData_ = clone(formData); |
| | |
| | | |
| | | if (this.formData.business_email) { // 填写了邮箱,则更新md_org中的邮箱信息 |
| | | var param = { |
| | | dataname: "md_org", |
| | | dataname: "md_org_account", |
| | | id: this.formData.org_id, |
| | | data: { |
| | | md_org: { |
| | |
| | | if(me.iscommit) { |
| | | // param.to_state = "OpeningApproval";//提交 |
| | | if (me.formData.org_ncc_id) { |
| | | param.refer = { |
| | | dataname: "md_org_account_ncc", |
| | | id: me.formData.org_ncc_id |
| | | } |
| | | // param.refer = { |
| | | // dataname: "md_org_account", |
| | | // id: me.formData.org_ncc_id |
| | | // } |
| | | } |
| | | |
| | | } |
| | |
| | | code: "edit",isselected: true,classname: "", |
| | | disabled: function(selectRowList) { |
| | | var bo_ = true; |
| | | if (selectRowList[0] && selectRowList[0].source == "DMS") { |
| | | if (selectRowList[0] && selectRowList[0].state_code == "Input") { |
| | | bo_ = false; |
| | | } |
| | | return bo_ |
| | |
| | | } |
| | | }, |
| | | { |
| | | name: "开户", isbuttonshow: me.cbuttons_r.accountOpen ? me.cbuttons_r.accountOpen : false,type:"success",icon: "el-icon-news", |
| | | name: "预合作申请", isbuttonshow: true,type:"success",icon: "el-icon-news", |
| | | code: "account",isselected: true,classname: "", |
| | | disabled: function(selectRowList) { |
| | | var bo_ = true; |
| | | if (selectRowList[0] && selectRowList[0].source == "DMS" && !selectRowList[0].is_distributor) { |
| | | if (selectRowList[0] && selectRowList[0].state_code == "Prepared") { |
| | | bo_ = false; |
| | | } |
| | | return bo_ |
| | | }, |
| | | onclick: function(obj) { |
| | | me.openCustomerUser('add') |
| | | |
| | | // obj.selectedList |
| | | // me.closeData('browse', obj.selectedList[0]); |
| | | // me.commitData(obj.selectedList[0]); |
| | | obj.selectedList[0]['company_id'] = '1181' |
| | | obj.selectedList[0]['company_name'] = '汇宇制药' |
| | | obj.selectedList[0]['bu_id'] = 'BU-GM' |
| | | obj.selectedList[0]['bu_name'] = '肿瘤' |
| | | console.log(obj.selectedList[0]) |
| | | me.openCustomerUser('add', obj.selectedList[0]); |
| | | } |
| | | }, |
| | | // { |
| | |
| | | }, |
| | | |
| | | { |
| | | name: "关户", isbuttonshow: me.cbuttons_r.accountClose ? me.cbuttons_r.accountClose : false,type:"danger",icon: "el-icon-circle-close", |
| | | name: "退出", isbuttonshow: me.cbuttons_r.accountClose ? me.cbuttons_r.accountClose : false,type:"danger",icon: "el-icon-circle-close", |
| | | code: "account",isselected: true,classname: "", |
| | | disabled: function(selectRowList) { |
| | | var bo_ = true; |
| | |
| | | me.openCustomerUser('edit', obj.selectedList[0]); |
| | | } |
| | | }, |
| | | |
| | | { |
| | | // name: "详情", // type: "primary", // icon: "el-icon-edit", |
| | | isbuttonshow: me.cbuttons_r.formdetail ? me.cbuttons_r.formdetail : false, |
| | |
| | | width: "1100px", |
| | | height: "520px", |
| | | icon: "icon-product", |
| | | text: "客商信息" + (row.name ? row.name : ""), |
| | | text: "推广商信息" + (row.name ? row.name : ""), |
| | | id: "customer_basic" + (row.id? row.id : "add"),//totab: true时需设置,用于判断是否已打开此页面 |
| | | url: "module/md/page/customer/page/customer_basic.html", |
| | | data: row, |
| | |
| | | width: "1100px", |
| | | height: "520px", |
| | | icon: "icon-product", |
| | | text: "推广商信息" + (row.customer_code ? ("-" + row.customer_code) : ""), |
| | | text: "推广商评估信息" + (row.customer_code ? ("-" + row.customer_code) : ""), |
| | | id: "evaluation_management_edit" + row.id + sceneCode, |
| | | url: "module/md/page/customer/page/evaluation_management_edit.html", |
| | | data: row, |
| | |
| | | formData_group:[], |
| | | formdata_obj:[{group_name:'客观评分',group_code:'Objective',children:[]},{group_name:'主观评分',group_code:'Subjective',children:[]}], |
| | | |
| | | activities: [ |
| | | { |
| | | content: '临床拜访', |
| | | timestamp: '2024-04-15' |
| | | }, |
| | | { |
| | | content: '提单', |
| | | timestamp: '2024-06-10' |
| | | }, |
| | | { |
| | | content: '临采', |
| | | timestamp: '2024-06-29' |
| | | }, |
| | | { |
| | | content: '过会准备与沟通', |
| | | timestamp: '2024-07-01' |
| | | }, |
| | | { |
| | | content: '入院采购', |
| | | timestamp: '2024-07-15' |
| | | }, |
| | | { |
| | | content: '正式采购', |
| | | timestamp: '' |
| | | }, |
| | | ], |
| | | treeData: [{ |
| | | id:1, |
| | | time: '2024推广商流向汇总', |
| | | amt:4200, |
| | | children: [{ |
| | | id:2, |
| | | time: '2024-01季度金额汇总', |
| | | amt:1200, |
| | | children: [{ |
| | | id:6, |
| | | time: '01月金额', |
| | | amt:300, |
| | | }, |
| | | { |
| | | id:7, |
| | | time: '02月金额', |
| | | amt:400, |
| | | }, |
| | | { |
| | | id:8, |
| | | time: '03月金额', |
| | | amt:500, |
| | | }] |
| | | }, |
| | | { |
| | | id:3, |
| | | time: '2024-02季度金额汇总', |
| | | amt:1000, |
| | | children: [{ |
| | | id:9, |
| | | time: '04月金额', |
| | | amt:300, |
| | | }, |
| | | { |
| | | id:10, |
| | | time: '05月金额', |
| | | amt:400, |
| | | }, |
| | | { |
| | | id:11, |
| | | time: '06月金额', |
| | | amt:500, |
| | | }] |
| | | }, |
| | | { |
| | | id:4, |
| | | time: '2024-03季度金额汇总', |
| | | amt:1000, |
| | | children: [{ |
| | | id:12, |
| | | time: '07月金额', |
| | | amt:300, |
| | | }, |
| | | { |
| | | id:13, |
| | | time: '08月金额', |
| | | amt:400, |
| | | }, |
| | | { |
| | | id:14, |
| | | time: '09月金额', |
| | | amt:500, |
| | | }] |
| | | }, |
| | | { |
| | | id:5, |
| | | time: '2024-04季度金额汇总', |
| | | amt:1000, |
| | | children: [{ |
| | | id:15, |
| | | time: '10月金额', |
| | | amt:300, |
| | | }, |
| | | { |
| | | id:16, |
| | | time: '11月金额', |
| | | amt:400, |
| | | }, |
| | | { |
| | | id:17, |
| | | time: '12月金额', |
| | | amt:500, |
| | | }] |
| | | } |
| | | ], |
| | | }], |
| | | treeTxtFormatter: "{time} ¥{amt}", |
| | | currentnodekey: 8, |
| | | defaultExpandedKeys: [2,6], |
| | | maxlevel:6, |
| | | |
| | | tableData:[ |
| | | { |
| | | |
| | | date:'2024-08-01', |
| | | // date:new Date(stamp).toISOString().replace(/T/, ' ').replace(/\..+/, '').substring(0, 19), |
| | | product:'多西他赛注射液', |
| | | qty:'12', |
| | | price:'2000', |
| | | amt:'24000', |
| | | rank:'D', |
| | | sale_employe:'', |
| | | }, |
| | | ], |
| | | isEditTableData: false, |
| | | tableFields: [ |
| | | // {isshow: "F", field: "id", name: "id", width: "70"}, |
| | | //{isshow: "T", field: "category_id", name: "协议类型-ID", width: "100"}, |
| | | {isshow: "T", field: "date", name: "更新日期", width: "100"}, |
| | | //{isshow: "T", field: "template_id", name: "模板-ID", width: "100"}, |
| | | {isshow: "F", field: "code", name: "推广商编码", width: "100"}, |
| | | {isshow: "F", field: "name", name: "推广商名称", width: "220",align:'left',isminwidth:'T'}, |
| | | {isshow: "T", field: "product", name: "产品", width: "100",isminwidth:'T'}, |
| | | {isshow: "T", field: "qty", name: "产品数量", width: "100"}, |
| | | {isshow: "T", field: "price", name: "产品单价", width: "100",formatter:"formatter_money",prefix:'¥'}, |
| | | {isshow: "T", field: "amt", name: "总金额", width: "100",formatter:"formatter_money",prefix:'¥'}, |
| | | {isshow: "T", field: "rank", name: "等级划分", width: "100"}, |
| | | {isshow: "T", field: "sale_employe", name: "归属人员", width: "100"}, |
| | | //{isshow: "T", field: "state_code", name: "协议状态-编码", width: "100"}, |
| | | // {isshow: "T", field: "state_name", name: "客观评估", type:"tag", tagtype: '{^草稿^:^info^,^生效^:^success^,^关闭^:^danger^}', width: "80"}, |
| | | // {isshow: "T", field: "", name: "客观评估", headercolor: "#bdf1ff", children: [ |
| | | // {isshow: "T", field: "completion_rate", name: "完成率", width: "100", headercolor: "#bdf1ff"}, |
| | | // {isshow: "T", field: "exploitation_rate", name: "开发率", width: "100", headercolor: "#bdf1ff"}, |
| | | // {isshow: "T", field: "growth_rate", name: "增长率", width: "100", headercolor: "#bdf1ff"}, |
| | | // {isshow: "T", field: "reach_rate", name: "达标占比", width: "100", headercolor: "#bdf1ff",formatter:"formatter_percent",align:"right",suffix:"%"}, |
| | | // ]}, |
| | | // {isshow: "T", field: "", name: "主观评估", headercolor: "#e5ffab", children: [ |
| | | // {isshow: "T", field: "customer_item", name: "客户评估", width: "100", headercolor: "#e5ffab"}, |
| | | // {isshow: "T", field: "hospital_item", name: "医院评估", width: "100", headercolor: "#e5ffab"}, |
| | | // {isshow: "T", field: "employee_item", name: "销售评估", width: "100", headercolor: "#e5ffab"}, |
| | | |
| | | // ]}, |
| | | ], |
| | | |
| | | stepStatus:['wait','process','finish','error','success'], |
| | | active:0, |
| | | |
| | | //按键权限设置 |
| | | isedit: false,//提交前编辑,保存/提交 |
| | | isrefuseedit: false,//拒绝后编辑,保存/再次提交 |
| | |
| | | // } |
| | | // this.formData = formData_; |
| | | // } |
| | | this.isedit = true; |
| | | this.isedit = true; |
| | | } |
| | | else if (this.popupParames.sceneCode == "approval") {//审批 |
| | |
| | | } |
| | | }); |
| | | }, |
| | | stepClick(index) { |
| | | console.log(index) |
| | | }, |
| | | onNodeClick(data) { |
| | | console.log(data) |
| | | }, |
| | | openDetail(activity) { |
| | | var me = this; |
| | | var data_ = {}; |
| | | var text_ = activity.content+"详情" |
| | | var config = { |
| | | totab: false, //true: 以Tab导航的方式打开 |
| | | width: "500px", |
| | | height: "80vh", |
| | | icon: "icon-product", |
| | | text: text_, |
| | | id: uuid_short(),//totab: true时需设置,用于判断是否已打开此页面 |
| | | url: "module/approval/page/my_approval_list.html", |
| | | data: data_, |
| | | delta: {}, |
| | | // filter: "org_id='"+ me.selectedrow.org_id + "' and bu_id='" + me.selectedrow.bu_id + "'", |
| | | sceneCode: 'browser',//"refuseedit",//"approval", //"add"//"browse", |
| | | callback: function(popupobj, popupcallback) { |
| | | callback(popupobj) |
| | | |
| | | if (popupcallback) { |
| | | popupcallback(); |
| | | } |
| | | } |
| | | }; |
| | | me.doPopupByPublic(config); |
| | | }, |
| | | openDocument() { |
| | | let me = this; |
| | | var row = {} |
| | | var config = { |
| | | totab: true, //true: 以Tab导航的方式打开 |
| | | width: "1100px", |
| | | height: "520px", |
| | | icon: "icon-product", |
| | | text: "遴选信息" + (row.customer_code ? ("-" + row.customer_code) : ""), |
| | | id: "evaluation_management_edit", |
| | | url: "module/md/page/customer/page/evaluation_management_404.html", |
| | | data: row, |
| | | delta: {}, |
| | | sceneCode: 'browse',//"refuseedit",//"approval", //"add"//"browse", |
| | | callback: function(obj, callback) { |
| | | me.onQuery(); |
| | | if (callback) { |
| | | callback(); |
| | | } |
| | | } |
| | | }; |
| | | me.doPopupByPublic(config); |
| | | }, |
| | | //提交 |
| | | submitRowTable() { |
| | | //必填项校验 |
| | |
| | | text-decoration: underline; |
| | | cursor: pointer; |
| | | } |
| | | div .h_table .h_h_table { |
| | | display: none; |
| | | } |
| | | div .custom-tree-node { |
| | | font-size: 14px; |
| | | } |
| | | div .custom-tree-node .nodeLabel{ |
| | | max-width: 100%; |
| | | } |
| | | div .el-card__header { |
| | | padding: 10px 20px; |
| | | } |
| | | </style> |
| | | |
| | | </head> |
| | |
| | | <div class="dialog-title"> |
| | | <i class="iconfont icon-customermanagement"></i> |
| | | <span> {{title}}</span> |
| | | <el-button style="float: right;right: 10%;" @click="openDocument()">遴选跳转</el-button> |
| | | </div> |
| | | </div> |
| | | <div :style="{height: dheight + 'px', 'overflow-y': 'auto'}"> |
| | |
| | | <div class="el-dialog__body"> |
| | | <!-- <div v-if="showtab.SYPG && activeTabName=='SYPG' && activeTabName_detail=='YWNL'"> --> |
| | | <div> |
| | | <div style="width: 100%; float: right;"> |
| | | <div style=" border: 1px solid #C0C4CC ;padding: 5px"> |
| | | <div > |
| | | <el-row style="display: flex;flex-direction: row;justify-content:space-between;padding-left: 91px;" > |
| | | <el-col :span="16"><div class="itemgroup_field"><span>评分项</span></div></el-col> |
| | | <el-col :span="8"><div class="itemgroup_field"><span>评分</span></div></el-col> |
| | | <el-col :span="6"><div class="itemgroup_field"><span>评分项</span></div></el-col> |
| | | <el-col :span="18"><div class="itemgroup_field"><span>评分</span></div></el-col> |
| | | |
| | | </el-row> |
| | | <div style="width: 100%;height: 5px;margin: 10px 0px 25px 0px;background-color: gainsboro; opacity: 40%;"></div> |
| | |
| | | <div style="width: 93%;padding: 0 10px;"> |
| | | |
| | | <el-row v-for="(unitobj, kc) in formgroup.children" :key="'YWNL' + k + kc" class="me_h_itemgroup_row"> |
| | | <el-col :span="12" class="itemgroup_row_item"> |
| | | <el-col :span="6" class="itemgroup_row_item"> |
| | | <div> |
| | | <span :class="[unitobj.required_no ? 'me_h_nounitlabel' : 'me_h_unitlabel']" style="font-size: 13px;"> |
| | | <!-- {{unitobj.content_before}} --> |
| | |
| | | </span> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="12" > |
| | | <el-col :span="18" > |
| | | <div v-if="unitobj.content_type == 'textarea'"> |
| | | <el-input style="width:100%" type="textarea" |
| | | v-model="unitobj.criteria_value"> |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <el-row> |
| | | <el-col :span="12" style="padding-right: 10px;" > |
| | | <el-card class="box-card" style="min-height: 408px;"> |
| | | <div slot="header" class="clearfix"> |
| | | <span style="font-size: 14px;font-weight: bold;">推广过程</span> |
| | | </div> |
| | | <el-timeline :reverse="false" style="padding-top: 10px;"> |
| | | <el-timeline-item @click.native="openDetail(activity)" |
| | | v-for="(activity, index) in activities" |
| | | :key="index" |
| | | :timestamp="activity.timestamp"> |
| | | {{activity.content}} |
| | | </el-timeline-item> |
| | | </el-timeline> |
| | | </el-card> |
| | | |
| | | </el-col> |
| | | <el-col :span="12" style="padding-right: 10px;" > |
| | | <el-card class="box-card" style="height: 408px;overflow: auto;"> |
| | | <div slot="header" class="clearfix" style="height: 20%;"> |
| | | <span style="font-size: 14px;font-weight: bold;" >流向汇总</span> |
| | | </div> |
| | | <h-tree |
| | | :isfilter="true" |
| | | :tree-data="treeData" |
| | | :tree-txt-formatter="treeTxtFormatter" |
| | | :currentnodekey="currentnodekey" |
| | | :is-readonly="true" |
| | | :maxlevel="maxlevel" |
| | | :default-expand-all="false" |
| | | :default-expanded-keys="defaultExpandedKeys" |
| | | :isbottomadd="true" |
| | | |
| | | @node-click="onNodeClick" |
| | | > |
| | | </h-tree> |
| | | </el-card> |
| | | |
| | | <!-- |
| | | |
| | | --> |
| | | </div> |
| | | </el-col> |
| | | |
| | | </el-row> |
| | | </div> |
| | | |
| | | <div class="el-dialog__footer" style="position: absolute; bottom: 0px; left: 0px; right: 0px;"> |
| | | <el-button size="small" type="default" @click="closeDialog">取 消</el-button> |
| | | <el-button size="small" v-if="isedit || isrefuseedit" type="primary" :loading="loading_save" @click="saveRowTable":icon="buttonsconfig.save.icon">{{buttonsconfig.save.name}}</el-button> |