Advertisement
Aleksandr37rus

Untitled

Sep 20th, 2022
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Vue.component('EditingRegistry', {
  2.         data: () => ({
  3.                 date: (new Date(Date.now() - (new Date()).getTimezoneOffset() * 60000)).toISOString().substr(0, 10),
  4.                 dateTicketP: null, //(new Date(Date.now() - (new Date()).getTimezoneOffset() * 60000)).toISOString().substr(0, 10),
  5.                 dateExtension: null,//(new Date(Date.now() - (new Date()).getTimezoneOffset() * 60000)).toISOString().substr(0, 10),
  6.                 dateFormatted: null,
  7.                 dateTicketPFormatted: null,
  8.                 dateExecution: null, //(new Date(Date.now() - (new Date()).getTimezoneOffset() * 60000)).toISOString().substr(0, 10),
  9.                 datePeriodVerStart: null, //(new Date(Date.now() - (new Date()).getTimezoneOffset() * 60000)).toISOString().substr(0, 10),
  10.                 datePeriodVerEnd: null,//(new Date(Date.now() - (new Date()).getTimezoneOffset() * 60000)).toISOString().substr(0, 10),
  11.                 dateTicketF: null,// (new Date(Date.now() - (new Date()).getTimezoneOffset() * 60000)).toISOString().substr(0, 10),
  12.                 dateReq: null,//(new Date(Date.now() - (new Date()).getTimezoneOffset() * 60000)).toISOString().substr(0, 10),
  13.                 access: false,
  14.                 plots: [],
  15.                 inspections: [],
  16.                 plot: [],
  17.                 inspection: [],
  18.                 canal: [],
  19.                 selectedCanal: null,
  20.                 typeTax: [],
  21.                 subsidiary_filial: null,
  22.                 checkType: [],
  23.                 typename: null,
  24.                 reqType: [],
  25.                 numberReq: "",
  26.  
  27.                 segment: null,
  28.                 segmentList: [
  29.                     'Генерация',
  30.                     'Сбыт',
  31.                  ],
  32.  
  33.                 workers: [],
  34.                 KPP: null,
  35.                 INN: null,
  36.                 idKPP: null,
  37.                 idINN: null,
  38.                 content: null,
  39.                 start1: false,
  40.                 start2: false,
  41.                 start3: false,
  42.                 start4: false,
  43.                 start5: false,
  44.                 start6: false,
  45.                 start7: false,
  46.                 execution_date: null,
  47.                 extension_date: null,
  48.                 req_date: null,
  49.                 idTicketP: null,
  50.                 idTicketF: null,
  51.                 nameExecutor: null,
  52.                 reqStatus: [],
  53.                 reqStatusNum: null,
  54.                 subsidiaries: [],
  55.                 subsidiary: [],
  56.                 subsidiary2: [],
  57.                 subFiliall: null,
  58.  
  59.                 selectedSubsidiarys: null,
  60.                 softwares: [],
  61.                 sets: [],
  62.                 comment: null,
  63.                 periodVerStart: null,
  64.                 periodVerStartText: "",
  65.                 periodVerEnd: null,
  66.                 periodVerEndText: "",
  67.                 selectedSoftware: null,
  68.                 roles: [],
  69.                 selectedRole: "",
  70.                 dialog: false,
  71.                 groupWorkers: [],
  72.                 groupWorker: null,
  73.                 names: [],
  74.                 emails: [],
  75.                 email: [],
  76.                 selectedSubsidiary2: null,
  77.                 selectedSoftware2: null,
  78.                 selectedRole2: "",
  79.                 sets2: [],
  80.                 softwares2: [],
  81.                 roles2: [],
  82.                 dialog2: false,
  83.                 dialog4: false,
  84.                 dialog5: false,
  85.  
  86.                 //Update Registry
  87.                 name_subsidiary: null,
  88.                 reqNumber: null,
  89.                 idStart_model1: null,
  90.                 idStart_model2: null,
  91.                 idStart_model3: null,
  92.                 idStart_model4: null,
  93.                 idStart_model5: null,
  94.                 idPlot: [],
  95.                 tax: null,
  96.                 check_type: [],
  97.                 check_period: null,
  98.                 req_type: [],
  99.                 responsible: [],
  100.                 executor: [],
  101.                 idContent: null,
  102.                 performerStatus: 'Подготовка ответа',
  103.                 idResponseStatus: null,
  104.                 responseStatus: 'В работе',
  105.                 listResponseStatus: [
  106.                     'Отправлен',
  107.                     'В работе',
  108.                     'Отправлен частично',
  109.                 ],
  110.                 idNameCount: null,
  111.                 nameCount: null,
  112.                 ticketP: null,
  113.                 ticketF: null,
  114.                 idCanal: [],
  115.                 idComment: null,
  116.                 newCommentCP: "",
  117.                 snackText: "",
  118.                 snackText2: "",
  119.                 snackColor: "",
  120.                 snackType: "",
  121.                 alertSnack: false,
  122.                 worker: false,
  123.                 saveDateRegistry: "",
  124.                 statuses: "",
  125.                 numberINN: 0,
  126.                 numberKPP: 0,
  127.                 legal_position: [
  128.                     'Да',
  129.                     'Нет'],
  130.                 legal_positionOne: null,
  131.             }),
  132.     mounted() {
  133.         TaxController.get({id: "getSubsidiary"})
  134.             .then(response => response.json())
  135.             .then(result => {
  136.                 this.subsidiaries = result
  137.             });
  138.         TaxController.get({
  139.             id: "getCanal"
  140.         })
  141.             .then(response => response.json())
  142.             .then(result => {
  143.                 this.canal = result
  144.             });
  145.         TaxController.get({
  146.             id: "getReqType"
  147.         })
  148.             .then(response => response.json())
  149.             .then(result => {
  150.                 this.reqType = result
  151.             });
  152.         TaxController.get({
  153.             id: "getTypeTax"
  154.         })
  155.             .then(response => response.json())
  156.             .then(result => {
  157.                 this.typeTax = result
  158.             });
  159.         TaxController.get({
  160.             id: "getCheckType"
  161.         })
  162.             .then(response => response.json())
  163.             .then(result => {
  164.                 this.checkType = result
  165.             });
  166.         TaxController.get({
  167.             id: "getAllWorkers"
  168.         })
  169.             .then(response => response.json())
  170.             .then(result => {
  171.                 this.workers = result
  172.             });
  173.         TaxController.get({
  174.             id: "getStatusReq"
  175.         })
  176.             .then(response => response.json())
  177.             .then(result => {
  178.                 this.reqStatus = result
  179.             });
  180.         TaxController.get({id: "getAllInspection"})
  181.             .then(response => response.json())
  182.             .then(result => this.inspections = result);
  183. /*
  184.         if (v === null) {
  185.             this.inspections = [];
  186.         }*/
  187.  
  188.     },
  189.     watch: {/*
  190.         datePeriodVerStart (val) {
  191.             this.periodVerStart = this.formatDate(this.datePeriodVerStart).replaceAll('/', '.')
  192.         },
  193.         datePeriodVerEnd (val) {
  194.             this.periodVerEnd = this.formatDate(this.datePeriodVerEnd).replaceAll('/', '.')
  195.         },*/
  196.         dateExtension (val) {
  197.             this.extension_date = this.formatDate(this.dateExtension).replaceAll('/', '.')
  198.         },
  199.         dateExecution (val) {
  200.             this.execution_date = this.formatDate(this.dateExecution).replaceAll('/', '.')
  201.         },
  202.         dateTicketP (val) {
  203.             this.idTicketP = this.formatDate(this.dateTicketP).replaceAll('/', '.')
  204.         },
  205.         dateTicketF (val) {
  206.             this.idTicketF = this.formatDate(this.dateTicketF).replaceAll('/', '.')
  207.         },
  208.         dateReq (val) {
  209.             this.req_date = this.formatDate(this.dateReq).replaceAll('/', '.')
  210.         },
  211.         subsidiary(v) {
  212.             if(v !== null && v.length !== 0) {
  213.                 TaxController.get({id: "getAllFilial",
  214.                     subsidiary: this.subsidiary})
  215.                     .then(response => response.json())
  216.                     .then(result => this.plots = result);
  217.                     this.plots = [];
  218.  
  219.             if (v === null) {
  220.                 this.plots = [];
  221.             }
  222.  
  223.             }
  224.         }
  225.     },
  226.     computed: {
  227.         computedDateFormatted () {
  228.             return this.formatDate(this.date)
  229.         },
  230.         getYear(){
  231.             console.log(new Date().getFullYear());
  232.             return new Date().getFullYear().toString();
  233.         },
  234.     },
  235.     methods: {
  236.         allowedDates: val => parseInt(val.split('-')[0], 10) % 2022 === 0,
  237.         formatDate (date) {
  238.             if (!date) return null
  239.  
  240.             const [year, month, day] = date.split('-')
  241.             return `${day}/${month}/${year}`
  242.         },
  243.         parseDate (date) {
  244.             if (!date) return null
  245.  
  246.             const [month, day, year] = date.split('/')
  247.             return `${year}-${month.padStart(2, '0')}-${day.padStart(2, '0')}`
  248.         },
  249.         checkForm: function (e) {
  250.             if (this.INN && this.KPP) {
  251.                 return true;
  252.             }
  253.  
  254.             this.errors = [];
  255.  
  256.             if (!this.INN) {
  257.                 this.errors.push('Требуется указать имя.');
  258.             }
  259.             if (!this.KPP) {
  260.                 this.errors.push('Требуется указать возраст.');
  261.             }
  262.  
  263.             e.preventDefault();
  264.         },
  265.         save() {
  266.             if (this.subsidiary === undefined || this.subsidiary.length === 0) {
  267.                 this.snackText = 'Выберите ДО';
  268.                 this.snackColor = 'error';
  269.                 this.snackType = 'error';
  270.                 this.alertSnack = true;
  271.                 return;
  272.             }
  273.             if (this.inspection === undefined || this.inspection.length === 0) {
  274.                 this.snackText = 'Выберите ИФНС!';
  275.                 this.snackColor = 'error';
  276.                 this.snackType = 'error';
  277.                 this.alertSnack = true;
  278.                 return;
  279.             }
  280.             if (this.responsible === undefined || this.responsible.length === 0) {
  281.                 this.snackText = 'Выберите ответственного!';
  282.                 this.snackColor = 'error';
  283.                 this.snackType = 'error';
  284.                 this.alertSnack = true;
  285.                 return;
  286.             }
  287.             /*if (this.tax === undefined || this.tax.length === 0) {
  288.                 this.snackText = 'Выберите вид налога!';
  289.                 this.snackColor = 'error';
  290.                 this.snackType = 'error';
  291.                 this.alertSnack = true;
  292.                 return;
  293.             }*/
  294.             console.log(this.INN);
  295.             console.log(this.inn_company);
  296.             if (this.INN !== null && this.INN !== '') {
  297.                 const regINN = new RegExp(/^([\d+]{10}|[\d+]{12})$/)
  298.                 if (regINN.test(this.INN)) {
  299.  
  300.                 }else {
  301.                     this.snackText = 'Проверьте правильность заполнения ИНН';
  302.                     this.snackColor = 'error';
  303.                     this.snackType = 'error';
  304.                     this.alertSnack = true;
  305.                     return;
  306.                 }
  307.             }
  308.             if (this.executor === undefined || this.executor.length === 0) {
  309.                 this.snackText = 'Выберите исполнителя!';
  310.                 this.snackColor = 'error';
  311.                 this.snackType = 'error';
  312.                 this.alertSnack = true;
  313.                 return;
  314.             }
  315.             if (this.idTicketP === null || this.idTicketP.length === 0) {
  316.                 this.snackText = 'Дата ответ план не заполнена!';
  317.                 this.snackColor = 'error';
  318.                 this.snackType = 'error';
  319.                 this.alertSnack = true;
  320.                 return;
  321.             }
  322.             if (this.check_type === undefined || this.check_type.length === 0) {
  323.                 this.snackText = 'Выберите вид проверки!';
  324.                 this.snackColor = 'error';
  325.                 this.snackType = 'error';
  326.                 this.alertSnack = true;
  327.                 return;
  328.             }
  329.  
  330.             if (this.reqNumber === null) {
  331.                 this.snackText = 'Номер требования не заполнен!';
  332.                 this.snackColor = 'error';
  333.                 this.snackType = 'error';
  334.                 this.alertSnack = true;
  335.                 return;
  336.             }
  337.             /*if (this.legal_positionOne === null || this.legal_position.length === 0) {
  338.                 this.snackText = 'Выберите правовую позицию!';
  339.                 this.snackColor = 'error';
  340.                 this.snackType = 'error';
  341.                 this.alertSnack = true;
  342.                 return;
  343.             }*/
  344.             /*if (this.req_date === null || this.req_date.length === 0) {
  345.                 this.snackText = 'Срок продления не заполнена!';
  346.                 this.snackColor = 'error';
  347.                 this.snackType = 'error';
  348.                 this.alertSnack = true;
  349.                 return;
  350.             }
  351.  
  352.              */
  353.             // if (this.periodVer === null) {
  354.             //     this.snackText = 'Выберите период проверки!';
  355.             //     this.snackColor = 'error';
  356.             //     this.snackType = 'error';
  357.             //     this.alertSnack = true;
  358.             //     return;
  359.             // }
  360.  
  361.             if (this.execution_date === null || this.execution_date.length === 0) {
  362.                 this.snackText = 'Дата требования не заполнена!';
  363.                 this.snackColor = 'error';
  364.                 this.snackType = 'error';
  365.                 this.alertSnack = true;
  366.                 return;
  367.             }
  368.             if (this.extension_date === null || this.extension_date.length === 0) {
  369.                 this.snackText = 'Дата получения не заполнена!';
  370.                 this.snackColor = 'error';
  371.                 this.snackType = 'error';
  372.                 this.alertSnack = true;
  373.                 return;
  374.             }
  375.             if (this.req_type === undefined || this.req_type.length === 0) {
  376.                 this.snackText = 'Выберите тип требования!';
  377.                 this.snackColor = 'error';
  378.                 this.snackType = 'error';
  379.                 this.alertSnack = true;
  380.                 return;
  381.             }
  382.            /* if (this.content === null) {
  383.                 this.snackText = 'Содержание не заполненно!';
  384.                 this.snackColor = 'error';
  385.                 this.snackType = 'error';
  386.                 this.alertSnack = true;
  387.                 return;
  388.             }
  389.  
  390.  
  391.             if (this.nameExecutor === null) {
  392.                 this.snackText = 'Не указано наименование контрагента!';
  393.                 this.snackColor = 'error';
  394.                 this.snackType = 'error';
  395.                 this.alertSnack = true;
  396.                 return;
  397.             }
  398.  
  399.             */
  400.  
  401.             if (this.performerStatus === null) {
  402.                 this.snackText = 'Выберите статус ответа!';
  403.                 this.snackColor = 'error';
  404.                 this.snackType = 'error';
  405.                 this.alertSnack = true;
  406.                 return;
  407.             }
  408.             if (this.responseStatus === undefined || this.responseStatus.length === 0) {
  409.                 this.snackText = 'Выберите статус исполнения!';
  410.                 this.snackColor = 'error';
  411.                 this.snackType = 'error';
  412.                 this.alertSnack = true;
  413.                 return;
  414.             }
  415.  
  416.             if (this.typename === null || this.typename.length === 0) {
  417.                 this.snackText = 'Выберите канал!';
  418.                 this.snackColor = 'error';
  419.                 this.snackType = 'error';
  420.                 this.alertSnack = true;
  421.                 return;
  422.             }
  423.             if (this.segment === null || this.segment.length === 0) {
  424.                 this.snackText = 'Выберите сегмент!';
  425.                 this.snackColor = 'error';
  426.                 this.snackType = 'error';
  427.                 this.alertSnack = true;
  428.                 return;
  429.             }
  430.             if (this.content !== null && this.content !== "") {
  431.             }
  432.             else {
  433.                 this.snackText = 'Не указано содержание!';
  434.                 this.snackColor = 'error';
  435.                 this.snackType = 'error';
  436.                 this.alertSnack = true;
  437.                 return;
  438.             }
  439.  
  440.             /*if (this.KPP != null) {
  441.                 const reKPP = new RegExp(/^[\d+]{9}$/);
  442.                 if (reKPP.test(this.KPP)) {
  443.  
  444.                 }else {
  445.                     this.snackText = 'Проверьте правильность заполнения КПП';
  446.                     this.snackColor = 'error';
  447.                     this.snackType = 'error';
  448.                     this.alertSnack = true;
  449.                     return;
  450.                 }
  451.             }*/
  452.  
  453.             Vue.http.post('/tax/saveDateRegistry', {
  454.                 name_subsidiary: this.subsidiary,
  455.                 reqNumber: this.reqNumber,
  456.                 req_date: this.execution_date,
  457.                 execution_date: this.extension_date,
  458.                 extension_date: this.req_date,
  459.                 subFiliall: this.subFiliall,
  460.                 inspection: this.inspection,
  461.                 tax: this.tax,
  462.                 check_type: this.check_type,
  463.                 check_period: this.periodVerStart,
  464.                 req_type: this.req_type,
  465.                 responsible: this.responsible,
  466.                 executor: this.executor,
  467.                 idContent: this.content,
  468.                 performerStatus: this.performerStatus,
  469.                 responseStatus: this.responseStatus,
  470.                 nameExecutor: this.nameExecutor,
  471.                 idTicketP: this.idTicketP,
  472.                 idTicketF: this.idTicketF,
  473.                 idINN: this.INN,
  474.                 idKPP: this.KPP,
  475.                 idCanal: this.typename,
  476.                 idComment: this.comment,
  477.                 legal_position: this.legal_positionOne,
  478.                 segment: this.segment,
  479.             }).then(response => response.text())
  480.                 .then(result => {
  481.                     this.statuses = result
  482.                     if (this.statuses === "Ошибка срок продления"){
  483.                         this.snackText = 'Дата «Срок продления» меньше даты получения!';
  484.                         this.snackColor = "error";
  485.                         this.shackType = "error";
  486.                         this.alertSnack = true;
  487.                         return;
  488.                     }
  489.                     if (this.statuses === "Ошибка ответ факт") {
  490.                         this.snackText = 'Дата «Ответ факт» меньше даты требования!';
  491.                         this.snackColor = "error";
  492.                         this.shackType = "error";
  493.                         this.alertSnack = true;
  494.                         return;
  495.  
  496.                     }
  497.                     if (this.statuses === "Ошибка ответ план") {
  498.                         this.snackText = 'Дата «Ответ план» меньше даты требования!';
  499.                         this.snackColor = "error";
  500.                         this.shackType = "error";
  501.                         this.alertSnack = true;
  502.                         return;
  503.                     }
  504.  
  505.                     if (this.statuses === "Ошибка дата получения") {
  506.                         this.snackText = '«Дата получения» меньше даты требования!';
  507.                         this.snackColor = "error";
  508.                         this.shackType = "error";
  509.                         this.alertSnack = true;
  510.                         return;
  511.                     }
  512.                     if (this.statuses === "Дубликат") {
  513.                         this.snackText = 'Данное требование уже существует. Проверьте корректность заполнения полей';
  514.                         this.snackColor = "error";
  515.                         this.shackType = "error";
  516.                         this.alertSnack = true;
  517.                         return;
  518.                     }
  519.                     if (this.statuses === "Успешно") {
  520.                         this.snackText = 'Сохраненно успешно!';
  521.                         this.snackColor = "success";
  522.                         this.shackType = "success";
  523.                         this.alertSnack = true;
  524.                         this.subsidiary = [];
  525.                         this.reqNumber = null;
  526.                         this.execution_date = null;
  527.                         this.extension_date = null;
  528.                         this.req_date = null;
  529.                         this.subFiliall = null;
  530.                         this.inspection = [];
  531.                         this.tax = null;
  532.                         this.check_type = [];
  533.                         this.periodVer = null;
  534.                         this.req_type = [];
  535.                         this.responsible = [];
  536.                         this.executor = [];
  537.                         this.content = null;
  538.                         this.responseStatus = 'В работе';
  539.                         this.performerStatus = 'Подготовка ответа';
  540.                         this.nameExecutor = null;
  541.                         this.idTicketP = null;
  542.                         this.idTicketF = null;
  543.                         this.INN = null;
  544.                         this.KPP = null;
  545.                         this.typename = null;
  546.                         this.comment = null;
  547.                         this.legal_positionOne = null;
  548.                         this.segment = null;
  549.                         return;
  550.  
  551.                     }
  552.                 })
  553.             // this.subsidiary = [];
  554.             // this.reqNumber = null;
  555.             // this.execution_date = null;
  556.             // this.extension_date = null;
  557.             // this.req_date = null;
  558.             // this.subFiliall = null;
  559.             // this.inspection = [];
  560.             // this.tax = [];
  561.             // this.check_type = [];
  562.             // this.periodVer = null;
  563.             // this.req_type = [];
  564.             // this.responsible = [];
  565.             // this.executor = [];
  566.             // this.content = null;
  567.             // this.responseStatus = null;
  568.             // this.performerStatus = null;
  569.             // this.nameExecutor = null;
  570.             // this.idTicketP = null;
  571.             // this.idTicketF = null;
  572.             // this.INN = null;
  573.             // this.KPP = null;
  574.             // this.typename = null;
  575.             // this.comment = null;
  576.             // this.legal_positionOne = null;
  577.  
  578.         },
  579.     },
  580.     template:
  581.         '<v-card>' +
  582.             '<div class="text-center ma-0 pa-0" style="width: 50%">' +
  583.                 '<v-snackbar v-model="alertSnack" top absolute timeout="3000" class="pa-0 ma-0" :color="snackColor">' +
  584.                     '<v-alert style="width: 100%" :type="snackType" class="ma-0" :color="snackColor">' +
  585.                         '{{this.snackText}}' +
  586.                     '</v-alert>' +
  587.                 '</v-snackbar>' +
  588.             '</div>' +
  589.         '<v-card flat>' +
  590.             '<v-card-title></v-card-title>' +
  591.         '<v-card-text>' +
  592.         '<v-row align="baseline">' +
  593.             '<v-col cols="3">' +
  594.                 '<v-autocomplete dense outlined hide-details ' +
  595.                     ':items="subsidiaries" label="Выберите ДО" v-model="subsidiary" item-text="name" return-object>' +
  596.                 '</v-autocomplete>' +
  597.             '</v-col>' +
  598.             '<v-col cols="3">' +
  599.                 '<v-autocomplete v-model="inspection" :items="inspections" label="ИФНС" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details></v-autocomplete>' +
  600.             '</v-col>' +
  601.             '<v-col cols="3">' +
  602.                 '<v-text-field dense outlined hide-details v-model="nameExecutor" label="Наименования контрагента"></v-text-field> ' +
  603.             '</v-col>' +
  604.             '<v-col cols="3">' +
  605.                 '<v-autocomplete v-model="responsible" :items="workers" label="Ответственный" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details></v-autocomplete>' +
  606.             '</v-col>' +
  607.         '</v-row>' +
  608.         //-----------------------------------------------
  609.         '<v-row align="baseline">' +
  610.             '<v-col cols="3">' +
  611.                 '<v-autocomplete v-model="subFiliall" :items="plots" label="Филиал" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details></v-autocomplete>' +
  612.             '</v-col>' +
  613.             '<v-col cols="3">' +
  614.                 '<v-autocomplete v-model="tax" :items="typeTax" label="Налог" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details></v-autocomplete>' +
  615.             '</v-col>' +
  616.             '<v-col cols="3">' +
  617.                 '<v-text-field dense outlined hide-details v-model="INN" label="ИНН контрагента"></v-text-field> ' +
  618.             '</v-col>' +
  619.             '<v-col cols="3">' +
  620.                 '<v-autocomplete v-model="executor" :items="workers" label="Исполнитель" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details></v-autocomplete>' +
  621.             '</v-col>' +
  622.         '</v-row>' +
  623.         //----------------------------------------------
  624.         '<v-row align="baseline">' +
  625.             '<v-col cols="2">' +
  626.                     '<v-menu v-model="start4" :close-on-content-click="false" :nudge-right="40" transition="scale-transition" offset-y min-width="auto">' +
  627.                             '<template v-slot:activator="{ on, attrs }">' +
  628.                                 '<v-text-field v-model="idTicketP" label="Ответ план" prepend-icon="mdi-calendar" readonly v-bind="attrs" v-on="on" ></v-text-field>' +
  629.                             '</template>' +
  630.                     '<v-date-picker  :allowed-dates="allowedDates" first-day-of-week="1" width="320" v-model="dateTicketP" locale="ru-ru"  @input="start4 = false"></v-date-picker>' +
  631.                     '</v-menu>' +
  632.             '</v-col>' +
  633.             '<v-col cols="2">' +
  634.                 '<v-menu v-model="start3" :close-on-content-click="false" :nudge-right="40" transition="scale-transition" offset-y min-width="auto">' +
  635.                         '<template v-slot:activator="{ on, attrs }">' +
  636.                             '<v-text-field v-model="req_date"  clearable clear-icon="mdi-close-circle-outline" label="Срок продления" prepend-icon="mdi-calendar" ' +
  637.                                 'readonly v-bind="attrs" v-on="on">' +
  638.                             '</v-text-field>' +
  639.                         '</template>' +
  640.                     '<v-date-picker :allowed-dates="allowedDates" first-day-of-week="1" width="320" v-model="dateReq" locale="ru-ru"  @input="start3 = false"></v-date-picker>' +
  641.                 '</v-menu>' +
  642.             '</v-col>' +
  643.             '<v-col cols="4">' +
  644.                 '<v-autocomplete v-model="check_type" :items="checkType" label="Вид проверки" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details></v-autocomplete>' +
  645.              '</v-col>' +
  646.             // '<v-col cols="3">' +
  647.             //     '<v-text-field dense outlined hide-details v-model="KPP" label="КПП контрагента"></v-text-field> ' +
  648.             // '</v-col>' +
  649.             '<v-col cols="4">' +
  650.                 '<v-autocomplete v-model="performerStatus" :items="reqStatus" label="Статус исполнения" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details></v-autocomplete>' +
  651.             '</v-col>' +
  652.         '</v-row>' +
  653.         //------------------------------------------
  654.         '<v-row align="baseline">' +
  655.             '<v-col cols="2">' +
  656.                 '<v-text-field dense outlined hide-details v-model="reqNumber" :items="numberReq" label="Номер Требования"></v-text-field> ' +
  657.             '</v-col>' +
  658.             '<v-col cols="2">' +
  659.                 '<v-text-field dense outlined hide-details v-model="periodVerStart" :items="periodVerStartText" label="Период проверки"></v-text-field> ' +
  660.             '</v-col>' +/*
  661.             '<v-col cols="2">' +
  662.                 '<v-text-field dense outlined hide-details v-model="periodVerEnd" :items="periodVerEndText" label="Период проверки"></v-text-field> ' +
  663.             '</v-col>' +*/
  664.            /* '<v-col cols="2">' +
  665.                     '<v-menu v-model="start7" :close-on-content-click="false" :nudge-right="40" transition="scale-transition" offset-y min-width="auto">' +
  666.                             '<template v-slot:activator="{ on, attrs }">' +
  667.                                 '<v-text-field v-model="periodVerStart" label="Период проверки с" prepend-icon="mdi-calendar" readonly v-bind="attrs" v-on="on" ></v-text-field>' +
  668.                             '</template>' +
  669.                     '<v-date-picker :allowed-dates="allowedDates" first-day-of-week="1" width="320" v-model="datePeriodVerStart" @input="start7 = false" locale="ru-ru" ></v-date-picker>' +
  670.                     '</v-menu>' +
  671.             '</v-col>' +
  672.             '<v-col cols="2">' +
  673.                     '<v-menu v-model="start6" :close-on-content-click="false" :nudge-right="40" transition="scale-transition" offset-y min-width="auto">' +
  674.                             '<template v-slot:activator="{ on, attrs }">' +
  675.                                 '<v-text-field v-model="periodVerEnd" label="Период проверки по" prepend-icon="mdi-calendar" readonly v-bind="attrs" v-on="on" ></v-text-field>' +
  676.                             '</template>' +
  677.                     '<v-date-picker :allowed-dates="allowedDates" first-day-of-week="1" width="320" v-model="datePeriodVerEnd"  @input="start6 = false" locale="ru-ru"></v-date-picker>' +
  678.                     '</v-menu>' +
  679.             '</v-col>' + */
  680.             '<v-col cols="4">' +
  681.                 '<v-autocomplete dense outlined hide-details ' +
  682.                     ':items="legal_position" clearable clear-icon="mdi-close-circle-outline" label="Правовая позиция" v-model="legal_positionOne">' +
  683.                 '</v-autocomplete>' +
  684.             '</v-col>' +
  685.             '<v-col cols="4">' +
  686.                 '<v-autocomplete dense outlined hide-details ' +
  687.                     ':items="listResponseStatus" label="Статус ответа" v-model="responseStatus">' +
  688.                 '</v-autocomplete>' +
  689.             '</v-col>' +
  690.         '</v-row>' +
  691.         //------------------------------------------
  692.         '<v-row align="baseline">' +
  693.             '<v-col align-self="stretch" cols="2">' +
  694.                 '<v-menu v-model="start1" :close-on-content-click="false" :nudge-right="40" transition="scale-transition" offset-y min-width="auto">' +
  695.                     '<template v-slot:activator="{ on, attrs }">' +
  696.                         '<v-text-field class="text-center justify-center align-center" ' +
  697.                             'v-model="execution_date" label="Дата требования" prepend-inner-icon="mdi-calendar" readonly v-bind="attrs" v-on="on" >' +
  698.                         '</v-text-field>' +
  699.                     '</template>' +
  700.                         '<v-date-picker :allowed-dates="allowedDates" first-day-of-week="1" width="320" v-model="dateExecution" locale="ru-ru" @blur="date = parseDate(execution_date)" @input="start1 = false"></v-date-picker>' +
  701.                 '</v-menu>' +
  702.             '</v-col>' +
  703.             '</v-col>'+
  704.             '<v-col cols="2">' +
  705.                 '<v-menu v-model="start2" :close-on-content-click="false" :nudge-right="40" transition="scale-transition" offset-y min-width="auto">' +
  706.                         '<template v-slot:activator="{ on, attrs }">' +
  707.                             '<v-text-field v-model="extension_date" label="Дата получения" prepend-icon="mdi-calendar" ' +
  708.                                 'readonly v-bind="attrs" v-on="on" >' +
  709.                             '</v-text-field>' +
  710.                         '</template>' +
  711.                     '<v-date-picker :allowed-dates="allowedDates" first-day-of-week="1" width="320" v-model="dateExtension" locale="ru-ru" @blur="date = parseDate(extension_date)" @input="start2 = false"></v-date-picker>' +
  712.                 '</v-menu>' +
  713.             '</v-col>' +
  714.             '<v-col cols="3">' +
  715.                 '<v-autocomplete v-model="req_type" :items="reqType" label="Тип требования" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details></v-autocomplete>' +
  716.             '</v-col>' +
  717.             '<v-col cols="3">' +
  718.                 '<v-autocomplete v-model="typename" :items="canal" label="Канал" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details></v-autocomplete>' +
  719.             '</v-col>' +
  720.             '<v-col cols="2">' +
  721.                 '<v-menu v-model="start5" :close-on-content-click="false" :nudge-left="40" transition="scale-transition" left min-width="auto" >' +
  722.                     '<template v-slot:activator="{ on, attrs }">' +
  723.                         '<v-text-field v-model="idTicketF" label="Ответ факт" prepend-icon="mdi-calendar" readonly v-bind="attrs" v-on="on" ></v-text-field>' +
  724.                     '</template>' +
  725.                     '<v-date-picker :allowed-dates="allowedDates" first-day-of-week="1" width="320" v-model="dateTicketF" locale="ru-ru"  @input="start5 = false"></v-date-picker>' +
  726.                 '</v-menu>' +
  727.             '</v-col>' +
  728.         '</v-row>' +
  729.         //------------------------------------------
  730.         '<v-row align="baseline">' +
  731.             '<v-col cols="4">' +
  732.                 '<v-autocomplete :prepend-inner-icon="accountIcon" :color="accountColor" clearable clear-icon="mdi-close-circle-outline" dense outlined hide-details ' +
  733.                     ':items="segmentList" label="Сбыты/Генерация" v-model="segment" item-text="name" return-object>' +
  734.                 '</v-autocomplete>' +
  735.             '</v-col>' +
  736.             '<v-col cols="3">' +
  737.                 '<v-text-field dense outlined hide-details v-model="content" label="Содержание"></v-text-field> ' +
  738.             '</v-col>' +
  739.             '<v-col cols="3">' +
  740.                 '<v-text-field dense outlined hide-details v-model="comment" label="Комментарий"></v-text-field> ' +
  741.             '</v-col>' +
  742.         '</v-row>' +
  743.                 '<v-row>' +
  744.                     '<v-btn color="#f59000" class="white--text" @click="save">' +
  745.                         'Записать реестр' +
  746.                     '</v-btn>' +
  747.                 '</v-row>' +
  748.             '</v-card-text>' +
  749.             '</v-card>' +
  750.         '</v-card>',
  751. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement